1 {
2  *****************************************************************************
3  *                               WSFactory.pas                               *
4  *                               -------------                               *
5  *                                                                           *
6  *                                                                           *
7  *****************************************************************************
8 
9  *****************************************************************************
10   This file is part of the Lazarus Component Library (LCL)
11 
12   See the file COPYING.modifiedLGPL.txt, included in this distribution,
13   for details about the license.
14  *****************************************************************************
15 }
16 unit WSFactory;
17 
18 {$mode objfpc}{$H+}
19 {$I lcl_defines.inc}
20 
21 interface
22 
23 { These functions are implemented by the LCL backends.
24   If you get a linker error for one of these functions you probably forgot
25   to add the unit "interfaces" to your program.
26   The unit interfaces must be added as one of the first units of the main program.
27 
28   Example for a linker error:
29     /path/to/lazarus/lcl/units/x86_64-linux/wsimglist.o: In function `RegisterCustomImageListResolution':
30     /path/to/lazarus/lcl//widgetset/wsimglist.pp:266: undefined reference to `WSRegisterCustomImageListResolution'
31 }
32 
33 // imglist
WSRegisterCustomImageListResolutionnull34 function WSRegisterCustomImageListResolution: Boolean; external name 'WSRegisterCustomImageListResolution';
35 // controls
WSRegisterDragImageListResolutionnull36 function WSRegisterDragImageListResolution: Boolean;   external name 'WSRegisterDragImageListResolution';
WSRegisterLazAccessibleObjectnull37 function WSRegisterLazAccessibleObject: Boolean; external name 'WSRegisterLazAccessibleObject';
WSRegisterControlnull38 function WSRegisterControl: Boolean;         external name 'WSRegisterControl';
WSRegisterWinControlnull39 function WSRegisterWinControl: Boolean;      external name 'WSRegisterWinControl';
WSRegisterGraphicControlnull40 function WSRegisterGraphicControl: Boolean;  external name 'WSRegisterGraphicControl';
WSRegisterCustomControlnull41 function WSRegisterCustomControl: Boolean;   external name 'WSRegisterCustomControl';
42 // comctrls
WSRegisterStatusBarnull43 function WSRegisterStatusBar: Boolean;         external name 'WSRegisterStatusBar';
WSRegisterTabSheetnull44 function WSRegisterTabSheet: Boolean;          external name 'WSRegisterTabSheet';
WSRegisterPageControlnull45 function WSRegisterPageControl: Boolean;       external name 'WSRegisterPageControl';
WSRegisterCustomListViewnull46 function WSRegisterCustomListView: Boolean;    external name 'WSRegisterCustomListView';
WSRegisterCustomProgressBarnull47 function WSRegisterCustomProgressBar: Boolean; external name 'WSRegisterCustomProgressBar';
WSRegisterCustomUpDownnull48 function WSRegisterCustomUpDown: Boolean;      external name 'WSRegisterCustomUpDown';
WSRegisterCustomToolButtonnull49 function WSRegisterCustomToolButton: Boolean;  external name 'WSRegisterCustomToolButton';
WSRegisterToolBarnull50 function WSRegisterToolBar: Boolean;           external name 'WSRegisterToolBar';
WSRegisterCustomTrackBarnull51 function WSRegisterCustomTrackBar: Boolean;    external name 'WSRegisterCustomTrackBar';
WSRegisterCustomTreeViewnull52 function WSRegisterCustomTreeView: Boolean;    external name 'WSRegisterCustomTreeView';
53 // calender
WSRegisterCustomCalendarnull54 function WSRegisterCustomCalendar: Boolean;    external name 'WSRegisterCustomCalendar';
55 // dialogs
WSRegisterCommonDialognull56 function WSRegisterCommonDialog: Boolean;      external name 'WSRegisterCommonDialog';
WSRegisterFileDialognull57 function WSRegisterFileDialog: Boolean;        external name 'WSRegisterFileDialog';
WSRegisterOpenDialognull58 function WSRegisterOpenDialog: Boolean;        external name 'WSRegisterOpenDialog';
WSRegisterSaveDialognull59 function WSRegisterSaveDialog: Boolean;        external name 'WSRegisterSaveDialog';
WSRegisterSelectDirectoryDialognull60 function WSRegisterSelectDirectoryDialog: Boolean; external name 'WSRegisterSelectDirectoryDialog';
WSRegisterColorDialognull61 function WSRegisterColorDialog: Boolean;       external name 'WSRegisterColorDialog';
WSRegisterColorButtonnull62 function WSRegisterColorButton: Boolean;       external name 'WSRegisterColorButton';
WSRegisterFontDialognull63 function WSRegisterFontDialog: Boolean;        external name 'WSRegisterFontDialog';
64 // StdCtrls
WSRegisterCustomScrollBarnull65 function WSRegisterCustomScrollBar: Boolean;   external name 'WSRegisterCustomScrollBar';
WSRegisterCustomGroupBoxnull66 function WSRegisterCustomGroupBox: Boolean;    external name 'WSRegisterCustomGroupBox';
WSRegisterCustomComboBoxnull67 function WSRegisterCustomComboBox: Boolean;    external name 'WSRegisterCustomComboBox';
WSRegisterCustomListBoxnull68 function WSRegisterCustomListBox: Boolean;     external name 'WSRegisterCustomListBox';
WSRegisterCustomEditnull69 function WSRegisterCustomEdit: Boolean;        external name 'WSRegisterCustomEdit';
WSRegisterCustomMemonull70 function WSRegisterCustomMemo: Boolean;        external name 'WSRegisterCustomMemo';
WSRegisterButtonControlnull71 function WSRegisterButtonControl: Boolean;     external name 'WSRegisterButtonControl';
WSRegisterCustomButtonnull72 function WSRegisterCustomButton: Boolean;      external name 'WSRegisterCustomButton';
WSRegisterCustomCheckBoxnull73 function WSRegisterCustomCheckBox: Boolean;    external name 'WSRegisterCustomCheckBox';
WSRegisterToggleBoxnull74 function WSRegisterToggleBox: Boolean;         external name 'WSRegisterToggleBox';
WSRegisterRadioButtonnull75 function WSRegisterRadioButton: Boolean;       external name 'WSRegisterRadioButton';
WSRegisterCustomStaticTextnull76 function WSRegisterCustomStaticText: Boolean;  external name 'WSRegisterCustomStaticText';
WSRegisterCustomLabelnull77 function WSRegisterCustomLabel: Boolean;       external name 'WSRegisterCustomLabel';
78 // extctrls
WSRegisterCustomPagenull79 function WSRegisterCustomPage: Boolean;        external name 'WSRegisterCustomPage';
WSRegisterCustomNotebooknull80 function WSRegisterCustomNotebook: Boolean;    external name 'WSRegisterCustomNotebook';
WSRegisterShapenull81 function WSRegisterShape: Boolean;             external name 'WSRegisterShape';
WSRegisterCustomSplitternull82 function WSRegisterCustomSplitter: Boolean;    external name 'WSRegisterCustomSplitter';
WSRegisterPaintBoxnull83 function WSRegisterPaintBox: Boolean;          external name 'WSRegisterPaintBox';
WSRegisterCustomImagenull84 function WSRegisterCustomImage: Boolean;       external name 'WSRegisterCustomImage';
WSRegisterBevelnull85 function WSRegisterBevel: Boolean;             external name 'WSRegisterBevel';
WSRegisterCustomRadioGroupnull86 function WSRegisterCustomRadioGroup: Boolean;  external name 'WSRegisterCustomRadioGroup';
WSRegisterCustomCheckGroupnull87 function WSRegisterCustomCheckGroup: Boolean;  external name 'WSRegisterCustomCheckGroup';
WSRegisterCustomLabeledEditnull88 function WSRegisterCustomLabeledEdit: Boolean; external name 'WSRegisterCustomLabeledEdit';
WSRegisterCustomPanelnull89 function WSRegisterCustomPanel: Boolean;       external name 'WSRegisterCustomPanel';
WSRegisterCustomTrayIconnull90 function WSRegisterCustomTrayIcon: Boolean;    external name 'WSRegisterCustomTrayIcon';
91 //ExtDlgs
WSRegisterPreviewFileControlnull92 function WSRegisterPreviewFileControl: Boolean; external name 'WSRegisterPreviewFileControl';
WSRegisterPreviewFileDialognull93 function WSRegisterPreviewFileDialog: Boolean; external name 'WSRegisterPreviewFileDialog';
WSRegisterOpenPictureDialognull94 function WSRegisterOpenPictureDialog: Boolean; external name 'WSRegisterOpenPictureDialog';
WSRegisterSavePictureDialognull95 function WSRegisterSavePictureDialog: Boolean; external name 'WSRegisterSavePictureDialog';
WSRegisterCalculatorDialognull96 function WSRegisterCalculatorDialog: Boolean;  external name 'WSRegisterCalculatorDialog';
WSRegisterCalculatorFormnull97 function WSRegisterCalculatorForm: Boolean;    external name 'WSRegisterCalculatorForm';
WSRegisterCalendarDialogFormnull98 //function WSRegisterCalendarDialogForm: Boolean; external name 'WSRegisterCalendarDialogForm';
99 function WSRegisterCalendarDialog: Boolean;    external name 'WSRegisterCalendarDialog';
100 // Buttons
WSRegisterCustomBitBtnnull101 function WSRegisterCustomBitBtn: Boolean;      external name 'WSRegisterCustomBitBtn';
WSRegisterCustomSpeedButtonnull102 function WSRegisterCustomSpeedButton: Boolean; external name 'WSRegisterCustomSpeedButton';
103 // CheckLst
WSRegisterCustomCheckListBoxnull104 function WSRegisterCustomCheckListBox: Boolean; external name 'WSRegisterCustomCheckListBox';
105 // Forms
WSRegisterScrollingWinControlnull106 function WSRegisterScrollingWinControl: Boolean;external name 'WSRegisterScrollingWinControl';
WSRegisterScrollBoxnull107 function WSRegisterScrollBox: Boolean;          external name 'WSRegisterScrollBox';
WSRegisterCustomFramenull108 function WSRegisterCustomFrame: Boolean;        external name 'WSRegisterCustomFrame';
WSRegisterCustomFormnull109 function WSRegisterCustomForm: Boolean;         external name 'WSRegisterCustomForm';
WSRegisterHintWindownull110 function WSRegisterHintWindow: Boolean;         external name 'WSRegisterHintWindow';
111 // Grids
WSRegisterCustomGridnull112 function WSRegisterCustomGrid: Boolean;         external name 'WSRegisterCustomGrid';
113 // Menus
WSRegisterMenuItemnull114 function WSRegisterMenuItem: Boolean;           external name 'WSRegisterMenuItem';
WSRegisterMenunull115 function WSRegisterMenu: Boolean;               external name 'WSRegisterMenu';
WSRegisterMainMenunull116 function WSRegisterMainMenu: Boolean;           external name 'WSRegisterMainMenu';
WSRegisterPopupMenunull117 function WSRegisterPopupMenu: Boolean;          external name 'WSRegisterPopupMenu';
118 // PairSplitter
WSRegisterPairSplitterSidenull119 function WSRegisterPairSplitterSide: Boolean;   external name 'WSRegisterPairSplitterSide';
WSRegisterCustomPairSplitternull120 function WSRegisterCustomPairSplitter: Boolean; external name 'WSRegisterCustomPairSplitter';
121 // Spin
WSRegisterCustomFloatSpinEditnull122 function WSRegisterCustomFloatSpinEdit: Boolean;external name 'WSRegisterCustomFloatSpinEdit';
123 // RubberBand
WSRegisterCustomRubberBandnull124 function WSRegisterCustomRubberBand: Boolean;   external name 'WSRegisterCustomRubberBand';
125 // LazDeviceAPIs
WSRegisterLazDeviceAPIsnull126 function WSRegisterLazDeviceAPIs: Boolean;   external name 'WSRegisterLazDeviceAPIs';
127 
128 implementation
129 
130 end.
131 
132