locked
Custom Ribbon Implementation - Must "Home" Tab Exist on Ribbon RRS feed

  • Question

  •  

    Hi there,

     

    I am busy implementing a business application that is using the Ribbon interface.  In the UI guidelines, the following is stated:

     

    The one exception to this rule is the leftmost tab, which MUST include the controls used to accomplish the most frequently-performed actions with the application and SHOULD be labeled "Home."

     

    I am checking to see whether all Ribbon controls MUST have a "Home" tab.  My application is of such a nature where it would not make sense to have a Home tab, as each group represent a totally different function of the application.

     

    I wish to point out that Outlook 2007 does not follow this guideline.  The only Ribbon Tabs visible when creating a new mail message is: Message, Insert, Options & Insert Text.

     

    Your assistance and clarification is much appreciated.

     

    Kind regards,

     

    Phillip Roux.

    Tuesday, January 29, 2008 2:22 AM

Answers

  • Hi Phillip

     

    If you use "start from scratch" I'm pretty sure you can do anything you like, as far as Tab names, etc.

     

    FWIW, I've set up Ribbons that haven't even used "start from scratch" and had a Tab at the beginning that was not named "Home". It did contain what I considered the most important controls, but it was positioned before the biult-in "Home" tab.

     

    Therefore, "MUST" is more from the point-of-view of the guidelines. That's what the Office team in charge of the UI would like to have you do. Part of the research that went into the design decisions for the Ribbon revealed that users want to have commands in the same, predictable place. So the Ribbon and its tools are locked at the top of the window and can't be moved. And that's why you're not allowed to change the content of any of the built-in groups. Having a "Home" tab always in first position, with "standard" controls, is part of this philosophy. But in fact you aren't locked into it.

     

    Tuesday, January 29, 2008 9:17 AM
  •  Anubix wrote:
    "FWIW, I've set up Ribbons that haven't even used "start from scratch" and had a Tab at the beginning that was not named "Home". It did contain what I considered the most important controls, but it was positioned before the biult-in "Home" tab."

     

    I'm trying to setup a template that contains a custom ribbon tab for our office. It has macrs and the most popular icons in it. I want this Ribbon tab to be in front of all others when Word opens.  Currently, the Home tab always opens on top.

     

    In your post you say you have made tabs that the custom tab you made went in front of "Home".  How did you do this?  My only tools are the Custom UI Editor and Word VBA.  I don't have the Visual Studio.

     

    If I use the Start from scratch, would I have to recreate all the tabs?  Or if I use start from scratch, can I then say, OK now show all the tabs except for Home and display "Special Macros" tab on top?  Can this be done?

    If you use "start from scratch" then you have to define everything. Better not to do so unless you absolutely must.

     

    I recommend you read the information about working with the Office 2007 UI, most especially, the three-part article for developers. In the second part the schema is set out in a fairly human-understandable manner. There, you can see what attributes any particular element supports.

     

    The TAB element has a number of elements relevant to your question: InsertBeforeMso and visible

     

    If you want your Tab to be the first one, then assign the idMso value for the "Home" tab to the InsertBeforeMso attribute in the definition of your Tab.

     

    If you want to completely hide any particular built-in tab, list that Tab in your Ribbon XML (using the idMso attribute to specify which tab you're addressing) and set the visible attribute to "false".

    Wednesday, March 26, 2008 8:31 PM

All replies

  • Hi Phillip

     

    If you use "start from scratch" I'm pretty sure you can do anything you like, as far as Tab names, etc.

     

    FWIW, I've set up Ribbons that haven't even used "start from scratch" and had a Tab at the beginning that was not named "Home". It did contain what I considered the most important controls, but it was positioned before the biult-in "Home" tab.

     

    Therefore, "MUST" is more from the point-of-view of the guidelines. That's what the Office team in charge of the UI would like to have you do. Part of the research that went into the design decisions for the Ribbon revealed that users want to have commands in the same, predictable place. So the Ribbon and its tools are locked at the top of the window and can't be moved. And that's why you're not allowed to change the content of any of the built-in groups. Having a "Home" tab always in first position, with "standard" controls, is part of this philosophy. But in fact you aren't locked into it.

     

    Tuesday, January 29, 2008 9:17 AM
  • To quote Cindy:

     

    "FWIW, I've set up Ribbons that haven't even used "start from scratch" and had a Tab at the beginning that was not named "Home". It did contain what I considered the most important controls, but it was positioned before the biult-in "Home" tab."

     

    I'm trying to setup a template that contains a custom ribbon tab for our office. It has macrs and the most popular icons in it. I want this Ribbon tab to be in front of all others when Word opens.  Currently, the Home tab always opens on top.

     

    In your post you say you have made tabs that the custom tab you made went in front of "Home".  How did you do this?  My only tools are the Custom UI Editor and Word VBA.  I don't have the Visual Studio.

     

    If I use the Start from scratch, would I have to recreate all the tabs?  Or if I use start from scratch, can I then say, OK now show all the tabs except for Home and display "Special Macros" tab on top?  Can this be done?

     

     

     

    Friday, March 14, 2008 6:36 PM
  • Hi,

     

    Thank you for contacting Microsoft Innovate On Office Advisory Services.

     

    The following is the details of your request:

     

    [Support Request Description]:

    -   You are creating custom ribbon tabs for Office 2007.

    -   According to the UI guidelines it has been mentioned, that the left-most tab on the ribbon should be labeled as "Home".

    -  As the custom ribbons, which you are developing meet different business purposes, you would not like the left most tabs to be  labeled as "Home"

     

    [Next Step]:

         -     I am researching on this issue and will get back to you as soon as possible.  

     

    Thanks,

     

    Harjit.

     

    Wednesday, March 26, 2008 3:35 PM
    Moderator
  •  Anubix wrote:
    "FWIW, I've set up Ribbons that haven't even used "start from scratch" and had a Tab at the beginning that was not named "Home". It did contain what I considered the most important controls, but it was positioned before the biult-in "Home" tab."

     

    I'm trying to setup a template that contains a custom ribbon tab for our office. It has macrs and the most popular icons in it. I want this Ribbon tab to be in front of all others when Word opens.  Currently, the Home tab always opens on top.

     

    In your post you say you have made tabs that the custom tab you made went in front of "Home".  How did you do this?  My only tools are the Custom UI Editor and Word VBA.  I don't have the Visual Studio.

     

    If I use the Start from scratch, would I have to recreate all the tabs?  Or if I use start from scratch, can I then say, OK now show all the tabs except for Home and display "Special Macros" tab on top?  Can this be done?

    If you use "start from scratch" then you have to define everything. Better not to do so unless you absolutely must.

     

    I recommend you read the information about working with the Office 2007 UI, most especially, the three-part article for developers. In the second part the schema is set out in a fairly human-understandable manner. There, you can see what attributes any particular element supports.

     

    The TAB element has a number of elements relevant to your question: InsertBeforeMso and visible

     

    If you want your Tab to be the first one, then assign the idMso value for the "Home" tab to the InsertBeforeMso attribute in the definition of your Tab.

     

    If you want to completely hide any particular built-in tab, list that Tab in your Ribbon XML (using the idMso attribute to specify which tab you're addressing) and set the visible attribute to "false".

    Wednesday, March 26, 2008 8:31 PM