Changeset 207


Ignore:
Timestamp:
Sep 20, 2021, 10:16:37 AM (3 years ago)
Author:
chronos
Message:
  • Modified: Updated Common package.
  • Modified: CoolTranslator package merged into Common package.
  • Fixed: Build with Lazarus 2.0.12
Location:
trunk
Files:
19 added
4 deleted
31 edited

Legend:

Unmodified
Added
Removed
  • trunk/AcronymDecoder.lpi

    r205 r207  
    8585      </Modes>
    8686    </RunParams>
    87     <RequiredPackages Count="4">
     87    <RequiredPackages Count="3">
    8888      <Item1>
    8989        <PackageName Value="SQLDBLaz"/>
    9090      </Item1>
    9191      <Item2>
    92         <PackageName Value="CoolTranslator"/>
    93         <DefaultFilename Value="Packages\CoolTranslator\CoolTranslator.lpk" Prefer="True"/>
     92        <PackageName Value="Common"/>
     93        <DefaultFilename Value="Packages\Common\Common.lpk" Prefer="True"/>
    9494      </Item2>
    9595      <Item3>
    96         <PackageName Value="Common"/>
    97         <DefaultFilename Value="Packages\Common\Common.lpk" Prefer="True"/>
     96        <PackageName Value="LCL"/>
    9897      </Item3>
    99       <Item4>
    100         <PackageName Value="LCL"/>
    101       </Item4>
    10298    </RequiredPackages>
    103     <Units Count="18">
     99    <Units Count="17">
    104100      <Unit0>
    105101        <Filename Value="AcronymDecoder.lpr"/>
     
    174170      </Unit10>
    175171      <Unit11>
    176         <Filename Value="Forms\UFormAbout.pas"/>
    177         <IsPartOfProject Value="True"/>
    178         <ComponentName Value="FormAbout"/>
     172        <Filename Value="Forms\UFormImportFormat.pas"/>
     173        <IsPartOfProject Value="True"/>
     174        <ComponentName Value="FormImportFormat"/>
    179175        <HasResources Value="True"/>
    180176        <ResourceBaseClass Value="Form"/>
    181177      </Unit11>
    182178      <Unit12>
    183         <Filename Value="Forms\UFormImportFormat.pas"/>
    184         <IsPartOfProject Value="True"/>
    185         <ComponentName Value="FormImportFormat"/>
     179        <Filename Value="Forms\UFormImportFormats.pas"/>
     180        <IsPartOfProject Value="True"/>
     181        <ComponentName Value="FormImportFormats"/>
    186182        <HasResources Value="True"/>
    187183        <ResourceBaseClass Value="Form"/>
    188184      </Unit12>
    189185      <Unit13>
    190         <Filename Value="Forms\UFormImportFormats.pas"/>
    191         <IsPartOfProject Value="True"/>
    192         <ComponentName Value="FormImportFormats"/>
     186        <Filename Value="Forms\UFormImportPattern.pas"/>
     187        <IsPartOfProject Value="True"/>
     188        <ComponentName Value="FormImportPattern"/>
    193189        <HasResources Value="True"/>
    194190        <ResourceBaseClass Value="Form"/>
    195191      </Unit13>
    196192      <Unit14>
    197         <Filename Value="Forms\UFormImportPattern.pas"/>
    198         <IsPartOfProject Value="True"/>
    199         <ComponentName Value="FormImportPattern"/>
    200         <HasResources Value="True"/>
    201         <ResourceBaseClass Value="Form"/>
     193        <Filename Value="UCore.pas"/>
     194        <IsPartOfProject Value="True"/>
     195        <ComponentName Value="Core"/>
     196        <HasResources Value="True"/>
     197        <ResourceBaseClass Value="DataModule"/>
    202198      </Unit14>
    203199      <Unit15>
    204         <Filename Value="UCore.pas"/>
    205         <IsPartOfProject Value="True"/>
    206         <ComponentName Value="Core"/>
    207         <HasResources Value="True"/>
    208         <ResourceBaseClass Value="DataModule"/>
     200        <Filename Value="Forms\UFormExport.pas"/>
     201        <IsPartOfProject Value="True"/>
     202        <ComponentName Value="FormExport"/>
     203        <HasResources Value="True"/>
     204        <ResourceBaseClass Value="Form"/>
    209205      </Unit15>
    210206      <Unit16>
    211         <Filename Value="Forms\UFormExport.pas"/>
    212         <IsPartOfProject Value="True"/>
    213         <ComponentName Value="FormExport"/>
     207        <Filename Value="Forms\UFormCheck.pas"/>
     208        <IsPartOfProject Value="True"/>
     209        <ComponentName Value="FormCheck"/>
    214210        <HasResources Value="True"/>
    215211        <ResourceBaseClass Value="Form"/>
    216212      </Unit16>
    217       <Unit17>
    218         <Filename Value="Forms\UFormCheck.pas"/>
    219         <IsPartOfProject Value="True"/>
    220         <ComponentName Value="FormCheck"/>
    221         <HasResources Value="True"/>
    222         <ResourceBaseClass Value="Form"/>
    223       </Unit17>
    224213    </Units>
    225214  </ProjectOptions>
  • trunk/AcronymDecoder.lpr

    r205 r207  
    99  Interfaces, // this includes the LCL widgetset
    1010  Forms, UAcronym, Common, SysUtils,
    11   CoolTranslator, UFormMain, UCore, UFormCheck
     11  UFormMain, UCore, UFormCheck
    1212  { you can add units after this };
    1313
  • trunk/Forms/UFormAcronym.pas

    r174 r207  
    6868procedure TFormAcronym.FormCreate(Sender: TObject);
    6969begin
    70   Core.CoolTranslator1.TranslateComponentRecursive(Self);
     70  Core.Translator.TranslateComponentRecursive(Self);
    7171  Core.ThemeManager.UseTheme(Self);
    7272end;
  • trunk/Forms/UFormAcronyms.pas

    r204 r207  
    258258  FocusAcronym := nil;
    259259  MeaningCount := 0;
    260   Core.CoolTranslator1.TranslateComponentRecursive(Self);
     260  Core.Translator.TranslateComponentRecursive(Self);
    261261  Core.ThemeManager.UseTheme(Self);
    262262  for I := 0 to ToolBar1.ButtonCount - 1 do
  • trunk/Forms/UFormCategories.pas

    r174 r207  
    187187  I: Integer;
    188188begin
    189   Core.CoolTranslator1.TranslateComponentRecursive(Self);
     189  Core.Translator.TranslateComponentRecursive(Self);
    190190  Core.ThemeManager.UseTheme(Self);
    191191  for I := 0 to ToolBar1.ButtonCount - 1 do
  • trunk/Forms/UFormCategorySelect.pas

    r174 r207  
    5050procedure TFormCategorySelect.FormCreate(Sender: TObject);
    5151begin
    52   Core.CoolTranslator1.TranslateComponentRecursive(Self);
     52  Core.Translator.TranslateComponentRecursive(Self);
    5353  Core.ThemeManager.UseTheme(Self);
    5454end;
  • trunk/Forms/UFormCheck.pas

    r206 r207  
    207207  AcronymDbSummary := TAcronymDb.Create;
    208208  AcronymDbContent := TAcronymDb.Create;
    209   Core.CoolTranslator1.TranslateComponentRecursive(Self);
     209  Core.Translator.TranslateComponentRecursive(Self);
    210210  Core.ThemeManager.UseTheme(Self);
    211211  ReportItems := TReportItems.Create;
  • trunk/Forms/UFormExport.pas

    r184 r207  
    6767procedure TFormExport.FormCreate(Sender: TObject);
    6868begin
    69   Core.CoolTranslator1.TranslateComponentRecursive(Self);
     69  Core.Translator.TranslateComponentRecursive(Self);
    7070  Core.ThemeManager.UseTheme(Self);
    7171end;
  • trunk/Forms/UFormImport.pas

    r184 r207  
    6969procedure TFormImport.FormCreate(Sender: TObject);
    7070begin
    71   Core.CoolTranslator1.TranslateComponentRecursive(Self);
     71  Core.Translator.TranslateComponentRecursive(Self);
    7272  Core.ThemeManager.UseTheme(Self);
    7373end;
  • trunk/Forms/UFormImportFormat.pas

    r174 r207  
    160160procedure TFormImportFormat.FormCreate(Sender: TObject);
    161161begin
    162   Core.CoolTranslator1.TranslateComponentRecursive(Self);
     162  Core.Translator.TranslateComponentRecursive(Self);
    163163  Core.ThemeManager.UseTheme(Self);
    164164  YesNoString[False] := SNo;
  • trunk/Forms/UFormImportFormats.pas

    r174 r207  
    189189  I: Integer;
    190190begin
    191   Core.CoolTranslator1.TranslateComponentRecursive(Self);
     191  Core.Translator.TranslateComponentRecursive(Self);
    192192  Core.ThemeManager.UseTheme(Self);
    193193  for I := 0 to ToolBar1.ButtonCount - 1 do
  • trunk/Forms/UFormImportPattern.pas

    r174 r207  
    5353procedure TFormImportPattern.FormCreate(Sender: TObject);
    5454begin
    55   Core.CoolTranslator1.TranslateComponentRecursive(Self);
     55  Core.Translator.TranslateComponentRecursive(Self);
    5656  Core.ThemeManager.UseTheme(Self);
    5757  InitControls;
  • trunk/Forms/UFormImportSource.pas

    r174 r207  
    9898procedure TFormImportSource.FormCreate(Sender: TObject);
    9999begin
    100   Core.CoolTranslator1.TranslateComponentRecursive(Self);
     100  Core.Translator.TranslateComponentRecursive(Self);
    101101  Core.ThemeManager.UseTheme(Self);
    102102end;
  • trunk/Forms/UFormImportSources.pas

    r204 r207  
    354354  I: Integer;
    355355begin
    356   Core.CoolTranslator1.TranslateComponentRecursive(Self);
     356  Core.Translator.TranslateComponentRecursive(Self);
    357357  Core.ThemeManager.UseTheme(Self);
    358358  for I := 0 to ToolBar1.ButtonCount - 1 do
  • trunk/Forms/UFormMain.lfm

    r203 r207  
    11object FormMain: TFormMain
    22  Left = 395
    3   Height = 602
     3  Height = 722
    44  Top = 261
    5   Width = 847
     5  Width = 1016
    66  Caption = 'Acronym Decoder'
    7   ClientHeight = 577
    8   ClientWidth = 847
    9   DesignTimePPI = 120
     7  ClientHeight = 688
     8  ClientWidth = 1016
     9  DesignTimePPI = 144
    1010  Menu = MainMenu1
    1111  OnClose = FormClose
     
    1616  OnResize = FormResize
    1717  OnShow = FormShow
    18   LCLVersion = '2.0.2.0'
     18  LCLVersion = '2.0.12.0'
    1919  object PanelMain: TPanel
    2020    Left = 0
    21     Height = 479
    22     Top = 70
    23     Width = 847
     21    Height = 580
     22    Top = 81
     23    Width = 1016
    2424    Align = alClient
    2525    BevelOuter = bvNone
    26     ClientHeight = 479
    27     ClientWidth = 847
     26    ClientHeight = 580
     27    ClientWidth = 1016
     28    ParentFont = False
    2829    TabOrder = 0
    2930    object ListViewFilter1: TListViewFilter
    30       Left = 4
    31       Height = 38
    32       Top = 4
    33       Width = 838
     31      Left = 5
     32      Height = 46
     33      Top = 5
     34      Width = 1005
    3435      OnChange = ListViewFilter1Change
    3536      Anchors = [akTop, akLeft, akRight]
    3637    end
    3738    object ListViewAcronyms: TListView
    38       Left = 4
    39       Height = 432
    40       Top = 42
    41       Width = 838
     39      Left = 5
     40      Height = 524
     41      Top = 50
     42      Width = 1005
    4243      Anchors = [akTop, akLeft, akRight, akBottom]
    4344      Columns = <     
    4445        item
    4546          Caption = 'Name'
    46           Width = 125
     47          Width = 150
    4748        end     
    4849        item
    4950          Caption = 'Meaning'
    50           Width = 375
     51          Width = 450
    5152        end     
    5253        item
    5354          Caption = 'Categories'
    54           Width = 434
     55          Width = 521
    5556        end>
    5657      OwnerData = True
     58      ParentFont = False
    5759      PopupMenu = PopupMenuFilter
    5860      ReadOnly = True
     
    6769  object PanelParam: TPanel
    6870    Left = 0
    69     Height = 32
    70     Top = 38
    71     Width = 847
     71    Height = 38
     72    Top = 43
     73    Width = 1016
    7274    Align = alTop
    7375    BevelOuter = bvNone
    74     ClientHeight = 32
    75     ClientWidth = 847
     76    ClientHeight = 38
     77    ClientWidth = 1016
     78    ParentFont = False
    7679    TabOrder = 1
    7780    object CheckBoxExactLength: TCheckBox
    78       Left = 10
    79       Height = 24
    80       Top = 4
    81       Width = 107
     81      Left = 12
     82      Height = 30
     83      Top = 5
     84      Width = 132
    8285      Action = AFilterSameLength
     86      ParentFont = False
    8387      TabOrder = 0
    8488    end
    8589    object CheckBoxCaseSensitive: TCheckBox
    86       Left = 200
    87       Height = 24
    88       Top = 4
    89       Width = 133
     90      Left = 240
     91      Height = 30
     92      Top = 5
     93      Width = 165
    9094      Action = AFilterSameLetterCase
     95      ParentFont = False
    9196      TabOrder = 1
    9297    end
    9398    object CheckBoxEnabledCategories: TCheckBox
    94       Left = 450
    95       Height = 24
    96       Top = 4
    97       Width = 151
     99      Left = 540
     100      Height = 30
     101      Top = 5
     102      Width = 187
    98103      Action = AFilterEnabledCategories
     104      ParentFont = False
    99105      TabOrder = 2
    100106    end
     
    102108  object CoolBar1: TCoolBar
    103109    Left = 0
    104     Height = 38
     110    Height = 43
    105111    Top = 0
    106     Width = 847
     112    Width = 1016
    107113    AutoSize = True
    108114    Bands = <   
     
    136142      end>
    137143    Images = Core.ImageList1
     144    ParentFont = False
    138145    object ToolBarFile: TToolBar
    139146      AnchorSideLeft.Control = CoolBar1
    140147      AnchorSideTop.Control = CoolBar1
    141148      Left = 24
    142       Height = 28
    143       Top = 5
    144       Width = 132
     149      Height = 33
     150      Top = 5
     151      Width = 159
    145152      Align = alNone
    146153      AutoSize = True
     
    151158      EdgeOuter = esNone
    152159      Images = Core.ImageList1
     160      ParentFont = False
    153161      ParentShowHint = False
    154162      ShowHint = True
     
    161169      end
    162170      object ToolButton6: TToolButton
    163         Left = 30
     171        Left = 36
    164172        Top = 0
    165173        Action = AFileOpen
     
    168176      end
    169177      object ToolButton7: TToolButton
    170         Left = 74
     178        Left = 89
    171179        Top = 0
    172180        Action = AFileSave
    173181      end
    174182      object ToolButton12: TToolButton
    175         Left = 103
     183        Left = 124
    176184        Top = 0
    177185        Action = AFileClose
     
    182190      AnchorSideTop.Control = CoolBar1
    183191      Left = 188
    184       Height = 28
    185       Top = 5
    186       Width = 117
     192      Height = 33
     193      Top = 5
     194      Width = 141
    187195      Align = alNone
    188196      AutoSize = True
     
    193201      EdgeOuter = esNone
    194202      Images = Core.ImageList1
     203      ParentFont = False
    195204      ParentShowHint = False
    196205      ShowHint = True
     
    203212      end
    204213      object ToolButton3: TToolButton
    205         Left = 30
     214        Left = 36
    206215        Top = 0
    207216        Action = AShowCategories
    208217      end
    209218      object ToolButton5: TToolButton
    210         Left = 59
     219        Left = 71
    211220        Top = 0
    212221        Action = AShowImportSources
    213222      end
    214223      object ToolButton4: TToolButton
    215         Left = 88
     224        Left = 106
    216225        Top = 0
    217226        Action = AShowImportFormats
     
    222231      AnchorSideTop.Control = CoolBar1
    223232      Left = 337
    224       Height = 28
    225       Top = 5
    226       Width = 59
     233      Height = 33
     234      Top = 5
     235      Width = 71
    227236      Align = alNone
    228237      AutoSize = True
     
    233242      EdgeOuter = esNone
    234243      Images = Core.ImageList1
     244      ParentFont = False
    235245      ParentShowHint = False
    236246      ShowHint = True
     
    238248      Transparent = True
    239249      object ToolButton11: TToolButton
    240         Left = 30
     250        Left = 36
    241251        Top = 0
    242252        Action = ASettings
     
    252262      AnchorSideTop.Control = CoolBar1
    253263      Left = 428
    254       Height = 28
    255       Top = 5
    256       Width = 88
     264      Height = 33
     265      Top = 5
     266      Width = 106
    257267      Align = alNone
    258268      AutoSize = True
     
    263273      EdgeOuter = esNone
    264274      Images = Core.ImageList1
     275      ParentFont = False
    265276      ParentShowHint = False
    266277      ShowHint = True
     
    274285      end
    275286      object ToolButton13: TToolButton
    276         Left = 30
     287        Left = 36
    277288        Top = 0
    278289        Action = AFilterSameLetterCase
     
    280291      end
    281292      object ToolButton8: TToolButton
    282         Left = 59
     293        Left = 71
    283294        Top = 0
    284295        Action = AFilterEnabledCategories
     
    289300  object StatusBar1: TStatusBar
    290301    Left = 0
    291     Height = 28
    292     Top = 549
    293     Width = 847
     302    Height = 27
     303    Top = 661
     304    Width = 1016
    294305    Panels = <   
    295306      item
    296         Width = 250
     307        Width = 300
    297308      end   
    298309      item
    299         Width = 250
     310        Width = 300
    300311      end>
     312    ParentFont = False
    301313    SimplePanel = False
    302314  end
    303315  object ActionList1: TActionList
    304316    Images = Core.ImageList1
    305     left = 590
    306     top = 240
     317    Left = 708
     318    Top = 288
    307319    object AExit: TAction
    308320      Caption = 'Exit'
     
    426438  object MainMenu1: TMainMenu
    427439    Images = Core.ImageList1
    428     left = 590
    429     top = 170
     440    Left = 708
     441    Top = 204
    430442    object MenuItem8: TMenuItem
    431443      Caption = 'File'
     
    515527  object OpenDialog1: TOpenDialog
    516528    DefaultExt = '.adp'
    517     left = 100
    518     top = 260
     529    Left = 120
     530    Top = 312
    519531  end
    520532  object SaveDialog1: TSaveDialog
    521533    DefaultExt = '.adp'
    522534    Filter = 'Acronym Decoder project (.adp)|*.adp|All files|*.*'
    523     left = 100
    524     top = 180
     535    Left = 120
     536    Top = 216
    525537  end
    526538  object LastOpenedList1: TLastOpenedList
    527539    MaxCount = 10
    528540    OnChange = LastOpenedList1Change
    529     left = 330
    530     top = 300
     541    Left = 396
     542    Top = 360
    531543  end
    532544  object ListViewSort1: TListViewSort
     
    537549    Column = 2
    538550    Order = soDown
    539     left = 590
    540     top = 320
     551    Left = 708
     552    Top = 384
    541553  end
    542554  object PopupMenuOpenRecent: TPopupMenu
    543555    Images = Core.ImageList1
    544     left = 100
    545     top = 350
     556    Left = 120
     557    Top = 420
    546558  end
    547559  object PopupMenuFilter: TPopupMenu
    548     left = 345
    549     top = 181
     560    Left = 414
     561    Top = 217
    550562    object MenuItem1: TMenuItem
    551563      Action = AManageAcronym
     
    556568    end
    557569  end
     570  object AboutDialog1: TAboutDialog
     571    Translator = Core.Translator
     572    ThemeManager = Core.ThemeManager
     573    ApplicationInfo = Core.ApplicationInfo1
     574    Left = 392
     575    Top = 448
     576  end
    558577end
  • trunk/Forms/UFormMain.pas

    r204 r207  
    88  Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, Menus,
    99  ComCtrls, StdCtrls, ExtCtrls, ActnList, Grids, UAcronym, UPersistentForm,
    10   URegistry, ULastOpenedList, UListViewSort, UJobProgressView,
     10  URegistry, ULastOpenedList, UListViewSort, UJobProgressView, UAboutDialog,
    1111  Registry, fgl, LazUTF8, LazFileUtils;
    1212
     
    1616
    1717  TFormMain = class(TForm)
     18    AboutDialog1: TAboutDialog;
    1819    ADocumentCheck: TAction;
    1920    AFilterEnabledCategories: TAction;
     
    439440procedure TFormMain.AShowAboutExecute(Sender: TObject);
    440441begin
    441   FormAbout := TFormAbout.Create(Self);
    442   try
    443     FormAbout.ApplicationInfo := Core.ApplicationInfo1;
    444     FormAbout.ShowModal;
    445   finally
    446     FreeAndNil(FormAbout);
    447   end;
     442  AboutDialog1.Show;
    448443end;
    449444
     
    760755  // If installed in Linux system then use installation directory for po files
    761756  if Application.ExeName = '/usr/bin/' + ExtractFileNameOnly(Application.ExeName) then
    762     Core.CoolTranslator1.POFilesFolder := '/usr/share/' + ExtractFileNameOnly(Application.ExeName) + '/languages';
     757    Core.Translator.POFilesFolder := '/usr/share/' + ExtractFileNameOnly(Application.ExeName) + '/languages';
    763758  {$ENDIF}
    764759
  • trunk/Forms/UFormSettings.pas

    r184 r207  
    8181procedure TFormSettings.FormCreate(Sender: TObject);
    8282begin
    83   Core.CoolTranslator1.TranslateComponentRecursive(Self);
     83  Core.Translator.TranslateComponentRecursive(Self);
    8484  Core.ThemeManager.UseTheme(Self);
    8585  Core.ThemeManager.Themes.LoadToStrings(ComboBoxTheme.Items);
    86   Core.CoolTranslator1.LanguageListToStrings(ComboBoxLanguage.Items);
     86  Core.Translator.LanguageListToStrings(ComboBoxLanguage.Items);
    8787end;
    8888
    8989procedure TFormSettings.Load;
    9090begin
    91   ComboBoxLanguage.ItemIndex := ComboBoxLanguage.Items.IndexOfObject(Core.CoolTranslator1.Language);
     91  ComboBoxLanguage.ItemIndex := ComboBoxLanguage.Items.IndexOfObject(Core.Translator.Language);
    9292  if ComboBoxLanguage.ItemIndex = -1 then ComboBoxLanguage.ItemIndex := 0;
    9393  ComboBoxTheme.ItemIndex := ComboBoxTheme.Items.IndexOfObject(Core.ThemeManager.Theme);
     
    105105begin
    106106  if ComboBoxLanguage.ItemIndex <> -1 then
    107     Core.CoolTranslator1.Language := TLanguage(ComboBoxLanguage.Items.Objects[ComboBoxLanguage.ItemIndex]);
     107    Core.Translator.Language := TLanguage(ComboBoxLanguage.Items.Objects[ComboBoxLanguage.ItemIndex]);
    108108  if ComboBoxTheme.ItemIndex <> -1 then
    109109    Core.ThemeManager.Theme := TTheme(ComboBoxTheme.Items.Objects[ComboBoxTheme.ItemIndex]);
  • trunk/Languages/AcronymDecoder.cs.po

    r204 r207  
    1212"X-Generator: Poedit 2.2\n"
    1313
    14 #: tformabout.buttonclose.caption
    15 msgctxt "tformabout.buttonclose.caption"
    16 msgid "Close"
    17 msgstr "Zavřít"
    18 
    19 #: tformabout.buttonhomepage.caption
    20 msgid "Home page"
    21 msgstr "Domovská stránka"
    22 
    23 #: tformabout.caption
    24 msgctxt "tformabout.caption"
    25 msgid "About"
    26 msgstr "O aplikaci"
    27 
    28 #: tformabout.labelappname.caption
    29 msgctxt "tformabout.labelappname.caption"
    30 msgid "Acronym Decoder"
    31 msgstr "Acronym Decoder"
    32 
    33 #: tformabout.labelcontent.caption
    34 msgctxt "tformabout.labelcontent.caption"
    35 msgid "   "
    36 msgstr "   "
     14#: tcore.applicationinfo1.description
     15msgid "A simple tool for quick searching of meaning for various acronyms and abbreviations."
     16msgstr ""
    3717
    3818#: tformacronym.acategoryadd.caption
     
    850830msgstr "Startovat zmenšený do oznamovací oblasti"
    851831
    852 #: uformabout.slicense
    853 msgid "License"
    854 msgstr "Licence"
    855 
    856 #: uformabout.sreleasedate
    857 msgid "Release date"
    858 msgstr "Datum uvolnění"
    859 
    860 #: uformabout.sversion
    861 msgid "Version"
    862 msgstr "Verze"
    863 
    864832#: uformacronyms.sfiltered
    865833msgid "Filtered"
  • trunk/Languages/AcronymDecoder.po

    r204 r207  
    22msgstr "Content-Type: text/plain; charset=UTF-8"
    33
    4 #: tformabout.buttonclose.caption
    5 msgctxt "TFORMABOUT.BUTTONCLOSE.CAPTION"
    6 msgid "Close"
    7 msgstr ""
    8 
    9 #: tformabout.buttonhomepage.caption
    10 msgid "Home page"
    11 msgstr ""
    12 
    13 #: tformabout.caption
    14 msgctxt "tformabout.caption"
    15 msgid "About"
    16 msgstr ""
    17 
    18 #: tformabout.labelappname.caption
    19 msgctxt "TFORMABOUT.LABELAPPNAME.CAPTION"
    20 msgid "Acronym Decoder"
    21 msgstr ""
    22 
    23 #: tformabout.labelcontent.caption
    24 msgctxt "TFORMABOUT.LABELCONTENT.CAPTION"
    25 msgid "   "
     4#: tcore.applicationinfo1.description
     5msgid "A simple tool for quick searching of meaning for various acronyms and abbreviations."
    266msgstr ""
    277
     
    840820msgstr ""
    841821
    842 #: uformabout.slicense
    843 msgid "License"
    844 msgstr ""
    845 
    846 #: uformabout.sreleasedate
    847 msgid "Release date"
    848 msgstr ""
    849 
    850 #: uformabout.sversion
    851 msgid "Version"
    852 msgstr ""
    853 
    854822#: uformacronyms.sfiltered
    855823msgid "Filtered"
  • trunk/Packages/Common/Common.lpk

    r204 r207  
    3737      </Other>
    3838    </CompilerOptions>
    39     <Description Value="Various libraries"/>
    40     <License Value="GNU/GPL"/>
    41     <Version Minor="7"/>
    42     <Files Count="22">
     39    <Description Value="Common package with various useful units.
     40
     41Source: https://svn.zdechov.net/PascalClassLibrary/Common/"/>
     42    <License Value="Copy left."/>
     43    <Version Minor="8"/>
     44    <Files Count="29">
    4345      <Item1>
    4446        <Filename Value="StopWatch.pas"/>
     
    139141        <UnitName Value="UStringTable"/>
    140142      </Item22>
     143      <Item23>
     144        <Filename Value="UMetaCanvas.pas"/>
     145        <UnitName Value="UMetaCanvas"/>
     146      </Item23>
     147      <Item24>
     148        <Filename Value="UGeometric.pas"/>
     149        <UnitName Value="UGeometric"/>
     150      </Item24>
     151      <Item25>
     152        <Filename Value="UTranslator.pas"/>
     153        <HasRegisterProc Value="True"/>
     154        <UnitName Value="UTranslator"/>
     155      </Item25>
     156      <Item26>
     157        <Filename Value="ULanguages.pas"/>
     158        <UnitName Value="ULanguages"/>
     159      </Item26>
     160      <Item27>
     161        <Filename Value="UFormAbout.pas"/>
     162        <UnitName Value="UFormAbout"/>
     163      </Item27>
     164      <Item28>
     165        <Filename Value="UAboutDialog.pas"/>
     166        <HasRegisterProc Value="True"/>
     167        <UnitName Value="UAboutDialog"/>
     168      </Item28>
     169      <Item29>
     170        <Filename Value="UPixelPointer.pas"/>
     171        <UnitName Value="UPixelPointer"/>
     172      </Item29>
    141173    </Files>
    142174    <i18n>
  • trunk/Packages/Common/Common.pas

    r204 r207  
    1212  UMemory, UResetableThread, UPool, ULastOpenedList, URegistry,
    1313  UJobProgressView, UXMLUtils, UApplicationInfo, USyncCounter, UListViewSort,
    14   UPersistentForm, UFindFile, UScaleDPI, UTheme, UStringTable,
    15   LazarusPackageIntf;
     14  UPersistentForm, UFindFile, UScaleDPI, UTheme, UStringTable, UMetaCanvas,
     15  UGeometric, UTranslator, ULanguages, UFormAbout, UAboutDialog,
     16  UPixelPointer, LazarusPackageIntf;
    1617
    1718implementation
     
    2930  RegisterUnit('UScaleDPI', @UScaleDPI.Register);
    3031  RegisterUnit('UTheme', @UTheme.Register);
     32  RegisterUnit('UTranslator', @UTranslator.Register);
     33  RegisterUnit('UAboutDialog', @UAboutDialog.Register);
    3134end;
    3235
  • trunk/Packages/Common/UApplicationInfo.pas

    r181 r207  
    66
    77uses
    8   SysUtils, Classes, Forms, URegistry, Controls;
     8  SysUtils, Classes, Forms, URegistry, Controls, Graphics, LCLType;
    99
    1010type
     
    1414  TApplicationInfo = class(TComponent)
    1515  private
    16     FDescription: TCaption;
     16    FDescription: TTranslateString;
     17    FIcon: TBitmap;
    1718    FIdentification: Byte;
    1819    FLicense: string;
     
    3334  public
    3435    constructor Create(AOwner: TComponent); override;
     36    destructor Destroy; override;
    3537    property Version: string read GetVersion;
    3638    function GetRegistryContext: TRegistryContext;
     
    4749    property EmailContact: string read FEmailContact write FEmailContact;
    4850    property AppName: string read FAppName write FAppName;
    49     property Description: string read FDescription write FDescription;
     51    property Description: TTranslateString read FDescription write FDescription;
    5052    property ReleaseDate: TDateTime read FReleaseDate write FReleaseDate;
    5153    property RegistryKey: string read FRegistryKey write FRegistryKey;
    5254    property RegistryRoot: TRegistryRoot read FRegistryRoot write FRegistryRoot;
    5355    property License: string read FLicense write FLicense;
     56    property Icon: TBitmap read FIcon write FIcon;
    5457  end;
    5558
     
    7477constructor TApplicationInfo.Create(AOwner: TComponent);
    7578begin
    76   inherited Create(AOwner);
     79  inherited;
    7780  FVersionMajor := 1;
    7881  FIdentification := 1;
     
    8083  FRegistryKey := '\Software\' + FAppName;
    8184  FRegistryRoot := rrKeyCurrentUser;
     85  FIcon := TBitmap.Create;
     86end;
     87
     88destructor TApplicationInfo.Destroy;
     89begin
     90  FreeAndNil(FIcon);
     91  inherited;
    8292end;
    8393
  • trunk/Packages/Common/UCommon.pas

    r204 r207  
    4040{$ENDIF}
    4141
    42 function IntToBin(Data: Int64; Count: Byte): string;
     42function AddLeadingZeroes(const aNumber, Length : integer) : string;
    4343function BinToInt(BinStr: string): Int64;
    44 function TryHexToInt(Data: string; var Value: Integer): Boolean;
    45 function TryBinToInt(Data: string; var Value: Integer): Boolean;
    4644function BinToHexString(Source: AnsiString): string;
    4745//function DelTree(DirName : string): Boolean;
     
    4947function BCDToInt(Value: Byte): Byte;
    5048function CompareByteArray(Data1, Data2: TArrayOfByte): Boolean;
     49procedure CopyStringArray(Dest: TStringArray; Source: array of string);
     50function CombinePaths(Path1, Path2: string): string;
     51function ComputerName: string;
     52procedure DeleteFiles(APath, AFileSpec: string);
     53procedure ExecuteProgram(Executable: string; Parameters: array of string);
     54procedure FileDialogUpdateFilterFileType(FileDialog: TOpenDialog);
     55procedure FreeThenNil(var Obj);
     56function GetDirCount(Dir: string): Integer;
    5157function GetUserName: string;
    52 function LoggedOnUserNameEx(Format: TUserNameFormat): string;
    53 function SplitString(var Text: string; Count: Word): string;
    5458function GetBitCount(Variable: QWord; MaxIndex: Integer): Integer;
    5559function GetBit(Variable: QWord; Index: Byte): Boolean;
     60function GetStringPart(var Text: string; Separator: string): string;
     61function GenerateNewName(OldName: string): string;
     62function GetFileFilterItemExt(Filter: string; Index: Integer): string;
     63function IntToBin(Data: Int64; Count: Byte): string;
     64function LastPos(const SubStr: String; const S: String): Integer;
     65function LoadFileToStr(const FileName: TFileName): AnsiString;
     66function LoggedOnUserNameEx(Format: TUserNameFormat): string;
     67function MergeArray(A, B: array of string): TArrayOfString;
     68function OccurenceOfChar(What: Char; Where: string): Integer;
     69procedure OpenWebPage(URL: string);
     70procedure OpenFileInShell(FileName: string);
     71function PosFromIndex(SubStr: string; Text: string;
     72  StartIndex: Integer): Integer;
     73function PosFromIndexReverse(SubStr: string; Text: string;
     74  StartIndex: Integer): Integer;
     75function RemoveQuotes(Text: string): string;
     76procedure SaveStringToFile(S, FileName: string);
    5677procedure SetBit(var Variable: Int64; Index: Byte; State: Boolean); overload;
    5778procedure SetBit(var Variable: QWord; Index: Byte; State: Boolean); overload;
    5879procedure SetBit(var Variable: Cardinal; Index: Byte; State: Boolean); overload;
    5980procedure SetBit(var Variable: Word; Index: Byte; State: Boolean); overload;
    60 function AddLeadingZeroes(const aNumber, Length : integer) : string;
    61 function LastPos(const SubStr: String; const S: String): Integer;
    62 function GenerateNewName(OldName: string): string;
    63 function GetFileFilterItemExt(Filter: string; Index: Integer): string;
    64 procedure FileDialogUpdateFilterFileType(FileDialog: TOpenDialog);
    65 procedure DeleteFiles(APath, AFileSpec: string);
    66 procedure OpenWebPage(URL: string);
    67 procedure OpenFileInShell(FileName: string);
    68 procedure ExecuteProgram(Executable: string; Parameters: array of string);
    69 procedure FreeThenNil(var Obj);
    70 function RemoveQuotes(Text: string): string;
    71 function ComputerName: string;
    72 function OccurenceOfChar(What: Char; Where: string): Integer;
    73 function GetDirCount(Dir: string): Integer;
    74 function MergeArray(A, B: array of string): TArrayOfString;
    75 function LoadFileToStr(const FileName: TFileName): AnsiString;
    76 procedure SaveStringToFile(S, FileName: string);
    7781procedure SearchFiles(AList: TStrings; Dir: string;
    7882  FilterMethod: TFilterMethod = nil; FileNameMethod: TFileNameMethod = nil);
    79 function GetStringPart(var Text: string; Separator: string): string;
     83function SplitString(var Text: string; Count: Word): string;
    8084function StripTags(const S: string): string;
    81 function PosFromIndex(SubStr: string; Text: string;
    82   StartIndex: Integer): Integer;
    83 function PosFromIndexReverse(SubStr: string; Text: string;
    84   StartIndex: Integer): Integer;
    85 procedure CopyStringArray(Dest: TStringArray; Source: array of string);
     85function TryHexToInt(Data: string; var Value: Integer): Boolean;
     86function TryBinToInt(Data: string; var Value: Integer): Boolean;
    8687
    8788
     
    669670end;
    670671
     672function CombinePaths(Path1, Path2: string): string;
     673begin
     674  Result := Path1;
     675  if Result <> '' then Result := Result + DirectorySeparator + Path2
     676    else Result := Path2;
     677end;
     678
    671679
    672680initialization
  • trunk/Packages/Common/UListViewSort.pas

    r204 r207  
    11unit UListViewSort;
    22
    3 // Date: 2010-11-03
     3// Date: 2019-05-17
    44
    55{$mode delphi}
     
    88
    99uses
    10   {$IFDEF Windows}Windows, CommCtrl, {$ENDIF}Classes, Graphics, ComCtrls, SysUtils,
     10  {$IFDEF Windows}Windows, CommCtrl, LMessages, {$ENDIF}Classes, Graphics, ComCtrls, SysUtils,
    1111  Controls, DateUtils, Dialogs, fgl, Forms, Grids, StdCtrls, ExtCtrls,
    12   LclIntf, LMessages, LclType, LResources;
     12  LclIntf, LclType, LResources;
    1313
    1414type
  • trunk/Packages/Common/UPersistentForm.pas

    r200 r207  
    33{$mode delphi}
    44
    5 // Date: 2015-04-18
     5// Date: 2020-11-26
    66
    77interface
     
    99uses
    1010  Classes, SysUtils, Forms, URegistry, LCLIntf, Registry, Controls, ComCtrls,
    11   ExtCtrls;
     11  ExtCtrls, LCLType;
    1212
    1313type
     
    2626    FormRestoredSize: TRect;
    2727    FormWindowState: TWindowState;
     28    FormFullScreen: Boolean;
    2829    Form: TForm;
    2930    procedure LoadFromRegistry(RegistryContext: TRegistryContext);
     
    3132    function CheckEntireVisible(Rect: TRect): TRect;
    3233    function CheckPartVisible(Rect: TRect; Part: Integer): TRect;
    33     procedure Load(Form: TForm; DefaultMaximized: Boolean = False);
     34    procedure Load(Form: TForm; DefaultMaximized: Boolean = False;
     35      DefaultFullScreen: Boolean = False);
    3436    procedure Save(Form: TForm);
    3537    constructor Create(AOwner: TComponent); override;
     38    procedure SetFullScreen(State: Boolean);
    3639    property RegistryContext: TRegistryContext read FRegistryContext
    3740      write FRegistryContext;
     
    4346procedure Register;
    4447
     48
    4549implementation
    46 
    4750
    4851procedure Register;
     
    169172      + FormRestoredSize.Top;
    170173    // Other state
    171     FormWindowState := TWindowState(ReadIntegerWithDefault('WindowState', Integer(wsNormal)));
     174    FormWindowState := TWindowState(ReadIntegerWithDefault('WindowState', Integer(FormWindowState)));
     175    FormFullScreen := ReadBoolWithDefault('FullScreen', FormFullScreen);
    172176  finally
    173177    Free;
     
    193197    // Other state
    194198    WriteInteger('WindowState', Integer(FormWindowState));
     199    WriteBool('FullScreen', FormFullScreen);
    195200  finally
    196201    Free;
     
    250255end;
    251256
    252 procedure TPersistentForm.Load(Form: TForm; DefaultMaximized: Boolean = False);
     257procedure TPersistentForm.Load(Form: TForm; DefaultMaximized: Boolean = False;
     258  DefaultFullScreen: Boolean = False);
    253259begin
    254260  Self.Form := Form;
     
    258264  FormRestoredSize := Bounds((Screen.Width - Form.Width) div 2,
    259265    (Screen.Height - Form.Height) div 2, Form.Width, Form.Height);
     266  FormWindowState := Form.WindowState;
     267  FormFullScreen := DefaultFullScreen;
    260268
    261269  LoadFromRegistry(RegistryContext);
     
    277285      Form.BoundsRect := FormNormalSize;
    278286  end;
     287  if FormFullScreen then SetFullScreen(True);
    279288  LoadControl(Form);
    280289end;
     
    284293  Self.Form := Form;
    285294  FormNormalSize := Bounds(Form.Left, Form.Top, Form.Width, Form.Height);
    286   FormRestoredSize := Bounds(Form.RestoredLeft, Form.RestoredTop, Form.RestoredWidth,
    287     Form.RestoredHeight);
     295  if not FormFullScreen then
     296    FormRestoredSize := Bounds(Form.RestoredLeft, Form.RestoredTop, Form.RestoredWidth,
     297      Form.RestoredHeight);
    288298  FormWindowState := Form.WindowState;
    289299  SaveToRegistry(RegistryContext);
     
    300310end;
    301311
     312procedure TPersistentForm.SetFullScreen(State: Boolean);
     313begin
     314  if State then begin
     315    FormFullScreen := True;
     316    FormNormalSize := Form.BoundsRect;
     317    FormRestoredSize := Bounds(Form.RestoredLeft, Form.RestoredTop, Form.RestoredWidth,
     318      Form.RestoredHeight);
     319    FormWindowState := Form.WindowState;
     320    ShowWindow(Form.Handle, SW_SHOWFULLSCREEN);
     321    {$IFDEF WINDOWS}
     322    Form.BorderStyle := bsNone;
     323    {$ENDIF}
     324  end else begin
     325    FormFullScreen := False;
     326    {$IFDEF WINDOWS}
     327    Form.BorderStyle := bsSizeable;
     328    {$ENDIF}
     329    ShowWindow(Form.Handle, SW_SHOWNORMAL);
     330    if FormWindowState = wsNormal then begin
     331      Form.BoundsRect := FormNormalSize;
     332    end else
     333    if FormWindowState = wsMaximized then begin
     334      Form.BoundsRect := FormRestoredSize;
     335      Form.WindowState := wsMaximized;
     336    end;
     337  end;
     338end;
     339
    302340end.
    303341
  • trunk/Packages/Common/URegistry.pas

    r204 r207  
    11unit URegistry;
    22
    3 {$MODE Delphi}
     3{$MODE delphi}
    44
    55interface
     
    1717    RootKey: HKEY;
    1818    Key: string;
     19    class function Create(RootKey: TRegistryRoot; Key: string): TRegistryContext; static; overload;
     20    class function Create(RootKey: HKEY; Key: string): TRegistryContext; static; overload;
    1921    class operator Equal(A, B: TRegistryContext): Boolean;
    20     function Create(RootKey: TRegistryRoot; Key: string): TRegistryContext; overload;
    21     function Create(RootKey: HKEY; Key: string): TRegistryContext; overload;
    2222  end;
    2323
     
    5858end;
    5959
    60 function TRegistryContext.Create(RootKey: TRegistryRoot; Key: string): TRegistryContext;
     60class function TRegistryContext.Create(RootKey: TRegistryRoot; Key: string): TRegistryContext;
    6161begin
    6262  Result.RootKey := RegistryRootHKEY[RootKey];
     
    6464end;
    6565
    66 function TRegistryContext.Create(RootKey: HKEY; Key: string): TRegistryContext;
     66class function TRegistryContext.Create(RootKey: HKEY; Key: string): TRegistryContext;
    6767begin
    6868  Result.RootKey := RootKey;
     
    133133begin
    134134  {$IFDEF Linux}
    135   CloseKey;
     135  //CloseKey;
    136136  {$ENDIF}
    137137  Result := inherited OpenKey(Key, CanCreate);
  • trunk/Packages/Common/UScaleDPI.pas

    r200 r207  
    227227    Temp[I] := TBitmap.Create;
    228228    Temp[I].SetSize(NewWidth, NewHeight);
     229    {$IFDEF Linux}
     230    Temp[I].PixelFormat := pf24bit;
     231    {$ELSE}
    229232    Temp[I].PixelFormat := pf32bit;
     233    {$ENDIF}
    230234    Temp[I].TransparentColor := TempBmp.TransparentColor;
    231235    //Temp[I].TransparentMode := TempBmp.TransparentMode;
  • trunk/Packages/Common/UThreading.pas

    r181 r207  
    66
    77uses
    8   Classes, SysUtils, Forms, Contnrs, SyncObjs;
     8  Classes, SysUtils, Forms, fgl, SyncObjs;
    99
    1010type
     
    2222    function GetSuspended: Boolean; virtual; abstract;
    2323    function GetTerminated: Boolean; virtual; abstract;
    24     function GetThreadId: Integer; virtual; abstract;
     24    function GetThreadId: TThreadID; virtual; abstract;
    2525    procedure SetFreeOnTerminate(const AValue: Boolean); virtual; abstract;
    2626    procedure SetPriority(const AValue: TThreadPriority); virtual; abstract;
     
    4242    property Terminated: Boolean read GetTerminated write SetTerminated;
    4343    property Finished: Boolean read GetFinished;
    44     property ThreadId: Integer read GetThreadId;
     44    property ThreadId: TThreadID read GetThreadId;
    4545  end;
    4646
     
    6868    function GetSuspended: Boolean; override;
    6969    function GetTerminated: Boolean; override;
    70     function GetThreadId: Integer; override;
     70    function GetThreadId: TThreadID; override;
    7171    procedure SetFreeOnTerminate(const AValue: Boolean); override;
    7272    procedure SetPriority(const AValue: TThreadPriority); override;
     
    102102  { TThreadList }
    103103
    104   TThreadList = class(TObjectList)
    105     function FindById(Id: Integer): TVirtualThread;
     104  TThreadList = class(TFPGObjectList<TVirtualThread>)
     105    function FindById(Id: TThreadID): TVirtualThread;
    106106    constructor Create; virtual;
    107107  end;
     
    164164  if MainThreadID = ThreadID then Method
    165165  else begin
    166     Thread := ThreadList.FindById(ThreadID);
     166    try
     167      ThreadListLock.Acquire;
     168      Thread := ThreadList.FindById(ThreadID);
     169    finally
     170      ThreadListLock.Release;
     171    end;
    167172    if Assigned(Thread) then begin
    168173      Thread.Synchronize(Method);
     
    173178{ TThreadList }
    174179
    175 function TThreadList.FindById(Id: Integer): TVirtualThread;
     180function TThreadList.FindById(Id: TThreadID): TVirtualThread;
    176181var
    177182  I: Integer;
    178183begin
    179184  I := 0;
    180   while (I < ThreadList.Count) and (TVirtualThread(ThreadList[I]).ThreadID <> Id) do
     185  while (I < ThreadList.Count) and (ThreadList[I].ThreadID <> Id) do
    181186    Inc(I);
    182   if I < ThreadList.Count then Result := TVirtualThread(ThreadList[I])
     187  if I < ThreadList.Count then Result := ThreadList[I]
    183188    else Result := nil;
    184189end;
     
    233238end;
    234239
    235 function TListedThread.GetThreadId: Integer;
     240function TListedThread.GetThreadId: TThreadID;
    236241begin
    237242  Result := FThread.ThreadID;
     
    356361ThreadListLock := TCriticalSection.Create;
    357362ThreadList := TThreadList.Create;
    358 ThreadList.OwnsObjects := False;
     363ThreadList.FreeObjects := False;
    359364
    360365finalization
  • trunk/Read Me.txt

    r203 r207  
    1616* Home page: https://app.zdechov.net/AcronymDecoder/
    1717* Source code: https://svn.zdechov.net/AcronymDecoder/
    18 * Developed in [http://www.lazarus-ide.org/ Lazarus/FPC] 2.0.2
     18* Developed in [http://www.lazarus-ide.org/ Lazarus/FPC] 2.0.12
    1919* To build new Windows installer run Install/build.bat. InnoSetup (http://www.jrsoftware.org/isdl.php) needs to be installed).
  • trunk/UCore.lfm

    r204 r207  
    33  OnDestroy = DataModuleDestroy
    44  OldCreateOrder = False
    5   Height = 648
    6   HorizontalOffset = 535
    7   VerticalOffset = 220
    8   Width = 701
    9   PPI = 120
    10   object CoolTranslator1: TCoolTranslator
     5  Height = 778
     6  HorizontalOffset = 642
     7  VerticalOffset = 264
     8  Width = 841
     9  PPI = 144
     10  object Translator: TTranslator
    1111    POFilesFolder = 'Languages'
    12     OnTranslate = CoolTranslator1Translate
    13     left = 190
    14     top = 190
     12    OnTranslate = TranslatorTranslate
     13    Left = 228
     14    Top = 228
    1515  end
    1616  object PersistentForm1: TPersistentForm
    1717    MinVisiblePart = 50
    1818    EntireVisible = False
    19     left = 365
    20     top = 195
     19    Left = 438
     20    Top = 234
    2121  end
    2222  object JobProgressView1: TJobProgressView
     
    2424    ShowDelay = 0
    2525    AutoClose = False
    26     left = 365
    27     top = 340
     26    Left = 438
     27    Top = 408
    2828  end
    2929  object ScaleDPI1: TScaleDPI
    3030    AutoDetect = False
    31     left = 195
    32     top = 340
     31    Left = 234
     32    Top = 408
    3333  end
    3434  object ImageList1: TImageList
    35     left = 365
    36     top = 420
     35    Left = 438
     36    Top = 504
    3737    Bitmap = {
    3838      4C69150000001000000010000000000000000000000000000000000000000000
     
    12491249    Visible = True
    12501250    OnClick = TrayIcon1Click
    1251     left = 190
    1252     top = 420
     1251    Left = 228
     1252    Top = 504
    12531253  end
    12541254  object PopupMenuTrayIcon: TPopupMenu
    12551255    Images = ImageList1
    1256     left = 190
    1257     top = 500
     1256    Left = 228
     1257    Top = 600
    12581258    object MenuItem2: TMenuItem
    12591259      Action = FormMain.AShow
     
    12821282    Height = 32
    12831283    Width = 32
    1284     left = 530
    1285     top = 420
     1284    Left = 636
     1285    Top = 504
    12861286    Bitmap = {
    12871287      4C69110000002000000020000000000000000000000000000000000000000000
     
    34763476    AppName = 'Acronym Decoder'
    34773477    Description = 'A simple tool for quick searching of meaning for various acronyms and abbreviations.'
    3478     ReleaseDate = 43591
    3479     RegistryKey = '\Software\'
     3478    ReleaseDate = 44322
     3479    RegistryKey = '\Software\Chronosoft\AcronymDecoder'
    34803480    RegistryRoot = rrKeyCurrentUser
    34813481    License = 'CC0'
    3482     left = 96
    3483     top = 40
     3482    Icon.Data = {
     3483      36400000424D3640000000000000360000002800000040000000400000000100
     3484      2000000000000040000064000000640000000000000000000000000000000000
     3485      0000000000000000000000000000000000000000000000000000000000000000
     3486      0000000000000000000000000000000000000000000000000000000000000000
     3487      0000000000000000000000000000000000000000000000000000000000000000
     3488      0000000000000000000000000000000000000000000000000000000000000000
     3489      0000000000000000000000000000000000000000000000000000000000000000
     3490      0000000000000000000000000000000000000000000000000000000000000000
     3491      0000000000000000000000000000000000000000000000000000000000000000
     3492      0000000000000000000000000000000000000000000000000000000000000000
     3493      0000000000000000000000000000000000000000000000000000000000000000
     3494      0000000000000000000000000000000000000000000000000000000000000000
     3495      0000000000000000000000000000000000000000000000000000000000000000
     3496      0000000000000000000000000000000000000000000000000000000000000000
     3497      0000000000000000000000000000000000000000000000000000000000000000
     3498      0000000000000000000000000000000000000000000000000000000000000000
     3499      0000000000000000000000000000000000000000000000000000000000000000
     3500      0000000000000000000000000000000000000000000000000000000000000000
     3501      0000000000000000000000000000000000000000000000000000000000000000
     3502      0000000000000000000000000000000000000000000000000000000000000000
     3503      0000000000000000000000000000000000000000000000000000000000000000
     3504      0000000000000000000000000000000000000000000000000000000000000000
     3505      0000000000000000000000000000000000000000000000000000000000000000
     3506      0000000000000000000000000000000000000000000000000000000000000000
     3507      0000000000000000000000000000000000000000000000000000000000000000
     3508      0000000000000000000000000000000000000000000000000000000000000000
     3509      0000000000000000000000000000000000000000000000000000000000000000
     3510      0000000000000000000000000000000000000000000000000000000000000000
     3511      0000000000000000000000000000000000000000000000000000000000000000
     3512      0000000000000000000000000000000000000000000000000000000000000000
     3513      0000000000000000000000000000000000000000000000000000000000000000
     3514      0000000000000000000000000000000000000000000000000000000000000000
     3515      0000000000000000000000000000000000000000000000000000000000000000
     3516      0000000000000000000000000000000000000000000000000000000000000000
     3517      0000000000000000000000000000000000000000000000000000000000000000
     3518      0000000000000000000000000000000000000000000000000000000000000000
     3519      0000000000000000000000000000000000000000000000000000000000000000
     3520      0000000000000000000000000000000000000000000000000000000000000000
     3521      0000000000000000000000000000000000000000000000000000000000000000
     3522      0000000000000000000000000000000000000000000000000000000000000000
     3523      0000000000000000000000000000000000000000000000000000000000000000
     3524      0000000000000000000000000000000000000000000000000000000000000000
     3525      0000000000000000000000000000000000000000000000000000000000000000
     3526      0000000000000000000000000000000000000000000000000000000000000000
     3527      0000000000000000000000000000000000000000000000000000000000000000
     3528      0000000000000000000000000000000000000000000000000000000000000000
     3529      0000000000000000000000000000000000000000000000000000000000000000
     3530      0000000000000000000000000000000000000000000000000000000000000000
     3531      0000000000000000000000000000000000000000000000000000000000000000
     3532      0000000000000000000000000000000000000000000000000000000000000000
     3533      0000000000000000000000000000000000000000000000000000000000000000
     3534      0000000000000000000000000000000000000000000000000000000000000000
     3535      0000000000000000000000000000000000000000000000000000000000000000
     3536      0000000000000000000000000000000000000000000000000000000000000000
     3537      0000000000000000000000000000000000000000000000000000000000000000
     3538      0000000000000000000000000000000000000000000000000000000000000000
     3539      0000000000000000000000000000000000000000000000000000000000000000
     3540      0000000000000000000000000000000000000000000000000000000000000000
     3541      0000000000000000000000000000000000000000000000000000000000000000
     3542      0000000000000000000000000000000000000000000000000000000000000000
     3543      0000000000000000000000000000000000000000000000000000000000000000
     3544      0000000000000000000000000000000000000000000000000000000000000000
     3545      0000000000000000000000000000000000000000000000000000000000000000
     3546      0000000000000000000000000000000000000000000000000000000000000000
     3547      0000000000000000000000000000000000000000000000000000000000000000
     3548      0000000000000000000000000000000000000000000000000000000000000000
     3549      0000000000000000000000000000000000000000000000000000000000000000
     3550      0000000000000000000000000000000000000000000000000000000000000000
     3551      0000000000000000000000000000000000000000000000000000000000000000
     3552      0000000000000000000000000000000000000000000000000000000000000000
     3553      0000000000000000000000000000000000000000000000000000000000000000
     3554      0000000000000000000000000000000000000000000000000000000000000000
     3555      0000000000000000000000000000000000000000000000000000000000000000
     3556      0000000000000000000000000000000000000000000000000000000000000000
     3557      0000000000000000000000000000000000000000000000000000000000000000
     3558      0000000000000000000000000000000000000000000000000000000000000000
     3559      0000000000000000000000000000000000000000000000000000000000000000
     3560      0000000000000000000000000000000000000000000000000000000000000000
     3561      0000000000000000000000000000000000000000000000000000000000000000
     3562      0000000000000000000000000000000000000000000000000000000000000000
     3563      0000000000000000000000000000000000000000000000000000000000000000
     3564      0000000000000000000000000000000000000000000000000000000000000000
     3565      0000000000000000000000000000000000000000000000000000000000000000
     3566      00000000000000000000000000FF000000FF000000FF000000FF000000FF0000
     3567      00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000
     3568      00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000
     3569      00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000
     3570      00FF000000FF000000FF00000000000000000000000000000000000000000000
     3571      0000000000000000000000000000000000000000000000000000000000000000
     3572      0000000000000000000000000000000000000000000000000000000000000000
     3573      0000000000000000000000000000000000000000000000000000000000000000
     3574      00000000000000000000000000FF000000FF000000FF000000FF000000FF0000
     3575      00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000
     3576      00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000
     3577      00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000
     3578      00FF000000FF000000FF000000FF000000FF0000000000000000000000000000
     3579      0000000000000000000000000000000000000000000000000000000000000000
     3580      0000000000000000000000000000000000000000000000000000000000000000
     3581      0000000000000000000000000000000000000000000000000000000000000000
     3582      00000000000000000000000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3583      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3584      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3585      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3586      FFFF000000FF000000FF000000FF000000FF000000FF000000FF000000000000
     3587      0000000000000000000000000000000000000000000000000000000000000000
     3588      0000000000000000000000000000000000000000000000000000000000000000
     3589      0000000000000000000000000000000000000000000000000000000000000000
     3590      00000000000000000000000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3591      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3592      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3593      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3594      FFFF0EC9FFFF0EC9FFFF000000FF000000FF000000FF000000FF000000FF0000
     3595      0000000000000000000000000000000000000000000000000000000000000000
     3596      0000000000000000000000000000000000000000000000000000000000000000
     3597      0000000000000000000000000000000000000000000000000000000000000000
     3598      00000000000000000000000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3599      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3600      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3601      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3602      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF000000FF000000FF0000
     3603      00FF000000000000000000000000000000000000000000000000000000000000
     3604      0000000000000000000000000000000000000000000000000000000000000000
     3605      0000000000000000000000000000000000000000000000000000000000000000
     3606      00000000000000000000000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3607      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3608      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3609      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3610      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF000000FF0000
     3611      00FF000000FF0000000000000000000000000000000000000000000000000000
     3612      0000000000000000000000000000000000000000000000000000000000FF0000
     3613      00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000
     3614      00FF000000FF000000FF000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3615      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3616      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3617      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3618      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0000
     3619      00FF000000FF000000FF00000000000000000000000000000000000000000000
     3620      0000000000000000000000000000000000000000000000000000000000FF0000
     3621      00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000
     3622      00FF000000FF000000FF000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3623      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3624      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3625      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3626      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3627      FFFF000000FF000000FF00000000000000000000000000000000000000000000
     3628      0000000000000000000000000000000000000000000000000000000000FF0000
     3629      00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000
     3630      00FF000000FF000000FF000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3631      FFFF000000FF000000FF000000FF000000FF000000FF000000FF0EC9FFFF0EC9
     3632      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3633      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF000000FF0000
     3634      00FF000000FF000000FF000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3635      FFFF000000FF000000FF000000FF000000000000000000000000000000000000
     3636      0000000000000000000000000000000000000000000000000000000000FF0000
     3637      00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000
     3638      00FF000000FF000000FF000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3639      FFFF000000FF000000FF000000FF000000FF000000FF000000FF0EC9FFFF0EC9
     3640      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3641      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF000000FF0000
     3642      00FF000000FF000000FF000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3643      FFFF000000FF000000FF000000FF000000000000000000000000000000000000
     3644      0000000000000000000000000000000000000000000000000000000000000000
     3645      0000000000000000000000000000000000000000000000000000000000000000
     3646      00000000000000000000000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3647      FFFF000000FF000000FF000000FF000000FF000000FF000000FF0EC9FFFF0EC9
     3648      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3649      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF000000FF0000
     3650      00FF000000FF000000FF000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3651      FFFF0EC9FFFF000000FF000000FF000000FF0000000000000000000000000000
     3652      0000000000000000000000000000000000000000000000000000000000000000
     3653      0000000000000000000000000000000000000000000000000000000000000000
     3654      00000000000000000000000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3655      FFFF000000FF000000FF000000FF000000FF000000FF000000FF0EC9FFFF0EC9
     3656      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3657      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF000000FF0000
     3658      00FF000000FF000000FF000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3659      FFFF0EC9FFFF000000FF000000FF000000FF0000000000000000000000000000
     3660      0000000000000000000000000000000000000000000000000000000000000000
     3661      0000000000000000000000000000000000000000000000000000000000000000
     3662      00000000000000000000000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3663      FFFF0EC9FFFF000000FF000000FF000000FF000000FF000000FF000000FF0EC9
     3664      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3665      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF000000FF000000FF0000
     3666      00FF000000FF000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3667      FFFF0EC9FFFF0EC9FFFF000000FF000000FF0000000000000000000000000000
     3668      0000000000000000000000000000000000000000000000000000000000000000
     3669      0000000000000000000000000000000000000000000000000000000000000000
     3670      00000000000000000000000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3671      FFFF0EC9FFFF000000FF000000FF000000FF000000FF000000FF000000FF0EC9
     3672      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3673      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF000000FF3A0000FF0000
     3674      00FF000000FF000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3675      FFFF0EC9FFFF0EC9FFFF000000FF000000FF0000000000000000000000000000
     3676      0000000000000000000000000000000000000000000000000000000000000000
     3677      0000000000000000000000000000000000000000000000000000000000000000
     3678      00000000000000000000000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3679      FFFF0EC9FFFF000000FF000000FF000000FF000000FF000000FF000000FF0000
     3680      00FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3681      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF000000FF000000FF000000FF0000
     3682      00FF000000FF000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3683      FFFF0EC9FFFF0EC9FFFF000000FF000000FF0000000000000000000000000000
     3684      0000000000000000000000000000000000000000000000000000000000000000
     3685      0000000000000000000000000000000000000000000000000000000000000000
     3686      00000000000000000000000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3687      FFFF0EC9FFFF0EC9FFFF000000FF000000FF000000FF000000FF000000FF0000
     3688      00FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3689      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF000000FF000000FF000000FF0000
     3690      00FF000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3691      FFFF0EC9FFFF0EC9FFFF000000FF000000FF0000000000000000000000000000
     3692      0000000000000000000000000000000000000000000000000000000000000000
     3693      0000000000000000000000000000000000000000000000000000000000000000
     3694      00000000000000000000000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3695      FFFF0EC9FFFF0EC9FFFF000000FF000000FF000000FF000000FF000000FF0000
     3696      00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000
     3697      00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000
     3698      00FF000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3699      FFFF0EC9FFFF0EC9FFFF000000FF000000FF0000000000000000000000000000
     3700      0000000000000000000000000000000000000000000000000000000000000000
     3701      0000000000000000000000000000000000000000000000000000000000000000
     3702      00000000000000000000000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3703      FFFF0EC9FFFF0EC9FFFF000000FF000000FF000000FF000000FF000000FF0000
     3704      00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000
     3705      00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000
     3706      00FF000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3707      FFFF0EC9FFFF0EC9FFFF000000FF000000FF0000000000000000000000000000
     3708      0000000000000000000000000000000000000000000000000000000000000000
     3709      0000000000000000000000000000000000000000000000000000000000000000
     3710      00000000000000000000000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3711      FFFF0EC9FFFF0EC9FFFF0EC9FFFF000000FF000000FF000000FF000000FF0000
     3712      00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000
     3713      00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000
     3714      00FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3715      FFFF0EC9FFFF0EC9FFFF000000FF000000FF0000000000000000000000000000
     3716      0000000000000000000000000000000000000000000000000000000000000000
     3717      0000000000000000000000000000000000000000000000000000000000000000
     3718      00000000000000000000000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3719      FFFF0EC9FFFF0EC9FFFF0EC9FFFF000000FF000000FF000000FF000000FF0000
     3720      00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000
     3721      00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000
     3722      00FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3723      FFFF0EC9FFFF0EC9FFFF000000FF000000FF0000000000000000000000000000
     3724      0000000000000000000000000000000000000000000000000000000000FF0000
     3725      00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000
     3726      00FF000000FF000000FF000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3727      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF000000FF000000FF000000FF0000
     3728      00FF000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3729      FFFF0EC9FFFF0EC9FFFF000000FF000000FF000000FF000000FF000000FF0000
     3730      00FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3731      FFFF0EC9FFFF0EC9FFFF000000FF000000FF000000FF000000FF000000FF0000
     3732      00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000
     3733      00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000
     3734      00FF000000FF000000FF000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3735      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF000000FF000000FF000000FF0000
     3736      00FF000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3737      FFFF0EC9FFFF0EC9FFFF000000FF000000FF000000FF000000FF000000FF0000
     3738      00FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3739      FFFF0EC9FFFF0EC9FFFF000000FF000000FF000000FF000000FF000000FF0000
     3740      00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000
     3741      00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000
     3742      00FF000000FF000000FF000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3743      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF000000FF000000FF0000
     3744      00FF000000FF000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3745      FFFF0EC9FFFF000000FF000000FF000000FF000000FF000000FF000000FF0EC9
     3746      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3747      FFFF0EC9FFFF0EC9FFFF000000FF000000FF000000FF000000FF000000FF0000
     3748      00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000
     3749      00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000
     3750      00FF000000FF000000FF000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3751      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF000000FF000000FF0000
     3752      00FF000000FF000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3753      FFFF0EC9FFFF000000FF000000FF000000FF000000FF000000FF000000FF0EC9
     3754      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3755      FFFF0EC9FFFF0EC9FFFF000000FF000000FF000000FF000000FF000000FF0000
     3756      00FF000000FF000000FF000000FF000000FF000000FF000000FF000000000000
     3757      0000000000000000000000000000000000000000000000000000000000000000
     3758      00000000000000000000000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3759      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF000000FF0000
     3760      00FF000000FF000000FF000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3761      FFFF000000FF000000FF000000FF000000FF000000FF000000FF0EC9FFFF0EC9
     3762      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3763      FFFF0EC9FFFF0EC9FFFF000000FF000000FF0000000000000000000000000000
     3764      0000000000000000000000000000000000000000000000000000000000000000
     3765      0000000000000000000000000000000000000000000000000000000000000000
     3766      00000000000000000000000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3767      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF000000FF0000
     3768      00FF000000FF000000FF000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3769      FFFF000000FF000000FF000000FF000000FF000000FF000000FF0EC9FFFF0EC9
     3770      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3771      FFFF0EC9FFFF0EC9FFFF000000FF000000FF0000000000000000000000000000
     3772      0000000000000000000000000000000000000000000000000000000000000000
     3773      0000000000000000000000000000000000000000000000000000000000000000
     3774      00000000000000000000000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3775      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0000
     3776      00FF000000FF000000FF000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3777      FFFF000000FF000000FF000000FF000000FF000000FF0EC9FFFF0EC9FFFF0EC9
     3778      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3779      FFFF0EC9FFFF0EC9FFFF000000FF000000FF0000000000000000000000000000
     3780      0000000000000000000000000000000000000000000000000000000000000000
     3781      0000000000000000000000000000000000000000000000000000000000000000
     3782      00000000000000000000000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3783      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0000
     3784      00FF000000FF000000FF000000FF000000FF000000FF0EC9FFFF0EC9FFFF0000
     3785      00FF000000FF000000FF000000FF000000FF000000FF0EC9FFFF0EC9FFFF0EC9
     3786      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3787      FFFF0EC9FFFF0EC9FFFF000000FF000000FF0000000000000000000000000000
     3788      0000000000000000000000000000000000000000000000000000000000000000
     3789      0000000000000000000000000000000000000000000000000000000000000000
     3790      00000000000000000000000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3791      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3792      FFFF000000FF000000FF000000FF000000FF000000FF0EC9FFFF0EC9FFFF0000
     3793      00FF000000FF000000FF000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3794      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3795      FFFF0EC9FFFF0EC9FFFF000000FF000000FF0000000000000000000000000000
     3796      0000000000000000000000000000000000000000000000000000000000000000
     3797      0000000000000000000000000000000000000000000000000000000000000000
     3798      00000000000000000000000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3799      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3800      FFFF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000
     3801      00FF000000FF000000FF000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3802      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3803      FFFF0EC9FFFF0EC9FFFF000000FF000000FF0000000000000000000000000000
     3804      0000000000000000000000000000000000000000000000000000000000000000
     3805      0000000000000000000000000000000000000000000000000000000000000000
     3806      00000000000000000000000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3807      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3808      FFFF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000
     3809      00FF000000FF000000FF000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3810      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3811      FFFF0EC9FFFF0EC9FFFF000000FF000000FF0000000000000000000000000000
     3812      0000000000000000000000000000000000000000000000000000000000000000
     3813      0000000000000000000000000000000000000000000000000000000000000000
     3814      00000000000000000000000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3815      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3816      FFFF0EC9FFFF000000FF000000FF000000FF000000FF000000FF000000FF0000
     3817      00FF000000FF000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3818      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3819      FFFF0EC9FFFF0EC9FFFF000000FF000000FF0000000000000000000000000000
     3820      0000000000000000000000000000000000000000000000000000000000000000
     3821      0000000000000000000000000000000000000000000000000000000000000000
     3822      00000000000000000000000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3823      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3824      FFFF0EC9FFFF000000FF000000FF000000FF000000FF000000FF000000FF0000
     3825      00FF000000FF000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3826      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3827      FFFF0EC9FFFF000000FF000000FF000000FF0000000000000000000000000000
     3828      0000000000000000000000000000000000000000000000000000000000000000
     3829      0000000000000000000000000000000000000000000000000000000000000000
     3830      00000000000000000000000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3831      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3832      FFFF0EC9FFFF0EC9FFFF000000FF000000FF000000FF000000FF000000FF0000
     3833      00FF000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3834      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3835      FFFF0EC9FFFF000000FF000000FF000000FF0000000000000000000000000000
     3836      0000000000000000000000000000000000000000000000000000000000FF0000
     3837      00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000
     3838      00FF000000FF000000FF000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3839      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3840      FFFF0EC9FFFF0EC9FFFF000000FF000000FF000000FF000000FF000000FF0000
     3841      00FF000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3842      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3843      FFFF000000FF000000FF000000FF000000000000000000000000000000000000
     3844      0000000000000000000000000000000000000000000000000000000000FF0000
     3845      00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000
     3846      00FF000000FF000000FF000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3847      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3848      FFFF0EC9FFFF0EC9FFFF0EC9FFFF000000FF000000FF000000FF000000FF0000
     3849      00FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3850      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3851      FFFF000000FF000000FF000000FF000000000000000000000000000000000000
     3852      0000000000000000000000000000000000000000000000000000000000FF0000
     3853      00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000
     3854      00FF000000FF000000FF000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3855      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3856      FFFF0EC9FFFF0EC9FFFF0EC9FFFF000000FF000000FF000000FF000000FF0000
     3857      00FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3858      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3859      FFFF000000FF000000FF00000000000000000000000000000000000000000000
     3860      0000000000000000000000000000000000000000000000000000000000FF0000
     3861      00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000
     3862      00FF000000FF000000FF000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3863      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3864      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF000000FF000000FF000000FF0000
     3865      00FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3866      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0000
     3867      00FF000000FF000000FF00000000000000000000000000000000000000000000
     3868      0000000000000000000000000000000000000000000000000000000000000000
     3869      0000000000000000000000000000000000000000000000000000000000000000
     3870      00000000000000000000000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3871      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3872      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3873      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3874      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF000000FF0000
     3875      00FF000000FF0000000000000000000000000000000000000000000000000000
     3876      0000000000000000000000000000000000000000000000000000000000000000
     3877      0000000000000000000000000000000000000000000000000000000000000000
     3878      00000000000000000000000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3879      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3880      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3881      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3882      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF000000FF000000FF0000
     3883      00FF000000000000000000000000000000000000000000000000000000000000
     3884      0000000000000000000000000000000000000000000000000000000000000000
     3885      0000000000000000000000000000000000000000000000000000000000000000
     3886      00000000000000000000000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3887      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3888      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3889      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3890      FFFF0EC9FFFF0EC9FFFF000000FF000000FF000000FF000000FF000000FF0000
     3891      0000000000000000000000000000000000000000000000000000000000000000
     3892      0000000000000000000000000000000000000000000000000000000000000000
     3893      0000000000000000000000000000000000000000000000000000000000000000
     3894      00000000000000000000000000FF000000FF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3895      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3896      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3897      FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9FFFF0EC9
     3898      FFFF000000FF000000FF000000FF000000FF000000FF000000FF000000000000
     3899      0000000000000000000000000000000000000000000000000000000000000000
     3900      0000000000000000000000000000000000000000000000000000000000000000
     3901      0000000000000000000000000000000000000000000000000000000000000000
     3902      00000000000000000000000000FF000000FF000000FF000000FF000000FF0000
     3903      00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000
     3904      00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000
     3905      00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000
     3906      00FF000000FF000000FF000000FF000000FF0000000000000000000000000000
     3907      0000000000000000000000000000000000000000000000000000000000000000
     3908      0000000000000000000000000000000000000000000000000000000000000000
     3909      0000000000000000000000000000000000000000000000000000000000000000
     3910      00000000000000000000000000FF000000FF000000FF000000FF000000FF0000
     3911      00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000
     3912      00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000
     3913      00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000
     3914      00FF000000FF000000FF00000000000000000000000000000000000000000000
     3915      0000000000000000000000000000000000000000000000000000000000000000
     3916      0000000000000000000000000000000000000000000000000000000000000000
     3917      0000000000000000000000000000000000000000000000000000000000000000
     3918      0000000000000000000000000000000000000000000000000000000000000000
     3919      0000000000000000000000000000000000000000000000000000000000000000
     3920      0000000000000000000000000000000000000000000000000000000000000000
     3921      0000000000000000000000000000000000000000000000000000000000000000
     3922      0000000000000000000000000000000000000000000000000000000000000000
     3923      0000000000000000000000000000000000000000000000000000000000000000
     3924      0000000000000000000000000000000000000000000000000000000000000000
     3925      0000000000000000000000000000000000000000000000000000000000000000
     3926      0000000000000000000000000000000000000000000000000000000000000000
     3927      0000000000000000000000000000000000000000000000000000000000000000
     3928      0000000000000000000000000000000000000000000000000000000000000000
     3929      0000000000000000000000000000000000000000000000000000000000000000
     3930      0000000000000000000000000000000000000000000000000000000000000000
     3931      0000000000000000000000000000000000000000000000000000000000000000
     3932      0000000000000000000000000000000000000000000000000000000000000000
     3933      0000000000000000000000000000000000000000000000000000000000000000
     3934      0000000000000000000000000000000000000000000000000000000000000000
     3935      0000000000000000000000000000000000000000000000000000000000000000
     3936      0000000000000000000000000000000000000000000000000000000000000000
     3937      0000000000000000000000000000000000000000000000000000000000000000
     3938      0000000000000000000000000000000000000000000000000000000000000000
     3939      0000000000000000000000000000000000000000000000000000000000000000
     3940      0000000000000000000000000000000000000000000000000000000000000000
     3941      0000000000000000000000000000000000000000000000000000000000000000
     3942      0000000000000000000000000000000000000000000000000000000000000000
     3943      0000000000000000000000000000000000000000000000000000000000000000
     3944      0000000000000000000000000000000000000000000000000000000000000000
     3945      0000000000000000000000000000000000000000000000000000000000000000
     3946      0000000000000000000000000000000000000000000000000000000000000000
     3947      0000000000000000000000000000000000000000000000000000000000000000
     3948      0000000000000000000000000000000000000000000000000000000000000000
     3949      0000000000000000000000000000000000000000000000000000000000000000
     3950      0000000000000000000000000000000000000000000000000000000000000000
     3951      0000000000000000000000000000000000000000000000000000000000000000
     3952      0000000000000000000000000000000000000000000000000000000000000000
     3953      0000000000000000000000000000000000000000000000000000000000000000
     3954      0000000000000000000000000000000000000000000000000000000000000000
     3955      0000000000000000000000000000000000000000000000000000000000000000
     3956      0000000000000000000000000000000000000000000000000000000000000000
     3957      0000000000000000000000000000000000000000000000000000000000000000
     3958      0000000000000000000000000000000000000000000000000000000000000000
     3959      0000000000000000000000000000000000000000000000000000000000000000
     3960      0000000000000000000000000000000000000000000000000000000000000000
     3961      0000000000000000000000000000000000000000000000000000000000000000
     3962      0000000000000000000000000000000000000000000000000000000000000000
     3963      0000000000000000000000000000000000000000000000000000000000000000
     3964      0000000000000000000000000000000000000000000000000000000000000000
     3965      0000000000000000000000000000000000000000000000000000000000000000
     3966      0000000000000000000000000000000000000000000000000000000000000000
     3967      0000000000000000000000000000000000000000000000000000000000000000
     3968      0000000000000000000000000000000000000000000000000000000000000000
     3969      0000000000000000000000000000000000000000000000000000000000000000
     3970      0000000000000000000000000000000000000000000000000000000000000000
     3971      0000000000000000000000000000000000000000000000000000000000000000
     3972      0000000000000000000000000000000000000000000000000000000000000000
     3973      0000000000000000000000000000000000000000000000000000000000000000
     3974      0000000000000000000000000000000000000000000000000000000000000000
     3975      0000000000000000000000000000000000000000000000000000000000000000
     3976      0000000000000000000000000000000000000000000000000000000000000000
     3977      0000000000000000000000000000000000000000000000000000000000000000
     3978      0000000000000000000000000000000000000000000000000000000000000000
     3979      0000000000000000000000000000000000000000000000000000000000000000
     3980      0000000000000000000000000000000000000000000000000000000000000000
     3981      0000000000000000000000000000000000000000000000000000000000000000
     3982      0000000000000000000000000000000000000000000000000000000000000000
     3983      0000000000000000000000000000000000000000000000000000000000000000
     3984      0000000000000000000000000000000000000000000000000000000000000000
     3985      0000000000000000000000000000000000000000000000000000000000000000
     3986      0000000000000000000000000000000000000000000000000000000000000000
     3987      0000000000000000000000000000000000000000000000000000000000000000
     3988      0000000000000000000000000000000000000000000000000000000000000000
     3989      0000000000000000000000000000000000000000000000000000000000000000
     3990      0000000000000000000000000000000000000000000000000000000000000000
     3991      0000000000000000000000000000000000000000000000000000000000000000
     3992      0000000000000000000000000000000000000000000000000000000000000000
     3993      0000000000000000000000000000000000000000000000000000000000000000
     3994      0000000000000000000000000000000000000000000000000000000000000000
     3995      0000000000000000000000000000000000000000000000000000000000000000
     3996      0000000000000000000000000000000000000000000000000000
     3997    }
     3998    Left = 115
     3999    Top = 48
     4000  end
     4001  object ThemeManager: TThemeManager
     4002    Left = 290
     4003    Top = 52
    34844004  end
    34854005end
  • trunk/UCore.pas

    r200 r207  
    66
    77uses
    8   Classes, SysUtils, FileUtil, UAcronym, UCoolTranslator, UPersistentForm,
     8  Classes, SysUtils, FileUtil, UAcronym, UTranslator, UPersistentForm,
    99  UJobProgressView, UScaleDPI, Forms, Controls, ExtCtrls, Menus, LazFileUtils,
    10   URegistry, UApplicationInfo, Registry, UTheme;
     10  URegistry, UApplicationInfo, Registry, UTheme, UAboutDialog;
    1111
    1212type
     
    1616  TCore = class(TDataModule)
    1717    ApplicationInfo1: TApplicationInfo;
    18     CoolTranslator1: TCoolTranslator;
     18    ThemeManager: TThemeManager;
     19    Translator: TTranslator;
    1920    ImageList1: TImageList;
    2021    ImageListLarge: TImageList;
     
    3132    ScaleDPI1: TScaleDPI;
    3233    TrayIcon1: TTrayIcon;
    33     procedure CoolTranslator1Translate(Sender: TObject);
     34    procedure TranslatorTranslate(Sender: TObject);
    3435    procedure DataModuleCreate(Sender: TObject);
    3536    procedure DataModuleDestroy(Sender: TObject);
     
    4849    InitializeStarted: Boolean;
    4950    InitializeFinished: Boolean;
    50     ThemeManager: TThemeManager;
    5151    procedure Initialize;
    5252    procedure LoadConfig;
     
    8787  InitializeFinished := False;
    8888  StoredDimension := TControlDimension.Create;
    89   ThemeManager := TThemeManager.Create(nil);
    9089end;
    9190
    9291procedure TCore.DataModuleDestroy(Sender: TObject);
    9392begin
    94   FreeAndNil(ThemeManager);
    9593  FreeAndNil(StoredDimension);
    9694  FreeAndNil(AcronymDb);
     
    103101end;
    104102
    105 procedure TCore.CoolTranslator1Translate(Sender: TObject);
     103procedure TCore.TranslatorTranslate(Sender: TObject);
    106104begin
    107105  UAcronym.Translate;
     
    211209    ScaleDPI1.AutoDetect := ReadBoolWithDefault('DPIAuto', True);
    212210    if ValueExists('LanguageCode') then
    213       CoolTranslator1.Language := CoolTranslator1.Languages.SearchByCode(ReadStringWithDefault('LanguageCode', ''))
    214       else CoolTranslator1.Language := CoolTranslator1.Languages.SearchByCode('');
     211      Translator.Language := Translator.Languages.SearchByCode(ReadStringWithDefault('LanguageCode', ''))
     212      else Translator.Language := Translator.Languages.SearchByCode('');
    215213    AlwaysOnTop := ReadBoolWithDefault('AlwaysOnTop', False);
    216214    StartMinimizedToTray := ReadBoolWithDefault('StartMinimizedToTray', False);
     
    233231    WriteInteger('DPIY', ScaleDPI1.DPI.Y);
    234232    WriteBool('DPIAuto', ScaleDPI1.AutoDetect);
    235     if Assigned(CoolTranslator1.Language) and (CoolTranslator1.Language.Code <> '') then
    236       WriteString('LanguageCode', CoolTranslator1.Language.Code)
     233    if Assigned(Translator.Language) and (Translator.Language.Code <> '') then
     234      WriteString('LanguageCode', Translator.Language.Code)
    237235      else DeleteValue('LanguageCode');
    238236    WriteBool('AlwaysOnTop', AlwaysOnTop);
Note: See TracChangeset for help on using the changeset viewer.