jvcllaz: Add JvRuntime designer. Increment version number to 1.0.2

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6104 8e941d3f-bd1b-0410-a28a-d453659cc2b4
This commit is contained in:
wp_xxyyzz
2017-12-20 10:13:28 +00:00
parent 112c957157
commit 135718cb25
38 changed files with 4674 additions and 14 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 134 KiB

View File

@ -0,0 +1,344 @@
<?xml version="1.0" encoding="UTF-8"?>
<CONFIG>
<ProjectOptions>
<Version Value="11"/>
<PathDelim Value="\"/>
<General>
<MainUnit Value="0"/>
<ResourceType Value="res"/>
<UseXPManifest Value="True"/>
<Icon Value="0"/>
</General>
<i18n>
<EnableI18N LFM="False"/>
</i18n>
<BuildModes Count="1" Active="Default">
<Item1 Name="Default" Default="True"/>
</BuildModes>
<PublishOptions>
<Version Value="2"/>
<IncludeFileFilter Value="*.(pas|pp|inc|lfm|lpr|lrs|lpi|lpk|sh|xml)"/>
<ExcludeFileFilter Value="*.(bak|ppu|o|so);*~;backup"/>
</PublishOptions>
<RunParams>
<FormatVersion Value="2"/>
<Modes Count="1">
<Mode0 Name="default">
<local>
<LaunchingApplication PathPlusParams="\usr\bin\xterm -T 'Lazarus Run Output' -e $(LazarusDir)\tools\runwait.sh $(TargetCmdLine)"/>
</local>
</Mode0>
</Modes>
</RunParams>
<RequiredPackages Count="2">
<Item1>
<PackageName Value="JvRuntimeDesignR"/>
</Item1>
<Item2>
<PackageName Value="LCL"/>
</Item2>
</RequiredPackages>
<Units Count="28">
<Unit0>
<Filename Value="jvDesignerDemo.lpr"/>
<IsPartOfProject Value="True"/>
<UsageCount Value="37"/>
</Unit0>
<Unit1>
<Filename Value="main.pas"/>
<IsPartOfProject Value="True"/>
<ComponentName Value="MainForm"/>
<HasResources Value="True"/>
<ResourceBaseClass Value="Form"/>
<UsageCount Value="37"/>
<Loaded Value="True"/>
<LoadedDesigner Value="True"/>
</Unit1>
<Unit2>
<Filename Value="..\jvdesignsurface.pas"/>
<UnitName Value="JvDesignSurface"/>
<EditorIndex Value="-1"/>
<UsageCount Value="25"/>
</Unit2>
<Unit3>
<Filename Value="..\tp_register.pas"/>
<CursorPos X="82" Y="19"/>
<UsageCount Value="9"/>
</Unit3>
<Unit4>
<Filename Value="..\jvresources.pas"/>
<UnitName Value="JvResources"/>
<TopLine Value="148"/>
<CursorPos X="17" Y="164"/>
<UsageCount Value="15"/>
</Unit4>
<Unit5>
<Filename Value="..\..\codetools\laz2_xmlwrite.pas"/>
<UnitName Value="laz2_XMLWrite"/>
<TopLine Value="172"/>
<CursorPos X="25" Y="187"/>
<UsageCount Value="8"/>
</Unit5>
<Unit6>
<Filename Value="..\..\..\fpc\2.4.3\source\rtl\win32\system.pp"/>
<UnitName Value="System"/>
<TopLine Value="51"/>
<CursorPos X="3" Y="66"/>
<UsageCount Value="13"/>
</Unit6>
<Unit7>
<Filename Value="E:\sw\laz_jvdesigner\mainunit.pas"/>
<ComponentName Value="Form1"/>
<HasResources Value="True"/>
<ResourceBaseClass Value="Form"/>
<UnitName Value="mainUnit"/>
<TopLine Value="106"/>
<CursorPos Y="120"/>
<UsageCount Value="8"/>
</Unit7>
<Unit8>
<Filename Value="..\..\..\designer\controlselection.pp"/>
<UnitName Value="ControlSelection"/>
<TopLine Value="1252"/>
<CursorPos X="3" Y="1257"/>
<UsageCount Value="8"/>
</Unit8>
<Unit9>
<Filename Value="..\..\..\lcl\include\wincontrol.inc"/>
<TopLine Value="4691"/>
<CursorPos Y="4707"/>
<UsageCount Value="9"/>
</Unit9>
<Unit10>
<Filename Value="..\..\..\lcl\controls.pp"/>
<UnitName Value="Controls"/>
<TopLine Value="1947"/>
<CursorPos X="15" Y="1733"/>
<UsageCount Value="8"/>
</Unit10>
<Unit11>
<Filename Value="..\..\..\fpc\2.4.3\source\packages\fcl-db\src\dbase\dbf_idxfile.pas"/>
<TopLine Value="1226"/>
<CursorPos X="31" Y="1236"/>
<UsageCount Value="8"/>
</Unit11>
<Unit12>
<Filename Value="E:\sw\laz_jvdesigner\jvdesignutils.pas"/>
<UnitName Value="JvDesignUtils"/>
<TopLine Value="58"/>
<CursorPos X="19"/>
<UsageCount Value="10"/>
</Unit12>
<Unit13>
<Filename Value="E:\sw\laz_jvdesigner\jvdesignimp.pas"/>
<UnitName Value="JvDesignImp"/>
<TopLine Value="1213"/>
<CursorPos X="30" Y="1241"/>
<UsageCount Value="10"/>
</Unit13>
<Unit14>
<Filename Value="..\jvdesignimp.pas"/>
<UnitName Value="JvDesignImp"/>
<EditorIndex Value="-1"/>
<CursorPos Y="1481"/>
<UsageCount Value="26"/>
<Bookmarks Count="1">
<Item0 X="23" Y="363" ID="1"/>
</Bookmarks>
</Unit14>
<Unit15>
<Filename Value="..\..\..\lcl\include\control.inc"/>
<TopLine Value="1577"/>
<CursorPos Y="1593"/>
<UsageCount Value="12"/>
</Unit15>
<Unit16>
<Filename Value="..\jvdesignutils.pas"/>
<UnitName Value="JvDesignUtils"/>
<EditorIndex Value="-1"/>
<CursorPos X="72" Y="13"/>
<UsageCount Value="15"/>
</Unit16>
<Unit17>
<Filename Value="..\jvdesignclip.pas"/>
<UnitName Value="JvDesignClip"/>
<EditorIndex Value="-1"/>
<TopLine Value="24"/>
<CursorPos X="25" Y="2"/>
<UsageCount Value="15"/>
</Unit17>
<Unit18>
<Filename Value="..\jvconsts.pas"/>
<UnitName Value="JvConsts"/>
<EditorIndex Value="-1"/>
<TopLine Value="155"/>
<CursorPos X="90" Y="186"/>
<UsageCount Value="10"/>
</Unit18>
<Unit19>
<Filename Value="..\..\..\lcl\include\canvas.inc"/>
<TopLine Value="387"/>
<CursorPos Y="406"/>
<UsageCount Value="9"/>
</Unit19>
<Unit20>
<Filename Value="..\..\..\lcl\include\customcontrol.inc"/>
<TopLine Value="107"/>
<CursorPos Y="136"/>
<UsageCount Value="9"/>
</Unit20>
<Unit21>
<Filename Value="E:\sw\laz_designer\jvdesignsurface.pas"/>
<TopLine Value="301"/>
<CursorPos X="69" Y="312"/>
<UsageCount Value="9"/>
</Unit21>
<Unit22>
<Filename Value="..\..\run\JvRuntimeDesign\jvdesignsurface.pas"/>
<UnitName Value="JvDesignSurface"/>
<EditorIndex Value="1"/>
<TopLine Value="1125"/>
<CursorPos Y="1147"/>
<UsageCount Value="10"/>
<Loaded Value="True"/>
</Unit22>
<Unit23>
<Filename Value="..\..\run\JvRuntimeDesign\jvdesignclip.pas"/>
<UnitName Value="JvDesignClip"/>
<EditorIndex Value="2"/>
<TopLine Value="193"/>
<CursorPos Y="216"/>
<UsageCount Value="10"/>
<Loaded Value="True"/>
</Unit23>
<Unit24>
<Filename Value="..\..\run\JvRuntimeDesign\jvdesignutils.pas"/>
<UnitName Value="JvDesignUtils"/>
<EditorIndex Value="3"/>
<TopLine Value="407"/>
<CursorPos X="52" Y="420"/>
<UsageCount Value="10"/>
<Loaded Value="True"/>
</Unit24>
<Unit25>
<Filename Value="..\..\run\JvRuntimeDesign\jvdesignimp.pas"/>
<UnitName Value="JvDesignImp"/>
<EditorIndex Value="5"/>
<TopLine Value="1397"/>
<CursorPos Y="1430"/>
<UsageCount Value="10"/>
<Loaded Value="True"/>
</Unit25>
<Unit26>
<Filename Value="C:\lazarus-trunk_fpc304\lcl\forms.pp"/>
<UnitName Value="Forms"/>
<EditorIndex Value="6"/>
<TopLine Value="1737"/>
<CursorPos X="3" Y="1754"/>
<UsageCount Value="10"/>
<Loaded Value="True"/>
</Unit26>
<Unit27>
<Filename Value="..\..\design\JvRuntimeDesign\JvRuntimeDesignReg.pas"/>
<IsVisibleTab Value="True"/>
<EditorIndex Value="4"/>
<CursorPos X="17" Y="14"/>
<UsageCount Value="10"/>
<Loaded Value="True"/>
</Unit27>
</Units>
<JumpHistory Count="16" HistoryIndex="15">
<Position1>
<Filename Value="main.pas"/>
<Caret Line="164" Column="36" TopLine="137"/>
</Position1>
<Position2>
<Filename Value="main.pas"/>
</Position2>
<Position3>
<Filename Value="..\..\run\JvRuntimeDesign\jvdesignsurface.pas"/>
<Caret Line="265" Column="17" TopLine="265"/>
</Position3>
<Position4>
<Filename Value="..\..\run\JvRuntimeDesign\jvdesignsurface.pas"/>
</Position4>
<Position5>
<Filename Value="..\..\run\JvRuntimeDesign\jvdesignsurface.pas"/>
<Caret Line="43" Column="30" TopLine="15"/>
</Position5>
<Position6>
<Filename Value="..\..\run\JvRuntimeDesign\jvdesignsurface.pas"/>
<Caret Line="404" Column="23" TopLine="404"/>
</Position6>
<Position7>
<Filename Value="..\..\run\JvRuntimeDesign\jvdesignutils.pas"/>
<Caret Line="96" Column="30" TopLine="79"/>
</Position7>
<Position8>
<Filename Value="..\..\run\JvRuntimeDesign\jvdesignclip.pas"/>
<Caret Line="143" Column="23" TopLine="143"/>
</Position8>
<Position9>
<Filename Value="..\..\run\JvRuntimeDesign\jvdesignclip.pas"/>
<Caret Line="199" TopLine="193"/>
</Position9>
<Position10>
<Filename Value="..\..\run\JvRuntimeDesign\jvdesignclip.pas"/>
</Position10>
<Position11>
<Filename Value="..\..\run\JvRuntimeDesign\jvdesignimp.pas"/>
<Caret Line="351" Column="29" TopLine="345"/>
</Position11>
<Position12>
<Filename Value="..\..\run\JvRuntimeDesign\jvdesignimp.pas"/>
</Position12>
<Position13>
<Filename Value="..\..\run\JvRuntimeDesign\jvdesignimp.pas"/>
<Caret Line="11" Column="30"/>
</Position13>
<Position14>
<Filename Value="..\..\run\JvRuntimeDesign\jvdesignimp.pas"/>
<Caret Line="681" Column="34" TopLine="660"/>
</Position14>
<Position15>
<Filename Value="..\..\run\JvRuntimeDesign\jvdesignsurface.pas"/>
<Caret Line="265" Column="28" TopLine="265"/>
</Position15>
<Position16>
<Filename Value="..\..\run\JvRuntimeDesign\jvdesignutils.pas"/>
<Caret Line="65" Column="38" TopLine="65"/>
</Position16>
</JumpHistory>
</ProjectOptions>
<CompilerOptions>
<Version Value="11"/>
<PathDelim Value="\"/>
<Target>
<Filename Value="jvDesignerDemo"/>
</Target>
<SearchPaths>
<IncludeFiles Value="$(ProjOutDir)"/>
<UnitOutputDirectory Value="lib\$(TargetCPU)-$(TargetOS)"/>
</SearchPaths>
<Linking>
<Options>
<Win32>
<GraphicApplication Value="True"/>
</Win32>
</Options>
</Linking>
</CompilerOptions>
<Debugging>
<Exceptions Count="3">
<Item1>
<Name Value="EAbort"/>
</Item1>
<Item2>
<Name Value="ECodetoolError"/>
</Item2>
<Item3>
<Name Value="EFOpenError"/>
</Item3>
</Exceptions>
</Debugging>
</CONFIG>

View File

@ -0,0 +1,19 @@
program jvDesignerDemo;
{$mode objfpc}{$H+}
uses
{$IFDEF UNIX}{$IFDEF UseCThreads}
cthreads,
{$ENDIF}{$ENDIF}
Interfaces, // this includes the LCL widgetset
Forms, main;
{$R *.res}
begin
Application.Initialize;
Application.CreateForm(TMainForm, MainForm);
Application.Run;
end.

View File

@ -0,0 +1,635 @@
object MainForm: TMainForm
Left = 364
Height = 387
Top = 142
Width = 476
Caption = 'jvDesigner Demo'
ClientHeight = 367
ClientWidth = 476
Menu = MainMenu1
OnCreate = FormCreate
LCLVersion = '0.9.31'
object ToolBar1: TToolBar
Left = 0
Height = 34
Top = 0
Width = 476
AutoSize = True
ButtonHeight = 32
ButtonWidth = 33
Caption = 'ToolBar1'
Color = clBtnFace
EdgeBorders = [ebBottom]
Images = ImageList1
List = True
ParentColor = False
TabOrder = 0
Wrapable = False
object SelectButton: TToolButton
Left = 1
Top = 0
AutoSize = True
Caption = 'Select'
Down = True
Grouped = True
ImageIndex = 0
OnClick = PaletteButtonClick
Style = tbsCheck
end
object ButtonButton: TToolButton
Tag = 1
Left = 34
Top = 0
AutoSize = True
Caption = 'Button'
Grouped = True
ImageIndex = 1
OnClick = PaletteButtonClick
Style = tbsCheck
end
object LabelButton: TToolButton
Tag = 2
Left = 67
Top = 0
AutoSize = True
Caption = 'Label'
Grouped = True
ImageIndex = 2
OnClick = PaletteButtonClick
Style = tbsCheck
end
object PanelButton: TToolButton
Tag = 3
Left = 100
Top = 0
AutoSize = True
Caption = 'Panel'
Grouped = True
ImageIndex = 3
OnClick = PaletteButtonClick
Style = tbsCheck
end
object ImageButton: TToolButton
Tag = 4
Left = 133
Top = 0
AutoSize = True
Caption = 'ImageButton'
Grouped = True
ImageIndex = 4
OnClick = PaletteButtonClick
Style = tbsCheck
end
end
object JvDesignPanel: TJvDesignPanel
Left = 0
Height = 333
Top = 34
Width = 476
Align = alClient
BevelOuter = bvNone
Color = clWhite
ParentColor = False
TabOrder = 1
OnGetAddClass = JvDesignPanelGetAddClass
end
object ImageList1: TImageList
Height = 26
Width = 26
left = 164
top = 104
Bitmap = {
4C69050000001A0000001A000000FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00000000FF000000FFFF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00000000FFFFFFFFFF000000FFFF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00000000FFFFFFFFFFFFFFFFFF0000
00FFFF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00000000FFFFFF
FFFFFFFFFFFFFFFFFFFF000000FFFF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FFFF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFF000000FFFF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00000000FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FFFF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00000000FFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FFFF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FF0000
00FF000000FF000000FFFF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFF000000FFFF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00000000FFFFFFFFFF000000FF0000
00FFFFFFFFFFFFFFFFFF000000FFFF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00000000FF0000
00FFFF00FF00FF00FF00000000FFFFFFFFFFFFFFFFFF000000FFFF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00000000FFFF00FF00FF00FF00FF00FF00000000FFFFFFFFFFFFFFFFFF0000
00FFFF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF000000
00FFFFFFFFFFFFFFFFFF000000FFFF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00000000FFFFFFFFFFFFFFFFFF000000FFFF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00000000FF000000FFFF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF0099A8ACFF99A8ACFF99A8ACFF99A8ACFF99A8ACFF99A8ACFF99A8
ACFF99A8ACFF99A8ACFF99A8ACFF99A8ACFF99A8ACFF99A8ACFF99A8ACFF99A8
ACFF99A8ACFF99A8ACFF99A8ACFFFF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF0099A8ACFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FFFF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF0099A8ACFFFFFFFFFFD8E9ECFFD8E9
ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9
ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFF99A8ACFF0000
00FFFF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF0099A8ACFFFFFF
FFFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFF000000FF000000FFD8E9
ECFFD8E9ECFF000000FFD8E9ECFF000000FFD8E9ECFFD8E9ECFFD8E9ECFFD8E9
ECFF99A8ACFF000000FFFF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF0099A8ACFFFFFFFFFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFF000000FFD8E9
ECFFD8E9ECFF000000FFD8E9ECFF000000FFD8E9ECFF000000FFD8E9ECFFD8E9
ECFFD8E9ECFFD8E9ECFF99A8ACFF000000FFFF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF0099A8ACFFFFFFFFFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9
ECFF000000FFD8E9ECFFD8E9ECFF000000FFD8E9ECFF000000FF000000FFD8E9
ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFF99A8ACFF000000FFFF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF0099A8ACFFFFFFFFFFD8E9ECFFD8E9
ECFFD8E9ECFFD8E9ECFF000000FFD8E9ECFFD8E9ECFF000000FFD8E9ECFF0000
00FFD8E9ECFF000000FFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFF99A8ACFF0000
00FFFF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF0099A8ACFFFFFF
FFFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFF000000FFD8E9ECFFD8E9ECFF0000
00FFD8E9ECFF000000FFD8E9ECFF000000FFD8E9ECFFD8E9ECFFD8E9ECFFD8E9
ECFF99A8ACFF000000FFFF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF0099A8ACFFFFFFFFFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFF0000
00FF000000FFD8E9ECFFD8E9ECFF000000FFD8E9ECFF000000FFD8E9ECFFD8E9
ECFFD8E9ECFFD8E9ECFF99A8ACFF000000FFFF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF0099A8ACFFFFFFFFFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9
ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9
ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFF99A8ACFF000000FFFF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF0099A8ACFFFFFFFFFF99A8ACFF99A8
ACFF99A8ACFF99A8ACFF99A8ACFF99A8ACFF99A8ACFF99A8ACFF99A8ACFF99A8
ACFF99A8ACFF99A8ACFF99A8ACFF99A8ACFF99A8ACFF99A8ACFF99A8ACFF0000
00FFFF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF000000
00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000
00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000
00FF000000FFFF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00000000FF000000FF000000FF000000FF99A8ACFFFF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF0099A8ACFF000000FF000000FF000000FF0000
00FFFF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00000000FF000000FF0000
00FF000000FF000000FF99A8ACFFFF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF0099A8ACFF0000
00FF000000FFFF00FF00000000FF000000FF000000FFFF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00000000FF000000FF99A8ACFFFF00FF0099A8ACFF000000FF000000FF99A8
ACFFFF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF0099A8ACFF000000FF000000FFFF00FF00FF00FF00FF00FF000000
00FF000000FF000000FFFF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00000000FF000000FF99A8ACFFFF00FF00FF00
FF00FF00FF0099A8ACFF000000FF000000FF99A8ACFFFF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF0099A8ACFF000000FF000000FF0000
00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FFFF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00000000FF0000
00FF99A8ACFFFF00FF00FF00FF00FF00FF00FF00FF00FF00FF0099A8ACFF0000
00FF000000FF99A8ACFFFF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF0099A8
ACFF000000FF000000FFFF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00000000FF000000FF000000FFFF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00000000FF000000FF99A8ACFFFF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF0099A8ACFF000000FF000000FF99A8ACFFFF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00000000FF000000FF000000FF000000FFFF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00000000FF000000FF0000
00FF000000FF99A8ACFFFF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF0099A8ACFF99A8ACFF99A8ACFF99A8ACFF99A8ACFF99A8ACFF99A8ACFF99A8
ACFF99A8ACFF99A8ACFF99A8ACFF99A8ACFF99A8ACFF99A8ACFF99A8ACFF99A8
ACFF99A8ACFF99A8ACFF99A8ACFFFF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF0099A8ACFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD8E9ECFFFFFFFFFFFF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF0099A8ACFFFFFFFFFFD8E9ECFFD8E9
ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9
ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFF99A8ACFFFFFF
FFFFFF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF0099A8ACFFFFFF
FFFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9
ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9
ECFF99A8ACFFFFFFFFFFFF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF0099A8ACFFFFFFFFFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9
ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9
ECFFD8E9ECFFD8E9ECFF99A8ACFFFFFFFFFFFF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF0099A8ACFFFFFFFFFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9
ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9
ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFF99A8ACFFFFFFFFFFFF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF0099A8ACFFFFFFFFFFD8E9ECFFD8E9
ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9
ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFF99A8ACFFFFFF
FFFFFF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF0099A8ACFFFFFF
FFFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9
ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9
ECFF99A8ACFFFFFFFFFFFF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF0099A8ACFFFFFFFFFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9
ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9
ECFFD8E9ECFFD8E9ECFF99A8ACFFFFFFFFFFFF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF0099A8ACFFFFFFFFFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9
ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9
ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFF99A8ACFFFFFFFFFFFF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF0099A8ACFFFFFFFFFFD8E9ECFFD8E9
ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9
ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFF99A8ACFFFFFF
FFFFFF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF0099A8ACFFFFFF
FFFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9
ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9
ECFF99A8ACFFFFFFFFFFFF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF0099A8ACFFFFFFFFFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9
ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9
ECFFD8E9ECFFD8E9ECFF99A8ACFFFFFFFFFFFF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF0099A8ACFFFFFFFFFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9
ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9
ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFF99A8ACFFFFFFFFFFFF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF0099A8ACFFFFFFFFFFD8E9ECFFD8E9
ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9
ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFF99A8ACFFFFFF
FFFFFF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF0099A8ACFFFFFF
FFFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9
ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9
ECFF99A8ACFFFFFFFFFFFF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF0099A8ACFFFFFFFFFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9
ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9
ECFFD8E9ECFFD8E9ECFF99A8ACFFFFFFFFFFFF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF0099A8ACFFFFFFFFFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9
ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9
ECFFD8E9ECFFD8E9ECFFD8E9ECFFD8E9ECFF99A8ACFFFFFFFFFFFF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF0099A8ACFFD8E9ECFF99A8ACFF99A8
ACFF99A8ACFF99A8ACFF99A8ACFF99A8ACFF99A8ACFF99A8ACFF99A8ACFF99A8
ACFF99A8ACFF99A8ACFF99A8ACFF99A8ACFF99A8ACFF99A8ACFF99A8ACFFFFFF
FFFFFF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF0099A8ACFF99A8ACFF99A8
ACFF99A8ACFF99A8ACFF99A8ACFF99A8ACFF99A8ACFF99A8ACFF99A8ACFF99A8
ACFF99A8ACFF99A8ACFF99A8ACFF99A8ACFF99A8ACFF99A8ACFF99A8ACFF99A8
ACFF99A8ACFF99A8ACFFFF00FF00FF00FF00FF00FF00FF00FF00FF00FF0099A8
ACFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FFFF00FF00FF00FF00FF00FF00FF00
FF00FF00FF0099A8ACFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFF00FFFFFF
FFFFFFFF00FFFFFFFFFFFFFF00FFFFFFFFFFFFFF00FFFFFFFFFFFFFF00FFFFFF
FFFFFFFF00FFFFFFFFFFFFFF00FFFFFFFFFFFFFF00FF000000FFFF00FF00FF00
FF00FF00FF00FF00FF00FF00FF0099A8ACFFFFFFFFFFFFFF00FFFFFFFFFFFFFF
00FFFFFFFFFFFFFF00FFFFFFFFFFFFFF00FFFFFFFFFFFFFF00FFFFFFFFFFFFFF
00FFFFFFFFFFFFFF00FFFFFFFFFFFFFF00FFFFFFFFFFFFFF00FFFFFFFFFF0000
00FFFF00FF00FF00FF00FF00FF00FF00FF00FF00FF0099A8ACFFFFFFFFFFFFFF
FFFFFFFF00FFFFFFFFFFD8E9ECFFD8E9ECFFFFFF00FFFFFFFFFFFFFF00FFFFFF
FFFFFFFF00FFFFFFFFFFFFFF00FFFFFFFFFFFFFF00FFFFFFFFFFFFFF00FFFFFF
FFFFFFFF00FF000000FFFF00FF00FF00FF00FF00FF00FF00FF00FF00FF0099A8
ACFFFFFFFFFFFFFF00FFFFFFFFFFD8E9ECFF00FFFFFFFFFFFFFFD8E9ECFFFFFF
00FFFFFFFFFFFFFF00FFFFFFFFFFFFFF00FFFFFFFFFFFFFF00FFFFFFFFFFFFFF
00FFFFFFFFFFFFFF00FFFFFFFFFF000000FFFF00FF00FF00FF00FF00FF00FF00
FF00FF00FF0099A8ACFFFFFFFFFFFFFFFFFFFFFF00FFD8E9ECFFFFFFFFFF00FF
FFFFD8E9ECFFFFFFFFFFFFFF00FFFFFFFFFFFFFF00FFFFFFFFFFFFFF00FFFFFF
FFFFFFFF00FFFFFFFFFFFFFF00FFFFFFFFFFFFFF00FF000000FFFF00FF00FF00
FF00FF00FF00FF00FF00FF00FF0099A8ACFFFFFFFFFFFFFF00FFFFFFFFFFFFFF
00FFD8E9ECFFD8E9ECFFFFFFFFFFFFFF00FFFFFFFFFFFFFF00FFFFFFFFFFFFFF
00FFFFFFFFFFFFFF00FFFFFFFFFFFFFF00FFFFFFFFFFFFFF00FF008000FF0000
00FFFF00FF00FF00FF00FF00FF00FF00FF00FF00FF0099A8ACFFFFFFFFFFFFFF
FFFFFFFF00FFFFFFFFFFFFFF00FFFFFFFFFFFFFF00FFFFFFFFFFFFFF00FFFFFF
FFFFFFFF00FFFFFFFFFFFFFF00FFFFFFFFFFFFFF00FFFFFFFFFFFFFF00FF0080
00FF008000FF000000FFFF00FF00FF00FF00FF00FF00FF00FF00FF00FF0099A8
ACFFFFFFFFFFFFFF00FFFFFFFFFFFFFF00FFFFFFFFFFFFFF00FFFFFFFFFFFFFF
00FFFFFFFFFFFFFF00FFFFFFFFFFFFFF00FFFFFFFFFFFFFF00FFFFFFFFFF0080
00FF008000FF008000FF008000FF000000FFFF00FF00FF00FF00FF00FF00FF00
FF00FF00FF0099A8ACFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFF00FFFFFF
FFFFFFFF00FFFFFFFFFFFFFF00FFFFFFFFFFFFFF00FFFFFFFFFFFFFF00FF0080
00FF008000FF008000FF008000FF008000FF008000FF000000FFFF00FF00FF00
FF00FF00FF00FF00FF00FF00FF0099A8ACFFFFFFFFFFFFFF00FFFFFFFFFFFFFF
00FFFFFFFFFFFFFF00FFFFFFFFFFFFFF00FFFFFFFFFFFFFF00FFFFFFFFFF0080
00FF008000FF008000FF008000FF008000FF008000FF008000FF008000FF0000
00FFFF00FF00FF00FF00FF00FF00FF00FF00FF00FF0099A8ACFFFF0000FFFF00
00FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF00
00FFFF0000FFFF0000FFFF0000FF008000FF008000FF008000FF008000FF0080
00FF008000FF000000FFFF00FF00FF00FF00FF00FF00FF00FF00FF00FF0099A8
ACFFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF00
00FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FF0080
00FF008000FF008000FF008000FF000000FFFF00FF00FF00FF00FF00FF00FF00
FF00FF00FF0099A8ACFFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF00
00FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF00
00FFFF0000FFFF0000FFFF0000FF008000FF008000FF000000FFFF00FF00FF00
FF00FF00FF00FF00FF00FF00FF0099A8ACFFFF0000FFFF0000FFFF0000FFFF00
00FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF00
00FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FF0000
00FFFF00FF00FF00FF00FF00FF00FF00FF00FF00FF0099A8ACFF000000FF0000
00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000
00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000
00FF000000FF000000FFFF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
}
end
object MainMenu1: TMainMenu
left = 104
top = 104
object File1: TMenuItem
Caption = 'File'
GroupIndex = 1
object New1: TMenuItem
Caption = 'New'
GroupIndex = 1
RadioItem = True
OnClick = New1Click
end
object Open1: TMenuItem
Caption = 'Open...'
GroupIndex = 1
RadioItem = True
OnClick = Open1Click
end
object Save1: TMenuItem
Caption = 'Save...'
GroupIndex = 1
RadioItem = True
OnClick = Save1Click
end
object N3: TMenuItem
Caption = '-'
GroupIndex = 1
RadioItem = True
end
object Rules1: TMenuItem
AutoCheck = True
Caption = 'Rules'
Checked = True
GroupIndex = 1
RadioItem = True
OnClick = Rules1Click
end
object Grid1: TMenuItem
AutoCheck = True
Caption = 'Grid'
GroupIndex = 1
RadioItem = True
OnClick = Rules1Click
end
object N4: TMenuItem
Caption = '-'
GroupIndex = 1
end
object VSSelector1: TMenuItem
AutoCheck = True
Caption = 'VS Selector'
Checked = True
GroupIndex = 2
RadioItem = True
Visible = False
end
object DelphiSelector1: TMenuItem
AutoCheck = True
Caption = 'Delphi Selector'
GroupIndex = 2
RadioItem = True
Visible = False
end
object N1: TMenuItem
Caption = '-'
GroupIndex = 2
Visible = False
end
object csDesigning1: TMenuItem
AutoCheck = True
Caption = 'csDesigning'
Checked = True
GroupIndex = 3
RadioItem = True
OnClick = csDesigning1Click
end
object WindowProcHook1: TMenuItem
AutoCheck = True
Caption = 'WindowProcHook'
GroupIndex = 3
RadioItem = True
OnClick = csDesigning1Click
end
object N2: TMenuItem
Caption = '-'
GroupIndex = 3
end
object Active1: TMenuItem
AutoCheck = True
Caption = 'Active'
Checked = True
GroupIndex = 3
OnClick = Active1Click
end
end
end
object OpenDialog: TOpenDialog
DefaultExt = '.cfrm'
Filter = 'Custom Designed Forms (.cfrm)|*.cfrm'
left = 104
top = 152
end
object SaveDialog: TSaveDialog
DefaultExt = '.cfrm'
Filter = 'Custom Designed Forms (.cfrm)|*.cfrm'
left = 164
top = 152
end
end

View File

@ -0,0 +1,179 @@
unit main;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, ComCtrls,
Menus, StdCtrls, ExtCtrls, JvDesignSurface, JvDesignUtils;
type
{ TMainForm }
TMainForm = class(TForm)
Active1: TMenuItem;
ButtonButton: TToolButton;
csDesigning1: TMenuItem;
DelphiSelector1: TMenuItem;
File1: TMenuItem;
Grid1: TMenuItem;
ImageButton: TToolButton;
ImageList1: TImageList;
JvDesignPanel: TJvDesignPanel;
LabelButton: TToolButton;
MainMenu1: TMainMenu;
N1: TMenuItem;
N2: TMenuItem;
N3: TMenuItem;
N4: TMenuItem;
New1: TMenuItem;
Open1: TMenuItem;
OpenDialog: TOpenDialog;
PanelButton: TToolButton;
Rules1: TMenuItem;
Save1: TMenuItem;
SaveDialog: TSaveDialog;
SelectButton: TToolButton;
ToolBar1: TToolBar;
VSSelector1: TMenuItem;
WindowProcHook1: TMenuItem;
procedure Active1Click(Sender: TObject);
procedure csDesigning1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure Grid1Click(Sender: TObject);
procedure New1Click(Sender: TObject);
procedure Open1Click(Sender: TObject);
procedure Rules1Click(Sender: TObject);
procedure Save1Click(Sender: TObject);
procedure JvDesignPanelGetAddClass(Sender: TObject; var ioClass: String);
procedure JvDesignPanelPaint(Sender: TObject);
procedure PaletteButtonClick(Sender: TObject);
private
{ private declarations }
public
{ public declarations }
DesignClass: string;
StickyClass: Boolean;
end;
var
MainForm: TMainForm;
implementation
uses
JvDesignImp;
{$R *.lfm}
{ TMainForm }
procedure TMainForm.New1Click(Sender: TObject);
begin
JvDesignPanel.Clear;
end;
procedure TMainForm.Grid1Click(Sender: TObject);
begin
end;
procedure TMainForm.csDesigning1Click(Sender: TObject);
begin
JvDesignPanel.Active := false;
if WindowProcHook1.Checked then
JvDesignPanel.Surface.MessengerClass := TJvDesignWinControlHookMessenger
else
JvDesignPanel.Surface.MessengerClass := TJvDesignDesignerMessenger;
JvDesignPanel.Active := true;
JvDesignPanel.Invalidate;
end;
procedure TMainForm.FormCreate(Sender: TObject);
begin
OpenDialog.InitialDir := ExtractFilePath(Application.ExeName);
SaveDialog.InitialDir := OpenDialog.InitialDir;
JvDesignPanel.Surface.Active := true;
end;
procedure TMainForm.Active1Click(Sender: TObject);
begin
JvDesignPanel.Active := Active1.Checked;
JvDesignPanel.Invalidate;
end;
procedure TMainForm.Open1Click(Sender: TObject);
begin
if OpenDialog.Execute then
JvDesignPanel.LoadFromFile(OpenDialog.Filename);
end;
procedure TMainForm.Rules1Click(Sender: TObject);
begin
if Rules1.Checked then
begin
JvDesignPanel.Color := clWhite;
JvDesignPanel.DrawRules := true;
JvDesignPanel.OnPaint := nil;
end else
begin
JvDesignPanel.Color := clBtnFace;
JvDesignPanel.DrawRules := false;
JvDesignPanel.OnPaint := @JvDesignPanelPaint;
end;
JvDesignPanel.Invalidate;
end;
procedure TMainForm.Save1Click(Sender: TObject);
begin
if SaveDialog.Execute then
JvDesignPanel.SaveToFile(SaveDialog.Filename);
end;
procedure TMainForm.JvDesignPanelGetAddClass(Sender: TObject;
var ioClass: String);
begin
ioClass := DesignClass;
if not StickyClass then
begin
DesignClass := '';
SelectButton.Down := true;
end;
end;
procedure TMainForm.JvDesignPanelPaint(Sender: TObject);
begin
with JvDesignPanel do
DesignPaintGrid(Canvas, ClientRect, Color);
end;
procedure TMainForm.PaletteButtonClick(Sender: TObject);
const
cClasses: array[0..4] of string = ( '', 'TButton', 'TLabel', 'TPanel',
'TImage' );
begin
// StickyClass := (GetKeyState(VK_SHIFT) < 0);
StickyClass := False;
DesignClass := cClasses[TControl(Sender).Tag];
end;
initialization
RegisterClass(TButton);
RegisterClass(TLabel);
RegisterClass(TPanel);
RegisterClass(TImage);
end.

View File

@ -0,0 +1,47 @@
object JvDesignPanel: TJvDesignPanel
Left = 0
Height = 333
Top = 34
Width = 476
Align = alClient
BevelOuter = bvNone
ClientHeight = 333
ClientWidth = 476
Color = clWhite
ParentColor = False
TabOrder = 1
object Panel1: TPanel
Left = 117
Height = 178
Top = 117
Width = 310
Caption = 'Panel1'
ClientHeight = 178
ClientWidth = 310
TabOrder = 0
object Button1: TButton
Left = 170
Height = 25
Top = 134
Width = 75
Caption = 'Button1'
TabOrder = 0
end
object Button2: TButton
Left = 77
Height = 25
Top = 134
Width = 75
Caption = 'Button2'
TabOrder = 1
end
object Label1: TLabel
Left = 42
Height = 14
Top = 36
Width = 32
Caption = 'Label1'
ParentColor = False
end
end
end