One of the reasons I enjoy working with webOS is its foundation of standard web technologies.  In practice, this translates to the ability to customize the behavior and display of the framework in ways its creators didn't foresee.  One such mechanism is CSS -- parodoxically my most and least favorite.  I love that I can throw a -webkit-border-radius on a <div> rather than opening up a graphics program and the flexible box model is amazing (coming from someone who lived by nested tables back in the day).

HP has already covered most of the built-in Toolbar controls in their Enyo Developer Guide but there's nothing preventing you from dropping any control you want in a Toolbar.  I'll cover a couple examples and show how reusing existing enyo CSS classes and tweaking others can make other controls look at home in the Toolbar.

[[MORE]]

I'll start with covering a couple controls the dev guide leaves out:  ToolInput, ToolInputBox, and ToolSearchInput.  In each case, the controls are identical to their non-Toolbar counterparts with the exception of the CSS classes applied.  In fact, each inherits directly from their respective "normal" control.  I mention them here mainly to illustrate a template for how you might ready other controls (Enyo or custom) to be displayed in a Toolbar.

To illustrate, I create a new ToolSlider and ToolCustomListSelector control.  ToolSlider inherits from Slider and adds the classes from the ToolInput control.  I also added an extras-tool-slider class to reduce the margins to make it fit better. 

enyo.kind({
  name:"ToolSlider",
  kind:"Slider",
  className:"extras-tool-slider enyo-input enyo-tool-input"
});

ToolCustomListSelector inherits from CustomListSelector (surprising, I know) and adds the classes from ToolButton.  Again, I added an additional class, extras-tool-listselector, to manage the height of the control.

enyo.kind({
  name:"ToolCustomListSelector",
  kind:"CustomListSelector",
  className:"extras-tool-listselector enyo-tool-button-client enyo-tool-button-captioned"
});

Here's everything -- all the built-in controls plus the 2 custom controls above -- in action.

CSS

.extras-tool-listselector .enyo-listselector-arrow {
    min-height:20px;
}

.extras-tool-slider .enyo-slider-progress {
    margin:10px 5px;
}

JavaScript

var _Example = {
    name:"com.technisode.example.App",
    kind:"Control",
    components:[
        {kind:"Toolbar", name:"tb1", pack:"justify", name:"toolbar", components:[
            {kind:"ToolButton", caption:"Button"},
            {kind:"ToolInput", hint:"important stuff"},
            {kind:"ToolSearchInput"},
            {kind:"RadioToolButtonGroup", components:[
                  {label:"First"},
                  {label:"Second"},
                  {label:"Third"},
            ]},
            {kind:"ToolButtonGroup", components:[
                {kind:"GroupedToolButton", caption:"Button"},
                {kind:"GroupedToolButton", caption:"Button"},
                {kind:"GroupedToolButton", caption:"Button"},
            ]},
        ]},
        {kind:"Toolbar", name:"tb2", pack:"justify", components:[
            {kind:"ToolInputBox", width:"300px", components:[
                 {kind:"Input", styled:false, flex:1},
                 {kind: "ToolCustomListSelector", value: 3, items: [
                     {caption: "Google", value: 1},
                     {caption: "Bing", value: 2},
                     {caption: "Alta Vista", value: 3},
                 ]},
            ]},
            {kind: "ToolCustomListSelector", value: 2, items: [
                {caption: "One", value: 1},
                {caption: "Two", value: 2},
                {caption: "Three", value: 3},
            ]},
            {kind:"ToolSlider", maximum:10, minimum:0, value:5, width:"200px"},
        ]}
    ]
}

enyo.kind({name:"ToolCustomListSelector", kind:"CustomListSelector", className:"extras-tool-listselector enyo-tool-button-client enyo-tool-button-captioned"})
enyo.kind({name:"ToolSlider", kind:"Slider", className:"extras-tool-slider enyo-input enyo-tool-input"})
enyo.kind(_Example);