[Ocs-comps-commits] OCS2/Samples/VCL/PluginManager/DBShare/Interbase/Host IB_DB_SHARE.cfg,NONE,1.1 I
Brought to you by:
tectsoft
From: Si C. <tec...@us...> - 2005-11-21 10:33:44
|
Update of /cvsroot/ocs-comps/OCS2/Samples/VCL/PluginManager/DBShare/Interbase/Host In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv10593/Samples/VCL/PluginManager/DBShare/Interbase/Host Added Files: IB_DB_SHARE.cfg IB_DB_SHARE.dof IB_DB_SHARE.dpr IB_DB_SHARE.dsk IB_DB_SHARE.ini IB_DB_SHARE.res uMain.dfm uMain.pas uOpenedFile.dfm uOpenedFile.pas Log Message: Initially added to source control --- NEW FILE: uMain.dfm --- object Form1: TForm1 Left = 230 Top = 107 Width = 648 Height = 136 Caption = 'Database Handle Share - Interbase' Color = clBtnFace Font.Charset = DEFAULT_CHARSET Font.Color = clWindowText Font.Height = -11 Font.Name = 'MS Sans Serif' Font.Style = [] Menu = MainMenu1 OldCreateOrder = False PixelsPerInch = 96 TextHeight = 13 object ControlBar1: TControlBar Left = 0 Top = 0 Width = 640 Height = 63 Align = alClient AutoSize = True BevelEdges = [beTop] RowSize = 41 TabOrder = 0 end object StatusBar1: TStatusBar Left = 0 Top = 63 Width = 640 Height = 19 Panels = < item Width = 100 end item Width = 100 end item Width = 50 end> end object MainMenu1: TMainMenu Left = 184 Top = 32 object File1: TMenuItem Caption = '&File' object Close1: TMenuItem Caption = '&Close' OnClick = Close1Click end end object Help1: TMenuItem Caption = '&Help' object About1: TMenuItem Caption = '&About' end end end object ImageList1: TImageList Left = 216 Top = 32 end object OrckaPluginManager1: TOrckaPluginManager ImageList = ImageList1 Menu = MainMenu1 ToolBarStyle = tbsControlBar ControlBar = ControlBar1 FlatButtons = True ButtonSize = 26 Toolbars.DefaultToolbar = 'PluginToolbar' Toolbars.Public = True Toolbars.Toolbars.Strings = ( 'PluginToolbar') PluginSettingsType = psIniFile PluginIniFileName = 'asdf' PluginOptions = [poDoSleep, poDoProcessMessages, poDoShowHelp, poAllowInsertToolbars, poAllowRemoveToolbars, poOnActivate, poOnDeactivate, poOnException, poOnHelp, poOnMinimize, poOnRestore, poOnSettingsChanged, poOnShortCut, poOnShowHint] OnGetAddinParams = OrckaPluginManager1GetAddinParams OnGetHandle = OrckaPluginManager1GetHandle OnGetDatabaseHandle = OrckaPluginManager1GetDatabaseHandle OnInsertButton = OrckaPluginManager1InsertButton Left = 248 Top = 32 end object IBDatabase1: TIBDatabase Params.Strings = ( 'user_name=sysdba' 'password=masterkey') LoginPrompt = False DefaultTransaction = IBTransaction1 IdleTimer = 0 SQLDialect = 3 TraceFlags = [] Left = 8 Top = 32 end object IBTransaction1: TIBTransaction Active = False DefaultDatabase = IBDatabase1 AutoStopAction = saNone Left = 40 Top = 32 end object OpenDialog1: TOpenDialog FileName = 'employee.gdb' Filter = 'Sample Employee Database|employee.fdb|All Files|*.*' Options = [ofHideReadOnly, ofPathMustExist, ofFileMustExist, ofShareAware, ofEnableSizing] Left = 104 Top = 32 end object OpenDialog2: TOpenDialog DefaultExt = '*.txt' Filter = 'Text Files|*.txt|All Files|*.*' Options = [ofHideReadOnly, ofShareAware, ofEnableSizing] Left = 144 Top = 32 end end --- NEW FILE: IB_DB_SHARE.dpr --- program IB_DB_SHARE; uses Forms, uMain in 'uMain.pas' {Form1}, HostShared in '..\HostShared.pas', uOpenedFile in 'uOpenedFile.pas' {Form2}; {$R *.res} begin Application.Initialize; Application.CreateForm(TForm1, Form1); Application.CreateForm(TForm2, Form2); Application.Run; end. --- NEW FILE: IB_DB_SHARE.res --- (This appears to be a binary file; contents omitted.) --- NEW FILE: IB_DB_SHARE.ini --- [Database] DB Location=D:\Program Files\Common Files\Borland Shared\Data\employee.gdb --- NEW FILE: IB_DB_SHARE.cfg --- -$A8 -$B- -$C+ -$D+ -$E- -$F- -$G+ -$H+ -$I+ -$J- -$K- -$L+ -$M- -$N+ -$O+ -$P+ -$Q- -$R- -$S- -$T- -$U- -$V+ -$W- -$X+ -$YD -$Z1 -cg -AWinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; -H+ -W+ -M -$M16384,1048576 -K$00400000 -E"..\Prog" -LE"c:\program files\borland\delphi7\Projects\Bpl" -LN"c:\program files\borland\delphi7\Projects\Bpl" -w-UNSAFE_TYPE -w-UNSAFE_CODE -w-UNSAFE_CAST --- NEW FILE: uMain.pas --- unit uMain; interface {$Include OrckaDV.inc} uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ComCtrls, IBDatabase, DB, OrckaPluginManager, HostShared, OrckaPluginManagerShared, ExtCtrls, ImgList, Menus, IBSQL, StdCtrls, OrckaButton; type THostSharedMain = class(THostShared) procedure SetTitle(NewTitle: TSmallString); override; function OpenFile: Boolean; override; end; TPluginSettingsDB = class(TPluginSettings) private FQuery: TIBSQL; FTran: TIBTransaction; protected function BoolToStr(Value: Boolean): string; function StrToBool(Value: string): Boolean; public constructor Create(APluginManager: TOrckaCustomPluginManager); override; destructor Destroy; override; procedure WriteString(Section, Ident: string; Value: string); override; procedure WriteInteger(Section, Ident: string; Value: Integer); override; procedure WriteBool(Section, Ident: string; Value: Boolean); override; function ReadString(Section, Ident: string; Default: string): string; override; function ReadInteger(Section, Ident: string; Default: Integer): Integer; override; function ReadBool(Section, Ident: string; Default: Boolean): Boolean; override; end; TForm1 = class(TForm) MainMenu1: TMainMenu; File1: TMenuItem; Close1: TMenuItem; Help1: TMenuItem; About1: TMenuItem; ImageList1: TImageList; ControlBar1: TControlBar; OrckaPluginManager1: TOrckaPluginManager; IBDatabase1: TIBDatabase; IBTransaction1: TIBTransaction; StatusBar1: TStatusBar; OpenDialog1: TOpenDialog; OpenDialog2: TOpenDialog; procedure OrckaPluginManager1GetDatabaseHandle(Sender: TObject; var DatabaseHandle: Pointer); procedure OrckaPluginManager1GetHandle(Sender: TObject; var Hwnd: Integer); procedure OrckaPluginManager1GetAddinParams(Sender: TObject; AddinManagerParams: TOrckaAddinManagerParams); procedure Close1Click(Sender: TObject); procedure OrckaPluginManager1InsertButton(Sender: TObject; Button: TOrckaButton; var ToolbarName: String); private FHostShared: THostSharedMain; procedure OpenDatabase; procedure OpenFile(FileName: string); procedure HintHandler(Sender: TObject); public constructor Create(AOwner: TComponent); override; destructor Destroy; override; end; var Form1: TForm1; implementation uses IniFiles {$ifdef DelphiVer6Up}, DBLogDlg{$ENDIF}, IB, uOpenedFile, Buttons; {$R *.dfm} procedure THostSharedMain. SetTitle(NewTitle: TSmallString); begin (* Sets the title of the main form *) Form1.Caption := 'Database Handle Share - Interbase ' + NewTitle end; function THostSharedMain. OpenFile: Boolean; begin (* Calls the hosts opendialog, if successful force the host to open the file. *) Result := Form1.OpenDialog1.Execute; If Result then Form1.OpenFile(Form1.OpenDialog1.FileName); end; procedure TForm1.OrckaPluginManager1GetDatabaseHandle(Sender: TObject; var DatabaseHandle: Pointer); begin DatabaseHandle := IBDatabase1.Handle; end; procedure TForm1.OrckaPluginManager1GetHandle(Sender: TObject; var Hwnd: Integer); begin Hwnd := Handle; end; constructor TForm1.Create(AOwner: TComponent); begin inherited Create(AOwner); (* Install the hint handler *) Application.OnHint := HintHandler; (* Create an instance of the Host Shared object that, can be passed to all plugins *) FHostShared := THostSharedMain.Create; (* Open the database *) OpenDatabase; (* Install custom plugin settings *) OrckaPluginManager1.SetPluginSettings(TPluginSettingsDB); (* Load all plugins that are in the same directory as the exe *) OrckaPluginManager1.LoadFromPath(ExtractFilePath(ParamStr(0))); end; procedure TForm1.OpenDatabase; var Ini: TIniFile; dbName: string; dbPassword: string; begin Ini := TIniFile.Create(ChangeFileExt(ParamStr(0), '.ini')); try (* Get the database location and password *) dbName := Ini.ReadString('Database', 'DB Location', ''); dbPassword := Ini.ReadString('Database', 'Password', ''); (* If the file doesn't exist then blank the name and select it from fresh (presumes local interbase) *) if not FileExists(dbName) then dbName := ''; if dbName = '' then begin if OpenDialog1.Execute then begin dbName := OpenDialog1.FileName; Ini.WriteString('Database', 'DB Location', dbName); end else begin ShowMessage('Database not selected, this application will now close'); Application.Terminate; end; end; IBDatabase1.DatabaseName := '127.0.0.1/64000:' + dbName; IBDatabase1.Params.Text := 'user_name=sysdba'; if dbPassword <> '' then IBDatabase1.Params.Text := IBDatabase1.Params.Text + #13'password=' + dbPassword; IBDatabase1.LoginPrompt := dbPassword = ''; IBDatabase1.Connected := True; dbPassword := IBDatabase1.Params.Values['password']; Ini.WriteString('Database', 'Password', dbPassword); finally Ini.Free; end; end; { TPluginSettingsDB } function TPluginSettingsDB.BoolToStr(Value: Boolean): string; begin if Value then Result := 'T' else Result := 'F'; end; constructor TPluginSettingsDB.Create( APluginManager: TOrckaCustomPluginManager); begin inherited Create(APluginManager); (* Create a transaction object *) FTran := TIBTransaction.Create(nil); FTran.DefaultDatabase := Form1.IBDatabase1; (* Create an IBSQL object *) FQuery := TIBSQL.Create(nil); FQuery.Database := Form1.IBDatabase1; FQuery.Transaction := FTran; end; destructor TPluginSettingsDB.Destroy; begin if FTran.InTransaction then FTran.Commit; FTran.Free; FQuery.Free; inherited Destroy; end; function TPluginSettingsDB.ReadBool(Section, Ident: string; Default: Boolean): Boolean; begin try Result := StrToBool(ReadString(Section, Ident, BoolToStr(Default))); except Result := Default; end; end; function TPluginSettingsDB.ReadInteger(Section, Ident: string; Default: Integer): Integer; begin try Result := StrToInt(ReadString(Section, Ident, IntToStr(Default))); except Result := Default; end; end; function TPluginSettingsDB.ReadString(Section, Ident, Default: string): string; begin FTran.StartTransaction; try FQuery.SQL.Text := Format('SELECT PSVALUE FROM PLUGINSETTINGS ' + 'WHERE PSSECTION = ''%s'' AND PSKEY = ''%s'';', [Section, Ident]); FQuery.ExecQuery; if FQuery.Bof and FQuery.Eof then Result := Default else Result := FQuery.Fields[0].AsString; finally FTran.Rollback; end; end; function TPluginSettingsDB.StrToBool(Value: string): Boolean; begin if Value = 'T' then Result := True else Result := False; end; procedure TPluginSettingsDB.WriteBool(Section, Ident: string; Value: Boolean); begin WriteString(Section, Ident, BoolToStr(Value)); end; procedure TPluginSettingsDB.WriteInteger(Section, Ident: string; Value: Integer); begin WriteString(Section, Ident, IntToStr(Value)); end; procedure TPluginSettingsDB.WriteString(Section, Ident, Value: string); begin FTran.StartTransaction; try try FQuery.SQL.Text := Format('INSERT INTO PLUGINSETTINGS(PSSECTION, ' + 'PSKEY, PSVALUE) VALUES (''%s'', ''%s'', ''%s'');', [Section, Ident, Value]); FQuery.ExecQuery; except on E: EIBInterbaseError do begin (* Ignore exceptions here, it probably means its already in the database, to be diligent we could check the actual error string *) end; on E: Exception do raise; end; FQuery.SQL.Text := Format('UPDATE PLUGINSETTINGS SET PSVALUE = ''%s'' ' + 'WHERE PSSECTION = ''%s'' AND PSKEY = ''%s'';', [Value, Section, Ident]); FQuery.ExecQuery; finally FTran.Commit; end; end; procedure TForm1.OrckaPluginManager1GetAddinParams(Sender: TObject; AddinManagerParams: TOrckaAddinManagerParams); begin AddinManagerParams.AppHandle := Application.Handle; AddinManagerParams.User := FHostShared; end; destructor TForm1.Destroy; begin FreeAndNil(FHostShared); inherited Destroy; end; procedure TForm1.OpenFile(FileName: string); var FileOpenForm: TForm2; begin FileOpenForm := TForm2.CreateOpen(FileName); try FileOpenForm.ShowModal; finally FreeAndNil(FileOpenForm); end; end; procedure TForm1.HintHandler(Sender: TObject); begin StatusBar1.SimpleText := GetLongHint(Application.Hint); StatusBar1.SimplePanel := StatusBar1.SimpleText <> ''; end; procedure TForm1.Close1Click(Sender: TObject); begin Close; end; procedure TForm1.OrckaPluginManager1InsertButton(Sender: TObject; Button: TOrckaButton; var ToolbarName: String); begin Button.Layout := blGlyphTop; Button.Width := 60; Button.Height := 40; end; end. --- NEW FILE: uOpenedFile.dfm --- object Form2: TForm2 Left = 230 Top = 107 Width = 381 Height = 337 Caption = 'Form2' Color = clBtnFace Font.Charset = DEFAULT_CHARSET Font.Color = clWindowText Font.Height = -11 Font.Name = 'MS Sans Serif' Font.Style = [] OldCreateOrder = False DesignSize = ( 373 310) PixelsPerInch = 96 TextHeight = 13 object Memo1: TMemo Left = 0 Top = 0 Width = 373 Height = 274 Align = alTop Anchors = [akLeft, akTop, akRight, akBottom] Lines.Strings = ( 'Memo1') ReadOnly = True TabOrder = 0 end object Button1: TButton Left = 294 Top = 281 Width = 75 Height = 25 Anchors = [akRight, akBottom] Caption = '&Close' Default = True TabOrder = 1 OnClick = Button1Click end end --- NEW FILE: IB_DB_SHARE.dof --- [FileVersion] Version=7.0 [Compiler] A=8 B=0 C=1 D=1 E=0 F=0 G=1 H=1 I=1 J=0 K=0 L=1 M=0 N=1 O=1 P=1 Q=0 R=0 S=0 T=0 U=0 V=1 W=0 X=1 Y=1 Z=1 ShowHints=1 ShowWarnings=1 UnitAliases=WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; NamespacePrefix= SymbolDeprecated=1 SymbolLibrary=1 SymbolPlatform=1 UnitLibrary=1 UnitPlatform=1 UnitDeprecated=1 HResultCompat=1 HidingMember=1 HiddenVirtual=1 Garbage=1 BoundsError=1 ZeroNilCompat=1 StringConstTruncated=1 ForLoopVarVarPar=1 TypedConstVarPar=1 AsgToTypedConst=1 CaseLabelRange=1 ForVariable=1 ConstructingAbstract=1 ComparisonFalse=1 ComparisonTrue=1 ComparingSignedUnsigned=1 CombiningSignedUnsigned=1 UnsupportedConstruct=1 FileOpen=1 FileOpenUnitSrc=1 BadGlobalSymbol=1 DuplicateConstructorDestructor=1 InvalidDirective=1 PackageNoLink=1 PackageThreadVar=1 ImplicitImport=1 HPPEMITIgnored=1 NoRetVal=1 UseBeforeDef=1 ForLoopVarUndef=1 UnitNameMismatch=1 NoCFGFileFound=1 MessageDirective=1 ImplicitVariants=1 UnicodeToLocale=1 LocaleToUnicode=1 ImagebaseMultiple=1 SuspiciousTypecast=1 PrivatePropAccessor=1 UnsafeType=0 UnsafeCode=0 UnsafeCast=0 [Linker] MapFile=0 OutputObjs=0 ConsoleApp=1 DebugInfo=0 RemoteSymbols=0 MinStackSize=16384 MaxStackSize=1048576 ImageBase=4194304 ExeDescription= [Directories] OutputDir=..\Prog UnitOutputDir= PackageDLLOutputDir= PackageDCPOutputDir= SearchPath= Packages=vcl;rtl;dbrtl;adortl;vcldb;vclx;bdertl;vcldbx;ibxpress;dsnap;cds;bdecds;qrpt;teeui;teedb;tee;dss;teeqr;visualclx;visualdbclx;dsnapcrba;dsnapcon;VclSmp;vclshlctrls;vclie;xmlrtl;inet;inetdbbde;inetdbxpress;inetdb;nmfast;webdsnap;websnap;soaprtl;dbexpress;dbxcds;indy;dclOffice2k Conditionals= DebugSourceDirs= UsePackages=0 [Parameters] RunParams= HostApplication= Launcher= UseLauncher=0 DebugCWD= [Language] ActiveLang= ProjectLang= RootDir=D:\Program Files\Borland\Delphi6\Bin\ [Version Info] IncludeVerInfo=0 AutoIncBuild=0 MajorVer=1 MinorVer=0 Release=0 Build=0 Debug=0 PreRelease=0 Special=0 Private=0 DLL=0 Locale=2057 CodePage=1252 [Version Info Keys] CompanyName= FileDescription= FileVersion=1.0.0.0 InternalName= LegalCopyright= LegalTrademarks= OriginalFilename= ProductName= ProductVersion=1.0.0.0 Comments= [Excluded Packages] c:\program files\borland\delphi7\Projects\Bpl\PLGMDO.bpl=(untitled) --- NEW FILE: uOpenedFile.pas --- unit uOpenedFile; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm2 = class(TForm) Memo1: TMemo; Button1: TButton; procedure Button1Click(Sender: TObject); private { Private declarations } public constructor CreateOpen(const FileName: string); virtual; end; var Form2: TForm2; implementation {$R *.dfm} procedure TForm2.Button1Click(Sender: TObject); begin Close; end; constructor TForm2.CreateOpen(const FileName: string); begin inherited; if FileExists(FileName) then Memo1.Lines.LoadFromFile(FileName) else Memo1.Text := Format('Could not open %s', [FileName]); end; end. --- NEW FILE: IB_DB_SHARE.dsk --- [Closed Files] File_0=SourceModule,'d:\program files\borland\delphi6\source\vcl\DBLogDlg.pas',0,1,22,40,30,1,0 File_1=SourceModule,'D:\Program Files\Borland\Delphi6\Projects\IBBackup\Unit1.pas',0,1,5,22,34,0,0 File_2=SourceModule,'d:\program files\borland\delphi6\source\rtl\Sys\Variants.pas',0,1,4964,1,1,0,0 File_3=SourceModule,'d:\program files\borland\delphi6\source\vcl\DB.pas',0,1,25,78,29,0,0 File_4=SourceModule,'D:\Program Files\Borland\Delphi6\Source\Vcl\DBCtrls.pas',0,1,1421,16,1428,0,0 File_5=SourceModule,'D:\Program Files\Borland\Delphi6\Source\Vcl\DBPWDlg.pas',0,1,91,19,94,0,0 File_6=SourceModule,'C:\TEMP\DB.pas',0,1,2275,14,2284,0,0 File_7=SourceModule,'D:\Program Files\Borland\Delphi6\Source\Vcl\DbPWDlg.dfm',0,1,1,39,8,0,0 File_8=SourceModule,'d:\program files\borland\delphi6\source\vcl\DBConsts.pas',0,1,93,1,1,0,0 [Modules] Module0=D:\Program Files\Orcka\Component Suite\Samples\VCL\PluginManager\DBShare\Interbase\Host\uMain.pas Module1=D:\Program Files\Orcka\Component Suite\Source\OrckaPluginManager.pas Module2=D:\Program Files\Orcka\Component Suite\Samples\VCL\PluginManager\DBShare\Interbase\Host\IB_DB_SHARE.dpr Module3=D:\Program Files\Orcka\Component Suite\Source\OrckaPluginManagerShared.pas Count=4 EditWindowCount=1 [D:\Program Files\Orcka\Component Suite\Samples\VCL\PluginManager\DBShare\Interbase\Host\uMain.pas] ModuleType=SourceModule FormState=0 FormOnTop=0 [D:\Program Files\Orcka\Component Suite\Source\OrckaPluginManager.pas] ModuleType=SourceModule FormState=0 FormOnTop=0 [D:\Program Files\Orcka\Component Suite\Samples\VCL\PluginManager\DBShare\Interbase\Host\IB_DB_SHARE.dpr] ModuleType=SourceModule FormState=0 FormOnTop=0 [D:\Program Files\Orcka\Component Suite\Source\OrckaPluginManagerShared.pas] ModuleType=SourceModule FormState=0 FormOnTop=0 [D:\Program Files\Borland\Delphi6\Bin\ProjectGroup1.bpg] FormState=0 FormOnTop=0 [EditWindow0] ViewCount=4 CurrentView=0 View0=0 View1=1 View2=2 View3=3 CodeExplorer=CodeExplorer@EditWindow0 MessageView=MessageView@EditWindow0 Create=1 Visible=1 State=0 Left=197 Top=128 Width=801 Height=690 MaxLeft=-1 MaxTop=-1 ClientWidth=793 ClientHeight=663 LeftPanelSize=0 RightPanelSize=0 BottomPanelSize=74 BottomPanelClients=MessageView@EditWindow0 BottomPanelData=00000400000000001903000000000000024A0000000000000001000000000000000000000000010000000019030000000000000100000000190300000B0000004D65737361676556696577FFFFFFFF [View0] Module=D:\Program Files\Orcka\Component Suite\Samples\VCL\PluginManager\DBShare\Interbase\Host\uMain.pas CursorX=1 CursorY=95 TopLine=74 LeftCol=1 [View1] Module=D:\Program Files\Orcka\Component Suite\Samples\VCL\PluginManager\DBShare\Interbase\Host\IB_DB_SHARE.dpr CursorX=1 CursorY=12 TopLine=1 LeftCol=1 [View2] Module=D:\Program Files\Orcka\Component Suite\Source\OrckaPluginManager.pas CursorX=1 CursorY=3531 TopLine=3518 LeftCol=1 [View3] Module=D:\Program Files\Orcka\Component Suite\Source\OrckaPluginManagerShared.pas CursorX=3 CursorY=279 TopLine=279 LeftCol=1 [Watches] Count=4 Watch0='Ident',256,0,18,1,0 Watch1='Section',256,0,18,1,0 Watch2='Default',256,0,18,1,0 Watch3='Value',256,0,18,1,0 [Breakpoints] Count=3 Breakpoint0='D:\Program Files\Orcka\Component Suite\Samples\VCL\PluginManager\DBShare\Interbase\Host\uMain.pas',173,'',0,1,'',1,0,0,'',1,'','','' Breakpoint1='D:\Program Files\Orcka\Component Suite\Samples\VCL\PluginManager\DBShare\Interbase\Host\uMain.pas',160,'',0,1,'',1,0,0,'',1,'','','' Breakpoint2='D:\Program Files\Orcka\Component Suite\Samples\VCL\PluginManager\DBShare\Interbase\Host\uMain.pas',217,'',0,1,'',1,0,0,'',1,'','','' [AddressBreakpoints] Count=0 [Main Window] Create=1 Visible=1 State=0 Left=0 Top=0 Width=1024 Height=105 MaxLeft=-1 MaxTop=-1 ClientWidth=1016 ClientHeight=78 [ProjectManager] Create=1 Visible=1 State=0 Left=0 Top=0 Width=193 Height=483 MaxLeft=-1 MaxTop=-1 ClientWidth=193 ClientHeight=483 TBDockHeight=303 LRDockWidth=438 Dockable=1 [AlignmentPalette] Create=1 Visible=0 State=0 Left=200 Top=107 Width=156 Height=82 MaxLeft=-1 MaxTop=-1 ClientWidth=150 ClientHeight=60 [PropertyInspector] Create=1 Visible=1 State=0 Left=0 Top=0 Width=193 Height=483 MaxLeft=-1 MaxTop=-1 ClientWidth=193 ClientHeight=483 TBDockHeight=381 LRDockWidth=190 Dockable=1 SplitPos=85 ArrangeBy=Name SelectedItem=Caption ExpandedItems=Options HiddenCategories= [WatchWindow] Create=1 Visible=0 State=0 Left=8 Top=525 Width=449 Height=191 MaxLeft=-1 MaxTop=-1 ClientWidth=441 ClientHeight=167 TBDockHeight=149 LRDockWidth=421 Dockable=1 [BreakpointWindow] Create=1 Visible=0 State=0 Left=8 Top=525 Width=449 Height=191 MaxLeft=-1 MaxTop=-1 ClientWidth=441 ClientHeight=167 TBDockHeight=197 LRDockWidth=737 Dockable=1 Column0Width=100 Column1Width=75 Column2Width=200 Column3Width=200 Column4Width=75 Column5Width=75 [CallStackWindow] Create=1 Visible=0 State=0 Left=8 Top=525 Width=449 Height=191 MaxLeft=-1 MaxTop=-1 ClientWidth=441 ClientHeight=167 TBDockHeight=161 LRDockWidth=294 Dockable=1 [ObjectTree] Create=1 Visible=1 State=0 Left=0 Top=0 Width=193 Height=483 MaxLeft=-1 MaxTop=-1 ClientWidth=193 ClientHeight=483 TBDockHeight=252 LRDockWidth=190 Dockable=1 [CodeExplorer@EditWindow0] Create=1 Visible=1 State=0 Left=0 Top=0 Width=193 Height=483 MaxLeft=-1 MaxTop=-1 ClientWidth=193 ClientHeight=483 TBDockHeight=305 LRDockWidth=140 Dockable=1 [MessageView@EditWindow0] Create=1 Visible=1 State=0 Left=12 Top=0 Width=781 Height=74 MaxLeft=-1 MaxTop=-1 ClientWidth=781 ClientHeight=74 TBDockHeight=74 LRDockWidth=443 Dockable=1 [DockHosts] DockHostCount=1 [DockSite0] DockSiteType=1 Create=1 Visible=1 State=0 Left=0 Top=108 Width=228 Height=515 MaxLeft=-1 MaxTop=-1 ClientWidth=220 ClientHeight=491 TBDockHeight=381 LRDockWidth=190 Dockable=1 TabPosition=2 ActiveTab=Object Inspector TabDockClients=PropertyInspector,ObjectTree,ProjectManager,CodeExplorer@EditWindow0 |