From c280226e4d1877b6cf042290ea2280619c5d3f3d Mon Sep 17 00:00:00 2001 From: Timothy Warren Date: Wed, 13 Oct 2021 14:35:12 -0400 Subject: [PATCH] Add Dialogs and Misc tabs to Component Browser --- compbrowser/comp_browser_main.pas | 62 +++++++++++++++++++++++++++++-- compbrowser/compbrowser.lpi | 14 +++++-- compbrowser/compbrowser.lpr | 2 +- 3 files changed, 70 insertions(+), 8 deletions(-) diff --git a/compbrowser/comp_browser_main.pas b/compbrowser/comp_browser_main.pas index 1b08956..de95550 100644 --- a/compbrowser/comp_browser_main.pas +++ b/compbrowser/comp_browser_main.pas @@ -8,10 +8,19 @@ uses Classes, SysUtils, Forms, Controls, Graphics, Dialogs, ComCtrls, Menus, Buttons, StdCtrls, ExtCtrls, ActnList, MaskEdit, grids, CheckLst, PairSplitter, ColorBox, ValEdit, SynHighlighterPosition, strutils, SynEdit, DateTimePicker, - PopupNotifier, typinfo; + PopupNotifier, ExtDlgs, ComboEx, ShellCtrls, PrintersDlgs, Spin, EditBtn, + FileCtrl, Arrow, XMLPropStorage, IniPropStorage, JsonPropStorage, + IDEWindowIntf, ButtonPanel, typinfo; type - TPalettePage = (ppStandard, ppAdditional, ppCommonControls, ppOtherPagesNotListedHere); + TPalettePage = ( + ppStandard, + ppAdditional, + ppCommonControls, + ppDialogs, + ppMisc, + ppOtherPagesNotListedHere + ); { TForm1 } TForm1 = class(TForm) @@ -39,7 +48,7 @@ type const MaxComponentsOnAPage = 21; // AdditionalPage PageNames : array[TPalettePage] of shortstring = - ('Standard', 'Additional', 'Common Controls', 'Other unlisted pages'); + ('Standard', 'Additional', 'Common Controls', 'Dialogs', 'Misc', 'Other unlisted pages'); var Form1: TForm1; @@ -320,6 +329,7 @@ begin 18: result := TActionList; else result := nil; end; + ppAdditional: case anIndex of 1: result := TBitBtn; 2: result := TSpeedbutton; @@ -344,6 +354,7 @@ begin 21: result := TValueListEditor; else result := nil; end; + ppCommonControls: case anIndex of 1: result := TTrackBar; 2: result := TProgressBar; @@ -361,6 +372,51 @@ begin 14: result := TDateTimePicker; else result := nil; end; + + ppDialogs: case anIndex of + 1: result := TOpenDialog; + 2: result := TSaveDialog; + 3: result := TSelectDirectoryDialog; + 4: result := TColorDialog; + 5: result := TFontDialog; + 6: result := TFindDialog; + 7: result := TReplaceDialog; + 8: result := TTaskDialog; + 9: result := TOpenPictureDialog; + 10: result := TSavePictureDialog; + 11: result := TCalendarDialog; + 12: result := TCalculatorDialog; + 13: result := TPrinterSetupDialog; + 14: result := TPrintDialog; + 15: result := TPageSetupDialog; + else result := nil; + end; + + ppMisc: case anIndex of + 1: result := TColorButton; + 2: result := TSpinEdit; + 3: result := TFloatSpinEdit; + 4: result := TArrow; + 5: result := TEditButton; + 6: result := TFileNameEdit; + 7: result := TDirectoryEdit; + 8: result := TDateEdit; + 9: result := TTimeEdit; + 10: result := TCalcEdit; + 11: result := TFileListBox; + 12: result := TFilterComboBox; + 13: result := TComboBoxEx; + 14: result := TCheckComboBox; + 15: result := TButtonPanel; + 16: result := TShellTreeView; + 17: result := TShellListView; + 18: result := TXMLPropStorage; + 19: result := TIniPropStorage; + 20: result := TJsonPropStorage; + 21: result := TIDEDialogLayoutStorage; + else result := nil; + end; + else result := nil; end; end; diff --git a/compbrowser/compbrowser.lpi b/compbrowser/compbrowser.lpi index d5d077d..07c5cfc 100644 --- a/compbrowser/compbrowser.lpi +++ b/compbrowser/compbrowser.lpi @@ -25,16 +25,22 @@ - + - + - + - + + + + + + + diff --git a/compbrowser/compbrowser.lpr b/compbrowser/compbrowser.lpr index c882884..deac08e 100644 --- a/compbrowser/compbrowser.lpr +++ b/compbrowser/compbrowser.lpr @@ -7,7 +7,7 @@ uses cthreads, {$ENDIF}{$ENDIF} Interfaces, // this includes the LCL widgetset - Forms, datetimectrls, comp_browser_main + Forms, datetimectrls, printer4lazarus, comp_browser_main { you can add units after this }; {$R *.res}