Changeset 75 for trunk/IDE


Ignore:
Timestamp:
Jun 4, 2024, 12:22:49 AM (6 months ago)
Author:
chronos
Message:
  • Modified: Removed U prefix from unit names.
  • Modified: Updated Common package.
Location:
trunk/IDE
Files:
1 added
24 deleted
5 edited
30 moved

Legend:

Unmodified
Added
Removed
  • trunk/IDE/Core.lfm

    r74 r75  
    33  OnDestroy = DataModuleDestroy
    44  OldCreateOrder = False
    5   Height = 381
    6   HorizontalOffset = 652
    7   VerticalOffset = 519
    8   Width = 466
     5  Height = 572
     6  HorizontalOffset = 978
     7  VerticalOffset = 779
     8  Width = 699
     9  PPI = 144
    910  object LastOpenedFiles: TLastOpenedList
    1011    MaxCount = 10
    1112    OnChange = LastOpenedFilesChange
    12     left = 48
    13     top = 24
     13    Left = 72
     14    Top = 36
    1415  end
    15   object CoolTranslator1: TCoolTranslator
     16  object Translator1: TTranslator
    1617    POFilesFolder = 'Languages'
    17     left = 48
    18     top = 80
     18    Left = 72
     19    Top = 120
    1920  end
    2021  object DebugLog1: TDebugLog
     
    2223    FileName = 'DebugLog.txt'
    2324    MaxCount = 100
    24     left = 48
    25     top = 136
     25    Left = 72
     26    Top = 204
    2627  end
    2728  object ApplicationInfo: TApplicationInfo
     
    4041    RegistryKey = '\Software\Chronosoft\Transpascal'
    4142    RegistryRoot = rrKeyCurrentUser
    42     left = 48
    43     top = 200
     43    Left = 72
     44    Top = 300
    4445  end
    4546  object ModuleManager1: TModuleManager
    4647    Options = []
    47     left = 242
    48     top = 98
     48    Left = 363
     49    Top = 147
    4950  end
    5051end
  • trunk/IDE/Core.pas

    r74 r75  
    1 unit UCore;
    2 
    3 {$mode delphi}
     1unit Core;
    42
    53interface
    64
    75uses
    8   Classes, SysUtils, FileUtil, ULastOpenedList, UProject, UApplicationInfo,
    9   UCompiler, URegistry, Registry, UDebugLog, UCoolTranslator, UTarget,
    10   USourceCodePascal, UModularSystem;
     6  Classes, SysUtils, FileUtil, LastOpenedList, Project, ApplicationInfo,
     7  Compiler, Registry, RegistryEx, DebugLog, Translator, Target,
     8  SourceCodePascal, ModularSystem;
    119
    1210type
     
    3230  TCore = class(TDataModule)
    3331    ApplicationInfo: TApplicationInfo;
    34     CoolTranslator1: TCoolTranslator;
     32    Translator1: TTranslator;
    3533    DebugLog1: TDebugLog;
    3634    LastOpenedFiles: TLastOpenedList;
     
    4745    LogParsing: Boolean;
    4846    Project: TProject;
    49     ProjectTemplates: TProjectTemplateList;
     47    ProjectTemplates: TProjectTemplates;
    5048    TargetProject: TProject;
    5149    Compiler: TCustomCompiler;
     
    6967
    7068uses
    71   UFormMain, UProjectTemplates, UIDEModulePascal, UModulePascal, UModuleGCC,
    72   UModuleInterpretter, UModuleDelphi, UModulePHP, UModuleJava, UModuleASM8051;
     69  FormMain, ProjectTemplates, IDEModulePascal, ModulePascal, ModuleGCC,
     70  ModuleInterpretter, ModuleDelphi, ModulePHP, ModuleJava, ModuleASM8051;
    7371
    7472{ TCore }
     
    7977  Project.LoadFromFile(FileName);
    8078  LastOpenedFiles.AddItem(FileName);
    81   FormMain.UpdateInterface;
     79  FormMain.FormMain.UpdateInterface;
    8280end;
    8381
     
    102100  //Compiler.OnSaveTarget := SaveSourceFile;
    103101  Project := TProject.Create;
    104   ProjectTemplates := TProjectTemplateList.Create;
     102  ProjectTemplates := TProjectTemplates.Create;
    105103  TargetProject := TProject.Create;
    106104  LastOpenedFiles := TLastOpenedList.Create(nil);
     
    136134procedure TCore.LastOpenedFilesChange(Sender: TObject);
    137135begin
    138   LastOpenedFiles.LoadToMenuItem(FormMain.MenuItemOpenRecent,
    139     FormMain.OpenRecentClick);
    140   LastOpenedFiles.LoadToMenuItem(FormMain.PopupMenu1.Items,
    141     FormMain.OpenRecentClick);
     136  LastOpenedFiles.LoadToMenuItem(FormMain.FormMain.MenuItemOpenRecent,
     137    FormMain.FormMain.OpenRecentClick);
     138  LastOpenedFiles.LoadToMenuItem(FormMain.FormMain.PopupMenu1.Items,
     139    FormMain.FormMain.OpenRecentClick);
    142140end;
    143141
    144142procedure TCore.ProjectChange(Sender: TObject);
    145143begin
    146   FormMain.UpdateInterface;
     144  FormMain.FormMain.UpdateInterface;
    147145end;
    148146
    149147function TCore.LoadSourceFile(FileName: string; var Content: string): Boolean;
    150148begin
    151 
    152149end;
    153150
    154151function TCore.SaveSourceFile(FileName: string; const Content: string): Boolean;
    155152begin
    156 
    157153end;
    158154
     
    173169        else LogParsing := False;
    174170      if ValueExists('LanguageCode') then
    175         CoolTranslator1.Language := CoolTranslator1.Languages.SearchByCode(ReadString('LanguageCode'))
    176         else CoolTranslator1.Language := CoolTranslator1.Languages.SearchByCode('');
     171        Translator1.Language := Translator1.Languages.SearchByCode(ReadString('LanguageCode'))
     172        else Translator1.Language := Translator1.Languages.SearchByCode('');
    177173    finally
    178174      Free;
    179175    end;
    180   LastOpenedFiles.LoadFromRegistry(RegContext(Root, Key + '\LastOpenedFiles')); //Root, Key + '\LastOpenedFiles');
     176  LastOpenedFiles.LoadFromRegistry(TRegistryContext.Create(Root, Key + '\LastOpenedFiles')); //Root, Key + '\LastOpenedFiles');
    181177  Compiler.LoadFromRegistry(Root, Key + '\Compiler');
    182   FormMain.LoadFromRegistry(Root, Key);
     178  FormMain.FormMain.LoadFromRegistry(Root, Key);
    183179end;
    184180
     
    194190        else WriteString('TargetName', '');
    195191      WriteBool('LogParsing', LogParsing);
    196       if Assigned(CoolTranslator1.Language) and (CoolTranslator1.Language.Code <> '') then
    197         WriteString('LanguageCode', CoolTranslator1.Language.Code)
     192      if Assigned(Translator1.Language) and (Translator1.Language.Code <> '') then
     193        WriteString('LanguageCode', Translator1.Language.Code)
    198194        else WriteString('LanguageCode', '');
    199195    finally
    200196      Free;
    201197    end;
    202   LastOpenedFiles.SaveToRegistry(RegContext(Root, Key + '\LastOpenedFiles'));
     198  LastOpenedFiles.SaveToRegistry(TRegistryContext.Create(Root, Key + '\LastOpenedFiles'));
    203199  Compiler.SaveToRegistry(Root, Key + '\Compiler');
    204   FormMain.SaveToRegistry(Root, Key);
     200  FormMain.FormMain.SaveToRegistry(Root, Key);
    205201end;
    206202
     
    237233    Name := 'System';
    238234    Internal := True;
    239     with TType(Body.Types.AddNew(TType.Create)) do begin
     235    with Body.Types.AddNew do begin
    240236      Name := 'Byte';
    241237      Size := 1;
    242238      Internal := True;
    243239    end;
    244     with TType(Body.Types.AddNew(TType.Create)) do begin
     240    with Body.Types.AddNew do begin
    245241      Name := 'ShortInt';
    246242      Size := 1;
    247243      Internal := True;
    248244    end;
    249     with TType(Body.Types.AddNew(TType.Create)) do begin
     245    with Body.Types.AddNew do begin
    250246      Name := 'Word';
    251247      Size := 2;
    252248      Internal := True;
    253249    end;
    254     with TType(Body.Types.AddNew(TType.Create)) do begin
     250    with Body.Types.AddNew do begin
    255251      Name := 'SmallInt';
    256252      Size := 2;
    257253      Internal := True;
    258254    end;
    259     with TType(Body.Types.AddNew(TType.Create)) do begin
     255    with Body.Types.AddNew do begin
    260256      Name := 'Cardinal';
    261257      Size := 4;
    262258      Internal := True;
    263259    end;
    264     with TType(Body.Types.AddNew(TType.Create)) do begin
     260    with Body.Types.AddNew do begin
    265261      Name := 'Integer';
    266262      Size := 4;
    267263      Internal := True;
    268264    end;
    269     with TType(Body.Types.AddNew(TType.Create)) do begin
     265    with Body.Types.AddNew do begin
    270266      Name := 'UInt64';
    271267      Size := 8;
    272268      Internal := True;
    273269    end;
    274     with TType(Body.Types.AddNew(TType.Create)) do begin
     270    with Body.Types.AddNew do begin
    275271      Name := 'Int64';
    276272      Size := 8;
    277273      Internal := True;
    278274    end;
    279     with TFunction(Body.Functions.AddNew(TFunction.Create)) do begin
     275    with Body.Functions.AddNew do begin
    280276      Name := 'WriteLn';
    281277      Internal := True;
  • trunk/IDE/Forms/FormCodeTree.pas

    r74 r75  
    1 unit UFormCodeTree;
    2 
    3 {$mode Delphi}{$H+}
     1unit FormCodeTree;
    42
    53interface
     
    2018  end;
    2119
    22 var
    23   FormCodeTree: TFormCodeTree;
    2420
    2521implementation
  • trunk/IDE/Forms/FormExternalProducerOutput.pas

    r74 r75  
    1 unit UFormExternalProducerOutput;
    2 
    3 {$mode delphi}
     1unit FormExternalProducerOutput;
    42
    53interface
     
    2018  end;
    2119
    22 var
    23   FormExternalProducerOutput: TFormExternalProducerOutput;
    2420
    2521implementation
  • trunk/IDE/Forms/FormMain.lfm

    r74 r75  
    11object FormMain: TFormMain
    22  Left = 799
    3   Height = 501
     3  Height = 752
    44  Top = 435
    5   Width = 695
     5  Width = 1042
    66  Caption = 'Transpascal IDE'
    7   ClientHeight = 467
    8   ClientWidth = 695
    9   Font.Height = -11
     7  ClientHeight = 752
     8  ClientWidth = 1042
     9  DesignTimePPI = 144
     10  Font.Height = -17
    1011  Font.Name = 'Tahoma'
    1112  Menu = MainMenu
     
    1516  OnShow = FormShow
    1617  Position = poDesktopCenter
    17   LCLVersion = '1.8.0.4'
     18  LCLVersion = '3.2.0.0'
    1819  object Splitter3: TSplitter
    1920    Cursor = crVSplit
    2021    Left = 0
    21     Height = 5
    22     Top = 462
    23     Width = 695
     22    Height = 8
     23    Top = 744
     24    Width = 1042
    2425    Align = alBottom
    2526    ResizeAnchor = akBottom
     
    2728  object ToolBar1: TToolBar
    2829    Left = 0
    29     Height = 26
     30    Height = 39
    3031    Top = 0
    31     Width = 695
     32    Width = 1042
    3233    Images = ImageList1
    3334    ParentShowHint = False
     
    4041    end
    4142    object ToolButton2: TToolButton
    42       Left = 24
     43      Left = 36
    4344      Top = 2
    4445      Action = AProjectOpen
     
    4748    end
    4849    object ToolButton3: TToolButton
    49       Left = 59
     50      Left = 89
    5051      Top = 2
    5152      Action = AProjectSave
    5253    end
    5354    object ToolButton4: TToolButton
    54       Left = 82
     55      Left = 124
    5556      Top = 2
    5657      Action = AProjectClose
    5758    end
    5859    object ToolButton5: TToolButton
    59       Left = 105
    60       Height = 22
     60      Left = 159
     61      Height = 33
    6162      Top = 2
    6263      Style = tbsSeparator
    6364    end
    6465    object ToolButton6: TToolButton
    65       Left = 113
     66      Left = 167
    6667      Top = 2
    6768      Action = AViewOptions
    6869    end
    6970    object ToolButton7: TToolButton
    70       Left = 136
     71      Left = 202
    7172      Top = 2
    7273      Action = ABuild
    7374    end
    7475    object ToolButton8: TToolButton
    75       Left = 159
     76      Left = 237
    7677      Top = 2
    7778      Action = ARun
    7879    end
    7980    object ToolButton9: TToolButton
    80       Left = 182
     81      Left = 272
    8182      Top = 2
    8283      Action = APause
    8384    end
    8485    object ToolButton10: TToolButton
    85       Left = 205
     86      Left = 307
    8687      Top = 2
    8788      Action = AStop
    8889    end
    8990    object ComboBoxTarget: TComboBox
    90       Left = 228
     91      Left = 342
    9192      Height = 40
    9293      Top = 2
    93       Width = 100
     94      Width = 150
    9495      ItemHeight = 0
    95       OnChange = ComboBoxTargetChange
    9696      Style = csDropDownList
    9797      TabOrder = 0
     98      OnChange = ComboBoxTargetChange
    9899    end
    99100    object ToolButton11: TToolButton
    100       Left = 328
     101      Left = 492
    101102      Top = 2
    102103      Action = AViewTargets
     
    104105  end
    105106  object Splitter1: TSplitter
    106     Left = 490
    107     Height = 330
    108     Top = 26
    109     Width = 5
     107    Left = 734
     108    Height = 545
     109    Top = 39
     110    Width = 8
    110111    Align = alRight
    111112    ResizeAnchor = akRight
    112113  end
    113114  object PageControlRight: TPageControl
    114     Left = 495
    115     Height = 330
    116     Top = 26
    117     Width = 200
     115    Left = 742
     116    Height = 545
     117    Top = 39
     118    Width = 300
    118119    ActivePage = TabSheetExternalProducer
    119120    Align = alRight
     
    136137  object PageControlBottom: TPageControl
    137138    Left = 0
    138     Height = 101
    139     Top = 361
    140     Width = 695
     139    Height = 152
     140    Top = 592
     141    Width = 1042
    141142    ActivePage = TabSheetMessages
    142143    Align = alBottom
     
    154155    Cursor = crVSplit
    155156    Left = 0
    156     Height = 5
    157     Top = 356
    158     Width = 695
     157    Height = 8
     158    Top = 584
     159    Width = 1042
    159160    Align = alBottom
    160161    ResizeAnchor = akBottom
     
    162163  object PageControlMain: TPageControl
    163164    Left = 0
    164     Height = 330
    165     Top = 26
    166     Width = 490
    167     ActivePage = TabSheetSource
     165    Height = 545
     166    Top = 39
     167    Width = 734
     168    ActivePage = TabSheetTarget
    168169    Align = alClient
    169     TabIndex = 0
     170    TabIndex = 1
    170171    TabOrder = 6
    171172    object TabSheetSource: TTabSheet
     
    178179  object MainMenu: TMainMenu
    179180    Images = ImageList1
    180     left = 115
    181     top = 160
     181    Left = 173
     182    Top = 240
    182183    object MenuItem1: TMenuItem
    183184      Caption = 'Project'
     
    288289  object ActionList1: TActionList
    289290    Images = ImageList1
    290     left = 112
    291     top = 216
     291    Left = 168
     292    Top = 324
    292293    object AProjectNew: TAction
    293294      Category = 'Project'
     
    448449    DefaultExt = '.tppr'
    449450    Filter = 'Project file (*.tppr)|*.tppr|Any file (*.*)|*.*'
    450     left = 115
    451     top = 54
     451    Left = 173
     452    Top = 81
    452453  end
    453454  object SaveDialogProject: TSaveDialog
    454455    DefaultExt = '.tppr'
    455456    Filter = 'Project file (*.tppr)|*.tppr|Any file (*.*)|*.*'
    456     left = 115
    457     top = 104
     457    Left = 173
     458    Top = 156
    458459  end
    459460  object ImageList1: TImageList
    460     left = 112
    461     top = 272
     461    Left = 168
     462    Top = 408
    462463    Bitmap = {
    463       4C690F0000001000000010000000000000000000000000000000000000000000
    464       0000000000000000000000000000000000000000000000000000000000000000
    465       0000000000000000000000000000000000000000000000000000000000000000
    466       0000000000000000000000000000000000000000000000000000000000000000
    467       0000000000000000000000000000000000000000000000000000000000000000
    468       0000000000000000000000000000000000000000000000000000000000000000
    469       0000000000000000000000000000000000000000000000000000000000000000
    470       0000000000000000000000000000000000000000000000000000000000000000
    471       0000000000000000000000000000000000000000000000000000000000000000
    472       FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000
    473       0000000000000000000000000000000000000000000000000000000000000000
    474       FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000
    475       0000000000000000000000000000000000000000000000000000000000000000
    476       FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000
    477       0000000000000000000000000000000000000000000000000000000000000000
    478       FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000
    479       0000000000000000000000000000000000000000000000000000000000000000
    480       FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000
    481       0000000000000000000000000000000000000000000000000000000000000000
    482       FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000
    483       0000000000000000000000000000000000000000000000000000000000000000
    484       FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000
    485       0000000000000000000000000000000000000000000000000000000000000000
    486       FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000
    487       0000000000000000000000000000000000000000000000000000000000000000
    488       0000000000000000000000000000000000000000000000000000000000000000
    489       0000000000000000000000000000000000000000000000000000000000000000
    490       0000000000000000000000000000000000000000000000000000000000000000
    491       0000000000000000000000000000000000000000000000000000000000000000
    492       0000000000000000000000000000000000000000000000000000000000000000
    493       0000000000000000000000000000000000000000000000000000000000000000
    494       0000000000000000000000000000000000000000000000000000000000000000
    495       0000000000000000000000000000000000000000000000000000000000000000
    496       0000000000000000000000000000000000000000000000000000000000000000
    497       0000000000000000000000000000000000000000000000000000000000000000
    498       00000000000000000000000000FF000000FF0000000000000000000000000000
    499       0000000000000000000000000000000000000000000000000000000000000000
    500       0000000000FF000000FF800080FF800080FF000000FF00000000000000000000
    501       0000000000000000000000000000000000000000000000000000000000FF0000
    502       00FF800080FF800080FF800080FF800080FF800080FF000000FF000000000000
    503       000000000000000000000000000000000000000000FF000000FF800080FF8000
    504       80FF800080FF800080FF800080FF800080FF800080FF800080FF000000FF0000
    505       0000000000000000000000000000000000FFC0C0C0FF800080FF800080FF8000
    506       80FF800080FF800080FF800080FF800080FF800080FF800080FF800080FF0000
    507       00FF000000000000000000000000000000FF800080FFC0C0C0FF800080FF8000
    508       80FF800080FF800080FF800080FF800080FF800080FF800080FF800080FF8000
    509       80FF000000FF0000000000000000000000FF800080FF800080FFC0C0C0FF8000
    510       80FF800080FF800080FF800080FF800080FF800080FF800080FF800080FF8000
    511       80FF800080FF000000FF00000000000000FF800080FF800080FF800080FFC0C0
    512       C0FF800080FF800080FF800080FF800080FF800080FF800080FF800080FF8000
    513       80FF800080FF000000FF000000FF000000FF800080FF800080FF800080FF8000
    514       80FFC0C0C0FF800080FF800080FF800080FF800080FF800080FF800080FF0000
    515       00FF000000FF808080FF0000000000000000000000FF800080FF800080FF8000
    516       80FF800080FFC0C0C0FF800080FF800080FF800080FF000000FF000000FF8080
    517       80FFFFFFFFFF808080FF000000000000000000000000000000FF800080FF8000
    518       80FF800080FF800080FFC0C0C0FF000000FF000000FF808080FFC0C0C0FFFFFF
    519       FFFFC0C0C0FF000000FF000000FF000000000000000000000000000000FF8000
    520       80FF800080FF800080FF000000FF808080FFFFFFFFFFC0C0C0FFFFFFFFFFC0C0
    521       C0FF000000FF000000FF00000000000000000000000000000000000000000000
    522       00FF800080FF800080FF000000FFFFFFFFFFC0C0C0FFFFFFFFFF000000FF0000
    523       00FF000000000000000000000000000000000000000000000000000000000000
    524       0000000000FF800080FF000000FF808080FF000000FF000000FF000000000000
    525       0000000000000000000000000000000000000000000000000000000000000000
    526       000000000000000000FF000000FF000000FF0000000000000000000000000000
    527       0000000000000000000000000000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
    528       FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
    529       FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
    530       FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
    531       FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF000000A4000000A6000000
    532       A9200000AA7E0000AAB20000AAC80000AAB20000AA7E0000A9200000A6000000
    533       A400FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF000000A4000000A6410A0A
    534       AEC13F3FD5E76060EDF86A6AF3FE6060ECF83E3ED4E70A0AADC10000A6410000
    535       A400FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF000000A3200A0AABC15555
    536       E3F35A5AE2FF5656DEFF5656DEFF5656DEFF5959E1FF5050DEF30909AAC10000
    537       A320FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0000009E7E3939CCE64A4A
    538       D2FF4545CDFF4545CDFF4545CDFF4545CDFF4545CDFF4848D0FF3131C3E60000
    539       9E7EFFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0000009AB24A4AD4F83737
    540       BFFF3737BFFF3131BAFF2727B0FF1C1CA6FF1616A0FF12129CFF2323AEF80000
    541       9AB2FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00000095C84848D0FE2E2E
    542       B8FF1D1DADFF1212A5FF1111A4FF1111A4FF1111A4FF1111A4FF1B1BADFE0000
    543       95C8FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0000008FB23434C3F81414
    544       B2FF1111B1FF1111B1FF1111B1FF1111B1FF1111B1FF1111B1FF1414B0F80000
    545       8FB2FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF000000897E1818AFE61414
    546       C1FF1111BFFF1111BFFF1111BFFF1111BFFF1111BFFF1111BFFF0A0AA6E60000
    547       897EFFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0000008420030389C11515
    548       BFF31212CDFF1111CCFF1111CCFF1111CCFF1111CCFF0E0EBCF3020288C10000
    549       8420FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0000008100000078410202
    550       7DC10A0AA8E70F0FCAF81111D5FE0F0FCAF80A0AA8E702027DC1000078410000
    551       8100FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0000008100000075000000
    552       64200000607E000060B2000060C8000060B20000607E00006420000075000000
    553       8100FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
    554       FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
    555       FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
    556       FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
    557       FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
    558       FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
    559       FF00FFFFFF00FFFFFF00FFFFFF00000000000000000000000000000000000000
    560       0000000000000000000000000000000000000000000000000000000000000000
    561       0000000000000000000000000000000000000000000000000000000000000000
    562       0000000000000000000000000000000000000000000000000000000000000000
    563       000000000000000000000000000000000000000000001818C0FF1818C0FFC0C0
    564       C0FF000000000000000000000000000000000000000000000000000000000000
    565       00001818C0FF1818C0FFC0C0C0FF00000000000000002020C8FF2020C8FF2020
    566       C8FF2020C8FFC0C0C0FF00000000000000000000000000000000000000002020
    567       C8FF2020C8FFC0C0C0FF000000000000000000000000000000002626CEFF2626
    568       CEFF2626CEFF2626CEFFC0C0C0FF0000000000000000000000002626CEFF2626
    569       CEFFC0C0C0FF0000000000000000000000000000000000000000000000000000
    570       00002929D1FF2929D1FF2929D1FFC0C0C0FF000000002929D1FFC0C0C0FF0000
    571       0000000000000000000000000000000000000000000000000000000000000000
    572       0000000000002C2CD4FF2C2CD4FF2C2CD4FF2C2CD4FF2C2CD4FFC0C0C0FF0000
    573       0000000000000000000000000000000000000000000000000000000000000000
    574       000000000000000000002F2FD7FF2F2FD7FF2F2FD7FFC0C0C0FF000000000000
    575       0000000000000000000000000000000000000000000000000000000000000000
    576       0000000000003232DAFF3232DAFF3232DAFF3232DAFF3232DAFFC0C0C0FF0000
    577       0000000000000000000000000000000000000000000000000000000000000000
    578       00003535DDFF3535DDFF3535DDFFC0C0C0FF000000003535DDFF3535DDFFC0C0
    579       C0FF000000000000000000000000000000000000000000000000000000003838
    580       E0FF3838E0FF3838E0FFC0C0C0FF0000000000000000000000003838E0FF3838
    581       E0FFC0C0C0FF00000000000000000000000000000000000000003A3AE2FF3A3A
    582       E2FF3A3AE2FFC0C0C0FF00000000000000000000000000000000000000003A3A
    583       E2FFC0C0C0FF00000000000000000000000000000000000000003A3AE2FF3A3A
    584       E2FF3A3AE2FFC0C0C0FF00000000000000000000000000000000000000000000
    585       00003A3AE2FFC0C0C0FF00000000000000000000000000000000000000003A3A
    586       E2FFC0C0C0FF0000000000000000000000000000000000000000000000000000
    587       0000000000000000000000000000000000000000000000000000000000000000
    588       0000000000000000000000000000000000000000000000000000000000000000
    589       0000000000003A3AE2FFC0C0C0FF000000000000000000000000000000000000
    590       0000000000000000000000000000000000000000000000000000000000000000
    591       0000000000000000000000000000000000000000000000000000000000000000
    592       0000000000000000000000000000000000000000000000000000000000000000
    593       000000000000000000000000000000000000000000FF000000FF000000FF0000
    594       00FF000000FF000000FF000000FF000000FF0000000000000000000000000000
    595       000000000000000000000000000000000000000000FF000000FFFFFFFFFFFFFF
    596       FFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FF0000000000000000000000000000
    597       000000000000000000000000000000000000000000FF008484FF000000FFFFFF
    598       FFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FF0000000000000000000000000000
    599       0000840000FF000000000000000000000000000000FF008484FF008484FF0000
    600       00FFFFFFFFFFFFFFFFFFFFFFFFFF000000FF0000000000000000000000008400
    601       00FF840000FF000000000000000000000000000000FF008484FF008484FF0084
    602       84FF000000FFFFFFFFFFFFFFFFFF000000FF0000000000000000840000FF8400
    603       00FF840000FF840000FF840000FF00000000000000FF008484FF008484FF0084
    604       84FF000000FFFFFFFFFFFFFFFFFF000000FF00000000840000FF840000FF8400
    605       00FF840000FF840000FF840000FF00000000000000FF008484FF008484FF0084
    606       84FF000000FFFFFFFFFFFFFFFFFF000000FF0000000000000000840000FF8400
    607       00FF840000FF840000FF840000FF00000000000000FF008484FF008484FF0084
    608       84FF000000FFFFFFFFFFFFFFFFFF000000FF0000000000000000000000008400
    609       00FF840000FF000000000000000000000000000000FF008484FF008484FF0000
    610       00FF000000FFFFFFFFFFFFFFFFFF000000FF0000000000000000000000000000
    611       0000840000FF000000000000000000000000000000FF008484FF008484FF0084
    612       84FF000000FFFFFFFFFFFFFFFFFF000000FF0000000000000000000000000000
    613       0000000000000000000000000000000000FF000000FF008484FF008484FF0084
    614       84FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000
    615       00FF0000000000000000000000000000000000000000000000FF008484FF0084
    616       84FF000000FF0000000000000000000000000000000000000000000000000000
    617       0000000000000000000000000000000000000000000000000000000000FF0084
    618       84FF000000FF0000000000000000000000000000000000000000000000000000
    619       0000000000000000000000000000000000000000000000000000000000000000
    620       00FF000000FF0000000000000000000000000000000000000000000000000000
    621       0000000000000000000000000000000000000000000000000000000000000000
    622       0000000000FF0000000000000000000000000000000000000000000000000000
    623       0000000000000000000000000000000000000000000000000000000000000000
    624       0000000000000000000000000000000000000000000000000000000000000000
    625       000000000000000000000000000000000000000000000000000000000000C584
    626       44FFC28342FFD89C6DFFD69668FFD49463FFD69668FFB2793CFFB1783BFF0000
    627       0000000000000000000000000000000000000000000000000000C58442FFDCA2
    628       77FFF3DAC7FFFCF7F1FFFFFEFEFFFFFEFEFFFCF4EDFFF1D6C0FFC7935DFFA66F
    629       33FF0000000000000000000000000000000000000000C48443FFE5B999FFFCF4
    630       EDFFFBD2C1FFFAA887FFFD8757FFFD8454FFF8A582FFF7CEBDFFFAF1E7FFD2A7
    631       7AFFA36A2AFF000000000000000000000000C48445FFDCA277FFFCF4EDFFFABF
    632       A6FFFF7A43FFFFBB9EFFFFF6F3FFFFFEFEFFFEEDE5FFFA9970FFF3B69CFFF8F0
    633       E6FFBB8B56FF986426FF0000000000000000C48341FFF0DAC3FFFAD1C0FFFF79
    634       40FFFF986EFFFFFEFEFFFFC9B2FFFD9164FFFAC6AFFFFEF5F1FFF5773DFFEDC5
    635       B2FFE4CBB3FF905D21FF0000000000000000D1834CFFFCF7F1FFFAA582FFFF73
    636       3AFFFF844EFFFFAE8AFFFE6C2DFFF76727FFF19268FFFFFEFEFFE98354FFD785
    637       60FFF8F1ECFF81551FFF0000000000000000CD844EFFFFFEFEFFFC814CFFFF70
    638       31FFFF6B2CFFFD6928FFF86523FFF49265FFFDF5F1FFF4D4C5FFC65018FFBA59
    639       27FFFEFEFDFF834A1CFF0000000000000000CD8147FFFFFEFEFFF87A46FFF968
    640       29FFF66525FFF16020FFF18653FFFFFEFEFFF0BFA8FFC55A24FFB64C15FFB757
    641       24FFFEFEFDFF7F481AFF0000000000000000CD7F45FFFCF4EDFFEC9772FFE860
    642       21FFE05A1DFFDB5819FFEDAA89FFFFFEFEFFC84E12FFB94C11FFB34C13FFC77B
    643       53FFF6F0ECFF7A4319FF0000000000000000B4793AFFEFD6C1FFEDC5B2FFDD5A
    644       1AFFD55617FFD25313FFD87D4DFFE3A686FFBB4C11FFB34A12FFB64A10FFDEB9
    645       A6FFDCC9B8FF563C0DFF0000000000000000B67734FFD6996BFFF9F0E7FFDDA4
    646       88FFC75013FFC04E11FFDCA688FFFFFEFEFFB54911FFB64A10FFD59E82FFF3EC
    647       E7FF9A7352FF49340DFF000000000000000000000000B2702BFFDBAB80FFF8EF
    648       E7FFE2BBA6FFCC7E56FFC15823FFC05722FFC97F56FFDEBAA7FFF2EBE7FFB393
    649       76FF483108FF0000000000000000000000000000000000000000A1692CFFC088
    650       58FFE0C9B4FFF7F1ECFFFEFDFCFFFEFDFCFFF5F0ECFFDCC9B8FF9E7857FF4731
    651       08FF000000000000000000000000000000000000000000000000000000009164
    652       29FF855A24FF885015FF824A1DFF7E4719FF794417FF583C0EFF49340DFF0000
    653       0000000000000000000000000000000000000000000000000000000000000000
    654       0000000000000000000000000000000000000000000000000000000000000000
    655       0000000000000000000000000000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
    656       FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
    657       FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
    658       FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
    659       FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
    660       FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
    661       FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
    662       FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
    663       FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0000000063000000B7FFFF
    664       FF00FFFFFF00000000FF000000FF000000B7FFFFFF00FFFFFF00000000FF0000
    665       00FF0000008BFFFFFF00FFFFFF00FFFFFF0000000040000000FF000000B7FFFF
    666       FF0000000063000000B7FFFFFF00000000B700000063000000630000008B0000
    667       0020000000FF00000020FFFFFF0000000020000000FF000000FF000000B7FFFF
    668       FF00FFFFFF00FFFFFF00FFFFFF000000008B0000008BFFFFFF00FFFFFF00FFFF
    669       FF00000000FF00000040FFFFFF0000000020000000B70000008B000000B7FFFF
    670       FF00FFFFFF00FFFFFF00FFFFFF00000000FF0000008BFFFFFF00FFFFFF000000
    671       0020000000FF00000020FFFFFF00FFFFFF00FFFFFF000000008B000000B7FFFF
    672       FF00FFFFFF00FFFFFF000000008B000000FF00000040FFFFFF00FFFFFF000000
    673       00FF00000040FFFFFF00FFFFFF00FFFFFF00FFFFFF000000008B000000B7FFFF
    674       FF00FFFFFF0000000040000000FF000000B7FFFFFF00FFFFFF00FFFFFF00FFFF
    675       FF00000000FF00000063FFFFFF00FFFFFF00FFFFFF000000008B000000B7FFFF
    676       FF00FFFFFF00000000FF000000FF00000020FFFFFF00FFFFFF00FFFFFF00FFFF
    677       FF00000000FF0000008BFFFFFF00FFFFFF00FFFFFF000000008B000000B7FFFF
    678       FF0000000063000000FF00000063FFFFFF00FFFFFF0000000063000000B70000
    679       0020000000FF00000063FFFFFF00FFFFFF00FFFFFF000000008B000000B7FFFF
    680       FF000000008B000000FF000000FF000000FF0000008BFFFFFF00000000B70000
    681       00FF000000B7FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
    682       FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
    683       FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
    684       FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
    685       FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
    686       FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
    687       FF00FFFFFF00FFFFFF00FFFFFF00000000000000000000000000000000000000
    688       0000000000000000000000000000000000000000000000000000000000000000
    689       0000000000000000000000000000000000000000000000000000000000000000
    690       000000000000000000000000000000000000000000FF000000FF000000FF0000
    691       0000000000000000000000000000000000000000000000000000000000000000
    692       0000000000000000000000000000000000FF0000000000000000000000000000
    693       00FF00000000000000FF00000000000000000000000000000000000000000000
    694       0000000000000000000000000000000000000000000000000000000000000000
    695       0000000000FF000000FF0000000000000000000000FF000000FF000000FF0000
    696       0000000000000000000000000000000000000000000000000000000000000000
    697       00FF000000FF000000FF00000000000000FF00FFFFFFFFFFFFFF00FFFFFF0000
    698       00FF000000FF000000FF000000FF000000FF000000FF000000FF000000000000
    699       0000000000000000000000000000000000FFFFFFFFFF00FFFFFFFFFFFFFF00FF
    700       FFFFFFFFFFFF00FFFFFFFFFFFFFF00FFFFFFFFFFFFFF000000FF000000000000
    701       0000000000000000000000000000000000FF00FFFFFFFFFFFFFF00FFFFFFFFFF
    702       FFFF00FFFFFFFFFFFFFF00FFFFFFFFFFFFFF00FFFFFF000000FF000000000000
    703       0000000000000000000000000000000000FFFFFFFFFF00FFFFFFFFFFFFFF00FF
    704       FFFF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000
    705       00FF000000FF000000FF000000FF000000FF00FFFFFFFFFFFFFF00FFFFFF0000
    706       00FF008484FF008484FF008484FF008484FF008484FF008484FF008484FF0084
    707       84FF008484FF000000FF00000000000000FFFFFFFFFF00FFFFFF000000FF0084
    708       84FF008484FF008484FF008484FF008484FF008484FF008484FF008484FF0084
    709       84FF000000FF0000000000000000000000FF00FFFFFF000000FF008484FF0084
    710       84FF008484FF008484FF008484FF008484FF008484FF008484FF008484FF0000
    711       00FF000000000000000000000000000000FF000000FF008484FF008484FF0084
    712       84FF008484FF008484FF008484FF008484FF008484FF008484FF000000FF0000
    713       0000000000000000000000000000000000FF000000FF000000FF000000FF0000
    714       00FF000000FF000000FF000000FF000000FF000000FF000000FF000000000000
    715       0000000000000000000000000000000000000000000000000000000000000000
    716       0000000000000000000000000000000000000000000000000000000000000000
    717       0000000000000000000000000000000000000000000000000000000000000000
    718       0000000000000000000000000000000000000000000000000000000000000000
    719       0000000000000000000000000000000000000000000000000000000000000000
    720       0000000000000000000000000000000000000000000000000000000000000000
    721       0000000000000000000000000000000000000000000000000000000000000000
    722       0000000000000000000000000000000000000000000000000000000000000000
    723       0000000000000000000000000000000000000000000000000000DE9077BFDA8A
    724       70FFD88367FFD57C61FF0000000000000000DE9077BFDA8A70FFD88367FFD57C
    725       61FF000000000000000000000000000000000000000000000000D9866CBFEBB0
    726       9DFFF0BBABFFD27457FF0000000000000000D9866CBFEBB09DFFF0BBABFFD274
    727       57FF000000000000000000000000000000000000000000000000D57C61BFE8A7
    728       93FFEDB6A3FFCD6849FF0000000000000000D57C61BFE8A793FFEDB6A3FFCD68
    729       49FF000000000000000000000000000000000000000000000000D27457BFE5A1
    730       8BFFEBAF9AFFC95E3EFF0000000000000000D27457BFE5A18BFFEBAF9AFFC95E
    731       3EFF000000000000000000000000000000000000000000000000CD6849BFE198
    732       81FFE8A793FFC45432FF0000000000000000CD6849BFE19881FFE8A793FFC454
    733       32FF000000000000000000000000000000000000000000000000C86A4DBFE7A5
    734       90FFE5A18BFFBF4A27FF0000000000000000C86A4DBFE7A590FFE5A18BFFBF4A
    735       27FF000000000000000000000000000000000000000000000000B95435BFE299
    736       84FFE29A85FFB5401DFF0000000000000000B95435BFE29984FFE29A85FFB540
    737       1DFF000000000000000000000000000000000000000000000000BF4A27C0D985
    738       6BFFDF957EFFAA3A18FF0000000000000000BF4A27C0D9856BFFDF957EFFAA3A
    739       18FF000000000000000000000000000000000000000000000000B5401DBFD57C
    740       61FFDE9077FF993414FF0000000000000000B5401DBFD57C61FFDE9077FF9934
    741       14FF000000000000000000000000000000000000000000000000AA3A18BFD375
    742       58FFDC8B71FF8A2C0FFF0000000000000000AA3A18BFD37558FFDC8B71FF8A2C
    743       0FFF000000000000000000000000000000000000000000000000993414BFCF6F
    744       50FFDA886DFF7F270BFF0000000000000000993414BFCF6F50FFDA886DFF7F27
    745       0BFF0000000000000000000000000000000000000000000000008A2C0FBF842A
    746       0EFF7C260BFF7A250AFF00000000000000008A2C0FBF842A0EFF7C260BFF7A25
    747       0AFF000000000000000000000000000000000000000000000000000000000000
    748       0000000000000000000000000000000000000000000000000000000000000000
    749       0000000000000000000000000000000000000000000000000000000000000000
    750       0000000000000000000000000000000000000000000000000000000000000000
    751       0000000000000000000000000000000000000000000000000000000000000000
    752       0000000000000000000000000000000000000000000000000000000000000000
    753       000000000000000000000000000000000000000000FF000000FF000000FF0000
    754       00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000
    755       00FF000000FF000000FF0000000000000000000000FF008484FF000000FFFFFF
    756       FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0000
    757       00FFFFFFFFFF000000FF0000000000000000000000FF008484FF000000FFFFFF
    758       FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0000
    759       00FF000000FF000000FF0000000000000000000000FF008484FF000000FFFFFF
    760       FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0000
    761       00FF008484FF000000FF0000000000000000000000FF008484FF000000FFFFFF
    762       FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0000
    763       00FF008484FF000000FF0000000000000000000000FF008484FF000000FFFFFF
    764       FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0000
    765       00FF008484FF000000FF0000000000000000000000FF008484FF000000FFFFFF
    766       FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0000
    767       00FF008484FF000000FF0000000000000000000000FF008484FF008484FF0000
    768       00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0084
    769       84FF008484FF000000FF0000000000000000000000FF008484FF008484FF0084
    770       84FF008484FF008484FF008484FF008484FF008484FF008484FF008484FF0084
    771       84FF008484FF000000FF0000000000000000000000FF008484FF008484FF0000
    772       00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000
    773       00FF008484FF000000FF0000000000000000000000FF008484FF008484FF0000
    774       00FF000000FF000000FF000000FF000000FF000000FFFFFFFFFFFFFFFFFF0000
    775       00FF008484FF000000FF0000000000000000000000FF008484FF008484FF0000
    776       00FF000000FF000000FF000000FF000000FF000000FFFFFFFFFFFFFFFFFF0000
    777       00FF008484FF000000FF0000000000000000000000FF008484FF008484FF0000
    778       00FF000000FF000000FF000000FF000000FF000000FFFFFFFFFFFFFFFFFF0000
    779       00FF008484FF000000FF000000000000000000000000000000FF000000FF0000
    780       00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000
    781       00FF000000FF000000FF00000000000000000000000000000000000000000000
    782       0000000000000000000000000000000000000000000000000000000000000000
    783       0000000000000000000000000000000000000000000000000000000000000000
    784       0000000000000000000000000000000000000000000000000000000000000000
    785       00000000000000000000000000000000000000000000000000FF000000FF0000
    786       00FF000000FF000000FF000000FF000000FF000000FF000000FF000000000000
    787       00000000000000000000000000000000000000000000000000FFFFFFFFFFFFFF
    788       FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FF000000FF0000
    789       00000000000000000000000000000000000000000000000000FFFFFFFFFFFFFF
    790       FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FFBDBDBDFF0000
    791       00FF0000000000000000000000000000000000000000000000FFFFFFFFFFFFFF
    792       FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FF000000FF0000
    793       00FF000000FF00000000000000000000000000000000000000FFFFFFFFFFFFFF
    794       FFFFFF0000FFFF0000FFFF0000FFFF0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
    795       FFFF000000FF00000000000000000000000000000000000000FFFFFFFFFFFFFF
    796       FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
    797       FFFF000000FF00000000000000000000000000000000000000FFFFFFFFFFFFFF
    798       FFFFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFFFFFFFFFFFF
    799       FFFF000000FF00000000000000000000000000000000000000FFFFFFFFFFFFFF
    800       FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
    801       FFFF000000FF00000000000000000000000000000000000000FFFFFFFFFFFFFF
    802       FFFFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFFFFFFFFFFFF
    803       FFFF000000FF00000000000000000000000000000000000000FFFFFFFFFFFFFF
    804       FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
    805       FFFF000000FF00000000000000000000000000000000000000FFFFFFFFFFFFFF
    806       FFFFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFFFFFFFFFFFF
    807       FFFF000000FF00000000000000000000000000000000000000FFFFFFFFFFFFFF
    808       FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
    809       FFFF000000FF00000000000000000000000000000000000000FFFFFFFFFFFFFF
    810       FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
    811       FFFF000000FF00000000000000000000000000000000000000FF000000FF0000
    812       00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000
    813       00FF000000FF0000000000000000000000000000000000000000000000000000
    814       0000000000000000000000000000000000000000000000000000000000000000
    815       0000000000000000000000000000A37B48FFA37B48FFA27A47FFA27946FFA178
    816       45FFA07744FFA07643FF9F7542FF9E7441FF9E7340FF9D723FFF9C713EFF9C70
    817       3DFF9B6F3CFF9A6E3BFF9A6D3AFFA37B48FFBEA27FFFBEA17EFFBDA17DFFBDA0
    818       7CFFBD9F7CFFBC9F7BFFBB9E7AFFBB9D7AFFBB9D79FFBA9C78FFB99B78FFB99A
    819       77FFB89A76FFB89975FF996C39FFA27A47FFFFFFFFFFFFFFFFFFFEFEFEFFFEFE
    820       FEFFFDFDFDFFFDFDFCFFFCFCFBFFFCFBFBFFFBFBFAFFFBFAF9FFFAFAF9FFFAF9
    821       F8FFF9F9F7FFF9F8F7FF986B37FFA17946FFFFFFFFFF878787FF5D5D5DFFA0A0
    822       A0FFFDFCFCFFFCFCFBFFFCFBFBFFFBFBFAFFFBFAF9FFFAFAF9FFFAF9F8FFF9F8
    823       F7FFF8F8F7FFF8F7F6FF976A36FFA17844FFFEFEFEFF5F5F5FFF949494FF5353
    824       53FFFCFCFBFF7B7B7BFF797979FF757575FF727272FF6E6E6EFF6A6A69FF6666
    825       66FF626262FFF7F7F5FF966935FFA07643FFFEFDFDFF8C8C8CFF525252FFA4A4
    826       A4FFFBFBFAFFFBFBFAFFFAFAF9FFFAF9F8FFF9F9F8FFF9F8F7FFF8F8F6FFF8F7
    827       F6FFF7F7F5FFF7F6F4FF966734FF9F7542FFFDFDFCFFFCFCFCFFFCFCFBFFFBFB
    828       FAFFFBFAFAFFFAFAF9FFFAF9F8FFF9F9F8FFF9F8F7FFF8F8F6FFF8F7F6FFF7F6
    829       F5FFF7F6F4FFF6F5F4FF956633FF9E7441FFFCFCFCFFB5B5B5FF848484FFBEBD
    830       BDFFFAFAF9FFFAF9F8FFF9F9F7FFF9F8F7FFF8F8F6FFF8F7F5FFF7F6F5FFF7F6
    831       F4FFF6F5F3FFF6F5F3FF946531FF9D7340FFFCFBFBFF818181FFC4C4C4FF8F8F
    832       8FFFFAF9F8FF7B7B7AFF797979FF757574FF727171FF6D6D6DFF696969FF6666
    833       65FF626261FFF5F4F2FF936430FF9D723EFFFBFBFAFF9F9F9EFF7F7F7FFFAEAE
    834       ADFFF9F8F7FFF8F8F7FFF8F7F6FFF7F7F5FFF7F6F5FFF6F6F4FFF6F5F3FFF5F4
    835       F3FFF5F4F2FFF4F3F1FF92622FFF9C703DFFFAFAF9FFFAF9F9FFF9F9F8FFF9F8
    836       F7FFF8F8F7FFF8F7F6FFF7F7F5FFF7F6F5FFF6F5F4FFF6F5F3FFF5F4F3FFF5F4
    837       F2FFF4F3F1FFF4F3F0FF92612EFF9B6F3CFFFAF9F8FFBEBEBDFF929292FFBCBC
    838       BBFFF8F7F6FFF7F7F5FFF7F6F4FFF6F5F4FFF6F5F3FFF5F4F2FFF5F4F2FFF4F3
    839       F1FFF4F2F0FFF3F2F0FF91602DFF9A6E3BFFF9F9F8FF7C7C7CFFC4C4C4FF8787
    840       87FFF7F6F5FF7A7A7AFF787878FF747474FF717170FF6D6D6CFF696968FF6565
    841       65FF616161FFF2F1EFFF905F2BFF996D3AFFF9F8F7FF959594FF878787FF9B9A
    842       9AFFF7F6F4FFF6F5F3FFF6F5F3FFF5F4F2FFF4F3F1FFF4F3F1FFF3F2F0FFF3F2
    843       EFFFF2F1EFFFF2F1EEFF8F5E2AFF996C38FFF8F7F6FFF8F7F5FFF7F6F5FFF6F6
    844       F4FFF6F5F3FFF5F5F3FFF5F4F2FFF4F3F1FFF4F3F1FFF3F2F0FFF3F2EFFFF2F1
    845       EFFFF2F0EEFFF1F0EDFF8E5D29FF986B37FF976A36FF966935FF966734FF9566
    846       33FF946532FF946531FF936430FF92622FFF92612EFF91602DFF90602CFF905F
    847       2BFF8F5D2AFF8E5C29FF8D5B28FF000000000000000000000000000000000000
    848       0000000000000000000000000000000000000000000000000000000000000000
    849       0000000000000000000000000000000000000000000000000000000000000000
    850       0000000000000000000000000000000000000000000000000000000000000000
    851       0000000000000000000000000000000000000000000000000000000000000000
    852       0000000000000000000000000000000000000000000000000000000000000000
    853       0000000000000000000000000000000000000000000000000000339966FF0000
    854       00000000000066CC99FF009933FF009933FF009933FF339966FF000000000000
    855       0000000000000000000000000000000000000000000000000000009933FF3399
    856       66FF009933FF009933FF009933FF009933FF009933FF339966FF339966FF0000
    857       0000000000000000000000000000000000000000000000000000009933FF0099
    858       33FF009933FF009933FF66CC99FF000000000000000066CC99FF009933FF66CC
    859       99FF000000000000000000000000000000000000000000000000009933FF0099
    860       33FF009933FF339966FF0000000000000000000000000000000066CC99FF0099
    861       33FF000000000000000000000000000000000000000000000000009933FF0099
    862       33FF009933FF009933FF339966FF000000000000000000000000000000000000
    863       0000000000000000000000000000000000000000000000000000000000000000
    864       0000000000000000000000000000000000000000000000000000000000000000
    865       0000000000000000000000000000000000000000000000000000000000000000
    866       0000000000000000000000000000339966FF009933FF009933FF009933FF0099
    867       33FF000000000000000000000000000000000000000000000000009933FF66CC
    868       99FF00000000000000000000000000000000339966FF009933FF009933FF0099
    869       33FF00000000000000000000000000000000000000000000000066CC99FF0099
    870       33FF66CC99FF000000000000000066CC99FF009933FF009933FF009933FF0099
    871       33FF000000000000000000000000000000000000000000000000000000003399
    872       66FF339966FF009933FF009933FF009933FF009933FF009933FF339966FF0099
    873       33FF000000000000000000000000000000000000000000000000000000000000
    874       0000339966FF009933FF009933FF009933FF66CC99FF00000000000000003399
    875       66FF000000000000000000000000000000000000000000000000000000000000
    876       0000000000000000000000000000000000000000000000000000000000000000
    877       0000000000000000000000000000000000000000000000000000000000000000
    878       0000000000000000000000000000000000000000000000000000000000000000
    879       0000000000000000000000000000000000000000000000000000000000000000
    880       0000000000000000000000000000000000000000000000000000000000000000
    881       0000000000000000000000000000000000000000000000000000000000000000
    882       000000FF00FF0000000000000000000000000000000000000000000000000000
    883       0000000000000000000000000000000000000000000000000000000000000000
    884       000000FF00FF00FF00FF00000000000000000000000000000000000000000000
    885       0000000000000000000000000000000000000000000000000000000000000000
    886       000000FF00FF00FF00FF00FF00FF000000000000000000000000000000000000
    887       0000000000000000000000000000000000000000000000000000000000000000
    888       000000FF00FF00FF00FF00FF00FF00FF00FF0000000000000000000000000000
    889       0000000000000000000000000000000000000000000000000000000000000000
    890       000000FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00000000000000000000
    891       0000000000000000000000000000000000000000000000000000000000000000
    892       000000FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF000000000000
    893       0000000000000000000000000000000000000000000000000000000000000000
    894       000000FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF0000
    895       0000000000000000000000000000000000000000000000000000000000000000
    896       000000FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF000000000000
    897       0000000000000000000000000000000000000000000000000000000000000000
    898       000000FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00000000000000000000
    899       0000000000000000000000000000000000000000000000000000000000000000
    900       000000FF00FF00FF00FF00FF00FF00FF00FF0000000000000000000000000000
    901       0000000000000000000000000000000000000000000000000000000000000000
    902       000000FF00FF00FF00FF00FF00FF000000000000000000000000000000000000
    903       0000000000000000000000000000000000000000000000000000000000000000
    904       000000FF00FF00FF00FF00000000000000000000000000000000000000000000
    905       0000000000000000000000000000000000000000000000000000000000000000
    906       000000FF00FF0000000000000000000000000000000000000000000000000000
    907       0000000000000000000000000000000000000000000000000000000000000000
    908       0000000000000000000000000000000000000000000000000000000000000000
    909       0000000000000000000000000000000000000000000000000000000000000000
    910       0000000000000000000000000000000000000000000000000000000000000000
    911       0000000000000000000000000000000000000000000000000000000000000000
    912       0000000000000000000000000000000000000000000000000000000000000000
    913       0000000000000000000000000000000000000000000000000000000000000000
    914       000000000000000000003131312F313131FF3030301F00000000000000000000
    915       0000000000000000000000000000000000000000000000000000000000000000
    916       000000000000000000002E2E2E3F2E2E2EFF2E2E2E3F00000000000000000000
    917       0000000000000000000000000000000000000000000000000000000000000000
    918       00002A2A2A7F2A2A2ADF2B2B2BFF2B2B2BFF2B2B2BFF2A2A2ADF2A2A2A7F0000
    919       0000000000000000000000000000000000000000000000000000000000002727
    920       279F272727FF282828AF2828284F272727FF2828284F282828AF272727FF2727
    921       279F0000000000000000000000000000000000000000000000002424247F2424
    922       24FF2424245F0000000000000000242424FF00000000000000002424245F2424
    923       24FF2424247F0000000000000000000000000000000000000000202020DF2020
    924       20AF000000000000000000000000202020FF0000000000000000000000002020
    925       20AF202020DF0000000000000000000000001C1C1C1F1C1C1C3F1D1D1DFF1D1D
    926       1D4F0000000000000000000000001D1D1DFF0000000000000000000000001D1D
    927       1D4F1D1D1DFF1C1C1C3F1C1C1C1F1A1A1A1F1A1A1AFF1A1A1AFF1A1A1AFF1A1A
    928       1AFF1A1A1AFF1A1A1AFF1A1A1AFF1A1A1ABF1A1A1AFF1A1A1AFF1A1A1AFF1A1A
    929       1AFF1A1A1AFF1A1A1AFF1A1A1AFF000000001818182F1818183F161616FF1616
    930       167F1818183F1818183F1818183F161616FF1818183F1818183F1818183F1616
    931       167F161616FF1818183F1818181F000000000000000000000000131313DF1313
    932       13AF000000000000000000000000131313FF0000000000000000000000001313
    933       13AF131313DF00000000000000000000000000000000000000000F0F0F7F0F0F
    934       0FFF0E0E0E5F00000000000000000F0F0FFF00000000000000000E0E0E5F0F0F
    935       0FFF1010106F0000000000000000000000000000000000000000000000000D0D
    936       0D9F0C0C0CFF0C0C0CAF0B0B0B4F0C0C0CFF0B0B0B4F0C0C0CAF0C0C0CFF0D0D
    937       0D9F000000000000000000000000000000000000000000000000000000000000
    938       00000909097F090909DF090909FF090909FF090909FF090909DF0909096F0000
    939       0000000000000000000000000000000000000000000000000000000000000000
    940       000000000000000000000505053F050505FF0505053F00000000000000000000
    941       0000000000000000000000000000000000000000000000000000000000000000
    942       000000000000000000000202022F020202FF0303031F00000000000000000000
    943       0000000000000000000000000000
     464      4C7A0F00000010000000100000008C0A00000000000078DAED9A0B544DF91EC7
     465      CFCAB2D6154A8A89A9A5B98C94A644AEC7186118B40C2D8F3CEE6D3AA1282291
     466      9E3A2244EE44629454485C16998C6772EA62702F732F17638CD7984B73178D4E
     467      A7C7E975BEF7FFDF9D73DA67B7CF3E2F83B1FA9DF5B5CFFEEDDFE7F7FBBFF63E
     468      7BEF88446DA66D80B0DAF8779B6FB3577932A96412B75AB49A911139B438B6F4
     469      E4D0C91990032525257A59811C8CDF8C1C1ABF8939B4FC86E660CD6DAB634239
     470      34CCEAD5BC7DD09583CD51E3F03A73B039BA4F8DED17CAC1AE6700DB2A077331
     471      62B1469C0F5AF54D3C8F0CE268B3DE0689447944F9447F7312890E251015125D
     472      516D139AFDF94C9C003FDAD2F268A9B7F7ED32B1B85C111A2A578AC52F142347
     473      DE2AB3B43C524A8FEBE6F739595A1E2E9D31E367F99C394FE0E7F750A3D9B37F
     474      82AFEF4379870E874A691C3F9F9D306CD8B5673E3E37316EDCF5569A30E1DFF0
     475      F4BCF08CC6F1F399853E3EB71443864841E5E97916CECEC7E0E0908FEEDD73D1
     476      B56B167AF73EAAA071FCFCF62BA486D2DDFD341C1D8F90F8FDB0B1C9D3D2FBEF
     477      1F51D2387E3EB5D0CBEB82C2CEAE90C47ECD2B3BBB630A1AC7CF6F4CB0B72F78
     478      6667574A62A5BCB2B4CC7F46E3F8F924A776ED369676EB269577ED7A9DC45FD3
     479      9295D539B9854572298DE3E71389A2475B58AC2AB5B43C58666DFD0F858DCD6D
     480      25DDD27DEAA7C7699C6E3E92683E596762B2DEC464DD89AFA8B609CDFE48912E
     481      FEF7AAB7C5ECED4B40A5BABE1A1DEBE474056CE9CA2374BC6FDFEFC016374697
     482      9F6B2E2E37A0963A96FDDD107373BB05AE8CE1A979787C0FB58C65070EBC07AE
     483      0CCD3178F003A8A566B8FBBA6CE8D0C7508B1BABCBAFB6E1C39F402DA1187378
     484      4372183BD6A6D8EBAA63C2BD069F0CE2F9CC603E298937071F9FC473DFC7F03C
     485      39B83C6505794E0E36AF66D93294E7638DE1CDAD6F70FF397369F4F8EBA9AF73
     486      ED717813D6239737ED3C308F37E799999BE38DD8A5A4B1F8FBDA31B89B15863B
     487      3B16E256FA3C665B1833025F477F0C61760CEEEF8D82FCDE6534D6CA00A59251
     488      63553964774A70799B3FF2970EE2CD7131E9533C3D93C1C436DC2C45FDC10D68
     489      DA30134D49D3A1D8BF06B5DF15A35E56869B0762B12FD415DAEC38A62E65EBA5
     490      F940ECA7405136502367EA2BCB9FA23E231CF2935950543C43518A1F76CEEFAB
     491      C97171ED6854DCBB80FA1BE4392F6614B0734973DBAF16A269EB7CD47F5B0065
     492      B50CD5519FA0FC5221FEFBCFE3D8E2FF8186BFB17612D3DF7AD24E2C1F0E244D
     493      068E6E8272F147A85DE00C59DA4226DFFFD64EC7F7EBC450C85E2071462F0D7F
     494      9DC6D3714A9C04847B028BDCD014D20F8AA0DEA84A0B4213A95D75EB12BEF5B5
     495      C7D9D9CE24B4096B7D1C5AF8C4F10CAF88FD0C750B5D5013F421646227C8D64F
     496      63FC15D283B834A70F4E4EEA865333FB30BC6442CF165E328E19BB175F45E017
     497      F107783CC7113FCEEA81F2431B19FECAE4AE3833C906C727D9E272DC34D454BC
     498      2043DC43C37F13331C2FEF943263F3604E4FDCF67B0F37A7D9E2EEAACFF173FE
     499      7A1451D6A72B4EFA74C1C333F9B87FF534FC4674D6F027A3BC70276311EA2ACA
     500      F0202F19977D6D5132D906F7F39399FA2726DA30ECEDEC3590BF2843E6F2A998
     501      E8D5596B0D1486F7C78F875743F1B20C4F8AF2712DC10FA5B37AA364E61F7155
     502      E28787670FA0F279198E6F5B89099E7FE05D837B42DC50923C0B8FAF7E835A32
     503      47CAA64646D5A4BFB4CDD9D133315E07ABB6ADF35DB08E8C75B26F37ACF17144
     504      C2F81E8819FB1E668DB06AD5E657F3B61B6D6A7E0E9A47748AB5AFBE0EF3F952
     505      38EC28762C3B17DDAAF6A952E823882AD64975DC89AF162B770A4F3DFACF2816
     506      7F4A15C7C76BB5975B9F53E7148F4F538B5B5B88E78E094F9BE6E9E1C1D74EBE
     507      3E7179D5586BD550CF09ABFFF304F814CEFD420A6B2E79FBD4F6FC6FFEBB4803
     508      EF65F00AEE715ABD4337F65945AB1DEA7B55ED77BC06DF77AA59C1ADD07DAB3E
     509      560FAF23D6707159F6BDB82EB1C6CF0C56D37F1359FEE707C359919163D56602
     510      F6704B94F4DEA670DC5DBB00B7E303A1CFCFB51FD62F963E3FB61B1545877173
     511      C54CE8F3738DE496FE72601BCA4FEEC3F58513A1CFCF35925BFA744F0A9E1764
     512      E2EA1723A1CFCF35925BFAD3CE44D05A17A70F843E3FD7AE847E2E2DDBBF05B4
     513      96D4C719FAFC5C3B337DB0F44946129E64AEC389518ED0E7E71AC95DF2C3BA45
     514      78B43D018786DB439F9F6B24B794CE2F996F6478D9419F9F6B24B7F43F91B370
     515      3F651936B959439F9F6B24B7F45F4B7D712F390C12E78ED0E7E71AC92D4D72B5
     516      427CDF8E88FDD012FAFCEFE0DFF961E2F550E7FB3BBEF7793CBF8746F1E6D6E7
     517      FD0D7A177843DE9DE9FA0D36E4F753E837DCF0777726F1E6F6FF37E645669E3F
     518      BF976B809E5711069DB726F3C5C5C57AEF830DBC6E4090E7FEA733C3FEA60143
     519      CDE8FA9C76B4D5FF8DEB9BC8BF89737F5FDC0450ED8D1D8FBD319F614FF438E4
     520      468D45EECA4F91133906D92B46237BF928EC8EF046D6B291C80AFF04BB968E40
     521      E6928F9119369C61CFEF95E0FC9E0414EF5985E2DC7814E7C4E35C4E1C8AB263
     522      51B49B2A0667B3A27166175166144E67AEC4E98C48642C1EC6D4559B92BE6B27
     523      6A6A6A226A446363031A1B1AD0D0508F86FA3AD453D5295057578B3A452D762E
     524      1A823DA4CDD4366CD8007F7F7FE4E6E6A2A95180259C82AAB6065F85FE89F477
     525      2C5333202000E9E9E998366D1AC3C6C5C521262606919191888888C092254B10
     526      1A1A82E0E060CC9D3B17B5B5D5D811329819272569EFE6CD9B3175EA54E4E5E5
     527      35D7246A69AFBA6E0D5397B2B53555D8B1C08B19E3E6BE36B7B9B9BD026C4D33
     528      5B535D85EDC18398F9A1EC89132790447E57CE936B1C779C9AD96A162B67941E
     529      E489DD646EE938252626E2E2C58B484D4D65D8B8B85855FF572062D932848585
     530      212484F63F88F43F10D55595D8367F005917239936E7E464432291E0E8D1235A
     531      635CABAA5BA3AA5B5D2567D82AB90C69733D98F5D4DCDE3A565F396C756BB64A
     532      5E81B44077662DD2F69E3F5F8CB4B4349C3B57A435C62D6C650B5B590139D156
     533      F147CC3AA675E3E3E399FED375446BC6C6C6223A3A1A2B56ACC0B265E1A4FF8B
     534      49FF1722282808818181A894BDC49680FEC820E7006DF3F6EDE90CBB2B33536B
     535      8C5BDA2B636ACA2B5F326CA5EC57A47EE14ACE81A14C7B15DC7112622B7E85AC
     536      A21C5FFABB30E7005DC7742DD2F544D7447AD040666EE9FCD031A6E344FBBA45
     537      ECC6B439D5DF155FFEC5057FFD73BF77EA59645046B0A63FC1D73220CA18A411
     538      FB984E53C7B13836AF37078761DAC0690FDB27C4F3D5D2F4C9C0FA06F5F975CC
     539      09773C05DACF373EAD72E830BE31E6AE03C1FAAA5A426B401FCFD75E767BDE86
     540      39790D4F02309B372707581F7379537280E7632E6F4C0E087CDE54FD3735FE6F
     541      6AFDB599C8D3D3D3830803060CE8650AEFEEEEEE4D04BA358673757595103DEA
     542      DFBF3FD4A2FBD4AF8F757676CE2142BF7EFD0A88A6A8BE4FA1FBF43B3DAE8BED
     543      D3A78F840844012C1F58DF0354C779DBE1E4E4F488A880E30367BF80C6B17D0E
     544      0E0EBD88BC1D1D1D4134857D8CFA38FB53A88FC653AE67CF9E54109054E838CD
     545      696F6FEF41E4DDBD7B771049E877B5A88FB32F61F9B4D685ADADED23A2028E0F
     546      9CFD021AC7377ED6D6D6122258595905B07C1A9EFAE97E972E5D96EA9AC3CE9D
     547      3BE774EAD40944051D3B769C42BFABB605F43B3DAE6F0D75E8D04142F488082C
     548      D1FDA5C6ACE3F6EDDB7B13816E4D397F2C2C2C3C88D0AE5D3B9DE7DFFF0101C8
     549      8363
    944550    }
    945551  end
    946552  object PopupMenu1: TPopupMenu
    947     left = 196
    948     top = 54
     553    Left = 294
     554    Top = 81
    949555  end
    950556end
  • trunk/IDE/Forms/FormMain.pas

    r74 r75  
    1 unit UFormMain;
    2 
    3 {$MODE Delphi}
     1unit FormMain;
    42
    53interface
     
    75uses
    86  SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls,
    9   ComCtrls, ExtCtrls, SynEdit, SynHighlighterPas, Registry,
    10   UProject, FileUtil, Menus, ActnList, DateUtils,
    11   UFormTargetCode, UFormCodeTree, URegistry;
     7  ComCtrls, ExtCtrls, SynEdit, SynHighlighterPas, Registry, Project, FileUtil,
     8  Menus, ActnList, DateUtils, FormTargetCode, FormCodeTree, RegistryEx,
     9  FormMessages, FormSourceCode, FormProject, FormTargetProject, FormTargets,
     10  FormExternalProducerOutput;
    1211
    1312type
     
    145144    procedure UpdateTitle;
    146145    procedure ProducerProcessOutput(Text: string);
     146    procedure ShowProject(ProjectFile: TProjectFile);
     147    procedure ShowTargetCode(ProjectFile: TProjectFile);
    147148  public
     149    FormMessages: TFormMessages;
     150    FormSourceCode: TFormSourceCode;
     151    FormProject: TFormProject;
     152    FormTargetCode: TFormTargetCode;
     153    FormTargetProject: TFormTargetProject;
     154    FormExternalProducerOutput: TFormExternalProducerOutput;
     155    FormTargets: TFormTargets;
     156    FormCodeTree: TFormCodeTree;
    148157    procedure LoadFromRegistry(Root: HKEY; const Key: string);
    149158    procedure SaveToRegistry(Root: HKEY; const Key: string);
     
    162171
    163172uses
    164   UCore, UFormMessages, UFormSourceCode, UFormProject, UCommon, UFormAbout, UFormOptions,
    165   UFormTargets, UTarget, UExecutor, UFormProjectNew,
    166   UFormTargetProject, UFormExternalProducerOutput;
     173  Core, Common, FormAbout, FormOptions, Target, Executor, FormProjectNew;
    167174
    168175resourcestring
     
    175182  FormSourceCode.Save;
    176183  AProjectSave.Execute;
    177   with Core do begin
     184  with Core.Core do begin
    178185    // Compile project file
    179186    Compiler.Init;
     
    214221procedure TFormMain.AResetExecute(Sender: TObject);
    215222begin
    216   Core.Compiler.Target.Executor.Reset;
     223  Core.Core.Compiler.Target.Executor.Reset;
    217224end;
    218225
     
    220227begin
    221228  ABuildExecute(Self);
    222   Core.Compiler.Target.Executor.Run;
     229  Core.Core.Compiler.Target.Executor.Run;
    223230end;
    224231
    225232procedure TFormMain.ARunToCursorExecute(Sender: TObject);
    226233begin
    227   Core.Compiler.Target.Executor.RunToCursor(0); // determine position
     234  Core.Core.Compiler.Target.Executor.RunToCursor(0); // determine position
    228235end;
    229236
    230237procedure TFormMain.AStepInExecute(Sender: TObject);
    231238begin
    232   Core.Compiler.Target.Executor.StepIn;
     239  Core.Core.Compiler.Target.Executor.StepIn;
    233240end;
    234241
    235242procedure TFormMain.AStepOutExecute(Sender: TObject);
    236243begin
    237   Core.Compiler.Target.Executor.StepOut;
     244  Core.Core.Compiler.Target.Executor.StepOut;
    238245end;
    239246
    240247procedure TFormMain.AStepOverExecute(Sender: TObject);
    241248begin
    242   Core.Compiler.Target.Executor.StepOver;
     249  Core.Core.Compiler.Target.Executor.StepOver;
    243250end;
    244251
    245252procedure TFormMain.AStopExecute(Sender: TObject);
    246253begin
    247   Core.Compiler.Target.Executor.Stop;
     254  Core.Core.Compiler.Target.Executor.Stop;
    248255end;
    249256
     
    264271
    265272procedure TFormMain.AViewOptionsExecute(Sender: TObject);
    266 begin
    267   FormOptions.ShowModal;
     273var
     274  FormOptions: TFormOptions;
     275begin
     276  FormOptions := TFormOptions.Create(nil);
     277  try
     278    FormOptions.ShowModal;
     279  finally
     280    FormOptions.Free;
     281  end;
    268282end;
    269283
     
    280294procedure TFormMain.AViewSourceEditorExecute(Sender: TObject);
    281295begin
    282 
    283296end;
    284297
     
    288301  F: TFileStream;
    289302begin
    290   FileName := ExtractFileDir(Core.Project.FileName) + Name + '.pas';
     303  FileName := ExtractFileDir(Core.Core.Project.FileName) + Name + '.pas';
    291304  if FileExists(FileName) then
    292305  try
     
    303316procedure TFormMain.UpdateInterface;
    304317begin
    305   with Core do begin
    306   UpdateTitle;
    307   AProjectClose.Enabled := Assigned(Project);
    308   AProjectSave.Enabled := Assigned(Project) and Project.Modified;
    309   AProjectSaveAs.Enabled := Assigned(Project);
    310   (*AProgramRun.Enabled := Project.Active and (BrainFuckInterpreter.State = rsStopped);
    311   AProgramPause.Enabled := Project.Active and (BrainFuckInterpreter.State = rsRunning);
    312   AProgramStop.Enabled := Project.Active and (BrainFuckInterpreter.State <> rsStopped);*)
    313   ABuild.Enabled := Assigned(Project) and Assigned(Compiler.Target) and
    314     Assigned(Compiler.Target.Producer);
    315   APause.Enabled := Assigned(Project) and Assigned(Compiler.Target) and
    316     Assigned(Compiler.Target.Executor) and (Compiler.Target.Executor.State = rsRunning);
    317   ARun.Enabled := Assigned(Project) and Assigned(Compiler.Target) and
    318     Assigned(Compiler.Target.Executor) and ((Compiler.Target.Executor.State = rsStopped) or
    319     (Compiler.Target.Executor.State = rsPaused));
    320   AStop.Enabled := Assigned(Project) and Assigned(Compiler.Target) and
    321     Assigned(Compiler.Target.Executor) and ((Compiler.Target.Executor.State = rsRunning) or
    322     (Compiler.Target.Executor.State = rsPaused));
    323   AStepIn.Enabled := Assigned(Project) and Assigned(Compiler.Target) and
    324     Assigned(Compiler.Target.Executor) and ((Compiler.Target.Executor.State = rsRunning) or
    325     (Compiler.Target.Executor.State = rsPaused));
    326   AStepOut.Enabled := AStepIn.Enabled;
    327   AStepOver.Enabled := AStepIn.Enabled;
    328   ARunToCursor.Enabled := AStepIn.Enabled;
     318  with Core.Core do begin
     319    UpdateTitle;
     320    AProjectClose.Enabled := Assigned(Project);
     321    AProjectSave.Enabled := Assigned(Project) and Project.Modified;
     322    AProjectSaveAs.Enabled := Assigned(Project);
     323    (*AProgramRun.Enabled := Project.Active and (BrainFuckInterpreter.State = rsStopped);
     324    AProgramPause.Enabled := Project.Active and (BrainFuckInterpreter.State = rsRunning);
     325    AProgramStop.Enabled := Project.Active and (BrainFuckInterpreter.State <> rsStopped);*)
     326    ABuild.Enabled := Assigned(Project) and Assigned(Compiler.Target) and
     327      Assigned(Compiler.Target.Producer);
     328    APause.Enabled := Assigned(Project) and Assigned(Compiler.Target) and
     329      Assigned(Compiler.Target.Executor) and (Compiler.Target.Executor.State = rsRunning);
     330    ARun.Enabled := Assigned(Project) and Assigned(Compiler.Target) and
     331      Assigned(Compiler.Target.Executor) and ((Compiler.Target.Executor.State = rsStopped) or
     332      (Compiler.Target.Executor.State = rsPaused));
     333    AStop.Enabled := Assigned(Project) and Assigned(Compiler.Target) and
     334      Assigned(Compiler.Target.Executor) and ((Compiler.Target.Executor.State = rsRunning) or
     335      (Compiler.Target.Executor.State = rsPaused));
     336    AStepIn.Enabled := Assigned(Project) and Assigned(Compiler.Target) and
     337      Assigned(Compiler.Target.Executor) and ((Compiler.Target.Executor.State = rsRunning) or
     338      (Compiler.Target.Executor.State = rsPaused));
     339    AStepOut.Enabled := AStepIn.Enabled;
     340    AStepOver.Enabled := AStepIn.Enabled;
     341    ARunToCursor.Enabled := AStepIn.Enabled;
    329342  end;
    330343
    331344  UpdateMenu;
    332   Core.Compiler.Targets.LoadToStrings(ComboBoxTarget.Items);
    333   ComboBoxTarget.ItemIndex := Core.Compiler.Targets.IndexOf(Core.Compiler.Target);
     345  Core.Core.Compiler.Targets.LoadToStrings(ComboBoxTarget.Items);
     346  ComboBoxTarget.ItemIndex := Core.Core.Compiler.Targets.IndexOf(Core.Core.Compiler.Target);
    334347  FormSourceCode.UpdateInterface;
    335348  FormTargetCode.UpdateInterface;
     
    435448begin
    436449  with TMenuItem(Sender) do begin
    437     Core.Compiler.Target := TTarget(Core.Compiler.Targets[MenuIndex]);
     450    Core.Core.Compiler.Target := TTarget(Core.Core.Compiler.Targets[MenuIndex]);
    438451    UpdateInterface;
    439452  end;
     
    446459begin
    447460  MenuItemProducer.Clear;
    448   with Core do
     461  with Core.Core do
    449462  for I := 0 to Compiler.Targets.Count - 1 do begin
    450463    NewMenuItem := TMenuItem.Create(MenuItemProducer);
     
    461474  Title: string;
    462475begin
    463   Title := Core.ApplicationInfo.AppName;
    464   if Assigned(Core.Project) then begin
    465     if Core.Project.FileName <> '' then Title := Core.Project.FileName + ' - ' + Title;
    466     if Core.Project.Modified then Title := Title + ' *';
     476  Title := Core.Core.ApplicationInfo.AppName;
     477  if Assigned(Core.Core.Project) then begin
     478    if Core.Core.Project.FileName <> '' then Title := Core.Core.Project.FileName + ' - ' + Title;
     479    if Core.Core.Project.Modified then Title := Title + ' *';
    467480  end;
    468481  Caption := Title;
     
    474487end;
    475488
     489procedure TFormMain.ShowProject(ProjectFile: TProjectFile);
     490begin
     491  FormMain.TabSheetSource.Show;
     492  FormSourceCode.ProjectFile := ProjectFile;
     493end;
     494
     495procedure TFormMain.ShowTargetCode(ProjectFile: TProjectFile);
     496begin
     497  FormTargetCode.ProjectFile := ProjectFile;
     498  FormMain.TabSheetTarget.Show;
     499  FormTargetCode.SynEdit1.Lines.Assign(ProjectFile.Source);
     500end;
     501
    476502procedure TFormMain.FormClose(Sender: TObject; var Action: TCloseAction);
    477503begin
    478504  AProjectClose.Execute;
    479   Core.SaveToRegistry(HKEY(Core.ApplicationInfo.RegistryRoot), Core.ApplicationInfo.RegistryKey);
     505  Core.Core.SaveToRegistry(HKEY(Core.Core.ApplicationInfo.RegistryRoot), Core.Core.ApplicationInfo.RegistryKey);
    480506end;
    481507
     
    484510  I: Integer;
    485511begin
    486   with Core.Compiler.Targets do
     512  FormMessages := TFormMessages.Create(nil);
     513  FormSourceCode := TFormSourceCode.Create(nil);
     514  FormProject := TFormProject.Create(nil);
     515  FormProject.OnShowProject := ShowProject;
     516  FormTargetCode := TFormTargetCode.Create(nil);
     517  FormTargetProject := TFormTargetProject.Create(nil);
     518  FormTargetProject.OnShowTargetCode := ShowTargetCode;
     519  FormExternalProducerOutput := TFormExternalProducerOutput.Create(nil);
     520  FormTargets := TFormTargets.Create(nil);
     521  FormCodeTree := TFormCodeTree.Create(nil);
     522
     523  with Core.Core.Compiler.Targets do
    487524  for I := 0 to Count - 1 do
    488525  with TTarget(Items[I]) do
     
    498535begin
    499536  if Sender is TMenuItem then
    500     Core.ProjectOpen(StringReplace(TMenuItem(Sender).Caption, '&', '', [rfReplaceAll]));
     537    Core.Core.ProjectOpen(StringReplace(TMenuItem(Sender).Caption, '&', '', [rfReplaceAll]));
    501538end;
    502539
    503540procedure TFormMain.FormShow(Sender: TObject);
    504541begin
    505   Core.LoadFromRegistry(HKEY(Core.ApplicationInfo.RegistryRoot), Core.ApplicationInfo.RegistryKey);
     542  Core.Core.LoadFromRegistry(HKEY(Core.Core.ApplicationInfo.RegistryRoot), Core.Core.ApplicationInfo.RegistryKey);
    506543  DockInit;
    507   Core.ProjectTemplatesInit;
    508 
    509   if Core.ReopenLastOpenedFile and (Core.LastOpenedFiles.Items.Count > 0) then
    510   if FileExists(Core.LastOpenedFiles.Items[0]) then
    511     Core.ProjectOpen(Core.LastOpenedFiles.Items[0]);
     544  Core.Core.ProjectTemplatesInit;
     545
     546  if Core.Core.ReopenLastOpenedFile and (Core.Core.LastOpenedFiles.Items.Count > 0) then
     547  if FileExists(Core.Core.LastOpenedFiles.Items[0]) then
     548    Core.Core.ProjectOpen(Core.Core.LastOpenedFiles.Items[0]);
    512549
    513550  WindowState := wsMaximized;
     
    517554procedure TFormMain.AProjectOpenExecute(Sender: TObject);
    518555begin
    519   if Core.LastOpenedFiles.Items.Count > 0 then
    520     OpenDialogProject.FileName := Core.LastOpenedFiles.Items[0]
     556  if Core.Core.LastOpenedFiles.Items.Count > 0 then
     557    OpenDialogProject.FileName := Core.Core.LastOpenedFiles.Items[0]
    521558    else OpenDialogProject.FileName := ExtractFileDir(Application.ExeName);
    522559  if OpenDialogProject.Execute then begin
    523     Core.ProjectOpen(OpenDialogProject.FileName);
     560    Core.Core.ProjectOpen(OpenDialogProject.FileName);
    524561  end;
    525562end;
     
    529566  //if Project.Modified then ;  A
    530567  FormSourceCode.ProjectFile := nil;
    531   FreeAndNil(Core.Project);
     568  FreeAndNil(Core.Core.Project);
    532569  FormProject.UpdateProjectTree;
    533570  UpdateInterface;
     
    540577
    541578procedure TFormMain.AAboutExecute(Sender: TObject);
    542 begin
    543   FormAbout.ShowModal;
     579var
     580  FormAbout: TFormAbout;
     581begin
     582  FormAbout := TFormAbout.Create(nil);
     583  try
     584    FormAbout.ShowModal;
     585  finally
     586    FormAbout.Free;
     587  end;
    544588end;
    545589
    546590procedure TFormMain.AHomepageExecute(Sender: TObject);
    547591begin
    548   OpenWebPage(Core.ApplicationInfo.HomePage);
     592  OpenWebPage(Core.Core.ApplicationInfo.HomePage);
    549593end;
    550594
    551595procedure TFormMain.APauseExecute(Sender: TObject);
    552596begin
    553   Core.Compiler.Target.Executor.Pause;
     597  Core.Core.Compiler.Target.Executor.Pause;
    554598end;
    555599
    556600procedure TFormMain.AProjectNewExecute(Sender: TObject);
    557 begin
     601var
     602  FormProjectNew: TFormProjectNew;
     603begin
     604  FormProjectNew := TFormProjectNew.Create(nil);
    558605  if FormProjectNew.ShowModal = mrOk then begin
    559606    if Assigned(FormProjectNew.ListView1.Selected) then begin
    560607      if TProjectTemplate(FormProjectNew.ListView1.Selected.Data).IsProject then
    561         Core.ProjectNew;
    562       TProjectTemplate(FormProjectNew.ListView1.Selected.Data).InitProject(Core.Project);
     608        Core.Core.ProjectNew;
     609      TProjectTemplate(FormProjectNew.ListView1.Selected.Data).InitProject(Core.Core.Project);
    563610    end;
    564611  end;
     612  FormProjectNew.Free;
    565613  UpdateInterface;
    566614end;
     
    568616procedure TFormMain.AProjectSaveAsExecute(Sender: TObject);
    569617begin
    570   if Core.LastOpenedFiles.Items.Count > 0 then
    571     SaveDialogProject.FileName := Core.LastOpenedFiles.Items[0]
     618  if Core.Core.LastOpenedFiles.Items.Count > 0 then
     619    SaveDialogProject.FileName := Core.Core.LastOpenedFiles.Items[0]
    572620    else SaveDialogProject.FileName := ExtractFileDir(Application.ExeName);
    573   if Assigned(Core.Project) then
     621  if Assigned(Core.Core.Project) then
    574622  if SaveDialogProject.Execute then begin
    575     Core.Project.SaveToFile(SaveDialogProject.FileName);
     623    Core.Core.Project.SaveToFile(SaveDialogProject.FileName);
    576624    FormSourceCode.Save;
    577     Core.Project.Save;
     625    Core.Core.Project.Save;
    578626    UpdateInterface;
    579     Core.LastOpenedFiles.AddItem(SaveDialogProject.FileName);
     627    Core.Core.LastOpenedFiles.AddItem(SaveDialogProject.FileName);
    580628  end;
    581629end;
     
    584632begin
    585633  FormSourceCode.Save;
    586   if not FileExists(Core.Project.FileName) then AProjectSaveAs.Execute
    587     else Core.Project.SaveToFile(Core.Project.FileName);
     634  if not FileExists(Core.Core.Project.FileName) then AProjectSaveAs.Execute
     635    else Core.Core.Project.SaveToFile(Core.Core.Project.FileName);
    588636end;
    589637
     
    591639begin
    592640  with TMenuItem(Sender) do begin
    593     Core.Compiler.Target := TTarget(Core.Compiler.Targets[ComboBoxTarget.ItemIndex]);
     641    Core.Core.Compiler.Target := TTarget(Core.Core.Compiler.Targets[ComboBoxTarget.ItemIndex]);
    594642    UpdateInterface;
    595643  end;
  • trunk/IDE/Forms/FormMessages.pas

    r74 r75  
    1 unit UFormMessages;
    2 
    3 {$mode objfpc}{$H+}
     1unit FormMessages;
    42
    53interface
     
    75uses
    86  Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls,
    9   ComCtrls, UProject, UCompiler;
     7  ComCtrls, Project, Compiler;
    108
    119type
     10  TSelectFileEvent = procedure(FileName: string; Position: TPoint);
    1211
    1312  { TFormMessages }
     
    1514  TFormMessages = class(TForm)
    1615    ListView1: TListView;
    17     procedure ListBoxMessagesSelectionChange(Sender: TObject; User: boolean);
     16    procedure ListBoxMessagesSelectionChange(Sender: TObject; User: Boolean);
    1817    procedure ListView1Click(Sender: TObject);
    1918    procedure ListView1Data(Sender: TObject; Item: TListItem);
     
    2120      Selected: Boolean);
    2221  private
    23     { private declarations }
     22    FOnSelectFile: TSelectFileEvent;
    2423  public
    2524    procedure Reload;
     25    property OnSelectFile: TSelectFileEvent read FOnSelectFile write FOnSelectFile;
    2626  end;
    2727
    28 var
    29   FormMessages: TFormMessages;
    3028
    3129implementation
     
    3432
    3533uses
    36   UCore, UFormMain, UFormSourceCode;
     34  Core, FormMain, FormSourceCode;
    3735
    3836{ TFormMessages }
    3937
    4038procedure TFormMessages.ListBoxMessagesSelectionChange(Sender: TObject;
    41   User: boolean);
     39  User: Boolean);
    4240begin
    43 
    4441end;
    4542
     
    5249procedure TFormMessages.ListView1Data(Sender: TObject; Item: TListItem);
    5350begin
    54   with Core, FormMain, FormSourceCode do
     51  with Core.Core, FormMain.FormMain do
    5552  with TErrorMessage(Compiler.ErrorMessages[Item.Index]) do begin
    5653    if FileName = '' then Item.Caption := ' '
     
    6865  P: TPoint;
    6966begin
    70   with Core, FormSourceCode do
     67  with Core.Core do
    7168  if Assigned(ListView1.Selected) then
    7269  with TErrorMessage(ListView1.Selected.Data) do
    7370  if FileName <> '' then begin
    74     ProjectFile := Project.Files.SearchFile(FileName);
    75     if Assigned(ProjectFile) then
    76       SynEditSource.Lines.Assign(ProjectFile.Source)
    77       else if FileExists(FileName) then
    78         SynEditSource.Lines.LoadFromFile(FileName);
    79     SynEditSource.CaretXY := Position;
    80     TForm(SynEditSource.Owner).Show;
    81     SynEditSource.SetFocus;
     71    if Assigned(FOnSelectFile) then
     72      FOnSelectFile(FileName, Position);
    8273  end;
    8374end;
     
    8576procedure TFormMessages.Reload;
    8677begin
    87   ListView1.Items.Count := Core.Compiler.ErrorMessages.Count;
     78  ListView1.Items.Count := Core.Core.Compiler.ErrorMessages.Count;
    8879  ListView1.Refresh;
    8980end;
  • trunk/IDE/Forms/FormOptions.pas

    r74 r75  
    1 unit UFormOptions;
    2 
    3 {$mode delphi}
     1unit FormOptions;
    42
    53interface
     
    2624  end;
    2725
    28 var
    29   FormOptions: TFormOptions;
    3026
    3127implementation
     
    3430
    3531uses
    36   UCore, UFormMain, ULanguages;
     32  Core, Languages;
    3733
    3834{ TFormOptions }
     
    4137begin
    4238  if ComboBoxLanguage.ItemIndex <> -1 then
    43     Core.CoolTranslator1.Language := TLanguage(ComboBoxLanguage.Items.Objects[ComboBoxLanguage.ItemIndex]);
    44   Core.ReopenLastOpenedFile := CheckBoxReopenProject.Checked;
     39    Core.Core.Translator1.Language := TLanguage(ComboBoxLanguage.Items.Objects[ComboBoxLanguage.ItemIndex]);
     40  Core.Core.ReopenLastOpenedFile := CheckBoxReopenProject.Checked;
    4541end;
    4642
    4743procedure TFormOptions.FormShow(Sender: TObject);
    4844begin
    49   Core.CoolTranslator1.LanguageListToStrings(ComboBoxLanguage.Items);
    50   ComboBoxLanguage.ItemIndex := ComboBoxLanguage.Items.IndexOfObject(Core.CoolTranslator1.Language);
     45  Core.Core.Translator1.LanguageListToStrings(ComboBoxLanguage.Items);
     46  ComboBoxLanguage.ItemIndex := ComboBoxLanguage.Items.IndexOfObject(Core.Core.Translator1.Language);
    5147  if ComboBoxLanguage.ItemIndex = -1 then ComboBoxLanguage.ItemIndex := 0;
    52   CheckBoxReopenProject.Checked := Core.ReopenLastOpenedFile;
     48  CheckBoxReopenProject.Checked := Core.Core.ReopenLastOpenedFile;
    5349end;
    5450
  • trunk/IDE/Forms/FormProject.lfm

    r74 r75  
    11object FormProject: TFormProject
    22  Left = 507
    3   Height = 253
     3  Height = 380
    44  Top = 197
    5   Width = 331
     5  Width = 496
    66  Caption = 'Project manager'
    7   ClientHeight = 253
    8   ClientWidth = 331
    9   LCLVersion = '1.1'
     7  ClientHeight = 380
     8  ClientWidth = 496
     9  DesignTimePPI = 144
     10  LCLVersion = '3.2.0.0'
    1011  object TreeViewProject: TTreeView
    1112    Left = 0
    12     Height = 253
     13    Height = 380
    1314    Top = 0
    14     Width = 331
     15    Width = 496
    1516    Align = alClient
    16     DefaultItemHeight = 16
    1717    PopupMenu = PopupMenuFile
    1818    ReadOnly = True
     
    2424  object PopupMenuFile: TPopupMenu
    2525    Images = FormMain.ImageList1
    26     left = 94
    27     top = 38
     26    Left = 141
     27    Top = 57
    2828    object MenuItem4: TMenuItem
    2929      Action = AShow
     
    4040  end
    4141  object ActionList1: TActionList
    42     left = 184
    43     top = 40
     42    Left = 276
     43    Top = 60
    4444    object AAdd: TAction
    4545      Caption = 'Add'
     
    6060  end
    6161  object OpenDialog1: TOpenDialog
    62     left = 94
    63     top = 98
     62    Left = 141
     63    Top = 147
    6464  end
    6565end
  • trunk/IDE/Forms/FormProject.pas

    r74 r75  
    1 unit UFormProject;
     1unit FormProject;
    22
    33interface
    44
    55uses
    6   Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, ComCtrls,
    7   Menus, ActnList, UProject;
     6  Classes, SysUtils, LazFileUtils, Forms, Controls, Graphics, Dialogs, ComCtrls,
     7  Menus, ActnList, Project;
    88
    99type
     10  TShowProjectEvent = procedure (ProjectFile: TProjectFile) of object;
    1011
    1112  { TFormProject }
     
    3132    procedure TreeViewProjectDblClick(Sender: TObject);
    3233  private
    33     procedure UpdateProjectFiles(Node: TTreeNode; Files: TProjectFileList);
     34    FOnShowProject: TShowProjectEvent;
     35    procedure UpdateProjectFiles(Node: TTreeNode; Files: TProjectFiles);
    3436  public
    3537    procedure UpdateProjectTree;
    3638    procedure UpdateInterface;
     39    property OnShowProject: TShowProjectEvent read FOnShowProject write FOnShowProject;
    3740  end;
    3841
    3942var
    4043  FormProject: TFormProject;
     44
    4145
    4246implementation
     
    4549
    4650uses
    47   UCore, UFormMain, UFormSourceCode, UFormTargetCode, UFormCodeTree;
     51  Core, FormMain, FormSourceCode, FormTargetCode, FormCodeTree;
    4852
    4953resourcestring
     
    5660  );
    5761begin
    58   with FormMain, FormSourceCode do
    5962  if Assigned(Node) then begin
    6063    if TProjectFile(Node.Data) is TProjectFile then begin
     
    107110begin
    108111  if Assigned(TreeViewProject.Selected) then
    109     Core.Project.Files.Remove(TreeViewProject.Selected.Data);
     112    Core.Core.Project.Files.Remove(TreeViewProject.Selected.Data);
    110113  UpdateProjectTree;
    111114end;
     
    126129begin
    127130  if Assigned(TreeViewProject.Selected) then begin
    128     FormMain.TabSheetSource.Show;
    129     FormSourceCode.ProjectFile := TProjectFile(TreeViewProject.Selected.Data);
     131    if Assigned(FOnShowProject) then
     132      FOnShowProject(TProjectFile(TreeViewProject.Selected.Data));
    130133  end;
    131134end;
     
    135138  NewNode: TTreeNode;
    136139begin
    137   with Core, TreeViewProject, Items do
     140  with Core.Core, TreeViewProject, Items do
    138141  try
    139142    BeginUpdate;
     
    147150      (TreeViewProject.TopItem.Count > 0) then
    148151      TreeViewProject.TopItem.Items[0].Selected := True
    149       else FormSourceCode.ProjectFile := nil;
     152      else begin
     153        if Assigned(FOnShowProject) then
     154          FOnShowProject(nil);
     155      end;
    150156  finally
    151157    EndUpdate;
     
    158164end;
    159165
    160 procedure TFormProject.UpdateProjectFiles(Node: TTreeNode; Files: TProjectFileList);
     166procedure TFormProject.UpdateProjectFiles(Node: TTreeNode; Files: TProjectFiles);
    161167var
    162168  I: Integer;
  • trunk/IDE/Forms/FormProjectNew.pas

    r74 r75  
    1 unit UFormProjectNew;
    2 
    3 {$mode delphi}
     1unit FormProjectNew;
    42
    53interface
     
    2321    procedure ListView1SelectItem(Sender: TObject; Item: TListItem;
    2422      Selected: Boolean);
    25   private
    26     { private declarations }
    2723  public
    2824    procedure UpdateInterface;
    2925  end;
    30 
    31 var
    32   FormProjectNew: TFormProjectNew;
    3326
    3427
     
    3629
    3730uses
    38   UCore, UFormMain, UProject;
     31  Core, FormMain, Project;
    3932
    4033{$R *.lfm}
     
    7265    ListView1.BeginUpdate;
    7366    ListView1.Items.Clear;
    74     with Core do
     67    with Core.Core do
    7568    for I := 0 to ProjectTemplates.Count - 1 do
    7669    with TProjectTemplate(ProjectTemplates[I]) do
    77     if (not Assigned(Core.Project) and IsProject) or Assigned(Core.Project) then begin
     70    if (not Assigned(Core.Core.Project) and IsProject) or
     71    Assigned(Core.Core.Project) then begin
    7872      NewItem := ListView1.Items.Add;
    7973      NewItem.Caption := Name;
  • trunk/IDE/Forms/FormSourceCode.pas

    r74 r75  
    1 unit UFormSourceCode;
    2 
    3 {$mode objfpc}{$H+}
     1unit FormSourceCode;
    42
    53interface
     
    75uses
    86  Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs,
    9   SynEdit, SynHighlighterPas, UProject;
     7  SynEdit, SynHighlighterPas, Project;
    108
    119type
     
    2422    procedure Save;
    2523    procedure UpdateInterface;
     24    procedure SelectFile(FileName: string; Position: TPoint);
    2625  end;
    2726
    28 var
    29   FormSourceCode: TFormSourceCode;
    3027
    3128implementation
    3229
    3330uses
    34   UFormMain, UCore;
     31  FormMain, Core;
    3532
    3633{$R *.lfm}
     
    4138begin
    4239  Save;
    43   if Assigned(Core.Project) and Assigned(ProjectFile) then
     40  if Assigned(Core.Core.Project) and Assigned(ProjectFile) then
    4441    ProjectFile.Modified := True;
    4542end;
     
    6259procedure TFormSourceCode.UpdateInterface;
    6360begin
    64   SynEditSource.Enabled := Assigned(Core.Project);
    65   if not Assigned(Core.Project) then SynEditSource.ClearAll;
     61  SynEditSource.Enabled := Assigned(Core.Core.Project);
     62  if not Assigned(Core.Core.Project) then SynEditSource.ClearAll;
     63end;
     64
     65procedure TFormSourceCode.SelectFile(FileName: string; Position: TPoint);
     66var
     67  ProjectFile: TProjectFile;
     68begin
     69  with Core.Core do begin
     70    ProjectFile := Project.Files.SearchFile(FileName);
     71    if Assigned(ProjectFile) then
     72      SynEditSource.Lines.Assign(ProjectFile.Source)
     73      else if FileExists(FileName) then
     74        SynEditSource.Lines.LoadFromFile(FileName);
     75    SynEditSource.CaretXY := Position;
     76    TForm(SynEditSource.Owner).Show;
     77    SynEditSource.SetFocus;
     78  end;
    6679end;
    6780
  • trunk/IDE/Forms/FormTargetCode.lfm

    r74 r75  
    11object FormTargetCode: TFormTargetCode
    22  Left = 403
    3   Height = 303
     3  Height = 454
    44  Top = 186
    5   Width = 398
     5  Width = 597
    66  Caption = 'Target code'
    7   ClientHeight = 303
    8   ClientWidth = 398
    9   LCLVersion = '0.9.31'
     7  ClientHeight = 454
     8  ClientWidth = 597
     9  DesignTimePPI = 144
     10  LCLVersion = '3.2.0.0'
    1011  inline SynEdit1: TSynEdit
    1112    Left = 0
    12     Height = 303
     13    Height = 454
    1314    Top = 0
    14     Width = 398
     15    Width = 597
    1516    Align = alClient
    16     Font.Height = -13
     17    Font.Height = -20
    1718    Font.Name = 'Courier New'
    1819    Font.Pitch = fpFixed
     
    2122    ParentFont = False
    2223    TabOrder = 0
    23     Gutter.Width = 57
     24    Gutter.Width = 85
    2425    Gutter.MouseActions = <   
    2526      item
     
    527528        Command = emcMouseLink
    528529      end>
     530    MouseTextActions = <>
    529531    MouseSelActions = <   
    530532      item
     
    534536    VisibleSpecialChars = [vscSpace, vscTabAtLast]
    535537    ReadOnly = True
     538    SelectedColor.BackPriority = 50
     539    SelectedColor.ForePriority = 50
     540    SelectedColor.FramePriority = 50
     541    SelectedColor.BoldPriority = 50
     542    SelectedColor.ItalicPriority = 50
     543    SelectedColor.UnderlinePriority = 50
     544    SelectedColor.StrikeOutPriority = 50
    536545    BracketHighlightStyle = sbhsBoth
    537546    BracketMatchColor.Background = clNone
     
    547556    inline SynLeftGutterPartList1: TSynGutterPartList
    548557      object SynGutterMarks1: TSynGutterMarks
    549         Width = 24
     558        Width = 36
    550559        MouseActions = <>
    551560      end
    552561      object SynGutterLineNumber1: TSynGutterLineNumber
    553         Width = 17
     562        Width = 25
    554563        MouseActions = <>
    555564        MarkupInfo.Background = clBtnFace
     
    561570      end
    562571      object SynGutterChanges1: TSynGutterChanges
    563         Width = 4
     572        Width = 6
    564573        MouseActions = <>
    565574        ModifiedColor = 59900
     
    567576      end
    568577      object SynGutterSeparator1: TSynGutterSeparator
    569         Width = 2
     578        Width = 3
    570579        MouseActions = <>
     580        MarkupInfo.Background = clWhite
     581        MarkupInfo.Foreground = clGray
    571582      end
    572583      object SynGutterCodeFolding1: TSynGutterCodeFolding
     584        Width = 15
    573585        MouseActions = <       
    574586          item
     
    625637  object SynPasSyn1: TSynPasSyn
    626638    Enabled = False
    627     AsmAttri.FrameEdges = sfeAround
    628     CommentAttri.FrameEdges = sfeAround
    629     IDEDirectiveAttri.FrameEdges = sfeAround
    630     IdentifierAttri.FrameEdges = sfeAround
    631     KeyAttri.FrameEdges = sfeAround
    632     NumberAttri.FrameEdges = sfeAround
    633     SpaceAttri.FrameEdges = sfeAround
    634     StringAttri.FrameEdges = sfeAround
    635     SymbolAttri.FrameEdges = sfeAround
    636     CaseLabelAttri.FrameEdges = sfeAround
    637     DirectiveAttri.FrameEdges = sfeAround
    638639    CompilerMode = pcmDelphi
    639640    NestedComments = False
    640     left = 174
    641     top = 38
     641    TypeHelpers = True
     642    StringMultilineMode = []
     643    Left = 261
     644    Top = 57
    642645  end
    643646  object SynCppSyn1: TSynCppSyn
    644647    DefaultFilter = 'Soubory C++ (*.c,*.cpp,*.h,*.hpp,*.hh)|*.c;*.cpp;*.h;*.hpp;*.hh'
    645648    Enabled = False
    646     AsmAttri.FrameEdges = sfeAround
    647     CommentAttri.FrameEdges = sfeAround
    648     DirecAttri.FrameEdges = sfeAround
    649     IdentifierAttri.FrameEdges = sfeAround
    650     InvalidAttri.FrameEdges = sfeAround
    651     KeyAttri.FrameEdges = sfeAround
    652     NumberAttri.FrameEdges = sfeAround
    653     SpaceAttri.FrameEdges = sfeAround
    654     StringAttri.FrameEdges = sfeAround
    655     SymbolAttri.FrameEdges = sfeAround
    656     left = 176
    657     top = 85
     649    Left = 264
     650    Top = 128
    658651  end
    659652  object SynXMLSyn1: TSynXMLSyn
    660653    DefaultFilter = 'XML Dokument (*.xml,*.xsd,*.xsl,*.xslt,*.dtd)|*.xml;*.xsd;*.xsl;*.xslt;*.dtd'
    661654    Enabled = False
    662     ElementAttri.FrameEdges = sfeAround
    663     AttributeAttri.FrameEdges = sfeAround
    664     NamespaceAttributeAttri.FrameEdges = sfeAround
    665     AttributeValueAttri.FrameEdges = sfeAround
    666     NamespaceAttributeValueAttri.FrameEdges = sfeAround
    667     TextAttri.FrameEdges = sfeAround
    668     CDATAAttri.FrameEdges = sfeAround
    669     EntityRefAttri.FrameEdges = sfeAround
    670     ProcessingInstructionAttri.FrameEdges = sfeAround
    671     CommentAttri.FrameEdges = sfeAround
    672     DocTypeAttri.FrameEdges = sfeAround
    673     SpaceAttri.FrameEdges = sfeAround
    674     SymbolAttri.FrameEdges = sfeAround
    675655    WantBracesParsed = False
    676     left = 178
    677     top = 133
     656    Left = 267
     657    Top = 200
    678658  end
    679659end
  • trunk/IDE/Forms/FormTargetCode.pas

    r74 r75  
    1 unit UFormTargetCode;
    2 
    3 {$mode Delphi}{$H+}
     1unit FormTargetCode;
    42
    53interface
     
    86  Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, SynEdit,
    97  SynHighlighterMulti, SynHighlighterVB, SynHighlighterPas, SynHighlighterCpp,
    10   SynHighlighterXML, UProject;
     8  SynHighlighterXML, Project;
    119
    1210type
     
    2725  end;
    2826
    29 var
    30   FormTargetCode: TFormTargetCode;
    3127
    3228implementation
     
    3531
    3632uses
    37   UCore;
     33  Core;
    3834
    3935procedure TFormTargetCode.SetProjectFile(AValue: TProjectFile);
     
    4844procedure TFormTargetCode.UpdateInterface;
    4945begin
    50   SynEdit1.Enabled := Assigned(Core.Project);
    51   if not Assigned(Core.Project) then SynEdit1.ClearAll;
     46  SynEdit1.Enabled := Assigned(Core.Core.Project);
     47  if not Assigned(Core.Core.Project) then SynEdit1.ClearAll;
    5248end;
    53 
    5449
    5550end.
  • trunk/IDE/Forms/FormTargetOptions.pas

    r74 r75  
    1 unit UFormTargetOptions;
    2 
    3 {$mode delphi}
     1unit FormTargetOptions;
    42
    53interface
     
    75uses
    86  Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls,
    9   UTarget;
     7  Target;
    108
    119type
     
    3432  end;
    3533
    36 var
    37   FormTargetOptions: TFormTargetOptions;
    3834
    3935implementation
  • trunk/IDE/Forms/FormTargetProject.pas

    r74 r75  
    1 unit UFormTargetProject;
    2 
    3 {$mode delphi}
     1unit FormTargetProject;
    42
    53interface
    64
    75uses
    8   Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, ComCtrls,
    9   UProject;
     6  Classes, SysUtils, LazFileUtils, Forms, Controls, Graphics, Dialogs, ComCtrls,
     7  Project;
    108
    119type
     10  TShowTargetCodeEvent = procedure(ProjectFile: TProjectFile) of object;
    1211
    1312  { TFormTargetProject }
     
    1716    procedure TreeViewProjectChange(Sender: TObject; Node: TTreeNode);
    1817  private
    19     procedure UpdateProjectFiles(Node: TTreeNode; Files: TProjectFileList);
     18    FOnShowTargetCode: TShowTargetCodeEvent;
     19    procedure UpdateProjectFiles(Node: TTreeNode; Files: TProjectFiles);
    2020    procedure UpdateProjectTree;
    2121  public
    2222    procedure UpdateInterface;
     23    property OnShowTargetCode: TShowTargetCodeEvent read FOnShowTargetCode
     24      write FOnShowTargetCode;
    2325  end;
    24 
    25 var
    26   FormTargetProject: TFormTargetProject;
    2726
    2827
     
    3231
    3332uses
    34   UCore, UFormMain, UFormTargetCode;
     33  Core, FormMain, FormTargetCode;
    3534
    3635procedure TFormTargetProject.UpdateProjectTree;
     
    3837  NewNode: TTreeNode;
    3938begin
    40   with Core, FormMain, TreeViewProject, Items do begin
     39  with Core.Core, FormMain.FormMain, TreeViewProject, Items do begin
    4140    BeginUpdate;
    4241    Clear;
     
    5049      (TreeViewProject.TopItem.Count > 0) then
    5150      TreeViewProject.TopItem.Items[0].Selected := True
    52       else FormTargetCode.ProjectFile := nil;
     51      else begin
     52        if Assigned(FOnShowTargetCode) then
     53          FOnShowTargetCode(nil);
     54      end;
    5355  end;
    5456end;
     
    6264  Node: TTreeNode);
    6365begin
    64   with FormMain, FormTargetCode do
     66  with FormMain.FormMain do
    6567  if Assigned(Node) then begin
    6668    if TProjectFile(Node.Data) is TProjectFile then begin
    67       ProjectFile := TProjectFile(Node.Data);
    68       FormMain.TabSheetTarget.Show;
    69       SynEdit1.Lines.Assign(TProjectFile(Node.Data).Source);
     69      if Assigned(FOnShowTargetCode) then
     70        FOnShowTargetCode(TProjectFile(Node.Data))
    7071    end;
    7172  end;
    7273end;
    7374
    74 procedure TFormTargetProject.UpdateProjectFiles(Node: TTreeNode; Files: TProjectFileList);
     75procedure TFormTargetProject.UpdateProjectFiles(Node: TTreeNode; Files: TProjectFiles);
    7576var
    7677  I: Integer;
  • trunk/IDE/Forms/FormTargets.lfm

    r74 r75  
    11object FormTargets: TFormTargets
    22  Left = 292
    3   Height = 343
     3  Height = 514
    44  Top = 138
    5   Width = 522
     5  Width = 783
    66  Caption = 'Targets'
    7   ClientHeight = 343
    8   ClientWidth = 522
     7  ClientHeight = 514
     8  ClientWidth = 783
     9  DesignTimePPI = 144
    910  OnShow = FormShow
    10   LCLVersion = '1.1'
     11  LCLVersion = '3.2.0.0'
    1112  object ListView1: TListView
    12     Left = 8
    13     Height = 327
    14     Top = 8
    15     Width = 508
     13    Left = 12
     14    Height = 490
     15    Top = 12
     16    Width = 762
    1617    Anchors = [akTop, akLeft, akRight, akBottom]
    1718    Columns = <   
    1819      item
    1920        Caption = 'Name'
    20         Width = 80
     21        Width = 120
    2122      end   
    2223      item
    2324        Caption = 'Compiler path'
    24         Width = 200
     25        Width = 300
    2526      end   
    2627      item
    2728        Caption = 'Executor path'
    28         Width = 200
     29        Width = 327
    2930      end>
    3031    OwnerData = True
     
    3940  object PopupMenu1: TPopupMenu
    4041    Images = FormMain.ImageList1
    41     left = 124
    42     top = 69
     42    Left = 186
     43    Top = 104
    4344  end
    4445  object ActionList1: TActionList
    45     left = 200
    46     top = 72
     46    Left = 300
     47    Top = 108
    4748    object ATargetOptions: TAction
    4849      Caption = 'Options'
  • trunk/IDE/Forms/FormTargets.pas

    r74 r75  
    1 unit UFormTargets;
    2 
    3 {$mode objfpc}{$H+}
     1unit FormTargets;
    42
    53interface
     
    2725  end;
    2826
    29 var
    30   FormTargets: TFormTargets;
    3127
    3228implementation
     
    3531
    3632uses
    37   UCore, UFormMain, UCompiler, UProducer, UTarget,
    38   UFormTargetOptions;
     33  Core, FormMain, Compiler, Producer, Target, FormTargetOptions;
    3934
    4035resourcestring
     
    5045
    5146procedure TFormTargets.ATargetOptionsExecute(Sender: TObject);
     47var
     48  FormTargetOptions: TFormTargetOptions;
    5249begin
    5350  if Assigned(ListView1.Selected) then begin
     51    FormTargetOptions := TFormTargetOptions.Create(nil);
    5452    FormTargetOptions.LoadControls(TTarget(ListView1.Selected.Data));
    5553    if FormTargetOptions.ShowModal = mrOk then begin
     
    5755      ReloadList;
    5856    end;
     57    FormTargetOptions.Free;
    5958  end;
    6059end;
     
    6261procedure TFormTargets.ListView1Data(Sender: TObject; Item: TListItem);
    6362begin
    64   if (Item.Index >= 0) and (Item.Index < Core.Compiler.Targets.Count) then
    65   with TTarget(Core.Compiler.Targets[Item.Index]) do begin
     63  if (Item.Index >= 0) and (Item.Index < Core.Core.Compiler.Targets.Count) then
     64  with TTarget(Core.Core.Compiler.Targets[Item.Index]) do begin
    6665    Item.Caption := Name;
    67     Item.Data := Core.Compiler.Targets[Item.Index];
     66    Item.Data := Core.Core.Compiler.Targets[Item.Index];
    6867    //Item.SubItems.Add(Producer.CompilerPath);
    6968  end;
     
    7271procedure TFormTargets.ReloadList;
    7372begin
    74   ListView1.Items.Count := Core.Compiler.Targets.Count;
     73  ListView1.Items.Count := Core.Core.Compiler.Targets.Count;
    7574  ListView1.Refresh;
    7675end;
  • trunk/IDE/Languages/Transpascal.cs.po

    r74 r75  
    1010"Content-Transfer-Encoding: 8bit\n"
    1111
    12 #: taboutform.caption
    13 msgctxt "taboutform.caption"
    14 msgid "About"
    15 msgstr "O programu"
    16 
    17 #: taboutform.okbutton.caption
    18 msgctxt "taboutform.okbutton.caption"
    19 msgid "OK"
    20 msgstr "OK"
    21 
    22 #: tcodeform.caption
    23 msgctxt "tcodeform.caption"
    24 msgid "Source code"
    25 msgstr "Zdrojový kód"
    26 
    27 #: tcompiledform.caption
    28 msgid "Compiled code"
    29 msgstr "Přeložený zdroj"
    30 
    31 #: tcompilersettingsform.button1.caption
    32 msgctxt "tcompilersettingsform.button1.caption"
    33 msgid "Browse"
    34 msgstr "Procházet..."
    35 
    36 #: tcompilersettingsform.buttoncancel.caption
    37 msgctxt "tcompilersettingsform.buttoncancel.caption"
    38 msgid "Cancel"
    39 msgstr "Zrušit"
    40 
    41 #: tcompilersettingsform.buttonok.caption
    42 msgctxt "tcompilersettingsform.buttonok.caption"
    43 msgid "Ok"
    44 msgstr "Ok"
    45 
    46 #: tcompilersettingsform.caption
    47 msgctxt "tcompilersettingsform.caption"
     12#: formmain.sbuildfinished
     13#, object-pascal-format
     14msgctxt "formmain.sbuildfinished"
     15msgid "Build finished in %s seconds"
     16msgstr ""
     17
     18#: formproject.senternewfilename
     19#, fuzzy
     20msgctxt "formproject.senternewfilename"
     21msgid "Enter new file name"
     22msgstr "Zadejte nové jméno souboru"
     23
     24#: formproject.srenamesourcefile
     25#, fuzzy
     26msgctxt "formproject.srenamesourcefile"
     27msgid "Rename source file"
     28msgstr "Přejmenování zdrojového souboru"
     29
     30#: formtargets.scompileroptions
     31#, fuzzy
     32msgctxt "formtargets.scompileroptions"
    4833msgid "Compiler options"
    49 msgstr "Volbny překladače"
    50 
    51 #: tcompilersettingsform.label1.caption
    52 msgctxt "tcompilersettingsform.label1.caption"
    53 msgid "Compiler path:"
    54 msgstr "Cesta překladače:"
    55 
    56 #: tformabout.caption
    57 msgctxt "tformabout.caption"
    58 msgid "About"
    59 msgstr "O programu"
    60 
    61 #: tformabout.okbutton.caption
    62 msgctxt "tformabout.okbutton.caption"
    63 msgid "OK"
    64 msgstr "OK"
    65 
    66 #: tformcodetree.caption
    67 msgctxt "tformcodetree.caption"
    68 msgid "Code tree"
    69 msgstr "Strom kódu"
    70 
    71 #: tformcompilers.caption
    72 msgid "Compilers"
    73 msgstr "Překladače"
    74 
    75 #: tformcompilers.listview1.columns[0].caption
    76 msgctxt "tformcompilers.listview1.columns[0].caption"
    77 msgid "Name"
    78 msgstr "Jméno"
    79 
    80 #: tformcompilers.listview1.columns[1].caption
    81 msgctxt "tformcompilers.listview1.columns[1].caption"
    82 msgid "Execution path"
    83 msgstr "Cesta vykonání"
    84 
    85 #: tformcompilersettings.button1.caption
    86 msgctxt "tformcompilersettings.button1.caption"
    87 msgid "Browse"
    88 msgstr "Procházet..."
    89 
    90 #: tformcompilersettings.buttoncancel.caption
    91 msgctxt "tformcompilersettings.buttoncancel.caption"
    92 msgid "Cancel"
    93 msgstr "Zrušit"
    94 
    95 #: tformcompilersettings.buttonok.caption
    96 msgctxt "tformcompilersettings.buttonok.caption"
    97 msgid "Ok"
    98 msgstr "Ok"
    99 
    100 #: tformcompilersettings.caption
    101 msgctxt "tformcompilersettings.caption"
    102 msgid "Compiler options"
    103 msgstr "Volbny překladače"
    104 
    105 #: tformcompilersettings.label1.caption
    106 msgctxt "tformcompilersettings.label1.caption"
    107 msgid "Compiler path:"
    108 msgstr "Cesta překladače:"
    109 
    110 #: tformexternalproduceroutput.caption
    111 msgctxt "tformexternalproduceroutput.caption"
    112 msgid "External producer"
    113 msgstr "Vnější generátor"
     34msgstr "Volby překladače"
     35
     36#: formtargets.scompilerpath
     37#, fuzzy
     38msgctxt "formtargets.scompilerpath"
     39msgid "Compiler path"
     40msgstr "Cesta překladače"
     41
     42#: project.snewproject
     43#, fuzzy
     44msgctxt "project.snewproject"
     45msgid "New project"
     46msgstr "Nový projekt"
     47
     48#: projecttemplates.sconsoleapplication
     49#, fuzzy
     50msgctxt "projecttemplates.sconsoleapplication"
     51msgid "Console application"
     52msgstr "Konzolová aplikace"
     53
     54#: projecttemplates.sguiapplication
     55#, fuzzy
     56msgctxt "projecttemplates.sguiapplication"
     57msgid "GUI application"
     58msgstr "GUI aplikace"
     59
     60#: projecttemplates.spackage
     61#, fuzzy
     62msgctxt "projecttemplates.spackage"
     63msgid "Package"
     64msgstr "Balíček"
     65
     66#: projecttemplates.sunit
     67#, fuzzy
     68msgctxt "projecttemplates.sunit"
     69msgid "Unit"
     70msgstr "Jednotka"
    11471
    11572#: tformmain.aabout.caption
     
    149106
    150107#: tformmain.aprojectnew.caption
    151 #| msgid "New"
    152108msgctxt "tformmain.aprojectnew.caption"
    153109msgid "New..."
     
    339295msgstr "Cílový projekt"
    340296
    341 #: tformmessages.caption
    342 msgctxt "tformmessages.caption"
    343 msgid "Messages"
    344 msgstr "Zprávy"
    345 
    346 #: tformmessages.listview1.columns[0].caption
    347 msgctxt "tformmessages.listview1.columns[0].caption"
    348 msgid "File"
    349 msgstr "Soubor"
    350 
    351 #: tformmessages.listview1.columns[1].caption
    352 msgctxt "tformmessages.listview1.columns[1].caption"
    353 msgid "Position"
    354 msgstr "Pozice"
    355 
    356 #: tformmessages.listview1.columns[2].caption
    357 msgctxt "tformmessages.listview1.columns[2].caption"
    358 msgid "Message"
    359 msgstr "Zpráva"
    360 
    361 #: tformoptions.buttoncancel.caption
    362 msgctxt "tformoptions.buttoncancel.caption"
    363 msgid "Cancel"
    364 msgstr "Zrušit"
    365 
    366 #: tformoptions.buttonok.caption
    367 msgctxt "tformoptions.buttonok.caption"
    368 msgid "Ok"
    369 msgstr "Ok"
    370 
    371 #: tformoptions.caption
    372 msgctxt "tformoptions.caption"
    373 msgid "Options"
    374 msgstr "Volby"
    375 
    376 #: tformoptions.checkboxreopenproject.caption
    377 msgid "Reopen last opened project"
    378 msgstr "Znovuotevřít  naposledy otevřený projekt"
    379 
    380 #: tformoptions.label3.caption
    381 msgid "Interface language:"
    382 msgstr "Jazyk rozhraní:"
    383 
    384 #: tformproducers.caption
    385 msgctxt "tformproducers.caption"
    386 msgid "Producers"
    387 msgstr "Tvůrci"
    388 
    389 #: tformproducers.listview1.columns[0].caption
    390 msgctxt "tformproducers.listview1.columns[0].caption"
    391 msgid "Name"
    392 msgstr "Jméno"
    393 
    394 #: tformproducers.listview1.columns[1].caption
    395 msgctxt "tformproducers.listview1.columns[1].caption"
    396 msgid "Execution path"
    397 msgstr "Cesta vykonání"
    398 
    399297#: tformproject.aadd.caption
    400298msgid "Add"
    401 msgstr "Přidat"
     299msgstr ""
    402300
    403301#: tformproject.adelete.caption
    404302msgid "Delete"
    405 msgstr "Smazat"
     303msgstr ""
    406304
    407305#: tformproject.arename.caption
    408306msgid "Rename"
    409 msgstr "Přejmenovat"
     307msgstr ""
    410308
    411309#: tformproject.ashow.caption
    412310msgid "Show"
    413 msgstr "Ukázat"
     311msgstr ""
    414312
    415313#: tformproject.caption
     314#, fuzzy
    416315msgctxt "tformproject.caption"
    417316msgid "Project manager"
    418317msgstr "Správce projektu"
    419318
    420 #: tformprojectnew.buttoncancel.caption
    421 msgctxt "tformprojectnew.buttoncancel.caption"
    422 msgid "Cancel"
    423 msgstr "Zrušit"
    424 
    425 #: tformprojectnew.buttonok.caption
    426 msgctxt "tformprojectnew.buttonok.caption"
    427 msgid "Ok"
    428 msgstr "Ok"
    429 
    430 #: tformprojectnew.caption
    431 msgid "New item"
    432 msgstr "Nová položka"
    433 
    434 #: tformsourcecode.caption
    435 msgctxt "tformsourcecode.caption"
    436 msgid "Source code"
    437 msgstr "Zdrojový kód"
    438 
    439319#: tformtargetcode.caption
     320#, fuzzy
    440321msgctxt "tformtargetcode.caption"
    441322msgid "Target code"
    442323msgstr "Cílový kód"
    443324
    444 #: tformtargetoptions.button1.caption
    445 msgctxt "tformtargetoptions.button1.caption"
    446 msgid "Ok"
    447 msgstr "Ok"
    448 
    449 #: tformtargetoptions.button2.caption
    450 msgctxt "tformtargetoptions.button2.caption"
    451 msgid "Cancel"
    452 msgstr "Zrušit"
    453 
    454 #: tformtargetoptions.buttonexecutorselect.caption
    455 msgctxt "tformtargetoptions.buttonexecutorselect.caption"
    456 msgid "Select..."
    457 msgstr "Výběr..."
    458 
    459 #: tformtargetoptions.buttonproducerselect.caption
    460 msgctxt "tformtargetoptions.buttonproducerselect.caption"
    461 msgid "Select..."
    462 msgstr "Výběr..."
    463 
    464 #: tformtargetoptions.caption
    465 msgctxt "tformtargetoptions.caption"
    466 msgid "Target options"
    467 msgstr "Volby cíle"
    468 
    469 #: tformtargetoptions.label1.caption
    470 msgid "Name:"
    471 msgstr "Jméno:"
    472 
    473 #: tformtargetoptions.label2.caption
    474 msgctxt "tformtargetoptions.label2.caption"
    475 msgid "Compiler path:"
    476 msgstr "Cesta překladače:"
    477 
    478 #: tformtargetoptions.label3.caption
    479 msgid "Executor path:"
    480 msgstr "Cesta vykonávače:"
    481 
    482 #: tformtargetoptions.labelname.caption
    483 msgid "    "
    484 msgstr "   "
    485 
    486 #: tformtargetproject.caption
    487 msgid "FormTargetProject"
    488 msgstr ""
    489 
    490325#: tformtargets.atargetoptions.caption
     326#, fuzzy
    491327msgctxt "tformtargets.atargetoptions.caption"
    492328msgid "Options"
     
    494330
    495331#: tformtargets.atargetoptions.hint
    496 msgctxt "tformtargets.atargetoptions.hint"
    497332msgid "Target options"
    498 msgstr "Volby cíle"
     333msgstr ""
    499334
    500335#: tformtargets.caption
     336#, fuzzy
    501337msgctxt "tformtargets.caption"
    502338msgid "Targets"
     
    504340
    505341#: tformtargets.listview1.columns[0].caption
    506 msgctxt "tformtargets.listview1.columns[0].caption"
    507342msgid "Name"
    508 msgstr "Jméno"
     343msgstr ""
    509344
    510345#: tformtargets.listview1.columns[1].caption
    511 #| msgid "Execution path"
     346#, fuzzy
    512347msgctxt "tformtargets.listview1.columns[1].caption"
    513348msgid "Compiler path"
     
    516351#: tformtargets.listview1.columns[2].caption
    517352msgid "Executor path"
    518 msgstr "Cesta vykonávače"
    519 
    520 #: tmainform.aabout.caption
    521 msgctxt "tmainform.aabout.caption"
    522 msgid "About..."
    523 msgstr "O aplikaci..."
    524 
    525 #: tmainform.abuild.caption
    526 msgctxt "tmainform.abuild.caption"
    527 msgid "Build"
    528 msgstr "Sestavit"
    529 
    530 #: tmainform.aexit.caption
    531 msgctxt "tmainform.aexit.caption"
    532 msgid "Exit"
    533 msgstr "Ukončit"
    534 
    535 #: tmainform.ahomepage.caption
    536 msgctxt "tmainform.ahomepage.caption"
    537 msgid "Homepage"
    538 msgstr "Domovská stránka"
    539 
    540 #: tmainform.apause.caption
    541 msgctxt "tmainform.apause.caption"
    542 msgid "Pause"
    543 msgstr "Pozastavit"
    544 
    545 #: tmainform.aprojectclose.caption
    546 msgctxt "tmainform.aprojectclose.caption"
    547 msgid "Close"
    548 msgstr "Zavřít"
    549 
    550 #: tmainform.aprojectnew.caption
    551 msgctxt "tmainform.aprojectnew.caption"
    552 msgid "New"
    553 msgstr "Nový"
    554 
    555 #: tmainform.aprojectnew.hint
    556 msgctxt "tmainform.aprojectnew.hint"
    557 msgid "Create new project"
    558 msgstr "Vytvořit nový projekt"
    559 
    560 #: tmainform.aprojectopen.caption
    561 msgctxt "tmainform.aprojectopen.caption"
    562 msgid "Open..."
    563 msgstr "Otevřít..."
    564 
    565 #: tmainform.aprojectopen.hint
    566 msgctxt "tmainform.aprojectopen.hint"
    567 msgid "Open project"
    568 msgstr "Otevřít projekt"
    569 
    570 #: tmainform.aprojectsave.caption
    571 msgctxt "tmainform.aprojectsave.caption"
    572 msgid "Save"
    573 msgstr "Uložit"
    574 
    575 #: tmainform.aprojectsave.hint
    576 msgctxt "tmainform.aprojectsave.hint"
    577 msgid "Save project to disk"
    578 msgstr "Uložit projekt na disk"
    579 
    580 #: tmainform.aprojectsaveas.caption
    581 msgctxt "tmainform.aprojectsaveas.caption"
    582 msgid "Save as..."
    583 msgstr "Uložit jako..."
    584 
    585 #: tmainform.aprojectsaveas.hint
    586 msgctxt "tmainform.aprojectsaveas.hint"
    587 msgid "Save project with custom name"
    588 msgstr "Uložit projekt s vlastním jménem"
    589 
    590 #: tmainform.areset.caption
    591 msgctxt "tmainform.areset.caption"
    592 msgid "Reset"
    593 msgstr "Vynulovat"
    594 
    595 #: tmainform.arun.caption
    596 msgctxt "tmainform.arun.caption"
    597 msgid "Run"
    598 msgstr "Spustit"
    599 
    600 #: tmainform.aruntocursor.caption
    601 msgctxt "tmainform.aruntocursor.caption"
    602 msgid "Run to cursor"
    603 msgstr "Spustit po ukazatel"
    604 
    605 #: tmainform.astepin.caption
    606 msgctxt "tmainform.astepin.caption"
    607 msgid "Step in"
    608 msgstr "Vejít do"
    609 
    610 #: tmainform.astepout.caption
    611 msgctxt "tmainform.astepout.caption"
    612 msgid "Step out"
    613 msgstr "Vyjít ven"
    614 
    615 #: tmainform.astepover.caption
    616 msgctxt "tmainform.astepover.caption"
    617 msgid "Step over"
    618 msgstr "Přejít přes"
    619 
    620 #: tmainform.astop.caption
    621 msgctxt "tmainform.astop.caption"
    622 msgid "Stop"
    623 msgstr "Zastavit"
    624 
    625 #: tmainform.aviewcodetree.caption
    626 msgctxt "tmainform.aviewcodetree.caption"
    627 msgid "Code tree"
    628 msgstr "Strom kódu"
    629 
    630 #: tmainform.aviewcompiledsoruce.caption
    631 msgctxt "tmainform.aviewcompiledsoruce.caption"
    632 msgid "Compiled source"
    633 msgstr "Přeložený zdroj"
    634 
    635 #: tmainform.aviewmessages.caption
    636 msgctxt "tmainform.aviewmessages.caption"
    637 msgid "Messages"
    638 msgstr "Zprávy"
    639 
    640 #: tmainform.aviewobjectinspector.caption
    641 msgctxt "tmainform.aviewobjectinspector.caption"
    642 msgid "Object inspector"
    643 msgstr "Inspektor objektů"
    644 
    645 #: tmainform.aviewoptions.caption
    646 msgctxt "tmainform.aviewoptions.caption"
    647 msgid "Options"
    648 msgstr "Volby"
    649 
    650 #: tmainform.aviewproject.caption
    651 msgctxt "tmainform.aviewproject.caption"
    652 msgid "Project manager"
    653 msgstr "Správce projektu"
    654 
    655 #: tmainform.aviewsourceeditor.caption
    656 msgctxt "tmainform.aviewsourceeditor.caption"
    657 msgid "Source editor"
    658 msgstr "Zdrojový editor"
    659 
    660 #: tmainform.aviewtargets.caption
    661 msgctxt "tmainform.aviewtargets.caption"
    662 msgid "Targets"
    663 msgstr "Cíle"
    664 
    665 #: tmainform.caption
    666 msgctxt "tmainform.caption"
    667 msgid "Transpascal IDE"
    668 msgstr "Transpascal IDE"
    669 
    670 #: tmainform.menuitem1.caption
    671 msgctxt "tmainform.menuitem1.caption"
    672 msgid "Project"
    673 msgstr "Projekt"
    674 
    675 #: tmainform.menuitem12.caption
    676 msgctxt "tmainform.menuitem12.caption"
    677 msgid "-"
    678 msgstr "-"
    679 
    680 #: tmainform.menuitem15.caption
    681 msgctxt "tmainform.menuitem15.caption"
    682 msgid "View"
    683 msgstr "Zobrazit"
    684 
    685 #: tmainform.menuitem22.caption
    686 msgctxt "tmainform.menuitem22.caption"
    687 msgid "-"
    688 msgstr "-"
    689 
    690 #: tmainform.menuitem27.caption
    691 msgctxt "tmainform.menuitem27.caption"
    692 msgid "-"
    693 msgstr "-"
    694 
    695 #: tmainform.menuitem7.caption
    696 msgctxt "tmainform.menuitem7.caption"
    697 msgid "Run"
    698 msgstr "Spustit"
    699 
    700 #: tmainform.menuitem9.caption
    701 msgctxt "tmainform.menuitem9.caption"
    702 msgid "Help"
    703 msgstr "Nápověda"
    704 
    705 #: tmainform.menuitemopenrecent.caption
    706 msgctxt "tmainform.menuitemopenrecent.caption"
    707 msgid "Open recent"
    708 msgstr "Otevřít nedávné"
    709 
    710 #: tmainform.menuitemproducer.caption
    711 #| msgid "Producer"
    712 msgctxt "tmainform.menuitemproducer.caption"
    713 msgid "Target"
    714 msgstr "Cíl"
    715 
    716 #: tmainform.tabsheetbreakpoints.caption
    717 msgctxt "tmainform.tabsheetbreakpoints.caption"
    718 msgid "Breakpoints"
    719 msgstr "Body zastavení"
    720 
    721 #: tmainform.tabsheetcodetree.caption
    722 msgctxt "tmainform.tabsheetcodetree.caption"
    723 msgid "Code Tree"
    724 msgstr "Strom kódu"
    725 
    726 #: tmainform.tabsheetcompiledproject.caption
    727 msgctxt "tmainform.tabsheetcompiledproject.caption"
    728 msgid "Target project"
    729 msgstr "Cílový projekt"
    730 
    731 #: tmainform.tabsheetmessages.caption
    732 msgctxt "tmainform.tabsheetmessages.caption"
    733 msgid "Messages"
    734 msgstr "Zprávy"
    735 
    736 #: tmainform.tabsheetproject.caption
    737 msgctxt "tmainform.tabsheetproject.caption"
    738 msgid "Project"
    739 msgstr "Projekt"
    740 
    741 #: tmainform.tabsheetsource.caption
    742 msgctxt "tmainform.tabsheetsource.caption"
    743 msgid "Source code"
    744 msgstr "Zdrojový kód"
    745 
    746 #: tmainform.tabsheettarget.caption
    747 msgctxt "tmainform.tabsheettarget.caption"
    748 msgid "Target code"
    749 msgstr "Cílový kód"
    750 
    751 #: tmessagesform.caption
    752 msgctxt "tmessagesform.caption"
    753 msgid "Messages"
    754 msgstr "Zprávy"
    755 
    756 #: tmessagesform.listview1.columns[0].caption
    757 msgctxt "tmessagesform.listview1.columns[0].caption"
    758 msgid "File"
    759 msgstr "Soubor"
    760 
    761 #: tmessagesform.listview1.columns[1].caption
    762 msgctxt "tmessagesform.listview1.columns[1].caption"
    763 msgid "Position"
    764 msgstr "Pozice"
    765 
    766 #: tmessagesform.listview1.columns[2].caption
    767 msgctxt "tmessagesform.listview1.columns[2].caption"
    768 msgid "Message"
    769 msgstr "Zpráva"
    770 
    771 #: tprojectmanager.caption
    772 msgctxt "tprojectmanager.caption"
    773 msgid "Project manager"
    774 msgstr "Správce projektu"
    775 
    776 #: uaboutform.sapplicationname
    777 msgctxt "uaboutform.sapplicationname"
    778 msgid "Application name"
    779 msgstr "Jméno aplikace"
    780 
    781 #: uaboutform.semail
    782 msgctxt "uaboutform.semail"
    783 msgid "E-mail"
    784 msgstr "E-mail"
    785 
    786 #: uaboutform.smanufacturer
    787 msgctxt "uaboutform.smanufacturer"
    788 msgid "Company"
    789 msgstr "Společnost"
    790 
    791 #: uaboutform.sreleasedate
    792 msgctxt "uaboutform.sreleasedate"
    793 msgid "Release date"
    794 msgstr "Datum uvolnění"
    795 
    796 #: uaboutform.sversion
    797 msgctxt "uaboutform.sversion"
    798 msgid "Version"
    799 msgstr "Verze"
    800 
    801 #: ucompilersform.scompileroptions
    802 msgctxt "ucompilersform.scompileroptions"
    803 msgid "Compiler options"
    804 msgstr "Volby překladače"
    805 
    806 #: ucompilersform.scompilerpath
    807 msgctxt "ucompilersform.scompilerpath"
    808 msgid "Compiler path"
    809 msgstr "Cesta překladače"
    810 
    811 #: uformabout.sapplicationname
    812 msgctxt "uformabout.sapplicationname"
    813 msgid "Application name"
    814 msgstr "Jméno aplikace"
    815 
    816 #: uformabout.semail
    817 msgctxt "uformabout.semail"
    818 msgid "E-mail"
    819 msgstr "E-mail"
    820 
    821 #: uformabout.smanufacturer
    822 msgctxt "uformabout.smanufacturer"
    823 msgid "Company"
    824 msgstr "Společnost"
    825 
    826 #: uformabout.sreleasedate
    827 msgctxt "uformabout.sreleasedate"
    828 msgid "Release date"
    829 msgstr "Datum uvolnění"
    830 
    831 #: uformabout.sversion
    832 msgctxt "uformabout.sversion"
    833 msgid "Version"
    834 msgstr "Verze"
    835 
    836 #: uformmain.sbuildfinished
    837 msgid "Build finished in %s seconds"
    838 msgstr ""
    839 
    840 #: uformproject.senternewfilename
    841 msgid "Enter new file name"
    842 msgstr "Zadejte nové jméno souboru"
    843 
    844 #: uformproject.srenamesourcefile
    845 msgid "Rename source file"
    846 msgstr "Přejmenování zdrojového souboru"
    847 
    848 #: uformtargets.scompileroptions
    849 msgctxt "uformtargets.scompileroptions"
    850 msgid "Compiler options"
    851 msgstr "Volby překladače"
    852 
    853 #: uformtargets.scompilerpath
    854 msgctxt "uformtargets.scompilerpath"
    855 msgid "Compiler path"
    856 msgstr "Cesta překladače"
    857 
    858 #: umainform.snewproject
    859 msgctxt "umainform.snewproject"
    860 msgid "New project"
    861 msgstr "Nový projekt"
    862 
    863 #: uproject.snewproject
    864 msgctxt "uproject.snewproject"
    865 msgid "New project"
    866 msgstr "Nový projekt"
    867 
    868 #: uprojecttemplates.sconsoleapplication
    869 msgid "Console application"
    870 msgstr "Konzolová aplikace"
    871 
    872 #: uprojecttemplates.sguiapplication
    873 msgid "GUI application"
    874 msgstr "GUI aplikace"
    875 
    876 #: uprojecttemplates.spackage
    877 msgid "Package"
    878 msgstr "Balíček"
    879 
    880 #: uprojecttemplates.sunit
    881 msgid "Unit"
    882 msgstr "Jednotka"
    883 
     353msgstr ""
     354
  • trunk/IDE/Modules/Pascal/IDEModulePascal.pas

    r74 r75  
    1 unit UIDEModulePascal;
    2 
    3 {$mode delphi}
     1unit IDEModulePascal;
    42
    53interface
    64
    75uses
    8   Classes, SysUtils, UModularSystem;
     6  Classes, SysUtils, ModularSystem;
    97
    108type
     
    2321begin
    2422  inherited;
    25   Name := 'Pascal';
     23  Identification := 'Pascal';
    2624  Title := 'Pascal';
    2725  Version := '0.1';
  • trunk/IDE/Project.pas

    r74 r75  
    1 unit UProject;
    2 
    3 {$mode Delphi}{$H+}
     1unit Project;
    42
    53interface
     
    75uses
    86  Classes, SysUtils, Dialogs, DOM, XMLWrite, XMLRead, FileUtil,
    9   SpecializedList;
     7  Generics.Collections;
    108
    119const
     
    1917  end;
    2018
    21   { TProjectPackageList }
    22 
    23   TProjectPackageList = class(TListObject)
     19  { TProjectPackages }
     20
     21  TProjectPackages = class(TObjectList<TProjectPackage>)
    2422    Parent: TProject;
    2523    procedure Load;
     
    3331  end;
    3432
    35   TProjectBuildConfigList = class(TListObject)
     33  TProjectBuildConfigs = class(TObjectList<TProjectBuildConfig>)
    3634  end;
    3735
     
    5755  end;
    5856
    59   { TProjectFileList }
    60 
    61   TProjectFileList = class(TListObject)
     57  { TProjectFiles }
     58
     59  TProjectFiles = class(TObjectList<TProjectFile>)
    6260    Parent: TProject;
    63     procedure DumpFileList(Files: TListString);
    64     procedure LoadFromList(Files: TListString);
     61    procedure DumpFileList(Files: TStringList);
     62    procedure LoadFromList(Files: TStringList);
    6563    procedure Load;
    6664    procedure Save;
     
    7876  public
    7977    FileName: string;
    80     Files: TProjectFileList;
    81     Packages: TProjectPackageList;
    82     BuildConfigs: TProjectBuildConfigList;
     78    Files: TProjectFiles;
     79    Packages: TProjectPackages;
     80    BuildConfigs: TProjectBuildConfigs;
    8381    MainSource: TProjectFile;
    8482    procedure LoadFromFile(FileName: string);
     
    104102  end;
    105103
    106   { TProjectTemplateList }
    107 
    108   TProjectTemplateList = class(TListObject)
     104  { TProjectTemplates }
     105
     106  TProjectTemplates = class(TObjectList<TProjectTemplate>)
    109107    procedure AddTemplate(Template: TProjectTemplate);
    110108  end;
     
    113111  SNewProject = 'New project';
    114112
     113
    115114implementation
    116115
    117 { TProjectTemplateList }
    118 
    119 procedure TProjectTemplateList.AddTemplate(Template: TProjectTemplate);
     116{ TProjectTemplates }
     117
     118procedure TProjectTemplates.AddTemplate(Template: TProjectTemplate);
    120119begin
    121120  Add(Template);
     
    136135destructor TProjectTemplate.Destroy;
    137136begin
    138   Description.Free;
    139   inherited Destroy;
    140 end;
    141 
    142 { TProjectPackageList }
    143 
    144 procedure TProjectPackageList.Load;
    145 begin
    146 
    147 end;
    148 
    149 procedure TProjectPackageList.Save;
    150 begin
    151 
    152 end;
    153 
    154 procedure TProjectPackageList.SaveToXMLNode(Node: TDOMNode);
    155 begin
    156 
    157 end;
    158 
    159 procedure TProjectPackageList.LoadFromXMLNode(Node: TDOMNode);
    160 begin
    161 
     137  FreeAndNil(Description);
     138  inherited;
     139end;
     140
     141{ TProjectPackages }
     142
     143procedure TProjectPackages.Load;
     144begin
     145end;
     146
     147procedure TProjectPackages.Save;
     148begin
     149end;
     150
     151procedure TProjectPackages.SaveToXMLNode(Node: TDOMNode);
     152begin
     153end;
     154
     155procedure TProjectPackages.LoadFromXMLNode(Node: TDOMNode);
     156begin
    162157end;
    163158
    164159{ TProjectGroup }
    165160
    166 procedure TProjectFileList.DumpFileList(Files: TListString);
     161procedure TProjectFiles.DumpFileList(Files: TStringList);
    167162var
    168163  I: Integer;
     
    173168end;
    174169
    175 procedure TProjectFileList.LoadFromList(Files: TListString);
     170procedure TProjectFiles.LoadFromList(Files: TStringList);
    176171var
    177172  I: Integer;
     
    190185end;
    191186
    192 procedure TProjectFileList.Load;
     187procedure TProjectFiles.Load;
    193188var
    194189  I: Integer;
     
    198193end;
    199194
    200 procedure TProjectFileList.Save;
     195procedure TProjectFiles.Save;
    201196var
    202197  I: Integer;
     
    206201end;
    207202
    208 procedure TProjectFileList.SaveToXMLNode(Node: TDOMNode);
     203procedure TProjectFiles.SaveToXMLNode(Node: TDOMNode);
    209204var
    210205  I: Integer;
     
    219214end;
    220215
    221 procedure TProjectFileList.LoadFromXMLNode(Node: TDOMNode);
     216procedure TProjectFiles.LoadFromXMLNode(Node: TDOMNode);
    222217var
    223218  NewNode: TDomNode;
     
    236231end;
    237232
    238 function TProjectFileList.SearchFile(FileName: string): TProjectFile;
     233function TProjectFiles.SearchFile(FileName: string): TProjectFile;
    239234var
    240235  I: Integer;
     
    250245end;
    251246
    252 function TProjectFileList.AddFile(FileName: string): TProjectFile;
    253 begin
    254   Result := TProjectFile(AddNew(TProjectFile.Create));
     247function TProjectFiles.AddFile(FileName: string): TProjectFile;
     248begin
     249  Result := TProjectFile.Create;
    255250  Result.Parent := Parent;
    256251  Result.FileName := FileName;
     252  Add(Result);
    257253end;
    258254
     
    278274destructor TProjectFile.Destroy;
    279275begin
    280   Source.Free;
    281   inherited Destroy;
     276  FreeAndNil(Source);
     277  inherited;
    282278end;
    283279
     
    419415constructor TProject.Create;
    420416begin
    421   Files := TProjectFileList.Create;
     417  Files := TProjectFiles.Create;
    422418  Files.Parent := Self;
    423   Packages := TProjectPackageList.Create;
     419  Packages := TProjectPackages.Create;
    424420  Packages.Parent := Self;
    425421end;
     
    427423destructor TProject.Destroy;
    428424begin
    429   Files.Free;
    430   Packages.Free;
    431   BuildConfigs.Free;
    432   inherited Destroy;
     425  FreeAndNil(Files);
     426  FreeAndNil(Packages);
     427  FreeAndNil(BuildConfigs);
     428  inherited;
    433429end;
    434430
  • trunk/IDE/ProjectTemplates.pas

    r74 r75  
    1 unit UProjectTemplates;
    2 
    3 {$mode delphi}
     1unit ProjectTemplates;
    42
    53interface
    64
    75uses
    8   Classes, SysUtils, UProject;
     6  Classes, SysUtils, Project;
    97
    108type
  • trunk/IDE/TextSource.pas

    r74 r75  
    1 unit UTextSource;
    2 
    3 {$MODE Delphi}
     1unit TextSource;
    42
    53interface
  • trunk/IDE/Transpascal.lpi

    r74 r75  
    22<CONFIG>
    33  <ProjectOptions>
    4     <Version Value="10"/>
     4    <Version Value="12"/>
    55    <PathDelim Value="\"/>
    66    <General>
     7      <Flags>
     8        <CompatibilityMode Value="True"/>
     9      </Flags>
    710      <SessionStorage Value="InProjectDir"/>
    8       <MainUnit Value="0"/>
    911      <Title Value="Transpascal IDE"/>
    1012      <ResourceType Value="res"/>
     
    6870    <PublishOptions>
    6971      <Version Value="2"/>
    70       <IgnoreBinaries Value="False"/>
    71       <IncludeFileFilter Value="*.(pas|pp|inc|lfm|lpr|lrs|lpi|lpk|sh|xml)"/>
    72       <ExcludeFileFilter Value="*.(bak|ppu|ppw|o|so);*~;backup"/>
    7372    </PublishOptions>
    7473    <RunParams>
    75       <local>
    76         <FormatVersion Value="1"/>
    77       </local>
     74      <FormatVersion Value="2"/>
     75      <Modes Count="1">
     76        <Mode0 Name="default"/>
     77      </Modes>
    7878    </RunParams>
    79     <RequiredPackages Count="8">
     79    <RequiredPackages Count="6">
    8080      <Item1>
    8181        <PackageName Value="ModularSystem"/>
     
    8989      </Item2>
    9090      <Item3>
    91         <PackageName Value="CoolTranslator"/>
    92         <DefaultFilename Value="..\Packages\CoolTranslator\CoolTranslator.lpk" Prefer="True"/>
     91        <PackageName Value="LCLBase"/>
     92        <MinVersion Major="1" Release="1" Valid="True"/>
    9393      </Item3>
    9494      <Item4>
    95         <PackageName Value="LCLBase"/>
    96         <MinVersion Major="1" Release="1" Valid="True"/>
     95        <PackageName Value="TranspascalCompiler"/>
     96        <DefaultFilename Value="..\Compiler\TranspascalCompiler.lpk" Prefer="True"/>
    9797      </Item4>
    9898      <Item5>
    99         <PackageName Value="TemplateGenerics"/>
    100         <DefaultFilename Value="..\Packages\TemplateGenerics\TemplateGenerics.lpk" Prefer="True"/>
     99        <PackageName Value="SynEdit"/>
     100        <MinVersion Major="1" Valid="True"/>
    101101      </Item5>
    102102      <Item6>
    103         <PackageName Value="TranspascalCompiler"/>
    104         <DefaultFilename Value="..\Compiler\TranspascalCompiler.lpk" Prefer="True"/>
     103        <PackageName Value="LCL"/>
    105104      </Item6>
    106       <Item7>
    107         <PackageName Value="SynEdit"/>
    108         <MinVersion Major="1" Valid="True"/>
    109       </Item7>
    110       <Item8>
    111         <PackageName Value="LCL"/>
    112       </Item8>
    113105    </RequiredPackages>
    114     <Units Count="20">
     106    <Units Count="19">
    115107      <Unit0>
    116108        <Filename Value="Transpascal.lpr"/>
     
    118110      </Unit0>
    119111      <Unit1>
    120         <Filename Value="Forms\UFormMain.pas"/>
     112        <Filename Value="Forms\FormMain.pas"/>
    121113        <IsPartOfProject Value="True"/>
    122114        <ComponentName Value="FormMain"/>
     
    125117      </Unit1>
    126118      <Unit2>
    127         <Filename Value="UTextSource.pas"/>
     119        <Filename Value="TextSource.pas"/>
    128120        <IsPartOfProject Value="True"/>
    129121      </Unit2>
    130122      <Unit3>
    131         <Filename Value="UProject.pas"/>
     123        <Filename Value="Project.pas"/>
    132124        <IsPartOfProject Value="True"/>
    133125      </Unit3>
    134126      <Unit4>
    135         <Filename Value="Forms\UFormProject.pas"/>
     127        <Filename Value="Forms\FormProject.pas"/>
    136128        <IsPartOfProject Value="True"/>
    137129        <ComponentName Value="FormProject"/>
     
    140132      </Unit4>
    141133      <Unit5>
    142         <Filename Value="Forms\UFormSourceCode.pas"/>
     134        <Filename Value="Forms\FormSourceCode.pas"/>
    143135        <IsPartOfProject Value="True"/>
    144136        <ComponentName Value="FormSourceCode"/>
     
    147139      </Unit5>
    148140      <Unit6>
    149         <Filename Value="Forms\UFormMessages.pas"/>
     141        <Filename Value="Forms\FormMessages.pas"/>
    150142        <IsPartOfProject Value="True"/>
    151143        <ComponentName Value="FormMessages"/>
     
    154146      </Unit6>
    155147      <Unit7>
    156         <Filename Value="Forms\UFormTargetCode.pas"/>
     148        <Filename Value="Forms\FormTargetCode.pas"/>
    157149        <IsPartOfProject Value="True"/>
    158150        <ComponentName Value="FormTargetCode"/>
     
    161153      </Unit7>
    162154      <Unit8>
    163         <Filename Value="Forms\UFormCodeTree.pas"/>
     155        <Filename Value="Forms\FormCodeTree.pas"/>
    164156        <IsPartOfProject Value="True"/>
    165157        <ComponentName Value="FormCodeTree"/>
     
    168160      </Unit8>
    169161      <Unit9>
    170         <Filename Value="Forms\UFormAbout.pas"/>
    171         <IsPartOfProject Value="True"/>
    172         <ComponentName Value="FormAbout"/>
     162        <Filename Value="Forms\FormOptions.pas"/>
     163        <IsPartOfProject Value="True"/>
     164        <ComponentName Value="FormOptions"/>
    173165        <HasResources Value="True"/>
    174166        <ResourceBaseClass Value="Form"/>
    175167      </Unit9>
    176168      <Unit10>
    177         <Filename Value="Forms\UFormOptions.pas"/>
    178         <IsPartOfProject Value="True"/>
    179         <ComponentName Value="FormOptions"/>
     169        <Filename Value="Forms\FormTargets.pas"/>
     170        <IsPartOfProject Value="True"/>
     171        <ComponentName Value="FormTargets"/>
    180172        <HasResources Value="True"/>
    181173        <ResourceBaseClass Value="Form"/>
    182174      </Unit10>
    183175      <Unit11>
    184         <Filename Value="Forms\UFormTargets.pas"/>
    185         <IsPartOfProject Value="True"/>
    186         <ComponentName Value="FormTargets"/>
     176        <Filename Value="Forms\FormProjectNew.pas"/>
     177        <IsPartOfProject Value="True"/>
     178        <ComponentName Value="FormProjectNew"/>
    187179        <HasResources Value="True"/>
    188180        <ResourceBaseClass Value="Form"/>
    189181      </Unit11>
    190182      <Unit12>
    191         <Filename Value="Forms\UFormProjectNew.pas"/>
    192         <IsPartOfProject Value="True"/>
    193         <ComponentName Value="FormProjectNew"/>
    194         <HasResources Value="True"/>
    195         <ResourceBaseClass Value="Form"/>
     183        <Filename Value="ProjectTemplates.pas"/>
     184        <IsPartOfProject Value="True"/>
    196185      </Unit12>
    197186      <Unit13>
    198         <Filename Value="UProjectTemplates.pas"/>
    199         <IsPartOfProject Value="True"/>
     187        <Filename Value="Forms\FormTargetProject.pas"/>
     188        <IsPartOfProject Value="True"/>
     189        <ComponentName Value="FormTargetProject"/>
     190        <HasResources Value="True"/>
     191        <ResourceBaseClass Value="Form"/>
    200192      </Unit13>
    201193      <Unit14>
    202         <Filename Value="Forms\UFormTargetProject.pas"/>
    203         <IsPartOfProject Value="True"/>
    204         <ComponentName Value="FormTargetProject"/>
    205         <HasResources Value="True"/>
    206         <ResourceBaseClass Value="Form"/>
     194        <Filename Value="Core.pas"/>
     195        <IsPartOfProject Value="True"/>
     196        <ComponentName Value="Core"/>
     197        <HasResources Value="True"/>
     198        <ResourceBaseClass Value="DataModule"/>
    207199      </Unit14>
    208200      <Unit15>
    209         <Filename Value="UCore.pas"/>
    210         <IsPartOfProject Value="True"/>
    211         <ComponentName Value="Core"/>
    212         <HasResources Value="True"/>
    213         <ResourceBaseClass Value="DataModule"/>
     201        <Filename Value="Forms\FormTargetOptions.pas"/>
     202        <IsPartOfProject Value="True"/>
     203        <ComponentName Value="FormTargetOptions"/>
     204        <ResourceBaseClass Value="Form"/>
    214205      </Unit15>
    215206      <Unit16>
    216         <Filename Value="Forms\UFormTargetOptions.pas"/>
    217         <IsPartOfProject Value="True"/>
    218         <ComponentName Value="FormTargetOptions"/>
     207        <Filename Value="Forms\FormExternalProducerOutput.pas"/>
     208        <IsPartOfProject Value="True"/>
     209        <ComponentName Value="FormExternalProducerOutput"/>
    219210        <ResourceBaseClass Value="Form"/>
    220211      </Unit16>
    221212      <Unit17>
    222         <Filename Value="Forms\UFormExternalProducerOutput.pas"/>
    223         <IsPartOfProject Value="True"/>
    224         <ComponentName Value="FormExternalProducerOutput"/>
    225         <ResourceBaseClass Value="Form"/>
     213        <Filename Value="Notes.txt"/>
     214        <IsPartOfProject Value="True"/>
    226215      </Unit17>
    227216      <Unit18>
    228         <Filename Value="Notes.txt"/>
     217        <Filename Value="Modules\Pascal\IDEModulePascal.pas"/>
    229218        <IsPartOfProject Value="True"/>
    230219      </Unit18>
    231       <Unit19>
    232         <Filename Value="Modules\Pascal\UIDEModulePascal.pas"/>
    233         <IsPartOfProject Value="True"/>
    234       </Unit19>
    235220    </Units>
    236221  </ProjectOptions>
     
    266251    <Linking>
    267252      <Debugging>
     253        <DebugInfoType Value="dsDwarf3"/>
    268254        <UseHeaptrc Value="True"/>
    269255        <UseExternalDbgSyms Value="True"/>
  • trunk/IDE/Transpascal.lpr

    r74 r75  
    88  {$ENDIF}{$ENDIF}
    99  Forms, Interfaces, SysUtils,
    10   UFormMain {MainForm},
    11   UTextSource, UProject, TranspascalCompiler, UFormProject,
    12 UFormSourceCode, UFormMessages,
    13   UFormTargetCode, UFormCodeTree, TemplateGenerics, CoolTranslator, Common,
    14   UFormAbout, UFormOptions, UFormTargets,
    15 UFormProjectNew, UProjectTemplates, UFormTargetProject, UCore,
    16 UFormTargetOptions, UFormExternalProducerOutput, UIDEModulePascal;
     10  FormMain {MainForm},
     11  TextSource, Project, TranspascalCompiler, FormProject,
     12  FormSourceCode, FormMessages,
     13  FormTargetCode, FormCodeTree, Common,
     14  FormOptions, FormTargets,
     15  FormProjectNew, ProjectTemplates, FormTargetProject, Core,
     16  FormTargetOptions, FormExternalProducerOutput, IDEModulePascal;
    1717
    1818{$R *.res}
     
    2424
    2525begin
    26   Application.Title := 'Transpascal IDE';
     26  Application.Title:='Transpascal IDE';
    2727  {$IFDEF DEBUG}
    2828  // Heap trace
     
    3232
    3333  Application.Initialize;
    34   Application.CreateForm(TCore, Core);
    35   Application.CreateForm(TFormMain, FormMain);
    36   Application.CreateForm(TFormProject, FormProject);
    37   Application.CreateForm(TFormSourceCode, FormSourceCode);
    38   Application.CreateForm(TFormMessages, FormMessages);
    39   Application.CreateForm(TFormTargetCode, FormTargetCode);
    40   Application.CreateForm(TFormCodeTree, FormCodeTree);
    41   Application.CreateForm(TFormAbout, FormAbout);
    42   Application.CreateForm(TFormOptions, FormOptions);
    43   Application.CreateForm(TFormTargets, FormTargets);
    44   Application.CreateForm(TFormProjectNew, FormProjectNew);
    45   Application.CreateForm(TFormTargetProject, FormTargetProject);
    46   Application.CreateForm(TFormTargetOptions, FormTargetOptions);
    47   Application.CreateForm(TFormExternalProducerOutput, FormExternalProducerOutput
    48     );
     34  Application.CreateForm(TCore, Core.Core);
     35  Application.CreateForm(TFormMain, FormMain.FormMain);
    4936  Application.Run;
    5037end.
  • trunk/IDE/UProducerTreeView.pas

    r41 r75  
    11unit UProducerTreeView;
    22
    3 {$mode Delphi}{$H+}
    4 
    53interface
    64
    75uses
    8   Classes, SysUtils, USourceCode, ComCtrls, UProducer, StrUtils;
     6  Classes, SysUtils, SourceCode, ComCtrls, Producer, StrUtils;
    97
    108type
Note: See TracChangeset for help on using the changeset viewer.