1: <?xml version="1.0" encoding="utf-8"?>
2: <Elements xmlns="http://schemas.microsoft.com/sharepoint/">
3: <CustomAction
4: Id="FM.Ribbon.Tab"
5: Location="CommandUI.Ribbon"
6: RegistrationType="List"
7: RegistrationId="101">
8: <CommandUIExtension>
9: <CommandUIDefinitions>
10: <CommandUIDefinition Location="Ribbon.Tabs._children">
11: <Tab Id="FM.Ribbon.Tab" Title="My Tab" Sequence="101">
12: <Scaling Id="FM.Ribbon.Tab.Scaling">
13: <MaxSize Id="FM.Ribbon.Tab.Groups.GroupOne.MaxSize"
14: GroupId="FM.Ribbon.Tab.Groups.GroupOne"
15: Size="TwoLarge"/>
16: <MaxSize Id="FM.Ribbon.Tab.Groups.GroupOne.MaxSize"
17: GroupId="FM.Ribbon.Tab.Groups.GroupTwo"
18: Size="ThreeMedium"/>
19: <Scale Id="FM.Ribbon.Tab.Groups.GroupTwo.Scaling"
20: GroupId="FM.Ribbon.Tab.Groups.GroupOne"
21: Size="ThreeMedium"/>
22: </Scaling>
23: <Groups Id="FM.Ribbon.Tab.Groups">
24: <Group
25: Id="FM.Ribbon.Tab.Groups.GroupOne"
26: Title="Group"
27: Sequence="10"
28: Template="Ribbon.Templates.Large">
29: <Controls Id="FM.Ribbon.Tab.Groups.GroupOne.Controls">
30: <Button
31: Id="FM.Ribbon.Tab.Groups.GroupOne.Buttons.ButtonOne"
32: Command="CustomMessage"
33: Sequence="10"
34: Image16by16="/_layouts/images/SolutionActivate_16x16.png"
35: Image32by32="/_layouts/images/SolutionActivate_32x32.png"
36: LabelText="Button One"
37: TemplateAlias="c1"/>
38: <Button
39: Id="FM.Ribbon.Tab.Groups.GroupOne.Buttons.ButtonTwo"
40: Command="CustomMessage"
41: Sequence="20"
42: Image16by16="/_layouts/images/SolutionDeactivate_16x16.png"
43: Image32by32="/_layouts/images/SolutionDeactivate_32x32.png"
44: LabelText="Button Two"
45: TemplateAlias="c2"/>
46: </Controls>
47: </Group>
48: <Group
49: Id="FM.Ribbon.Tab.Groups.GroupTwo"
50: Title="Group"
51: Sequence="20"
52: Template="Ribbon.Templates.Medium">
53: <Controls Id="FM.Ribbon.Tab.Groups.GroupTwo.Controls">
54: <Button
55: Id="FM.Ribbon.Tab.Groups.GroupTwo.Buttons.ButtonOne"
56: Command="CustomMessage"
57: Sequence="10"
58: Image16by16="/_layouts/images/SolutionActivate_16x16.png"
59: LabelText="Button One"
60: TemplateAlias="c1"/>
61: <Button
62: Id="FM.Ribbon.Tab.Groups.GroupTwo.Buttons.ButtonTwo"
63: Command="CustomMessage"
64: Sequence="20"
65: Image16by16="/_layouts/images/SolutionDeactivate_16x16.png"
66: LabelText="Button Two"
67: TemplateAlias="c2"/>
68: <TextBox
69: Id="FM.Ribbon.Tab.Groups.GroupTwo.TextBox"
70: Sequence="30"
71: Width="180"
72: TemplateAlias="c3"/>
73: </Controls>
74: </Group>
75: </Groups>
76: </Tab>
77: </CommandUIDefinition>
78: <CommandUIDefinition Location="Ribbon.Templates._children">
79: <GroupTemplate Id="Ribbon.Templates.Large">
80: <Layout Title="TwoLarge" LayoutTitle="TwoLarge">
81: <Section Alignment="Top" Type="OneRow">
82: <Row>
83: <ControlRef DisplayMode="Large" TemplateAlias="c1" />
84: </Row>
85: </Section>
86: <Section Alignment="Top" Type="OneRow">
87: <Row>
88: <ControlRef DisplayMode="Large" TemplateAlias="c2" />
89: </Row>
90: </Section>
91: </Layout>
92: </GroupTemplate>
93: </CommandUIDefinition>
94: <CommandUIDefinition Location="Ribbon.Templates._children">
95: <GroupTemplate Id="Ribbon.Templates.Medium">
96: <Layout Title="ThreeMedium" LayoutTitle="ThreeMedium">
97: <Section Alignment="Top" Type="ThreeRow">
98: <Row>
99: <ControlRef DisplayMode="Medium" TemplateAlias="c1" />
100: </Row>
101: <Row>
102: <ControlRef DisplayMode="Medium" TemplateAlias="c2" />
103: </Row>
104: <Row>
105: <ControlRef DisplayMode="Medium" TemplateAlias="c3" />
106: </Row>
107: </Section>
108: </Layout>
109: </GroupTemplate>
110: </CommandUIDefinition>
111: </CommandUIDefinitions>
112: <CommandUIHandlers>
113: <CommandUIHandler
114: Command="CustomMessage"
115: CommandAction="javascript:javascript:alert('Hello from the ribbon');" />
116: </CommandUIHandlers>
117: </CommandUIExtension>
118: </CustomAction>
119: </Elements>