---------------------------------------------------------------------- Schema definition for Ribbon Extensibility ---------------------------------------------------------------------- ---------------------------------------------------------------------- Attribute types ---------------------------------------------------------------------- The qualified ID of a control. The custom ID of a control. A unique ID. A callback. Callbacks are used to provide status, update properties or perform actions. A numeric argument for maximum string length in controls. String length is limited to 1024 characters. A numeric argument for the maximum number of rows or columns in galleries. A numeric argument for the maximum width or height of a gallery item. A string argument. String length is limited to 1024 characters. A long string argument. String length is limited to 4096 characters. A string argument for a path to a file or a resource. String length is limited to 1024 characters. The size of a button. Values are "normal" or "large." The size of items in a menu. Values are "normal" or "large." A box control. Values are "horizontal" or "vertical." A keytip. Value is 1-3 alphanumeric characters. ---------------------------------------------------------------------- Attributes ---------------------------------------------------------------------- Attributes for a custom control ID. The ID of a custom UI element. IDs must be unique. A qualified control ID. Qualified IDs allow different add-ins to modify the same custom group, tab, or menu. The ID of a built-in control. The ID of a built-in control. Custom data. Custom data. The title of a menu. The title of a menu. Callback for the title of a menu. Attributes that specify control ID. One of id, idMso, or idQ must be specified to identify a control. The image or icon of a control. Image attributes are mutually exclusive - only one of "image", "imageMso", or "getImage" may be specified. A custom image or icon. The image of a built-in control. Callback for a custom image. Attributes that can be applied to all commands and controls. Attributes that set the position of an object relative to its siblings, such as the position of a control within a group or position of a tab relative to other tabs. The ID of built-in control to be inserted after. Mutually exclusive with InsertBeforeMso, InsertAfterQ, InsertBeforeQ. The ID of built-in control to be inserted before. Mutually exclusive with InsertAfterMso, InsertAfterQ, InsertBeforeQ. The ID of control to be inserted after. Mutually exclusive with InsertAfterMso, InsertBeforeMso, InsertBeforeQ. The ID of control to be inserted before. Mutually exclusive with InsertAfterMso, InsertBeforeMso, InsertAfterQ. Attributes for a control's enabled state. Whether the control is enabled. Callback that returns true if the control is enabled. Attributes for a control's visibility. Whether the control is visible. Callback that returns true if the control is visible. Attributes that set a control's label. Sets the label. Callback that sets the label. Attributes to set a control's keytip. Sets the keytip. Callback that sets the keytip. Attributes for a control's screentip. Sets the screentip, which appears on mouse hover. Callback that sets the screentip. Sets the supertip, a large screentip. Callback that sets the supertip, a large screentip. Attributes for the extended description of a control. Sets the extended description of the control, which appears in menus with itemSize set to large. Callback that sets the description. Attributes that can be applied to all controls. Common attributes that can be applied to controls and groups. Attributes applied to controls. Whether to show a control's label. Callback for whether to show a control's label. Whether to show a control's image. Callback for whether to show a control's image. Callback fired on user action. Callback fired on user action (for example, a button press). A size attribute. The size of a control. Callback for a control's size. Common attributes for controls with dropdowns (such as comboBox, gallery, or dropDown). Whether item images are shown in the dropdown. Callback for the number of items in the dropdown. Callback for an item's label. Callback for an item's screentip. Callback for an item's supertip. Callback for an item's image. Callback for an item's ID. A representative string that sets the control's width. Attributes for dynamic controls that support the getContent callback. Callback that returns the dynamic content for this control. Attributes for controls that support dynamic content. Whether to fire callback for dynamic content each time the control is dropped. ---------------------------------------------------------------------- Global settings ---------------------------------------------------------------------- Attribute overrides for all controls with specified built-in ID. For example <command idMso="Print" enabled="false"> disables all instances of the Print button. ---------------------------------------------------------------------- Controls ---------------------------------------------------------------------- Base control type. Doesn't define ID attributes. Abstract type, not to be used directly. A type of control that can be used to enable, disable, or clone an existing control. A clone of a built-in control. Only the most common attributes can be applied here; to set control-specific properties the actual control type must be specified. Custom controls can't be cloned. A clone of built-in control that can be sized. Custom controls can't be cloned. OnAction does not apply to 'control'. Shows text and/or icon but can't have any associated actions. Image does not apply to labelControl. ImageMso does not apply to labelControl. GetImage does not apply to labelControl. Keytip does not apply to labelControl. GetKeyTip does not apply to labelControl. ShowImage does not apply to labelControl. GetShowImage does not apply to labelControl. A fixed-size button. Size of this button is determined by its container such as a menu. A push-type button. A button which is always visible. Visible does not apply to these buttons. GetVisible does not apply to these buttons. A fixed-size button with an on/off state like the 'Bold' button. Callback for whether the button is pressed. A button with an on/off state that can be sized. A toggleButton which is always visible. Visible does not apply to these buttons. GetVisible does not apply to these buttons. A check box. Image does not apply to checkBox. ImageMso does not apply to checkBox. GetImage does not apply to checkBox. ShowImage does not apply to checkBox. GetShowImage does not apply to checkBox. ShowLabel does not apply to checkBox. GetShowLabel does not apply to checkBox. An editBox. The maximum number of characters the user may enter. Callback for to populate text in the edit box before the user edits it. Callback that fires when the user changes the editBox content. A representative string that sets the control's width. An item in a dropdown-type control. The ID of an item. Items cannot use idMso or idQ. An item label. An item image. A built-in image. The screentip. The supertip. A comboBox control. An item in a comboBox. When selected, the label of the item becomes text content of the comboBox. A dropdown-type control with a fixed size. Contains items followed by buttons. OnAction reports the selected item. An item in the dropdown. Button in footer of dropdown. Callback that returns the ID of currently selected item. Callback that returns the index of currently selected item. Whether the label is shown or hidden on dropdown items. A dropdown grid control that can be sized. Number of columns in dropdown gallery. Number of rows in dropdown gallery. Item width in pixels. Item height in pixels. Callback that returns the item width. Callback that returns the item height. Whether the label is shown or hidden on gallery items. A gallery control. A group of controls allowed in all menus. Control can enable, disable, or clone built-in controls. Button control. CheckBox control. Gallery control. ToggleButton control. Control group separator. Defines menu or splitButton controls. SplitButton control. Menu. DynamicMenu. Menu or split button controls with title. SplitButton control. Menu. DynamicMenu. The OfficeMenu control. A menu with a fixed-size button. Contains one or more controls or other menus. The size of menu items. A dynamicMenu with a fixed-size button. A menu with a fixed-size button. Contains one or more controls or other menus and has a 'title' attribute. The size of menu items. A menu with a button that can be sized. The size of menu items. Large menu items show the 'description' attribute inline. A dynamicMenu with a button that can be sized. A splitButton-type control with a fixed-size. SplitButton contains a button or toggleButton and a menu. Attributes that do not apply to splitButton. They are inherited from the button inside of the splitButton. Label does not apply to splitButton, set it on the button inside the splitButton. GetLabel inherited from button inside splitButton. Screentip inherited from button inside splitButton. GetScreentip inherited from button inside splitButton. Supertip inherited from button inside splitButton. GetSuperTip inherited from button inside splitButton. Image inherited from button inside splitButton. ImageMso inherited from button inside splitButton. GetImage inherited from button inside splitButton. ShowImage inherited from button inside splitButton. GetShowImage inherited from button inside splitButton. A splitButton with a fixed-size. SplitButton contains a button or toggleButton and a menu. Button. ToggleButton. Menu. A splitButton with a fixed-size, and title attribute. SplitButton contains a button or toggleButton and a menu. Button. ToggleButton. Menu. A splitButton that can be sized. SplitButton contains a button or toggleButton and a menu. Control types. Control element can enable, disable or clone built-in controls. LabelControl. Shows text and/or image. Button control. ToggleButton control, a button with on/off state. CheckBox control. EditBox control. ComboBox control. DropDown control. Gallery control. Menu control. DynamicMenu control. SplitButton control. Box control. ButtonGroup control. ---------------------------------------------------------------------- Containers ---------------------------------------------------------------------- Opens a dialog related to its parent group. Opens a dialog related to its parent group. A box control, useful for grouping controls horizontally and vertically. Flow of controls inside the box. An in-Ribbon separator. Renders as a vertical bar. A menuSeparator. Renders as a horizontal bar. A ButtonGroup. A horizontal box with special visual appearance. Control element can enable, disable or clone built-in controls. Button. ToggleButton control, a button with on/off state. Gallery control. Menu control. DynamicMenu control. SplitButton control. A group. Separator control. DialogBoxLauncher. Opens a dialog related to its parent group. A tab that contains groups. Group. Contains controls. Quick Access Toolbar items (shared or document-specific). Control element can enable, disable or clone built-in controls. Button control. Control group separator. The Quick Access Toolbar. Two control collections: 1) Shared - applied to all windows and documents and 2) Document - attached to a document. Set of controls shared between all windows or instances of the application. Set of controls attached to the current document. A collection of tabs. Tab. A collection of contextual tab sets. A Contextual Tab. The ID of a built-in control. A collection of contextual tab sets. TabSet. ---------------------------------------------------------------------- Root elements ---------------------------------------------------------------------- A collection of Command elements. Attribute overrides for all controls with specified idMso. The Ribbon which contains the tabs, contextualTabs, officeMenu, and qat control types. OfficeMenu. The Quick Access Toolbar. Two control collections: 1) Shared - applied to all windows and documents and 2) Document - attached to a document. A collection of tabs. A collection of contextual tab sets. Whether startFromScratch is enabled. It's a mode that hides almost all of the standard UI. The root element of the customization XML returned by the getContent callback on dynamicMenus. The size of menu items. The root element of the customization XML used in dynamicMenu's getContent callback. The root element of the customization file which is used to create or modify the Ribbon and other UI elements. Command overrides. Ribbon. Callback invoked when custom UI is loaded. IRibbonUI object is passed as a parameter. This object exposes Invalidate and InvalidateControl. A callback to load all images. If specified, all controls with the image attribute set will call this callback with the attribute value passed as a string. The root element used to create or modify the Ribbon and other UI components.