Namespace: Consultingwerk.Windows.Framework.Repository.ToolbarButtons
Class 
ToolbarButtonDefinitionForm Copy to Clipboard
Parent classes:
Inherits: Consultingwerk.SmartComponents.Base.SmartWindowForm
Implements: IBaseForm, ICustomTypeDescriptor, IHasDesignerVerbs, IHasPrimaryDataSourceAndTarget, IHasSecurityKey, IHasTabDataSourceCount, ISmartToolbarTarget, ISmartWindowForm

/*&GLOBAL-DEFINE NoUserLobStatistics NoUserLobStatistics



Top Method Summary
Options Name Purpose
AddButton () Adds a button to the selected button definition file
AssignJsonFromParameter (ToolbarButtonDefinitionParameter, JsonObject) Assigns the members of a button definition from the parameter object
AssignParameterFromJson (JsonObject, ToolbarButtonDefinitionParameter) Assigns the parameter object from the members of a button definition
Consultingwerk.SmartFramework.Repository.IToolbarButtonDefinitionService ButtonDefinitionService () Returns the toolbar button definition service
Consultingwerk.ListNameValuePair ButtonTypeValueList () Returns the value list with the button types of a frontend
cbDefinitions_ValueChanged (Object, EventArgs) Event handler for the ValueChanged event of the cbDefinitions
Consultingwerk.Windows.Util.ComplexInputPrompt.PropertyInputSpec DesktopPropertySpecs (character) Returns the prompt specification of a Desktop button definition
Consultingwerk.Framework.Collections.CharacterList ExistingButtonIds () Returns the button ids the selected definition file uses
CHARACTER GetCharacterMember (JsonObject, character) Returns a character member of a button definition
CHARACTER GetLogicalMember (JsonObject, character) Returns a logical member of a button definition
CHARACTER GetShortcutMember (JsonObject) Returns the shortcut member of a button definition
InitializeComponent () Initializes the Visual Design
LoadButtons () Loads the buttons of the selected button definition file
Consultingwerk.ListNameValuePair LogicalValueList () Returns the value list of a JSON logical button property
OnShown (EventArgs) Raises the Shown event
OpenInEditor () Opens the selected button definition file in the current IDE
PopulateDefinitionFiles () Populates the combo box with the registered definition files
LOGICAL PromptForButton (character, ToolbarButtonDefinitionParameter, character) Prompts for the properties of a button definition
RemoveButton () Removes the selected button from the button definition file
RenameButton (character, character) Renames a button of the selected button definition file
Consultingwerk.ListNameValuePair RibbonGroupValueList (character) Returns the value list with the ribbon groups of the Desktop files
SaveDocument () Writes the document of the selected file and reloads the buttons
SetCharacterMember (JsonObject, character, character) Assigns or removes a character member of a button definition
SetLogicalMember (JsonObject, character, character) Assigns or removes a logical member of a button definition
SetShortcutMember (JsonObject, character) Assigns or removes the shortcut member of a button definition
ShowColumn (character, logical) Shows or hides a single column of the grid
ShowFrontendColumns () Hides the grid columns that do not apply to the frontend
smartDataBrowser1_DoubleClickRow (Object, DoubleClickRowEventArgs) Event handler for the DoubleClickRow event of the smartDataBrowser1
ultraToolbarsManager1_ToolClick (Object, ToolClickEventArgs) Event handler for the ToolClick event of the ultraToolbarsManager1
UpdateButton () Updates the selected button of the button definition file
Consultingwerk.Windows.Util.ComplexInputPrompt.PropertyInputSpec WebPropertySpecs () Returns the prompt specification of a Web button definition

Top Constructor Summary
Options Name Purpose
ToolbarButtonDefinitionForm () Constructor for the ToolbarButtonDefinitionForm class

Top Property Summary
Options Name Purpose
CHARACTER DefinitionFileName
Progress.Json.ObjectModel.JsonObject Document
Consultingwerk.SmartFramework.Repository.RepositoryFrontendEnum Frontend


Method Detail
Top

AddButton ()

Purpose: Adds a button to the selected button definition file
Notes:

Top

AssignJsonFromParameter (ToolbarButtonDefinitionParameter, JsonObject)

Purpose: Assigns the members of a button definition from the parameter object
Notes: A property the user left empty is removed from the button rather
than written as an empty member, so that a button definition does
not grow members it did not have before

Parameters:
poParameter Consultingwerk.Windows.Framework.Repository.ToolbarButtons.ToolbarButtonDefinitionParameter
The parameter object with the values entered by the user
poButton Progress.Json.ObjectModel.JsonObject
The JsonObject of the button definition to assign
Top

AssignParameterFromJson (JsonObject, ToolbarButtonDefinitionParameter)

Purpose: Assigns the parameter object from the members of a button definition
Notes:

Parameters:
poButton Progress.Json.ObjectModel.JsonObject
The JsonObject of the button definition to read
poParameter Consultingwerk.Windows.Framework.Repository.ToolbarButtons.ToolbarButtonDefinitionParameter
The parameter object to assign
Top

Consultingwerk.SmartFramework.Repository.IToolbarButtonDefinitionService ButtonDefinitionService ()

Purpose: Returns the toolbar button definition service
Notes:

Returns Consultingwerk.SmartFramework.Repository.IToolbarButtonDefinitionService
The reference to the IToolbarButtonDefinitionService
Top

Consultingwerk.ListNameValuePair ButtonTypeValueList ()

Purpose: Returns the value list with the button types of a frontend
Notes: The types the toolbar renderers of the two frontends support

Returns Consultingwerk.ListNameValuePair
The ListNameValuePair with the supported button types
Top

cbDefinitions_ValueChanged (Object, EventArgs)

Purpose: Event handler for the ValueChanged event of the cbDefinitions
Notes:

Parameters:
sender System.Object
The reference to the object that raised the event
e System.EventArgs
The System.EventArgs with the data for this event
Top

Consultingwerk.Windows.Util.ComplexInputPrompt.PropertyInputSpec DesktopPropertySpecs (character)

Purpose: Returns the prompt specification of a Desktop button definition
Notes: The properties the Desktop toolbar and ribbon renderers read

Parameters:
pcCurrentGroup CHARACTER
The ribbon group the edited button currently references
Returns Consultingwerk.Windows.Util.ComplexInputPrompt.PropertyInputSpec
The PropertyInputSpec array for the add / update prompt
Top

Consultingwerk.Framework.Collections.CharacterList ExistingButtonIds ()

Purpose: Returns the button ids the selected definition file uses
Notes:

Returns Consultingwerk.Framework.Collections.CharacterList
The CharacterList with the button ids of the definition file
Top

CHARACTER GetCharacterMember (JsonObject, character)

Purpose: Returns a character member of a button definition
Notes:

Parameters:
poButton Progress.Json.ObjectModel.JsonObject
The JsonObject of the button definition
pcMemberName CHARACTER
The name of the member to read
Returns CHARACTER
The value of the member, empty when the button has no such member
Top

CHARACTER GetLogicalMember (JsonObject, character)

Purpose: Returns a logical member of a button definition
Notes: Answers an empty value for a button that does not carry the
member at all, which is not the same as the member being false

Parameters:
poButton Progress.Json.ObjectModel.JsonObject
The JsonObject of the button definition
pcMemberName CHARACTER
The name of the member to read
Returns CHARACTER
"true", "false" or empty when the button has no such member
Top

CHARACTER GetShortcutMember (JsonObject)

Purpose: Returns the shortcut member of a button definition
Notes: The renderer accepts the shortcut as a single string as well as
an array of up to three key names, both are answered as a comma
delimited list

Parameters:
poButton Progress.Json.ObjectModel.JsonObject
The JsonObject of the button definition
Returns CHARACTER
The comma delimited key names of the shortcut
Top

InitializeComponent ()

Purpose: Initializes the Visual Design
Notes:

Top

LoadButtons ()

Purpose: Loads the buttons of the selected button definition file
Notes:

Top

Consultingwerk.ListNameValuePair LogicalValueList ()

Purpose: Returns the value list of a JSON logical button property
Notes: A button that does not carry the member at all behaves
differently from one that carries it as false, so the empty
entry is not the same as "false"

Returns Consultingwerk.ListNameValuePair
The ListNameValuePair with the logical values
Top

OnShown (EventArgs)

Purpose: Raises the Shown event
Notes:

Parameters:
e System.EventArgs
The System.EventArgs with the data for this event
Top

OpenInEditor ()

Purpose: Opens the selected button definition file in the current IDE
Notes:

Top

PopulateDefinitionFiles ()

Purpose: Populates the combo box with the registered definition files
Notes:

Top

LOGICAL PromptForButton (character, ToolbarButtonDefinitionParameter, character)

Purpose: Prompts for the properties of a button definition
Notes:

Parameters:
pcTitle CHARACTER
The title of the prompt
poParameter Consultingwerk.Windows.Framework.Repository.ToolbarButtons.ToolbarButtonDefinitionParameter
The parameter object to prompt for
pcOriginalButtonName CHARACTER
The name of the button before it was edited, empty when adding
Returns LOGICAL
Logical value indicating whether the user confirmed the prompt
Top

RemoveButton ()

Purpose: Removes the selected button from the button definition file
Notes:

Top

RenameButton (character, character)

Purpose: Renames a button of the selected button definition file
Notes: A JsonObject has no rename, so the buttons are rebuilt in their
original order with the new name in the place of the old one -
re-adding the button instead would move it to the end of the file

Parameters:
pcOldName CHARACTER
The current name of the button
pcNewName CHARACTER
The new name of the button
Top

Consultingwerk.ListNameValuePair RibbonGroupValueList (character)

Purpose: Returns the value list with the ribbon groups of the Desktop files
Notes: The group of a button is resolved against every Desktop definition
file, so the groups of all of them are offered. The group the
button currently references is added when it is not defined
anywhere, so that updating a button does not silently drop it

Parameters:
pcCurrentGroup CHARACTER
The group the edited button currently references
Returns Consultingwerk.ListNameValuePair
The ListNameValuePair with the ribbon groups
Top

SaveDocument ()

Purpose: Writes the document of the selected file and reloads the buttons
Notes:

Top

SetCharacterMember (JsonObject, character, character)

Purpose: Assigns or removes a character member of a button definition
Notes:

Parameters:
poButton Progress.Json.ObjectModel.JsonObject
The JsonObject of the button definition
pcMemberName CHARACTER
The name of the member to assign
pcValue CHARACTER
The value to assign, an empty value removes the member
Top

SetLogicalMember (JsonObject, character, character)

Purpose: Assigns or removes a logical member of a button definition
Notes:

Parameters:
poButton Progress.Json.ObjectModel.JsonObject
The JsonObject of the button definition
pcMemberName CHARACTER
The name of the member to assign
pcValue CHARACTER
"true" or "false", an empty value removes the member
Top

SetShortcutMember (JsonObject, character)

Purpose: Assigns or removes the shortcut member of a button definition
Notes: The shortcut is written as an array of key names, the shape the
definition files in the repository use

Parameters:
poButton Progress.Json.ObjectModel.JsonObject
The JsonObject of the button definition
pcValue CHARACTER
The comma delimited key names, an empty value removes the member
Top

ShowColumn (character, logical)

Purpose: Shows or hides a single column of the grid
Notes:

Parameters:
pcColumnName CHARACTER
The name of the column
plVisible LOGICAL
Logical value indicating whether the column is shown
Top

ShowFrontendColumns ()

Purpose: Hides the grid columns that do not apply to the frontend
Notes: A Desktop button has no icon class and no route, a Web button has
no ribbon group, no shortcut and no menu function

Top

smartDataBrowser1_DoubleClickRow (Object, DoubleClickRowEventArgs)

Purpose: Event handler for the DoubleClickRow event of the smartDataBrowser1
Notes:

Parameters:
sender System.Object
The reference to the object that raised the event
e Infragistics.Win.UltraWinGrid.DoubleClickRowEventArgs
The DoubleClickRowEventArgs with the data for this event
Top

ultraToolbarsManager1_ToolClick (Object, ToolClickEventArgs)

Purpose: Event handler for the ToolClick event of the ultraToolbarsManager1
Notes:

Parameters:
sender System.Object
The reference to the object that raised the event
e Infragistics.Win.UltraWinToolbars.ToolClickEventArgs
The ToolClickEventArgs with the data for this event
Top

UpdateButton ()

Purpose: Updates the selected button of the button definition file
Notes:

Top

Consultingwerk.Windows.Util.ComplexInputPrompt.PropertyInputSpec WebPropertySpecs ()

Purpose: Returns the prompt specification of a Web button definition
Notes: The properties the Web toolbar rendering passes to the frontend

Returns Consultingwerk.Windows.Util.ComplexInputPrompt.PropertyInputSpec
The PropertyInputSpec array for the add / update prompt


Constructor Detail
Top

ToolbarButtonDefinitionForm ()

Purpose: Constructor for the ToolbarButtonDefinitionForm class
Notes:



Property Detail
Top

CHARACTER DefinitionFileName


Returns CHARACTER
Top

Progress.Json.ObjectModel.JsonObject Document


Returns Progress.Json.ObjectModel.JsonObject
Top

Consultingwerk.SmartFramework.Repository.RepositoryFrontendEnum Frontend


Returns Consultingwerk.SmartFramework.Repository.RepositoryFrontendEnum


©2006-2026 Consultingwerk Ltd.         info@consultingwerk.de         http://www.consultingwerk.de       19.09.2026 10:22:59