mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-08-18 23:19:12 +02:00
IDE: menu designer:
- The Checkmark and RadioItem dialog has been removed. - A new groupbox in the side panel reports on GroupIndex values for each submenu (if relevant). - Unnecessary resourcestrings in the original patch have been removed. - Fake insertion entry has been implemented with self-descriptive texts and removal of the patterned background. Issue #29205, by Howard Page-Clark git-svn-id: trunk@51252 -
This commit is contained in:
parent
12677f044a
commit
d1790be9f0
@ -1,12 +1,12 @@
|
|||||||
object MenuDesigner: TMenuDesigner
|
object MenuDesigner: TMenuDesigner
|
||||||
Left = 846
|
Left = 504
|
||||||
Height = 345
|
Height = 400
|
||||||
Top = 497
|
Top = 291
|
||||||
Width = 730
|
Width = 730
|
||||||
Caption = 'MenuDesigner'
|
Caption = 'MenuDesigner'
|
||||||
ClientHeight = 345
|
ClientHeight = 400
|
||||||
ClientWidth = 730
|
ClientWidth = 730
|
||||||
Constraints.MinHeight = 345
|
Constraints.MinHeight = 400
|
||||||
Constraints.MinWidth = 730
|
Constraints.MinWidth = 730
|
||||||
KeyPreview = True
|
KeyPreview = True
|
||||||
OnCreate = FormCreate
|
OnCreate = FormCreate
|
||||||
@ -16,12 +16,12 @@ object MenuDesigner: TMenuDesigner
|
|||||||
LCLVersion = '1.7'
|
LCLVersion = '1.7'
|
||||||
object LeftPanel: TPanel
|
object LeftPanel: TPanel
|
||||||
Left = 0
|
Left = 0
|
||||||
Height = 345
|
Height = 400
|
||||||
Top = 0
|
Top = 0
|
||||||
Width = 204
|
Width = 204
|
||||||
Align = alLeft
|
Align = alLeft
|
||||||
AutoSize = True
|
AutoSize = True
|
||||||
ClientHeight = 345
|
ClientHeight = 400
|
||||||
ClientWidth = 204
|
ClientWidth = 204
|
||||||
Constraints.MinHeight = 345
|
Constraints.MinHeight = 345
|
||||||
Constraints.MinWidth = 204
|
Constraints.MinWidth = 204
|
||||||
@ -258,16 +258,64 @@ object MenuDesigner: TMenuDesigner
|
|||||||
AnchorSideTop.Side = asrBottom
|
AnchorSideTop.Side = asrBottom
|
||||||
AnchorSideBottom.Control = LeftPanel
|
AnchorSideBottom.Control = LeftPanel
|
||||||
AnchorSideBottom.Side = asrBottom
|
AnchorSideBottom.Side = asrBottom
|
||||||
Left = 13
|
Left = 7
|
||||||
Height = 25
|
Height = 25
|
||||||
Top = 307
|
Top = 368
|
||||||
Width = 75
|
Width = 75
|
||||||
Anchors = [akLeft, akBottom]
|
Anchors = [akLeft, akBottom]
|
||||||
BorderSpacing.Around = 12
|
BorderSpacing.Around = 6
|
||||||
DefaultCaption = True
|
DefaultCaption = True
|
||||||
Kind = bkHelp
|
Kind = bkHelp
|
||||||
OnClick = HelpButtonClick
|
OnClick = HelpButtonClick
|
||||||
TabOrder = 2
|
TabOrder = 2
|
||||||
end
|
end
|
||||||
|
object SubmenuGroupBox: TGroupBox
|
||||||
|
AnchorSideLeft.Control = LeftPanel
|
||||||
|
AnchorSideTop.Control = StatisticsGroupBox
|
||||||
|
AnchorSideTop.Side = asrBottom
|
||||||
|
AnchorSideRight.Control = LeftPanel
|
||||||
|
AnchorSideRight.Side = asrBottom
|
||||||
|
Left = 7
|
||||||
|
Height = 64
|
||||||
|
Top = 254
|
||||||
|
Width = 190
|
||||||
|
Anchors = [akTop, akLeft, akRight]
|
||||||
|
BorderSpacing.Around = 6
|
||||||
|
Caption = 'SubmenuGroupBox'
|
||||||
|
ClientHeight = 44
|
||||||
|
ClientWidth = 186
|
||||||
|
TabOrder = 3
|
||||||
|
object GroupIndexLabel: TLabel
|
||||||
|
AnchorSideLeft.Control = SubmenuGroupBox
|
||||||
|
AnchorSideTop.Control = RadioGroupsLabel
|
||||||
|
AnchorSideTop.Side = asrBottom
|
||||||
|
AnchorSideRight.Control = SubmenuGroupBox
|
||||||
|
AnchorSideRight.Side = asrBottom
|
||||||
|
Left = 12
|
||||||
|
Height = 15
|
||||||
|
Top = 27
|
||||||
|
Width = 168
|
||||||
|
Anchors = [akTop, akLeft, akRight]
|
||||||
|
BorderSpacing.Left = 6
|
||||||
|
BorderSpacing.Around = 6
|
||||||
|
Caption = 'GroupIndexLabel'
|
||||||
|
ParentColor = False
|
||||||
|
end
|
||||||
|
object RadioGroupsLabel: TLabel
|
||||||
|
AnchorSideLeft.Control = SubmenuGroupBox
|
||||||
|
AnchorSideTop.Control = SubmenuGroupBox
|
||||||
|
AnchorSideRight.Control = SubmenuGroupBox
|
||||||
|
AnchorSideRight.Side = asrBottom
|
||||||
|
Left = 12
|
||||||
|
Height = 15
|
||||||
|
Top = 6
|
||||||
|
Width = 168
|
||||||
|
Anchors = [akTop, akLeft, akRight]
|
||||||
|
BorderSpacing.Left = 6
|
||||||
|
BorderSpacing.Around = 6
|
||||||
|
Caption = 'RadioGroupsLabel'
|
||||||
|
ParentColor = False
|
||||||
|
end
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
@ -44,14 +44,17 @@ type
|
|||||||
CaptionedItemsCountLabel: TLabel;
|
CaptionedItemsCountLabel: TLabel;
|
||||||
DeepestNestingLevelLabel: TLabel;
|
DeepestNestingLevelLabel: TLabel;
|
||||||
DeleteItemButton: TSpeedButton;
|
DeleteItemButton: TSpeedButton;
|
||||||
|
GroupIndexLabel: TLabel;
|
||||||
HelpButton: TBitBtn;
|
HelpButton: TBitBtn;
|
||||||
IconCountLabel: TLabel;
|
IconCountLabel: TLabel;
|
||||||
|
LeftPanel:TPanel;
|
||||||
MoveItemDownButton: TSpeedButton;
|
MoveItemDownButton: TSpeedButton;
|
||||||
MoveItemUpButton: TSpeedButton;
|
MoveItemUpButton: TSpeedButton;
|
||||||
PopupAssignmentsCountLabel: TLabel;
|
PopupAssignmentsCountLabel: TLabel;
|
||||||
|
RadioGroupsLabel: TLabel;
|
||||||
ShortcutItemsCountLabel: TLabel;
|
ShortcutItemsCountLabel: TLabel;
|
||||||
LeftPanel:TPanel;
|
|
||||||
StatisticsGroupBox: TGroupBox;
|
StatisticsGroupBox: TGroupBox;
|
||||||
|
SubmenuGroupBox: TGroupBox;
|
||||||
procedure FormCreate(Sender: TObject);
|
procedure FormCreate(Sender: TObject);
|
||||||
procedure FormDestroy(Sender: TObject);
|
procedure FormDestroy(Sender: TObject);
|
||||||
procedure HelpButtonClick(Sender: TObject);
|
procedure HelpButtonClick(Sender: TObject);
|
||||||
@ -78,13 +81,13 @@ type
|
|||||||
anIconCount, anAccelCount: integer): integer;
|
anIconCount, anAccelCount: integer): integer;
|
||||||
function GetPopupAssignmentCount: integer;
|
function GetPopupAssignmentCount: integer;
|
||||||
function GetSelectedMenuComponent(const aSelection: TPersistentSelectionList;
|
function GetSelectedMenuComponent(const aSelection: TPersistentSelectionList;
|
||||||
out isTMenu: boolean; out selCount: integer): TPersistent;
|
out isTMenu: boolean; out isTMenuItem: boolean): TPersistent;
|
||||||
procedure DisableGUI;
|
procedure DisableGUI;
|
||||||
procedure EnableGUI(selectedIsNil: boolean);
|
procedure EnableGUI(selectedIsNil: boolean);
|
||||||
|
procedure HidePopupAssignmentsInfo;
|
||||||
procedure InitializeStatisticVars;
|
procedure InitializeStatisticVars;
|
||||||
procedure LoadFixedButtonGlyphs;
|
procedure LoadFixedButtonGlyphs;
|
||||||
procedure OnDesignerSetSelection(const ASelection: TPersistentSelectionList);
|
procedure OnDesignerSetSelection(const ASelection: TPersistentSelectionList);
|
||||||
procedure HidePopupAssignmentsInfo;
|
|
||||||
procedure SetupPopupAssignmentsDisplay;
|
procedure SetupPopupAssignmentsDisplay;
|
||||||
public
|
public
|
||||||
procedure LoadVariableButtonGlyphs(isInMenubar: boolean);
|
procedure LoadVariableButtonGlyphs(isInMenubar: boolean);
|
||||||
@ -93,6 +96,7 @@ type
|
|||||||
procedure UpdateShortcutList(includeAccelerators: boolean=False);
|
procedure UpdateShortcutList(includeAccelerators: boolean=False);
|
||||||
procedure UpdateStatistics;
|
procedure UpdateStatistics;
|
||||||
procedure UpdateTemplatesCount;
|
procedure UpdateTemplatesCount;
|
||||||
|
procedure UpdateSubmenuGroupBox(selMI: TMenuItem; selBox: TShadowBox; boxIsRoot:boolean);
|
||||||
procedure BeginUpdate;
|
procedure BeginUpdate;
|
||||||
procedure EndUpdate;
|
procedure EndUpdate;
|
||||||
function IsUpdate: Boolean;
|
function IsUpdate: Boolean;
|
||||||
@ -203,35 +207,32 @@ procedure TMenuDesigner.OnDesignerSetSelection(const ASelection: TPersistentSele
|
|||||||
var
|
var
|
||||||
mnu: TMenu;
|
mnu: TMenu;
|
||||||
mi, tmp: TMenuItem;
|
mi, tmp: TMenuItem;
|
||||||
selCount: integer;
|
isTMenu, isTMenuItem: boolean;
|
||||||
isTMenu: boolean;
|
|
||||||
persist: TPersistent;
|
persist: TPersistent;
|
||||||
begin
|
begin
|
||||||
if FUpdateCount > 0 then
|
if FUpdateCount > 0 then
|
||||||
Exit; // This event will be executed after all updates, look at EndUpdate
|
Exit; // This event will be executed after all updates, look at EndUpdate
|
||||||
|
|
||||||
persist:=GetSelectedMenuComponent(ASelection, isTMenu, selCount);
|
persist:=GetSelectedMenuComponent(ASelection, isTMenu, isTMenuItem);
|
||||||
if (persist <> nil) then
|
if (persist <> nil) then
|
||||||
begin
|
begin
|
||||||
case isTMenu of
|
if isTMenu then
|
||||||
True: SetMenu(TMenu(persist), nil);
|
SetMenu(TMenu(persist), nil)
|
||||||
False:begin
|
else if isTMenuItem then begin
|
||||||
mi:=TMenuItem(persist);
|
mi:=TMenuItem(persist);
|
||||||
tmp:=mi;
|
tmp:=mi;
|
||||||
while (tmp.Parent <> nil) do
|
while (tmp.Parent <> nil) do
|
||||||
tmp:=tmp.Parent;
|
tmp:=tmp.Parent;
|
||||||
mnu:=tmp.Menu;
|
mnu:=tmp.Menu;
|
||||||
if (mnu = nil) then
|
if (mnu = nil) then
|
||||||
mnu:=mi.GetParentMenu;
|
mnu:=mi.GetParentMenu;
|
||||||
if (mnu = FEditedMenu) and (FShadowMenu <> nil) then
|
if (mnu = FEditedMenu) and (FShadowMenu <> nil) then
|
||||||
FShadowMenu.SetSelectedMenuItem(mi, True, False)
|
FShadowMenu.SetSelectedMenuItem(mi, True, False)
|
||||||
else if (mnu <> nil) then
|
else if (mnu <> nil) then
|
||||||
SetMenu(mnu, mi);
|
SetMenu(mnu, mi);
|
||||||
end;
|
|
||||||
end;
|
end;
|
||||||
end
|
end
|
||||||
else if (selCount = 1) then // persist = nil, i.e. no menu component selected, maybe this never happens?
|
else SetMenu(nil, nil);
|
||||||
SetMenu(nil, nil);
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TMenuDesigner.ShowPopupAssignmentsInfo;
|
procedure TMenuDesigner.ShowPopupAssignmentsInfo;
|
||||||
@ -245,8 +246,8 @@ begin
|
|||||||
PopupAssignmentsCountLabel.BorderSpacing.Bottom:=0
|
PopupAssignmentsCountLabel.BorderSpacing.Bottom:=0
|
||||||
else PopupAssignmentsCountLabel.BorderSpacing.Bottom:=Double_Margin;
|
else PopupAssignmentsCountLabel.BorderSpacing.Bottom:=Double_Margin;
|
||||||
if (count= -1) then
|
if (count= -1) then
|
||||||
PopupAssignmentsCountLabel.Caption:=lisMenuEditorPopupAssignmentsNA
|
PopupAssignmentsCountLabel.Caption:=Format(lisMenuEditorPopupAssignmentsS,[lisMenuEditorNA])
|
||||||
else PopupAssignmentsCountLabel.Caption:=Format(lisMenuEditorPopupAssignmentsD, [count]);
|
else PopupAssignmentsCountLabel.Caption:=Format(lisMenuEditorPopupAssignmentsS, [IntToStr(count)]);
|
||||||
if (count > 0) then begin
|
if (count > 0) then begin
|
||||||
FPopupAssignmentsListBox.Items.Assign(FPopupAssignments);
|
FPopupAssignmentsListBox.Items.Assign(FPopupAssignments);
|
||||||
FPopupAssignmentsListBox.Visible:=True;
|
FPopupAssignmentsListBox.Visible:=True;
|
||||||
@ -258,7 +259,7 @@ end;
|
|||||||
procedure TMenuDesigner.HidePopupAssignmentsInfo;
|
procedure TMenuDesigner.HidePopupAssignmentsInfo;
|
||||||
begin
|
begin
|
||||||
if (FEditedMenu <> nil) and (FEditedMenu is TMainMenu) then begin
|
if (FEditedMenu <> nil) and (FEditedMenu is TMainMenu) then begin
|
||||||
PopupAssignmentsCountLabel.Caption:=lisMenuEditorPopupAssignmentsNA;
|
PopupAssignmentsCountLabel.Caption:=Format(lisMenuEditorPopupAssignmentsS,[lisMenuEditorNA]);
|
||||||
PopupAssignmentsCountLabel.Enabled:=False;
|
PopupAssignmentsCountLabel.Enabled:=False;
|
||||||
FPopupAssignmentsListBox.Visible:=False;
|
FPopupAssignmentsListBox.Visible:=False;
|
||||||
end;
|
end;
|
||||||
@ -334,24 +335,29 @@ begin
|
|||||||
end;
|
end;
|
||||||
|
|
||||||
function TMenuDesigner.GetSelectedMenuComponent(const aSelection: TPersistentSelectionList;
|
function TMenuDesigner.GetSelectedMenuComponent(const aSelection: TPersistentSelectionList;
|
||||||
out isTMenu: boolean; out selCount: integer): TPersistent;
|
out isTMenu: boolean; out isTMenuItem: boolean): TPersistent;
|
||||||
begin
|
begin
|
||||||
Result:=nil;
|
if (aSelection.Count = 1) then begin
|
||||||
selCount:=aSelection.Count;
|
if (aSelection.Items[0] is TMenu) then
|
||||||
if (selCount = 1) then
|
begin
|
||||||
begin
|
isTMenu:=True;
|
||||||
if (aSelection.Items[0] is TMenu) then
|
isTMenuItem:=False;
|
||||||
begin
|
Result:=aSelection.Items[0];
|
||||||
isTMenu:=True;
|
end
|
||||||
Result:=aSelection.Items[0];
|
else
|
||||||
end
|
if (aSelection.Items[0] is TMenuItem) then
|
||||||
else
|
begin
|
||||||
if (aSelection.Items[0] is TMenuItem) then
|
isTMenu:=False;
|
||||||
begin
|
isTMenuItem:=True;
|
||||||
isTMenu:=False;
|
Result:=aSelection.Items[0];
|
||||||
Result:=aSelection.Items[0];
|
end
|
||||||
end
|
else begin
|
||||||
|
isTMenu:=False;
|
||||||
|
isTMenuItem:=False;
|
||||||
|
Result:=nil;
|
||||||
end;
|
end;
|
||||||
|
end
|
||||||
|
else Result:=nil;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
function TMenuDesigner.GetPopupAssignmentCount: integer;
|
function TMenuDesigner.GetPopupAssignmentCount: integer;
|
||||||
@ -399,22 +405,22 @@ end;
|
|||||||
|
|
||||||
procedure TMenuDesigner.LoadVariableButtonGlyphs(isInMenubar: boolean);
|
procedure TMenuDesigner.LoadVariableButtonGlyphs(isInMenubar: boolean);
|
||||||
begin
|
begin
|
||||||
case isInMenubar of
|
if isInMenubar then
|
||||||
True: begin
|
begin
|
||||||
MoveItemUpButton.LoadGlyphFromResourceName(HINSTANCE,'arrow_left');
|
MoveItemUpButton.LoadGlyphFromResourceName(HINSTANCE,'arrow_left');
|
||||||
MoveItemDownButton.LoadGlyphFromResourceName(HINSTANCE,'arrow_right');
|
MoveItemDownButton.LoadGlyphFromResourceName(HINSTANCE,'arrow_right');
|
||||||
AddItemAboveButton.LoadGlyphFromResourceName(HINSTANCE,'add_item_left');
|
AddItemAboveButton.LoadGlyphFromResourceName(HINSTANCE,'add_item_left');
|
||||||
AddItemBelowButton.LoadGlyphFromResourceName(HINSTANCE,'add_item_right');
|
AddItemBelowButton.LoadGlyphFromResourceName(HINSTANCE,'add_item_right');
|
||||||
AddSubMenuButton.LoadGlyphFromResourceName(HINSTANCE,'add_submenu_below');
|
AddSubMenuButton.LoadGlyphFromResourceName(HINSTANCE,'add_submenu_below');
|
||||||
end;
|
end else
|
||||||
False: begin
|
begin
|
||||||
MoveItemUpButton.LoadGlyphFromResourceName(HINSTANCE,'arrow_up');
|
MoveItemUpButton.LoadGlyphFromResourceName(HINSTANCE,'arrow_up');
|
||||||
MoveItemDownButton.LoadGlyphFromResourceName(HINSTANCE,'arrow_down');
|
MoveItemDownButton.LoadGlyphFromResourceName(HINSTANCE,'arrow_down');
|
||||||
AddItemAboveButton.LoadGlyphFromResourceName(HINSTANCE,'add_item_above');
|
AddItemAboveButton.LoadGlyphFromResourceName(HINSTANCE,'add_item_above');
|
||||||
AddItemBelowButton.LoadGlyphFromResourceName(HINSTANCE,'add_item_below');
|
AddItemBelowButton.LoadGlyphFromResourceName(HINSTANCE,'add_item_below');
|
||||||
AddSubMenuButton.LoadGlyphFromResourceName(HINSTANCE,'add_submenu_right');
|
AddSubMenuButton.LoadGlyphFromResourceName(HINSTANCE,'add_submenu_right');
|
||||||
end;
|
|
||||||
end;
|
end;
|
||||||
|
UpdateSubmenuGroupBox(nil, nil, False);
|
||||||
FVariableGlyphsInMenuBar:=isInMenubar;
|
FVariableGlyphsInMenuBar:=isInMenubar;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -461,17 +467,18 @@ begin
|
|||||||
if FGUIEnabled then begin
|
if FGUIEnabled then begin
|
||||||
StatisticsGroupBox.Font.Style:=[];
|
StatisticsGroupBox.Font.Style:=[];
|
||||||
StatisticsGroupBox.Caption:=lisMenuEditorNoMenuSelected;
|
StatisticsGroupBox.Caption:=lisMenuEditorNoMenuSelected;
|
||||||
CaptionedItemsCountLabel.Caption:=lisMenuEditorCaptionedItemsNA;
|
CaptionedItemsCountLabel.Caption:=Format(lisMenuEditorCaptionedItemsS,[lisMenuEditorNA]);
|
||||||
ShortcutItemsCountLabel.Caption:=lisMenuEditorShortcutItemsNA;
|
ShortcutItemsCountLabel.Caption:=Format(lisMenuEditorShortcutItemsS,[lisMenuEditorNA]);
|
||||||
IconCountLabel.Caption:=lisMenuEditorItemsWithIconNA;
|
IconCountLabel.Caption:=Format(lisMenuEditorItemsWithIconS, [lisMenuEditorNA]);
|
||||||
DeepestNestingLevelLabel.Caption:=lisMenuEditorDeepestNestedMenuLevelNA;
|
DeepestNestingLevelLabel.Caption:=Format(lisMenuEditorDeepestNestedMenuLevelS, [lisMenuEditorNA]);
|
||||||
PopupAssignmentsCountLabel.Caption:=lisMenuEditorPopupAssignmentsNA;
|
PopupAssignmentsCountLabel.Caption:=Format(lisMenuEditorPopupAssignmentsS,[lisMenuEditorNA]);
|
||||||
StatisticsGroupBox.Enabled:=False;
|
StatisticsGroupBox.Enabled:=False;
|
||||||
|
UpdateSubmenuGroupBox(nil, nil, False);
|
||||||
ButtonsGroupBox.Enabled:=False;
|
ButtonsGroupBox.Enabled:=False;
|
||||||
FPopupAssignmentsListBox.Visible:=False;
|
FPopupAssignmentsListBox.Visible:=False;
|
||||||
FGUIEnabled:=False;
|
FGUIEnabled:=False;
|
||||||
InitializeStatisticVars;
|
InitializeStatisticVars;
|
||||||
Caption:=lisMenuEditorMenuEditorNoMenuIsSelected;
|
Caption:=Format('%s - %s',[lisMenuEditorMenuEditor, lisMenuEditorNoMenuSelected]);
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -482,8 +489,12 @@ var
|
|||||||
begin
|
begin
|
||||||
if (aMenu = nil) then begin
|
if (aMenu = nil) then begin
|
||||||
DisableGUI;
|
DisableGUI;
|
||||||
|
FShadowMenu.SelectedMenuItem:=nil;
|
||||||
|
if Assigned(GlobalDesignHook) then
|
||||||
|
GlobalDesignHook.RemoveAllHandlersForObject(FShadowMenu);
|
||||||
FreeAndNil(FShadowMenu);
|
FreeAndNil(FShadowMenu);
|
||||||
FEditedMenu:=nil;
|
FEditedMenu:=nil;
|
||||||
|
Application.ProcessMessages;
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
begin
|
begin
|
||||||
@ -528,24 +539,24 @@ begin
|
|||||||
if (FCaptionedItemsCount <> captions) then begin
|
if (FCaptionedItemsCount <> captions) then begin
|
||||||
FCaptionedItemsCount:=captions;
|
FCaptionedItemsCount:=captions;
|
||||||
CaptionedItemsCountLabel.Caption:=
|
CaptionedItemsCountLabel.Caption:=
|
||||||
Format(lisMenuEditorCaptionedItemsD, [FCaptionedItemsCount]);
|
Format(lisMenuEditorCaptionedItemsS, [IntToStr(captions)]);
|
||||||
end;
|
end;
|
||||||
if (FShortcutMenuItemsCount <> shortcuts) then begin
|
if (FShortcutMenuItemsCount <> shortcuts) then begin
|
||||||
FShortcutMenuItemsCount:=shortcuts;
|
FShortcutMenuItemsCount:=shortcuts;
|
||||||
ShortcutItemsCountLabel.Caption:=
|
ShortcutItemsCountLabel.Caption:=
|
||||||
Format(lisMenuEditorShortcutItemsD, [FShortcutMenuItemsCount]);
|
Format(lisMenuEditorShortcutItemsS, [IntToStr(FShortcutMenuItemsCount)]);
|
||||||
end;
|
end;
|
||||||
if (FIconsCount <> icons) then begin
|
if (FIconsCount <> icons) then begin
|
||||||
FIconsCount:=icons;
|
FIconsCount:=icons;
|
||||||
IconCountLabel.Caption:=
|
IconCountLabel.Caption:=
|
||||||
Format(lisMenuEditorItemsWithIconD, [FIconsCount]);
|
Format(lisMenuEditorItemsWithIconS, [IntToStr(FIconsCount)]);
|
||||||
end;
|
end;
|
||||||
if (FAcceleratorMenuItemsCount <> accels) then
|
if (FAcceleratorMenuItemsCount <> accels) then
|
||||||
FAcceleratorMenuItemsCount:=accels;
|
FAcceleratorMenuItemsCount:=accels;
|
||||||
tmp:=GetNestingLevelDepth(FEditedMenu);
|
tmp:=GetNestingLevelDepth(FEditedMenu);
|
||||||
if (FDeepestNestingLevel <> tmp) then begin
|
if (FDeepestNestingLevel <> tmp) then begin
|
||||||
DeepestNestingLevelLabel.Caption:=
|
DeepestNestingLevelLabel.Caption:=
|
||||||
Format(lisMenuEditorDeepestNestedMenuLevelD, [tmp]);
|
Format(lisMenuEditorDeepestNestedMenuLevelS, [IntToStr(tmp)]);
|
||||||
FDeepestNestingLevel:=tmp;
|
FDeepestNestingLevel:=tmp;
|
||||||
end;
|
end;
|
||||||
StatisticsGroupBox.Invalidate;
|
StatisticsGroupBox.Invalidate;
|
||||||
@ -587,6 +598,47 @@ begin
|
|||||||
Result := FUpdateCount > 0;
|
Result := FUpdateCount > 0;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
procedure TMenuDesigner.UpdateSubmenuGroupBox(selMI: TMenuItem;
|
||||||
|
selBox: TShadowBox; boxIsRoot: boolean);
|
||||||
|
begin
|
||||||
|
if SubmenuGroupBox = nil then
|
||||||
|
Exit;
|
||||||
|
|
||||||
|
if (selMI = nil) then begin
|
||||||
|
SubmenuGroupBox.Caption:=lisMenuEditorNoMenuSelected;
|
||||||
|
RadioGroupsLabel.Caption:='';
|
||||||
|
GroupIndexLabel.Caption:='';
|
||||||
|
end
|
||||||
|
else begin
|
||||||
|
selBox.LastRIValue:=selMI.RadioItem;
|
||||||
|
if boxIsRoot then
|
||||||
|
SubmenuGroupBox.Caption:=Format('%s',[lisMenuEditorRootMenu])
|
||||||
|
else SubmenuGroupBox.Caption:=Format('%s %s',[selBox.ParentMenuItem.Name, lisMenuEditorSubmenu]);
|
||||||
|
|
||||||
|
if selMI.RadioItem then begin
|
||||||
|
GroupIndexLabel.Caption:=Format(lisMenuEditorSGroupIndexD,
|
||||||
|
[selMI.Name, selMI.GroupIndex]);
|
||||||
|
GroupIndexLabel.Enabled:=True;
|
||||||
|
end
|
||||||
|
else begin
|
||||||
|
GroupIndexLabel.Caption:=Format(lisMenuEditorSIsNotARadioitem,
|
||||||
|
[selMI.Name]);
|
||||||
|
GroupIndexLabel.Enabled:=False;
|
||||||
|
end;
|
||||||
|
|
||||||
|
if selBox.HasRadioItems then begin
|
||||||
|
RadioGroupsLabel.Caption:=Format(lisMenuEditorGroupIndexValueSS,
|
||||||
|
[selBox.RadioGroupsString]);
|
||||||
|
RadioGroupsLabel.Enabled:=True;
|
||||||
|
end
|
||||||
|
else begin
|
||||||
|
RadioGroupsLabel.Caption:=lisMenuEditorNoRadioitemsInThisMenu;
|
||||||
|
RadioGroupsLabel.Enabled:=False;
|
||||||
|
RadioGroupsLabel.Invalidate; //for some reason this seems necessary
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
{ TMainMenuComponentEditor}
|
{ TMainMenuComponentEditor}
|
||||||
|
|
||||||
procedure TMainMenuComponentEditor.Edit;
|
procedure TMainMenuComponentEditor.Edit;
|
||||||
@ -602,7 +654,7 @@ end;
|
|||||||
function TMainMenuComponentEditor.GetVerb(Index: Integer): string;
|
function TMainMenuComponentEditor.GetVerb(Index: Integer): string;
|
||||||
begin
|
begin
|
||||||
case Index of
|
case Index of
|
||||||
0: Result:=lisMenuEditor;
|
0: Result:=lisMenuEditorMenuEditor + ' ...';
|
||||||
else Result:='';
|
else Result:='';
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
File diff suppressed because it is too large
Load Diff
@ -52,6 +52,10 @@ resourcestring
|
|||||||
lisChange = 'Change';
|
lisChange = 'Change';
|
||||||
lisDelete = 'Delete';
|
lisDelete = 'Delete';
|
||||||
lisBtnDelete = '&Delete';
|
lisBtnDelete = '&Delete';
|
||||||
|
lisMenuEditorGroupIndexValueSS = 'GroupIndex value(s): %s';
|
||||||
|
lisMenuEditorNoRadioitemsInThisMenu = 'no radioitems in this menu';
|
||||||
|
lisMenuEditorSGroupIndexD = '%s.GroupIndex: %d';
|
||||||
|
lisMenuEditorSIsNotARadioitem = '%s is not a radioitem';
|
||||||
lisRemove = 'Remove';
|
lisRemove = 'Remove';
|
||||||
lisBtnRemove = '&Remove';
|
lisBtnRemove = '&Remove';
|
||||||
lisRename = 'Rename';
|
lisRename = 'Rename';
|
||||||
@ -4660,7 +4664,6 @@ resourcestring
|
|||||||
lisSuccessfullyExported = 'Successfully exported to "%s".';
|
lisSuccessfullyExported = 'Successfully exported to "%s".';
|
||||||
|
|
||||||
// menu editor
|
// menu editor
|
||||||
lisMenuEditor = 'Menu Editor ...';
|
|
||||||
lisMenuEditorMenuEditor = 'Menu Editor';
|
lisMenuEditorMenuEditor = 'Menu Editor';
|
||||||
lisMenuEditorAcceleratorKeySNeedsChanging = 'Accelerator(&&) key "%s" needs changing ';
|
lisMenuEditorAcceleratorKeySNeedsChanging = 'Accelerator(&&) key "%s" needs changing ';
|
||||||
lisMenuEditorAComponentWithNameExists = 'A component with the name %s already exists';
|
lisMenuEditorAComponentWithNameExists = 'A component with the name %s already exists';
|
||||||
@ -4668,17 +4671,11 @@ resourcestring
|
|||||||
lisMenuEditorAddANewItemAfterSelectedItem = 'Add a new item after selected item';
|
lisMenuEditorAddANewItemAfterSelectedItem = 'Add a new item after selected item';
|
||||||
lisMenuEditorAddANewItemBeforeSelectedItem = 'Add a new item before selected item';
|
lisMenuEditorAddANewItemBeforeSelectedItem = 'Add a new item before selected item';
|
||||||
lisMenuEditorAddANewItemBelowSelectedItem = 'Add a new item below selected item';
|
lisMenuEditorAddANewItemBelowSelectedItem = 'Add a new item below selected item';
|
||||||
lisMenuEditorAddAnIconFromTheMenuSImageList = 'Add an icon from the menu''s ImageList';
|
|
||||||
lisMenuEditorAddAnOnClickEventToSelectedItem = 'Add an OnClick event to selected item';
|
|
||||||
lisMenuEditorAddASeparatorAfterSelectedItem = 'Add a separator after selected item';
|
|
||||||
lisMenuEditorAddASeparatorBeforeSelectedItem = 'Add a separator before selected item';
|
|
||||||
lisMenuEditorAddASubmenuAtTheRightOfSelectedItem = 'Add a submenu at the right of selected item';
|
lisMenuEditorAddASubmenuAtTheRightOfSelectedItem = 'Add a submenu at the right of selected item';
|
||||||
lisMenuEditorAddASubmenuBelowSelectedItem = 'Add a submenu below selected item';
|
lisMenuEditorAddASubmenuBelowSelectedItem = 'Add a submenu below selected item';
|
||||||
lisMenuEditorAddFromTemplate = '&Add from template ...';
|
lisMenuEditorAddFromTemplate = '&Add from template ...';
|
||||||
lisMenuEditorAddIconFromS = 'Add icon from %s';
|
lisMenuEditorAddIconFromS = 'Add icon from %s';
|
||||||
lisMenuEditorAddIconFromS2 = 'Add icon from %s ...';
|
|
||||||
lisMenuEditorAddImagelistIcon = 'Add imagelist &icon';
|
lisMenuEditorAddImagelistIcon = 'Add imagelist &icon';
|
||||||
lisMenuEditorAddImagelistIcon2 = 'Add imagelist icon';
|
|
||||||
lisMenuEditorAddNewItemAbove = '&Add new item above';
|
lisMenuEditorAddNewItemAbove = '&Add new item above';
|
||||||
lisMenuEditorAddNeWItemAfter = 'Add ne&w item after';
|
lisMenuEditorAddNeWItemAfter = 'Add ne&w item after';
|
||||||
lisMenuEditorAddNewItemBefore = '&Add new item before';
|
lisMenuEditorAddNewItemBefore = '&Add new item before';
|
||||||
@ -4701,9 +4698,7 @@ resourcestring
|
|||||||
lisMenuEditorBasicWindowMenuTemplate = '&Window,Basic window menu,' +
|
lisMenuEditorBasicWindowMenuTemplate = '&Window,Basic window menu,' +
|
||||||
'&New Window,,&Tile,,&Cascade,,&Arrange all,,-,,&Hide,,&Show,,';
|
'&New Window,,&Tile,,&Cascade,,&Arrange all,,-,,&Hide,,&Show,,';
|
||||||
lisMenuEditorCaption = 'Caption';
|
lisMenuEditorCaption = 'Caption';
|
||||||
lisMenuEditorCaptionCannotBeBlank = 'Caption cannot be blank';
|
lisMenuEditorCaptionedItemsS = 'Captioned items: %s';
|
||||||
lisMenuEditorCaptionedItemsD = 'Captioned items: %d';
|
|
||||||
lisMenuEditorCaptionedItemsNA = 'Captioned items: n/a';
|
|
||||||
lisMenuEditorCaptionShouldNotBeBlank = 'Caption should not be blank';
|
lisMenuEditorCaptionShouldNotBeBlank = 'Caption should not be blank';
|
||||||
lisMenuEditorChangeConflictingAcceleratorS = 'Change conflicting accelerator "%s"';
|
lisMenuEditorChangeConflictingAcceleratorS = 'Change conflicting accelerator "%s"';
|
||||||
lisMenuEditorChangeImagelistIcon = 'Change imagelist &icon';
|
lisMenuEditorChangeImagelistIcon = 'Change imagelist &icon';
|
||||||
@ -4711,42 +4706,28 @@ resourcestring
|
|||||||
lisMenuEditorChangeShortcutConflictS = 'Change shortcut conflict "%s"';
|
lisMenuEditorChangeShortcutConflictS = 'Change shortcut conflict "%s"';
|
||||||
lisMenuEditorChangeTheShortCutForS = 'Change the shortCut for %s';
|
lisMenuEditorChangeTheShortCutForS = 'Change the shortCut for %s';
|
||||||
lisMenuEditorChangeTheShortCutKey2ForS = 'Change the shortCutKey2 for %s';
|
lisMenuEditorChangeTheShortCutKey2ForS = 'Change the shortCutKey2 for %s';
|
||||||
lisMenuEditorCheckMarkAndRadioItemProps = '%s "%s" - Check mark and RadioItem properties';
|
lisMenuEditorChooseTemplateTo = 'Choose template to';
|
||||||
lisMenuEditorCheckmarkRadioitem = 'Checkmark && &radioitem ...';
|
|
||||||
lisMenuEditorChooseTemplateToDelete = 'Choose template to delete';
|
|
||||||
lisMenuEditorChooseTemplateToInsert = 'Choose template to insert';
|
|
||||||
lisMenuEditorClickANonGreyedItemToEditItsShortcut = 'Click a non-greyed item '
|
lisMenuEditorClickANonGreyedItemToEditItsShortcut = 'Click a non-greyed item '
|
||||||
+'to edit its shortcut';
|
+'to edit its shortcut';
|
||||||
lisMenuEditorClose = '&Close';
|
|
||||||
lisMenuEditorComponentIsUnexpectedKind = 'Component is unexpected kind';
|
lisMenuEditorComponentIsUnexpectedKind = 'Component is unexpected kind';
|
||||||
lisMenuEditorComponentIsUnnamed = 'component is unnamed';
|
lisMenuEditorComponentIsUnnamed = 'component is unnamed';
|
||||||
lisMenuEditorConflictResolutionComplete = '<conflict resolution complete>';
|
lisMenuEditorConflictResolutionComplete = '<conflict resolution complete>';
|
||||||
lisMenuEditorDDItems = '%d (%d items)';
|
lisMenuEditorDDItems = '%d (%d items)';
|
||||||
lisMenuEditorDeepestNestedMenuLevelD = 'Deepest nested menu level: %d';
|
|
||||||
lisMenuEditorDeepestNestedMenuLevelNA = 'Deepest nested menu level: n/a';
|
|
||||||
lisMenuEditorDeleteItem = '&Delete item';
|
lisMenuEditorDeleteItem = '&Delete item';
|
||||||
|
lisMenuEditorDeepestNestedMenuLevelS = 'Deepest nested menu level: %s';
|
||||||
lisMenuEditorDeleteMenuTemplate = '&Delete menu template ...';
|
lisMenuEditorDeleteMenuTemplate = '&Delete menu template ...';
|
||||||
lisMenuEditorDeletePreviouslySavedMenuTemplate = 'Delete previously saved menu template';
|
|
||||||
lisMenuEditorDeleteSavedMenuTemplate = 'Delete saved menu template';
|
lisMenuEditorDeleteSavedMenuTemplate = 'Delete saved menu template';
|
||||||
lisMenuEditorDeleteSelectedMenuTemplate = 'Delete selected menu template';
|
lisMenuEditorDeleteSelectedMenuTemplate = 'Delete selected menu template';
|
||||||
lisMenuEditorDeleteTheSelecteditem = 'Delete the selected item';
|
|
||||||
lisMenuEditorDeleteThisItemAndItsSubitems = 'Delete this item and its subitems?';
|
lisMenuEditorDeleteThisItemAndItsSubitems = 'Delete this item and its subitems?';
|
||||||
lisMenuEditorDeletingItemWithASubmenu = 'Deleting item with a submenu';
|
lisMenuEditorDeletingItemWithASubmenu = 'Deleting item with a submenu';
|
||||||
lisMenuEditorDeletingThisItemWillDeleteAllSubitemsToo = 'Deleting this item '
|
lisMenuEditorDeletingThisItemWillDeleteAllSubitemsToo = 'Deleting this item '
|
||||||
+'will delete all subitems too.';
|
+'will delete all subitems too.';
|
||||||
lisMenuEditorDiscoverAndResolveAnyConflictingShortcuts = 'Discover and '
|
|
||||||
+'resolve any conflicting shortcuts';
|
|
||||||
lisMenuEditorDisplayAListOfBothShortcutsAndAcceleratorKeys = 'Display a list '
|
|
||||||
+'of both shortcuts and accelerator keys';
|
|
||||||
lisMenuEditorDisplayAListOfMenuitemShortcuts = 'Display a list of menuitem shortcuts';
|
|
||||||
lisMenuEditorDisplayPreviewAsPopupMenu = 'Display preview as &Popup menu';
|
lisMenuEditorDisplayPreviewAsPopupMenu = 'Display preview as &Popup menu';
|
||||||
lisMenuEditorEditCaption = 'Edit &Caption';
|
lisMenuEditorEditCaption = 'Edit &Caption';
|
||||||
lisMenuEditorEditingCaptionOfS = 'Editing Caption of %s';
|
lisMenuEditorEditingCaptionOfS = 'Editing Caption of %s';
|
||||||
lisMenuEditorEditingSForS = 'Editing %s for %s';
|
lisMenuEditorEditingSForS = 'Editing %s for %s';
|
||||||
lisMenuEditorEditingSdotS = 'To resolve conflict edit %s.%s';
|
lisMenuEditorEditingSdotS = 'To resolve conflict edit %s.%s';
|
||||||
lisMenuEditorEditingSSNoMenuItemSelected = 'Editing %s.%s - no menu item selected';
|
lisMenuEditorEditingSSNoMenuItemSelected = 'Editing %s.%s - no menuitem selected';
|
||||||
lisMenuEditorEditingSSNoMenuitemSelected2 = 'Editing %s.%s - no menuitem selected';
|
|
||||||
lisMenuEditorEditTheSelectedItemSCaption = 'Edit the selected item''s Caption';
|
|
||||||
lisMenuEditorEnterAMenuDescription = 'Enter a menu &Description:';
|
lisMenuEditorEnterAMenuDescription = 'Enter a menu &Description:';
|
||||||
lisMenuEditorEnterANewShortCutForS = 'Enter a new ShortCut for %s';
|
lisMenuEditorEnterANewShortCutForS = 'Enter a new ShortCut for %s';
|
||||||
lisMenuEditorEnterANewShortCutKey2ForS = 'Enter a new ShortCutKey2 for %s';
|
lisMenuEditorEnterANewShortCutKey2ForS = 'Enter a new ShortCutKey2 for %s';
|
||||||
@ -4761,12 +4742,9 @@ resourcestring
|
|||||||
lisMenuEditorInsertMenuTemplateInto = 'Insert menu template into ';
|
lisMenuEditorInsertMenuTemplateInto = 'Insert menu template into ';
|
||||||
lisMenuEditorInsertSelectedMenuTemplate = 'Insert selected menu template';
|
lisMenuEditorInsertSelectedMenuTemplate = 'Insert selected menu template';
|
||||||
lisMenuEditorIsNotAssigned = 'is not assigned';
|
lisMenuEditorIsNotAssigned = 'is not assigned';
|
||||||
lisMenuEditorItemsWithIconD = 'Items with icon: %d';
|
lisMenuEditorItemsWithIconS = 'Items with icon: %s';
|
||||||
lisMenuEditorItemsWithIconNA = 'Items with icon: n/a';
|
|
||||||
lisMenuEditorListShortcutsAndAccelerators = 'List shortcuts and &accelerators for %s ...';
|
lisMenuEditorListShortcutsAndAccelerators = 'List shortcuts and &accelerators for %s ...';
|
||||||
lisMenuEditorListShortcutsForS = 'List shortcuts for %s ...';
|
lisMenuEditorListShortcutsForS = 'List shortcuts for %s ...';
|
||||||
lisMenuEditorManageCheckMarksAndRadiogroups = 'Manage check marks and radiogroups';
|
|
||||||
lisMenuEditorMenuEditorNoMenuIsSelected = 'Menu Editor - no menu is selected';
|
|
||||||
lisMenuEditorMenuitemShortcutConflictsIn = 'Menuitem shortcut conflicts in ';
|
lisMenuEditorMenuitemShortcutConflictsIn = 'Menuitem shortcut conflicts in ';
|
||||||
lisMenuEditorMoveDown = 'Move Down (or right)';
|
lisMenuEditorMoveDown = 'Move Down (or right)';
|
||||||
lisMenuEditorMoVeItemDown = 'Mo&ve item down';
|
lisMenuEditorMoVeItemDown = 'Mo&ve item down';
|
||||||
@ -4779,41 +4757,33 @@ resourcestring
|
|||||||
lisMenuEditorMoveSelectedItemUp = 'Move selected item up';
|
lisMenuEditorMoveSelectedItemUp = 'Move selected item up';
|
||||||
lisMenuEditorMoveSeparateDeleteInsertItems = 'Move Divide Delete Add items';
|
lisMenuEditorMoveSeparateDeleteInsertItems = 'Move Divide Delete Add items';
|
||||||
lisMenuEditorMoveUp = 'Move Up (or left)';
|
lisMenuEditorMoveUp = 'Move Up (or left)';
|
||||||
|
lisMenuEditorNA = 'n/a';
|
||||||
lisMenuEditorNoMenuSelected = '(no menu selected)';
|
lisMenuEditorNoMenuSelected = '(no menu selected)';
|
||||||
lisMenuEditorNone = '<none>';
|
lisMenuEditorNone = '<none>';
|
||||||
lisMenuEditorNoneNone = '<none>,<none>';
|
lisMenuEditorNoneNone = '<none>,<none>';
|
||||||
lisMenuEditorNoShortcutConflictsFound = '<no shortcut conflicts found>';
|
lisMenuEditorNoShortcutConflictsS = '<no shortcut conflicts%s';
|
||||||
lisMenuEditorNoShortcutConflictsRemain = '<no shortcut conflicts remain>';
|
|
||||||
lisMenuEditorNoShortcutConflictsToResolve = '<no shortcut conflicts to resolve>';
|
|
||||||
lisMenuEditorNoteGroupIndexDHasOnlyOneRadioItemItIsNotYetAGroup = ' Note: '
|
|
||||||
+'GroupIndex %d has only one RadioItem (it is not yet a group)';
|
|
||||||
lisMenuEditorNoUserSavedTemplates = 'No user-saved templates';
|
lisMenuEditorNoUserSavedTemplates = 'No user-saved templates';
|
||||||
lisMenuEditorOnlyStandardDefaultTemplatesAreAvailable = 'Only standard '
|
lisMenuEditorOnlyStandardDefaultTemplatesAreAvailable = 'Only standard '
|
||||||
+'default templates are available.';
|
+'default templates are available.';
|
||||||
lisMenuEditorOrClickHeaderToSortByThatColumn = ' or click header to sort by that column';
|
lisMenuEditorOrClickHeaderToSortByThatColumn = ' or click header to sort by that column';
|
||||||
lisMenuEditorPickAnIconFromS = 'Pick an icon from %s';
|
lisMenuEditorPickAnIconFromS = 'Pick an icon from %s';
|
||||||
lisMenuEditorPopupAssignmentsD = 'Popup assignments: %d';
|
lisMenuEditorPopupAssignmentsS = 'Popup assignments: %s';
|
||||||
lisMenuEditorPopupAssignmentsNA = 'Popup assignments n/a';
|
lisMenuEditorRemain = ' remain>';
|
||||||
lisMenuEditorRemainingConflicts0 = 'Remaining conflicts: 0';
|
lisMenuEditorRemainingConflictsS = 'Remaining conflicts: %s';
|
||||||
lisMenuEditorRemainingConflictsD = 'Remaining conflicts: %d';
|
|
||||||
lisMenuEditorRemoveAllSeparators = '&Remove all separators';
|
lisMenuEditorRemoveAllSeparators = '&Remove all separators';
|
||||||
lisMenuEditorRemoveEverySeparatorinThisSubmenu = 'Remove every separator in this submenu';
|
lisMenuEditorResolvedConflictsS = 'Resolved conflicts: %s';
|
||||||
lisMenuEditorResolvedConflicts0 = 'Resolved conflicts: 0';
|
lisMenuEditorShortcutItemsS = 'Shortcut items: %s';
|
||||||
lisMenuEditorResolvedConflictsD = 'Resolved conflicts: %d';
|
|
||||||
lisMenuEditorResolveSelectedConflict = 'Resolve selected conflict';
|
lisMenuEditorResolveSelectedConflict = 'Resolve selected conflict';
|
||||||
lisMenuEditorResolveShortcutConflicts = '&Resolve shortcut conflicts ...';
|
lisMenuEditorResolveShortcutConflicts = '&Resolve shortcut conflicts ...';
|
||||||
|
lisMenuEditorRootMenu = 'root menu';
|
||||||
lisMenuEditorSavedTemplates = 'Saved templates';
|
lisMenuEditorSavedTemplates = 'Saved templates';
|
||||||
lisMenuEditorSaveMenuAsATemplate = '&Save menu as a template ...';
|
lisMenuEditorSaveMenuAsATemplate = '&Save menu as a template ...';
|
||||||
lisMenuEditorSaveMenuAsTemplate = 'Save menu as template';
|
lisMenuEditorSaveMenuAsTemplate = 'Save menu as template';
|
||||||
lisMenuEditorSaveMenuAsTemplateForFutureUse = 'Save menu as template for future use';
|
lisMenuEditorSaveMenuAsTemplateForFutureUse = 'Save menu as template for future use';
|
||||||
lisMenuEditorSaveMenuShownAsANewTemplate = 'Save menu shown as a new template';
|
lisMenuEditorSaveMenuShownAsANewTemplate = 'Save menu shown as a new template';
|
||||||
lisMenuEditorEditCheckmarkProps = 'Edit Check mark and RadioItem properties';
|
|
||||||
lisMenuEditorSaveThisMenuLayoutForFutureReuse = 'Save this menu layout for future reuse';
|
|
||||||
lisMenuEditorSConflictsWithS = '%s conflicts with %s';
|
lisMenuEditorSConflictsWithS = '%s conflicts with %s';
|
||||||
lisMenuEditorSeParators = 'Se¶tors';
|
lisMenuEditorSeParators = 'Se¶tors';
|
||||||
lisMenuEditorShortcutConflictsFoundInitiallyD = 'Shortcut conflicts found initially: %d';
|
lisMenuEditorShortcutConflictsFoundInitiallyD = 'Shortcut conflicts found initially: %d';
|
||||||
lisMenuEditorShortcutItemsD = 'Shortcut items: %d';
|
|
||||||
lisMenuEditorShortcutItemsNA = 'Shortcut items: n/a';
|
|
||||||
lisMenuEditorShortcutNotYetChanged = 'Shortcut not yet changed';
|
lisMenuEditorShortcutNotYetChanged = 'Shortcut not yet changed';
|
||||||
lisMenuEditorShortcutPropertyWithShortcut = 'Shortcut,Property with shortcut';
|
lisMenuEditorShortcutPropertyWithShortcut = 'Shortcut,Property with shortcut';
|
||||||
lisMenuEditorShortcutPropertyWithShortcutAccelerator = 'Shortcut,Property '
|
lisMenuEditorShortcutPropertyWithShortcutAccelerator = 'Shortcut,Property '
|
||||||
@ -4834,19 +4804,19 @@ resourcestring
|
|||||||
lisMenuEditorSomeWidgetsetsDoNotAllowSeparatorsInTheMainMenubar = 'Some '
|
lisMenuEditorSomeWidgetsetsDoNotAllowSeparatorsInTheMainMenubar = 'Some '
|
||||||
+'widgetsets do not allow separators in the main menubar';
|
+'widgetsets do not allow separators in the main menubar';
|
||||||
lisMenuEditorSShortcuts = '%s: Shortcuts';
|
lisMenuEditorSShortcuts = '%s: Shortcuts';
|
||||||
lisMenuEditorSShortcutsAcceleratorKeys = '%s: Shortcuts & accelerator keys';
|
|
||||||
lisMenuEditorSShortcutsAndAcceleratorKeys = '%s: Shortcuts and accelerator keys';
|
lisMenuEditorSShortcutsAndAcceleratorKeys = '%s: Shortcuts and accelerator keys';
|
||||||
lisMenuEditorSShortcutSummary = '%s: Shortcut summary';
|
lisMenuEditorSShortcutSummary = '%s: Shortcut summary';
|
||||||
lisMenuEditorSSSOnClickS = '%s.%s.%s - OnClick: %s';
|
lisMenuEditorSSSOnClickS = '%s.%s.%s - OnClick: %s';
|
||||||
lisMenuEditorStandardTemplates = 'Standard templates';
|
lisMenuEditorStandardTemplates = 'Standard templates';
|
||||||
|
lisMenuEditorMenuItem = 'menu item';
|
||||||
|
lisMenuEditorSubmenu = 'submenu';
|
||||||
lisMenuEditorTemplateDescription = 'Template description:';
|
lisMenuEditorTemplateDescription = 'Template description:';
|
||||||
lisMenuEditorTemplates = '&Templates';
|
lisMenuEditorTemplates = '&Templates';
|
||||||
lisMenuEditorTemplateSaved = 'Template saved';
|
lisMenuEditorTemplateSaved = 'Template saved';
|
||||||
lisMenuEditorThereAreNoUserSavedMenuTemplates = 'There are no user-saved menu templates.';
|
lisMenuEditorThereAreNoUserSavedMenuTemplates = 'There are no user-saved menu templates.';
|
||||||
|
lisMenuEditorToResolve = ' to resolve>';
|
||||||
lisMenuEditorTSCListGetScanListCompNameInvalidIndexDForFScanLis = 'TSCList.'
|
lisMenuEditorTSCListGetScanListCompNameInvalidIndexDForFScanLis = 'TSCList.'
|
||||||
+'GetScanListCompName: invalid index %d for FScanList';
|
+'GetScanListCompName: invalid index %d for FScanList';
|
||||||
lisMenuEditorUseAMenuTemplateToConstructMenuItemsHere = 'Use a menu template '
|
|
||||||
+'to construct menu items here';
|
|
||||||
lisMenuEditorYouHaveToChangeTheShortcutFromSStoAvoidAConflict = 'You have to'
|
lisMenuEditorYouHaveToChangeTheShortcutFromSStoAvoidAConflict = 'You have to'
|
||||||
+' change the shortcut from %s%sto avoid a conflict';
|
+' change the shortcut from %s%sto avoid a conflict';
|
||||||
lisMenuEditorYouMustEnterTextForTheCaption = 'You must enter text for the Caption';
|
lisMenuEditorYouMustEnterTextForTheCaption = 'You must enter text for the Caption';
|
||||||
|
Loading…
Reference in New Issue
Block a user