From b839e824d2b651b3c09fe1952dc2c690b5be1784 Mon Sep 17 00:00:00 2001 From: mattias Date: Tue, 28 Sep 2010 18:29:03 +0000 Subject: [PATCH] started lcl1 package git-svn-id: trunk@27514 - --- .gitattributes | 13 +++ lcl/interfaces/carbon/alllclintfunits.pas | 49 ++++++++++ lcl/interfaces/cocoa/alllclintfunits.pas | 18 ++++ lcl/interfaces/fpgui/alllclintfunits.pas | 28 ++++++ lcl/interfaces/gtk/alllclintfunits.pas | 38 ++++++++ lcl/interfaces/gtk2/alllclintfunits.pas | 37 ++++++++ lcl/interfaces/lcl1.lpk | 111 ++++++++++++++++++++++ lcl/interfaces/lcl1.pas | 20 ++++ lcl/interfaces/lclintfcompile.pas | 13 +++ lcl/interfaces/nogui/alllclintfunits.pas | 9 ++ lcl/interfaces/qt/alllclintfunits.pas | 34 +++++++ lcl/interfaces/win32/alllclintfunits.pas | 38 ++++++++ lcl/lclbase.lpk | 1 + lcl/update_allunits.lpi | 69 ++++++++++++++ lcl/update_allunits.lpr | 95 ++++++++++++++++++ 15 files changed, 573 insertions(+) create mode 100644 lcl/interfaces/carbon/alllclintfunits.pas create mode 100644 lcl/interfaces/cocoa/alllclintfunits.pas create mode 100644 lcl/interfaces/fpgui/alllclintfunits.pas create mode 100644 lcl/interfaces/gtk/alllclintfunits.pas create mode 100644 lcl/interfaces/gtk2/alllclintfunits.pas create mode 100644 lcl/interfaces/lcl1.lpk create mode 100644 lcl/interfaces/lcl1.pas create mode 100644 lcl/interfaces/lclintfcompile.pas create mode 100644 lcl/interfaces/nogui/alllclintfunits.pas create mode 100644 lcl/interfaces/qt/alllclintfunits.pas create mode 100644 lcl/interfaces/win32/alllclintfunits.pas create mode 100644 lcl/update_allunits.lpi create mode 100644 lcl/update_allunits.lpr diff --git a/.gitattributes b/.gitattributes index 00fee3355f..5f3f951534 100644 --- a/.gitattributes +++ b/.gitattributes @@ -4675,6 +4675,7 @@ lcl/interfacebase.pp svneol=native#text/pascal lcl/interfaces/LAYOUT.txt svneol=native#text/plain lcl/interfaces/carbon/README.txt svneol=native#text/plain lcl/interfaces/carbon/agl.pp svneol=native#text/plain +lcl/interfaces/carbon/alllclintfunits.pas svneol=native#text/plain lcl/interfaces/carbon/carbonbars.pp svneol=native#text/pascal lcl/interfaces/carbon/carbonbuttons.pp svneol=native#text/pascal lcl/interfaces/carbon/carboncalendar.pas svneol=native#text/plain @@ -4812,6 +4813,7 @@ lcl/interfaces/carbon/pascocoa/foundation/NSZone.inc svneol=native#text/plain lcl/interfaces/carbon/pascocoa/foundation/foundation.pas svneol=native#text/plain lcl/interfaces/cocoa/Makefile svneol=native#text/plain lcl/interfaces/cocoa/Makefile.fpc svneol=native#text/plain +lcl/interfaces/cocoa/alllclintfunits.pas svneol=native#text/plain lcl/interfaces/cocoa/cocoagdiobjects.pas svneol=native#text/plain lcl/interfaces/cocoa/cocoaint.pas svneol=native#text/plain lcl/interfaces/cocoa/cocoaobject.inc svneol=native#text/plain @@ -4830,6 +4832,7 @@ lcl/interfaces/cocoa/cocoawsstdctrls.pp svneol=native#text/plain lcl/interfaces/cocoa/interfaces.pas svneol=native#text/plain lcl/interfaces/fpgui/Makefile.fpc svneol=native#text/plain lcl/interfaces/fpgui/README.txt svneol=native#text/plain +lcl/interfaces/fpgui/alllclintfunits.pas svneol=native#text/plain lcl/interfaces/fpgui/fpguiint.pp svneol=native#text/pascal lcl/interfaces/fpgui/fpguilclintf.inc svneol=native#text/plain lcl/interfaces/fpgui/fpguilclintfh.inc svneol=native#text/plain @@ -4857,6 +4860,7 @@ lcl/interfaces/fpgui/fpguiwsprivate.pp svneol=native#text/plain lcl/interfaces/fpgui/fpguiwsspin.pp svneol=native#text/pascal lcl/interfaces/fpgui/fpguiwsstdctrls.pp svneol=native#text/pascal lcl/interfaces/fpgui/interfaces.pp svneol=native#text/pascal +lcl/interfaces/gtk/alllclintfunits.pas svneol=native#text/plain lcl/interfaces/gtk/dragicons.inc svneol=native#text/pascal lcl/interfaces/gtk/gtk1def.pp svneol=native#text/pascal lcl/interfaces/gtk/gtk1devicecontext.inc svneol=native#text/pascal @@ -4930,6 +4934,7 @@ lcl/interfaces/gtk/tests/lclclipboardunit.pas svneol=native#text/plain lcl/interfaces/gtk/tnotebook_close_tab.xpm -text svneol=native#image/x-xpixmap lcl/interfaces/gtk2/README.txt svneol=native#text/plain lcl/interfaces/gtk2/TODOS.txt svneol=native#text/plain +lcl/interfaces/gtk2/alllclintfunits.pas svneol=native#text/plain lcl/interfaces/gtk2/dragicons.inc svneol=native#text/pascal lcl/interfaces/gtk2/gtk2callback.inc svneol=native#text/plan lcl/interfaces/gtk2/gtk2cellrenderer.pas svneol=native#text/plain @@ -4990,12 +4995,17 @@ lcl/interfaces/gtk2/issues.xml svneol=native#text/xml lcl/interfaces/gtk2/tests/checkbuttononfixed.lpi svneol=native#text/plain lcl/interfaces/gtk2/tests/checkbuttononfixed.lpr svneol=native#text/plain lcl/interfaces/gtk2/tests/stutter.pas svneol=native#text/plain +lcl/interfaces/lcl1.lpk svneol=native#text/plain +lcl/interfaces/lcl1.pas svneol=native#text/plain +lcl/interfaces/lclintfcompile.pas svneol=native#text/plain lcl/interfaces/nogui/Makefile svneol=native#text/plain lcl/interfaces/nogui/Makefile.fpc svneol=native#text/plain +lcl/interfaces/nogui/alllclintfunits.pas svneol=native#text/plain lcl/interfaces/nogui/interfaces.pp svneol=native#text/plain lcl/interfaces/nogui/noguiint.pp svneol=native#text/plain lcl/interfaces/nogui/noguiwsfactory.pas svneol=native#text/pascal lcl/interfaces/qt/README.txt svneol=native#text/plain +lcl/interfaces/qt/alllclintfunits.pas svneol=native#text/plain lcl/interfaces/qt/interfaces.pp svneol=native#text/pascal lcl/interfaces/qt/issues.xml svneol=native#text/plain lcl/interfaces/qt/qt4.pas svneol=native#text/plain @@ -5033,6 +5043,7 @@ lcl/interfaces/qt/qtwsspin.pp svneol=native#text/pascal lcl/interfaces/qt/qtwsstdctrls.pp svneol=native#text/pascal lcl/interfaces/qt/qtx11.inc svneol=native#text/plain lcl/interfaces/win32/README.txt svneol=native#text/plain +lcl/interfaces/win32/alllclintfunits.pas svneol=native#text/plain lcl/interfaces/win32/interfaces.pp svneol=native#text/pascal lcl/interfaces/win32/issues.xml svneol=native#text/xml lcl/interfaces/win32/win32callback.inc svneol=native#text/pascal @@ -5228,6 +5239,8 @@ lcl/themes.pas svneol=native#text/pascal lcl/tmschema.pas svneol=native#text/pascal lcl/toolwin.pp svneol=native#text/pascal lcl/translations.pas svneol=native#text/pascal +lcl/update_allunits.lpi svneol=native#text/plain +lcl/update_allunits.lpr svneol=native#text/plain lcl/utf8process.pp svneol=native#text/pascal lcl/utrace.pp svneol=native#text/pascal lcl/widgetset/README.txt svneol=native#text/plain diff --git a/lcl/interfaces/carbon/alllclintfunits.pas b/lcl/interfaces/carbon/alllclintfunits.pas new file mode 100644 index 0000000000..61799f275d --- /dev/null +++ b/lcl/interfaces/carbon/alllclintfunits.pas @@ -0,0 +1,49 @@ +{ This unit was automatically created by update_allunits } +unit AllLCLIntfUnits; +interface +uses + carbonwsarrow, + carbonprivate, + carbonbars, + carbongdiobjects, + carbondebug, + carbonwsmenus, + carbonwsbuttons, + agl, + carbonwschecklst, + carboncalendarview, + carboncalendar, + carbondbgconsts, + carbonedits, + carbonbuttons, + carbonstrings, + carbonwspairsplitter, + glgrab, + interfaces, + carbonwsdialogs, + carbonclipboard, + carbonwscontrols, + carbonwsfactory, + carbonutils, + carbondef, + opengl, + carboncaret, + carbonwscomctrls, + carbonwsstdctrls, + carbonwsextctrls, + carbonwsforms, + carbonproc, + carbonwsextdlgs, + carbontabs, + carbonlistviews, + carbonint, + carbonwsspin, + carbonthemes, + carbonmenus, + carbonwsgrids, + carbonwsfilectrl, + carbonwsimglist, + carboncanvas, + carbonwscalendar; +implementation +end. diff --git a/lcl/interfaces/cocoa/alllclintfunits.pas b/lcl/interfaces/cocoa/alllclintfunits.pas new file mode 100644 index 0000000000..3ac4025ac9 --- /dev/null +++ b/lcl/interfaces/cocoa/alllclintfunits.pas @@ -0,0 +1,18 @@ +{ This unit was automatically created by update_allunits } +unit AllLCLIntfUnits; +interface +uses + cocoatextlayout, + cocoawsfactory, + cocoawsmenus, + cocoaprivate, + cocoawsstdctrls, + interfaces, + cocoautils, + cocoawsextctrls, + cocoagdiobjects, + cocoawsforms, + cocoaint, + cocoawscommon; +implementation +end. diff --git a/lcl/interfaces/fpgui/alllclintfunits.pas b/lcl/interfaces/fpgui/alllclintfunits.pas new file mode 100644 index 0000000000..cbd77273ad --- /dev/null +++ b/lcl/interfaces/fpgui/alllclintfunits.pas @@ -0,0 +1,28 @@ +{ This unit was automatically created by update_allunits } +unit AllLCLIntfUnits; +interface +uses + fpguiwsdialogs, + fpguiwscomctrls, + fpguiwspairsplitter, + fpguiwsstdctrls, + interfaces, + fpguiwsextdlgs, + fpguiwscontrols, + fpguiwsforms, + fpguiwsbuttons, + fpguiobjects, + fpguiwschecklst, + fpguiwsspin, + fpguiwsfactory, + fpguiproc, + fpguiwsextctrls, + fpguiwsprivate, + fpguiint, + fpguiwsgrids, + fpguiwsimglist, + fpguiwsarrow, + fpguiwsmenus, + fpguiwscalendar; +implementation +end. diff --git a/lcl/interfaces/gtk/alllclintfunits.pas b/lcl/interfaces/gtk/alllclintfunits.pas new file mode 100644 index 0000000000..50187a08db --- /dev/null +++ b/lcl/interfaces/gtk/alllclintfunits.pas @@ -0,0 +1,38 @@ +{ This unit was automatically created by update_allunits } +unit AllLCLIntfUnits; +interface +uses + gtkwscontrols, + gtkwspairsplitter, + gtkwschecklst, + gtkwsprivate, + gtkwsextctrls, + gtkwsgrids, + gtkint, + gtkwinapiwindow, + interfaces, + gtkwsstdctrls, + gtkwsfactory, + gtk1wsprivate, + gtkwsmenus, + gtkmsgqueue, + gtkwsextdlgs, + gtkglobals, + gtk1int, + gtkwsbuttons, + gtkwsdialogs, + gtkwsarrow, + gtkfontcache, + gtkwsimglist, + gtkthemes, + gtkwsspin, + gtk1def, + gtkproc, + gtkwscomctrls, + gtkwscalendar, + gtkdef, + gtkdebug, + gtkextra, + gtkwsforms; +implementation +end. diff --git a/lcl/interfaces/gtk2/alllclintfunits.pas b/lcl/interfaces/gtk2/alllclintfunits.pas new file mode 100644 index 0000000000..7b6f97a0b8 --- /dev/null +++ b/lcl/interfaces/gtk2/alllclintfunits.pas @@ -0,0 +1,37 @@ +{ This unit was automatically created by update_allunits } +unit AllLCLIntfUnits; +interface +uses + gtk2cellrenderer, + gtk2debug, + gtk2def, + gtk2extra, + gtk2fontcache, + gtk2globals, + gtk2int, + gtk2listviewtreemodel, + gtk2msgqueue, + gtk2proc, + gtk2themes, + gtk2winapiwindow, + gtk2wsarrow, + gtk2wsbuttons, + gtk2wscalendar, + gtk2wschecklst, + gtk2wscomctrls, + gtk2wscontrols, + gtk2wsdialogs, + gtk2wsextctrls, + gtk2wsextdlgs, + gtk2wsfactory, + gtk2wsforms, + gtk2wsgrids, + gtk2wsimglist, + gtk2wsmenus, + gtk2wspairsplitter, + gtk2wsprivate, + gtk2wsspin, + gtk2wsstdctrls, + interfaces; +implementation +end. diff --git a/lcl/interfaces/lcl1.lpk b/lcl/interfaces/lcl1.lpk new file mode 100644 index 0000000000..8a781a9541 --- /dev/null +++ b/lcl/interfaces/lcl1.lpk @@ -0,0 +1,111 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/lcl/interfaces/lcl1.pas b/lcl/interfaces/lcl1.pas new file mode 100644 index 0000000000..80113be10b --- /dev/null +++ b/lcl/interfaces/lcl1.pas @@ -0,0 +1,20 @@ +{ This file was automatically created by Lazarus. Do not edit! + This source is only used to compile and install the package. + } + +unit LCL1; + +interface + +uses + LCLIntfCompile, LazarusPackageIntf; + +implementation + +procedure Register; +begin +end; + +initialization + RegisterPackage('LCL1', @Register); +end. diff --git a/lcl/interfaces/lclintfcompile.pas b/lcl/interfaces/lclintfcompile.pas new file mode 100644 index 0000000000..797027aabb --- /dev/null +++ b/lcl/interfaces/lclintfcompile.pas @@ -0,0 +1,13 @@ +unit LCLIntfCompile; + +{$mode objfpc}{$H+} + +interface + +uses + AllLCLIntfUnits; + +implementation + +end. + diff --git a/lcl/interfaces/nogui/alllclintfunits.pas b/lcl/interfaces/nogui/alllclintfunits.pas new file mode 100644 index 0000000000..b13f75d87c --- /dev/null +++ b/lcl/interfaces/nogui/alllclintfunits.pas @@ -0,0 +1,9 @@ +{ This unit was automatically created by update_allunits } +unit AllLCLIntfUnits; +interface +uses + interfaces, + noguiint, + noguiwsfactory; +implementation +end. diff --git a/lcl/interfaces/qt/alllclintfunits.pas b/lcl/interfaces/qt/alllclintfunits.pas new file mode 100644 index 0000000000..142c5bace2 --- /dev/null +++ b/lcl/interfaces/qt/alllclintfunits.pas @@ -0,0 +1,34 @@ +{ This unit was automatically created by update_allunits } +unit AllLCLIntfUnits; +interface +uses + qtproc, + qtwscontrols, + qtwsgrids, + qtprivate, + qtwsdesigner, + qtwsspin, + qtwidgets, + qtcaret, + qtthemes, + qtwsextdlgs, + qt4, + interfaces, + qtwsforms, + qtwsbuttons, + qtwsextctrls, + qtint, + qtwspairsplitter, + qt45, + qtwsfactory, + qtwscomctrls, + qtwsimglist, + qtwsmenus, + qtwscalendar, + qtwsdialogs, + qtwsarrow, + qtobjects, + qtwschecklst, + qtwsstdctrls; +implementation +end. diff --git a/lcl/interfaces/win32/alllclintfunits.pas b/lcl/interfaces/win32/alllclintfunits.pas new file mode 100644 index 0000000000..f54a6e07f1 --- /dev/null +++ b/lcl/interfaces/win32/alllclintfunits.pas @@ -0,0 +1,38 @@ +{ This unit was automatically created by update_allunits } +unit AllLCLIntfUnits; +interface +uses + win32wsdialogs, + win32extra, + win32wsmaskedit, + win32wsextdlgs, + win32wsarrow, + win32wsfilectrl, + win32wschecklst, + win32wsstdctrls, + win32wsdbgrids, + win32wscalendar, + win32def, + win32wsdbctrls, + win32wstoolwin, + win32uxtheme, + interfaces, + win32proc, + win32wspairsplitter, + win32themes, + win32wsmenus, + win32debug, + win32wseditbtn, + win32wscontrols, + win32wsfactory, + win32wsextctrls, + win32wscomctrls, + win32wsgrids, + win32wsimglist, + win32int, + win32wsactnlist, + win32wsspin, + win32wsbuttons, + win32wsforms; +implementation +end. diff --git a/lcl/lclbase.lpk b/lcl/lclbase.lpk index 270572144e..3a6a41eb4c 100644 --- a/lcl/lclbase.lpk +++ b/lcl/lclbase.lpk @@ -7,6 +7,7 @@ + diff --git a/lcl/update_allunits.lpi b/lcl/update_allunits.lpi new file mode 100644 index 0000000000..6584d9f605 --- /dev/null +++ b/lcl/update_allunits.lpi @@ -0,0 +1,69 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/lcl/update_allunits.lpr b/lcl/update_allunits.lpr new file mode 100644 index 0000000000..d49efe7252 --- /dev/null +++ b/lcl/update_allunits.lpr @@ -0,0 +1,95 @@ +{ Utility to update every alllclintfunits.pas unit of every LCL widget set. +} +program update_allunits; + +{$mode objfpc}{$H+} + +uses + // Note: do not use any LCL unit! + Classes, SysUtils; + +procedure FindUnits(SrcDir: string; Units: TStrings); +var + FileInfo: TSearchRec; + Ext: String; + CurUnitName: String; +begin + if FindFirst(SrcDir+'*.*',faAnyFile,FileInfo)=0 then begin + repeat + // check if special file + if (FileInfo.Name='.') or (FileInfo.Name='..') or (FileInfo.Name='') then + continue; + if (FileInfo.Attr and faDirectory)=0 then begin + Ext:=LowerCase(ExtractFileExt(FileInfo.Name)); + if (Ext='.pp') or (Ext='.pas') or (Ext='.p') then + begin + CurUnitName:=copy(FileInfo.Name,1,length(FileInfo.Name)-length(Ext)); + if CompareText(CurUnitName,'AllLCLIntfUnits')=0 then continue; + Units.Add(CurUnitName); + end; + end; + until FindNext(FileInfo)<>0; + end; + FindClose(FileInfo); +end; + +procedure Run(WidgetSet, UnitPaths: string); +var + Units: TStringList; + Paths: TStringList; + BaseDir, Path: String; + i: Integer; + Source: TStringList; + Filename: String; + s: string; +begin + Units:=TStringList.Create; + Paths:=TStringList.Create; + Source:=TStringList.Create; + try + BaseDir:='interfaces/'+WidgetSet+'/'; + FindUnits(BaseDir,Units); + Paths.Delimiter:=';'; + Paths.StrictDelimiter:=true; + Paths.DelimitedText:=UnitPaths; + for i:=0 to Paths.Count-1 do begin + Path:=Trim(Paths[i]); + if Path='' then continue; + FindUnits(BaseDir+Path,Units); + end; + Source.Add('{ This unit was automatically created by update_allunits }'); + Source.Add('unit AllLCLIntfUnits;'); + Source.Add('interface'); + Source.Add('uses'); + for i:=0 to Units.Count-1 do begin + s:=' '+Units[i]; + if i=Units.Count-1 then + s:=s+';' + else + s:=s+','; + Source.Add(s); + end; + Source.Add('implementation'); + Source.Add('end.'); + Filename:=BaseDir+'alllclintfunits.pas'; + writeln('writing ',Filename,' ...'); + Source.SaveToFile(Filename); + finally + Source.Free; + Paths.Free; + Units.Free; + end; +end; + +begin + Run('gtk',''); + Run('gtk2',''); + Run('qt',''); + Run('win32',''); + Run('nogui',''); + Run('cocoa',''); + Run('carbon','objc;pascocoa/appkit;pascocoa/foundation'); + // fpgui needs manual additions for corelib/x11 and corelib/gdi + Run('fpgui','gui;corelib'); +end. +