1 unit CustomDrawnWSFactory;
2 
3 {$mode objfpc}{$H+}
4 
5 interface
6 
7 uses
8   Classes, Controls, ComCtrls, ImgList, Calendar, StdCtrls, Spin,
9   Dialogs, ExtCtrls, Buttons, Forms, Menus,
10   WSLCLClasses;
11 
12 // imglist
RegisterCustomImageListResolutionnull13 function RegisterCustomImageListResolution: Boolean;
14 // controls
RegisterDragImageListResolutionnull15 function RegisterDragImageListResolution: Boolean;
RegisterLazAccessibleObjectnull16 function RegisterLazAccessibleObject: Boolean;
RegisterControlnull17 function RegisterControl: Boolean;
RegisterWinControlnull18 function RegisterWinControl: Boolean;
RegisterGraphicControlnull19 function RegisterGraphicControl: Boolean;
RegisterCustomControlnull20 function RegisterCustomControl: Boolean;
21 // comctrls
RegisterStatusBarnull22 function RegisterStatusBar: Boolean;
RegisterTabSheetnull23 function RegisterTabSheet: Boolean;
RegisterPageControlnull24 function RegisterPageControl: Boolean;
RegisterCustomListViewnull25 function RegisterCustomListView: Boolean;
RegisterCustomProgressBarnull26 function RegisterCustomProgressBar: Boolean;
RegisterCustomUpDownnull27 function RegisterCustomUpDown: Boolean;
RegisterCustomToolButtonnull28 function RegisterCustomToolButton: Boolean;
RegisterToolBarnull29 function RegisterToolBar: Boolean;
RegisterCustomTrackBarnull30 function RegisterCustomTrackBar: Boolean;
RegisterCustomTreeViewnull31 function RegisterCustomTreeView: Boolean;
32 // calendar
RegisterCustomCalendarnull33 function RegisterCustomCalendar: Boolean;
34 // dialogs
RegisterCommonDialognull35 function RegisterCommonDialog: Boolean;
RegisterFileDialognull36 function RegisterFileDialog: Boolean;
RegisterOpenDialognull37 function RegisterOpenDialog: Boolean;
RegisterSaveDialognull38 function RegisterSaveDialog: Boolean;
RegisterSelectDirectoryDialognull39 function RegisterSelectDirectoryDialog: Boolean;
RegisterColorDialognull40 function RegisterColorDialog: Boolean;
RegisterColorButtonnull41 function RegisterColorButton: Boolean;
RegisterFontDialognull42 function RegisterFontDialog: Boolean;
43 // StdCtrls
RegisterCustomScrollBarnull44 function RegisterCustomScrollBar: Boolean;
RegisterCustomGroupBoxnull45 function RegisterCustomGroupBox: Boolean;
RegisterCustomComboBoxnull46 function RegisterCustomComboBox: Boolean;
RegisterCustomListBoxnull47 function RegisterCustomListBox: Boolean;
RegisterCustomEditnull48 function RegisterCustomEdit: Boolean;
RegisterCustomMemonull49 function RegisterCustomMemo: Boolean;
RegisterButtonControlnull50 function RegisterButtonControl: Boolean;
RegisterCustomButtonnull51 function RegisterCustomButton: Boolean;
RegisterCustomCheckBoxnull52 function RegisterCustomCheckBox: Boolean;
RegisterToggleBoxnull53 function RegisterToggleBox: Boolean;
RegisterRadioButtonnull54 function RegisterRadioButton: Boolean;
RegisterCustomStaticTextnull55 function RegisterCustomStaticText: Boolean;
RegisterCustomLabelnull56 function RegisterCustomLabel: Boolean;
57 // extctrls
RegisterCustomPagenull58 function RegisterCustomPage: Boolean;
RegisterCustomNotebooknull59 function RegisterCustomNotebook: Boolean;
RegisterShapenull60 function RegisterShape: Boolean;
RegisterCustomSplitternull61 function RegisterCustomSplitter: Boolean;
RegisterPaintBoxnull62 function RegisterPaintBox: Boolean;
RegisterCustomImagenull63 function RegisterCustomImage: Boolean;
RegisterBevelnull64 function RegisterBevel: Boolean;
RegisterCustomRadioGroupnull65 function RegisterCustomRadioGroup: Boolean;
RegisterCustomCheckGroupnull66 function RegisterCustomCheckGroup: Boolean;
RegisterCustomLabeledEditnull67 function RegisterCustomLabeledEdit: Boolean;
RegisterCustomPanelnull68 function RegisterCustomPanel: Boolean;
RegisterCustomTrayIconnull69 function RegisterCustomTrayIcon: Boolean;
70 //ExtDlgs
RegisterPreviewFileControlnull71 function RegisterPreviewFileControl: Boolean;
RegisterPreviewFileDialognull72 function RegisterPreviewFileDialog: Boolean;
RegisterOpenPictureDialognull73 function RegisterOpenPictureDialog: Boolean;
RegisterSavePictureDialognull74 function RegisterSavePictureDialog: Boolean;
RegisterCalculatorDialognull75 function RegisterCalculatorDialog: Boolean;
RegisterCalculatorFormnull76 function RegisterCalculatorForm: Boolean;
RegisterCalendarDialognull77 function RegisterCalendarDialog: Boolean;
78 // Buttons
RegisterCustomBitBtnnull79 function RegisterCustomBitBtn: Boolean;
RegisterCustomSpeedButtonnull80 function RegisterCustomSpeedButton: Boolean;
81 // CheckLst
RegisterCustomCheckListBoxnull82 function RegisterCustomCheckListBox: Boolean;
83 // Forms
RegisterScrollingWinControlnull84 function RegisterScrollingWinControl: Boolean;
RegisterScrollBoxnull85 function RegisterScrollBox: Boolean;
RegisterCustomFramenull86 function RegisterCustomFrame: Boolean;
RegisterCustomFormnull87 function RegisterCustomForm: Boolean;
RegisterHintWindownull88 function RegisterHintWindow: Boolean;
RegisterCustomGridnull89 function RegisterCustomGrid: Boolean;
RegisterMenuItemnull90 function RegisterMenuItem: Boolean;
RegisterMenunull91 function RegisterMenu: Boolean;
RegisterMainMenunull92 function RegisterMainMenu: Boolean;
RegisterPopupMenunull93 function RegisterPopupMenu: Boolean;
RegisterPairSplitterSidenull94 function RegisterPairSplitterSide: Boolean;
RegisterCustomPairSplitternull95 function RegisterCustomPairSplitter: Boolean;
RegisterCustomFloatSpinEditnull96 function RegisterCustomFloatSpinEdit: Boolean;
RegisterCustomRubberBandnull97 function RegisterCustomRubberBand: Boolean;
98 // LazDeviceAPIs
RegisterLazDeviceAPIsnull99 function RegisterLazDeviceAPIs: Boolean;
100 
101 implementation
102 uses
103  CustomDrawnWSButtons,
104 { WinCEWSCalendar,
105  WinCEWSCheckLst,}
106  CustomDrawnWSComCtrls,
107  CustomDrawnWSControls,
108 { WinCEWSDialogs,}
109  CustomDrawnWSExtCtrls,
110  CustomDrawnWSForms,
111 // WinCEWSImgList,
112  CustomDrawnWSMenus,
113  CustomDrawnWSSpin,
114  CustomDrawnWSStdCtrls,
115  CustomDrawnWSLazDeviceAPIs{,
116  WinCEWSGrids};
117 
118 // imglist
RegisterCustomImageListResolutionnull119 function RegisterCustomImageListResolution: Boolean; alias : 'WSRegisterCustomImageListResolution';
120 begin
121 //  RegisterWSComponent(TCustomImageListResolution, TWinCEWSCustomImageListResolution);
122   Result := False;
123 end;
124 
125 // controls
RegisterDragImageListResolutionnull126 function RegisterDragImageListResolution: Boolean; alias : 'WSRegisterDragImageListResolution';
127 begin
128 //  RegisterWSComponent(TDragImageListResolution, TWinCEWSDragImageListResolution);
129   Result := False;
130 end;
131 
RegisterLazAccessibleObjectnull132 function RegisterLazAccessibleObject: Boolean; alias : 'WSRegisterLazAccessibleObject';
133 begin
134   RegisterWSLazAccessibleObject(TCDWSLazAccessibleObject);
135   Result := True;
136 end;
137 
RegisterControlnull138 function RegisterControl: Boolean; alias : 'WSRegisterControl';
139 begin
140   Result := False;
141 end;
142 
RegisterWinControlnull143 function RegisterWinControl: Boolean; alias : 'WSRegisterWinControl';
144 begin
145   RegisterWSComponent(TWinControl, TCDWSWinControl);
146   Result := True;
147 end;
148 
RegisterGraphicControlnull149 function RegisterGraphicControl: Boolean; alias : 'WSRegisterGraphicControl';
150 begin
151   Result := False;
152 end;
153 
RegisterCustomControlnull154 function RegisterCustomControl: Boolean; alias : 'WSRegisterCustomControl';
155 begin
156   Result := False;
157 end;
158 
159 // comctrls
RegisterStatusBarnull160 function RegisterStatusBar: Boolean; alias : 'WSRegisterStatusBar';
161 begin
162 //  RegisterWSComponent(TStatusBar, TWinCEWSStatusBar);
163   Result := False;
164 end;
165 
RegisterTabSheetnull166 function RegisterTabSheet: Boolean; alias : 'WSRegisterTabSheet';
167 begin
168   RegisterWSComponent(TCustomPage, TCDWSCustomPage);
169   Result := True;
170 end;
171 
RegisterPageControlnull172 function RegisterPageControl: Boolean; alias : 'WSRegisterPageControl';
173 begin
174   RegisterWSComponent(TCustomTabControl, TCDWSCustomTabControl);
175   Result := True;
176 end;
177 
RegisterCustomListViewnull178 function RegisterCustomListView: Boolean; alias : 'WSRegisterCustomListView';
179 begin
180 //  RegisterWSComponent(TCustomListView, TWinCEWSCustomListView);
181   Result := False;
182 end;
183 
RegisterCustomProgressBarnull184 function RegisterCustomProgressBar: Boolean; alias : 'WSRegisterCustomProgressBar';
185 begin
186   RegisterWSComponent(TCustomProgressBar, TCDWSProgressBar);
187   Result := True;
188 end;
189 
RegisterCustomUpDownnull190 function RegisterCustomUpDown: Boolean; alias : 'WSRegisterCustomUpDown';
191 begin
192   Result := False;
193 end;
194 
RegisterCustomToolButtonnull195 function RegisterCustomToolButton: Boolean; alias : 'WSRegisterCustomToolButton';
196 begin
197   Result := False;
198 end;
199 
RegisterToolBarnull200 function RegisterToolBar: Boolean; alias : 'WSRegisterToolBar';
201 begin
202   Result := False;
203 end;
204 
RegisterCustomTrackBarnull205 function RegisterCustomTrackBar: Boolean; alias : 'WSRegisterCustomTrackBar';
206 begin
207   RegisterWSComponent(TCustomTrackBar, TCDWSTrackBar);
208   Result := True;
209 end;
210 
RegisterCustomTreeViewnull211 function RegisterCustomTreeView: Boolean; alias : 'WSRegisterCustomTreeView';
212 begin
213   Result := False;
214 end;
215 
216 // calendar
RegisterCustomCalendarnull217 function RegisterCustomCalendar: Boolean; alias : 'WSRegisterCustomCalendar';
218 begin
219 //  RegisterWSComponent(TCustomCalendar, TWinCEWSCustomCalendar);
220   Result := False;
221 end;
222 
223 // dialogs
RegisterCommonDialognull224 function RegisterCommonDialog: Boolean; alias : 'WSRegisterCommonDialog';
225 begin
226   Result := False;
227 end;
228 
RegisterFileDialognull229 function RegisterFileDialog: Boolean; alias : 'WSRegisterFileDialog';
230 begin
231 //  RegisterWSComponent(TFileDialog, TWinCEWSFileDialog);
232   Result := False;
233 end;
234 
RegisterOpenDialognull235 function RegisterOpenDialog: Boolean; alias : 'WSRegisterOpenDialog';
236 begin
237   Result := False;
238 end;
239 
RegisterSaveDialognull240 function RegisterSaveDialog: Boolean; alias : 'WSRegisterSaveDialog';
241 begin
242   Result := False;
243 end;
244 
RegisterSelectDirectoryDialognull245 function RegisterSelectDirectoryDialog: Boolean; alias : 'WSRegisterSelectDirectoryDialog';
246 begin
247   Result := False;
248 end;
249 
RegisterColorDialognull250 function RegisterColorDialog: Boolean; alias : 'WSRegisterColorDialog';
251 begin
252   Result := False;
253 end;
254 
RegisterColorButtonnull255 function RegisterColorButton: Boolean; alias : 'WSRegisterColorButton';
256 begin
257   Result := False;
258 end;
259 
RegisterFontDialognull260 function RegisterFontDialog: Boolean; alias : 'WSRegisterFontDialog';
261 begin
262   Result := False;
263 end;
264 
265 // StdCtrls
RegisterCustomScrollBarnull266 function RegisterCustomScrollBar: Boolean; alias : 'WSRegisterCustomScrollBar';
267 begin
268   RegisterWSComponent(TCustomScrollBar, TCDWSScrollBar);
269   Result := True;
270 end;
271 
RegisterCustomGroupBoxnull272 function RegisterCustomGroupBox: Boolean; alias : 'WSRegisterCustomGroupBox';
273 begin
274   RegisterWSComponent(TCustomGroupBox, TCDWSCustomGroupBox);
275   Result := True;
276 end;
277 
RegisterCustomComboBoxnull278 function RegisterCustomComboBox: Boolean; alias : 'WSRegisterCustomComboBox';
279 begin
280   RegisterWSComponent(TCustomComboBox, TCDWSCustomComboBox);
281   Result := True;
282 end;
283 
RegisterCustomListBoxnull284 function RegisterCustomListBox: Boolean; alias : 'WSRegisterCustomListBox';
285 begin
286 //  RegisterWSComponent(TCustomListBox, TWinCEWSCustomListBox);
287   Result := False;
288 end;
289 
RegisterCustomEditnull290 function RegisterCustomEdit: Boolean; alias : 'WSRegisterCustomEdit';
291 begin
292   RegisterWSComponent(TCustomEdit, TCDWSCustomEdit);
293   Result := True;
294 end;
295 
RegisterCustomMemonull296 function RegisterCustomMemo: Boolean; alias : 'WSRegisterCustomMemo';
297 begin
298   RegisterWSComponent(TCustomMemo, TCDWSCustomMemo);
299   Result := True;
300 end;
301 
RegisterButtonControlnull302 function RegisterButtonControl: Boolean; alias : 'WSRegisterButtonControl';
303 begin
304   Result := False;
305 end;
306 
RegisterCustomButtonnull307 function RegisterCustomButton: Boolean; alias : 'WSRegisterCustomButton';
308 begin
309   RegisterWSComponent(TCustomButton, TCDWSButton);
310   Result := True;
311 end;
312 
RegisterCustomCheckBoxnull313 function RegisterCustomCheckBox: Boolean; alias : 'WSRegisterCustomCheckBox';
314 begin
315   RegisterWSComponent(TCustomCheckBox, TCDWSCustomCheckBox);
316   Result := True;
317 end;
318 
RegisterToggleBoxnull319 function RegisterToggleBox: Boolean; alias : 'WSRegisterToggleBox';
320 begin
321 //  RegisterWSComponent(TToggleBox, TWinCEWSToggleBox);
322   Result := False;
323 end;
324 
RegisterRadioButtonnull325 function RegisterRadioButton: Boolean; alias : 'WSRegisterRadioButton';
326 begin
327   RegisterWSComponent(TRadioButton, TCDWSRadioButton);
328   Result := True;
329 end;
330 
RegisterCustomStaticTextnull331 function RegisterCustomStaticText: Boolean; alias : 'WSRegisterCustomStaticText';
332 begin
333   RegisterWSComponent(TCustomStaticText, TCDWSCustomStaticText);
334   Result := True;
335 end;
336 
RegisterCustomLabelnull337 function RegisterCustomLabel: Boolean; alias : 'WSRegisterCustomLabel';
338 begin
339   Result := False;
340 end;
341 
342 // extctrls
RegisterTabSheetnull343 // Already registered in function RegisterTabSheet: Boolean;
344 function RegisterCustomPage: Boolean; alias : 'WSRegisterCustomPage';
345 begin
346   //RegisterWSComponent(TCustomPage, TCDWSCustomPage);
347   Result := False;
348 end;
349 
RegisterPageControlnull350 // Already registered in function RegisterPageControl: Boolean;
351 function RegisterCustomNotebook: Boolean; alias : 'WSRegisterCustomNotebook';
352 begin
353 //  RegisterWSComponent(TCustomTabControl, TWinCEWSCustomNotebook);
354   Result := False;
355 end;
356 
RegisterShapenull357 function RegisterShape: Boolean; alias : 'WSRegisterShape';
358 begin
359   Result := False;
360 end;
361 
RegisterCustomSplitternull362 function RegisterCustomSplitter: Boolean; alias : 'WSRegisterCustomSplitter';
363 begin
364   Result := False;
365 end;
366 
RegisterPaintBoxnull367 function RegisterPaintBox: Boolean; alias : 'WSRegisterPaintBox';
368 begin
369   Result := False;
370 end;
371 
RegisterCustomImagenull372 function RegisterCustomImage: Boolean; alias : 'WSRegisterCustomImage';
373 begin
374   Result := False;
375 end;
376 
RegisterBevelnull377 function RegisterBevel: Boolean; alias : 'WSRegisterBevel';
378 begin
379   Result := False;
380 end;
381 
RegisterCustomRadioGroupnull382 function RegisterCustomRadioGroup: Boolean; alias : 'WSRegisterCustomRadioGroup';
383 begin
384   Result := False;
385 end;
386 
RegisterCustomCheckGroupnull387 function RegisterCustomCheckGroup: Boolean; alias : 'WSRegisterCustomCheckGroup';
388 begin
389   Result := False;
390 end;
391 
RegisterCustomLabeledEditnull392 function RegisterCustomLabeledEdit: Boolean; alias : 'WSRegisterCustomLabeledEdit';
393 begin
394   Result := False;
395 end;
396 
RegisterCustomPanelnull397 function RegisterCustomPanel: Boolean; alias : 'WSRegisterCustomPanel';
398 begin
399   RegisterWSComponent(TCustomPanel, TCDWSCustomPanel);
400   Result := True;
401 end;
402 
RegisterCustomTrayIconnull403 function RegisterCustomTrayIcon: Boolean; alias : 'WSRegisterCustomTrayIcon';
404 begin
405   RegisterWSComponent(TCustomTrayIcon, TCDWSCustomTrayIcon);
406   Result := True;
407 end;
408 
409 //ExtDlgs
RegisterPreviewFileControlnull410 function RegisterPreviewFileControl: Boolean; alias : 'WSRegisterPreviewFileControl';
411 begin
412   Result := False;
413 end;
414 
RegisterPreviewFileDialognull415 function RegisterPreviewFileDialog: Boolean; alias : 'WSRegisterPreviewFileDialog';
416 begin
417   Result := False;
418 end;
419 
RegisterOpenPictureDialognull420 function RegisterOpenPictureDialog: Boolean; alias : 'WSRegisterOpenPictureDialog';
421 begin
422   Result := False;
423 end;
424 
RegisterSavePictureDialognull425 function RegisterSavePictureDialog: Boolean; alias : 'WSRegisterSavePictureDialog';
426 begin
427   Result := False;
428 end;
429 
RegisterCalculatorDialognull430 function RegisterCalculatorDialog: Boolean; alias : 'WSRegisterCalculatorDialog';
431 begin
432   Result := False;
433 end;
434 
RegisterCalculatorFormnull435 function RegisterCalculatorForm: Boolean; alias : 'WSRegisterCalculatorForm';
436 begin
437   Result := False;
438 end;
439 
440 (*function RegisterCalendarDialogForm: Boolean; alias : 'WSRegisterCalendarDialogForm';
441 begin
442 //  RegisterWSComponent(TCalendarDialogForm, TWinCEWSCalendarDialogForm);
443   Result := False;
444 end;*)
445 
RegisterCalendarDialognull446 function RegisterCalendarDialog: Boolean; alias : 'WSRegisterCalendarDialog';
447 begin
448   Result := False;
449 end;
450 
451 // Buttons
RegisterCustomBitBtnnull452 function RegisterCustomBitBtn: Boolean; alias : 'WSRegisterCustomBitBtn';
453 begin
454   RegisterWSComponent(TCustomBitBtn, TCDWSBitBtn);
455   Result := True;
456 end;
457 
RegisterCustomSpeedButtonnull458 function RegisterCustomSpeedButton: Boolean; alias : 'WSRegisterCustomSpeedButton';
459 begin
460   Result := False;
461 end;
462 
463 // CheckLst
RegisterCustomCheckListBoxnull464 function RegisterCustomCheckListBox: Boolean; alias : 'WSRegisterCustomCheckListBox';
465 begin
466 //  RegisterWSComponent(TCustomCheckListBox, TWinCEWSCustomCheckListBox);
467   Result := False;
468 end;
469 
470 // Forms
RegisterScrollingWinControlnull471 function RegisterScrollingWinControl: Boolean; alias : 'WSRegisterScrollingWinControl';
472 begin
473 //  RegisterWSComponent(TScrollingWinControl, TWinCEWSScrollingWinControl);
474   Result := False;
475 end;
476 
RegisterScrollBoxnull477 function RegisterScrollBox: Boolean; alias : 'WSRegisterScrollBox';
478 begin
479 //  RegisterWSComponent(TScrollBox, TWinCEWSScrollBox);
480   Result := False;
481 end;
482 
RegisterCustomFramenull483 function RegisterCustomFrame: Boolean; alias : 'WSRegisterCustomFrame';
484 begin
485   Result := False;
486 end;
487 
RegisterCustomFormnull488 function RegisterCustomForm: Boolean; alias : 'WSRegisterCustomForm';
489 begin
490   RegisterWSComponent(TCustomForm, TCDWSCustomForm);
491   Result := True;
492 end;
493 
RegisterHintWindownull494 function RegisterHintWindow: Boolean; alias : 'WSRegisterHintWindow';
495 begin
496   Result := False;
497 end;
498 
499 // Grids
RegisterCustomGridnull500 function RegisterCustomGrid: Boolean; alias : 'WSRegisterCustomGrid';
501 begin
502 //  RegisterWSComponent(TCustomGrid, TWinCEWSCustomGrid);
503   Result := False;
504 end;
505 
506 // Menus
RegisterMenuItemnull507 function RegisterMenuItem: Boolean; alias : 'WSRegisterMenuItem';
508 begin
509   RegisterWSComponent(TMenuItem, TCDWSMenuItem);
510   Result := True;
511 end;
512 
RegisterMenunull513 function RegisterMenu: Boolean; alias : 'WSRegisterMenu';
514 begin
515   RegisterWSComponent(TMenu, TCDWSMenu);
516   Result := True;
517 end;
518 
RegisterMainMenunull519 function RegisterMainMenu: Boolean; alias : 'WSRegisterMainMenu';
520 begin
521   Result := False;
522 end;
523 
RegisterPopupMenunull524 function RegisterPopupMenu: Boolean; alias : 'WSRegisterPopupMenu';
525 begin
526   RegisterWSComponent(TPopupMenu, TCDWSPopupMenu);
527   Result := True;
528 end;
529 
RegisterPairSplitterSidenull530 function RegisterPairSplitterSide: Boolean; alias : 'WSRegisterPairSplitterSide';
531 begin
532   Result := False;
533 end;
534 
RegisterCustomPairSplitternull535 function RegisterCustomPairSplitter: Boolean; alias : 'WSRegisterCustomPairSplitter';
536 begin
537   Result := False;
538 end;
539 
RegisterCustomFloatSpinEditnull540 function RegisterCustomFloatSpinEdit: Boolean; alias : 'WSRegisterCustomFloatSpinEdit';
541 begin
542   RegisterWSComponent(TCustomFloatSpinEdit, TCDWSCustomFloatSpinEdit);
543   Result := True;
544 end;
545 
RegisterCustomRubberBandnull546 function RegisterCustomRubberBand: Boolean; alias : 'WSRegisterCustomRubberBand';
547 begin
548   Result := False;
549 end;
550 
RegisterLazDeviceAPIsnull551 function RegisterLazDeviceAPIs: Boolean; alias : 'WSRegisterLazDeviceAPIs';
552 begin
553   RegisterWSLazDeviceAPIs(TCDWSLazDeviceAPIs);
554   Result := True;
555 end;
556 
557 end.
558