mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-08-16 20:49:24 +02:00
examples: add Resource Explorer example by Alexey Lagunov
git-svn-id: trunk@23783 -
This commit is contained in:
parent
b4c420cb3f
commit
e930e50b5e
11
.gitattributes
vendored
11
.gitattributes
vendored
@ -2999,6 +2999,17 @@ examples/lazintfimage/fadein1.lpr svneol=native#text/pascal
|
||||
examples/lazintfimage/mainunit1.lfm svneol=native#text/plain
|
||||
examples/lazintfimage/mainunit1.lrs svneol=native#text/pascal
|
||||
examples/lazintfimage/mainunit1.pas svneol=native#text/pascal
|
||||
examples/lazresexploer/ResExploer.ico -text svneol=unset#image/ico
|
||||
examples/lazresexploer/ResExploer.lpi svneol=native#text/plain
|
||||
examples/lazresexploer/ResExploer.lpr svneol=native#text/plain
|
||||
examples/lazresexploer/ResExploer.res -text
|
||||
examples/lazresexploer/languages/ResExploer.po svneol=native#text/plain
|
||||
examples/lazresexploer/languages/ResExploer.ru.po svneol=native#text/plain
|
||||
examples/lazresexploer/reaboutunit.lfm svneol=native#text/plain
|
||||
examples/lazresexploer/reaboutunit.pas svneol=native#text/plain
|
||||
examples/lazresexploer/reconstsunit.pas svneol=native#text/plain
|
||||
examples/lazresexploer/remainunit.lfm svneol=native#text/plain
|
||||
examples/lazresexploer/remainunit.pas svneol=native#text/plain
|
||||
examples/lclversion/lclversionexample.lpi svneol=native#text/plain
|
||||
examples/lclversion/lclversionexample.lpr svneol=native#text/plain
|
||||
examples/lclversion/unit1.lfm svneol=native#text/plain
|
||||
|
BIN
examples/lazresexploer/ResExploer.ico
Normal file
BIN
examples/lazresexploer/ResExploer.ico
Normal file
Binary file not shown.
After Width: | Height: | Size: 134 KiB |
313
examples/lazresexploer/ResExploer.lpi
Normal file
313
examples/lazresexploer/ResExploer.lpi
Normal file
@ -0,0 +1,313 @@
|
||||
<?xml version="1.0"?>
|
||||
<CONFIG>
|
||||
<ProjectOptions>
|
||||
<Version Value="7"/>
|
||||
<General>
|
||||
<Flags>
|
||||
<UseDefaultCompilerOptions Value="True"/>
|
||||
</Flags>
|
||||
<MainUnit Value="0"/>
|
||||
<AutoCreateForms Value="False"/>
|
||||
<TargetFileExt Value=""/>
|
||||
<ResourceType Value="res"/>
|
||||
<UseXPManifest Value="True"/>
|
||||
<Icon Value="0"/>
|
||||
<ActiveEditorIndexAtStart Value="0"/>
|
||||
</General>
|
||||
<i18n>
|
||||
<EnableI18N Value="True"/>
|
||||
<OutDir Value="languages"/>
|
||||
</i18n>
|
||||
<VersionInfo>
|
||||
<UseVersionInfo Value="True"/>
|
||||
<AutoIncrementBuild Value="True"/>
|
||||
<MinorVersionNr Value="1"/>
|
||||
<CharSet Value="04B0"/>
|
||||
<StringTable Comments="Explore your resources in executables and resource files" CompanyName="Alexey Lagunov" FileDescription="Resource Explorer" FileVersion="0.1.0.0" InternalName="LazResExplorer" LegalCopyright="Alexey Lagunov" LegalTrademarks="No Trademarks" OriginalFilename="lazresexplorer" ProductName="Lazarus Resource Explorer" ProductVersion="0.1.0.0"/>
|
||||
</VersionInfo>
|
||||
<PublishOptions>
|
||||
<Version Value="2"/>
|
||||
<IgnoreBinaries Value="False"/>
|
||||
<IncludeFileFilter Value="*.(pas|pp|inc|lfm|lpr|lrs|lpi|lpk|sh|xml)"/>
|
||||
<ExcludeFileFilter Value="*.(bak|ppu|ppw|o|so);*~;backup"/>
|
||||
</PublishOptions>
|
||||
<RunParams>
|
||||
<local>
|
||||
<FormatVersion Value="1"/>
|
||||
<CommandLineParams Value="/home/alexs/1/5/imageres.dll"/>
|
||||
<LaunchingApplication PathPlusParams="/usr/X11R6/bin/xterm -T 'Lazarus Run Output' -e $(LazarusDir)/tools/runwait.sh $(TargetCmdLine)"/>
|
||||
</local>
|
||||
</RunParams>
|
||||
<RequiredPackages Count="1">
|
||||
<Item1>
|
||||
<PackageName Value="LCL"/>
|
||||
</Item1>
|
||||
</RequiredPackages>
|
||||
<Units Count="18">
|
||||
<Unit0>
|
||||
<Filename Value="ResExploer.lpr"/>
|
||||
<IsPartOfProject Value="True"/>
|
||||
<UnitName Value="ResExploer"/>
|
||||
<CursorPos X="1" Y="19"/>
|
||||
<TopLine Value="1"/>
|
||||
<UsageCount Value="22"/>
|
||||
</Unit0>
|
||||
<Unit1>
|
||||
<Filename Value="remainunit.pas"/>
|
||||
<IsPartOfProject Value="True"/>
|
||||
<ComponentName Value="reMainForm"/>
|
||||
<ResourceBaseClass Value="Form"/>
|
||||
<UnitName Value="reMainUnit"/>
|
||||
<CursorPos X="48" Y="84"/>
|
||||
<TopLine Value="73"/>
|
||||
<EditorIndex Value="0"/>
|
||||
<UsageCount Value="22"/>
|
||||
<Bookmarks Count="1">
|
||||
<Item0 X="5" Y="168" ID="1"/>
|
||||
</Bookmarks>
|
||||
<Loaded Value="True"/>
|
||||
</Unit1>
|
||||
<Unit2>
|
||||
<Filename Value="../../../install/fpcsrc/packages/fcl-res/src/resreader.pp"/>
|
||||
<UnitName Value="resreader"/>
|
||||
<CursorPos X="21" Y="29"/>
|
||||
<TopLine Value="17"/>
|
||||
<UsageCount Value="11"/>
|
||||
</Unit2>
|
||||
<Unit3>
|
||||
<Filename Value="../../../install/fpcsrc/packages/fcl-res/src/elfreader.pp"/>
|
||||
<UnitName Value="elfreader"/>
|
||||
<CursorPos X="1" Y="27"/>
|
||||
<TopLine Value="18"/>
|
||||
<UsageCount Value="11"/>
|
||||
</Unit3>
|
||||
<Unit4>
|
||||
<Filename Value="../../../install/fpcsrc/packages/fcl-res/src/resource.pp"/>
|
||||
<UnitName Value="resource"/>
|
||||
<CursorPos X="3" Y="129"/>
|
||||
<TopLine Value="182"/>
|
||||
<UsageCount Value="11"/>
|
||||
</Unit4>
|
||||
<Unit5>
|
||||
<Filename Value="reaboutunit.pas"/>
|
||||
<IsPartOfProject Value="True"/>
|
||||
<ComponentName Value="reAboutForm"/>
|
||||
<ResourceBaseClass Value="Form"/>
|
||||
<UnitName Value="reAboutUnit"/>
|
||||
<CursorPos X="27" Y="3"/>
|
||||
<TopLine Value="1"/>
|
||||
<UsageCount Value="22"/>
|
||||
</Unit5>
|
||||
<Unit6>
|
||||
<Filename Value="../../../install/fpcsrc/packages/fcl-res/src/resourcetree.pp"/>
|
||||
<UnitName Value="resourcetree"/>
|
||||
<CursorPos X="1" Y="10"/>
|
||||
<TopLine Value="1"/>
|
||||
<UsageCount Value="11"/>
|
||||
</Unit6>
|
||||
<Unit7>
|
||||
<Filename Value="../../../install/fpcsrc/packages/fcl-res/src/bitmapresource.pp"/>
|
||||
<UnitName Value="bitmapresource"/>
|
||||
<CursorPos X="3" Y="188"/>
|
||||
<TopLine Value="186"/>
|
||||
<UsageCount Value="11"/>
|
||||
</Unit7>
|
||||
<Unit8>
|
||||
<Filename Value="reconstsunit.pas"/>
|
||||
<IsPartOfProject Value="True"/>
|
||||
<UnitName Value="reConstsUnit"/>
|
||||
<CursorPos X="1" Y="23"/>
|
||||
<TopLine Value="11"/>
|
||||
<UsageCount Value="22"/>
|
||||
</Unit8>
|
||||
<Unit9>
|
||||
<Filename Value="../../lazarus/doceditor/lazdeopts.pp"/>
|
||||
<UnitName Value="LazDEOpts"/>
|
||||
<CursorPos X="1" Y="56"/>
|
||||
<TopLine Value="23"/>
|
||||
<UsageCount Value="10"/>
|
||||
</Unit9>
|
||||
<Unit10>
|
||||
<Filename Value="../../lazarus/doceditor/fpdeutil.pp"/>
|
||||
<UnitName Value="FPDEUtil"/>
|
||||
<CursorPos X="1" Y="1"/>
|
||||
<TopLine Value="1"/>
|
||||
<UsageCount Value="10"/>
|
||||
</Unit10>
|
||||
<Unit11>
|
||||
<Filename Value="../../lazarus/doceditor/frmoptions.pp"/>
|
||||
<ComponentName Value="OptionsForm"/>
|
||||
<HasResources Value="True"/>
|
||||
<ResourceBaseClass Value="Form"/>
|
||||
<UnitName Value="frmOptions"/>
|
||||
<CursorPos X="1" Y="1"/>
|
||||
<TopLine Value="71"/>
|
||||
<UsageCount Value="10"/>
|
||||
</Unit11>
|
||||
<Unit12>
|
||||
<Filename Value="../../lazarus/doceditor/lazdemsg.pp"/>
|
||||
<UnitName Value="LazDEMsg"/>
|
||||
<CursorPos X="1" Y="1"/>
|
||||
<TopLine Value="148"/>
|
||||
<UsageCount Value="10"/>
|
||||
</Unit12>
|
||||
<Unit13>
|
||||
<Filename Value="/usr/local/share/lazarus/lcl/interfaces/gtk/gtkwidgetset.inc"/>
|
||||
<CursorPos X="1" Y="1220"/>
|
||||
<TopLine Value="1203"/>
|
||||
<UsageCount Value="10"/>
|
||||
</Unit13>
|
||||
<Unit14>
|
||||
<Filename Value="../../../install/fpcsrc/packages/fcl-res/src/groupiconresource.pp"/>
|
||||
<UnitName Value="groupiconresource"/>
|
||||
<CursorPos X="15" Y="35"/>
|
||||
<TopLine Value="18"/>
|
||||
<UsageCount Value="11"/>
|
||||
</Unit14>
|
||||
<Unit15>
|
||||
<Filename Value="../../../install/fpcsrc/packages/fcl-res/src/groupresource.pp"/>
|
||||
<UnitName Value="groupresource"/>
|
||||
<CursorPos X="3" Y="29"/>
|
||||
<TopLine Value="32"/>
|
||||
<UsageCount Value="11"/>
|
||||
</Unit15>
|
||||
<Unit16>
|
||||
<Filename Value="/usr/local/share/lazarus/lcl/forms.pp"/>
|
||||
<UnitName Value="Forms"/>
|
||||
<CursorPos X="17" Y="675"/>
|
||||
<TopLine Value="658"/>
|
||||
<UsageCount Value="10"/>
|
||||
</Unit16>
|
||||
<Unit17>
|
||||
<Filename Value="../../doc_manager/gui/dmg_aboutunit.pas"/>
|
||||
<ComponentName Value="AboutForm"/>
|
||||
<HasResources Value="True"/>
|
||||
<ResourceBaseClass Value="Form"/>
|
||||
<UnitName Value="dmg_AboutUnit"/>
|
||||
<CursorPos X="24" Y="9"/>
|
||||
<TopLine Value="60"/>
|
||||
<UsageCount Value="10"/>
|
||||
</Unit17>
|
||||
</Units>
|
||||
<JumpHistory Count="20" HistoryIndex="19">
|
||||
<Position1>
|
||||
<Filename Value="remainunit.pas"/>
|
||||
<Caret Line="80" Column="29" TopLine="67"/>
|
||||
</Position1>
|
||||
<Position2>
|
||||
<Filename Value="remainunit.pas"/>
|
||||
<Caret Line="81" Column="29" TopLine="67"/>
|
||||
</Position2>
|
||||
<Position3>
|
||||
<Filename Value="remainunit.pas"/>
|
||||
<Caret Line="82" Column="29" TopLine="67"/>
|
||||
</Position3>
|
||||
<Position4>
|
||||
<Filename Value="remainunit.pas"/>
|
||||
<Caret Line="83" Column="29" TopLine="67"/>
|
||||
</Position4>
|
||||
<Position5>
|
||||
<Filename Value="remainunit.pas"/>
|
||||
<Caret Line="84" Column="29" TopLine="67"/>
|
||||
</Position5>
|
||||
<Position6>
|
||||
<Filename Value="remainunit.pas"/>
|
||||
<Caret Line="85" Column="29" TopLine="67"/>
|
||||
</Position6>
|
||||
<Position7>
|
||||
<Filename Value="remainunit.pas"/>
|
||||
<Caret Line="208" Column="100" TopLine="179"/>
|
||||
</Position7>
|
||||
<Position8>
|
||||
<Filename Value="remainunit.pas"/>
|
||||
<Caret Line="91" Column="23" TopLine="72"/>
|
||||
</Position8>
|
||||
<Position9>
|
||||
<Filename Value="remainunit.pas"/>
|
||||
<Caret Line="134" Column="25" TopLine="112"/>
|
||||
</Position9>
|
||||
<Position10>
|
||||
<Filename Value="remainunit.pas"/>
|
||||
<Caret Line="134" Column="25" TopLine="112"/>
|
||||
</Position10>
|
||||
<Position11>
|
||||
<Filename Value="remainunit.pas"/>
|
||||
<Caret Line="109" Column="20" TopLine="107"/>
|
||||
</Position11>
|
||||
<Position12>
|
||||
<Filename Value="remainunit.pas"/>
|
||||
<Caret Line="109" Column="23" TopLine="107"/>
|
||||
</Position12>
|
||||
<Position13>
|
||||
<Filename Value="remainunit.pas"/>
|
||||
<Caret Line="57" Column="38" TopLine="35"/>
|
||||
</Position13>
|
||||
<Position14>
|
||||
<Filename Value="remainunit.pas"/>
|
||||
<Caret Line="172" Column="3" TopLine="170"/>
|
||||
</Position14>
|
||||
<Position15>
|
||||
<Filename Value="remainunit.pas"/>
|
||||
<Caret Line="67" Column="39" TopLine="40"/>
|
||||
</Position15>
|
||||
<Position16>
|
||||
<Filename Value="remainunit.pas"/>
|
||||
<Caret Line="57" Column="44" TopLine="51"/>
|
||||
</Position16>
|
||||
<Position17>
|
||||
<Filename Value="remainunit.pas"/>
|
||||
<Caret Line="105" Column="26" TopLine="105"/>
|
||||
</Position17>
|
||||
<Position18>
|
||||
<Filename Value="remainunit.pas"/>
|
||||
<Caret Line="178" Column="1" TopLine="173"/>
|
||||
</Position18>
|
||||
<Position19>
|
||||
<Filename Value="remainunit.pas"/>
|
||||
<Caret Line="9" Column="57" TopLine="1"/>
|
||||
</Position19>
|
||||
<Position20>
|
||||
<Filename Value="remainunit.pas"/>
|
||||
<Caret Line="67" Column="1" TopLine="50"/>
|
||||
</Position20>
|
||||
</JumpHistory>
|
||||
</ProjectOptions>
|
||||
<CompilerOptions>
|
||||
<Version Value="8"/>
|
||||
<Target>
|
||||
<Filename Value="ResExploer"/>
|
||||
</Target>
|
||||
<SearchPaths>
|
||||
<IncludeFiles Value="$(ProjOutDir)/"/>
|
||||
<UnitOutputDirectory Value="lib/$(TargetCPU)-$(TargetOS)"/>
|
||||
</SearchPaths>
|
||||
<Parsing>
|
||||
<SyntaxOptions>
|
||||
<UseAnsiStrings Value="True"/>
|
||||
</SyntaxOptions>
|
||||
</Parsing>
|
||||
<Linking>
|
||||
<Options>
|
||||
<Win32>
|
||||
<GraphicApplication Value="True"/>
|
||||
</Win32>
|
||||
</Options>
|
||||
</Linking>
|
||||
<Other>
|
||||
<CompilerPath Value="$(CompPath)"/>
|
||||
</Other>
|
||||
</CompilerOptions>
|
||||
<Debugging>
|
||||
<Exceptions Count="3">
|
||||
<Item1>
|
||||
<Name Value="EAbort"/>
|
||||
</Item1>
|
||||
<Item2>
|
||||
<Name Value="ECodetoolError"/>
|
||||
</Item2>
|
||||
<Item3>
|
||||
<Name Value="EFOpenError"/>
|
||||
</Item3>
|
||||
</Exceptions>
|
||||
</Debugging>
|
||||
</CONFIG>
|
22
examples/lazresexploer/ResExploer.lpr
Normal file
22
examples/lazresexploer/ResExploer.lpr
Normal file
@ -0,0 +1,22 @@
|
||||
program ResExploer;
|
||||
|
||||
{$mode objfpc}{$H+}
|
||||
|
||||
uses
|
||||
{$IFDEF UNIX}{$IFDEF UseCThreads}
|
||||
cthreads,
|
||||
{$ENDIF}{$ENDIF}
|
||||
Interfaces, // this includes the LCL widgetset
|
||||
Forms, reMainUnit, reAboutUnit, reConstsUnit
|
||||
{ you can add units after this };
|
||||
|
||||
{$R ResExploer.res}
|
||||
|
||||
begin
|
||||
Application.Initialize;
|
||||
Application.CreateForm(TreMainForm, reMainForm);
|
||||
if Paramcount>0 then
|
||||
reMainForm.OpenFile(ParamStr(1));
|
||||
Application.Run;
|
||||
end.
|
||||
|
BIN
examples/lazresexploer/ResExploer.res
Normal file
BIN
examples/lazresexploer/ResExploer.res
Normal file
Binary file not shown.
199
examples/lazresexploer/languages/ResExploer.po
Normal file
199
examples/lazresexploer/languages/ResExploer.po
Normal file
@ -0,0 +1,199 @@
|
||||
msgid ""
|
||||
msgstr "Content-Type: text/plain; charset=UTF-8"
|
||||
|
||||
#: reconstsunit.sabout
|
||||
msgctxt "reconstsunit.sabout"
|
||||
msgid "About..."
|
||||
msgstr ""
|
||||
|
||||
#: reconstsunit.sbuilddate
|
||||
msgid "Build date : "
|
||||
msgstr ""
|
||||
|
||||
#: reconstsunit.scarbonwidgetset
|
||||
msgid "Carbon widget set"
|
||||
msgstr ""
|
||||
|
||||
#: reconstsunit.sexit
|
||||
msgctxt "reconstsunit.sexit"
|
||||
msgid "Exit"
|
||||
msgstr ""
|
||||
|
||||
#: reconstsunit.sfile
|
||||
msgctxt "reconstsunit.sfile"
|
||||
msgid "File"
|
||||
msgstr ""
|
||||
|
||||
#: reconstsunit.sfpcversion
|
||||
msgid "FPC version : "
|
||||
msgstr ""
|
||||
|
||||
#: reconstsunit.sfpguiwidgetset
|
||||
msgid "FpGUI widget set"
|
||||
msgstr ""
|
||||
|
||||
#: reconstsunit.sgtk2widgetset
|
||||
msgid "GTK 2 widget set"
|
||||
msgstr ""
|
||||
|
||||
#: reconstsunit.sgtkwidgetset
|
||||
msgid "GTK widget set"
|
||||
msgstr ""
|
||||
|
||||
#: reconstsunit.shelp
|
||||
msgctxt "reconstsunit.shelp"
|
||||
msgid "Help"
|
||||
msgstr ""
|
||||
|
||||
#: reconstsunit.simage
|
||||
msgctxt "reconstsunit.simage"
|
||||
msgid "Image"
|
||||
msgstr ""
|
||||
|
||||
#: reconstsunit.slclversion
|
||||
msgid "LCL Version: "
|
||||
msgstr ""
|
||||
|
||||
#: reconstsunit.slicense
|
||||
msgid "This program is free software under GNU GPL 2 license, see COPYING file"
|
||||
msgstr ""
|
||||
|
||||
#: reconstsunit.sopen
|
||||
msgctxt "reconstsunit.sopen"
|
||||
msgid "Open..."
|
||||
msgstr ""
|
||||
|
||||
#: reconstsunit.sotherguiwidgetset
|
||||
msgid "Other gui"
|
||||
msgstr ""
|
||||
|
||||
#: reconstsunit.sqtwidgetset
|
||||
msgid "QT widget set"
|
||||
msgstr ""
|
||||
|
||||
#: reconstsunit.sresourceexplorer
|
||||
msgid "Resource explorer"
|
||||
msgstr ""
|
||||
|
||||
#: reconstsunit.ssaveresource
|
||||
msgctxt "reconstsunit.ssaveresource"
|
||||
msgid "Save resource..."
|
||||
msgstr ""
|
||||
|
||||
#: reconstsunit.sstrings
|
||||
msgid "Strings"
|
||||
msgstr ""
|
||||
|
||||
#: reconstsunit.stargetcpu
|
||||
msgid "Target CPU : "
|
||||
msgstr ""
|
||||
|
||||
#: reconstsunit.stargetos
|
||||
msgid "Target OS : "
|
||||
msgstr ""
|
||||
|
||||
#: reconstsunit.swin32_64widgetset
|
||||
msgid "Win32/Win64 widget set"
|
||||
msgstr ""
|
||||
|
||||
#: reconstsunit.swincewidgetset
|
||||
msgid "WinCE widget set"
|
||||
msgstr ""
|
||||
|
||||
#: TREABOUTFORM.CAPTION
|
||||
msgid "reAboutForm"
|
||||
msgstr ""
|
||||
|
||||
#: TREABOUTFORM.LABEL2.CAPTION
|
||||
msgid "by Lagunov A.A. (alexs)"
|
||||
msgstr ""
|
||||
|
||||
#: TREABOUTFORM.LBLAPPNAME.CAPTION
|
||||
msgctxt "TREABOUTFORM.LBLAPPNAME.CAPTION"
|
||||
msgid "App name"
|
||||
msgstr ""
|
||||
|
||||
#: TREABOUTFORM.LBLBUILDDATE.CAPTION
|
||||
msgid "Build date :"
|
||||
msgstr ""
|
||||
|
||||
#: TREABOUTFORM.LBLFPCVERSION.CAPTION
|
||||
msgid "FPC Version :"
|
||||
msgstr ""
|
||||
|
||||
#: TREABOUTFORM.LBLLCLVERSION.CAPTION
|
||||
msgid "LCL Version :"
|
||||
msgstr ""
|
||||
|
||||
#: TREABOUTFORM.LBLLICENSE.CAPTION
|
||||
msgctxt "TREABOUTFORM.LBLLICENSE.CAPTION"
|
||||
msgid "App name"
|
||||
msgstr ""
|
||||
|
||||
#: TREABOUTFORM.LBLTARGCPU.CAPTION
|
||||
msgid "Target CPU :"
|
||||
msgstr ""
|
||||
|
||||
#: TREABOUTFORM.LBLTARGETOS.CAPTION
|
||||
msgid "Target OS :"
|
||||
msgstr ""
|
||||
|
||||
#: TREABOUTFORM.LBLWIDGETNAME.CAPTION
|
||||
msgid "Widget Name"
|
||||
msgstr ""
|
||||
|
||||
#: TREMAINFORM.CAPTION
|
||||
msgid "reMainForm"
|
||||
msgstr ""
|
||||
|
||||
#: TREMAINFORM.FILEEXIT.CAPTION
|
||||
msgctxt "TREMAINFORM.FILEEXIT.CAPTION"
|
||||
msgid "Exit"
|
||||
msgstr ""
|
||||
|
||||
#: TREMAINFORM.FILEOPEN.CAPTION
|
||||
msgctxt "TREMAINFORM.FILEOPEN.CAPTION"
|
||||
msgid "Open..."
|
||||
msgstr ""
|
||||
|
||||
#: TREMAINFORM.FILESAVE.CAPTION
|
||||
msgctxt "TREMAINFORM.FILESAVE.CAPTION"
|
||||
msgid "Save resource..."
|
||||
msgstr ""
|
||||
|
||||
#: TREMAINFORM.HLPABOUT.CAPTION
|
||||
msgctxt "TREMAINFORM.HLPABOUT.CAPTION"
|
||||
msgid "About..."
|
||||
msgstr ""
|
||||
|
||||
#: TREMAINFORM.MENUITEM1.CAPTION
|
||||
msgctxt "TREMAINFORM.MENUITEM1.CAPTION"
|
||||
msgid "File"
|
||||
msgstr ""
|
||||
|
||||
#: TREMAINFORM.MENUITEM2.CAPTION
|
||||
msgctxt "TREMAINFORM.MENUITEM2.CAPTION"
|
||||
msgid "Help"
|
||||
msgstr ""
|
||||
|
||||
#: TREMAINFORM.MENUITEM5.CAPTION
|
||||
msgid "-"
|
||||
msgstr ""
|
||||
|
||||
#: TREMAINFORM.TABIMAGE.CAPTION
|
||||
msgctxt "TREMAINFORM.TABIMAGE.CAPTION"
|
||||
msgid "Image"
|
||||
msgstr ""
|
||||
|
||||
#: TREMAINFORM.TABSTRING.CAPTION
|
||||
msgid "String"
|
||||
msgstr ""
|
||||
|
||||
#: TREMAINFORM.TOOLBAR1.CAPTION
|
||||
msgid "ToolBar1"
|
||||
msgstr ""
|
||||
|
||||
#: TREMAINFORM.TOOLBUTTON3.CAPTION
|
||||
msgid "ToolButton3"
|
||||
msgstr ""
|
||||
|
199
examples/lazresexploer/languages/ResExploer.ru.po
Normal file
199
examples/lazresexploer/languages/ResExploer.ru.po
Normal file
@ -0,0 +1,199 @@
|
||||
msgid ""
|
||||
msgstr "Content-Type: text/plain; charset=UTF-8"
|
||||
|
||||
#: reconstsunit.sabout
|
||||
msgctxt "reconstsunit.sabout"
|
||||
msgid "About..."
|
||||
msgstr "О программе..."
|
||||
|
||||
#: reconstsunit.sbuilddate
|
||||
msgid "Build date : "
|
||||
msgstr "Дата сборки : "
|
||||
|
||||
#: reconstsunit.scarbonwidgetset
|
||||
msgid "Carbon widget set"
|
||||
msgstr ""
|
||||
|
||||
#: reconstsunit.sexit
|
||||
msgctxt "reconstsunit.sexit"
|
||||
msgid "Exit"
|
||||
msgstr "Закрыть"
|
||||
|
||||
#: reconstsunit.sfile
|
||||
msgctxt "reconstsunit.sfile"
|
||||
msgid "File"
|
||||
msgstr "Файл"
|
||||
|
||||
#: reconstsunit.sfpcversion
|
||||
msgid "FPC version : "
|
||||
msgstr "Версия FPC : "
|
||||
|
||||
#: reconstsunit.sfpguiwidgetset
|
||||
msgid "FpGUI widget set"
|
||||
msgstr ""
|
||||
|
||||
#: reconstsunit.sgtk2widgetset
|
||||
msgid "GTK 2 widget set"
|
||||
msgstr ""
|
||||
|
||||
#: reconstsunit.sgtkwidgetset
|
||||
msgid "GTK widget set"
|
||||
msgstr ""
|
||||
|
||||
#: reconstsunit.shelp
|
||||
msgctxt "reconstsunit.shelp"
|
||||
msgid "Help"
|
||||
msgstr "Справка"
|
||||
|
||||
#: reconstsunit.simage
|
||||
msgctxt "reconstsunit.simage"
|
||||
msgid "Image"
|
||||
msgstr "Изображение"
|
||||
|
||||
#: reconstsunit.slclversion
|
||||
msgid "LCL Version: "
|
||||
msgstr "Версия LCL : "
|
||||
|
||||
#: reconstsunit.slicense
|
||||
msgid "This program is free software under GNU GPL 2 license, see COPYING file"
|
||||
msgstr "Эта свободная программа и распространяется по лицензией GPL 2. (см. файл COPYING)"
|
||||
|
||||
#: reconstsunit.sopen
|
||||
msgctxt "reconstsunit.sopen"
|
||||
msgid "Open..."
|
||||
msgstr "Открыть..."
|
||||
|
||||
#: reconstsunit.sotherguiwidgetset
|
||||
msgid "Other gui"
|
||||
msgstr ""
|
||||
|
||||
#: reconstsunit.sqtwidgetset
|
||||
msgid "QT widget set"
|
||||
msgstr ""
|
||||
|
||||
#: reconstsunit.sresourceexplorer
|
||||
msgid "Resource explorer"
|
||||
msgstr "Обзор ресурсов"
|
||||
|
||||
#: reconstsunit.ssaveresource
|
||||
msgctxt "reconstsunit.ssaveresource"
|
||||
msgid "Save resource..."
|
||||
msgstr "Сохранить ресурс..."
|
||||
|
||||
#: reconstsunit.sstrings
|
||||
msgid "Strings"
|
||||
msgstr "Строки"
|
||||
|
||||
#: reconstsunit.stargetcpu
|
||||
msgid "Target CPU : "
|
||||
msgstr "Целевой процессор : "
|
||||
|
||||
#: reconstsunit.stargetos
|
||||
msgid "Target OS : "
|
||||
msgstr "Целевая ОС : "
|
||||
|
||||
#: reconstsunit.swin32_64widgetset
|
||||
msgid "Win32/Win64 widget set"
|
||||
msgstr ""
|
||||
|
||||
#: reconstsunit.swincewidgetset
|
||||
msgid "WinCE widget set"
|
||||
msgstr ""
|
||||
|
||||
#: TREABOUTFORM.CAPTION
|
||||
msgid "reAboutForm"
|
||||
msgstr ""
|
||||
|
||||
#: TREABOUTFORM.LABEL2.CAPTION
|
||||
msgid "by Lagunov A.A. (alexs)"
|
||||
msgstr ""
|
||||
|
||||
#: TREABOUTFORM.LBLAPPNAME.CAPTION
|
||||
msgctxt "TREABOUTFORM.LBLAPPNAME.CAPTION"
|
||||
msgid "App name"
|
||||
msgstr ""
|
||||
|
||||
#: TREABOUTFORM.LBLBUILDDATE.CAPTION
|
||||
msgid "Build date :"
|
||||
msgstr ""
|
||||
|
||||
#: TREABOUTFORM.LBLFPCVERSION.CAPTION
|
||||
msgid "FPC Version :"
|
||||
msgstr ""
|
||||
|
||||
#: TREABOUTFORM.LBLLCLVERSION.CAPTION
|
||||
msgid "LCL Version :"
|
||||
msgstr ""
|
||||
|
||||
#: TREABOUTFORM.LBLLICENSE.CAPTION
|
||||
msgctxt "TREABOUTFORM.LBLLICENSE.CAPTION"
|
||||
msgid "App name"
|
||||
msgstr ""
|
||||
|
||||
#: TREABOUTFORM.LBLTARGCPU.CAPTION
|
||||
msgid "Target CPU :"
|
||||
msgstr ""
|
||||
|
||||
#: TREABOUTFORM.LBLTARGETOS.CAPTION
|
||||
msgid "Target OS :"
|
||||
msgstr ""
|
||||
|
||||
#: TREABOUTFORM.LBLWIDGETNAME.CAPTION
|
||||
msgid "Widget Name"
|
||||
msgstr ""
|
||||
|
||||
#: TREMAINFORM.CAPTION
|
||||
msgid "reMainForm"
|
||||
msgstr ""
|
||||
|
||||
#: TREMAINFORM.FILEEXIT.CAPTION
|
||||
msgctxt "TREMAINFORM.FILEEXIT.CAPTION"
|
||||
msgid "Exit"
|
||||
msgstr "Закрыть"
|
||||
|
||||
#: TREMAINFORM.FILEOPEN.CAPTION
|
||||
msgctxt "TREMAINFORM.FILEOPEN.CAPTION"
|
||||
msgid "Open..."
|
||||
msgstr "Открыть..."
|
||||
|
||||
#: TREMAINFORM.FILESAVE.CAPTION
|
||||
msgctxt "TREMAINFORM.FILESAVE.CAPTION"
|
||||
msgid "Save resource..."
|
||||
msgstr "Сохранить ресурс..."
|
||||
|
||||
#: TREMAINFORM.HLPABOUT.CAPTION
|
||||
msgctxt "TREMAINFORM.HLPABOUT.CAPTION"
|
||||
msgid "About..."
|
||||
msgstr "О программе..."
|
||||
|
||||
#: TREMAINFORM.MENUITEM1.CAPTION
|
||||
msgctxt "TREMAINFORM.MENUITEM1.CAPTION"
|
||||
msgid "File"
|
||||
msgstr "Файл"
|
||||
|
||||
#: TREMAINFORM.MENUITEM2.CAPTION
|
||||
msgctxt "TREMAINFORM.MENUITEM2.CAPTION"
|
||||
msgid "Help"
|
||||
msgstr "Справка"
|
||||
|
||||
#: TREMAINFORM.MENUITEM5.CAPTION
|
||||
msgid "-"
|
||||
msgstr ""
|
||||
|
||||
#: TREMAINFORM.TABIMAGE.CAPTION
|
||||
msgctxt "TREMAINFORM.TABIMAGE.CAPTION"
|
||||
msgid "Image"
|
||||
msgstr "Изображение"
|
||||
|
||||
#: TREMAINFORM.TABSTRING.CAPTION
|
||||
msgid "String"
|
||||
msgstr ""
|
||||
|
||||
#: TREMAINFORM.TOOLBAR1.CAPTION
|
||||
msgid "ToolBar1"
|
||||
msgstr ""
|
||||
|
||||
#: TREMAINFORM.TOOLBUTTON3.CAPTION
|
||||
msgid "ToolButton3"
|
||||
msgstr ""
|
||||
|
132
examples/lazresexploer/reaboutunit.lfm
Normal file
132
examples/lazresexploer/reaboutunit.lfm
Normal file
@ -0,0 +1,132 @@
|
||||
object reAboutForm: TreAboutForm
|
||||
Left = 428
|
||||
Height = 471
|
||||
Top = 293
|
||||
Width = 527
|
||||
ActiveControl = ListBox1
|
||||
Caption = 'reAboutForm'
|
||||
ClientHeight = 471
|
||||
ClientWidth = 527
|
||||
OnCreate = FormCreate
|
||||
Position = poScreenCenter
|
||||
LCLVersion = '0.9.29'
|
||||
object ButtonPanel1: TButtonPanel
|
||||
Left = 6
|
||||
Height = 40
|
||||
Top = 425
|
||||
Width = 515
|
||||
TabOrder = 0
|
||||
ShowButtons = [pbClose, pbHelp]
|
||||
end
|
||||
object Label2: TLabel
|
||||
AnchorSideTop.Control = Owner
|
||||
Left = 0
|
||||
Height = 18
|
||||
Top = 24
|
||||
Width = 527
|
||||
Align = alTop
|
||||
Alignment = taCenter
|
||||
Caption = 'by Lagunov A.A. (alexs)'
|
||||
ParentColor = False
|
||||
end
|
||||
object lblLicense: TLabel
|
||||
AnchorSideTop.Control = Label2
|
||||
Left = 0
|
||||
Height = 18
|
||||
Top = 42
|
||||
Width = 527
|
||||
Align = alTop
|
||||
Alignment = taCenter
|
||||
Caption = 'App name'
|
||||
ParentColor = False
|
||||
WordWrap = True
|
||||
end
|
||||
object lblBuildDate: TLabel
|
||||
AnchorSideTop.Control = lblLicense
|
||||
Left = 0
|
||||
Height = 18
|
||||
Top = 66
|
||||
Width = 527
|
||||
Align = alTop
|
||||
Alignment = taCenter
|
||||
BorderSpacing.Top = 6
|
||||
Caption = 'Build date :'
|
||||
ParentColor = False
|
||||
end
|
||||
object lblLCLVersion: TLabel
|
||||
AnchorSideTop.Control = lblBuildDate
|
||||
Left = 0
|
||||
Height = 18
|
||||
Top = 84
|
||||
Width = 527
|
||||
Align = alTop
|
||||
Alignment = taCenter
|
||||
Caption = 'LCL Version :'
|
||||
ParentColor = False
|
||||
end
|
||||
object lblFPCVersion: TLabel
|
||||
AnchorSideTop.Control = lblLCLVersion
|
||||
Left = 0
|
||||
Height = 18
|
||||
Top = 102
|
||||
Width = 527
|
||||
Align = alTop
|
||||
Alignment = taCenter
|
||||
Caption = 'FPC Version :'
|
||||
ParentColor = False
|
||||
end
|
||||
object lblTargCPU: TLabel
|
||||
AnchorSideTop.Control = lblFPCVersion
|
||||
Left = 0
|
||||
Height = 18
|
||||
Top = 120
|
||||
Width = 527
|
||||
Align = alTop
|
||||
Alignment = taCenter
|
||||
Caption = 'Target CPU :'
|
||||
ParentColor = False
|
||||
end
|
||||
object lblTargetOS: TLabel
|
||||
Left = 0
|
||||
Height = 18
|
||||
Top = 138
|
||||
Width = 527
|
||||
Align = alTop
|
||||
Alignment = taCenter
|
||||
Caption = 'Target OS :'
|
||||
ParentColor = False
|
||||
end
|
||||
object lblWidgetName: TLabel
|
||||
AnchorSideTop.Control = lblTargetOS
|
||||
Left = 0
|
||||
Height = 18
|
||||
Top = 156
|
||||
Width = 527
|
||||
Align = alTop
|
||||
Alignment = taCenter
|
||||
Caption = 'Widget Name'
|
||||
ParentColor = False
|
||||
end
|
||||
object ListBox1: TListBox
|
||||
Left = 0
|
||||
Height = 245
|
||||
Top = 174
|
||||
Width = 527
|
||||
Align = alClient
|
||||
ItemHeight = 0
|
||||
TabOrder = 1
|
||||
TopIndex = -1
|
||||
end
|
||||
object lblAppName: TLabel
|
||||
AnchorSideTop.Control = Label2
|
||||
Left = 0
|
||||
Height = 18
|
||||
Top = 6
|
||||
Width = 527
|
||||
Align = alTop
|
||||
Alignment = taCenter
|
||||
BorderSpacing.Top = 6
|
||||
Caption = 'App name'
|
||||
ParentColor = False
|
||||
end
|
||||
end
|
105
examples/lazresexploer/reaboutunit.pas
Normal file
105
examples/lazresexploer/reaboutunit.pas
Normal file
@ -0,0 +1,105 @@
|
||||
unit reAboutUnit;
|
||||
|
||||
{$mode objfpc}{$H+}
|
||||
|
||||
interface
|
||||
|
||||
uses
|
||||
Classes, SysUtils, FileUtil, LResources, Forms, Controls, Graphics, Dialogs,
|
||||
ButtonPanel, StdCtrls, versionresource;
|
||||
|
||||
type
|
||||
|
||||
{ TreAboutForm }
|
||||
|
||||
TreAboutForm = class(TForm)
|
||||
ButtonPanel1: TButtonPanel;
|
||||
lblLicense: TLabel;
|
||||
Label2: TLabel;
|
||||
lblBuildDate: TLabel;
|
||||
lblFPCVersion: TLabel;
|
||||
lblLCLVersion: TLabel;
|
||||
lblTargCPU: TLabel;
|
||||
lblTargetOS: TLabel;
|
||||
lblWidgetName: TLabel;
|
||||
ListBox1: TListBox;
|
||||
lblAppName: TLabel;
|
||||
procedure FormCreate(Sender: TObject);
|
||||
private
|
||||
procedure ParceVersionInfo(V:TVersionResource);
|
||||
public
|
||||
{ public declarations }
|
||||
end;
|
||||
|
||||
var
|
||||
reAboutForm: TreAboutForm;
|
||||
|
||||
const
|
||||
appBuildDate = {$I %DATE%};
|
||||
TargetOS = {$I %FPCTARGETOS%};
|
||||
fpcVersion = {$I %FPCVERSION%};
|
||||
TargetCPU = {$I %FPCTARGETCPU%};
|
||||
|
||||
implementation
|
||||
uses reConstsUnit, resource, resreader, LCLVersion,
|
||||
{$IFDEF WINDOWS}
|
||||
winpeimagereader
|
||||
{$ELSE}
|
||||
elfreader
|
||||
{$ENDIF}
|
||||
;
|
||||
|
||||
{$R *.lfm}
|
||||
|
||||
{ TreAboutForm }
|
||||
|
||||
procedure TreAboutForm.FormCreate(Sender: TObject);
|
||||
var
|
||||
Res:TResources;
|
||||
i:integer;
|
||||
Reader:TAbstractResourceReader;
|
||||
V:TVersionResource;
|
||||
begin
|
||||
Caption:=sAbout;
|
||||
lblTargCPU.Caption:=sLCLVersion + lcl_version;
|
||||
lblBuildDate.Caption:=sBuildDate + appBuildDate;
|
||||
lblLCLVersion.Caption:=sLCLVersion + LCLVersion;
|
||||
lblFPCVersion.Caption:=sFpcVersion + fpcVersion;
|
||||
lblTargCPU.Caption:=sTargetCPU + TargetCPU;
|
||||
lblTargetOS.Caption:=sTargetOS + TargetOS;
|
||||
lblAppName.Caption:=sResourceExplorer;
|
||||
lblWidgetName.Caption:=LCLVersionStr;
|
||||
lblLicense.Caption:=sLicense;
|
||||
|
||||
ListBox1.Items.Clear;
|
||||
{$IFDEF WINDOWS}
|
||||
Reader:=TWinPEImageResourceReader.Create;
|
||||
{$ELSE}
|
||||
Reader:=TElfResourceReader.Create;
|
||||
{$ENDIF}
|
||||
Res:=TResources.Create;
|
||||
Res.LoadFromFile(ParamStr(0), Reader);
|
||||
for i:=0 to Res.Count-1 do
|
||||
begin
|
||||
if Res[i] is TVersionResource then
|
||||
V:=Res[i] as TVersionResource;
|
||||
end;
|
||||
if Assigned(V) then
|
||||
ParceVersionInfo(V);
|
||||
Res.Free;
|
||||
Reader.Free;
|
||||
end;
|
||||
|
||||
procedure TreAboutForm.ParceVersionInfo(V: TVersionResource);
|
||||
var
|
||||
i,j:integer;
|
||||
begin
|
||||
for i:=0 to V.StringFileInfo.Count-1 do
|
||||
begin
|
||||
for j:=0 to V.StringFileInfo[i].Count-1 do
|
||||
ListBox1.Items.Add(SysToUTF8(V.StringFileInfo[i].Keys[j])+' = ' + SysToUTF8(V.StringFileInfo[i].ValuesByIndex[j]));
|
||||
end;
|
||||
end;
|
||||
|
||||
end.
|
||||
|
68
examples/lazresexploer/reconstsunit.pas
Normal file
68
examples/lazresexploer/reconstsunit.pas
Normal file
@ -0,0 +1,68 @@
|
||||
unit reConstsUnit;
|
||||
|
||||
{$mode objfpc}{$H+}
|
||||
|
||||
interface
|
||||
|
||||
uses
|
||||
Classes, SysUtils;
|
||||
|
||||
resourcestring
|
||||
sResourceExplorer = 'Resource explorer';
|
||||
sSaveResource = 'Save resource...';
|
||||
sAbout = 'About...';
|
||||
sExit = 'Exit';
|
||||
sOpen = 'Open...';
|
||||
sFile = 'File';
|
||||
sHelp = 'Help';
|
||||
sStrings = 'Strings';
|
||||
sImage = 'Image';
|
||||
sLicense = 'This program is free software under GNU GPL 2 license, see COPYING file';
|
||||
|
||||
|
||||
sLCLVersion = 'LCL Version: ';
|
||||
sBuildDate = 'Build date : ';
|
||||
sFpcVersion = 'FPC version : ';
|
||||
sTargetCPU = 'Target CPU : ';
|
||||
sTargetOS = 'Target OS : ';
|
||||
sGTKWidgetSet = 'GTK widget set';
|
||||
sGTK2WidgetSet = 'GTK 2 widget set';
|
||||
sWin32_64WidgetSet = 'Win32/Win64 widget set';
|
||||
sWinCEWidgetSet = 'WinCE widget set';
|
||||
sCarbonWidgetSet = 'Carbon widget set';
|
||||
sQTWidgetSet = 'QT widget set';
|
||||
sFpGUIWidgetSet = 'FpGUI widget set';
|
||||
sOtherGUIWidgetSet = 'Other gui';
|
||||
|
||||
|
||||
function LCLVersionStr: string;
|
||||
implementation
|
||||
uses gettext, translations, LCLVersion, InterfaceBase;
|
||||
|
||||
function LCLVersionStr: string;
|
||||
begin
|
||||
case WidgetSet.LCLPlatform of
|
||||
lpGtk:Result:=sGTKWidgetSet;
|
||||
lpGtk2:Result:=sGTK2WidgetSet;
|
||||
lpWin32:Result:=sWin32_64WidgetSet;
|
||||
lpWinCE:Result:=sWinCEWidgetSet;
|
||||
lpCarbon:Result:=sCarbonWidgetSet;
|
||||
lpQT:Result:=sQTWidgetSet;
|
||||
lpfpGUI:Result:=sFpGUIWidgetSet;
|
||||
else
|
||||
Result:=sOtherGUIWidgetSet;
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TranslateResStrings;
|
||||
var
|
||||
Lang, FallbackLang: String;
|
||||
begin
|
||||
GetLanguageIDs(Lang,FallbackLang); // in unit gettext
|
||||
TranslateUnitResourceStrings('reConstsUnit','languages'+DirectorySeparator+'ResExploer.%s.po', Lang,FallbackLang);
|
||||
end;
|
||||
|
||||
initialization
|
||||
TranslateResStrings;
|
||||
end.
|
||||
|
513
examples/lazresexploer/remainunit.lfm
Normal file
513
examples/lazresexploer/remainunit.lfm
Normal file
@ -0,0 +1,513 @@
|
||||
object reMainForm: TreMainForm
|
||||
Left = 341
|
||||
Height = 605
|
||||
Top = 242
|
||||
Width = 768
|
||||
ActiveControl = StringGrid1
|
||||
Caption = 'reMainForm'
|
||||
ClientHeight = 585
|
||||
ClientWidth = 768
|
||||
Menu = MainMenu1
|
||||
OnCreate = FormCreate
|
||||
Position = poScreenCenter
|
||||
LCLVersion = '0.9.29'
|
||||
object TreeView1: TTreeView
|
||||
Left = 0
|
||||
Height = 506
|
||||
Top = 56
|
||||
Width = 288
|
||||
Align = alLeft
|
||||
DefaultItemHeight = 18
|
||||
Images = ImageList1
|
||||
ReadOnly = True
|
||||
TabOrder = 0
|
||||
OnClick = TreeView1Click
|
||||
Options = [tvoAutoItemHeight, tvoHideSelection, tvoKeepCollapsedNodes, tvoReadOnly, tvoShowButtons, tvoShowLines, tvoShowRoot, tvoToolTips]
|
||||
end
|
||||
object PageControl1: TPageControl
|
||||
Left = 293
|
||||
Height = 506
|
||||
Top = 56
|
||||
Width = 475
|
||||
ActivePage = tabString
|
||||
Align = alClient
|
||||
TabIndex = 0
|
||||
TabOrder = 1
|
||||
object tabString: TTabSheet
|
||||
Caption = 'String'
|
||||
ClientHeight = 480
|
||||
ClientWidth = 467
|
||||
object StringGrid1: TStringGrid
|
||||
Left = 0
|
||||
Height = 480
|
||||
Top = 0
|
||||
Width = 467
|
||||
Align = alClient
|
||||
AutoFillColumns = True
|
||||
ColCount = 2
|
||||
FixedCols = 0
|
||||
FixedRows = 0
|
||||
TabOrder = 0
|
||||
ColWidths = (
|
||||
231
|
||||
232
|
||||
)
|
||||
end
|
||||
end
|
||||
object tabImage: TTabSheet
|
||||
Caption = 'Image'
|
||||
ClientHeight = 477
|
||||
ClientWidth = 467
|
||||
object Image1: TImage
|
||||
Left = 0
|
||||
Height = 477
|
||||
Top = 0
|
||||
Width = 467
|
||||
Align = alClient
|
||||
Center = True
|
||||
end
|
||||
end
|
||||
end
|
||||
object Splitter1: TSplitter
|
||||
Left = 288
|
||||
Height = 506
|
||||
Top = 56
|
||||
Width = 5
|
||||
OnChangeBounds = Splitter1ChangeBounds
|
||||
end
|
||||
object HeaderControl1: THeaderControl
|
||||
Left = 0
|
||||
Height = 30
|
||||
Top = 26
|
||||
Width = 768
|
||||
DragReorder = False
|
||||
Sections = <
|
||||
item
|
||||
Alignment = taLeftJustify
|
||||
Text = 'Resources'
|
||||
Width = 150
|
||||
Visible = True
|
||||
end
|
||||
item
|
||||
Alignment = taLeftJustify
|
||||
Width = 250
|
||||
Visible = True
|
||||
end>
|
||||
OnSectionResize = HeaderControl1SectionResize
|
||||
Align = alTop
|
||||
end
|
||||
object StatusBar1: TStatusBar
|
||||
Left = 0
|
||||
Height = 23
|
||||
Top = 562
|
||||
Width = 768
|
||||
Panels = <>
|
||||
end
|
||||
object ToolBar1: TToolBar
|
||||
Left = 0
|
||||
Height = 26
|
||||
Top = 0
|
||||
Width = 768
|
||||
AutoSize = True
|
||||
Caption = 'ToolBar1'
|
||||
EdgeBorders = [ebTop, ebBottom]
|
||||
Images = ImageList1
|
||||
List = True
|
||||
ShowCaptions = True
|
||||
TabOrder = 5
|
||||
object ToolButton1: TToolButton
|
||||
Left = 1
|
||||
Top = 2
|
||||
Action = fileOpen
|
||||
AutoSize = True
|
||||
end
|
||||
object ToolButton2: TToolButton
|
||||
Left = 67
|
||||
Top = 2
|
||||
Action = fileSave
|
||||
AutoSize = True
|
||||
end
|
||||
object ToolButton3: TToolButton
|
||||
Left = 176
|
||||
Top = 2
|
||||
Width = 8
|
||||
AutoSize = True
|
||||
Caption = 'ToolButton3'
|
||||
Style = tbsSeparator
|
||||
end
|
||||
object ToolButton4: TToolButton
|
||||
Left = 184
|
||||
Top = 2
|
||||
Action = hlpAbout
|
||||
AutoSize = True
|
||||
end
|
||||
end
|
||||
object ActionList1: TActionList
|
||||
Images = ImageList1
|
||||
left = 338
|
||||
top = 166
|
||||
object fileOpen: TAction
|
||||
Category = 'File'
|
||||
Caption = 'Open...'
|
||||
ImageIndex = 0
|
||||
OnExecute = fileOpenExecute
|
||||
end
|
||||
object fileExit: TAction
|
||||
Category = 'File'
|
||||
Caption = 'Exit'
|
||||
ImageIndex = 1
|
||||
OnExecute = fileExitExecute
|
||||
end
|
||||
object hlpAbout: TAction
|
||||
Category = 'Help'
|
||||
Caption = 'About...'
|
||||
ImageIndex = 2
|
||||
OnExecute = hlpAboutExecute
|
||||
end
|
||||
object fileSave: TAction
|
||||
Category = 'File'
|
||||
Caption = 'Save resource...'
|
||||
ImageIndex = 3
|
||||
end
|
||||
end
|
||||
object ImageList1: TImageList
|
||||
Height = 18
|
||||
Width = 18
|
||||
left = 384
|
||||
top = 166
|
||||
Bitmap = {
|
||||
4C69040000001200000012000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
000000000000000000000000000000000000EAC39DFFE6BF96FFE4BB92FFE4BB
|
||||
92FFD1A06CF5D09E6DF6CC965FDAC479427EB2673C0900000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000E5BE96FFFFFF
|
||||
FEFFFDF3E9FFFDF3EAFFFCF2E8FFFAEFE3FFFAF2E7FFEABB88FFCF8555B3B469
|
||||
3D0C000000000000000000000000000000000000000000000000000000000000
|
||||
0000E4BB93FFFEF5EDFFFCDEC5FFFBE0C7FFF9DCC2FFF5D3B4FFFEF9F3FFFAE2
|
||||
C4FFECC193FFC37D489300000000000000000000000000000000000000000000
|
||||
00000000000000000000E4BB92FFFEF6F0FFFCE2CDFFFCE3CDFFFADFC8FFF7D9
|
||||
BCFFF5E9DDFFFAF3EBFFFBF8F3FFCA8353FE0000000000000000000000000000
|
||||
000000000000000000000000000000000000E4BB92FFFEF7F1FFFCE5D2FFFCE4
|
||||
D1FFFBE2CCFFF9DDC4FFF6D7BBFFF3D1AFFFFAEFE4FFCC8758FE000000000000
|
||||
000034B4D9D05EC2E1FA60C3E2FA60C3E2FA60C3E2FA5FC3E2FAE4BB91FFFFF7
|
||||
F2FFFEE7D5FFFEE7D5FFFDE5D1FFFAE0CAFFF9DEC4FFF7D9BCFFFDF2E7FFCC87
|
||||
57FE000000000000000036B3DAF8FDFEFEFFFEFFFFFFFEFEFFFFFDFEFFFFFEFF
|
||||
FFFFE4BA91FFFFF7F0FFFFE7D5FFFDE7D6FFFDE6D4FFFCE4D0FFFBE3CBFFFADC
|
||||
C2FFFEF3E8FFCC8656FE000000000000000035AFDAF0F7FCFEFF8EE4F8FF91DE
|
||||
F5FF9FE0F5FFACE1F6FFCA8452FFFFF7F1FFFFE9D9FFFFEADBFFFFE9D9FFFFE7
|
||||
D7FFFFE5D2FFFFE2CBFFFFF7F1FFCB8555FE000000000000000036AADAF2F1FA
|
||||
FDFF94DEF5FF93DCF4FF64BCE9FF3594DAFF3594DAFF3594DAFF3594DAFF3594
|
||||
DAFF3594DAFF3594DAFF3594DAFF3594DAFFFBF6EFFFCC8355FE000000000000
|
||||
000035ABDAFAE8F6FBFF70BCE7FF55AAE2FF4DA5E0FF91C9EBFFFAF3EFFFFDFE
|
||||
FDFFFFFDFCFFFFFDFCFFFEFDFCFFFEFCFBFFFEFEFDFF3594DAFFEFF2E8FFCE81
|
||||
56FF000000000000000037A6DAFAFEFFFFFFF8FDFFFFF6FDFFFFF5FCFFFFF3FC
|
||||
FEFF9AE4F4FF9AE6F7FF9BE6F6FF9DE5F5FF9EE5F5FF9FE5F4FFDAF3F8FF3594
|
||||
DAFFFDF4EEFFCA8054F9000000000000000036A1DAF9F6FCFEFF94E5F8FF93E5
|
||||
F8FF93E5F8FF91E5F8FF93DBE9FF93D7E3FF93D2DCFF90CED7FF8CC8CFFF86C1
|
||||
C6FFC9D8D6FF3594DAFFC57444E8CA7F53F10000000000000000369ADAF8F2FA
|
||||
FDFF94E6F8FF92E5F8FF90E5F8FF8BE3F8FF86E2F7FF7FE1F7FF77DEF6FF6CDC
|
||||
F6FF5ED9F4FF4FD5F3FFCCF2FBFF3594DAFF0000000000000000000000000000
|
||||
00003594DAF7EFFAFEFF93E5F8FF8FE4F8FF89E3F8FF82E1F7FF7ADFF7FF71DE
|
||||
F6FF67DBF5FF5BD8F4FF4DD4F3FF40D1F2FFCAF2FBFF3594DAFF000000000000
|
||||
00000000000000000000338ED9FBDCF0FAFF98E1F6FF95E0F6FF92DFF6FF8EDE
|
||||
F5FF89DCF5FF85DAF4FF80D9F4FF7AD7F3FF74D5F3FF70D3F2FFC2EAF8FF3594
|
||||
DAFF000000000000000000000000000000002C86D8D12D88D8F72D87D8F72D88
|
||||
D8F72D88D8F72D88D8F72D88D8F72D88D8F72D88D8F72D88D8F72D88D8F72D87
|
||||
D8F72D88D8F72C86D8D100000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
000000000000000000000000000000000000000000000000000000000000FFFF
|
||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF006D9CD4896A9AD2FB6697CFEE0000
|
||||
000000000000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00709ED6DB6D9CD4FF85B1DAFF5A91
|
||||
B9FF6093CBEA0000000000000000FFFFFF00FFFFFF00808080FF7E7E7EFF7C7C
|
||||
7CFF7A7A7AFF777777FF757575FF727272FF719ED4FF6F9ED6FF87B2DCFFABD3
|
||||
E8FFA9D0E6FF5890B8FF598EC6EA0000000000000000FFFFFF00FFFFFF007D7D
|
||||
7DFF999999FF999999FF9A9A9AFF9A9A9AFF9B9B9BFF9B9B9BFF6F9DD3FFAAD1
|
||||
E7FFABD1E7FF98C7E1FF91C2DEFF568FB7FF5289C1EA0000000000000000FFFF
|
||||
FF00FFFFFF007A7A7AFF999999FF529159FF999A99FF9B9B9BFF9C9C9CFF9C9C
|
||||
9CFF6C9AD0FFA7CEE5FF8FC1DFFF89BDDCFF8BBDDCFF538DB6FF4B84BCEA0000
|
||||
000000000000FFFFFF00FFFFFF00777777FF9A9A9AFF3D8A45FF498A4FFF9C9C
|
||||
9CFF9D9D9DFF9D9D9DFF6696CCFFA2CBE3FF89BDDCFF83B9DAFF84B9DAFF518B
|
||||
B5FF437EB6EA000000000000000044944DFF42914BFF3F8D48FF3D8945FF5DA4
|
||||
65FF5AA061FF45834BFF9E9E9EFF9E9E9EFF6092C9FF9EC7E2FF83B8DAFF7DB4
|
||||
D7FF7EB3D7FF4F89B4FF3B79B1EA000000000000000041904AFF94D29FFF91D0
|
||||
9AFF8DCD96FF89CB92FF84C88DFF519858FF417C46FF9F9F9FFF5A8EC4FF98C3
|
||||
E0FF7CB3D7FF74AFD6FF5EC4EDFF4B88B3FF3473ABEA00000000000000003E8B
|
||||
46FF8FCE99FF7DC687FF78C381FF73C07CFF74C07CFF79C281FF49904FFF547F
|
||||
57FF5489BFFF94BFDDFF75ADD4FF63B8E1FF4BD4FFFF428BB8FF2C6EA6EA0000
|
||||
0000000000003B8742FF89CB92FF84C88DFF80C688FF7BC383FF77C17FFF478F
|
||||
4DFF3B743FFFA1A1A1FF4C84BAFF8DBBDBFF6EA8D1FF66A6D1FF5FB4DFFF4785
|
||||
B1FF2569A1EA000000000000000037823EFF347E3BFF317937FF2E7534FF4991
|
||||
50FF468F4CFF39733DFFA1A1A1FFA2A2A2FF457EB4FF88B7D9FF67A3CFFF619E
|
||||
CCFF639FCCFF4583B1FF1F649CEA0000000000000000FFFFFF00FFFFFF006060
|
||||
60FFA0A0A0FF3D7641FF367139FFA2A2A2FFA2A2A2FFA3A3A3FF3D79B0FF82B3
|
||||
D7FF629FCCFF5A9AC9FF5E9BCAFF4381AFFF196098EA0000000000000000FFFF
|
||||
FF00FFFFFF005C5C5CFFA1A1A1FF3C7340FFA0A1A1FFA3A3A3FFA3A3A3FFA4A4
|
||||
A4FF3674AAFF7DAFD4FF5B9AC9FF5495C7FF5896C8FF4180AEFF135C94EA0000
|
||||
000000000000FFFFFF00FFFFFF00585858FFA2A2A2FFA2A2A2FFA3A3A3FFA4A4
|
||||
A4FFA4A4A4FFA5A5A5FF2F6FA5FF78ABD2FF78ABD3FF73A7D1FF69A0CDFF407F
|
||||
AEFF0F5991EA0000000000000000999999FF717171FF545454FF515151FF4F4F
|
||||
4FFF4C4C4CFF4A4A4AFF474747FF454545FF25679DFF3274A8FF3D7CAFFF4784
|
||||
B5FF4E8ABAFF3E7EADFF0C578FEA0000000000000000FFFFFF00FFFFFF00FFFF
|
||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF001D639B161960
|
||||
9839145D9562105A92880D5890A4135C92FC0C578FED00000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
||||
FF00FFFFFF00FFFFFF00FFFFFF000000000000000000FFFFFF00FFFFFF00FFFF
|
||||
FF00FFFFFF00D8985223D4964D7DD2924CDBCD8C45F3CB8B41F3C98B40DBC78B
|
||||
407DC5873D23FFFFFF00FFFFFF00FFFFFF00FFFFFF000000000000000000FFFF
|
||||
FF00FFFFFF00FFFFFF00D6974F53D19149E6D0A06AFFE0BFA0FFE3C5AEFFE3C5
|
||||
AEFFDFBC9FFFC89762FFBD7D35E6BC7E3553FFFFFF00FFFFFF00FFFFFF000000
|
||||
000000000000FFFFFF00FFFFFF00D4964D53CF8D47F4D9B28CFFE6CDB8FFE0BA
|
||||
9DFFD7AB85FFD6A982FFD9B391FFE1C2ABFFD4AE86FFB16B35F4B16F3553FFFF
|
||||
FF00FFFFFF000000000000000000FFFFFF00D2934C22CE8E47E5D9B28CFFE6CA
|
||||
B3FFD6A97DFFD1A579FFE2C4A8FFE1C3A8FFD0A276FFD1A477FFDDBDA2FFD0AC
|
||||
85FFAB6635E5A9653522FFFFFF000000000000000000FFFFFF00CE91477ECD9C
|
||||
68FFE7CBB4FFD4A57AFFD0A077FFCF9E74FFFBF8F5FFFBF8F5FFCB9E71FFCB9D
|
||||
71FFCDA177FFDFC0A5FFB98A5BFFA45C347EFFFFFF000000000000000000FFFF
|
||||
FF00CB8E41DBE0BC9FFFDBB393FFCFA075FFCD9E72FFCB9C71FFDDBFA3FFDDBF
|
||||
A2FFC5996BFFC5996BFFC4986BFFD1AB85FFD8BA97FF9E5635DBFFFFFF000000
|
||||
000000000000FFFFFF00C5853BF6E4C9B0FFD0A37AFFCC9D71FFC79A6CFFC598
|
||||
6BFFFFFFFFFFFFFFFEFFC39669FFC19468FFC29468FFC3986DFFDFC5ABFF9553
|
||||
34F6FFFFFF000000000000000000FFFFFF00BF7E35F6E3C7AFFFD0A276FFC599
|
||||
6BFFC4976AFFC49669FFEEE0D4FFFBF7F4FFBF9066FFBE8F65FFBE8F64FFBE92
|
||||
69FFDFC6AAFF925034F6FFFFFF000000000000000000FFFFFF00BC7E35DBDBBC
|
||||
9CFFD5AD89FFC7986CFFC39569FFC19367FFEDDFD3FFFAF7F4FFBB8B63FFB98A
|
||||
63FFB88A62FFC59D78FFD2B893FF905135DBFFFFFF000000000000000000FFFF
|
||||
FF00B878357EBF915EFFE0C2A8FFC5966CFFC29169FFE1CBB8FFFEFDFCFFFFFF
|
||||
FEFFEADCD0FFB4855EFFB3855EFFD4B599FFAE7B56FF8F51357EFFFFFF000000
|
||||
000000000000FFFFFF00AF703522AB6935E5CFAA81FFDABCA2FFBE9166FFBA8C
|
||||
62FFB7895FFFB3845EFFB1835DFFB0835CFFCDAA8DFFC6A579FF895034E58950
|
||||
3522FFFFFF000000000000000000FFFFFF00FFFFFF00A76234539F5533F4CBA7
|
||||
7DFFD8BB9FFFC39C77FFB68A62FFB48660FFBE9672FFD1B397FFC5A377FF844F
|
||||
35F489503553FFFFFF00FFFFFF000000000000000000FFFFFF00FFFFFF00FFFF
|
||||
FF009F563453995534E6B28057FFD5B793FFDBC3A6FFDAC3A6FFD2B490FFAB7A
|
||||
52FF864F34E688503553FFFFFF00FFFFFF00FFFFFF000000000000000000FFFF
|
||||
FF00FFFFFF00FFFFFF00FFFFFF00975435239453347D925234DB8A5034F3884F
|
||||
34F3895035DB8950357D84503623FFFFFF00FFFFFF00FFFFFF00FFFFFF000000
|
||||
000000000000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
||||
FF00FFFFFF000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
000000000000000000000000000000000000000000000000000000000000FFFF
|
||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
||||
FF00FEFEFE00636CA5FF233EC2FFFEFEFE00F7F7FB00FEFEFE00FFFFFF000000
|
||||
000000000000FFFFFF00FFFFFF00FFFFFF00FFFFFF00CFD2D1FF868B89FF868B
|
||||
89FF868B89FF868B89FF868B89FF1F2777FF0A37CAFF0B45F3FFFEFEFE00FAFA
|
||||
FC00FFFFFF000000000000000000FFFFFF00FFFFFF00FFFFFF00868B89FF868B
|
||||
89FF8D908FFFCFD2D1FFFFFFFF00FFFFFF006B6995FF232971FF0C2CBAFF0641
|
||||
F2FF4661CEFFFEFEFE00FFFFFF000000000000000000FFFFFF00FFFFFF00868B
|
||||
89FFB86F6CFFB97370FFFFFFFF00FEFEFD00FFFFFF00FFFFFF00232971FF2329
|
||||
71FF0920A8FF0B45F3FF0B45F3FF5666C1FFFFFFFF000000000000000000FFFF
|
||||
FF00A9524AFFBA5E54FFC47269FFC17067FFB06358FFFFFFFF00FFFFFF009091
|
||||
ADFF232971FF232971FF031E8EFF0B45F3FF0B45F3FF0B45F3FFFFFFFF000000
|
||||
0000000000009C5048FFB14E45FFC17D71FFE7BAABFFD09689FFC87A6EFFB455
|
||||
4BFFFFFFFF00FFFFFF00232971FF232971FF232971FF0B45F3FF0B45F3FF7C8E
|
||||
CFFFFFFFFF000000000000000000D4976EFFD49E7BFFD09871FFD6A482FFCD8E
|
||||
68FFCD9069FFD09A75FFD19973FFC88B62FFEEDDD0FF232971FF232971FF0B45
|
||||
F3FF3E5CCCFF868B89FFFFFFFF000000000000000000CC8D65FFF3CDB0FFFFFF
|
||||
FFFFE3C7B3FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEABFA1FFC98960FFFFFF
|
||||
FF00232971FFFFFFFF00FFFFFF00868B89FFFFFFFF000000000000000000C786
|
||||
5BFFEFC09EFFFFFFFFFFCC936EFFFFFFFFFFFFFFFFFFFFFBF7FFFFF8F1FFE4AF
|
||||
8CFFC78A61FFF3F9FA00FFFFFF00FFFFFF00FFFFFF00868B89FFFFFFFF000000
|
||||
000000000000C8885DFFEFBFA1FFFDFCFAFFFEFCFBFFFEFDFDFFFEFDFCFFFDFB
|
||||
FAFFFDFCFBFFDDA885FFC17F53FF72D4FDFFE2F5FCFFFFFFFF00CFD2D1FF868B
|
||||
89FFFFFFFF000000000000000000CA8D65FFEAB899FFDDA57EFFDDA680FFDBA3
|
||||
7CFFD9A07AFFD9A079FFD89F78FFD89E78FFBF845DFF72D4FDFF72D4FDFFFFFF
|
||||
FF00868B89FF868B89FFFFFFFF000000000000000000C98B61FFE6B592FFE2A7
|
||||
81FFE1A781FFDEA37DFFDCA17BFFDB9F79FFD99E77FFD49A73FFBB7E57FF72D4
|
||||
FDFF29638CFFCFD2D1FF868B89FFCFD2D1FFFFFFFF000000000000000000C481
|
||||
54FFEAB697FFF3F3EAFFEDF1E6FFEFF1E6FFEFF0E6FFEDF1E5FFF3F5EDFFD59C
|
||||
79FFB07044FF29638CFF29638CFF868B89FF868B89FFFFFFFF00FFFFFF000000
|
||||
000000000000C37F51FFEFB69AFFEAF3E8FF51BF84FF6FC998FF71C999FF54BF
|
||||
84FFE4F4E9FFDD9C7BFFAA693AFF29638CFF29638CFF868B89FFCFD2D1FFFFFF
|
||||
FF00FFFFFF000000000000000000C68355FFEFCEBAFFDDFFFFFF87EEC7FFA2F4
|
||||
D7FFA2F6D7FF8CEEC7FFE0FFFFFFDDA285FFAB6A3EFF29638CFFCFD2D1FFFFFF
|
||||
FF00FFFFFF00FFFFFF00FFFFFF000000000000000000CA8B62FFC38458FFD38B
|
||||
68FFE18F70FFDC8D6CFFDA8B6DFFD78A6EFFCD8B6CFFAB6D44FFA65F2EFFFFFF
|
||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000
|
||||
}
|
||||
end
|
||||
object MainMenu1: TMainMenu
|
||||
Images = ImageList1
|
||||
left = 304
|
||||
top = 166
|
||||
object MenuItem1: TMenuItem
|
||||
Caption = 'File'
|
||||
object MenuItem4: TMenuItem
|
||||
Action = fileOpen
|
||||
Bitmap.Data = {
|
||||
46050000424D4605000000000000360000002800000012000000120000000100
|
||||
2000000000001005000064000000640000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000002C86D8D12D88D8F72D87D8F72D88D8F72D88D8F72D88D8F72D88
|
||||
D8F72D88D8F72D88D8F72D88D8F72D88D8F72D87D8F72D88D8F72C86D8D10000
|
||||
0000000000000000000000000000338ED9FBDCF0FAFF98E1F6FF95E0F6FF92DF
|
||||
F6FF8EDEF5FF89DCF5FF85DAF4FF80D9F4FF7AD7F3FF74D5F3FF70D3F2FFC2EA
|
||||
F8FF3594DAFF000000000000000000000000000000003594DAF7EFFAFEFF93E5
|
||||
F8FF8FE4F8FF89E3F8FF82E1F7FF7ADFF7FF71DEF6FF67DBF5FF5BD8F4FF4DD4
|
||||
F3FF40D1F2FFCAF2FBFF3594DAFF00000000000000000000000000000000369A
|
||||
DAF8F2FAFDFF94E6F8FF92E5F8FF90E5F8FF8BE3F8FF86E2F7FF7FE1F7FF77DE
|
||||
F6FF6CDCF6FF5ED9F4FF4FD5F3FFCCF2FBFF3594DAFF00000000000000000000
|
||||
00000000000036A1DAF9F6FCFEFF94E5F8FF93E5F8FF93E5F8FF91E5F8FF93DB
|
||||
E9FF93D7E3FF93D2DCFF90CED7FF8CC8CFFF86C1C6FFC9D8D6FF3594DAFFC574
|
||||
44E8CA7F53F1000000000000000037A6DAFAFEFFFFFFF8FDFFFFF6FDFFFFF5FC
|
||||
FFFFF3FCFEFF9AE4F4FF9AE6F7FF9BE6F6FF9DE5F5FF9EE5F5FF9FE5F4FFDAF3
|
||||
F8FF3594DAFFFDF4EEFFCA8054F9000000000000000035ABDAFAE8F6FBFF70BC
|
||||
E7FF55AAE2FF4DA5E0FF91C9EBFFFAF3EFFFFDFEFDFFFFFDFCFFFFFDFCFFFEFD
|
||||
FCFFFEFCFBFFFEFEFDFF3594DAFFEFF2E8FFCE8156FF000000000000000036AA
|
||||
DAF2F1FAFDFF94DEF5FF93DCF4FF64BCE9FF3594DAFF3594DAFF3594DAFF3594
|
||||
DAFF3594DAFF3594DAFF3594DAFF3594DAFF3594DAFFFBF6EFFFCC8355FE0000
|
||||
00000000000035AFDAF0F7FCFEFF8EE4F8FF91DEF5FF9FE0F5FFACE1F6FFCA84
|
||||
52FFFFF7F1FFFFE9D9FFFFEADBFFFFE9D9FFFFE7D7FFFFE5D2FFFFE2CBFFFFF7
|
||||
F1FFCB8555FE000000000000000036B3DAF8FDFEFEFFFEFFFFFFFEFEFFFFFDFE
|
||||
FFFFFEFFFFFFE4BA91FFFFF7F0FFFFE7D5FFFDE7D6FFFDE6D4FFFCE4D0FFFBE3
|
||||
CBFFFADCC2FFFEF3E8FFCC8656FE000000000000000034B4D9D05EC2E1FA60C3
|
||||
E2FA60C3E2FA60C3E2FA5FC3E2FAE4BB91FFFFF7F2FFFEE7D5FFFEE7D5FFFDE5
|
||||
D1FFFAE0CAFFF9DEC4FFF7D9BCFFFDF2E7FFCC8757FE00000000000000000000
|
||||
00000000000000000000000000000000000000000000E4BB92FFFEF7F1FFFCE5
|
||||
D2FFFCE4D1FFFBE2CCFFF9DDC4FFF6D7BBFFF3D1AFFFFAEFE4FFCC8758FE0000
|
||||
000000000000000000000000000000000000000000000000000000000000E4BB
|
||||
92FFFEF6F0FFFCE2CDFFFCE3CDFFFADFC8FFF7D9BCFFF5E9DDFFFAF3EBFFFBF8
|
||||
F3FFCA8353FE0000000000000000000000000000000000000000000000000000
|
||||
000000000000E4BB93FFFEF5EDFFFCDEC5FFFBE0C7FFF9DCC2FFF5D3B4FFFEF9
|
||||
F3FFFAE2C4FFECC193FFC37D4893000000000000000000000000000000000000
|
||||
0000000000000000000000000000E5BE96FFFFFFFEFFFDF3E9FFFDF3EAFFFCF2
|
||||
E8FFFAEFE3FFFAF2E7FFEABB88FFCF8555B3B4693D0C00000000000000000000
|
||||
00000000000000000000000000000000000000000000EAC39DFFE6BF96FFE4BB
|
||||
92FFE4BB92FFD1A06CF5D09E6DF6CC965FDAC479427EB2673C09000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
00000000000000000000
|
||||
}
|
||||
OnClick = fileOpenExecute
|
||||
end
|
||||
object MenuItem5: TMenuItem
|
||||
Caption = '-'
|
||||
end
|
||||
object MenuItem6: TMenuItem
|
||||
Action = fileExit
|
||||
Bitmap.Data = {
|
||||
46050000424D4605000000000000360000002800000012000000120000000100
|
||||
2000000000001005000064000000640000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
00000000000000000000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
||||
FF00FFFFFF00FFFFFF00FFFFFF001D639B1619609839145D9562105A92880D58
|
||||
90A4135C92FC0C578FED0000000000000000999999FF717171FF545454FF5151
|
||||
51FF4F4F4FFF4C4C4CFF4A4A4AFF474747FF454545FF25679DFF3274A8FF3D7C
|
||||
AFFF4784B5FF4E8ABAFF3E7EADFF0C578FEA0000000000000000FFFFFF00FFFF
|
||||
FF00585858FFA2A2A2FFA2A2A2FFA3A3A3FFA4A4A4FFA4A4A4FFA5A5A5FF2F6F
|
||||
A5FF78ABD2FF78ABD3FF73A7D1FF69A0CDFF407FAEFF0F5991EA000000000000
|
||||
0000FFFFFF00FFFFFF005C5C5CFFA1A1A1FF3C7340FFA0A1A1FFA3A3A3FFA3A3
|
||||
A3FFA4A4A4FF3674AAFF7DAFD4FF5B9AC9FF5495C7FF5896C8FF4180AEFF135C
|
||||
94EA0000000000000000FFFFFF00FFFFFF00606060FFA0A0A0FF3D7641FF3671
|
||||
39FFA2A2A2FFA2A2A2FFA3A3A3FF3D79B0FF82B3D7FF629FCCFF5A9AC9FF5E9B
|
||||
CAFF4381AFFF196098EA000000000000000037823EFF347E3BFF317937FF2E75
|
||||
34FF499150FF468F4CFF39733DFFA1A1A1FFA2A2A2FF457EB4FF88B7D9FF67A3
|
||||
CFFF619ECCFF639FCCFF4583B1FF1F649CEA00000000000000003B8742FF89CB
|
||||
92FF84C88DFF80C688FF7BC383FF77C17FFF478F4DFF3B743FFFA1A1A1FF4C84
|
||||
BAFF8DBBDBFF6EA8D1FF66A6D1FF5FB4DFFF4785B1FF2569A1EA000000000000
|
||||
00003E8B46FF8FCE99FF7DC687FF78C381FF73C07CFF74C07CFF79C281FF4990
|
||||
4FFF547F57FF5489BFFF94BFDDFF75ADD4FF63B8E1FF4BD4FFFF428BB8FF2C6E
|
||||
A6EA000000000000000041904AFF94D29FFF91D09AFF8DCD96FF89CB92FF84C8
|
||||
8DFF519858FF417C46FF9F9F9FFF5A8EC4FF98C3E0FF7CB3D7FF74AFD6FF5EC4
|
||||
EDFF4B88B3FF3473ABEA000000000000000044944DFF42914BFF3F8D48FF3D89
|
||||
45FF5DA465FF5AA061FF45834BFF9E9E9EFF9E9E9EFF6092C9FF9EC7E2FF83B8
|
||||
DAFF7DB4D7FF7EB3D7FF4F89B4FF3B79B1EA0000000000000000FFFFFF00FFFF
|
||||
FF00777777FF9A9A9AFF3D8A45FF498A4FFF9C9C9CFF9D9D9DFF9D9D9DFF6696
|
||||
CCFFA2CBE3FF89BDDCFF83B9DAFF84B9DAFF518BB5FF437EB6EA000000000000
|
||||
0000FFFFFF00FFFFFF007A7A7AFF999999FF529159FF999A99FF9B9B9BFF9C9C
|
||||
9CFF9C9C9CFF6C9AD0FFA7CEE5FF8FC1DFFF89BDDCFF8BBDDCFF538DB6FF4B84
|
||||
BCEA0000000000000000FFFFFF00FFFFFF007D7D7DFF999999FF999999FF9A9A
|
||||
9AFF9A9A9AFF9B9B9BFF9B9B9BFF6F9DD3FFAAD1E7FFABD1E7FF98C7E1FF91C2
|
||||
DEFF568FB7FF5289C1EA0000000000000000FFFFFF00FFFFFF00808080FF7E7E
|
||||
7EFF7C7C7CFF7A7A7AFF777777FF757575FF727272FF719ED4FF6F9ED6FF87B2
|
||||
DCFFABD3E8FFA9D0E6FF5890B8FF598EC6EA0000000000000000FFFFFF00FFFF
|
||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
||||
FF00FFFFFF00709ED6DB6D9CD4FF85B1DAFF5A91B9FF6093CBEA000000000000
|
||||
0000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF006D9CD4896A9AD2FB6697
|
||||
CFEE0000000000000000
|
||||
}
|
||||
OnClick = fileExitExecute
|
||||
end
|
||||
end
|
||||
object MenuItem2: TMenuItem
|
||||
Caption = 'Help'
|
||||
object MenuItem3: TMenuItem
|
||||
Action = hlpAbout
|
||||
Bitmap.Data = {
|
||||
46050000424D4605000000000000360000002800000012000000120000000100
|
||||
2000000000001005000064000000640000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
00000000000000000000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
||||
FF00FFFFFF00FFFFFF000000000000000000FFFFFF00FFFFFF00FFFFFF00FFFF
|
||||
FF00975435239453347D925234DB8A5034F3884F34F3895035DB8950357D8450
|
||||
3623FFFFFF00FFFFFF00FFFFFF00FFFFFF000000000000000000FFFFFF00FFFF
|
||||
FF00FFFFFF009F563453995534E6B28057FFD5B793FFDBC3A6FFDAC3A6FFD2B4
|
||||
90FFAB7A52FF864F34E688503553FFFFFF00FFFFFF00FFFFFF00000000000000
|
||||
0000FFFFFF00FFFFFF00A76234539F5533F4CBA77DFFD8BB9FFFC39C77FFB68A
|
||||
62FFB48660FFBE9672FFD1B397FFC5A377FF844F35F489503553FFFFFF00FFFF
|
||||
FF000000000000000000FFFFFF00AF703522AB6935E5CFAA81FFDABCA2FFBE91
|
||||
66FFBA8C62FFB7895FFFB3845EFFB1835DFFB0835CFFCDAA8DFFC6A579FF8950
|
||||
34E589503522FFFFFF000000000000000000FFFFFF00B878357EBF915EFFE0C2
|
||||
A8FFC5966CFFC29169FFE1CBB8FFFEFDFCFFFFFFFEFFEADCD0FFB4855EFFB385
|
||||
5EFFD4B599FFAE7B56FF8F51357EFFFFFF000000000000000000FFFFFF00BC7E
|
||||
35DBDBBC9CFFD5AD89FFC7986CFFC39569FFC19367FFEDDFD3FFFAF7F4FFBB8B
|
||||
63FFB98A63FFB88A62FFC59D78FFD2B893FF905135DBFFFFFF00000000000000
|
||||
0000FFFFFF00BF7E35F6E3C7AFFFD0A276FFC5996BFFC4976AFFC49669FFEEE0
|
||||
D4FFFBF7F4FFBF9066FFBE8F65FFBE8F64FFBE9269FFDFC6AAFF925034F6FFFF
|
||||
FF000000000000000000FFFFFF00C5853BF6E4C9B0FFD0A37AFFCC9D71FFC79A
|
||||
6CFFC5986BFFFFFFFFFFFFFFFEFFC39669FFC19468FFC29468FFC3986DFFDFC5
|
||||
ABFF955334F6FFFFFF000000000000000000FFFFFF00CB8E41DBE0BC9FFFDBB3
|
||||
93FFCFA075FFCD9E72FFCB9C71FFDDBFA3FFDDBFA2FFC5996BFFC5996BFFC498
|
||||
6BFFD1AB85FFD8BA97FF9E5635DBFFFFFF000000000000000000FFFFFF00CE91
|
||||
477ECD9C68FFE7CBB4FFD4A57AFFD0A077FFCF9E74FFFBF8F5FFFBF8F5FFCB9E
|
||||
71FFCB9D71FFCDA177FFDFC0A5FFB98A5BFFA45C347EFFFFFF00000000000000
|
||||
0000FFFFFF00D2934C22CE8E47E5D9B28CFFE6CAB3FFD6A97DFFD1A579FFE2C4
|
||||
A8FFE1C3A8FFD0A276FFD1A477FFDDBDA2FFD0AC85FFAB6635E5A9653522FFFF
|
||||
FF000000000000000000FFFFFF00FFFFFF00D4964D53CF8D47F4D9B28CFFE6CD
|
||||
B8FFE0BA9DFFD7AB85FFD6A982FFD9B391FFE1C2ABFFD4AE86FFB16B35F4B16F
|
||||
3553FFFFFF00FFFFFF000000000000000000FFFFFF00FFFFFF00FFFFFF00D697
|
||||
4F53D19149E6D0A06AFFE0BFA0FFE3C5AEFFE3C5AEFFDFBC9FFFC89762FFBD7D
|
||||
35E6BC7E3553FFFFFF00FFFFFF00FFFFFF000000000000000000FFFFFF00FFFF
|
||||
FF00FFFFFF00FFFFFF00D8985223D4964D7DD2924CDBCD8C45F3CB8B41F3C98B
|
||||
40DBC78B407DC5873D23FFFFFF00FFFFFF00FFFFFF00FFFFFF00000000000000
|
||||
0000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
||||
FF000000000000000000
|
||||
}
|
||||
OnClick = hlpAboutExecute
|
||||
end
|
||||
end
|
||||
end
|
||||
object OpenDialog1: TOpenDialog
|
||||
Width = 948
|
||||
Height = 804
|
||||
DefaultExt = '.exe'
|
||||
Filter = 'All files (*.*)|*.*|Excutable files (*.exe)|*.exe|DLL (*.dll)|*.dll'
|
||||
left = 338
|
||||
top = 232
|
||||
end
|
||||
end
|
226
examples/lazresexploer/remainunit.pas
Normal file
226
examples/lazresexploer/remainunit.pas
Normal file
@ -0,0 +1,226 @@
|
||||
unit reMainUnit;
|
||||
|
||||
{$mode objfpc}{$H+}
|
||||
|
||||
interface
|
||||
|
||||
uses
|
||||
Classes, SysUtils, FileUtil, LResources, Forms, Controls, Graphics, Dialogs,
|
||||
ComCtrls, ActnList, Menus, ExtCtrls, Grids, resource,
|
||||
bitmapresource, versionresource, groupcursorresource, groupiconresource;
|
||||
|
||||
type
|
||||
|
||||
{ TreMainForm }
|
||||
|
||||
TreMainForm = class(TForm)
|
||||
fileSave: TAction;
|
||||
HeaderControl1: THeaderControl;
|
||||
hlpAbout: TAction;
|
||||
fileExit: TAction;
|
||||
fileOpen: TAction;
|
||||
ActionList1: TActionList;
|
||||
Image1: TImage;
|
||||
ImageList1: TImageList;
|
||||
MainMenu1: TMainMenu;
|
||||
MenuItem1: TMenuItem;
|
||||
MenuItem2: TMenuItem;
|
||||
MenuItem3: TMenuItem;
|
||||
MenuItem4: TMenuItem;
|
||||
MenuItem5: TMenuItem;
|
||||
MenuItem6: TMenuItem;
|
||||
OpenDialog1: TOpenDialog;
|
||||
PageControl1: TPageControl;
|
||||
Splitter1: TSplitter;
|
||||
StatusBar1: TStatusBar;
|
||||
StringGrid1: TStringGrid;
|
||||
tabString: TTabSheet;
|
||||
tabImage: TTabSheet;
|
||||
ToolBar1: TToolBar;
|
||||
ToolButton1: TToolButton;
|
||||
ToolButton2: TToolButton;
|
||||
ToolButton3: TToolButton;
|
||||
ToolButton4: TToolButton;
|
||||
TreeView1: TTreeView;
|
||||
procedure fileExitExecute(Sender: TObject);
|
||||
procedure fileOpenExecute(Sender: TObject);
|
||||
procedure FormCreate(Sender: TObject);
|
||||
procedure HeaderControl1SectionResize(HeaderControl: TCustomHeaderControl;
|
||||
Section: THeaderSection);
|
||||
procedure hlpAboutExecute(Sender: TObject);
|
||||
procedure Splitter1ChangeBounds(Sender: TObject);
|
||||
procedure TreeView1Click(Sender: TObject);
|
||||
private
|
||||
Res:TResources;
|
||||
procedure LoadVersionResource(V:TVersionResource);
|
||||
procedure LoadBitmapResource(B:TBitmapResource);
|
||||
procedure LoadGroupIconResource(G:TGroupIconResource);
|
||||
public
|
||||
procedure OpenFile(const AFileName:string);
|
||||
end;
|
||||
|
||||
var
|
||||
reMainForm: TreMainForm;
|
||||
|
||||
implementation
|
||||
|
||||
{$R *.lfm}
|
||||
|
||||
uses
|
||||
winpeimagereader, elfreader, coffreader, resreader, reAboutUnit,
|
||||
stringtableresource, acceleratorsresource, reConstsUnit;
|
||||
|
||||
{ TreMainForm }
|
||||
|
||||
procedure TreMainForm.fileExitExecute(Sender: TObject);
|
||||
begin
|
||||
Close;
|
||||
end;
|
||||
|
||||
procedure TreMainForm.fileOpenExecute(Sender: TObject);
|
||||
begin
|
||||
if OpenDialog1.Execute then
|
||||
OpenFile(UTF8ToSys(OpenDialog1.FileName));
|
||||
end;
|
||||
|
||||
procedure TreMainForm.FormCreate(Sender: TObject);
|
||||
begin
|
||||
Caption:=sResourceExplorer;
|
||||
|
||||
fileSave.Caption:=sSaveResource; //'Save resource...'
|
||||
hlpAbout.Caption:=sAbout; //'About...'
|
||||
fileExit.Caption:=sExit; //'Exit'
|
||||
fileOpen.Caption:=sOpen; //'Open...'
|
||||
MenuItem1.Caption:=sFile;
|
||||
MenuItem2.Caption:=sHelp;
|
||||
tabString.Caption:=sStrings;
|
||||
tabImage.Caption:=sImage;
|
||||
|
||||
Splitter1ChangeBounds(nil);
|
||||
end;
|
||||
|
||||
procedure TreMainForm.HeaderControl1SectionResize(
|
||||
HeaderControl: TCustomHeaderControl; Section: THeaderSection);
|
||||
begin
|
||||
TreeView1.Width:=HeaderControl1.Sections[0].Width;
|
||||
HeaderControl1.Sections[1].Width:=Width - TreeView1.Width;
|
||||
end;
|
||||
|
||||
procedure TreMainForm.hlpAboutExecute(Sender: TObject);
|
||||
begin
|
||||
reAboutForm:=TreAboutForm.Create(Application);
|
||||
reAboutForm.ShowModal;
|
||||
reAboutForm.Free;
|
||||
end;
|
||||
|
||||
procedure TreMainForm.Splitter1ChangeBounds(Sender: TObject);
|
||||
begin
|
||||
HeaderControl1.Sections[0].Width:=TreeView1.Width;
|
||||
HeaderControl1.Sections[1].Width:=Width - TreeView1.Width;
|
||||
end;
|
||||
|
||||
procedure TreMainForm.TreeView1Click(Sender: TObject);
|
||||
var
|
||||
ResItem:TAbstractResource;
|
||||
begin
|
||||
if Assigned(TreeView1.Selected) and Assigned(TreeView1.Selected.Data) then
|
||||
begin
|
||||
ResItem:=TAbstractResource(TreeView1.Selected.Data);
|
||||
HeaderControl1.Sections[1].Text:=ResItem.ClassName + ' : ' + ResItem.Name.Name;
|
||||
if ResItem is TVersionResource then
|
||||
LoadVersionResource(ResItem as TVersionResource)
|
||||
else
|
||||
if ResItem is TBitmapResource then
|
||||
LoadBitmapResource(ResItem as TBitmapResource)
|
||||
else
|
||||
if ResItem is TGroupIconResource then
|
||||
LoadGroupIconResource(ResItem as TGroupIconResource)
|
||||
else
|
||||
;
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TreMainForm.LoadVersionResource(V: TVersionResource);
|
||||
var
|
||||
i,j, k:integer;
|
||||
begin
|
||||
PageControl1.ActivePage:=tabString;
|
||||
k:=0;
|
||||
StringGrid1.RowCount:=0;
|
||||
StringGrid1.ColCount:=2;
|
||||
for i:=0 to V.StringFileInfo.Count-1 do
|
||||
begin
|
||||
for j:=0 to V.StringFileInfo[i].Count-1 do
|
||||
begin
|
||||
StringGrid1.RowCount:=StringGrid1.RowCount + 1;
|
||||
StringGrid1.Cells[0, k]:=SysToUTF8(V.StringFileInfo[i].Keys[j]);
|
||||
StringGrid1.Cells[1, k]:=SysToUTF8(V.StringFileInfo[i].ValuesByIndex[j]);
|
||||
inc(k);
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TreMainForm.LoadBitmapResource(B: TBitmapResource);
|
||||
begin
|
||||
PageControl1.ActivePage:=tabImage;
|
||||
B.BitmapData.Position:=0;
|
||||
Image1.Picture.Bitmap.LoadFromStream(B.BitmapData);
|
||||
//
|
||||
end;
|
||||
|
||||
procedure TreMainForm.LoadGroupIconResource(G: TGroupIconResource);
|
||||
begin
|
||||
|
||||
end;
|
||||
|
||||
procedure TreMainForm.OpenFile(const AFileName: string);
|
||||
var
|
||||
Ext:string;
|
||||
Reader:TAbstractResourceReader;
|
||||
i:integer;
|
||||
Root, ResNode:TTreeNode;
|
||||
begin
|
||||
if not FileExists(AFileName) then exit;
|
||||
Ext:=LowerCase(ExtractFileExt(AFileName));
|
||||
if (Ext = '.exe') or (Ext = '.dll') then
|
||||
Reader:=TWinPEImageResourceReader.Create
|
||||
else
|
||||
if (Ext = '.res')then
|
||||
Reader:=TResResourceReader.Create
|
||||
else
|
||||
if (Ext = '.res')then
|
||||
Reader:=TResResourceReader.Create
|
||||
else
|
||||
if (Ext = '.o')then
|
||||
Reader:=TResResourceReader.Create
|
||||
else
|
||||
if (Ext = '')then
|
||||
Reader:=TElfResourceReader.Create;
|
||||
|
||||
TreeView1.Items.Clear;
|
||||
if Assigned(Res) then
|
||||
Res.Free;
|
||||
|
||||
if not Assigned(Reader) then exit;
|
||||
|
||||
Res:=TResources.Create;
|
||||
try
|
||||
Res.LoadFromFile(AFileName, Reader);
|
||||
|
||||
for i:=0 to Res.Count-1 do
|
||||
begin
|
||||
Root:=TreeView1.Items.FindTopLvlNode(Res[i].ClassName);
|
||||
if not Assigned(Root) then
|
||||
Root:=TreeView1.Items.AddChild(nil, Res[i].ClassName);
|
||||
ResNode:=TreeView1.Items.AddChild(Root, Res[i].Name.Name);
|
||||
ResNode.Data:=Res[i];
|
||||
end;
|
||||
finally
|
||||
Reader.Free;
|
||||
end;
|
||||
|
||||
StatusBar1.SimpleText:=AFileName;
|
||||
end;
|
||||
|
||||
end.
|
||||
|
Loading…
Reference in New Issue
Block a user