<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.visual-prolog.com/index.php?action=history&amp;feed=atom&amp;title=RibbonControl</id>
	<title>RibbonControl - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.visual-prolog.com/index.php?action=history&amp;feed=atom&amp;title=RibbonControl"/>
	<link rel="alternate" type="text/html" href="https://wiki.visual-prolog.com/index.php?title=RibbonControl&amp;action=history"/>
	<updated>2026-05-24T11:36:36Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.37.1</generator>
	<entry>
		<id>https://wiki.visual-prolog.com/index.php?title=RibbonControl&amp;diff=4228&amp;oldid=prev</id>
		<title>Thomas Linder Puls: category</title>
		<link rel="alternate" type="text/html" href="https://wiki.visual-prolog.com/index.php?title=RibbonControl&amp;diff=4228&amp;oldid=prev"/>
		<updated>2016-03-04T09:48:41Z</updated>

		<summary type="html">&lt;p&gt;category&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 11:48, 4 March 2016&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l100&quot;&gt;Line 100:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 100:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The ribbon control furthermore features a rich, visual Designer. Try clicking the Design button and customize the demo ribbon to your likings.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The ribbon control furthermore features a rich, visual Designer. Try clicking the Design button and customize the demo ribbon to your likings.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[Category:Tutorials]]&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:Controls]]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:Controls]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Thomas Linder Puls</name></author>
	</entry>
	<entry>
		<id>https://wiki.visual-prolog.com/index.php?title=RibbonControl&amp;diff=3851&amp;oldid=prev</id>
		<title>Thomas Linder Puls: Category</title>
		<link rel="alternate" type="text/html" href="https://wiki.visual-prolog.com/index.php?title=RibbonControl&amp;diff=3851&amp;oldid=prev"/>
		<updated>2013-10-28T09:44:12Z</updated>

		<summary type="html">&lt;p&gt;Category&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 11:44, 28 October 2013&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l102&quot;&gt;Line 102:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 102:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:Tutorials]]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:Tutorials]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;GUI&lt;/del&gt;]]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Controls&lt;/ins&gt;]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Thomas Linder Puls</name></author>
	</entry>
	<entry>
		<id>https://wiki.visual-prolog.com/index.php?title=RibbonControl&amp;diff=2879&amp;oldid=prev</id>
		<title>Thomas Linder Puls: release</title>
		<link rel="alternate" type="text/html" href="https://wiki.visual-prolog.com/index.php?title=RibbonControl&amp;diff=2879&amp;oldid=prev"/>
		<updated>2012-11-24T19:47:57Z</updated>

		<summary type="html">&lt;p&gt;release&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 21:47, 24 November 2012&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot;&gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;{{Preliminary Documentation}}&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The &amp;lt;vp&amp;gt;ribbonControl&amp;lt;/vp&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The &amp;lt;vp&amp;gt;ribbonControl&amp;lt;/vp&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Thomas Linder Puls</name></author>
	</entry>
	<entry>
		<id>https://wiki.visual-prolog.com/index.php?title=RibbonControl&amp;diff=2871&amp;oldid=prev</id>
		<title>Thomas Linder Puls: Initial</title>
		<link rel="alternate" type="text/html" href="https://wiki.visual-prolog.com/index.php?title=RibbonControl&amp;diff=2871&amp;oldid=prev"/>
		<updated>2012-11-22T12:14:22Z</updated>

		<summary type="html">&lt;p&gt;Initial&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{Preliminary Documentation}}&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;vp&amp;gt;ribbonControl&amp;lt;/vp&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Ribbon Demo ==&lt;br /&gt;
&lt;br /&gt;
The Ribbon Demo project illustrates how to develop applications using the Ribbon and Command packages of pfc/gui.&lt;br /&gt;
&lt;br /&gt;
[[Image:RibbonDemo.png]]&lt;br /&gt;
&lt;br /&gt;
Commands provide a convenient and abstract way of encapsulating end-user actions/operations/features.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Example&amp;#039;&amp;#039;&amp;#039; A simple command that invokes a specific operation&lt;br /&gt;
&lt;br /&gt;
&amp;lt;vip&amp;gt;clauses&lt;br /&gt;
        ...&lt;br /&gt;
        ChangeOrgUnitCmd=command::new(This,&amp;quot;system/organization/change&amp;quot;),&lt;br /&gt;
        ChangeOrgUnitCmd:menuLabel:=&amp;quot;Organization&amp;quot;,&lt;br /&gt;
        ChangeOrgUnitCmd:icon:=some(icon::createFromImages(&lt;br /&gt;
            [bitmap::createFromBinary(#binInclude(@&amp;quot;Icons\Organization16.png&amp;quot;)),&lt;br /&gt;
            bitmap::createFromBinary(#binInclude(@&amp;quot;Icons\Organization32.png&amp;quot;))])),&lt;br /&gt;
        ChangeOrgUnitCmd:tipText:=tooltip::tip(&amp;quot;Change Organizational Settings&amp;quot;),&lt;br /&gt;
        ChangeOrgUnitCmd:run:=onCmdRun,&lt;br /&gt;
        ...&amp;lt;/vip&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Commands feature all required properties for presentation and operation.&lt;br /&gt;
&lt;br /&gt;
Command objects can be included and referenced from menus and ribbon controls.  The Action popup menu is constructed as a menuCommand,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;vip&amp;gt;clauses&lt;br /&gt;
        ...&lt;br /&gt;
        MenuCmd=menuCommand::new(This,&amp;quot;actions&amp;quot;),&lt;br /&gt;
        MenuCmd:menuLabel:=&amp;quot;Actions&amp;quot;,&lt;br /&gt;
        MenuCmd:style:= popupMenu,&lt;br /&gt;
        MenuCmd:icon:=some(icon::createFromImages(&lt;br /&gt;
            [bitmap::createFromBinary(#binInclude(@&amp;quot;Icons\Reports16.png&amp;quot;)),&lt;br /&gt;
            bitmap::createFromBinary(#binInclude(@&amp;quot;Icons\Reports32.png&amp;quot;))])),&lt;br /&gt;
        MenuCmd:layout:= menuStatic(&lt;br /&gt;
            [cmd(ChangeOrgUnitCmd),&lt;br /&gt;
            separator,&lt;br /&gt;
            cmd(OptionMenuCmd)]),&lt;br /&gt;
        ...&amp;lt;/vip&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:RibbonDemoOrganization.png]]&lt;br /&gt;
&lt;br /&gt;
Note how the command icons are used in menus as well.&lt;br /&gt;
&lt;br /&gt;
Three kinds of menuCommands are supported:&lt;br /&gt;
&lt;br /&gt;
;popupMenu&lt;br /&gt;
:A traditional menu from which user can choose a command&lt;br /&gt;
&lt;br /&gt;
;toolMenu&lt;br /&gt;
:The menu items are considered tools. When user picks a tool the ribbon button changes to this tool such that repeative uses are simplified. Tool can be altered by opening menu and selecting another one.&lt;br /&gt;
&lt;br /&gt;
;variantMenu&lt;br /&gt;
:The menu items are variations of a common, super command. If menu is reduced to a single variant the ribbon button looks and behaves just like an ordinary command button, i.e. no dropdown triangle and command is executed by clicking button.&lt;br /&gt;
&lt;br /&gt;
Variant menus can be aggregated/gathered automatically by declaratively stating which categories of commands constitute a metaCommand. Typically this is used for actions and clipboard commands. A number of New actions may be supported by various UI components of a form. Instead of presenting all these as separate ribbon buttons a &amp;#039;&amp;#039;metaCommand&amp;#039;&amp;#039; can be defined&lt;br /&gt;
&lt;br /&gt;
&amp;lt;vip&amp;gt;clauses&lt;br /&gt;
        ...&lt;br /&gt;
        ActionNewCmd = metaCommand::new(This,&amp;quot;action/new&amp;quot;),&lt;br /&gt;
        ActionNewCmd:category := [&amp;quot;action/new&amp;quot;],&lt;br /&gt;
        ActionNewCmd:menuLabel:=&amp;quot;New&amp;quot;,&lt;br /&gt;
        ActionNewCmd:icon:=some(icon::createFromImages(&lt;br /&gt;
            [bitmap::createFromBinary(#binInclude(@&amp;quot;Icons\NewPane16.png&amp;quot;)),&lt;br /&gt;
            bitmap::createFromBinary(#binInclude(@&amp;quot;Icons\NewPane32.png&amp;quot;))])),&lt;br /&gt;
        ...&amp;lt;/vip&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The &amp;#039;&amp;#039;category&amp;#039;&amp;#039; property defines the criteria that &amp;#039;&amp;#039;New&amp;#039;&amp;#039; commands should satisfy in order to be included in &amp;lt;vp&amp;gt;variantMenu&amp;lt;/vp&amp;gt;. Initially our demo form supports two commands that are to be considered &amp;#039;&amp;#039;New&amp;#039;&amp;#039; commands,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;vip&amp;gt;clauses&lt;br /&gt;
        ...&lt;br /&gt;
        CallinActionNewCmd:category := [&amp;quot;action/new&amp;quot;],&lt;br /&gt;
        PersonActionNewCmd:category := [&amp;quot;action/new&amp;quot;],&lt;br /&gt;
        ...&amp;lt;/vip&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:RibbonDemoNew.png]]&lt;br /&gt;
&lt;br /&gt;
By clicking &amp;#039;&amp;#039;on/off&amp;#039;&amp;#039; button we disable one of them. The &amp;#039;&amp;#039;New&amp;#039;&amp;#039; button immediately becomes an ordinary looking command button for the only remaining variant command &amp;#039;&amp;#039;New Person&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
[[Image:RibbonDemoNewPerson.png]]&lt;br /&gt;
&lt;br /&gt;
If &amp;#039;&amp;#039;New CallIn&amp;#039;&amp;#039; is later re-enabled or other commands with matching &amp;#039;&amp;#039;category&amp;#039;&amp;#039; are defined the button will again appear as a menu button with dropdown option.&lt;br /&gt;
&lt;br /&gt;
When Command state properties (visible, enabled, labels, icons) are changed, menus and ribbons react immediately.&lt;br /&gt;
&lt;br /&gt;
[[Image:RibbonDemoStateChange.png]]&lt;br /&gt;
&lt;br /&gt;
Toggle/Check buttons are supported by the &amp;lt;vp&amp;gt;checkCommand&amp;lt;/vp&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[Image:RibbonDemoOnOff.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A &amp;lt;vp&amp;gt;checkStateChange&amp;lt;/vp&amp;gt; event is supported on these commands. The current check state can be read and set directly on Command as a property. If check state is updated all uses of this command reflects change.&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;vp&amp;gt;customCommand&amp;lt;/vp&amp;gt; allows all pfc/gui Controls to be embedded in Ribbons. Popup menu does currently not support &amp;lt;vp&amp;gt;customCommands&amp;lt;/vp&amp;gt;. The demo shows how an editControl can easily be embedded in ribbons.&lt;br /&gt;
&lt;br /&gt;
=== Designer ===&lt;br /&gt;
&lt;br /&gt;
The ribbon control furthermore features a rich, visual Designer. Try clicking the Design button and customize the demo ribbon to your likings.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Tutorials]]&lt;br /&gt;
[[Category:GUI]]&lt;/div&gt;</summary>
		<author><name>Thomas Linder Puls</name></author>
	</entry>
</feed>