Changeset 145 for trunk


Ignore:
Timestamp:
Jun 5, 2023, 6:44:57 PM (18 months ago)
Author:
chronos
Message:
  • Modified: Remove U prefix from unit names.
  • Modified: Updated Common package.
Location:
trunk
Files:
7 added
10 deleted
6 edited
1 copied
106 moved

Legend:

Unmodified
Added
Removed
  • trunk/BFCodeTools.pas

    r144 r145  
    1 unit UBFCodeTools;
     1unit BFCodeTools;
    22
    33interface
  • trunk/BFHighlighter.pas

    r144 r145  
    1 unit UBFHighlighter;
     1unit BFHighlighter;
    22(*
    33  This is an example how to implement your own highlighter.
  • trunk/BFTarget.pas

    r144 r145  
    1 unit UBFTarget;
     1unit BFTarget;
    22
    33interface
    44
    55uses
    6   Classes, SysUtils, UTarget;
     6  Classes, SysUtils, Target;
    77
    88type
  • trunk/Core.lfm

    r144 r145  
    2121    AppName = 'LazFuck'
    2222    Description = 'A simple BrainFuck IDE written in Lazarus/FPC.'
    23     ReleaseDate = 44625
     23    ReleaseDate = 45082
    2424    RegistryKey = '\Software\Chronosoft\LazFuck'
    2525    RegistryRoot = rrKeyCurrentUser
  • trunk/Core.pas

    r144 r145  
    1 unit UCore;
     1unit Core;
    22
    33interface
    44
    55uses
    6   Classes, SysUtils, FileUtil, UApplicationInfo, ULastOpenedList, UProject,
    7   UTranslator, UTarget, URegistry, Registry, Graphics, Controls, UScaleDPI,
    8   UPersistentForm, UTheme, UAboutDialog, UBFTarget;
     6  Classes, SysUtils, FileUtil, ApplicationInfo, LastOpenedList, Project,
     7  Translator, Target, RegistryEx, Registry, Graphics, Controls, ScaleDPI,
     8  PersistentForm, Theme, AboutDialog, BFTarget, Forms;
    99
    1010type
     
    2525    procedure TranslatorTranslate(Sender: TObject);
    2626  private
     27    FOnCurrentTargetChange: TNotifyEvent;
     28    FOnTargetChangeState: TNotifyEvent;
     29    FOnTargetLog: TLogEvent;
     30    FormMain: TForm;
    2731    FCurrentTarget: TTarget;
    2832    StoredDimension: TControlDimension;
     
    3135    procedure SetCurrentTarget(AValue: TTarget);
    3236    procedure ScaleDPI;
     37    procedure TargetChangeStateExecute(Sender: TObject);
     38    procedure TargetLogExecute(Lines: TStrings);
    3339    procedure TargetMessageExecute(Text: string);
    3440  public
     
    4955    procedure SaveToRegistry(Context: TRegistryContext);
    5056    property CurrentTarget: TTarget read FCurrentTarget write SetCurrentTarget;
     57    property OnTargetLog: TLogEvent read FOnTargetLog write FOnTargetLog;
     58    property OnTargetChangeState: TNotifyEvent read FOnTargetChangeState
     59      write FOnTargetChangeState;
     60    property OnCurrentTargetChange: TNotifyEvent read FOnCurrentTargetChange
     61      write FOnCurrentTargetChange;
    5162  end;
    5263
     
    6071
    6172uses
    62   UFormMain, Forms, LazFileUtils,
     73  LazFileUtils, FormMain,
    6374  // Targets
    64   UTargetInterpretter, UTargetFPC, UTargetJava, UTargetDelphi, UTargetJavascript,
    65   UTargetPHP, UTargetC, UTargetPython, UTargetCSharp;
     75  TargetInterpretter, TargetFPC, TargetJava, TargetDelphi, TargetJavascript,
     76  TargetPHP, TargetC, TargetPython, TargetCSharp;
    6677
    6778const
     
    103114    ApplicationInfo.RegistryKey + '\' + RecentFilesRegKey);
    104115  LoadFromRegistry(Core.ApplicationInfo.GetRegistryContext);
     116
     117  FormMain := TFormMain.Create(nil);
     118  FormMain.Show;
    105119end;
    106120
     
    112126  FreeAndNil(Project);
    113127  FreeAndNil(StoredDimension);
     128  FreeAndNil(FormMain);
    114129end;
    115130
    116131procedure TCore.TranslatorTranslate(Sender: TObject);
    117132begin
    118   UTarget.UpdateTranslation;
     133  Target.UpdateTranslation;
    119134end;
    120135
     
    140155
    141156procedure TCore.LoadFromRegistry(Context: TRegistryContext);
     157var
     158  TargetName: string;
    142159begin
    143160  with TRegistryEx.Create do
    144161  try
    145162    CurrentContext := Context;
     163    Optimizations.AddSub := ReadBoolWithDefault('OptimizationAddSubEnabled', True);
     164    Optimizations.SetZero := ReadBoolWithDefault('OptimizationSetZeroEnabled', True);
     165    Optimizations.Merge := ReadBoolWithDefault('OptimizationMerge', True);
     166    Optimizations.CopyMultiply := ReadBoolWithDefault('OptimizationCopyMultiplyEnabled', True);
     167    Optimizations.RelativeIndexes := ReadBoolWithDefault('OptimizationRelativeIndexesEnabled', True);
    146168    OpenProjectOnStart := ReadBoolWithDefault('OpenProjectOnStart', True);
    147169    if ValueExists('LanguageCode') then
     
    157179    OptionsFormTabIndex := ReadIntegerWithDefault('OptionsFormTabIndex', 0);
    158180    ThemeManager.Theme := ThemeManager.Themes.FindByName(ReadStringWithDefault('Theme', 'System'));
     181
     182    TargetName := ReadStringWithDefault('TargetName', 'Interpretter');
     183    CurrentTarget := Targets.FindByName(TargetName);
     184    if not Assigned(CurrentTarget) then
     185      CurrentTarget := TTarget(Core.Targets[0]);
    159186  finally
    160187    Free;
     
    171198  try
    172199    CurrentContext := Context;
     200    WriteString('TargetName', Core.CurrentTarget.Name);
     201    WriteBool('OptimizationAddSubEnabled', Optimizations.AddSub);
     202    WriteBool('OptimizationSetZeroEnabled', Optimizations.SetZero);
     203    WriteBool('OptimizationMerge', Optimizations.Merge);
     204    WriteBool('OptimizationCopyMultiplyEnabled', Optimizations.CopyMultiply);
     205    WriteBool('OptimizationRelativeIndexesEnabled', Optimizations.RelativeIndexes);
    173206    WriteBool('OpenProjectOnStart', OpenProjectOnStart);
    174207    WriteBool('DPIAuto', ScaleDPI1.AutoDetect);
     
    198231    Targets[I].OnChangeState := nil;
    199232  if Assigned(FCurrentTarget) then begin
    200     FCurrentTarget.OnChangeState := FormMain.TargetStateChanged;
    201     FCurrentTarget.OnLog := FormMain.TargetLogExecute;
     233    FCurrentTarget.OnChangeState := TargetChangeStateExecute;
     234    FCurrentTarget.OnLog := TargetLogExecute;
    202235    FCurrentTarget.OptimizationLevel := OptimizationLevel;
    203236    if FCurrentTarget is TBFTarget then begin
     
    206239    end;
    207240  end;
    208   FormMain.UpdateTargetList;
    209   FormMain.UpdateInterface;
     241  if Assigned(OnCurrentTargetChange) then
     242    FOnCurrentTargetChange(Self);
     243end;
     244
     245procedure TCore.TargetChangeStateExecute(Sender: TObject);
     246begin
     247  if Assigned(FOnTargetChangeState) then
     248    FOnTargetChangeState(Sender);
     249end;
     250
     251procedure TCore.TargetLogExecute(Lines: TStrings);
     252begin
     253
    210254end;
    211255
  • trunk/Forms/FormCPU.lfm

    r144 r145  
    88  ClientWidth = 621
    99  DesignTimePPI = 144
    10   LCLVersion = '2.0.0.4'
     10  OnCreate = FormCreate
     11  LCLVersion = '2.2.6.0'
    1112  object Label4: TLabel
    1213    Left = 12
    13     Height = 25
     14    Height = 26
    1415    Top = 72
    15     Width = 104
     16    Width = 112
    1617    Caption = 'Step counter:'
    1718    ParentColor = False
     
    2021  object Label7: TLabel
    2122    Left = 12
    22     Height = 25
     23    Height = 26
    2324    Top = 108
    24     Width = 54
     25    Width = 57
    2526    Caption = 'Speed:'
    2627    ParentColor = False
     
    2930  object LabelStepSpeed: TLabel
    3031    Left = 288
    31     Height = 25
     32    Height = 26
    3233    Top = 108
    3334    Width = 15
     
    3839  object LabelStepCounter: TLabel
    3940    Left = 288
    40     Height = 25
     41    Height = 26
    4142    Top = 72
    4243    Width = 15
     
    4748  object LabelMemoryPointer: TLabel
    4849    Left = 288
    49     Height = 25
     50    Height = 26
    5051    Top = 36
    5152    Width = 15
     
    5657  object LabelProgramPointer: TLabel
    5758    Left = 288
    58     Height = 25
     59    Height = 26
    5960    Top = 0
    6061    Width = 15
     
    6566  object Label3: TLabel
    6667    Left = 12
    67     Height = 25
     68    Height = 26
    6869    Top = 0
    69     Width = 135
     70    Width = 145
    7071    Caption = 'Program pointer:'
    7172    ParentColor = False
     
    7475  object Label5: TLabel
    7576    Left = 12
    76     Height = 25
     77    Height = 26
    7778    Top = 36
    78     Width = 133
     79    Width = 141
    7980    Caption = 'Memory pointer:'
    8081    ParentColor = False
  • trunk/Forms/FormCPU.pas

    r144 r145  
    1 unit UFormCPU;
     1unit FormCPU;
    22
    33interface
     
    2020    LabelStepCounter: TLabel;
    2121    LabelStepSpeed: TLabel;
    22   private
     22    procedure FormCreate(Sender: TObject);
    2323  public
    2424    LastStepCounter: Integer;
     
    2929  FormCPU: TFormCPU;
    3030
     31
    3132implementation
    3233
    3334uses
    34   UCore, UTargetInterpretter;
     35  Core, TargetInterpretter;
    3536
    3637{$R *.lfm}
     
    4142{ TFormCPU }
    4243
     44procedure TFormCPU.FormCreate(Sender: TObject);
     45begin
     46  Core.Core.Translator.TranslateComponentRecursive(Self);
     47  Core.Core.ThemeManager.UseTheme(Self);
     48end;
     49
    4350procedure TFormCPU.Reload;
    4451begin
    45   if Core.CurrentTarget is TTargetInterpretter then
    46   with TTargetInterpretter(Core.CurrentTarget) do begin
     52  if Core.Core.CurrentTarget is TTargetInterpretter then
     53  with TTargetInterpretter(Core.Core.CurrentTarget) do begin
    4754    LabelProgramPointer.Caption := IntToStr(ProgramIndex);
    4855    LabelMemoryPointer.Caption := IntToStr(MemoryPosition);
  • trunk/Forms/FormCompileMultiple.pas

    r144 r145  
    1 unit UFormCompileMultiple;
     1unit FormCompileMultiple;
    22
    33interface
     
    55uses
    66  Classes, SysUtils, Forms, Controls, Graphics, Dialogs, StdCtrls, ComCtrls,
    7   UTarget, fgl;
     7  Target, fgl;
    88
    99type
     
    2020    procedure FormDestroy(Sender: TObject);
    2121    procedure FormShow(Sender: TObject);
    22     procedure ListViewTargetsSelectItem(Sender: TObject; Item: TListItem;
    23       Selected: Boolean);
    2422  private
    2523    FTargets: TTargets;
     
    2927  end;
    3028
    31 var
    32   FormCompileMultiple: TFormCompileMultiple;
    33 
    3429
    3530implementation
     
    3833
    3934uses
    40   UCore;
     35  Core;
    4136
    4237procedure TFormCompileMultiple.FormCreate(Sender: TObject);
    4338begin
    44   Core.Translator.TranslateComponentRecursive(Self);
    45   Core.ThemeManager.UseTheme(Self);
     39  Core.Core.Translator.TranslateComponentRecursive(Self);
     40  Core.Core.ThemeManager.UseTheme(Self);
    4641end;
    4742
     
    4944  var CloseAction: TCloseAction);
    5045begin
    51   Core.PersistentForm1.Save(Self);
     46  Core.Core.PersistentForm1.Save(Self);
    5247end;
    5348
     
    6762procedure TFormCompileMultiple.FormShow(Sender: TObject);
    6863begin
    69   Core.PersistentForm1.Load(Self);
     64  Core.Core.PersistentForm1.Load(Self);
    7065  ReloadList;
    71 end;
    72 
    73 procedure TFormCompileMultiple.ListViewTargetsSelectItem(Sender: TObject;
    74   Item: TListItem; Selected: Boolean);
    75 begin
    76 
    7766end;
    7867
  • trunk/Forms/FormInput.pas

    r144 r145  
    1 unit UFormInput;
     1unit FormInput;
    22
    33interface
     
    1414    MemoInput: TMemo;
    1515    procedure MemoInputKeyPress(Sender: TObject; var Key: char);
    16   private
    17     { private declarations }
    18   public
    19     { public declarations }
    2016  end;
    21 
    22 var
    23   FormInput: TFormInput;
    2417
    2518
     
    2922
    3023uses
    31   UCore, UTargetInterpretter;
     24  Core, TargetInterpretter;
    3225
    3326procedure TFormInput.MemoInputKeyPress(Sender: TObject; var Key: char);
    3427begin
    35   if Core.CurrentTarget is TTargetInterpretter then
    36   with TTargetInterpretter(Core.CurrentTarget) do
     28  if Core.Core.CurrentTarget is TTargetInterpretter then
     29  with TTargetInterpretter(Core.Core.CurrentTarget) do
    3730    Input := Input + Key;
    3831end;
  • trunk/Forms/FormLog.pas

    r144 r145  
    1 unit UFormLog;
     1unit FormLog;
    22
    33interface
     
    1313    Memo1: TMemo;
    1414    procedure FormCreate(Sender: TObject);
    15   private
    16     { private declarations }
    17   public
    18     { public declarations }
    1915  end;
    2016
    21 var
    22   FormLog: TFormLog;
    2317
    2418implementation
     
    2721
    2822uses
    29   UCore;
     23  Core;
    3024
    3125{ TFormLog }
     
    3327procedure TFormLog.FormCreate(Sender: TObject);
    3428begin
    35   Core.Translator.TranslateComponentRecursive(Self);
    36   Core.ThemeManager.UseTheme(Self);
     29  Core.Core.Translator.TranslateComponentRecursive(Self);
     30  Core.Core.ThemeManager.UseTheme(Self);
    3731end;
    3832
  • trunk/Forms/FormMain.pas

    r144 r145  
    1 unit UFormMain;
     1unit FormMain;
    22
    33interface
    44
    55uses
    6   Classes, SysUtils, FileUtil, Forms, Controls,
    7   Graphics, Dialogs, Menus, ActnList, ComCtrls, ExtCtrls, UTarget, Registry,
    8   URegistry, LazFileUtils;
     6  Classes, SysUtils, FileUtil, Forms, Controls, FormCPU, FormInput,
     7  Graphics, Dialogs, Menus, ActnList, ComCtrls, ExtCtrls, Target, Registry,
     8  LazFileUtils, FormOptions, FormMessages, FormTargets,
     9  FormOutput, FormMemory, FormSourceCode, FormTargetCode, FormLog,
     10  FormCompileMultiple;
    911
    1012type
     
    144146    procedure TimerRefreshTimer(Sender: TObject);
    145147  private
     148    FormCPU: TFormCPU;
     149    FormInput: TFormInput;
     150    FormLog: TFormLog;
     151    FormMemory: TFormMemory;
     152    FormMessages: TFormMessages;
     153    FormOutput: TFormOutput;
     154    FormSourceCode: TFormSourceCode;
     155    FormTargetCode: TFormTargetCode;
    146156    procedure AProjectOpenRecentExecute(Sender: TObject);
    147157    procedure MenuItemTargetClick(Sender: TObject);
     
    151161    procedure DockInit;
    152162    procedure LastOpenedListChange(Sender: TObject);
     163    procedure CurrentTargetChangeExecute(Sender: TObject);
    153164  public
    154165    procedure MessagesChanged(Sender: TObject);
    155166    procedure TargetLogExecute(Lines: TStrings);
    156167    procedure TargetStateChanged(Sender: TObject);
    157     procedure LoadFromRegistry(Context: TRegistryContext);
    158     procedure SaveToRegistry(Context: TRegistryContext);
    159168    procedure UpdateInterface;
    160169    procedure UpdateStatusBar;
     
    162171  end;
    163172
    164 var
    165   FormMain: TFormMain;
    166 
    167173
    168174implementation
     
    171177
    172178uses
    173   UCore, UFormCPU, UFormOptions, UFormMessages, UFormTargets, UFormOutput, UFormInput,
    174   UFormMemory, UFormSourceCode, UFormTargetCode, UTargetInterpretter, UFormLog,
    175   UBFTarget, UCommon, UFormCompileMultiple;
     179  Core, TargetInterpretter, BFTarget, Common;
    176180
    177181resourcestring
     
    195199procedure TFormMain.FormShow(Sender: TObject);
    196200begin
    197   Core.Init;
    198   LoadFromRegistry(Core.ApplicationInfo.GetRegistryContext);
     201  Core.Core.Init;
    199202  PageControlMain.TabIndex := 0;
    200203  try
    201     if Core.OpenProjectOnStart and (Core.LastOpenedList.Items.Count > 0) and
    202       FileExists(Core.LastOpenedList.Items[0]) then
    203       ProjectOpen(Core.LastOpenedList.Items[0])
     204    if Core.Core.OpenProjectOnStart and (Core.Core.LastOpenedList.Items.Count > 0) and
     205      FileExists(Core.Core.LastOpenedList.Items[0]) then
     206      ProjectOpen(Core.Core.LastOpenedList.Items[0])
    204207      else AProjectNew.Execute;
    205208  finally
     
    209212    UpdateTargetList;
    210213    DockInit;
    211     Core.PersistentForm1.Load(Self, True);
    212     Core.ThemeManager.UseTheme(Self);
     214    Core.Core.PersistentForm1.Load(Self, True);
     215    Core.Core.ThemeManager.UseTheme(Self);
    213216    FormSourceCode.UpdateTheme;
    214217  end;
    215   Core.Messages.OnChange := FormMain.MessagesChanged;
     218  Core.Core.Messages.OnChange := MessagesChanged;
    216219end;
    217220
     
    232235begin
    233236  UpdateInterface;
    234   if Core.CurrentTarget.State = rsPaused then
     237  if Core.Core.CurrentTarget.State = rsPaused then
    235238    AProgramShowExecutionPoint.Execute;
    236   if Core.CurrentTarget.State = rsStopped then
    237     Core.Messages.AddMessage(SProgramStopped);
     239  if Core.Core.CurrentTarget.State = rsStopped then
     240    Core.Core.Messages.AddMessage(SProgramStopped);
    238241end;
    239242
     
    249252  if Sender is TMenuItem then
    250253  with TMenuItem(Sender) do begin
    251     Core.CurrentTarget := TTarget(Core.Targets[MenuIndex]);
     254    Core.Core.CurrentTarget := Core.Core.Targets[MenuIndex];
    252255    Checked := True;
    253256    for I := 0 to Parent.Count - 1 do
     
    258261procedure TFormMain.ProjectOpen(FileName: string);
    259262begin
    260   if Core.Project.Openned then
    261     raise Exception.Create(SCloseProjectFirst);
    262   FormSourceCode.SynEditSource.Lines.LoadFromFile(FileName);
    263   Core.AddItemToLastOpenedList(FileName);
    264   Core.Project.FileName := FileName;
    265   Core.Project.Openned := True;
    266   Core.CurrentTarget.Compiled := False;
     263  with Core.Core do begin
     264    if Project.Openned then
     265      raise Exception.Create(SCloseProjectFirst);
     266    FormSourceCode.SynEditSource.Lines.LoadFromFile(FileName);
     267    AddItemToLastOpenedList(FileName);
     268    Project.FileName := FileName;
     269    Project.Openned := True;
     270    CurrentTarget.Compiled := False;
     271  end;
    267272  UpdateInterface;
    268273end;
     
    292297  DockForm(FormMemory, PanelMemory);
    293298  DockForm(FormMessages, TabSheetMessages);
    294   PageControlRight.Width := FormMain.Width div 3;
    295   PageControlBottom.Height := FormMain.Height div 5;
     299  PageControlRight.Width := Width div 3;
     300  PageControlBottom.Height := Height div 5;
    296301end;
    297302
    298303procedure TFormMain.LastOpenedListChange(Sender: TObject);
    299304begin
    300   Core.LastOpenedList.LoadToMenuItem(MenuItemOpenRecent, AProjectOpenRecentExecute);
    301   Core.LastOpenedList.LoadToMenuItem(PopupMenuRecentFiles.Items, AProjectOpenRecentExecute);
    302 end;
    303 
    304 procedure TFormMain.LoadFromRegistry(Context: TRegistryContext);
    305 var
    306   TargetName: string;
    307 begin
    308   with TRegistryEx.Create do
    309   try
    310     CurrentContext := Context;
    311     TargetName := ReadStringWithDefault('TargetName', 'Interpretter');
    312     Core.CurrentTarget := Core.Targets.FindByName(TargetName);
    313     if not Assigned(Core.CurrentTarget) then
    314       Core.CurrentTarget := TTarget(Core.Targets[0]);
    315     Core.Optimizations.AddSub := ReadBoolWithDefault('OptimizationAddSubEnabled', True);
    316     Core.Optimizations.SetZero := ReadBoolWithDefault('OptimizationSetZeroEnabled', True);
    317     Core.Optimizations.Merge := ReadBoolWithDefault('OptimizationMerge', True);
    318     Core.Optimizations.CopyMultiply := ReadBoolWithDefault('OptimizationCopyMultiplyEnabled', True);
    319     Core.Optimizations.RelativeIndexes := ReadBoolWithDefault('OptimizationRelativeIndexesEnabled', True);
    320   finally
    321     Free;
    322   end;
    323 end;
    324 
    325 procedure TFormMain.SaveToRegistry(Context: TRegistryContext);
    326 begin
    327   with TRegistryEx.Create do
    328   try
    329     CurrentContext := Context;
    330     WriteString('TargetName', Core.CurrentTarget.Name);
    331     WriteBool('OptimizationAddSubEnabled', Core.Optimizations.AddSub);
    332     WriteBool('OptimizationSetZeroEnabled', Core.Optimizations.SetZero);
    333     WriteBool('OptimizationMerge', Core.Optimizations.Merge);
    334     WriteBool('OptimizationCopyMultiplyEnabled', Core.Optimizations.CopyMultiply);
    335     WriteBool('OptimizationRelativeIndexesEnabled', Core.Optimizations.RelativeIndexes);
    336   finally
    337     Free;
    338   end;
     305  Core.Core.LastOpenedList.LoadToMenuItem(MenuItemOpenRecent, AProjectOpenRecentExecute);
     306  Core.Core.LastOpenedList.LoadToMenuItem(PopupMenuRecentFiles.Items, AProjectOpenRecentExecute);
     307end;
     308
     309procedure TFormMain.CurrentTargetChangeExecute(Sender: TObject);
     310begin
     311  UpdateTargetList;
     312  UpdateInterface;
    339313end;
    340314
     
    345319begin
    346320  Title := '';
    347   if Core.Project.FileName <> '' then Title := Core.Project.FileName;
    348   if Core.Project.Modified then Title := Title + ' (' + SChanged + ')';
    349   Title:= Title + ' - ' + Core.ApplicationInfo.AppName;
    350   Caption := Title;
    351   AProjectSave.Enabled := Core.Project.Modified;
    352   FormSourceCode.SynEditSource.Enabled := Core.Project.Openned;
    353   AProjectClose.Enabled := Core.Project.Openned;
    354   AProjectSaveAs.Enabled := Core.Project.Openned;
    355   AProgramRun.Enabled := (tcRun in Core.CurrentTarget.Capabilities) and
    356     Core.Project.Openned and (Core.CurrentTarget.State = rsStopped) or (Core.CurrentTarget.State = rsPaused);
    357   AProgramPause.Enabled := (tcPause in Core.CurrentTarget.Capabilities) and
    358     Core.Project.Openned and (Core.CurrentTarget.State = rsRunning);
    359   AProgramStop.Enabled := (tcStop in Core.CurrentTarget.Capabilities) and
    360     Core.Project.Openned and (Core.CurrentTarget.State <> rsStopped);
    361   AProgramCompile.Enabled := (tcCompile in Core.CurrentTarget.Capabilities) and
    362     Core.Project.Openned;
    363   CanDebug := Core.DebugEnabled and Core.Project.Openned and
    364     ((Core.CurrentTarget.State = rsPaused) or (Core.CurrentTarget.State = rsStopped));
    365   AProgramStepInto.Enabled := CanDebug and (tcStepInto in Core.CurrentTarget.Capabilities);
    366   AProgramStepOut.Enabled := CanDebug and (tcStepOut in Core.CurrentTarget.Capabilities);
    367   AProgramRunToCursor.Enabled := CanDebug and (tcRunToCursor in Core.CurrentTarget.Capabilities);
    368   AProgramStepOver.Enabled := CanDebug and (tcStepOver in Core.CurrentTarget.Capabilities);
    369   AProgramShowExecutionPoint.Enabled := CanDebug and (tcPause in Core.CurrentTarget.Capabilities);
    370   AShowSourcePosition.Enabled := Core.CurrentTarget.Compiled;
    371   AShowTargetPosition.Enabled := Core.CurrentTarget.Compiled;
     321  with Core.Core do begin
     322    if Project.FileName <> '' then Title := Project.FileName;
     323    if Project.Modified then Title := Title + ' (' + SChanged + ')';
     324    Title:= Title + ' - ' + ApplicationInfo.AppName;
     325    Caption := Title;
     326    AProjectSave.Enabled := Project.Modified;
     327    FormSourceCode.SynEditSource.Enabled := Project.Openned;
     328    AProjectClose.Enabled := Project.Openned;
     329    AProjectSaveAs.Enabled := Project.Openned;
     330    AProgramRun.Enabled := (tcRun in CurrentTarget.Capabilities) and
     331      Project.Openned and (CurrentTarget.State = rsStopped) or (CurrentTarget.State = rsPaused);
     332    AProgramPause.Enabled := (tcPause in CurrentTarget.Capabilities) and
     333      Project.Openned and (CurrentTarget.State = rsRunning);
     334    AProgramStop.Enabled := (tcStop in CurrentTarget.Capabilities) and
     335      Project.Openned and (CurrentTarget.State <> rsStopped);
     336    AProgramCompile.Enabled := (tcCompile in CurrentTarget.Capabilities) and
     337      Project.Openned;
     338    CanDebug := DebugEnabled and Project.Openned and
     339      ((CurrentTarget.State = rsPaused) or (CurrentTarget.State = rsStopped));
     340    AProgramStepInto.Enabled := CanDebug and (tcStepInto in CurrentTarget.Capabilities);
     341    AProgramStepOut.Enabled := CanDebug and (tcStepOut in CurrentTarget.Capabilities);
     342    AProgramRunToCursor.Enabled := CanDebug and (tcRunToCursor in CurrentTarget.Capabilities);
     343    AProgramStepOver.Enabled := CanDebug and (tcStepOver in CurrentTarget.Capabilities);
     344    AProgramShowExecutionPoint.Enabled := CanDebug and (tcPause in CurrentTarget.Capabilities);
     345    AShowSourcePosition.Enabled := CurrentTarget.Compiled;
     346    AShowTargetPosition.Enabled := CurrentTarget.Compiled;
     347  end;
    372348  UpdateStatusBar;
    373349end;
     
    383359  I: Integer;
    384360begin
    385   Core.Targets.LoadToMenuItem(MenuItemTarget, MenuItemTargetClick, Core.CurrentTarget);
    386   Core.Targets.LoadToMenuItem(PopupMenuTargets.Items, MenuItemTargetClick, Core.CurrentTarget);
     361  Core.Core.Targets.LoadToMenuItem(MenuItemTarget, MenuItemTargetClick, Core.Core.CurrentTarget);
     362  Core.Core.Targets.LoadToMenuItem(PopupMenuTargets.Items, MenuItemTargetClick, Core.Core.CurrentTarget);
    387363
    388364  // Update toolbutton
    389   I := Core.Targets.IndexOf(Core.CurrentTarget);
     365  I := Core.Core.Targets.IndexOf(Core.Core.CurrentTarget);
    390366  if I <> -1 then
    391   with TTarget(Core.Targets[I]) do begin
     367  with TTarget(Core.Core.Targets[I]) do begin
    392368    ToolButtonTarget.ImageIndex := ImageIndex;
    393369    ToolButtonTarget.Caption := Name;
     
    398374procedure TFormMain.FormCreate(Sender: TObject);
    399375begin
     376  Core.Core.Translator.TranslateComponentRecursive(Self);
     377  Core.Core.ThemeManager.UseTheme(Self);
     378
     379  FormSourceCode := TFormSourceCode.Create(nil);
     380  FormCPU := TFormCPU.Create(nil);
     381  FormInput := TFormInput.Create(nil);
     382  FormLog := TFormLog.Create(nil);
     383  FormMemory := TFormMemory.Create(nil);
     384  FormMessages := TFormMessages.Create(nil);
     385  FormOutput := TFormOutput.Create(nil);
     386  FormTargetCode := TFormTargetCode.Create(nil);
     387
    400388  UpdateTargetList;
    401   Core.LastOpenedList.OnChange := LastOpenedListChange;
     389  with Core.Core do begin
     390    LastOpenedList.OnChange := LastOpenedListChange;
     391    OnCurrentTargetChange := CurrentTargetChangeExecute;
     392    OnTargetChangeState := TargetStateChanged;
     393    OnTargetLog := TargetLogExecute;
     394  end;
    402395end;
    403396
    404397procedure TFormMain.FormDestroy(Sender: TObject);
    405398begin
    406   SaveToRegistry(Core.ApplicationInfo.GetRegistryContext);
     399  FreeAndNil(FormSourceCode);
     400  FreeAndNil(FormCPU);
     401  FreeAndNil(FormInput);
     402  FreeAndNil(FormLog);
     403  FreeAndNil(FormMemory);
     404  FreeAndNil(FormMessages);
     405  FreeAndNil(FormOutput);
     406  FreeAndNil(FormTargetCode);
    407407end;
    408408
    409409procedure TFormMain.AProgramRunExecute(Sender: TObject);
    410410begin
    411   if Core.CurrentTarget is TTargetInterpretter then
    412     TTargetInterpretter(Core.CurrentTarget).Input := FormInput.MemoInput.Lines.Text;
    413   if not Core.CurrentTarget.Compiled then AProgramCompile.Execute;
    414   Core.CurrentTarget.Run;
    415   Core.Messages.AddMessage(SProgramStarted);
     411  if Core.Core.CurrentTarget is TTargetInterpretter then
     412    TTargetInterpretter(Core.Core.CurrentTarget).Input := FormInput.MemoInput.Lines.Text;
     413  if not Core.Core.CurrentTarget.Compiled then AProgramCompile.Execute;
     414  Core.Core.CurrentTarget.Run;
     415  Core.Core.Messages.AddMessage(SProgramStarted);
    416416end;
    417417
     
    420420  DebugStep: TDebugStep;
    421421begin
    422   DebugStep := Core.CurrentTarget.DebugSteps.SearchByTargetPos(FormTargetCode.SynEditTarget.SelStart - 1);
     422  DebugStep := Core.Core.CurrentTarget.DebugSteps.SearchByTargetPos(FormTargetCode.SynEditTarget.SelStart - 1);
    423423  if Assigned(DebugStep) then begin
    424424    FormSourceCode.SynEditSource.SelStart := DebugStep.SourcePosition + 1;
     
    431431  DebugStep: TDebugStep;
    432432begin
    433   DebugStep := Core.CurrentTarget.DebugSteps.SearchBySourcePos(FormSourceCode.SynEditSource.SelStart - 1);
     433  DebugStep := Core.Core.CurrentTarget.DebugSteps.SearchBySourcePos(FormSourceCode.SynEditSource.SelStart - 1);
    434434  if Assigned(DebugStep) then begin
    435435    FormTargetCode.SynEditTarget.SelStart := DebugStep.TargetPosition + 1;
     
    461461procedure TFormMain.FormClose(Sender: TObject; var CloseAction: TCloseAction);
    462462begin
    463   Core.PersistentForm1.Save(Self);
     463  Core.Core.PersistentForm1.Save(Self);
     464  Application.Terminate;
    464465end;
    465466
    466467procedure TFormMain.FormCloseQuery(Sender: TObject; var CanClose: boolean);
    467468begin
    468   if Core.Project.Modified then begin
     469  if Core.Core.Project.Modified then begin
    469470    AProjectClose.Execute;
    470     if Core.Project.Openned then CanClose := False;
     471    if Core.Core.Project.Openned then CanClose := False;
    471472  end;
    472473end;
     
    478479
    479480procedure TFormMain.AOptionsExecute(Sender: TObject);
     481var
     482  FormOptions: TFormOptions;
    480483begin
    481484  FormOptions := TFormOptions.Create(nil);
     
    484487    if FormOptions.ShowModal = mrOK then begin
    485488      FormOptions.Save;
    486       if Assigned(Core.CurrentTarget) then begin
    487         Core.CurrentTarget.OptimizationLevel := Core.OptimizationLevel;
    488         if Core.CurrentTarget is TBFTarget then begin
    489           TBFTarget(Core.CurrentTarget).CellSize := Core.CellSize;
    490           TBFTarget(Core.CurrentTarget).MemorySize := Core.MemorySize;
     489      if Assigned(Core.Core.CurrentTarget) then begin
     490        Core.Core.CurrentTarget.OptimizationLevel := Core.Core.OptimizationLevel;
     491        if Core.Core.CurrentTarget is TBFTarget then begin
     492          TBFTarget(Core.Core.CurrentTarget).CellSize := Core.Core.CellSize;
     493          TBFTarget(Core.Core.CurrentTarget).MemorySize := Core.Core.MemorySize;
    491494        end;
    492495      end;
    493       Core.ThemeManager.UseTheme(Self);
     496      Core.Core.ThemeManager.UseTheme(Self);
    494497      FormSourceCode.UpdateTheme;
    495       Core.SaveToRegistry(Core.ApplicationInfo.GetRegistryContext);
    496       SaveToRegistry(Core.ApplicationInfo.GetRegistryContext);
     498      Core.Core.SaveToRegistry(Core.Core.ApplicationInfo.GetRegistryContext);
    497499    end;
    498500  finally
     
    503505procedure TFormMain.AProgramCompileExecute(Sender: TObject);
    504506begin
    505   with Core.CurrentTarget do
     507  with Core.Core, CurrentTarget do
    506508  try
    507     Core.Messages.Clear;
     509    Messages.Clear;
    508510    AProgramStop.Execute;
    509511    SourceCode := FormSourceCode.SynEditSource.Text;
    510     ProjectFileName := Core.Project.FileName;
    511     ProgramName := ExtractFileNameOnly(Core.Project.FileName);
    512     if Core.CurrentTarget is TBFTarget then
    513       TBFTarget(Core.CurrentTarget).Optimizations := Core.Optimizations;
    514     DebugEnabled := Core.DebugEnabled;
    515     Core.Messages.AddMessage(SCompileStart);
     512    ProjectFileName := Project.FileName;
     513    ProgramName := ExtractFileNameOnly(Project.FileName);
     514    if CurrentTarget is TBFTarget then
     515      TBFTarget(CurrentTarget).Optimizations := Optimizations;
     516    DebugEnabled := DebugEnabled;
     517    Messages.AddMessage(SCompileStart);
    516518    Application.ProcessMessages;
    517519    Compile;
    518     Core.Messages.AppendMessage(SDone);
     520    Messages.AppendMessage(SDone);
    519521    FormTargetCode.SynEditTarget.Text := TargetCode;
    520     FormTargetCode.SetHighlighter(Core.CurrentTarget.SourceExtension);
     522    FormTargetCode.SetHighlighter(CurrentTarget.SourceExtension);
    521523    UpdateInterface;
    522524  except
     
    533535  with TFormCompileMultiple.Create(nil) do
    534536  try
    535     Targets := Core.Targets;
     537    Targets := Core.Core.Targets;
    536538    if ShowModal = mrOk then begin
    537       Core.Messages.Clear;
     539      Core.Core.Messages.Clear;
    538540      for I := 0 to Targets.Count - 1 do
    539541      with Targets[I] do
     
    542544        AProgramStop.Execute;
    543545        SourceCode := FormSourceCode.SynEditSource.Text;
    544         ProjectFileName := Core.Project.FileName;
    545         ProgramName := ExtractFileNameOnly(Core.Project.FileName);
     546        ProjectFileName := Core.Core.Project.FileName;
     547        ProgramName := ExtractFileNameOnly(Core.Core.Project.FileName);
    546548        if Targets[I] is TBFTarget then
    547           TBFTarget(Targets[I]).Optimizations := Core.Optimizations;
    548         DebugEnabled := Core.DebugEnabled;
    549         Core.Messages.AddMessage(Name + ' ' + SCompileStart);
     549          TBFTarget(Targets[I]).Optimizations := Core.Core.Optimizations;
     550        DebugEnabled := Core.Core.DebugEnabled;
     551        Core.Core.Messages.AddMessage(Name + ' ' + SCompileStart);
    550552        Application.ProcessMessages;
    551553        Compile;
    552         Core.Messages.AppendMessage(SDone);
     554        Core.Core.Messages.AppendMessage(SDone);
    553555        FormTargetCode.SynEditTarget.Text := TargetCode;
    554         FormTargetCode.SetHighlighter(Core.CurrentTarget.SourceExtension);
     556        FormTargetCode.SetHighlighter(Core.Core.CurrentTarget.SourceExtension);
    555557        UpdateInterface;
    556558      except
     
    569571  BreakPoint: TBreakPoint;
    570572begin
    571   DebugStep := Core.CurrentTarget.DebugSteps.SearchBySourcePos(FormSourceCode.SynEditSource.SelStart - 1);
     573  DebugStep := Core.Core.CurrentTarget.DebugSteps.SearchBySourcePos(FormSourceCode.SynEditSource.SelStart - 1);
    572574  if Assigned(DebugStep) then begin
    573     BreakPoint := Core.CurrentTarget.BreakPoints.SearchByTargetPos(DebugStep.ProgramPosition);
     575    BreakPoint := Core.Core.CurrentTarget.BreakPoints.SearchByTargetPos(DebugStep.ProgramPosition);
    574576    if Assigned(BreakPoint) then
    575       Core.CurrentTarget.BreakPoints.Delete(Core.CurrentTarget.BreakPoints.IndexOf(BreakPoint))
    576       else Core.CurrentTarget.BreakPoints.AddItem(DebugStep.ProgramPosition);
     577      Core.Core.CurrentTarget.BreakPoints.Delete(Core.Core.CurrentTarget.BreakPoints.IndexOf(BreakPoint))
     578      else Core.Core.CurrentTarget.BreakPoints.AddItem(DebugStep.ProgramPosition);
    577579  end;
    578580end;
     
    580582procedure TFormMain.AAboutExecute(Sender: TObject);
    581583begin
    582   Core.AboutDialog.Show;
     584  Core.Core.AboutDialog.Show;
    583585end;
    584586
    585587procedure TFormMain.AProgramPauseExecute(Sender: TObject);
    586588begin
    587   Core.CurrentTarget.Pause;
     589  Core.Core.CurrentTarget.Pause;
    588590end;
    589591
     
    592594  DebugStep: TDebugStep;
    593595begin
    594   if Core.CurrentTarget.State = rsStopped then begin
    595     if not Core.CurrentTarget.Compiled then AProgramCompile.Execute;
    596     DebugStep := Core.CurrentTarget.DebugSteps.SearchBySourcePos(FormSourceCode.SynEditSource.SelStart - 1);
    597     Core.CurrentTarget.BreakPoints.SetSystem(DebugStep.ProgramPosition);
     596  if Core.Core.CurrentTarget.State = rsStopped then begin
     597    if not Core.Core.CurrentTarget.Compiled then AProgramCompile.Execute;
     598    DebugStep := Core.Core.CurrentTarget.DebugSteps.SearchBySourcePos(FormSourceCode.SynEditSource.SelStart - 1);
     599    Core.Core.CurrentTarget.BreakPoints.SetSystem(DebugStep.ProgramPosition);
    598600    AProgramRun.Execute;
    599601  end else begin
    600     DebugStep := Core.CurrentTarget.DebugSteps.SearchBySourcePos(FormSourceCode.SynEditSource.SelStart - 1);
    601     Core.CurrentTarget.RunToCursor(DebugStep.ProgramPosition);
     602    DebugStep := Core.Core.CurrentTarget.DebugSteps.SearchBySourcePos(FormSourceCode.SynEditSource.SelStart - 1);
     603    Core.Core.CurrentTarget.RunToCursor(DebugStep.ProgramPosition);
    602604  end;
    603605end;
     
    607609  DebugStep: TDebugStep;
    608610begin
    609   DebugStep := Core.CurrentTarget.DebugSteps.SearchByProgramPos(Core.CurrentTarget.ExecutionPosition);
     611  DebugStep := Core.Core.CurrentTarget.DebugSteps.SearchByProgramPos(
     612    Core.Core.CurrentTarget.ExecutionPosition);
    610613  FormSourceCode.SynEditSource.SelStart := DebugStep.SourcePosition + 1;
    611614  FormTargetCode.SynEditTarget.SelStart := DebugStep.TargetPosition + 1;
     
    616619procedure TFormMain.AProgramStepIntoExecute(Sender: TObject);
    617620begin
    618   if Core.CurrentTarget.State = rsStopped then begin
    619     if not Core.CurrentTarget.Compiled then AProgramCompile.Execute;
    620     Core.CurrentTarget.BreakPoints.SetSystem(Core.CurrentTarget.DebugSteps.First.ProgramPosition);
     621  if Core.Core.CurrentTarget.State = rsStopped then begin
     622    if not Core.Core.CurrentTarget.Compiled then AProgramCompile.Execute;
     623    Core.Core.CurrentTarget.BreakPoints.SetSystem(
     624      Core.Core.CurrentTarget.DebugSteps.First.ProgramPosition);
    621625    AProgramRun.Execute;
    622   end else Core.CurrentTarget.StepInto;
     626  end else Core.Core.CurrentTarget.StepInto;
    623627end;
    624628
    625629procedure TFormMain.AProgramStepOutExecute(Sender: TObject);
    626630begin
    627   Core.CurrentTarget.StepOut;
     631  Core.Core.CurrentTarget.StepOut;
    628632end;
    629633
    630634procedure TFormMain.AProgramStepOverExecute(Sender: TObject);
    631635begin
    632   if Core.CurrentTarget.State = rsStopped then begin
    633     if not Core.CurrentTarget.Compiled then AProgramCompile.Execute;
    634     Core.CurrentTarget.BreakPoints.SetSystem(TDebugStep(Core.CurrentTarget.DebugSteps.First).ProgramPosition);
     636  if Core.Core.CurrentTarget.State = rsStopped then begin
     637    if not Core.Core.CurrentTarget.Compiled then AProgramCompile.Execute;
     638    Core.Core.CurrentTarget.BreakPoints.SetSystem(
     639      TDebugStep(Core.Core.CurrentTarget.DebugSteps.First).ProgramPosition);
    635640    AProgramRun.Execute;
    636   end else Core.CurrentTarget.StepOver;
     641  end else Core.Core.CurrentTarget.StepOver;
    637642end;
    638643
    639644procedure TFormMain.AProgramStopExecute(Sender: TObject);
    640645begin
    641   Core.CurrentTarget.Stop;
     646  Core.Core.CurrentTarget.Stop;
    642647end;
    643648
     
    647652begin
    648653  DialogResult := mrNo;
    649   if Core.Project.Modified then begin
     654  if Core.Core.Project.Modified then begin
    650655    DialogResult := MessageDlg(SUnsavedChanges, SDoYouWantToSaveProject, mtConfirmation, [mbYes, mbNo, mbCancel], 0);
    651656    if DialogResult = mrYes then begin
     
    655660  if (DialogResult = mrNo) or (DialogResult = mrYes) then begin
    656661    AProgramStop.Execute;
    657     Core.Project.Openned := False;
     662    Core.Core.Project.Openned := False;
    658663    FormSourceCode.SynEditSource.Clear;
    659664    UpdateInterface;
     
    664669begin
    665670  AProjectClose.Execute;
    666   if Core.Project.Openned then Exit;
    667   Core.Project.FileName := CombinePaths(Core.DataDir, ExamplesDir + DirectorySeparator + SNewProject + '.b');
     671  if Core.Core.Project.Openned then Exit;
     672  Core.Core.Project.FileName := CombinePaths(Core.Core.DataDir, ExamplesDir + DirectorySeparator + SNewProject + '.b');
    668673  FormSourceCode.SynEditSource.Clear;
    669   Core.Project.Openned := True;
    670   Core.CurrentTarget.Compiled := False;
     674  Core.Core.Project.Openned := True;
     675  Core.Core.CurrentTarget.Compiled := False;
    671676  UpdateInterface;
    672677end;
     
    676681  FileName: string;
    677682begin
    678   FileName := Core.LastOpenedList.Items[TMenuItem(Sender).MenuIndex];
     683  FileName := Core.Core.LastOpenedList.Items[TMenuItem(Sender).MenuIndex];
    679684  if FileExists(FileName) then begin
    680685    AProjectClose.Execute;
    681     if Core.Project.Openned then Exit;
     686    if Core.Core.Project.Openned then Exit;
    682687    ProjectOpen(FileName);
    683688  end else ShowMessage(Format(SFileNotFound, [FileName]));
     
    688693  FileName: string;
    689694begin
    690   if Core.LastOpenedList.Items.Count > 0 then
    691     FileName := Core.LastOpenedList.Items[0]
    692     else FileName := CombinePaths(Core.DataDir, ExamplesDir);
     695  if Core.Core.LastOpenedList.Items.Count > 0 then
     696    FileName := Core.Core.LastOpenedList.Items[0]
     697    else FileName := CombinePaths(Core.Core.DataDir, ExamplesDir);
    693698  OpenDialog1.InitialDir := ExtractFileDir(FileName);
    694699  OpenDialog1.FileName := ExtractFileName(FileName);
    695700  if OpenDialog1.Execute then begin
    696701    AProjectClose.Execute;
    697     if Core.Project.Openned then Exit;
     702    if Core.Core.Project.Openned then Exit;
    698703    ProjectOpen(OpenDialog1.FileName);
    699704  end;
     
    702707procedure TFormMain.AProjectSaveAsExecute(Sender: TObject);
    703708begin
    704   SaveDialog1.InitialDir := ExtractFileDir(Core.Project.FileName);
    705   SaveDialog1.FileName := ExtractFileName(Core.Project.FileName);
     709  SaveDialog1.InitialDir := ExtractFileDir(Core.Core.Project.FileName);
     710  SaveDialog1.FileName := ExtractFileName(Core.Core.Project.FileName);
    706711  if SaveDialog1.Execute then begin
    707712    FormSourceCode.SynEditSource.Lines.SaveToFile(SaveDialog1.FileName);
    708     Core.Project.FileName := SaveDialog1.FileName;
    709     Core.AddItemToLastOpenedList(SaveDialog1.FileName);
    710     Core.Project.Modified := False;
     713    Core.Core.Project.FileName := SaveDialog1.FileName;
     714    Core.Core.AddItemToLastOpenedList(SaveDialog1.FileName);
     715    Core.Core.Project.Modified := False;
    711716    UpdateInterface;
    712717  end;
     
    715720procedure TFormMain.AProjectSaveExecute(Sender: TObject);
    716721begin
    717   if Core.Project.Modified and FileExists(Core.Project.FileName) then begin
    718     FormSourceCode.SynEditSource.Lines.SaveToFile(Core.Project.FileName);
    719     Core.AddItemToLastOpenedList(Core.Project.FileName);
    720     Core.Project.Modified := False;
     722  if Core.Core.Project.Modified and FileExists(Core.Core.Project.FileName) then begin
     723    FormSourceCode.SynEditSource.Lines.SaveToFile(Core.Core.Project.FileName);
     724    Core.Core.AddItemToLastOpenedList(Core.Core.Project.FileName);
     725    Core.Core.Project.Modified := False;
    721726    UpdateInterface;
    722727  end else AProjectSaveAs.Execute;
  • trunk/Forms/FormMemory.lfm

    r144 r145  
    88  ClientWidth = 1039
    99  DesignTimePPI = 144
     10  OnCreate = FormCreate
    1011  LCLVersion = '2.2.6.0'
    1112  object Label6: TLabel
  • trunk/Forms/FormMemory.pas

    r144 r145  
    1 unit UFormMemory;
     1unit FormMemory;
    22
    33interface
     
    1717    Label6: TLabel;
    1818    ListViewMemory: TListView;
     19    procedure FormCreate(Sender: TObject);
    1920    procedure ListViewMemoryData(Sender: TObject; Item: TListItem);
    2021  private
     
    2425  end;
    2526
    26 var
    27   FormMemory: TFormMemory;
    2827
    2928implementation
     
    3231
    3332uses
    34   UCore, UTargetInterpretter;
     33  Core, TargetInterpretter;
    3534
    3635{ TFormMemory }
     
    3837procedure TFormMemory.Reload;
    3938begin
    40   if Core.CurrentTarget is TTargetInterpretter then
    41   with TTargetInterpretter(Core.CurrentTarget) do begin
     39  if Core.Core.CurrentTarget is TTargetInterpretter then
     40  with TTargetInterpretter(Core.Core.CurrentTarget) do begin
    4241    if MemoryChanged then begin
    4342      MemoryChanged := False;
     
    5554  Address: Integer;
    5655begin
    57   if Core.CurrentTarget is TTargetInterpretter then
    58   with TTargetInterpretter(Core.CurrentTarget) do
     56  if Core.Core.CurrentTarget is TTargetInterpretter then
     57  with TTargetInterpretter(Core.Core.CurrentTarget) do
    5958  if (Item.Index >= 0) and (Item.Index <= Trunc((MemoryMaxUsedAddr + 1) / RowSize)) then begin
    6059    Item.Caption := IntToHex(Item.Index * RowSize, 8);
     
    7574end;
    7675
     76procedure TFormMemory.FormCreate(Sender: TObject);
     77begin
     78  Core.Core.Translator.TranslateComponentRecursive(Self);
     79  Core.Core.ThemeManager.UseTheme(Self);
     80end;
     81
    7782end.
    7883
  • trunk/Forms/FormMessages.lfm

    r144 r145  
    99  DesignTimePPI = 144
    1010  OnCreate = FormCreate
    11   LCLVersion = '2.0.0.4'
     11  LCLVersion = '2.2.6.0'
    1212  object ListView1: TListView
    1313    Left = 0
     
    1818    Columns = <   
    1919      item
    20         Width = 710
     20        Width = 723
    2121      end>
    2222    OwnerData = True
  • trunk/Forms/FormMessages.pas

    r144 r145  
    1 unit UFormMessages;
     1unit FormMessages;
    22
    33interface
     
    1515    procedure FormCreate(Sender: TObject);
    1616    procedure ListView1Data(Sender: TObject; Item: TListItem);
    17   private
    18     { private declarations }
    1917  public
    2018    procedure Reload;
    2119  end;
    2220
    23 var
    24   FormMessages: TFormMessages;
    2521
    2622implementation
     
    2925
    3026uses
    31   UCore, UTarget;
     27  Core, Target;
    3228
    3329{ TFormMessages }
     
    3531procedure TFormMessages.ListView1Data(Sender: TObject; Item: TListItem);
    3632begin
    37   with Core do
     33  with Core.Core do
    3834  if (Item.Index >= 0) and (Item.Index < Messages.Count) then
    3935  with Messages[Item.Index] do begin
     
    4541procedure TFormMessages.FormCreate(Sender: TObject);
    4642begin
     43  Core.Core.Translator.TranslateComponentRecursive(Self);
     44  Core.Core.ThemeManager.UseTheme(Self);
    4745end;
    4846
    4947procedure TFormMessages.Reload;
    5048begin
    51   ListView1.Items.Count := Core.Messages.Count;
     49  ListView1.Items.Count := Core.Core.Messages.Count;
    5250  ListView1.Refresh;
    5351end;
  • trunk/Forms/FormOptions.pas

    r144 r145  
    1 unit UFormOptions;
     1unit FormOptions;
    22
    33interface
     
    55uses
    66  Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls,
    7   Spin, ComCtrls, ExtCtrls, UTarget, UTheme;
     7  Spin, ComCtrls, ExtCtrls, Target, Theme;
    88
    99type
     
    4747    procedure FormCreate(Sender: TObject);
    4848    procedure FormShow(Sender: TObject);
    49   private
    50     { private declarations }
    5149  public
    5250    procedure UpdateInterface;
     
    5553  end;
    5654
    57 var
    58   FormOptions: TFormOptions;
    5955
    6056implementation
     
    6359
    6460uses
    65   UCore, ULanguages;
     61  Core, Languages;
    6662
    6763{ TFormOptions }
     
    6965procedure TFormOptions.FormShow(Sender: TObject);
    7066begin
    71   Core.PersistentForm1.Load(Self);
     67  Core.Core.PersistentForm1.Load(Self);
    7268end;
    7369
     
    9187procedure TFormOptions.Load;
    9288begin
    93   ComboBoxLanguage.ItemIndex := ComboBoxLanguage.Items.IndexOfObject(Core.Translator.Language);
    94   if ComboBoxLanguage.ItemIndex = -1 then ComboBoxLanguage.ItemIndex := 0;
    95   ComboBoxTheme.ItemIndex := ComboBoxTheme.Items.IndexOfObject(Core.ThemeManager.Theme);
    96   if ComboBoxTheme.ItemIndex = -1 then ComboBoxTheme.ItemIndex := 0;
    97   CheckBoxReopenLastFile.Checked := Core.OpenProjectOnStart;
    98   CheckBoxOptimizeAddSub.Checked := Core.Optimizations.AddSub;
    99   CheckBoxOptimizeSetZero.Checked := Core.Optimizations.SetZero;
    100   CheckBoxOptimizeMerge.Checked := Core.Optimizations.Merge;
    101   CheckBoxOptimizeRelativeIndexes.Checked := Core.Optimizations.RelativeIndexes;
    102   CheckBoxOptimizeCopyMultiply.Checked := Core.Optimizations.CopyMultiply;
    103   SpinEditDPIX.Value := Core.ScaleDPI1.DPI.X;
    104   SpinEditDPIY.Value := Core.ScaleDPI1.DPI.Y;
    105   CheckBoxDPIAuto.Checked := Core.ScaleDPI1.AutoDetect;
    106   ComboBoxOptimization.ItemIndex := Integer(Core.OptimizationLevel);
    107   SpinEditCellSize.Value := Core.CellSize;
    108   SpinEditMemorySize.Value := Core.MemorySize;
    109   CheckBoxDebugEnabled.Checked := Core.DebugEnabled;
    110   if Core.OptionsFormTabIndex < PageControl1.PageCount then
    111     PageControl1.TabIndex := Core.OptionsFormTabIndex
    112     else PageControl1.TabIndex := 0;
     89  with Core.Core do begin
     90    ComboBoxLanguage.ItemIndex := ComboBoxLanguage.Items.IndexOfObject(Translator.Language);
     91    if ComboBoxLanguage.ItemIndex = -1 then ComboBoxLanguage.ItemIndex := 0;
     92    ComboBoxTheme.ItemIndex := ComboBoxTheme.Items.IndexOfObject(ThemeManager.Theme);
     93    if ComboBoxTheme.ItemIndex = -1 then ComboBoxTheme.ItemIndex := 0;
     94    CheckBoxReopenLastFile.Checked := OpenProjectOnStart;
     95    CheckBoxOptimizeAddSub.Checked := Optimizations.AddSub;
     96    CheckBoxOptimizeSetZero.Checked := Optimizations.SetZero;
     97    CheckBoxOptimizeMerge.Checked := Optimizations.Merge;
     98    CheckBoxOptimizeRelativeIndexes.Checked := Optimizations.RelativeIndexes;
     99    CheckBoxOptimizeCopyMultiply.Checked := Optimizations.CopyMultiply;
     100    SpinEditDPIX.Value := ScaleDPI1.DPI.X;
     101    SpinEditDPIY.Value := ScaleDPI1.DPI.Y;
     102    CheckBoxDPIAuto.Checked := ScaleDPI1.AutoDetect;
     103    ComboBoxOptimization.ItemIndex := Integer(OptimizationLevel);
     104    SpinEditCellSize.Value := CellSize;
     105    SpinEditMemorySize.Value := MemorySize;
     106    CheckBoxDebugEnabled.Checked := DebugEnabled;
     107    if OptionsFormTabIndex < PageControl1.PageCount then
     108      PageControl1.TabIndex := OptionsFormTabIndex
     109      else PageControl1.TabIndex := 0;
     110  end;
    113111  UpdateInterface;
    114112end;
     
    116114procedure TFormOptions.Save;
    117115begin
     116  with Core.Core do begin
    118117  if ComboBoxLanguage.ItemIndex <> -1 then
    119     Core.Translator.Language := TLanguage(ComboBoxLanguage.Items.Objects[ComboBoxLanguage.ItemIndex]);
     118    Translator.Language := TLanguage(ComboBoxLanguage.Items.Objects[ComboBoxLanguage.ItemIndex]);
    120119  if ComboBoxTheme.ItemIndex <> -1 then
    121     Core.ThemeManager.Theme := TTheme(ComboBoxTheme.Items.Objects[ComboBoxTheme.ItemIndex]);
    122   Core.OpenProjectOnStart := CheckBoxReopenLastFile.Checked;
    123   Core.ScaleDPI1.DPI := Point(SpinEditDPIX.Value, SpinEditDPIY.Value);
    124   Core.ScaleDPI1.AutoDetect := CheckBoxDPIAuto.Checked;
    125   Core.OptimizationLevel := TCompilerOptimization(ComboBoxOptimization.ItemIndex);
    126   Core.CellSize := SpinEditCellSize.Value;
    127   Core.MemorySize := SpinEditMemorySize.Value;
    128   Core.Optimizations.AddSub := CheckBoxOptimizeAddSub.Checked;
    129   Core.Optimizations.SetZero := CheckBoxOptimizeSetZero.Checked;
    130   Core.Optimizations.Merge := CheckBoxOptimizeMerge.Checked;
    131   Core.Optimizations.RelativeIndexes := CheckBoxOptimizeRelativeIndexes.Checked;
    132   Core.Optimizations.CopyMultiply := CheckBoxOptimizeCopyMultiply.Checked;
    133   Core.DebugEnabled := CheckBoxDebugEnabled.Checked;
    134   Core.OptionsFormTabIndex := PageControl1.TabIndex;
     120    ThemeManager.Theme := TTheme(ComboBoxTheme.Items.Objects[ComboBoxTheme.ItemIndex]);
     121    OpenProjectOnStart := CheckBoxReopenLastFile.Checked;
     122    ScaleDPI1.DPI := Point(SpinEditDPIX.Value, SpinEditDPIY.Value);
     123    ScaleDPI1.AutoDetect := CheckBoxDPIAuto.Checked;
     124    OptimizationLevel := TCompilerOptimization(ComboBoxOptimization.ItemIndex);
     125    CellSize := SpinEditCellSize.Value;
     126    MemorySize := SpinEditMemorySize.Value;
     127    Optimizations.AddSub := CheckBoxOptimizeAddSub.Checked;
     128    Optimizations.SetZero := CheckBoxOptimizeSetZero.Checked;
     129    Optimizations.Merge := CheckBoxOptimizeMerge.Checked;
     130    Optimizations.RelativeIndexes := CheckBoxOptimizeRelativeIndexes.Checked;
     131    Optimizations.CopyMultiply := CheckBoxOptimizeCopyMultiply.Checked;
     132    DebugEnabled := CheckBoxDebugEnabled.Checked;
     133    OptionsFormTabIndex := PageControl1.TabIndex;
     134  end;
    135135end;
    136136
     
    157157  );
    158158begin
    159   Core.PersistentForm1.Save(Self);
     159  Core.Core.PersistentForm1.Save(Self);
    160160end;
    161161
    162162procedure TFormOptions.FormCreate(Sender: TObject);
    163163begin
    164   Core.Translator.TranslateComponentRecursive(Self);
    165   Core.ThemeManager.UseTheme(Self);
    166   Core.ThemeManager.Themes.LoadToStrings(ComboBoxTheme.Items);
    167   Core.Translator.LanguageListToStrings(ComboBoxLanguage.Items);
     164  with Core.Core do begin
     165    Translator.TranslateComponentRecursive(Self);
     166    ThemeManager.UseTheme(Self);
     167    ThemeManager.Themes.LoadToStrings(ComboBoxTheme.Items);
     168    Translator.LanguageListToStrings(ComboBoxLanguage.Items);
     169  end;
    168170  ComboBoxOptimization.Items.Clear;
    169171  ComboBoxOptimization.Items.Add(CompilerOptimizationText[coNone]);
  • trunk/Forms/FormOutput.lfm

    r144 r145  
    88  ClientWidth = 640
    99  DesignTimePPI = 144
     10  OnCreate = FormCreate
    1011  LCLVersion = '2.2.6.0'
    1112  object Label2: TLabel
  • trunk/Forms/FormOutput.pas

    r144 r145  
    1 unit UFormOutput;
     1unit FormOutput;
    22
    33interface
     
    1313    Label2: TLabel;
    1414    MemoOutput: TMemo;
    15   private
    16     { private declarations }
     15    procedure FormCreate(Sender: TObject);
    1716  public
    1817    procedure Reload;
    1918  end;
    20 
    21 var
    22   FormOutput: TFormOutput;
    2319
    2420
     
    2824
    2925uses
    30   UCore, UTargetInterpretter;
     26  Core, TargetInterpretter;
    3127
    3228{ TFormOutput }
    3329
     30procedure TFormOutput.FormCreate(Sender: TObject);
     31begin
     32  Core.Core.Translator.TranslateComponentRecursive(Self);
     33  Core.Core.ThemeManager.UseTheme(Self);
     34end;
     35
    3436procedure TFormOutput.Reload;
    3537begin
    36   if Core.CurrentTarget is TTargetInterpretter then
    37   with TTargetInterpretter(Core.CurrentTarget) do begin
     38  if Core.Core.CurrentTarget is TTargetInterpretter then
     39  with TTargetInterpretter(Core.Core.CurrentTarget) do begin
    3840    if OutputChanged then begin
    3941      OutputChanged := False;
  • trunk/Forms/FormSourceCode.pas

    r144 r145  
    1 unit UFormSourceCode;
     1unit FormSourceCode;
    22
    33interface
     
    66  Classes, SysUtils, FileUtil, SynEdit, SynHighlighterIni, Forms, Controls,
    77  Graphics, Dialogs, Menus, ActnList,
    8   SynEditHighlighter, SynHighlighterAny, SynHighlighterJava, UBFHighlighter;
     8  SynEditHighlighter, SynHighlighterAny, SynHighlighterJava, BFHighlighter;
    99
    1010type
     
    6060  private
    6161    BFHighlighter: TSynBrainFuckHl;
     62    FOnUpdateInterface: TNotifyEvent;
     63    FOnUpdateStatusBar: TNotifyEvent;
    6264  public
    6365    procedure UpdateInterface;
    6466    procedure UpdateTheme;
     67    property OnUpdateStatusBar: TNotifyEvent read FOnUpdateStatusBar
     68      write FOnUpdateStatusBar;
     69    property OnUpdateInterface: TNotifyEvent read FOnUpdateInterface
     70      write FOnUpdateInterface;
    6571  end;
    6672
    67 var
    68   FormSourceCode: TFormSourceCode;
    69 
    7073
    7174implementation
     
    7477
    7578uses
    76   UCore, UFormMain, UBFCodeTools;
     79  Core, BFCodeTools;
    7780
    7881resourcestring
     
    142145procedure TFormSourceCode.FormCreate(Sender: TObject);
    143146begin
     147  Core.Core.Translator.TranslateComponentRecursive(Self);
     148  Core.Core.ThemeManager.UseTheme(Self);
     149
    144150  BFHighlighter := TSynBrainFuckHl.Create(nil);
    145151  SynEditSource.Highlighter := BFHighlighter;
     
    162168  clLightRed = TColor($8080FF);
    163169begin
    164   if Core.ThemeManager.Theme.Name = 'Dark' then begin
     170  if Core.Core.ThemeManager.Theme.Name = 'Dark' then begin
    165171    BFHighlighter.IoAttri.Foreground := clWhite;
    166172    BFHighlighter.LoopAttri.Foreground := clLightRed;
     
    177183procedure TFormSourceCode.MemoSourceChange(Sender: TObject);
    178184begin
    179   Core.Project.Modified := True;
    180   Core.CurrentTarget.Compiled := False;
    181   FormMain.UpdateInterface;
     185  Core.Core.Project.Modified := True;
     186  Core.Core.CurrentTarget.Compiled := False;
     187  if Assigned(FOnUpdateInterface) then
     188    OnUpdateInterface(Self);
    182189end;
    183190
     
    194201  Shift: TShiftState);
    195202begin
    196   FormMain.UpdateStatusBar;
     203  if Assigned(FOnUpdateStatusBar) then
     204    FOnUpdateStatusBar(Self);
    197205end;
    198206
     
    200208  Shift: TShiftState; X, Y: Integer);
    201209begin
    202   FormMain.UpdateStatusBar;
     210  if Assigned(FOnUpdateStatusBar) then
     211    FOnUpdateStatusBar(Self);
    203212end;
    204213
  • trunk/Forms/FormTargetCode.lfm

    r144 r145  
    11object FormTargetCode: TFormTargetCode
    22  Left = 555
    3   Height = 435
     3  Height = 522
    44  Top = 379
    5   Width = 612
     5  Width = 734
    66  Caption = 'Target code'
    7   ClientHeight = 435
    8   ClientWidth = 612
    9   DesignTimePPI = 120
    10   LCLVersion = '2.0.2.0'
     7  ClientHeight = 522
     8  ClientWidth = 734
     9  DesignTimePPI = 144
     10  OnCreate = FormCreate
     11  LCLVersion = '2.2.6.0'
    1112  inline SynEditTarget: TSynEdit
    1213    Left = 0
    13     Height = 435
     14    Height = 522
    1415    Top = 0
    15     Width = 612
     16    Width = 734
    1617    Align = alClient
    17     Font.Height = -13
     18    Font.Height = -16
    1819    Font.Name = 'Courier New'
    1920    Font.Pitch = fpFixed
     
    2324    PopupMenu = PopupMenuTarget
    2425    TabOrder = 0
    25     Gutter.Width = 68
     26    Gutter.Width = 81
    2627    Gutter.MouseActions = <>
    2728    RightGutter.Width = 0
     
    472473    inline SynLeftGutterPartList1: TSynGutterPartList
    473474      object SynGutterMarks1: TSynGutterMarks
    474         Width = 30
     475        Width = 36
    475476        MouseActions = <>
    476477      end
    477478      object SynGutterLineNumber1: TSynGutterLineNumber
    478         Width = 17
     479        Width = 21
    479480        MouseActions = <>
    480481        MarkupInfo.Background = clBtnFace
     
    486487      end
    487488      object SynGutterChanges1: TSynGutterChanges
    488         Width = 5
     489        Width = 6
    489490        MouseActions = <>
    490491        ModifiedColor = 59900
     
    498499      end
    499500      object SynGutterCodeFolding1: TSynGutterCodeFolding
    500         Width = 13
     501        Width = 15
    501502        MouseActions = <>
    502503        MarkupInfo.Background = clNone
     
    509510  object PopupMenuTarget: TPopupMenu
    510511    Images = Core.ImageListMain
    511     left = 84
    512     top = 100
     512    Left = 101
     513    Top = 120
    513514    object MenuItem20: TMenuItem
    514515      Action = AFormatCode
     
    520521  object ActionList1: TActionList
    521522    Images = Core.ImageListMain
    522     left = 199
    523     top = 39
     523    Left = 239
     524    Top = 47
    524525    object AFormatCode: TAction
    525526      Caption = 'Format code'
  • trunk/Forms/FormTargetCode.pas

    r144 r145  
    1 unit UFormTargetCode;
     1unit FormTargetCode;
    22
    33interface
     
    2323    procedure AFormatCodeExecute(Sender: TObject);
    2424    procedure AShrinkCodeExecute(Sender: TObject);
    25   private
    26     { private declarations }
     25    procedure FormCreate(Sender: TObject);
    2726  public
    2827    procedure SetHighlighter(SourceExt: string);
    2928  end;
    3029
    31 var
    32   FormTargetCode: TFormTargetCode;
    3330
    3431implementation
    3532
    3633{$R *.lfm}
     34
     35uses
     36  Core;
    3737
    3838{ TFormTargetCode }
     
    8484end;
    8585
     86procedure TFormTargetCode.FormCreate(Sender: TObject);
     87begin
     88  Core.Core.Translator.TranslateComponentRecursive(Self);
     89  Core.Core.ThemeManager.UseTheme(Self);
     90end;
     91
    8692procedure TFormTargetCode.SetHighlighter(SourceExt: string);
    8793begin
  • trunk/Forms/FormTargetOptions.pas

    r144 r145  
    1 unit UFormTargetOptions;
     1unit FormTargetOptions;
    22
    33interface
     
    55uses
    66  Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls,
    7   UTarget;
     7  Target;
    88
    99type
     
    2626    procedure FormCreate(Sender: TObject);
    2727    procedure FormShow(Sender: TObject);
    28   private
    29     { private declarations }
    3028  public
    3129    procedure LoadControls(Target: TTarget);
    3230    procedure SaveControls(Target: TTarget);
    3331  end;
    34 
    35 var
    36   FormTargetOptions: TFormTargetOptions;
    3732
    3833
     
    4237
    4338uses
    44   UCore;
     39  Core;
    4540
    4641{ TFormTargetOptions }
     
    6156  var CloseAction: TCloseAction);
    6257begin
    63   Core.PersistentForm1.Save(Self);
     58  Core.Core.PersistentForm1.Save(Self);
    6459end;
    6560
    6661procedure TFormTargetOptions.FormCreate(Sender: TObject);
    6762begin
    68   Core.Translator.TranslateComponentRecursive(Self);
    69   Core.ThemeManager.UseTheme(Self);
     63  Core.Core.Translator.TranslateComponentRecursive(Self);
     64  Core.Core.ThemeManager.UseTheme(Self);
    7065end;
    7166
    7267procedure TFormTargetOptions.FormShow(Sender: TObject);
    7368begin
    74   Core.PersistentForm1.Load(Self);
     69  Core.Core.PersistentForm1.Load(Self);
    7570end;
    7671
  • trunk/Forms/FormTargets.pas

    r144 r145  
    1 unit UFormTargets;
     1unit FormTargets;
    22
    33interface
     
    1818    procedure ListView1DblClick(Sender: TObject);
    1919    procedure ListView1KeyPress(Sender: TObject; var Key: char);
    20   private
    21     { private declarations }
    2220  public
    2321    procedure ReloadList;
    2422  end;
    2523
    26 var
    27   FormTargets: TFormTargets;
    2824
    2925implementation
     
    3228
    3329uses
    34   UCore, UTarget, UFormTargetOptions;
     30  Core, Target, FormTargetOptions;
    3531
    3632{ TFormTargets }
     
    3834procedure TFormTargets.FormShow(Sender: TObject);
    3935begin
    40   Core.PersistentForm1.Load(Self);
     36  Core.Core.PersistentForm1.Load(Self);
    4137  ReloadList;
    4238end;
     
    4440procedure TFormTargets.FormCreate(Sender: TObject);
    4541begin
    46   Core.Translator.TranslateComponentRecursive(Self);
    47   Core.ThemeManager.UseTheme(Self);
     42  Core.Core.Translator.TranslateComponentRecursive(Self);
     43  Core.Core.ThemeManager.UseTheme(Self);
    4844end;
    4945
     
    5147  );
    5248begin
    53   Core.PersistentForm1.Save(Self);
     49  Core.Core.PersistentForm1.Save(Self);
    5450end;
    5551
    5652procedure TFormTargets.ListView1Data(Sender: TObject; Item: TListItem);
    5753begin
    58   if (Item.Index >= 0) and (Item.Index < Core.Targets.Count) then
    59   with TTarget(Core.Targets[Item.Index]) do begin
     54  if (Item.Index >= 0) and (Item.Index < Core.Core.Targets.Count) then
     55  with TTarget(Core.Core.Targets[Item.Index]) do begin
    6056    Item.Caption := Name;
    61     Item.Data := Core.Targets[Item.Index];
     57    Item.Data := Core.Core.Targets[Item.Index];
    6258    Item.SubItems.Add(ExecutorPath);
    6359    Item.SubItems.Add(CompilerPath);
     
    6662
    6763procedure TFormTargets.ListView1DblClick(Sender: TObject);
     64var
     65  FormTargetOptions: TFormTargetOptions;
    6866begin
    6967  FormTargetOptions := TFormTargetOptions.Create(nil);
     
    8684procedure TFormTargets.ReloadList;
    8785begin
    88   ListView1.Items.Count := Core.Targets.Count;
     86  ListView1.Items.Count := Core.Core.Targets.Count;
    8987  ListView1.Refresh;
    9088end;
  • trunk/Languages/LazFuck.cs.po

    r143 r145  
    1010"Content-Type: text/plain; charset=UTF-8\n"
    1111"Content-Transfer-Encoding: 8bit\n"
    12 "X-Generator: Poedit 3.0\n"
     12"X-Generator: Poedit 3.0.1\n"
     13
     14#: bftarget.sunsupportedcommand
     15#, object-pascal-format
     16msgctxt "bftarget.sunsupportedcommand"
     17msgid "Unsupported command %d"
     18msgstr "NepodporovanÃœ příkaz %d"
     19
     20#: formcpu.sstepspersecond
     21msgctxt "formcpu.sstepspersecond"
     22msgid " steps/s"
     23msgstr " kroků/s"
     24
     25#: formmain.schanged
     26msgctxt "formmain.schanged"
     27msgid "Changed"
     28msgstr "Změněno"
     29
     30#: formmain.scloseprojectfirst
     31msgctxt "formmain.scloseprojectfirst"
     32msgid "Project need to be closed before it can be openned"
     33msgstr "Projekt musí bÃœt uzavřen před tím, něş můşe bÃœt otevřen"
     34
     35#: formmain.scompilestart
     36msgctxt "formmain.scompilestart"
     37msgid "Compiling..."
     38msgstr "Překládání..."
     39
     40#: formmain.sdone
     41msgctxt "formmain.sdone"
     42msgid "Done"
     43msgstr "Dokončeno"
     44
     45#: formmain.sdoyouwanttosaveproject
     46msgctxt "formmain.sdoyouwanttosaveproject"
     47msgid "There are unsaved changes in project. Do you want to save them?"
     48msgstr "V projektu Jsou neuloÅŸené změny. Chcete je uloÅŸit?"
     49
     50#: formmain.serror
     51msgctxt "formmain.serror"
     52msgid "Error"
     53msgstr "Chyba"
     54
     55#: formmain.sfilenotfound
     56#, object-pascal-format
     57msgctxt "formmain.sfilenotfound"
     58msgid "File %s not found."
     59msgstr "Soubor %s nenalezen."
     60
     61#: formmain.snewproject
     62msgctxt "formmain.snewproject"
     63msgid "New project"
     64msgstr "NovÃœ projekt"
     65
     66#: formmain.sprogramstarted
     67msgctxt "formmain.sprogramstarted"
     68msgid "Program started"
     69msgstr "Program spuÅ¡těn"
     70
     71#: formmain.sprogramstopped
     72msgctxt "formmain.sprogramstopped"
     73msgid "Program stopped"
     74msgstr "Program zastaven"
     75
     76#: formmain.sunsavedchanges
     77msgctxt "formmain.sunsavedchanges"
     78msgid "Unsaved changes"
     79msgstr "NeuloÅŸené změny"
     80
     81#: formsourcecode.senternumber
     82msgctxt "formsourcecode.senternumber"
     83msgid "Enter number"
     84msgstr "Zadejte číslo"
     85
     86#: formsourcecode.sentertext
     87msgctxt "formsourcecode.sentertext"
     88msgid "Enter text"
     89msgstr "VloÅŸte text"
     90
     91#: formsourcecode.snumbergeneration
     92msgctxt "formsourcecode.snumbergeneration"
     93msgid "Number generation"
     94msgstr "Generování čísla"
     95
     96#: formsourcecode.stextgeneration
     97msgctxt "formsourcecode.stextgeneration"
     98msgid "Text generation"
     99msgstr "Generování textu"
     100
     101#: target.scompiledfilenotfound
     102#, object-pascal-format
     103msgctxt "target.scompiledfilenotfound"
     104msgid "Program compiled file \"%s\" not found"
     105msgstr "Nenalezen sestavenÃœ soubor programu \"%s\""
     106
     107#: target.scompilernotfound
     108#, object-pascal-format
     109msgctxt "target.scompilernotfound"
     110msgid "Compiler \"%s\" not found"
     111msgstr "Nenalezen překladač \"%s\""
     112
     113#: target.scompiling
     114msgctxt "target.scompiling"
     115msgid "Compiling"
     116msgstr "Překládání"
     117
     118#: target.sexecutornotfound
     119#, object-pascal-format
     120msgctxt "target.sexecutornotfound"
     121msgid "Executor \"%s\" not found"
     122msgstr "SpouÅ¡těč \"%s\" nenalezen"
     123
     124#: target.sfirstindexhigherthanlastindex
     125msgctxt "target.sfirstindexhigherthanlastindex"
     126msgid "First index higher than last index"
     127msgstr "První index větší neÅŸ poslední index"
     128
     129#: target.sfirstindexoutofrange
     130msgctxt "target.sfirstindexoutofrange"
     131msgid "First index out of range"
     132msgstr "První index mimo rozsah"
     133
     134#: target.slastindexoutofrange
     135msgctxt "target.slastindexoutofrange"
     136msgid "Last index out of range"
     137msgstr "Poslední index mimo rozsah"
     138
     139#: target.snone
     140msgctxt "target.snone"
     141msgid "None"
     142msgstr "Ŝádné"
     143
     144#: target.snormal
     145msgctxt "target.snormal"
     146msgid "Normal"
     147msgstr "Obyčejné"
     148
     149#: target.spaused
     150msgctxt "target.spaused"
     151msgid "Paused"
     152msgstr "Zastaveno"
     153
     154#: target.sprogramindexerror
     155#, object-pascal-format
     156msgctxt "target.sprogramindexerror"
     157msgid "Old program index higher than new (old: %d, new: %d)"
     158msgstr "StarÃœ programová index vyšší neÅŸ novÃœ (stará: %d, novÃœ: %d)"
     159
     160#: target.srunning
     161msgctxt "target.srunning"
     162msgid "Running"
     163msgstr "Běşící"
     164
     165#: target.sstopped
     166msgctxt "target.sstopped"
     167msgid "Stopped"
     168msgstr "Zastaveno"
     169
     170#: targetinterpretter.sbreakpointindexerror
     171#, object-pascal-format
     172msgctxt "targetinterpretter.sbreakpointindexerror"
     173msgid "Break point index error: %d"
     174msgstr "Chyba indexu bodu přeruÅ¡ení: %d"
     175
     176#: targetinterpretter.sjumptablecollision
     177msgctxt "targetinterpretter.sjumptablecollision"
     178msgid "Jump table collision"
     179msgstr "Kolize v tabulce skoků"
     180
     181#: targetinterpretter.sjumptableinconsistent
     182msgctxt "targetinterpretter.sjumptableinconsistent"
     183msgid "Jump table is inconsistent"
     184msgstr "Nekonzistentní skoková tabulka"
     185
     186#: targetinterpretter.sprogramlowermemorylimit
     187msgctxt "targetinterpretter.sprogramlowermemorylimit"
     188msgid "Program run over lower memory limit"
     189msgstr "Program překročil dolní rozsah paměti"
     190
     191#: targetinterpretter.sprogramnotrunning
     192msgctxt "targetinterpretter.sprogramnotrunning"
     193msgid "Program not running"
     194msgstr "Program neběşí"
     195
     196#: targetinterpretter.sprogramuppermemorylimit
     197msgctxt "targetinterpretter.sprogramuppermemorylimit"
     198msgid "Program run over upper memory limit"
     199msgstr "Program překročil horní rozsah paměti"
     200
     201#: targetinterpretter.sunsupportedcommand
     202msgctxt "targetinterpretter.sunsupportedcommand"
     203msgid "Unsupported command"
     204msgstr "NepodporovanÃœ příkaz"
    13205
    14206#: tcore.applicationinfo.description
     
    27219
    28220#: tformcompilemultiple.caption
    29 msgctxt "tformcompilemultiple.caption"
    30221msgid "Compile multiple"
    31222msgstr "PřeloÅŸit více"
     
    46237#: tformcpu.label3.caption
    47238msgid "Program pointer:"
    48 msgstr "Čítač programu:"
     239msgstr "Ukazatel programu:"
    49240
    50241#: tformcpu.label4.caption
     
    463654#: tformtargetcode.aformatcode.caption
    464655msgid "Format code"
    465 msgstr "Formátovat kód"
     656msgstr ""
    466657
    467658#: tformtargetcode.ashrinkcode.caption
    468659msgid "Shrink code"
    469 msgstr "Srazit kód"
     660msgstr ""
    470661
    471662#: tformtargetcode.caption
     663#, fuzzy
    472664msgctxt "tformtargetcode.caption"
    473665msgid "Target code"
     
    496688#: tformtargetoptions.caption
    497689msgid "Target options"
    498 msgstr "Nastavení cíle"
     690msgstr "Volby cíle"
    499691
    500692#: tformtargetoptions.label1.caption
     
    526718msgstr "Cesta překladače"
    527719
    528 #: ubftarget.sunsupportedcommand
    529 #, object-pascal-format
    530 msgid "Unsupported command %d"
    531 msgstr "NepodporovanÃœ příkaz %d"
    532 
    533 #: uformcpu.sstepspersecond
    534 msgid " steps/s"
    535 msgstr " kroků/s"
    536 
    537 #: uformmain.schanged
    538 msgid "Changed"
    539 msgstr "Změněno"
    540 
    541 #: uformmain.scloseprojectfirst
    542 msgid "Project need to be closed before it can be openned"
    543 msgstr "Projekt musí bÃœt uzavřen před tím, něş můşe bÃœt otevřen"
    544 
    545 #: uformmain.scompilestart
    546 msgid "Compiling..."
    547 msgstr "Překládání..."
    548 
    549 #: uformmain.sdone
    550 msgid "Done"
    551 msgstr "Dokončeno"
    552 
    553 #: uformmain.sdoyouwanttosaveproject
    554 msgid "There are unsaved changes in project. Do you want to save them?"
    555 msgstr "V projektu Jsou neuloÅŸené změny. Chcete je uloÅŸit?"
    556 
    557 #: uformmain.serror
    558 msgid "Error"
    559 msgstr "Chyba"
    560 
    561 #: uformmain.sfilenotfound
    562 #, object-pascal-format
    563 msgid "File %s not found."
    564 msgstr "Soubor %s nenalezen."
    565 
    566 #: uformmain.snewproject
    567 msgid "New project"
    568 msgstr "NovÃœ projekt"
    569 
    570 #: uformmain.sprogramstarted
    571 msgid "Program started"
    572 msgstr "Program spuÅ¡těn"
    573 
    574 #: uformmain.sprogramstopped
    575 msgid "Program stopped"
    576 msgstr "Program zastaven"
    577 
    578 #: uformmain.sunsavedchanges
    579 msgid "Unsaved changes"
    580 msgstr "NeuloÅŸené změny"
    581 
    582 #: uformsourcecode.senternumber
    583 msgid "Enter number"
    584 msgstr "Zadejte číslo"
    585 
    586 #: uformsourcecode.sentertext
    587 msgid "Enter text"
    588 msgstr "VloÅŸte text"
    589 
    590 #: uformsourcecode.snumbergeneration
    591 msgid "Number generation"
    592 msgstr "Generování čísla"
    593 
    594 #: uformsourcecode.stextgeneration
    595 msgid "Text generation"
    596 msgstr "Generování textu"
    597 
    598 #: utarget.scompiledfilenotfound
    599 #, object-pascal-format
    600 msgid "Program compiled file \"%s\" not found"
    601 msgstr "Nenalezen sestavenÃœ soubor programu \"%s\""
    602 
    603 #: utarget.scompilernotfound
    604 #, object-pascal-format
    605 msgid "Compiler \"%s\" not found"
    606 msgstr "Nenalezen překladač \"%s\""
    607 
    608 #: utarget.scompiling
    609 msgid "Compiling"
    610 msgstr "Překládání"
    611 
    612 #: utarget.sexecutornotfound
    613 #, object-pascal-format
    614 msgid "Executor \"%s\" not found"
    615 msgstr "SpouÅ¡těč \"%s\" nenalezen"
    616 
    617 #: utarget.sfirstindexhigherthanlastindex
    618 msgid "First index higher than last index"
    619 msgstr "První index větší neÅŸ poslední index"
    620 
    621 #: utarget.sfirstindexoutofrange
    622 msgid "First index out of range"
    623 msgstr "První index mimo rozsah"
    624 
    625 #: utarget.slastindexoutofrange
    626 msgid "Last index out of range"
    627 msgstr "Poslední index mimo rozsah"
    628 
    629 #: utarget.snone
    630 msgid "None"
    631 msgstr "Ŝádné"
    632 
    633 #: utarget.snormal
    634 msgid "Normal"
    635 msgstr "Obyčejné"
    636 
    637 #: utarget.spaused
    638 msgid "Paused"
    639 msgstr "Zastaveno"
    640 
    641 #: utarget.sprogramindexerror
    642 #, object-pascal-format
    643 msgid "Old program index higher than new (old: %d, new: %d)"
    644 msgstr "StarÃœ programová index vyšší neÅŸ novÃœ (stará: %d, novÃœ: %d)"
    645 
    646 #: utarget.srunning
    647 msgid "Running"
    648 msgstr "Běşící"
    649 
    650 #: utarget.sstopped
    651 msgid "Stopped"
    652 msgstr "Zastaveno"
    653 
    654 #: utargetinterpretter.sbreakpointindexerror
    655 #, object-pascal-format
    656 msgid "Break point index error: %d"
    657 msgstr "Chyba indexu bodu přeruÅ¡ení: %d"
    658 
    659 #: utargetinterpretter.sjumptablecollision
    660 msgid "Jump table collision"
    661 msgstr "Kolize v tabulce skoků"
    662 
    663 #: utargetinterpretter.sjumptableinconsistent
    664 msgctxt "utargetinterpretter.sjumptableinconsistent"
    665 msgid "Jump table is inconsistent"
    666 msgstr "Nekonzistentní skoková tabulka"
    667 
    668 #: utargetinterpretter.sprogramlowermemorylimit
    669 msgid "Program run over lower memory limit"
    670 msgstr "Program překročil dolní rozsah paměti"
    671 
    672 #: utargetinterpretter.sprogramnotrunning
    673 msgid "Program not running"
    674 msgstr "Program neběşí"
    675 
    676 #: utargetinterpretter.sprogramuppermemorylimit
    677 msgid "Program run over upper memory limit"
    678 msgstr "Program překročil horní rozsah paměti"
    679 
    680 #: utargetinterpretter.sunsupportedcommand
    681 msgid "Unsupported command"
    682 msgstr "NepodporovanÃœ příkaz"
  • trunk/Languages/LazFuck.pot

    r143 r145  
    11msgid ""
    22msgstr "Content-Type: text/plain; charset=UTF-8"
     3
     4#: bftarget.sunsupportedcommand
     5#, object-pascal-format
     6msgctxt "bftarget.sunsupportedcommand"
     7msgid "Unsupported command %d"
     8msgstr ""
     9
     10#: formcpu.sstepspersecond
     11msgctxt "formcpu.sstepspersecond"
     12msgid " steps/s"
     13msgstr ""
     14
     15#: formmain.schanged
     16msgctxt "formmain.schanged"
     17msgid "Changed"
     18msgstr ""
     19
     20#: formmain.scloseprojectfirst
     21msgctxt "formmain.scloseprojectfirst"
     22msgid "Project need to be closed before it can be openned"
     23msgstr ""
     24
     25#: formmain.scompilestart
     26msgctxt "formmain.scompilestart"
     27msgid "Compiling..."
     28msgstr ""
     29
     30#: formmain.sdone
     31msgctxt "formmain.sdone"
     32msgid "Done"
     33msgstr ""
     34
     35#: formmain.sdoyouwanttosaveproject
     36msgctxt "formmain.sdoyouwanttosaveproject"
     37msgid "There are unsaved changes in project. Do you want to save them?"
     38msgstr ""
     39
     40#: formmain.serror
     41msgctxt "formmain.serror"
     42msgid "Error"
     43msgstr ""
     44
     45#: formmain.sfilenotfound
     46#, object-pascal-format
     47msgctxt "formmain.sfilenotfound"
     48msgid "File %s not found."
     49msgstr ""
     50
     51#: formmain.snewproject
     52msgctxt "formmain.snewproject"
     53msgid "New project"
     54msgstr ""
     55
     56#: formmain.sprogramstarted
     57msgctxt "formmain.sprogramstarted"
     58msgid "Program started"
     59msgstr ""
     60
     61#: formmain.sprogramstopped
     62msgctxt "formmain.sprogramstopped"
     63msgid "Program stopped"
     64msgstr ""
     65
     66#: formmain.sunsavedchanges
     67msgctxt "formmain.sunsavedchanges"
     68msgid "Unsaved changes"
     69msgstr ""
     70
     71#: formsourcecode.senternumber
     72msgctxt "formsourcecode.senternumber"
     73msgid "Enter number"
     74msgstr ""
     75
     76#: formsourcecode.sentertext
     77msgctxt "formsourcecode.sentertext"
     78msgid "Enter text"
     79msgstr ""
     80
     81#: formsourcecode.snumbergeneration
     82msgctxt "formsourcecode.snumbergeneration"
     83msgid "Number generation"
     84msgstr ""
     85
     86#: formsourcecode.stextgeneration
     87msgctxt "formsourcecode.stextgeneration"
     88msgid "Text generation"
     89msgstr ""
     90
     91#: target.scompiledfilenotfound
     92#, object-pascal-format
     93msgctxt "target.scompiledfilenotfound"
     94msgid "Program compiled file \"%s\" not found"
     95msgstr ""
     96
     97#: target.scompilernotfound
     98#, object-pascal-format
     99msgctxt "target.scompilernotfound"
     100msgid "Compiler \"%s\" not found"
     101msgstr ""
     102
     103#: target.scompiling
     104msgctxt "target.scompiling"
     105msgid "Compiling"
     106msgstr ""
     107
     108#: target.sexecutornotfound
     109#, object-pascal-format
     110msgctxt "target.sexecutornotfound"
     111msgid "Executor \"%s\" not found"
     112msgstr ""
     113
     114#: target.sfirstindexhigherthanlastindex
     115msgctxt "target.sfirstindexhigherthanlastindex"
     116msgid "First index higher than last index"
     117msgstr ""
     118
     119#: target.sfirstindexoutofrange
     120msgctxt "target.sfirstindexoutofrange"
     121msgid "First index out of range"
     122msgstr ""
     123
     124#: target.slastindexoutofrange
     125msgctxt "target.slastindexoutofrange"
     126msgid "Last index out of range"
     127msgstr ""
     128
     129#: target.snone
     130msgctxt "target.snone"
     131msgid "None"
     132msgstr ""
     133
     134#: target.snormal
     135msgctxt "target.snormal"
     136msgid "Normal"
     137msgstr ""
     138
     139#: target.spaused
     140msgctxt "target.spaused"
     141msgid "Paused"
     142msgstr ""
     143
     144#: target.sprogramindexerror
     145#, object-pascal-format
     146msgctxt "target.sprogramindexerror"
     147msgid "Old program index higher than new (old: %d, new: %d)"
     148msgstr ""
     149
     150#: target.srunning
     151msgctxt "target.srunning"
     152msgid "Running"
     153msgstr ""
     154
     155#: target.sstopped
     156msgctxt "target.sstopped"
     157msgid "Stopped"
     158msgstr ""
     159
     160#: targetinterpretter.sbreakpointindexerror
     161#, object-pascal-format
     162msgctxt "targetinterpretter.sbreakpointindexerror"
     163msgid "Break point index error: %d"
     164msgstr ""
     165
     166#: targetinterpretter.sjumptablecollision
     167msgctxt "targetinterpretter.sjumptablecollision"
     168msgid "Jump table collision"
     169msgstr ""
     170
     171#: targetinterpretter.sjumptableinconsistent
     172msgctxt "targetinterpretter.sjumptableinconsistent"
     173msgid "Jump table is inconsistent"
     174msgstr ""
     175
     176#: targetinterpretter.sprogramlowermemorylimit
     177msgctxt "targetinterpretter.sprogramlowermemorylimit"
     178msgid "Program run over lower memory limit"
     179msgstr ""
     180
     181#: targetinterpretter.sprogramnotrunning
     182msgctxt "targetinterpretter.sprogramnotrunning"
     183msgid "Program not running"
     184msgstr ""
     185
     186#: targetinterpretter.sprogramuppermemorylimit
     187msgctxt "targetinterpretter.sprogramuppermemorylimit"
     188msgid "Program run over upper memory limit"
     189msgstr ""
     190
     191#: targetinterpretter.sunsupportedcommand
     192msgctxt "targetinterpretter.sunsupportedcommand"
     193msgid "Unsupported command"
     194msgstr ""
    3195
    4196#: tcore.applicationinfo.description
     
    17209
    18210#: tformcompilemultiple.caption
    19 msgctxt "tformcompilemultiple.caption"
    20211msgid "Compile multiple"
    21212msgstr ""
     
    516707msgstr ""
    517708
    518 #: ubftarget.sunsupportedcommand
    519 #, object-pascal-format
    520 msgid "Unsupported command %d"
    521 msgstr ""
    522 
    523 #: uformcpu.sstepspersecond
    524 msgid " steps/s"
    525 msgstr ""
    526 
    527 #: uformmain.schanged
    528 msgid "Changed"
    529 msgstr ""
    530 
    531 #: uformmain.scloseprojectfirst
    532 msgid "Project need to be closed before it can be openned"
    533 msgstr ""
    534 
    535 #: uformmain.scompilestart
    536 msgid "Compiling..."
    537 msgstr ""
    538 
    539 #: uformmain.sdone
    540 msgid "Done"
    541 msgstr ""
    542 
    543 #: uformmain.sdoyouwanttosaveproject
    544 msgid "There are unsaved changes in project. Do you want to save them?"
    545 msgstr ""
    546 
    547 #: uformmain.serror
    548 msgid "Error"
    549 msgstr ""
    550 
    551 #: uformmain.sfilenotfound
    552 #, object-pascal-format
    553 msgid "File %s not found."
    554 msgstr ""
    555 
    556 #: uformmain.snewproject
    557 msgid "New project"
    558 msgstr ""
    559 
    560 #: uformmain.sprogramstarted
    561 msgid "Program started"
    562 msgstr ""
    563 
    564 #: uformmain.sprogramstopped
    565 msgid "Program stopped"
    566 msgstr ""
    567 
    568 #: uformmain.sunsavedchanges
    569 msgid "Unsaved changes"
    570 msgstr ""
    571 
    572 #: uformsourcecode.senternumber
    573 msgid "Enter number"
    574 msgstr ""
    575 
    576 #: uformsourcecode.sentertext
    577 msgid "Enter text"
    578 msgstr ""
    579 
    580 #: uformsourcecode.snumbergeneration
    581 msgid "Number generation"
    582 msgstr ""
    583 
    584 #: uformsourcecode.stextgeneration
    585 msgid "Text generation"
    586 msgstr ""
    587 
    588 #: utarget.scompiledfilenotfound
    589 #, object-pascal-format
    590 msgid "Program compiled file \"%s\" not found"
    591 msgstr ""
    592 
    593 #: utarget.scompilernotfound
    594 #, object-pascal-format
    595 msgid "Compiler \"%s\" not found"
    596 msgstr ""
    597 
    598 #: utarget.scompiling
    599 msgid "Compiling"
    600 msgstr ""
    601 
    602 #: utarget.sexecutornotfound
    603 #, object-pascal-format
    604 msgid "Executor \"%s\" not found"
    605 msgstr ""
    606 
    607 #: utarget.sfirstindexhigherthanlastindex
    608 msgid "First index higher than last index"
    609 msgstr ""
    610 
    611 #: utarget.sfirstindexoutofrange
    612 msgid "First index out of range"
    613 msgstr ""
    614 
    615 #: utarget.slastindexoutofrange
    616 msgid "Last index out of range"
    617 msgstr ""
    618 
    619 #: utarget.snone
    620 msgid "None"
    621 msgstr ""
    622 
    623 #: utarget.snormal
    624 msgid "Normal"
    625 msgstr ""
    626 
    627 #: utarget.spaused
    628 msgid "Paused"
    629 msgstr ""
    630 
    631 #: utarget.sprogramindexerror
    632 #, object-pascal-format
    633 msgid "Old program index higher than new (old: %d, new: %d)"
    634 msgstr ""
    635 
    636 #: utarget.srunning
    637 msgid "Running"
    638 msgstr ""
    639 
    640 #: utarget.sstopped
    641 msgid "Stopped"
    642 msgstr ""
    643 
    644 #: utargetinterpretter.sbreakpointindexerror
    645 #, object-pascal-format
    646 msgid "Break point index error: %d"
    647 msgstr ""
    648 
    649 #: utargetinterpretter.sjumptablecollision
    650 msgid "Jump table collision"
    651 msgstr ""
    652 
    653 #: utargetinterpretter.sjumptableinconsistent
    654 msgctxt "utargetinterpretter.sjumptableinconsistent"
    655 msgid "Jump table is inconsistent"
    656 msgstr ""
    657 
    658 #: utargetinterpretter.sprogramlowermemorylimit
    659 msgid "Program run over lower memory limit"
    660 msgstr ""
    661 
    662 #: utargetinterpretter.sprogramnotrunning
    663 msgid "Program not running"
    664 msgstr ""
    665 
    666 #: utargetinterpretter.sprogramuppermemorylimit
    667 msgid "Program run over upper memory limit"
    668 msgstr ""
    669 
    670 #: utargetinterpretter.sunsupportedcommand
    671 msgid "Unsupported command"
    672 msgstr ""
    673 
  • trunk/LazFuck.lpi

    r144 r145  
    103103      </Unit0>
    104104      <Unit1>
    105         <Filename Value="Forms\UFormMain.pas"/>
     105        <Filename Value="Forms\FormMain.pas"/>
    106106        <IsPartOfProject Value="True"/>
    107107        <ComponentName Value="FormMain"/>
     
    110110      </Unit1>
    111111      <Unit2>
    112         <Filename Value="Forms\UFormOptions.pas"/>
     112        <Filename Value="Forms\FormOptions.pas"/>
    113113        <IsPartOfProject Value="True"/>
    114114        <ComponentName Value="FormOptions"/>
     
    117117      </Unit2>
    118118      <Unit3>
    119         <Filename Value="Forms\UFormCPU.pas"/>
     119        <Filename Value="Forms\FormCPU.pas"/>
    120120        <IsPartOfProject Value="True"/>
    121121        <ComponentName Value="FormCPU"/>
     
    124124      </Unit3>
    125125      <Unit4>
    126         <Filename Value="Forms\UFormTargets.pas"/>
     126        <Filename Value="Forms\FormTargets.pas"/>
    127127        <IsPartOfProject Value="True"/>
    128128        <ComponentName Value="FormTargets"/>
     
    131131      </Unit4>
    132132      <Unit5>
    133         <Filename Value="UTarget.pas"/>
     133        <Filename Value="Target.pas"/>
    134134        <IsPartOfProject Value="True"/>
    135135      </Unit5>
    136136      <Unit6>
    137         <Filename Value="Target\UTargetC.pas"/>
     137        <Filename Value="Target\TargetC.pas"/>
    138138        <IsPartOfProject Value="True"/>
    139139      </Unit6>
    140140      <Unit7>
    141         <Filename Value="Target\UTargetDelphi.pas"/>
     141        <Filename Value="Target\TargetDelphi.pas"/>
    142142        <IsPartOfProject Value="True"/>
    143143      </Unit7>
    144144      <Unit8>
    145         <Filename Value="Target\UTargetInterpretter.pas"/>
     145        <Filename Value="Target\TargetInterpretter.pas"/>
    146146        <IsPartOfProject Value="True"/>
    147147      </Unit8>
    148148      <Unit9>
    149         <Filename Value="Target\UTargetPHP.pas"/>
     149        <Filename Value="Target\TargetPHP.pas"/>
    150150        <IsPartOfProject Value="True"/>
    151151      </Unit9>
    152152      <Unit10>
    153         <Filename Value="Forms\UFormOutput.pas"/>
     153        <Filename Value="Forms\FormOutput.pas"/>
    154154        <IsPartOfProject Value="True"/>
    155155        <ComponentName Value="FormOutput"/>
     
    158158      </Unit10>
    159159      <Unit11>
    160         <Filename Value="Forms\UFormInput.pas"/>
     160        <Filename Value="Forms\FormInput.pas"/>
    161161        <IsPartOfProject Value="True"/>
    162162        <ComponentName Value="FormInput"/>
     
    165165      </Unit11>
    166166      <Unit12>
    167         <Filename Value="Forms\UFormMemory.pas"/>
     167        <Filename Value="Forms\FormMemory.pas"/>
    168168        <IsPartOfProject Value="True"/>
    169169        <ComponentName Value="FormMemory"/>
     
    172172      </Unit12>
    173173      <Unit13>
    174         <Filename Value="Forms\UFormMessages.pas"/>
     174        <Filename Value="Forms\FormMessages.pas"/>
    175175        <IsPartOfProject Value="True"/>
    176176        <ComponentName Value="FormMessages"/>
     
    179179      </Unit13>
    180180      <Unit14>
    181         <Filename Value="Target\UTargetJava.pas"/>
     181        <Filename Value="Target\TargetJava.pas"/>
    182182        <IsPartOfProject Value="True"/>
    183183      </Unit14>
    184184      <Unit15>
    185         <Filename Value="Forms\UFormSourceCode.pas"/>
     185        <Filename Value="Forms\FormSourceCode.pas"/>
    186186        <IsPartOfProject Value="True"/>
    187187        <ComponentName Value="FormSourceCode"/>
     
    190190      </Unit15>
    191191      <Unit16>
    192         <Filename Value="Forms\UFormTargetCode.pas"/>
     192        <Filename Value="Forms\FormTargetCode.pas"/>
    193193        <IsPartOfProject Value="True"/>
    194194        <ComponentName Value="FormTargetCode"/>
     
    197197      </Unit16>
    198198      <Unit17>
    199         <Filename Value="Forms\UFormTargetOptions.pas"/>
     199        <Filename Value="Forms\FormTargetOptions.pas"/>
    200200        <IsPartOfProject Value="True"/>
    201201        <ComponentName Value="FormTargetOptions"/>
     
    204204      </Unit17>
    205205      <Unit18>
    206         <Filename Value="UCore.pas"/>
     206        <Filename Value="Core.pas"/>
    207207        <IsPartOfProject Value="True"/>
    208208        <ComponentName Value="Core"/>
     
    211211      </Unit18>
    212212      <Unit19>
    213         <Filename Value="Target\UTargetFPC.pas"/>
     213        <Filename Value="Target\TargetFPC.pas"/>
    214214        <IsPartOfProject Value="True"/>
    215215      </Unit19>
    216216      <Unit20>
    217         <Filename Value="Forms\UFormLog.pas"/>
     217        <Filename Value="Forms\FormLog.pas"/>
    218218        <IsPartOfProject Value="True"/>
    219219        <ComponentName Value="FormLog"/>
     
    222222      </Unit20>
    223223      <Unit21>
    224         <Filename Value="UProject.pas"/>
     224        <Filename Value="Project.pas"/>
    225225        <IsPartOfProject Value="True"/>
    226226      </Unit21>
    227227      <Unit22>
    228         <Filename Value="UBFTarget.pas"/>
     228        <Filename Value="BFTarget.pas"/>
    229229        <IsPartOfProject Value="True"/>
    230230      </Unit22>
    231231      <Unit23>
    232         <Filename Value="Target\UTargetPython.pas"/>
     232        <Filename Value="Target\TargetPython.pas"/>
    233233        <IsPartOfProject Value="True"/>
    234234      </Unit23>
    235235      <Unit24>
    236         <Filename Value="Target\UTargetCSharp.pas"/>
     236        <Filename Value="Target\TargetCSharp.pas"/>
    237237        <IsPartOfProject Value="True"/>
    238238      </Unit24>
    239239      <Unit25>
    240         <Filename Value="UBFHighlighter.pas"/>
     240        <Filename Value="BFHighlighter.pas"/>
    241241        <IsPartOfProject Value="True"/>
    242242      </Unit25>
    243243      <Unit26>
    244         <Filename Value="Target\UTargetJavascript.pas"/>
     244        <Filename Value="Target\TargetJavascript.pas"/>
    245245        <IsPartOfProject Value="True"/>
    246246      </Unit26>
    247247      <Unit27>
    248         <Filename Value="Forms\UFormCompileMultiple.pas"/>
     248        <Filename Value="Forms\FormCompileMultiple.pas"/>
    249249        <IsPartOfProject Value="True"/>
    250250        <ComponentName Value="FormCompileMultiple"/>
     
    253253      </Unit27>
    254254      <Unit28>
    255         <Filename Value="UBFCodeTools.pas"/>
     255        <Filename Value="BFCodeTools.pas"/>
    256256        <IsPartOfProject Value="True"/>
    257257      </Unit28>
  • trunk/LazFuck.lpr

    r143 r145  
    99  {$ENDIF}
    1010  Interfaces, // this includes the LCL widgetset
    11   Forms, UTarget, UFormCPU, UFormMain, UFormOutput, UFormInput, UFormMemory,
    12   UFormMessages, UFormSourceCode, UFormTargetCode, UCore, Common,
    13   SysUtils, UBFCodeTools;
     11  Forms, Target, FormCPU, FormMain, FormOutput, FormInput, FormMemory,
     12  FormMessages, FormSourceCode, FormTargetCode, Core, Common,
     13  SysUtils, BFCodeTools;
    1414
    1515{$R *.res}
     
    3131  RequireDerivedFormResource := True;
    3232  Application.Initialize;
    33   Application.CreateForm(TCore, Core);
    34   Application.CreateForm(TFormMain, FormMain);
    35   Application.CreateForm(TFormCPU, FormCPU);
    36   Application.CreateForm(TFormOutput, FormOutput);
    37   Application.CreateForm(TFormInput, FormInput);
    38   Application.CreateForm(TFormMemory, FormMemory);
    39   Application.CreateForm(TFormMessages, FormMessages);
    40   Application.CreateForm(TFormSourceCode, FormSourceCode);
    41   Application.CreateForm(TFormTargetCode, FormTargetCode);
     33  Application.CreateForm(TCore, Core.Core);
    4234  Application.Run;
    4335end.
  • trunk/Packages/Common/AboutDialog.pas

    r144 r145  
    1 unit UAboutDialog;
     1unit AboutDialog;
    22
    33interface
     
    55uses
    66  Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, Menus,
    7   ExtCtrls, UApplicationInfo, UCommon, UTranslator, UTheme, UFormAbout;
     7  ExtCtrls, ApplicationInfo, Common, Translator, Theme, FormAbout;
    88
    99type
     
    5050
    5151end.
    52 
  • trunk/Packages/Common/ApplicationInfo.pas

    r144 r145  
    1 unit UApplicationInfo;
     1unit ApplicationInfo;
    22
    33interface
    44
    55uses
    6   SysUtils, Classes, Forms, URegistry, Controls, Graphics, LCLType;
     6  SysUtils, Classes, Forms, RegistryEx, Controls, Graphics, LCLType;
    77
    88type
     
    5757procedure Register;
    5858
     59
    5960implementation
    6061
  • trunk/Packages/Common/Common.Delay.pas

    r144 r145  
    1 unit UDelay;
     1unit Common.Delay;
    22
    33interface
     
    7171
    7272end.
    73 
  • trunk/Packages/Common/Common.lpk

    r129 r145  
    3333      <Other>
    3434        <CompilerMessages>
    35           <IgnoredMessages idx6058="True" idx5024="True" idx3124="True" idx3123="True"/>
     35          <IgnoredMessages idx6058="True" idx5071="True" idx5024="True" idx3124="True" idx3123="True"/>
    3636        </CompilerMessages>
    3737      </Other>
     
    4141Source: https://svn.zdechov.net/PascalClassLibrary/Common/"/>
    4242    <License Value="Copy left."/>
    43     <Version Minor="9"/>
    44     <Files Count="29">
     43    <Version Minor="11"/>
     44    <Files Count="33">
    4545      <Item1>
    4646        <Filename Value="StopWatch.pas"/>
     
    4848      </Item1>
    4949      <Item2>
    50         <Filename Value="UCommon.pas"/>
    51         <UnitName Value="UCommon"/>
     50        <Filename Value="Common.pas"/>
     51        <UnitName Value="Common"/>
    5252      </Item2>
    5353      <Item3>
    54         <Filename Value="UDebugLog.pas"/>
    55         <HasRegisterProc Value="True"/>
    56         <UnitName Value="UDebugLog"/>
     54        <Filename Value="DebugLog.pas"/>
     55        <HasRegisterProc Value="True"/>
     56        <UnitName Value="DebugLog"/>
    5757      </Item3>
    5858      <Item4>
    59         <Filename Value="UDelay.pas"/>
    60         <UnitName Value="UDelay"/>
     59        <Filename Value="Common.Delay.pas"/>
     60        <UnitName Value="Common.Delay"/>
    6161      </Item4>
    6262      <Item5>
    63         <Filename Value="UPrefixMultiplier.pas"/>
    64         <HasRegisterProc Value="True"/>
    65         <UnitName Value="UPrefixMultiplier"/>
     63        <Filename Value="PrefixMultiplier.pas"/>
     64        <HasRegisterProc Value="True"/>
     65        <UnitName Value="PrefixMultiplier"/>
    6666      </Item5>
    6767      <Item6>
    68         <Filename Value="UURI.pas"/>
    69         <UnitName Value="UURI"/>
     68        <Filename Value="URI.pas"/>
     69        <UnitName Value="URI"/>
    7070      </Item6>
    7171      <Item7>
    72         <Filename Value="UThreading.pas"/>
    73         <UnitName Value="UThreading"/>
     72        <Filename Value="Threading.pas"/>
     73        <UnitName Value="Threading"/>
    7474      </Item7>
    7575      <Item8>
    76         <Filename Value="UMemory.pas"/>
    77         <UnitName Value="UMemory"/>
     76        <Filename Value="Memory.pas"/>
     77        <UnitName Value="Memory"/>
    7878      </Item8>
    7979      <Item9>
    80         <Filename Value="UResetableThread.pas"/>
    81         <UnitName Value="UResetableThread"/>
     80        <Filename Value="ResetableThread.pas"/>
     81        <UnitName Value="ResetableThread"/>
    8282      </Item9>
    8383      <Item10>
    84         <Filename Value="UPool.pas"/>
    85         <UnitName Value="UPool"/>
     84        <Filename Value="Pool.pas"/>
     85        <UnitName Value="Pool"/>
    8686      </Item10>
    8787      <Item11>
    88         <Filename Value="ULastOpenedList.pas"/>
    89         <HasRegisterProc Value="True"/>
    90         <UnitName Value="ULastOpenedList"/>
     88        <Filename Value="LastOpenedList.pas"/>
     89        <HasRegisterProc Value="True"/>
     90        <UnitName Value="LastOpenedList"/>
    9191      </Item11>
    9292      <Item12>
    93         <Filename Value="URegistry.pas"/>
    94         <UnitName Value="URegistry"/>
     93        <Filename Value="RegistryEx.pas"/>
     94        <UnitName Value="RegistryEx"/>
    9595      </Item12>
    9696      <Item13>
    97         <Filename Value="UJobProgressView.pas"/>
    98         <HasRegisterProc Value="True"/>
    99         <UnitName Value="UJobProgressView"/>
     97        <Filename Value="JobProgressView.pas"/>
     98        <HasRegisterProc Value="True"/>
     99        <UnitName Value="JobProgressView"/>
    100100      </Item13>
    101101      <Item14>
    102         <Filename Value="UXMLUtils.pas"/>
    103         <UnitName Value="UXMLUtils"/>
     102        <Filename Value="XML.pas"/>
     103        <UnitName Value="XML"/>
    104104      </Item14>
    105105      <Item15>
    106         <Filename Value="UApplicationInfo.pas"/>
    107         <HasRegisterProc Value="True"/>
    108         <UnitName Value="UApplicationInfo"/>
     106        <Filename Value="ApplicationInfo.pas"/>
     107        <HasRegisterProc Value="True"/>
     108        <UnitName Value="ApplicationInfo"/>
    109109      </Item15>
    110110      <Item16>
    111         <Filename Value="USyncCounter.pas"/>
    112         <UnitName Value="USyncCounter"/>
     111        <Filename Value="SyncCounter.pas"/>
     112        <UnitName Value="SyncCounter"/>
    113113      </Item16>
    114114      <Item17>
    115         <Filename Value="UListViewSort.pas"/>
    116         <HasRegisterProc Value="True"/>
    117         <UnitName Value="UListViewSort"/>
     115        <Filename Value="ListViewSort.pas"/>
     116        <HasRegisterProc Value="True"/>
     117        <UnitName Value="ListViewSort"/>
    118118      </Item17>
    119119      <Item18>
    120         <Filename Value="UPersistentForm.pas"/>
    121         <HasRegisterProc Value="True"/>
    122         <UnitName Value="UPersistentForm"/>
     120        <Filename Value="PersistentForm.pas"/>
     121        <HasRegisterProc Value="True"/>
     122        <UnitName Value="PersistentForm"/>
    123123      </Item18>
    124124      <Item19>
    125         <Filename Value="UFindFile.pas"/>
    126         <HasRegisterProc Value="True"/>
    127         <UnitName Value="UFindFile"/>
     125        <Filename Value="FindFile.pas"/>
     126        <HasRegisterProc Value="True"/>
     127        <UnitName Value="FindFile"/>
    128128      </Item19>
    129129      <Item20>
    130         <Filename Value="UScaleDPI.pas"/>
    131         <HasRegisterProc Value="True"/>
    132         <UnitName Value="UScaleDPI"/>
     130        <Filename Value="ScaleDPI.pas"/>
     131        <HasRegisterProc Value="True"/>
     132        <UnitName Value="ScaleDPI"/>
    133133      </Item20>
    134134      <Item21>
    135         <Filename Value="UTheme.pas"/>
    136         <HasRegisterProc Value="True"/>
    137         <UnitName Value="UTheme"/>
     135        <Filename Value="Theme.pas"/>
     136        <HasRegisterProc Value="True"/>
     137        <UnitName Value="Theme"/>
    138138      </Item21>
    139139      <Item22>
    140         <Filename Value="UStringTable.pas"/>
    141         <UnitName Value="UStringTable"/>
     140        <Filename Value="StringTable.pas"/>
     141        <UnitName Value="StringTable"/>
    142142      </Item22>
    143143      <Item23>
    144         <Filename Value="UMetaCanvas.pas"/>
    145         <UnitName Value="UMetaCanvas"/>
     144        <Filename Value="MetaCanvas.pas"/>
     145        <UnitName Value="MetaCanvas"/>
    146146      </Item23>
    147147      <Item24>
    148         <Filename Value="UGeometric.pas"/>
    149         <UnitName Value="UGeometric"/>
     148        <Filename Value="Geometric.pas"/>
     149        <UnitName Value="Geometric"/>
    150150      </Item24>
    151151      <Item25>
    152         <Filename Value="UTranslator.pas"/>
    153         <HasRegisterProc Value="True"/>
    154         <UnitName Value="UTranslator"/>
     152        <Filename Value="Translator.pas"/>
     153        <HasRegisterProc Value="True"/>
     154        <UnitName Value="Translator"/>
    155155      </Item25>
    156156      <Item26>
    157         <Filename Value="ULanguages.pas"/>
    158         <UnitName Value="ULanguages"/>
     157        <Filename Value="Languages.pas"/>
     158        <UnitName Value="Languages"/>
    159159      </Item26>
    160160      <Item27>
    161         <Filename Value="UFormAbout.pas"/>
    162         <UnitName Value="UFormAbout"/>
     161        <Filename Value="FormAbout.pas"/>
     162        <UnitName Value="FormAbout"/>
    163163      </Item27>
    164164      <Item28>
    165         <Filename Value="UAboutDialog.pas"/>
    166         <HasRegisterProc Value="True"/>
    167         <UnitName Value="UAboutDialog"/>
     165        <Filename Value="AboutDialog.pas"/>
     166        <HasRegisterProc Value="True"/>
     167        <UnitName Value="AboutDialog"/>
    168168      </Item28>
    169169      <Item29>
    170         <Filename Value="UPixelPointer.pas"/>
    171         <UnitName Value="UPixelPointer"/>
     170        <Filename Value="PixelPointer.pas"/>
     171        <UnitName Value="PixelPointer"/>
    172172      </Item29>
     173      <Item30>
     174        <Filename Value="DataFile.pas"/>
     175        <UnitName Value="DataFile"/>
     176      </Item30>
     177      <Item31>
     178        <Filename Value="TestCase.pas"/>
     179        <UnitName Value="TestCase"/>
     180      </Item31>
     181      <Item32>
     182        <Filename Value="Generics.pas"/>
     183        <UnitName Value="Generics"/>
     184      </Item32>
     185      <Item33>
     186        <Filename Value="CommonPackage.pas"/>
     187        <Type Value="Main Unit"/>
     188        <UnitName Value="CommonPackage"/>
     189      </Item33>
    173190    </Files>
    174191    <CompatibilityMode Value="True"/>
  • trunk/Packages/Common/Common.pas

    r144 r145  
    1 unit UCommon;
     1unit Common;
    22
    33interface
     
    77  {$IFDEF UNIX}baseunix,{$ENDIF}
    88  Classes, SysUtils, StrUtils, Dialogs, Process, LCLIntf, Graphics,
    9   FileUtil; //, ShFolder, ShellAPI;
     9  FileUtil, Generics.Collections; //, ShFolder, ShellAPI;
    1010
    1111type
     
    3131  ExceptionHandler: TExceptionEvent;
    3232  DLLHandle1: HModule;
    33 {$IFDEF WINDOWS}
    34   GetUserNameEx: procedure (NameFormat: DWORD;
    35     lpNameBuffer: LPSTR; nSize: PULONG); stdcall;
    36 {$ENDIF}
     33
     34  {$IFDEF WINDOWS}
     35    GetUserNameEx: procedure (NameFormat: DWORD;
     36      lpNameBuffer: LPSTR; nSize: PULONG); stdcall;
     37  {$ENDIF}
    3738
    3839const
     
    6465function GetFileFilterItemExt(Filter: string; Index: Integer): string;
    6566function IntToBin(Data: Int64; Count: Byte): string;
     67function Implode(Separator: Char; List: TList<string>): string;
    6668function LastPos(const SubStr: String; const S: String): Integer;
    6769function LoadFileToStr(const FileName: TFileName): AnsiString;
     
    312314end;
    313315
     316function Implode(Separator: Char; List: TList<string>): string;
     317var
     318  I: Integer;
     319begin
     320  Result := '';
     321  for I := 0 to List.Count - 1 do begin
     322    Result := Result + List[I];
     323    if I < List.Count - 1 then Result := Result + Separator;
     324  end;
     325end;
     326
    314327{$IFDEF WINDOWS}
    315328function GetUserName: string;
  • trunk/Packages/Common/CommonPackage.pas

    r144 r145  
    33 }
    44
    5 unit Common;
     5unit CommonPackage;
    66
    77{$warn 5023 off : no warning about unused units}
     
    99
    1010uses
    11   StopWatch, UCommon, UDebugLog, UDelay, UPrefixMultiplier, UURI, UThreading,
    12   UMemory, UResetableThread, UPool, ULastOpenedList, URegistry,
    13   UJobProgressView, UXMLUtils, UApplicationInfo, USyncCounter, UListViewSort,
    14   UPersistentForm, UFindFile, UScaleDPI, UTheme, UStringTable, UMetaCanvas,
    15   UGeometric, UTranslator, ULanguages, UFormAbout, UAboutDialog,
    16   UPixelPointer, LazarusPackageIntf;
     11  StopWatch, Common, DebugLog, Common.Delay, PrefixMultiplier, URI, Threading,
     12  Memory, ResetableThread, Pool, LastOpenedList, RegistryEx, JobProgressView,
     13  XML, ApplicationInfo, SyncCounter, ListViewSort, PersistentForm, FindFile,
     14  ScaleDPI, Theme, StringTable, MetaCanvas, Geometric, Translator, Languages,
     15  FormAbout, AboutDialog, PixelPointer, DataFile, TestCase, Generics,
     16  LazarusPackageIntf;
    1717
    1818implementation
     
    2020procedure Register;
    2121begin
    22   RegisterUnit('UDebugLog', @UDebugLog.Register);
    23   RegisterUnit('UPrefixMultiplier', @UPrefixMultiplier.Register);
    24   RegisterUnit('ULastOpenedList', @ULastOpenedList.Register);
    25   RegisterUnit('UJobProgressView', @UJobProgressView.Register);
    26   RegisterUnit('UApplicationInfo', @UApplicationInfo.Register);
    27   RegisterUnit('UListViewSort', @UListViewSort.Register);
    28   RegisterUnit('UPersistentForm', @UPersistentForm.Register);
    29   RegisterUnit('UFindFile', @UFindFile.Register);
    30   RegisterUnit('UScaleDPI', @UScaleDPI.Register);
    31   RegisterUnit('UTheme', @UTheme.Register);
    32   RegisterUnit('UTranslator', @UTranslator.Register);
    33   RegisterUnit('UAboutDialog', @UAboutDialog.Register);
     22  RegisterUnit('DebugLog', @DebugLog.Register);
     23  RegisterUnit('PrefixMultiplier', @PrefixMultiplier.Register);
     24  RegisterUnit('LastOpenedList', @LastOpenedList.Register);
     25  RegisterUnit('JobProgressView', @JobProgressView.Register);
     26  RegisterUnit('ApplicationInfo', @ApplicationInfo.Register);
     27  RegisterUnit('ListViewSort', @ListViewSort.Register);
     28  RegisterUnit('PersistentForm', @PersistentForm.Register);
     29  RegisterUnit('FindFile', @FindFile.Register);
     30  RegisterUnit('ScaleDPI', @ScaleDPI.Register);
     31  RegisterUnit('Theme', @Theme.Register);
     32  RegisterUnit('Translator', @Translator.Register);
     33  RegisterUnit('AboutDialog', @AboutDialog.Register);
    3434end;
    3535
  • trunk/Packages/Common/DebugLog.pas

    r144 r145  
    1 unit UDebugLog;
     1unit DebugLog;
    22
    33interface
    44
    55uses
    6   Classes, SysUtils, FileUtil, fgl, SyncObjs;
     6  Classes, SysUtils, FileUtil, Generics.Collections, SyncObjs;
    77
    88type
     
    1313    Group: string;
    1414    Text: string;
     15  end;
     16
     17  TDebugLogItems = class(TObjectList<TDebugLogItem>)
    1518  end;
    1619
     
    2730    procedure SetMaxCount(const AValue: Integer);
    2831  public
    29     Items: TFPGObjectList<TDebugLogItem>;
     32    Items: TDebugLogItems;
    3033    Lock: TCriticalSection;
    3134    procedure Add(Text: string; Group: string = '');
     
    4245
    4346procedure Register;
     47
    4448
    4549implementation
     
    115119begin
    116120  inherited;
    117   Items := TFPGObjectList<TDebugLogItem>.Create;
     121  Items := TDebugLogItems.Create;
    118122  Lock := TCriticalSection.Create;
    119123  MaxCount := 100;
     
    124128destructor TDebugLog.Destroy;
    125129begin
    126   Items.Free;
    127   Lock.Free;
     130  FreeAndNil(Items);
     131  FreeAndNil(Lock);
    128132  inherited;
    129133end;
    130134
    131135end.
    132 
  • trunk/Packages/Common/FindFile.pas

    r144 r145  
    1919}
    2020
    21 unit UFindFile;
     21unit FindFile;
    2222
    2323interface
     
    3535  private
    3636    s : TStringList;
    37 
    3837    fSubFolder : boolean;
    3938    fAttr: TFileAttrib;
    4039    fPath : string;
    4140    fFileMask : string;
    42 
    4341    procedure SetPath(Value: string);
    4442    procedure FileSearch(const inPath : string);
     
    4644    constructor Create(AOwner: TComponent); override;
    4745    destructor Destroy; override;
    48 
    4946    function SearchForFiles: TStringList;
    5047  published
     
    6461
    6562procedure Register;
     63
    6664
    6765implementation
     
    8785begin
    8886  s.Free;
    89   inherited Destroy;
     87  inherited;
    9088end;
    9189
     
    145143    SysUtils.FindClose(Rec);
    146144  end;
    147 end; 
     145end;
    148146
    149147end.
    150 
  • trunk/Packages/Common/FormAbout.lfm

    r144 r145  
    11object FormAbout: TFormAbout
    22  Left = 1014
    3   Height = 402
     3  Height = 349
    44  Top = 577
    5   Width = 702
     5  Width = 609
    66  Caption = 'About'
    7   ClientHeight = 402
    8   ClientWidth = 702
    9   DesignTimePPI = 144
    10   OnCreate = FormCreate
     7  ClientHeight = 349
     8  ClientWidth = 609
     9  DesignTimePPI = 125
    1110  OnShow = FormShow
    1211  Position = poScreenCenter
    13   LCLVersion = '2.0.10.0'
     12  LCLVersion = '2.2.4.0'
    1413  object LabelDescription: TLabel
    15     Left = 30
    16     Height = 24
    17     Top = 135
    18     Width = 642
     14    Left = 26
     15    Height = 22
     16    Top = 117
     17    Width = 557
    1918    Align = alTop
    20     BorderSpacing.Left = 30
    21     BorderSpacing.Right = 30
    22     BorderSpacing.Bottom = 30
     19    BorderSpacing.Left = 26
     20    BorderSpacing.Right = 26
     21    BorderSpacing.Bottom = 26
    2322    Caption = 'Description'
    2423    ParentColor = False
     
    2726  end
    2827  object LabelContent: TLabel
    29     Left = 30
    30     Height = 24
    31     Top = 189
    32     Width = 642
     28    Left = 26
     29    Height = 22
     30    Top = 165
     31    Width = 557
    3332    Align = alTop
    34     BorderSpacing.Around = 30
     33    BorderSpacing.Around = 26
    3534    Caption = '   '
    3635    ParentColor = False
     
    3938  object PanelTop: TPanel
    4039    Left = 0
    41     Height = 135
     40    Height = 117
    4241    Top = 0
    43     Width = 702
     42    Width = 609
    4443    Align = alTop
    4544    BevelOuter = bvNone
    46     ClientHeight = 135
    47     ClientWidth = 702
     45    ClientHeight = 117
     46    ClientWidth = 609
    4847    FullRepaint = False
    4948    ParentFont = False
    5049    TabOrder = 0
    5150    object LabelAppName: TLabel
    52       Left = 108
    53       Height = 84
    54       Top = 20
    55       Width = 564
     51      Left = 94
     52      Height = 73
     53      Top = 17
     54      Width = 489
    5655      Anchors = [akTop, akLeft, akRight]
    5756      AutoSize = False
    58       BorderSpacing.Around = 30
     57      BorderSpacing.Around = 26
    5958      Caption = 'Title'
    60       Font.Height = -60
     59      Font.Height = -52
    6160      ParentColor = False
    6261      ParentFont = False
     
    6463    end
    6564    object ImageLogo: TImage
    66       Left = 24
    67       Height = 74
    68       Top = 30
    69       Width = 72
     65      Left = 21
     66      Height = 64
     67      Top = 26
     68      Width = 62
    7069      Proportional = True
    7170      Stretch = True
     
    7473  object PanelButtons: TPanel
    7574    Left = 0
    76     Height = 75
    77     Top = 327
    78     Width = 702
     75    Height = 65
     76    Top = 284
     77    Width = 609
    7978    Align = alBottom
    8079    BevelOuter = bvNone
    81     ClientHeight = 75
    82     ClientWidth = 702
     80    ClientHeight = 65
     81    ClientWidth = 609
    8382    TabOrder = 1
    8483    object ButtonHomePage: TButton
    85       Left = 24
    86       Height = 38
    87       Top = 24
    88       Width = 264
     84      Left = 21
     85      Height = 33
     86      Top = 21
     87      Width = 229
    8988      Anchors = [akLeft, akBottom]
    9089      Caption = 'Home page'
     
    9493    end
    9594    object ButtonClose: TButton
    96       Left = 532
    97       Height = 38
    98       Top = 24
    99       Width = 140
     95      Left = 461
     96      Height = 33
     97      Top = 21
     98      Width = 122
    10099      Anchors = [akRight, akBottom]
    101100      Caption = 'Close'
  • trunk/Packages/Common/FormAbout.pas

    r144 r145  
    1 unit UFormAbout;
     1unit FormAbout;
    22
    33interface
     
    55uses
    66  Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, Menus,
    7   StdCtrls, ExtCtrls, UApplicationInfo, UCommon, UTranslator, UTheme;
     7  StdCtrls, ExtCtrls, ApplicationInfo, Common, Translator, Theme;
    88
    99type
     
    2020    PanelButtons: TPanel;
    2121    procedure ButtonHomePageClick(Sender: TObject);
    22     procedure FormCreate(Sender: TObject);
    2322    procedure FormShow(Sender: TObject);
    24   private
    25     { private declarations }
    2623  public
    2724    AboutDialog: TObject; //TAboutDialog
     
    3532
    3633uses
    37   UAboutDialog;
     34  AboutDialog;
    3835
    3936resourcestring
     
    7774end;
    7875
    79 procedure TFormAbout.FormCreate(Sender: TObject);
    80 begin
    81 end;
    82 
    8376end.
    84 
  • trunk/Packages/Common/Geometric.pas

    r144 r145  
    1 unit UGeometric;
     1unit Geometric;
    22
    33interface
     
    88type
    99  TPointArray = array of TPoint;
     10
     11  { TVector }
     12
     13  TVector = record
     14    Position: TPoint;
     15    Direction: TPoint;
     16    function GetLength: Double;
     17    function GetAngle: Double;
     18    procedure SetLength(Value: Double);
     19    class function Create(P1, P2: TPoint): TVector; static;
     20  end;
    1021
    1122function Distance(P1, P2: TPoint): Integer;
     
    1324function AddPoint(const P1, P2: TPoint): TPoint;
    1425function SubPoint(const P1, P2: TPoint): TPoint;
    15 function PointToLineDistance(const P, V, W: TPoint): Integer;
     26function PointToLineDistance(const P, V, W: TPoint; out Intersect: TPoint): Integer;
    1627function ComparePoint(P1, P2: TPoint): Boolean;
    1728function RotatePoint(Center, P: TPoint; Angle: Double): TPoint;
     
    2536function ShiftRect(ARect: TRect; Delta: TPoint): TRect;
    2637
     38
    2739implementation
    2840
     
    4961end;
    5062
    51 function PointToLineDistance(const P, V, W: TPoint): Integer;
     63function PointToLineDistance(const P, V, W: TPoint; out Intersect: TPoint): Integer;
    5264var
    5365  l2, t: Double;
     
    6779  if T < 0 then begin
    6880    Result := Distance(P, V);       // Beyond the 'v' end of the segment
    69     exit;
     81    Intersect := V;
     82    Exit;
    7083  end
    7184  else if T > 1 then begin
    7285    Result := Distance(P, W);  // Beyond the 'w' end of the segment
     86    Intersect := W;
    7387    Exit;
    7488  end;
     
    7690  TT.Y := Trunc(V.Y + T * (W.Y - V.Y));
    7791  Result := Distance(P, TT);
     92  Intersect := TT;
    7893end;
    7994
     
    161176end;
    162177
     178{ TVector }
     179
     180function TVector.GetLength: Double;
     181begin
     182  Result := Sqrt(Sqr(Direction.X) + Sqr(Direction.Y));
     183end;
     184
     185function TVector.GetAngle: Double;
     186begin
     187  Result := ArcTan2(Direction.Y, Direction.X);
     188end;
     189
     190procedure TVector.SetLength(Value: Double);
     191var
     192  Angle: Double;
     193begin
     194  Angle := GetAngle;
     195  Direction := Point(Round(Cos(Angle) * Value),
     196    Round(Sin(Angle) * Value));
     197end;
     198
     199class function TVector.Create(P1, P2: TPoint): TVector;
     200begin
     201  Result.Position := P1;
     202  Result.Direction := Point(P2.X - P1.X, P2.Y - P1.Y);
     203end;
    163204
    164205end.
    165 
  • trunk/Packages/Common/JobProgressView.pas

    r144 r145  
    1 unit UJobProgressView;
     1unit JobProgressView;
    22
    33interface
     
    55uses
    66  SysUtils, Variants, Classes, Graphics, Controls, Forms, Syncobjs,
    7   Dialogs, ComCtrls, StdCtrls, ExtCtrls, fgl, UThreading, Math,
     7  Dialogs, ComCtrls, StdCtrls, ExtCtrls, Generics.Collections, Threading, Math,
    88  DateUtils;
    99
     
    6969  end;
    7070
    71   TJobs = class(TFPGObjectList<TJob>)
     71  TJobs = class(TObjectList<TJob>)
    7272  end;
    7373
     
    154154  end;
    155155
    156   //var
    157   //  FormJobProgressView: TFormJobProgressView;
    158 
    159156procedure Register;
    160157
    161158resourcestring
    162159  SExecuted = 'Executed';
     160
    163161
    164162implementation
     
    184182  try
    185183    try
    186       //raise Exception.Create('Exception in job');
    187184      ProgressView.CurrentJob.Method(Job);
    188185    except
  • trunk/Packages/Common/Languages.pas

    r144 r145  
    1 unit ULanguages;
     1unit Languages;
    22
    33interface
    44
    55uses
    6   Classes, SysUtils, fgl;
     6  Classes, SysUtils, Generics.Collections;
    77
    88type
     
    1515  { TLanguages }
    1616
    17   TLanguages = class(TFPGObjectList<TLanguage>)
     17  TLanguages = class(TObjectList<TLanguage>)
    1818    function SearchByCode(ACode: string): TLanguage;
    1919    procedure AddNew(Code: string; Name: string);
     
    443443
    444444end.
    445 
  • trunk/Packages/Common/Languages/DebugLog.cs.po

    r144 r145  
    1010"Content-Transfer-Encoding: 8bit\n"
    1111
    12 #: udebuglog.sfilenamenotdefined
     12#: debuglog.sfilenamenotdefined
     13#, fuzzy
     14msgctxt "debuglog.sfilenamenotdefined"
    1315msgid "Filename not defined"
    1416msgstr "Neurčen soubor"
  • trunk/Packages/Common/Languages/DebugLog.pot

    r144 r145  
    22msgstr "Content-Type: text/plain; charset=UTF-8"
    33
    4 #: udebuglog.sfilenamenotdefined
     4#: debuglog.sfilenamenotdefined
    55msgid "Filename not defined"
    66msgstr ""
  • trunk/Packages/Common/Languages/FindFile.cs.po

    r144 r145  
    1212"X-Generator: Poedit 1.8.9\n"
    1313
    14 #: ufindfile.sdirnotfound
     14#: findfile.sdirnotfound
     15#, fuzzy
     16msgctxt "findfile.sdirnotfound"
    1517msgid "Directory not found"
    1618msgstr "Adresář nenalezen"
  • trunk/Packages/Common/Languages/FindFile.pot

    r144 r145  
    22msgstr "Content-Type: text/plain; charset=UTF-8"
    33
    4 #: ufindfile.sdirnotfound
     4#: findfile.sdirnotfound
    55msgid "Directory not found"
    66msgstr ""
  • trunk/Packages/Common/Languages/FormAbout.cs.po

    r144 r145  
    1212"X-Generator: Poedit 2.4.1\n"
    1313
    14 #: uformabout.slicense
     14#: formabout.slicense
     15#, fuzzy
     16msgctxt "formabout.slicense"
    1517msgid "License"
    1618msgstr "Licence"
    1719
    18 #: uformabout.sreleasedate
     20#: formabout.sreleasedate
     21#, fuzzy
     22msgctxt "formabout.sreleasedate"
    1923msgid "Release date"
    2024msgstr "Datum uvolnění"
    2125
    22 #: uformabout.sversion
     26#: formabout.sversion
     27#, fuzzy
     28msgctxt "formabout.sversion"
    2329msgid "Version"
    2430msgstr "Verze"
  • trunk/Packages/Common/Languages/FormAbout.pot

    r144 r145  
    22msgstr "Content-Type: text/plain; charset=UTF-8"
    33
    4 #: uformabout.slicense
     4#: formabout.slicense
    55msgid "License"
    66msgstr ""
    77
    8 #: uformabout.sreleasedate
     8#: formabout.sreleasedate
    99msgid "Release date"
    1010msgstr ""
    1111
    12 #: uformabout.sversion
     12#: formabout.sversion
    1313msgid "Version"
    1414msgstr ""
  • trunk/Packages/Common/Languages/JobProgressView.cs.po

    r144 r145  
    1212"X-Generator: Poedit 2.2\n"
    1313
    14 #: ujobprogressview.sestimatedtime
    15 #, object-pascal-format
     14#: jobprogressview.sestimatedtime
     15#, object-pascal-format, fuzzy
     16msgctxt "jobprogressview.sestimatedtime"
    1617msgid "Estimated time: %s"
    1718msgstr "OdhadovanÜ čas: %s"
    1819
    19 #: ujobprogressview.sexecuted
     20#: jobprogressview.sexecuted
     21#, fuzzy
     22msgctxt "jobprogressview.sexecuted"
    2023msgid "Executed"
    2124msgstr "Vykonané"
    2225
    23 #: ujobprogressview.sfinished
     26#: jobprogressview.sfinished
     27#, fuzzy
     28msgctxt "jobprogressview.sfinished"
    2429msgid "Finished"
    2530msgstr "Dokončené"
    2631
    27 #: ujobprogressview.spleasewait
     32#: jobprogressview.spleasewait
     33#, fuzzy
     34msgctxt "jobprogressview.spleasewait"
    2835msgid "Please wait..."
    2936msgstr "Prosím čekejte..."
    3037
    31 #: ujobprogressview.sterminate
     38#: jobprogressview.sterminate
     39#, fuzzy
     40msgctxt "jobprogressview.sterminate"
    3241msgid "Termination"
    3342msgstr "Přerušení"
    3443
    35 #: ujobprogressview.stotalestimatedtime
    36 #, object-pascal-format
     44#: jobprogressview.stotalestimatedtime
     45#, object-pascal-format, fuzzy
     46msgctxt "jobprogressview.stotalestimatedtime"
    3747msgid "Total estimated time: %s"
    3848msgstr "CelkovÜ odhadovanÜ čas: %s"
  • trunk/Packages/Common/Languages/JobProgressView.pot

    r144 r145  
    22msgstr "Content-Type: text/plain; charset=UTF-8"
    33
    4 #: ujobprogressview.sestimatedtime
     4#: jobprogressview.sestimatedtime
    55#, object-pascal-format
    66msgid "Estimated time: %s"
    77msgstr ""
    88
    9 #: ujobprogressview.sexecuted
     9#: jobprogressview.sexecuted
    1010msgid "Executed"
    1111msgstr ""
    1212
    13 #: ujobprogressview.sfinished
     13#: jobprogressview.sfinished
    1414msgid "Finished"
    1515msgstr ""
    1616
    17 #: ujobprogressview.spleasewait
     17#: jobprogressview.spleasewait
    1818msgid "Please wait..."
    1919msgstr ""
    2020
    21 #: ujobprogressview.sterminate
     21#: jobprogressview.sterminate
    2222msgid "Termination"
    2323msgstr ""
    2424
    25 #: ujobprogressview.stotalestimatedtime
     25#: jobprogressview.stotalestimatedtime
    2626#, object-pascal-format
    2727msgid "Total estimated time: %s"
  • trunk/Packages/Common/Languages/Languages.cs.po

    r144 r145  
    1010"Content-Transfer-Encoding: 8bit\n"
    1111
    12 #: ulanguages.slangauto
     12#: languages.slangauto
     13#, fuzzy
     14msgctxt "languages.slangauto"
    1315msgid "Automatic"
    1416msgstr "Automaticky"
    1517
    16 #: ulanguages.slang_aa
     18#: languages.slang_aa
     19msgctxt "languages.slang_aa"
    1720msgid "Afar"
    1821msgstr ""
    1922
    20 #: ulanguages.slang_ab
     23#: languages.slang_ab
     24#, fuzzy
     25msgctxt "languages.slang_ab"
    2126msgid "Abkhazian"
    2227msgstr "Abcházština"
    2328
    24 #: ulanguages.slang_ae
     29#: languages.slang_ae
     30msgctxt "languages.slang_ae"
    2531msgid "Avestan"
    2632msgstr ""
    2733
    28 #: ulanguages.slang_af
     34#: languages.slang_af
     35#, fuzzy
     36msgctxt "languages.slang_af"
    2937msgid "Afrikaans"
    3038msgstr "Afrikánština"
    3139
    32 #: ulanguages.slang_ak
     40#: languages.slang_ak
     41msgctxt "languages.slang_ak"
    3342msgid "Akan"
    3443msgstr ""
    3544
    36 #: ulanguages.slang_am
     45#: languages.slang_am
     46msgctxt "languages.slang_am"
    3747msgid "Amharic"
    3848msgstr ""
    3949
    40 #: ulanguages.slang_an
     50#: languages.slang_an
     51msgctxt "languages.slang_an"
    4152msgid "Aragonese"
    4253msgstr ""
    4354
    44 #: ulanguages.slang_ar
     55#: languages.slang_ar
     56#, fuzzy
     57msgctxt "languages.slang_ar"
    4558msgid "Arabic"
    4659msgstr "Arabština"
    4760
    48 #: ulanguages.slang_as
     61#: languages.slang_as
     62msgctxt "languages.slang_as"
    4963msgid "Assamese"
    5064msgstr ""
    5165
    52 #: ulanguages.slang_av
     66#: languages.slang_av
     67msgctxt "languages.slang_av"
    5368msgid "Avaric"
    5469msgstr ""
    5570
    56 #: ulanguages.slang_ay
     71#: languages.slang_ay
     72msgctxt "languages.slang_ay"
    5773msgid "Aymara"
    5874msgstr ""
    5975
    60 #: ulanguages.slang_az
     76#: languages.slang_az
     77msgctxt "languages.slang_az"
    6178msgid "Azerbaijani"
    6279msgstr ""
    6380
    64 #: ulanguages.slang_ba
     81#: languages.slang_ba
     82msgctxt "languages.slang_ba"
    6583msgid "Bashkir"
    6684msgstr ""
    6785
    68 #: ulanguages.slang_be
     86#: languages.slang_be
     87msgctxt "languages.slang_be"
    6988msgid "Belarusian"
    7089msgstr ""
    7190
    72 #: ulanguages.slang_bg
     91#: languages.slang_bg
     92#, fuzzy
     93msgctxt "languages.slang_bg"
    7394msgid "Bulgarian"
    7495msgstr "Maďarština"
    7596
    76 #: ulanguages.slang_bh
     97#: languages.slang_bh
     98msgctxt "languages.slang_bh"
    7799msgid "Bihari"
    78100msgstr ""
    79101
    80 #: ulanguages.slang_bi
     102#: languages.slang_bi
     103msgctxt "languages.slang_bi"
    81104msgid "Bislama"
    82105msgstr ""
    83106
    84 #: ulanguages.slang_bm
     107#: languages.slang_bm
     108msgctxt "languages.slang_bm"
    85109msgid "Bambara"
    86110msgstr ""
    87111
    88 #: ulanguages.slang_bn
     112#: languages.slang_bn
     113msgctxt "languages.slang_bn"
    89114msgid "Bengali"
    90115msgstr ""
    91116
    92 #: ulanguages.slang_bo
     117#: languages.slang_bo
     118#, fuzzy
     119msgctxt "languages.slang_bo"
    93120msgid "Tibetan"
    94121msgstr "Tibetština"
    95122
    96 #: ulanguages.slang_br
     123#: languages.slang_br
     124msgctxt "languages.slang_br"
    97125msgid "Breton"
    98126msgstr ""
    99127
    100 #: ulanguages.slang_bs
     128#: languages.slang_bs
     129msgctxt "languages.slang_bs"
    101130msgid "Bosnian"
    102131msgstr ""
    103132
    104 #: ulanguages.slang_ca
     133#: languages.slang_ca
     134#, fuzzy
     135msgctxt "languages.slang_ca"
    105136msgid "Catalan"
    106137msgstr "Katalánština"
    107138
    108 #: ulanguages.slang_ce
     139#: languages.slang_ce
     140msgctxt "languages.slang_ce"
    109141msgid "Chechen"
    110142msgstr ""
    111143
    112 #: ulanguages.slang_ch
     144#: languages.slang_ch
     145msgctxt "languages.slang_ch"
    113146msgid "Chamorro"
    114147msgstr ""
    115148
    116 #: ulanguages.slang_co
     149#: languages.slang_co
     150msgctxt "languages.slang_co"
    117151msgid "Corsican"
    118152msgstr ""
    119153
    120 #: ulanguages.slang_cr
     154#: languages.slang_cr
     155#, fuzzy
     156msgctxt "languages.slang_cr"
    121157msgid "Cree"
    122158msgstr "Kríjština"
    123159
    124 #: ulanguages.slang_cs
     160#: languages.slang_cs
     161#, fuzzy
     162msgctxt "languages.slang_cs"
    125163msgid "Czech"
    126164msgstr "Čeština"
    127165
    128 #: ulanguages.slang_cv
     166#: languages.slang_cv
     167msgctxt "languages.slang_cv"
    129168msgid "Chuvash"
    130169msgstr ""
    131170
    132 #: ulanguages.slang_cy
     171#: languages.slang_cy
     172msgctxt "languages.slang_cy"
    133173msgid "Welsh"
    134174msgstr ""
    135175
    136 #: ulanguages.slang_da
     176#: languages.slang_da
     177#, fuzzy
     178msgctxt "languages.slang_da"
    137179msgid "Danish"
    138180msgstr "Dánština"
    139181
    140 #: ulanguages.slang_de
     182#: languages.slang_de
     183#, fuzzy
     184msgctxt "languages.slang_de"
    141185msgid "German"
    142186msgstr "Němčina"
    143187
    144 #: ulanguages.slang_de_at
     188#: languages.slang_de_at
     189#, fuzzy
     190msgctxt "languages.slang_de_at"
    145191msgid "Austrian German"
    146192msgstr "Australská němčina"
    147193
    148 #: ulanguages.slang_de_ch
     194#: languages.slang_de_ch
     195#, fuzzy
     196msgctxt "languages.slang_de_ch"
    149197msgid "Swiss German"
    150198msgstr "Švédská němčina"
    151199
    152 #: ulanguages.slang_dv
     200#: languages.slang_dv
     201msgctxt "languages.slang_dv"
    153202msgid "Divehi"
    154203msgstr ""
    155204
    156 #: ulanguages.slang_dz
     205#: languages.slang_dz
     206msgctxt "languages.slang_dz"
    157207msgid "Dzongkha"
    158208msgstr ""
    159209
    160 #: ulanguages.slang_ee
     210#: languages.slang_ee
     211msgctxt "languages.slang_ee"
    161212msgid "Ewe"
    162213msgstr ""
    163214
    164 #: ulanguages.slang_el
     215#: languages.slang_el
     216#, fuzzy
     217msgctxt "languages.slang_el"
    165218msgid "Greek"
    166219msgstr "Řečtina"
    167220
    168 #: ulanguages.slang_en
     221#: languages.slang_en
     222#, fuzzy
     223msgctxt "languages.slang_en"
    169224msgid "English"
    170225msgstr "Angličtina"
    171226
    172 #: ulanguages.slang_en_au
     227#: languages.slang_en_au
     228#, fuzzy
     229msgctxt "languages.slang_en_au"
    173230msgid "Australian English"
    174231msgstr "Australská angličtina"
    175232
    176 #: ulanguages.slang_en_ca
     233#: languages.slang_en_ca
     234#, fuzzy
     235msgctxt "languages.slang_en_ca"
    177236msgid "Canadian English"
    178237msgstr "Kanadská angličtina"
    179238
    180 #: ulanguages.slang_en_gb
     239#: languages.slang_en_gb
     240#, fuzzy
     241msgctxt "languages.slang_en_gb"
    181242msgid "British English"
    182243msgstr "Britská angličtina"
    183244
    184 #: ulanguages.slang_en_us
     245#: languages.slang_en_us
     246#, fuzzy
     247msgctxt "languages.slang_en_us"
    185248msgid "American English"
    186249msgstr "Americká angličtina"
    187250
    188 #: ulanguages.slang_eo
     251#: languages.slang_eo
     252#, fuzzy
     253msgctxt "languages.slang_eo"
    189254msgid "Esperanto"
    190255msgstr "Esperanto"
    191256
    192 #: ulanguages.slang_es
     257#: languages.slang_es
     258#, fuzzy
     259msgctxt "languages.slang_es"
    193260msgid "Spanish"
    194261msgstr "Španělština"
    195262
    196 #: ulanguages.slang_et
     263#: languages.slang_et
     264#, fuzzy
     265msgctxt "languages.slang_et"
    197266msgid "Estonian"
    198267msgstr "Estonština"
    199268
    200 #: ulanguages.slang_eu
     269#: languages.slang_eu
     270msgctxt "languages.slang_eu"
    201271msgid "Basque"
    202272msgstr ""
    203273
    204 #: ulanguages.slang_fa
     274#: languages.slang_fa
     275#, fuzzy
     276msgctxt "languages.slang_fa"
    205277msgid "Persian"
    206278msgstr "Perština"
    207279
    208 #: ulanguages.slang_ff
     280#: languages.slang_ff
     281msgctxt "languages.slang_ff"
    209282msgid "Fulah"
    210283msgstr ""
    211284
    212 #: ulanguages.slang_fi
     285#: languages.slang_fi
     286#, fuzzy
     287msgctxt "languages.slang_fi"
    213288msgid "Finnish"
    214289msgstr "Finština"
    215290
    216 #: ulanguages.slang_fj
     291#: languages.slang_fj
     292msgctxt "languages.slang_fj"
    217293msgid "Fijian"
    218294msgstr ""
    219295
    220 #: ulanguages.slang_fo
     296#: languages.slang_fo
     297msgctxt "languages.slang_fo"
    221298msgid "Faroese"
    222299msgstr ""
    223300
    224 #: ulanguages.slang_fr
     301#: languages.slang_fr
     302#, fuzzy
     303msgctxt "languages.slang_fr"
    225304msgid "French"
    226305msgstr "Francouzština"
    227306
    228 #: ulanguages.slang_fr_be
    229 msgctxt "ulanguages.slang_fr_be"
     307#: languages.slang_fr_be
     308msgctxt "languages.slang_fr_be"
    230309msgid "Walloon"
    231310msgstr ""
    232311
    233 #: ulanguages.slang_fy
     312#: languages.slang_fy
     313msgctxt "languages.slang_fy"
    234314msgid "Frisian"
    235315msgstr ""
    236316
    237 #: ulanguages.slang_ga
     317#: languages.slang_ga
     318#, fuzzy
     319msgctxt "languages.slang_ga"
    238320msgid "Irish"
    239321msgstr "Irština"
    240322
    241 #: ulanguages.slang_gd
     323#: languages.slang_gd
     324msgctxt "languages.slang_gd"
    242325msgid "Gaelic"
    243326msgstr ""
    244327
    245 #: ulanguages.slang_gl
     328#: languages.slang_gl
     329msgctxt "languages.slang_gl"
    246330msgid "Gallegan"
    247331msgstr ""
    248332
    249 #: ulanguages.slang_gn
     333#: languages.slang_gn
     334msgctxt "languages.slang_gn"
    250335msgid "Guarani"
    251336msgstr ""
    252337
    253 #: ulanguages.slang_gu
     338#: languages.slang_gu
     339msgctxt "languages.slang_gu"
    254340msgid "Gujarati"
    255341msgstr ""
    256342
    257 #: ulanguages.slang_gv
     343#: languages.slang_gv
     344msgctxt "languages.slang_gv"
    258345msgid "Manx"
    259346msgstr ""
    260347
    261 #: ulanguages.slang_ha
     348#: languages.slang_ha
     349msgctxt "languages.slang_ha"
    262350msgid "Hausa"
    263351msgstr ""
    264352
    265 #: ulanguages.slang_he
     353#: languages.slang_he
     354#, fuzzy
     355msgctxt "languages.slang_he"
    266356msgid "Hebrew"
    267357msgstr "Hebrejština"
    268358
    269 #: ulanguages.slang_hi
     359#: languages.slang_hi
     360msgctxt "languages.slang_hi"
    270361msgid "Hindi"
    271362msgstr ""
    272363
    273 #: ulanguages.slang_ho
     364#: languages.slang_ho
     365msgctxt "languages.slang_ho"
    274366msgid "Hiri Motu"
    275367msgstr ""
    276368
    277 #: ulanguages.slang_hr
     369#: languages.slang_hr
     370#, fuzzy
     371msgctxt "languages.slang_hr"
    278372msgid "Croatian"
    279373msgstr "Chorvatština"
    280374
    281 #: ulanguages.slang_ht
     375#: languages.slang_ht
     376msgctxt "languages.slang_ht"
    282377msgid "Haitian"
    283378msgstr ""
    284379
    285 #: ulanguages.slang_hu
     380#: languages.slang_hu
     381#, fuzzy
     382msgctxt "languages.slang_hu"
    286383msgid "Hungarian"
    287384msgstr "Maďarština"
    288385
    289 #: ulanguages.slang_hy
     386#: languages.slang_hy
     387#, fuzzy
     388msgctxt "languages.slang_hy"
    290389msgid "Armenian"
    291390msgstr "Arménština"
    292391
    293 #: ulanguages.slang_hz
     392#: languages.slang_hz
     393msgctxt "languages.slang_hz"
    294394msgid "Herero"
    295395msgstr ""
    296396
    297 #: ulanguages.slang_ia
     397#: languages.slang_ia
     398msgctxt "languages.slang_ia"
    298399msgid "Interlingua"
    299400msgstr ""
    300401
    301 #: ulanguages.slang_id
     402#: languages.slang_id
     403msgctxt "languages.slang_id"
    302404msgid "Indonesian"
    303405msgstr ""
    304406
    305 #: ulanguages.slang_ie
     407#: languages.slang_ie
     408msgctxt "languages.slang_ie"
    306409msgid "Interlingue"
    307410msgstr ""
    308411
    309 #: ulanguages.slang_ig
     412#: languages.slang_ig
     413msgctxt "languages.slang_ig"
    310414msgid "Igbo"
    311415msgstr ""
    312416
    313 #: ulanguages.slang_ii
     417#: languages.slang_ii
     418msgctxt "languages.slang_ii"
    314419msgid "Sichuan Yi"
    315420msgstr ""
    316421
    317 #: ulanguages.slang_ik
     422#: languages.slang_ik
     423msgctxt "languages.slang_ik"
    318424msgid "Inupiaq"
    319425msgstr ""
    320426
    321 #: ulanguages.slang_io
     427#: languages.slang_io
     428msgctxt "languages.slang_io"
    322429msgid "Ido"
    323430msgstr ""
    324431
    325 #: ulanguages.slang_is
     432#: languages.slang_is
     433#, fuzzy
     434msgctxt "languages.slang_is"
    326435msgid "Icelandic"
    327436msgstr "Islandština"
    328437
    329 #: ulanguages.slang_it
     438#: languages.slang_it
     439#, fuzzy
     440msgctxt "languages.slang_it"
    330441msgid "Italian"
    331442msgstr "Italština"
    332443
    333 #: ulanguages.slang_iu
     444#: languages.slang_iu
     445msgctxt "languages.slang_iu"
    334446msgid "Inuktitut"
    335447msgstr ""
    336448
    337 #: ulanguages.slang_ja
     449#: languages.slang_ja
     450#, fuzzy
     451msgctxt "languages.slang_ja"
    338452msgid "Japanese"
    339453msgstr "Japonština"
    340454
    341 #: ulanguages.slang_jv
     455#: languages.slang_jv
     456msgctxt "languages.slang_jv"
    342457msgid "Javanese"
    343458msgstr ""
    344459
    345 #: ulanguages.slang_ka
     460#: languages.slang_ka
     461#, fuzzy
     462msgctxt "languages.slang_ka"
    346463msgid "Georgian"
    347464msgstr "Gruzínština"
    348465
    349 #: ulanguages.slang_kg
     466#: languages.slang_kg
     467#, fuzzy
     468msgctxt "languages.slang_kg"
    350469msgid "Kongo"
    351470msgstr "KonÅŸÅ¡tina"
    352471
    353 #: ulanguages.slang_ki
     472#: languages.slang_ki
     473msgctxt "languages.slang_ki"
    354474msgid "Kikuyu"
    355475msgstr ""
    356476
    357 #: ulanguages.slang_kj
     477#: languages.slang_kj
     478msgctxt "languages.slang_kj"
    358479msgid "Kuanyama"
    359480msgstr ""
    360481
    361 #: ulanguages.slang_kk
     482#: languages.slang_kk
     483msgctxt "languages.slang_kk"
    362484msgid "Kazakh"
    363485msgstr ""
    364486
    365 #: ulanguages.slang_kl
     487#: languages.slang_kl
     488#, fuzzy
     489msgctxt "languages.slang_kl"
    366490msgid "Greenlandic"
    367491msgstr "Grónština"
    368492
    369 #: ulanguages.slang_km
     493#: languages.slang_km
     494msgctxt "languages.slang_km"
    370495msgid "Khmer"
    371496msgstr ""
    372497
    373 #: ulanguages.slang_kn
     498#: languages.slang_kn
     499#, fuzzy
     500msgctxt "languages.slang_kn"
    374501msgid "Kannada"
    375502msgstr "Kannadština"
    376503
    377 #: ulanguages.slang_ko
     504#: languages.slang_ko
     505#, fuzzy
     506msgctxt "languages.slang_ko"
    378507msgid "Korean"
    379508msgstr "Korejština"
    380509
    381 #: ulanguages.slang_kr
     510#: languages.slang_kr
     511msgctxt "languages.slang_kr"
    382512msgid "Kanuri"
    383513msgstr ""
    384514
    385 #: ulanguages.slang_ks
     515#: languages.slang_ks
     516msgctxt "languages.slang_ks"
    386517msgid "Kashmiri"
    387518msgstr ""
    388519
    389 #: ulanguages.slang_ku
     520#: languages.slang_ku
     521msgctxt "languages.slang_ku"
    390522msgid "Kurdish"
    391523msgstr ""
    392524
    393 #: ulanguages.slang_kv
     525#: languages.slang_kv
     526msgctxt "languages.slang_kv"
    394527msgid "Komi"
    395528msgstr ""
    396529
    397 #: ulanguages.slang_kw
     530#: languages.slang_kw
     531#, fuzzy
     532msgctxt "languages.slang_kw"
    398533msgid "Cornish"
    399534msgstr "Kornština"
    400535
    401 #: ulanguages.slang_ky
     536#: languages.slang_ky
     537msgctxt "languages.slang_ky"
    402538msgid "Kirghiz"
    403539msgstr ""
    404540
    405 #: ulanguages.slang_la
     541#: languages.slang_la
     542#, fuzzy
     543msgctxt "languages.slang_la"
    406544msgid "Latin"
    407545msgstr "Latina"
    408546
    409 #: ulanguages.slang_lb
     547#: languages.slang_lb
     548#, fuzzy
     549msgctxt "languages.slang_lb"
    410550msgid "Luxembourgish"
    411551msgstr "Lucemburština"
    412552
    413 #: ulanguages.slang_lg
     553#: languages.slang_lg
     554msgctxt "languages.slang_lg"
    414555msgid "Ganda"
    415556msgstr ""
    416557
    417 #: ulanguages.slang_li
     558#: languages.slang_li
     559msgctxt "languages.slang_li"
    418560msgid "Limburgan"
    419561msgstr ""
    420562
    421 #: ulanguages.slang_ln
     563#: languages.slang_ln
     564msgctxt "languages.slang_ln"
    422565msgid "Lingala"
    423566msgstr ""
    424567
    425 #: ulanguages.slang_lo
     568#: languages.slang_lo
     569#, fuzzy
     570msgctxt "languages.slang_lo"
    426571msgid "Lao"
    427572msgstr "Laoština"
    428573
    429 #: ulanguages.slang_lt
     574#: languages.slang_lt
     575#, fuzzy
     576msgctxt "languages.slang_lt"
    430577msgid "Lithuanian"
    431578msgstr "Litevština"
    432579
    433 #: ulanguages.slang_lu
     580#: languages.slang_lu
     581msgctxt "languages.slang_lu"
    434582msgid "Luba-Katanga"
    435583msgstr ""
    436584
    437 #: ulanguages.slang_lv
     585#: languages.slang_lv
     586#, fuzzy
     587msgctxt "languages.slang_lv"
    438588msgid "Latvian"
    439589msgstr "Lotyština"
    440590
    441 #: ulanguages.slang_mg
     591#: languages.slang_mg
     592msgctxt "languages.slang_mg"
    442593msgid "Malagasy"
    443594msgstr ""
    444595
    445 #: ulanguages.slang_mh
     596#: languages.slang_mh
     597msgctxt "languages.slang_mh"
    446598msgid "Marshallese"
    447599msgstr ""
    448600
    449 #: ulanguages.slang_mi
     601#: languages.slang_mi
     602msgctxt "languages.slang_mi"
    450603msgid "Maori"
    451604msgstr ""
    452605
    453 #: ulanguages.slang_mk
     606#: languages.slang_mk
     607#, fuzzy
     608msgctxt "languages.slang_mk"
    454609msgid "Macedonian"
    455610msgstr "Makedonština"
    456611
    457 #: ulanguages.slang_ml
     612#: languages.slang_ml
     613msgctxt "languages.slang_ml"
    458614msgid "Malayalam"
    459615msgstr ""
    460616
    461 #: ulanguages.slang_mn
     617#: languages.slang_mn
     618#, fuzzy
     619msgctxt "languages.slang_mn"
    462620msgid "Mongolian"
    463621msgstr "Mongolština"
    464622
    465 #: ulanguages.slang_mo
     623#: languages.slang_mo
     624#, fuzzy
     625msgctxt "languages.slang_mo"
    466626msgid "Moldavian"
    467627msgstr "Moldavština"
    468628
    469 #: ulanguages.slang_mr
     629#: languages.slang_mr
     630msgctxt "languages.slang_mr"
    470631msgid "Marathi"
    471632msgstr ""
    472633
    473 #: ulanguages.slang_ms
     634#: languages.slang_ms
     635msgctxt "languages.slang_ms"
    474636msgid "Malay"
    475637msgstr ""
    476638
    477 #: ulanguages.slang_mt
     639#: languages.slang_mt
     640msgctxt "languages.slang_mt"
    478641msgid "Maltese"
    479642msgstr ""
    480643
    481 #: ulanguages.slang_my
     644#: languages.slang_my
     645msgctxt "languages.slang_my"
    482646msgid "Burmese"
    483647msgstr ""
    484648
    485 #: ulanguages.slang_na
     649#: languages.slang_na
     650msgctxt "languages.slang_na"
    486651msgid "Nauru"
    487652msgstr ""
    488653
    489 #: ulanguages.slang_nb
     654#: languages.slang_nb
     655msgctxt "languages.slang_nb"
    490656msgid "Norwegian Bokmaal"
    491657msgstr ""
    492658
    493 #: ulanguages.slang_nd
     659#: languages.slang_nd
     660msgctxt "languages.slang_nd"
    494661msgid "Ndebele, North"
    495662msgstr ""
    496663
    497 #: ulanguages.slang_ne
     664#: languages.slang_ne
     665msgctxt "languages.slang_ne"
    498666msgid "Nepali"
    499667msgstr ""
    500668
    501 #: ulanguages.slang_ng
     669#: languages.slang_ng
     670msgctxt "languages.slang_ng"
    502671msgid "Ndonga"
    503672msgstr ""
    504673
    505 #: ulanguages.slang_nl
     674#: languages.slang_nl
     675#, fuzzy
     676msgctxt "languages.slang_nl"
    506677msgid "Dutch"
    507678msgstr "Němčina"
    508679
    509 #: ulanguages.slang_nl_be
     680#: languages.slang_nl_be
     681msgctxt "languages.slang_nl_be"
    510682msgid "Flemish"
    511683msgstr ""
    512684
    513 #: ulanguages.slang_nn
     685#: languages.slang_nn
     686msgctxt "languages.slang_nn"
    514687msgid "Norwegian Nynorsk"
    515688msgstr ""
    516689
    517 #: ulanguages.slang_no
     690#: languages.slang_no
     691#, fuzzy
     692msgctxt "languages.slang_no"
    518693msgid "Norwegian"
    519694msgstr "Norština"
    520695
    521 #: ulanguages.slang_nr
     696#: languages.slang_nr
     697msgctxt "languages.slang_nr"
    522698msgid "Ndebele, South"
    523699msgstr ""
    524700
    525 #: ulanguages.slang_nv
     701#: languages.slang_nv
     702#, fuzzy
     703msgctxt "languages.slang_nv"
    526704msgid "Navajo"
    527705msgstr "NavaÅŸÅ¡tina"
    528706
    529 #: ulanguages.slang_ny
     707#: languages.slang_ny
     708msgctxt "languages.slang_ny"
    530709msgid "Chichewa"
    531710msgstr ""
    532711
    533 #: ulanguages.slang_oc
     712#: languages.slang_oc
     713msgctxt "languages.slang_oc"
    534714msgid "Occitan"
    535715msgstr ""
    536716
    537 #: ulanguages.slang_oj
     717#: languages.slang_oj
     718msgctxt "languages.slang_oj"
    538719msgid "Ojibwa"
    539720msgstr ""
    540721
    541 #: ulanguages.slang_om
     722#: languages.slang_om
     723msgctxt "languages.slang_om"
    542724msgid "Oromo"
    543725msgstr ""
    544726
    545 #: ulanguages.slang_or
     727#: languages.slang_or
     728msgctxt "languages.slang_or"
    546729msgid "Oriya"
    547730msgstr ""
    548731
    549 #: ulanguages.slang_os
     732#: languages.slang_os
     733msgctxt "languages.slang_os"
    550734msgid "Ossetian"
    551735msgstr ""
    552736
    553 #: ulanguages.slang_pa
     737#: languages.slang_pa
     738msgctxt "languages.slang_pa"
    554739msgid "Panjabi"
    555740msgstr ""
    556741
    557 #: ulanguages.slang_pi
     742#: languages.slang_pi
     743msgctxt "languages.slang_pi"
    558744msgid "Pali"
    559745msgstr ""
    560746
    561 #: ulanguages.slang_pl
     747#: languages.slang_pl
     748#, fuzzy
     749msgctxt "languages.slang_pl"
    562750msgid "Polish"
    563751msgstr "Polština"
    564752
    565 #: ulanguages.slang_ps
     753#: languages.slang_ps
     754msgctxt "languages.slang_ps"
    566755msgid "Pushto"
    567756msgstr ""
    568757
    569 #: ulanguages.slang_pt
     758#: languages.slang_pt
     759#, fuzzy
     760msgctxt "languages.slang_pt"
    570761msgid "Portuguese"
    571762msgstr "Portugalština"
    572763
    573 #: ulanguages.slang_pt_br
     764#: languages.slang_pt_br
     765#, fuzzy
     766msgctxt "languages.slang_pt_br"
    574767msgid "Brazilian Portuguese"
    575768msgstr "Brazislká portugalština"
    576769
    577 #: ulanguages.slang_qu
     770#: languages.slang_qu
     771msgctxt "languages.slang_qu"
    578772msgid "Quechua"
    579773msgstr ""
    580774
    581 #: ulanguages.slang_rm
     775#: languages.slang_rm
     776msgctxt "languages.slang_rm"
    582777msgid "Raeto-Romance"
    583778msgstr ""
    584779
    585 #: ulanguages.slang_rn
     780#: languages.slang_rn
     781msgctxt "languages.slang_rn"
    586782msgid "Rundi"
    587783msgstr ""
    588784
    589 #: ulanguages.slang_ro
     785#: languages.slang_ro
     786#, fuzzy
     787msgctxt "languages.slang_ro"
    590788msgid "Romanian"
    591789msgstr "Romština"
    592790
    593 #: ulanguages.slang_ru
     791#: languages.slang_ru
     792#, fuzzy
     793msgctxt "languages.slang_ru"
    594794msgid "Russian"
    595795msgstr "Ruština"
    596796
    597 #: ulanguages.slang_rw
     797#: languages.slang_rw
     798msgctxt "languages.slang_rw"
    598799msgid "Kinyarwanda"
    599800msgstr ""
    600801
    601 #: ulanguages.slang_sa
     802#: languages.slang_sa
     803msgctxt "languages.slang_sa"
    602804msgid "Sanskrit"
    603805msgstr ""
    604806
    605 #: ulanguages.slang_sc
     807#: languages.slang_sc
     808msgctxt "languages.slang_sc"
    606809msgid "Sardinian"
    607810msgstr ""
    608811
    609 #: ulanguages.slang_sd
     812#: languages.slang_sd
     813msgctxt "languages.slang_sd"
    610814msgid "Sindhi"
    611815msgstr ""
    612816
    613 #: ulanguages.slang_se
     817#: languages.slang_se
     818msgctxt "languages.slang_se"
    614819msgid "Northern Sami"
    615820msgstr ""
    616821
    617 #: ulanguages.slang_sg
     822#: languages.slang_sg
     823msgctxt "languages.slang_sg"
    618824msgid "Sango"
    619825msgstr ""
    620826
    621 #: ulanguages.slang_si
     827#: languages.slang_si
     828msgctxt "languages.slang_si"
    622829msgid "Sinhalese"
    623830msgstr ""
    624831
    625 #: ulanguages.slang_sk
     832#: languages.slang_sk
     833#, fuzzy
     834msgctxt "languages.slang_sk"
    626835msgid "Slovak"
    627836msgstr "Slovenština"
    628837
    629 #: ulanguages.slang_sl
     838#: languages.slang_sl
     839#, fuzzy
     840msgctxt "languages.slang_sl"
    630841msgid "Slovenian"
    631842msgstr "Slovinština"
    632843
    633 #: ulanguages.slang_sm
     844#: languages.slang_sm
     845msgctxt "languages.slang_sm"
    634846msgid "Samoan"
    635847msgstr ""
    636848
    637 #: ulanguages.slang_sn
     849#: languages.slang_sn
     850msgctxt "languages.slang_sn"
    638851msgid "Shona"
    639852msgstr ""
    640853
    641 #: ulanguages.slang_so
     854#: languages.slang_so
     855msgctxt "languages.slang_so"
    642856msgid "Somali"
    643857msgstr ""
    644858
    645 #: ulanguages.slang_sq
     859#: languages.slang_sq
     860#, fuzzy
     861msgctxt "languages.slang_sq"
    646862msgid "Albanian"
    647863msgstr "Albánština"
    648864
    649 #: ulanguages.slang_sr
     865#: languages.slang_sr
     866msgctxt "languages.slang_sr"
    650867msgid "Serbian"
    651868msgstr ""
    652869
    653 #: ulanguages.slang_ss
     870#: languages.slang_ss
     871msgctxt "languages.slang_ss"
    654872msgid "Swati"
    655873msgstr ""
    656874
    657 #: ulanguages.slang_st
     875#: languages.slang_st
     876msgctxt "languages.slang_st"
    658877msgid "Sotho, Southern"
    659878msgstr ""
    660879
    661 #: ulanguages.slang_su
     880#: languages.slang_su
     881#, fuzzy
     882msgctxt "languages.slang_su"
    662883msgid "Sundanese"
    663884msgstr "Sundština"
    664885
    665 #: ulanguages.slang_sv
     886#: languages.slang_sv
     887#, fuzzy
     888msgctxt "languages.slang_sv"
    666889msgid "Swedish"
    667890msgstr "Švédština"
    668891
    669 #: ulanguages.slang_sw
     892#: languages.slang_sw
     893msgctxt "languages.slang_sw"
    670894msgid "Swahili"
    671895msgstr ""
    672896
    673 #: ulanguages.slang_ta
     897#: languages.slang_ta
     898msgctxt "languages.slang_ta"
    674899msgid "Tamil"
    675900msgstr ""
    676901
    677 #: ulanguages.slang_te
     902#: languages.slang_te
     903msgctxt "languages.slang_te"
    678904msgid "Telugu"
    679905msgstr ""
    680906
    681 #: ulanguages.slang_tg
     907#: languages.slang_tg
     908msgctxt "languages.slang_tg"
    682909msgid "Tajik"
    683910msgstr ""
    684911
    685 #: ulanguages.slang_th
     912#: languages.slang_th
     913msgctxt "languages.slang_th"
    686914msgid "Thai"
    687915msgstr ""
    688916
    689 #: ulanguages.slang_ti
     917#: languages.slang_ti
     918msgctxt "languages.slang_ti"
    690919msgid "Tigrinya"
    691920msgstr ""
    692921
    693 #: ulanguages.slang_tk
     922#: languages.slang_tk
     923msgctxt "languages.slang_tk"
    694924msgid "Turkmen"
    695925msgstr ""
    696926
    697 #: ulanguages.slang_tl
     927#: languages.slang_tl
     928msgctxt "languages.slang_tl"
    698929msgid "Tagalog"
    699930msgstr ""
    700931
    701 #: ulanguages.slang_tn
     932#: languages.slang_tn
     933msgctxt "languages.slang_tn"
    702934msgid "Tswana"
    703935msgstr ""
    704936
    705 #: ulanguages.slang_to
     937#: languages.slang_to
     938msgctxt "languages.slang_to"
    706939msgid "Tonga"
    707940msgstr ""
    708941
    709 #: ulanguages.slang_tr
     942#: languages.slang_tr
     943#, fuzzy
     944msgctxt "languages.slang_tr"
    710945msgid "Turkish"
    711946msgstr "Turečtina"
    712947
    713 #: ulanguages.slang_ts
     948#: languages.slang_ts
     949msgctxt "languages.slang_ts"
    714950msgid "Tsonga"
    715951msgstr ""
    716952
    717 #: ulanguages.slang_tt
     953#: languages.slang_tt
     954#, fuzzy
     955msgctxt "languages.slang_tt"
    718956msgid "Tatar"
    719957msgstr "Tatarština"
    720958
    721 #: ulanguages.slang_tw
     959#: languages.slang_tw
     960msgctxt "languages.slang_tw"
    722961msgid "Twi"
    723962msgstr ""
    724963
    725 #: ulanguages.slang_ty
     964#: languages.slang_ty
     965msgctxt "languages.slang_ty"
    726966msgid "Tahitian"
    727967msgstr ""
    728968
    729 #: ulanguages.slang_ug
     969#: languages.slang_ug
     970msgctxt "languages.slang_ug"
    730971msgid "Uighur"
    731972msgstr ""
    732973
    733 #: ulanguages.slang_uk
     974#: languages.slang_uk
     975#, fuzzy
     976msgctxt "languages.slang_uk"
    734977msgid "Ukrainian"
    735978msgstr "Ukrajinština"
    736979
    737 #: ulanguages.slang_ur
     980#: languages.slang_ur
     981msgctxt "languages.slang_ur"
    738982msgid "Urdu"
    739983msgstr ""
    740984
    741 #: ulanguages.slang_uz
     985#: languages.slang_uz
     986msgctxt "languages.slang_uz"
    742987msgid "Uzbek"
    743988msgstr ""
    744989
    745 #: ulanguages.slang_ve
     990#: languages.slang_ve
     991msgctxt "languages.slang_ve"
    746992msgid "Venda"
    747993msgstr ""
    748994
    749 #: ulanguages.slang_vi
     995#: languages.slang_vi
     996#, fuzzy
     997msgctxt "languages.slang_vi"
    750998msgid "Vietnamese"
    751999msgstr "Vietnamština"
    7521000
    753 #: ulanguages.slang_vo
     1001#: languages.slang_vo
     1002msgctxt "languages.slang_vo"
    7541003msgid "Volapuk"
    7551004msgstr ""
    7561005
    757 #: ulanguages.slang_wa
    758 msgctxt "ulanguages.slang_wa"
     1006#: languages.slang_wa
     1007msgctxt "languages.slang_wa"
    7591008msgid "Walloon"
    7601009msgstr ""
    7611010
    762 #: ulanguages.slang_wo
     1011#: languages.slang_wo
     1012msgctxt "languages.slang_wo"
    7631013msgid "Wolof"
    7641014msgstr ""
    7651015
    766 #: ulanguages.slang_xh
     1016#: languages.slang_xh
     1017msgctxt "languages.slang_xh"
    7671018msgid "Xhosa"
    7681019msgstr ""
    7691020
    770 #: ulanguages.slang_yi
     1021#: languages.slang_yi
     1022msgctxt "languages.slang_yi"
    7711023msgid "Yiddish"
    7721024msgstr ""
    7731025
    774 #: ulanguages.slang_yo
     1026#: languages.slang_yo
     1027msgctxt "languages.slang_yo"
    7751028msgid "Yoruba"
    7761029msgstr ""
    7771030
    778 #: ulanguages.slang_za
     1031#: languages.slang_za
     1032msgctxt "languages.slang_za"
    7791033msgid "Zhuang"
    7801034msgstr ""
    7811035
    782 #: ulanguages.slang_zh
     1036#: languages.slang_zh
     1037#, fuzzy
     1038msgctxt "languages.slang_zh"
    7831039msgid "Chinese"
    7841040msgstr "Čínština"
    7851041
    786 #: ulanguages.slang_zu
     1042#: languages.slang_zu
     1043#, fuzzy
     1044msgctxt "languages.slang_zu"
    7871045msgid "Zulu"
    7881046msgstr "Zuluština"
  • trunk/Packages/Common/Languages/Languages.pot

    r144 r145  
    22msgstr "Content-Type: text/plain; charset=UTF-8"
    33
    4 #: ulanguages.slangauto
     4#: languages.slangauto
    55msgid "Automatic"
    66msgstr ""
    77
    8 #: ulanguages.slang_aa
     8#: languages.slang_aa
    99msgid "Afar"
    1010msgstr ""
    1111
    12 #: ulanguages.slang_ab
     12#: languages.slang_ab
    1313msgid "Abkhazian"
    1414msgstr ""
    1515
    16 #: ulanguages.slang_ae
     16#: languages.slang_ae
    1717msgid "Avestan"
    1818msgstr ""
    1919
    20 #: ulanguages.slang_af
     20#: languages.slang_af
    2121msgid "Afrikaans"
    2222msgstr ""
    2323
    24 #: ulanguages.slang_ak
     24#: languages.slang_ak
    2525msgid "Akan"
    2626msgstr ""
    2727
    28 #: ulanguages.slang_am
     28#: languages.slang_am
    2929msgid "Amharic"
    3030msgstr ""
    3131
    32 #: ulanguages.slang_an
     32#: languages.slang_an
    3333msgid "Aragonese"
    3434msgstr ""
    3535
    36 #: ulanguages.slang_ar
     36#: languages.slang_ar
    3737msgid "Arabic"
    3838msgstr ""
    3939
    40 #: ulanguages.slang_as
     40#: languages.slang_as
    4141msgid "Assamese"
    4242msgstr ""
    4343
    44 #: ulanguages.slang_av
     44#: languages.slang_av
    4545msgid "Avaric"
    4646msgstr ""
    4747
    48 #: ulanguages.slang_ay
     48#: languages.slang_ay
    4949msgid "Aymara"
    5050msgstr ""
    5151
    52 #: ulanguages.slang_az
     52#: languages.slang_az
    5353msgid "Azerbaijani"
    5454msgstr ""
    5555
    56 #: ulanguages.slang_ba
     56#: languages.slang_ba
    5757msgid "Bashkir"
    5858msgstr ""
    5959
    60 #: ulanguages.slang_be
     60#: languages.slang_be
    6161msgid "Belarusian"
    6262msgstr ""
    6363
    64 #: ulanguages.slang_bg
     64#: languages.slang_bg
    6565msgid "Bulgarian"
    6666msgstr ""
    6767
    68 #: ulanguages.slang_bh
     68#: languages.slang_bh
    6969msgid "Bihari"
    7070msgstr ""
    7171
    72 #: ulanguages.slang_bi
     72#: languages.slang_bi
    7373msgid "Bislama"
    7474msgstr ""
    7575
    76 #: ulanguages.slang_bm
     76#: languages.slang_bm
    7777msgid "Bambara"
    7878msgstr ""
    7979
    80 #: ulanguages.slang_bn
     80#: languages.slang_bn
    8181msgid "Bengali"
    8282msgstr ""
    8383
    84 #: ulanguages.slang_bo
     84#: languages.slang_bo
    8585msgid "Tibetan"
    8686msgstr ""
    8787
    88 #: ulanguages.slang_br
     88#: languages.slang_br
    8989msgid "Breton"
    9090msgstr ""
    9191
    92 #: ulanguages.slang_bs
     92#: languages.slang_bs
    9393msgid "Bosnian"
    9494msgstr ""
    9595
    96 #: ulanguages.slang_ca
     96#: languages.slang_ca
    9797msgid "Catalan"
    9898msgstr ""
    9999
    100 #: ulanguages.slang_ce
     100#: languages.slang_ce
    101101msgid "Chechen"
    102102msgstr ""
    103103
    104 #: ulanguages.slang_ch
     104#: languages.slang_ch
    105105msgid "Chamorro"
    106106msgstr ""
    107107
    108 #: ulanguages.slang_co
     108#: languages.slang_co
    109109msgid "Corsican"
    110110msgstr ""
    111111
    112 #: ulanguages.slang_cr
     112#: languages.slang_cr
    113113msgid "Cree"
    114114msgstr ""
    115115
    116 #: ulanguages.slang_cs
     116#: languages.slang_cs
    117117msgid "Czech"
    118118msgstr ""
    119119
    120 #: ulanguages.slang_cv
     120#: languages.slang_cv
    121121msgid "Chuvash"
    122122msgstr ""
    123123
    124 #: ulanguages.slang_cy
     124#: languages.slang_cy
    125125msgid "Welsh"
    126126msgstr ""
    127127
    128 #: ulanguages.slang_da
     128#: languages.slang_da
    129129msgid "Danish"
    130130msgstr ""
    131131
    132 #: ulanguages.slang_de
     132#: languages.slang_de
    133133msgid "German"
    134134msgstr ""
    135135
    136 #: ulanguages.slang_de_at
     136#: languages.slang_de_at
    137137msgid "Austrian German"
    138138msgstr ""
    139139
    140 #: ulanguages.slang_de_ch
     140#: languages.slang_de_ch
    141141msgid "Swiss German"
    142142msgstr ""
    143143
    144 #: ulanguages.slang_dv
     144#: languages.slang_dv
    145145msgid "Divehi"
    146146msgstr ""
    147147
    148 #: ulanguages.slang_dz
     148#: languages.slang_dz
    149149msgid "Dzongkha"
    150150msgstr ""
    151151
    152 #: ulanguages.slang_ee
     152#: languages.slang_ee
    153153msgid "Ewe"
    154154msgstr ""
    155155
    156 #: ulanguages.slang_el
     156#: languages.slang_el
    157157msgid "Greek"
    158158msgstr ""
    159159
    160 #: ulanguages.slang_en
     160#: languages.slang_en
    161161msgid "English"
    162162msgstr ""
    163163
    164 #: ulanguages.slang_en_au
     164#: languages.slang_en_au
    165165msgid "Australian English"
    166166msgstr ""
    167167
    168 #: ulanguages.slang_en_ca
     168#: languages.slang_en_ca
    169169msgid "Canadian English"
    170170msgstr ""
    171171
    172 #: ulanguages.slang_en_gb
     172#: languages.slang_en_gb
    173173msgid "British English"
    174174msgstr ""
    175175
    176 #: ulanguages.slang_en_us
     176#: languages.slang_en_us
    177177msgid "American English"
    178178msgstr ""
    179179
    180 #: ulanguages.slang_eo
     180#: languages.slang_eo
    181181msgid "Esperanto"
    182182msgstr ""
    183183
    184 #: ulanguages.slang_es
     184#: languages.slang_es
    185185msgid "Spanish"
    186186msgstr ""
    187187
    188 #: ulanguages.slang_et
     188#: languages.slang_et
    189189msgid "Estonian"
    190190msgstr ""
    191191
    192 #: ulanguages.slang_eu
     192#: languages.slang_eu
    193193msgid "Basque"
    194194msgstr ""
    195195
    196 #: ulanguages.slang_fa
     196#: languages.slang_fa
    197197msgid "Persian"
    198198msgstr ""
    199199
    200 #: ulanguages.slang_ff
     200#: languages.slang_ff
    201201msgid "Fulah"
    202202msgstr ""
    203203
    204 #: ulanguages.slang_fi
     204#: languages.slang_fi
    205205msgid "Finnish"
    206206msgstr ""
    207207
    208 #: ulanguages.slang_fj
     208#: languages.slang_fj
    209209msgid "Fijian"
    210210msgstr ""
    211211
    212 #: ulanguages.slang_fo
     212#: languages.slang_fo
    213213msgid "Faroese"
    214214msgstr ""
    215215
    216 #: ulanguages.slang_fr
     216#: languages.slang_fr
    217217msgid "French"
    218218msgstr ""
    219219
    220 #: ulanguages.slang_fr_be
    221 msgctxt "ulanguages.slang_fr_be"
     220#: languages.slang_fr_be
     221msgctxt "languages.slang_fr_be"
    222222msgid "Walloon"
    223223msgstr ""
    224224
    225 #: ulanguages.slang_fy
     225#: languages.slang_fy
    226226msgid "Frisian"
    227227msgstr ""
    228228
    229 #: ulanguages.slang_ga
     229#: languages.slang_ga
    230230msgid "Irish"
    231231msgstr ""
    232232
    233 #: ulanguages.slang_gd
     233#: languages.slang_gd
    234234msgid "Gaelic"
    235235msgstr ""
    236236
    237 #: ulanguages.slang_gl
     237#: languages.slang_gl
    238238msgid "Gallegan"
    239239msgstr ""
    240240
    241 #: ulanguages.slang_gn
     241#: languages.slang_gn
    242242msgid "Guarani"
    243243msgstr ""
    244244
    245 #: ulanguages.slang_gu
     245#: languages.slang_gu
    246246msgid "Gujarati"
    247247msgstr ""
    248248
    249 #: ulanguages.slang_gv
     249#: languages.slang_gv
    250250msgid "Manx"
    251251msgstr ""
    252252
    253 #: ulanguages.slang_ha
     253#: languages.slang_ha
    254254msgid "Hausa"
    255255msgstr ""
    256256
    257 #: ulanguages.slang_he
     257#: languages.slang_he
    258258msgid "Hebrew"
    259259msgstr ""
    260260
    261 #: ulanguages.slang_hi
     261#: languages.slang_hi
    262262msgid "Hindi"
    263263msgstr ""
    264264
    265 #: ulanguages.slang_ho
     265#: languages.slang_ho
    266266msgid "Hiri Motu"
    267267msgstr ""
    268268
    269 #: ulanguages.slang_hr
     269#: languages.slang_hr
    270270msgid "Croatian"
    271271msgstr ""
    272272
    273 #: ulanguages.slang_ht
     273#: languages.slang_ht
    274274msgid "Haitian"
    275275msgstr ""
    276276
    277 #: ulanguages.slang_hu
     277#: languages.slang_hu
    278278msgid "Hungarian"
    279279msgstr ""
    280280
    281 #: ulanguages.slang_hy
     281#: languages.slang_hy
    282282msgid "Armenian"
    283283msgstr ""
    284284
    285 #: ulanguages.slang_hz
     285#: languages.slang_hz
    286286msgid "Herero"
    287287msgstr ""
    288288
    289 #: ulanguages.slang_ia
     289#: languages.slang_ia
    290290msgid "Interlingua"
    291291msgstr ""
    292292
    293 #: ulanguages.slang_id
     293#: languages.slang_id
    294294msgid "Indonesian"
    295295msgstr ""
    296296
    297 #: ulanguages.slang_ie
     297#: languages.slang_ie
    298298msgid "Interlingue"
    299299msgstr ""
    300300
    301 #: ulanguages.slang_ig
     301#: languages.slang_ig
    302302msgid "Igbo"
    303303msgstr ""
    304304
    305 #: ulanguages.slang_ii
     305#: languages.slang_ii
    306306msgid "Sichuan Yi"
    307307msgstr ""
    308308
    309 #: ulanguages.slang_ik
     309#: languages.slang_ik
    310310msgid "Inupiaq"
    311311msgstr ""
    312312
    313 #: ulanguages.slang_io
     313#: languages.slang_io
    314314msgid "Ido"
    315315msgstr ""
    316316
    317 #: ulanguages.slang_is
     317#: languages.slang_is
    318318msgid "Icelandic"
    319319msgstr ""
    320320
    321 #: ulanguages.slang_it
     321#: languages.slang_it
    322322msgid "Italian"
    323323msgstr ""
    324324
    325 #: ulanguages.slang_iu
     325#: languages.slang_iu
    326326msgid "Inuktitut"
    327327msgstr ""
    328328
    329 #: ulanguages.slang_ja
     329#: languages.slang_ja
    330330msgid "Japanese"
    331331msgstr ""
    332332
    333 #: ulanguages.slang_jv
     333#: languages.slang_jv
    334334msgid "Javanese"
    335335msgstr ""
    336336
    337 #: ulanguages.slang_ka
     337#: languages.slang_ka
    338338msgid "Georgian"
    339339msgstr ""
    340340
    341 #: ulanguages.slang_kg
     341#: languages.slang_kg
    342342msgid "Kongo"
    343343msgstr ""
    344344
    345 #: ulanguages.slang_ki
     345#: languages.slang_ki
    346346msgid "Kikuyu"
    347347msgstr ""
    348348
    349 #: ulanguages.slang_kj
     349#: languages.slang_kj
    350350msgid "Kuanyama"
    351351msgstr ""
    352352
    353 #: ulanguages.slang_kk
     353#: languages.slang_kk
    354354msgid "Kazakh"
    355355msgstr ""
    356356
    357 #: ulanguages.slang_kl
     357#: languages.slang_kl
    358358msgid "Greenlandic"
    359359msgstr ""
    360360
    361 #: ulanguages.slang_km
     361#: languages.slang_km
    362362msgid "Khmer"
    363363msgstr ""
    364364
    365 #: ulanguages.slang_kn
     365#: languages.slang_kn
    366366msgid "Kannada"
    367367msgstr ""
    368368
    369 #: ulanguages.slang_ko
     369#: languages.slang_ko
    370370msgid "Korean"
    371371msgstr ""
    372372
    373 #: ulanguages.slang_kr
     373#: languages.slang_kr
    374374msgid "Kanuri"
    375375msgstr ""
    376376
    377 #: ulanguages.slang_ks
     377#: languages.slang_ks
    378378msgid "Kashmiri"
    379379msgstr ""
    380380
    381 #: ulanguages.slang_ku
     381#: languages.slang_ku
    382382msgid "Kurdish"
    383383msgstr ""
    384384
    385 #: ulanguages.slang_kv
     385#: languages.slang_kv
    386386msgid "Komi"
    387387msgstr ""
    388388
    389 #: ulanguages.slang_kw
     389#: languages.slang_kw
    390390msgid "Cornish"
    391391msgstr ""
    392392
    393 #: ulanguages.slang_ky
     393#: languages.slang_ky
    394394msgid "Kirghiz"
    395395msgstr ""
    396396
    397 #: ulanguages.slang_la
     397#: languages.slang_la
    398398msgid "Latin"
    399399msgstr ""
    400400
    401 #: ulanguages.slang_lb
     401#: languages.slang_lb
    402402msgid "Luxembourgish"
    403403msgstr ""
    404404
    405 #: ulanguages.slang_lg
     405#: languages.slang_lg
    406406msgid "Ganda"
    407407msgstr ""
    408408
    409 #: ulanguages.slang_li
     409#: languages.slang_li
    410410msgid "Limburgan"
    411411msgstr ""
    412412
    413 #: ulanguages.slang_ln
     413#: languages.slang_ln
    414414msgid "Lingala"
    415415msgstr ""
    416416
    417 #: ulanguages.slang_lo
     417#: languages.slang_lo
    418418msgid "Lao"
    419419msgstr ""
    420420
    421 #: ulanguages.slang_lt
     421#: languages.slang_lt
    422422msgid "Lithuanian"
    423423msgstr ""
    424424
    425 #: ulanguages.slang_lu
     425#: languages.slang_lu
    426426msgid "Luba-Katanga"
    427427msgstr ""
    428428
    429 #: ulanguages.slang_lv
     429#: languages.slang_lv
    430430msgid "Latvian"
    431431msgstr ""
    432432
    433 #: ulanguages.slang_mg
     433#: languages.slang_mg
    434434msgid "Malagasy"
    435435msgstr ""
    436436
    437 #: ulanguages.slang_mh
     437#: languages.slang_mh
    438438msgid "Marshallese"
    439439msgstr ""
    440440
    441 #: ulanguages.slang_mi
     441#: languages.slang_mi
    442442msgid "Maori"
    443443msgstr ""
    444444
    445 #: ulanguages.slang_mk
     445#: languages.slang_mk
    446446msgid "Macedonian"
    447447msgstr ""
    448448
    449 #: ulanguages.slang_ml
     449#: languages.slang_ml
    450450msgid "Malayalam"
    451451msgstr ""
    452452
    453 #: ulanguages.slang_mn
     453#: languages.slang_mn
    454454msgid "Mongolian"
    455455msgstr ""
    456456
    457 #: ulanguages.slang_mo
     457#: languages.slang_mo
    458458msgid "Moldavian"
    459459msgstr ""
    460460
    461 #: ulanguages.slang_mr
     461#: languages.slang_mr
    462462msgid "Marathi"
    463463msgstr ""
    464464
    465 #: ulanguages.slang_ms
     465#: languages.slang_ms
    466466msgid "Malay"
    467467msgstr ""
    468468
    469 #: ulanguages.slang_mt
     469#: languages.slang_mt
    470470msgid "Maltese"
    471471msgstr ""
    472472
    473 #: ulanguages.slang_my
     473#: languages.slang_my
    474474msgid "Burmese"
    475475msgstr ""
    476476
    477 #: ulanguages.slang_na
     477#: languages.slang_na
    478478msgid "Nauru"
    479479msgstr ""
    480480
    481 #: ulanguages.slang_nb
     481#: languages.slang_nb
    482482msgid "Norwegian Bokmaal"
    483483msgstr ""
    484484
    485 #: ulanguages.slang_nd
     485#: languages.slang_nd
    486486msgid "Ndebele, North"
    487487msgstr ""
    488488
    489 #: ulanguages.slang_ne
     489#: languages.slang_ne
    490490msgid "Nepali"
    491491msgstr ""
    492492
    493 #: ulanguages.slang_ng
     493#: languages.slang_ng
    494494msgid "Ndonga"
    495495msgstr ""
    496496
    497 #: ulanguages.slang_nl
     497#: languages.slang_nl
    498498msgid "Dutch"
    499499msgstr ""
    500500
    501 #: ulanguages.slang_nl_be
     501#: languages.slang_nl_be
    502502msgid "Flemish"
    503503msgstr ""
    504504
    505 #: ulanguages.slang_nn
     505#: languages.slang_nn
    506506msgid "Norwegian Nynorsk"
    507507msgstr ""
    508508
    509 #: ulanguages.slang_no
     509#: languages.slang_no
    510510msgid "Norwegian"
    511511msgstr ""
    512512
    513 #: ulanguages.slang_nr
     513#: languages.slang_nr
    514514msgid "Ndebele, South"
    515515msgstr ""
    516516
    517 #: ulanguages.slang_nv
     517#: languages.slang_nv
    518518msgid "Navajo"
    519519msgstr ""
    520520
    521 #: ulanguages.slang_ny
     521#: languages.slang_ny
    522522msgid "Chichewa"
    523523msgstr ""
    524524
    525 #: ulanguages.slang_oc
     525#: languages.slang_oc
    526526msgid "Occitan"
    527527msgstr ""
    528528
    529 #: ulanguages.slang_oj
     529#: languages.slang_oj
    530530msgid "Ojibwa"
    531531msgstr ""
    532532
    533 #: ulanguages.slang_om
     533#: languages.slang_om
    534534msgid "Oromo"
    535535msgstr ""
    536536
    537 #: ulanguages.slang_or
     537#: languages.slang_or
    538538msgid "Oriya"
    539539msgstr ""
    540540
    541 #: ulanguages.slang_os
     541#: languages.slang_os
    542542msgid "Ossetian"
    543543msgstr ""
    544544
    545 #: ulanguages.slang_pa
     545#: languages.slang_pa
    546546msgid "Panjabi"
    547547msgstr ""
    548548
    549 #: ulanguages.slang_pi
     549#: languages.slang_pi
    550550msgid "Pali"
    551551msgstr ""
    552552
    553 #: ulanguages.slang_pl
     553#: languages.slang_pl
    554554msgid "Polish"
    555555msgstr ""
    556556
    557 #: ulanguages.slang_ps
     557#: languages.slang_ps
    558558msgid "Pushto"
    559559msgstr ""
    560560
    561 #: ulanguages.slang_pt
     561#: languages.slang_pt
    562562msgid "Portuguese"
    563563msgstr ""
    564564
    565 #: ulanguages.slang_pt_br
     565#: languages.slang_pt_br
    566566msgid "Brazilian Portuguese"
    567567msgstr ""
    568568
    569 #: ulanguages.slang_qu
     569#: languages.slang_qu
    570570msgid "Quechua"
    571571msgstr ""
    572572
    573 #: ulanguages.slang_rm
     573#: languages.slang_rm
    574574msgid "Raeto-Romance"
    575575msgstr ""
    576576
    577 #: ulanguages.slang_rn
     577#: languages.slang_rn
    578578msgid "Rundi"
    579579msgstr ""
    580580
    581 #: ulanguages.slang_ro
     581#: languages.slang_ro
    582582msgid "Romanian"
    583583msgstr ""
    584584
    585 #: ulanguages.slang_ru
     585#: languages.slang_ru
    586586msgid "Russian"
    587587msgstr ""
    588588
    589 #: ulanguages.slang_rw
     589#: languages.slang_rw
    590590msgid "Kinyarwanda"
    591591msgstr ""
    592592
    593 #: ulanguages.slang_sa
     593#: languages.slang_sa
    594594msgid "Sanskrit"
    595595msgstr ""
    596596
    597 #: ulanguages.slang_sc
     597#: languages.slang_sc
    598598msgid "Sardinian"
    599599msgstr ""
    600600
    601 #: ulanguages.slang_sd
     601#: languages.slang_sd
    602602msgid "Sindhi"
    603603msgstr ""
    604604
    605 #: ulanguages.slang_se
     605#: languages.slang_se
    606606msgid "Northern Sami"
    607607msgstr ""
    608608
    609 #: ulanguages.slang_sg
     609#: languages.slang_sg
    610610msgid "Sango"
    611611msgstr ""
    612612
    613 #: ulanguages.slang_si
     613#: languages.slang_si
    614614msgid "Sinhalese"
    615615msgstr ""
    616616
    617 #: ulanguages.slang_sk
     617#: languages.slang_sk
    618618msgid "Slovak"
    619619msgstr ""
    620620
    621 #: ulanguages.slang_sl
     621#: languages.slang_sl
    622622msgid "Slovenian"
    623623msgstr ""
    624624
    625 #: ulanguages.slang_sm
     625#: languages.slang_sm
    626626msgid "Samoan"
    627627msgstr ""
    628628
    629 #: ulanguages.slang_sn
     629#: languages.slang_sn
    630630msgid "Shona"
    631631msgstr ""
    632632
    633 #: ulanguages.slang_so
     633#: languages.slang_so
    634634msgid "Somali"
    635635msgstr ""
    636636
    637 #: ulanguages.slang_sq
     637#: languages.slang_sq
    638638msgid "Albanian"
    639639msgstr ""
    640640
    641 #: ulanguages.slang_sr
     641#: languages.slang_sr
    642642msgid "Serbian"
    643643msgstr ""
    644644
    645 #: ulanguages.slang_ss
     645#: languages.slang_ss
    646646msgid "Swati"
    647647msgstr ""
    648648
    649 #: ulanguages.slang_st
     649#: languages.slang_st
    650650msgid "Sotho, Southern"
    651651msgstr ""
    652652
    653 #: ulanguages.slang_su
     653#: languages.slang_su
    654654msgid "Sundanese"
    655655msgstr ""
    656656
    657 #: ulanguages.slang_sv
     657#: languages.slang_sv
    658658msgid "Swedish"
    659659msgstr ""
    660660
    661 #: ulanguages.slang_sw
     661#: languages.slang_sw
    662662msgid "Swahili"
    663663msgstr ""
    664664
    665 #: ulanguages.slang_ta
     665#: languages.slang_ta
    666666msgid "Tamil"
    667667msgstr ""
    668668
    669 #: ulanguages.slang_te
     669#: languages.slang_te
    670670msgid "Telugu"
    671671msgstr ""
    672672
    673 #: ulanguages.slang_tg
     673#: languages.slang_tg
    674674msgid "Tajik"
    675675msgstr ""
    676676
    677 #: ulanguages.slang_th
     677#: languages.slang_th
    678678msgid "Thai"
    679679msgstr ""
    680680
    681 #: ulanguages.slang_ti
     681#: languages.slang_ti
    682682msgid "Tigrinya"
    683683msgstr ""
    684684
    685 #: ulanguages.slang_tk
     685#: languages.slang_tk
    686686msgid "Turkmen"
    687687msgstr ""
    688688
    689 #: ulanguages.slang_tl
     689#: languages.slang_tl
    690690msgid "Tagalog"
    691691msgstr ""
    692692
    693 #: ulanguages.slang_tn
     693#: languages.slang_tn
    694694msgid "Tswana"
    695695msgstr ""
    696696
    697 #: ulanguages.slang_to
     697#: languages.slang_to
    698698msgid "Tonga"
    699699msgstr ""
    700700
    701 #: ulanguages.slang_tr
     701#: languages.slang_tr
    702702msgid "Turkish"
    703703msgstr ""
    704704
    705 #: ulanguages.slang_ts
     705#: languages.slang_ts
    706706msgid "Tsonga"
    707707msgstr ""
    708708
    709 #: ulanguages.slang_tt
     709#: languages.slang_tt
    710710msgid "Tatar"
    711711msgstr ""
    712712
    713 #: ulanguages.slang_tw
     713#: languages.slang_tw
    714714msgid "Twi"
    715715msgstr ""
    716716
    717 #: ulanguages.slang_ty
     717#: languages.slang_ty
    718718msgid "Tahitian"
    719719msgstr ""
    720720
    721 #: ulanguages.slang_ug
     721#: languages.slang_ug
    722722msgid "Uighur"
    723723msgstr ""
    724724
    725 #: ulanguages.slang_uk
     725#: languages.slang_uk
    726726msgid "Ukrainian"
    727727msgstr ""
    728728
    729 #: ulanguages.slang_ur
     729#: languages.slang_ur
    730730msgid "Urdu"
    731731msgstr ""
    732732
    733 #: ulanguages.slang_uz
     733#: languages.slang_uz
    734734msgid "Uzbek"
    735735msgstr ""
    736736
    737 #: ulanguages.slang_ve
     737#: languages.slang_ve
    738738msgid "Venda"
    739739msgstr ""
    740740
    741 #: ulanguages.slang_vi
     741#: languages.slang_vi
    742742msgid "Vietnamese"
    743743msgstr ""
    744744
    745 #: ulanguages.slang_vo
     745#: languages.slang_vo
    746746msgid "Volapuk"
    747747msgstr ""
    748748
    749 #: ulanguages.slang_wa
    750 msgctxt "ulanguages.slang_wa"
     749#: languages.slang_wa
     750msgctxt "languages.slang_wa"
    751751msgid "Walloon"
    752752msgstr ""
    753753
    754 #: ulanguages.slang_wo
     754#: languages.slang_wo
    755755msgid "Wolof"
    756756msgstr ""
    757757
    758 #: ulanguages.slang_xh
     758#: languages.slang_xh
    759759msgid "Xhosa"
    760760msgstr ""
    761761
    762 #: ulanguages.slang_yi
     762#: languages.slang_yi
    763763msgid "Yiddish"
    764764msgstr ""
    765765
    766 #: ulanguages.slang_yo
     766#: languages.slang_yo
    767767msgid "Yoruba"
    768768msgstr ""
    769769
    770 #: ulanguages.slang_za
     770#: languages.slang_za
    771771msgid "Zhuang"
    772772msgstr ""
    773773
    774 #: ulanguages.slang_zh
     774#: languages.slang_zh
    775775msgid "Chinese"
    776776msgstr ""
    777777
    778 #: ulanguages.slang_zu
     778#: languages.slang_zu
    779779msgid "Zulu"
    780780msgstr ""
  • trunk/Packages/Common/Languages/Pool.cs.po

    r144 r145  
    1010"Content-Transfer-Encoding: 8bit\n"
    1111
    12 #: upool.sobjectpoolempty
     12#: pool.sobjectpoolempty
     13#, fuzzy
     14msgctxt "pool.sobjectpoolempty"
    1315msgid "Object pool is empty"
    1416msgstr "Zásobník objektů je prázdnÜ"
    1517
    16 #: upool.sreleaseerror
     18#: pool.sreleaseerror
     19#, fuzzy
     20msgctxt "pool.sreleaseerror"
    1721msgid "Unknown object for release from pool"
    1822msgstr "NeznÃœmÃœ objekt pro uvolnění ze zásobníku"
  • trunk/Packages/Common/Languages/Pool.pot

    r144 r145  
    22msgstr "Content-Type: text/plain; charset=UTF-8"
    33
    4 #: upool.sobjectpoolempty
     4#: pool.sobjectpoolempty
    55msgid "Object pool is empty"
    66msgstr ""
    77
    8 #: upool.sreleaseerror
     8#: pool.sreleaseerror
    99msgid "Unknown object for release from pool"
    1010msgstr ""
  • trunk/Packages/Common/Languages/ResetableThread.cs.po

    r144 r145  
    1010"Content-Transfer-Encoding: 8bit\n"
    1111
    12 #: uresetablethread.swaiterror
     12#: resetablethread.swaiterror
     13#, fuzzy
     14msgctxt "resetablethread.swaiterror"
    1315msgid "WaitFor error"
    1416msgstr "Chyba WaitFor"
  • trunk/Packages/Common/Languages/ResetableThread.pot

    r144 r145  
    22msgstr "Content-Type: text/plain; charset=UTF-8"
    33
    4 #: uresetablethread.swaiterror
     4#: resetablethread.swaiterror
    55msgid "WaitFor error"
    66msgstr ""
  • trunk/Packages/Common/Languages/ScaleDPI.cs.po

    r144 r145  
    1212"X-Generator: Poedit 1.8.9\n"
    1313
    14 #: uscaledpi.swrongdpi
    15 #, object-pascal-format
     14#: scaledpi.swrongdpi
     15#, object-pascal-format, fuzzy
     16msgctxt "scaledpi.swrongdpi"
    1617msgid "Wrong DPI [%d,%d]"
    1718msgstr "Chybné DPI [%d,%d]"
  • trunk/Packages/Common/Languages/ScaleDPI.pot

    r144 r145  
    22msgstr "Content-Type: text/plain; charset=UTF-8"
    33
    4 #: uscaledpi.swrongdpi
     4#: scaledpi.swrongdpi
    55#, object-pascal-format
    66msgid "Wrong DPI [%d,%d]"
  • trunk/Packages/Common/Languages/Threading.cs.po

    r144 r145  
    1010"Content-Transfer-Encoding: 8bit\n"
    1111
    12 #: uthreading.scurrentthreadnotfound
    13 #, object-pascal-format
     12#: threading.scurrentthreadnotfound
     13#, object-pascal-format, fuzzy
     14msgctxt "threading.scurrentthreadnotfound"
    1415msgid "Current thread ID %d not found in virtual thread list."
    1516msgstr "Aktuální vlákno ID %d nenalezeno v seznamu virtuálních vláken."
  • trunk/Packages/Common/Languages/Threading.pot

    r144 r145  
    22msgstr "Content-Type: text/plain; charset=UTF-8"
    33
    4 #: uthreading.scurrentthreadnotfound
     4#: threading.scurrentthreadnotfound
    55#, object-pascal-format
    66msgid "Current thread ID %d not found in virtual thread list."
  • trunk/Packages/Common/LastOpenedList.pas

    r144 r145  
    1 unit ULastOpenedList;
     1unit LastOpenedList;
    22
    33interface
    44
    55uses
    6   Classes, SysUtils, Registry, URegistry, Menus, XMLConf, DOM;
     6  Classes, SysUtils, Registry, RegistryEx, Menus, XMLConf, DOM;
    77
    88type
     
    194194
    195195end.
    196 
  • trunk/Packages/Common/ListViewSort.pas

    r144 r145  
    1 unit UListViewSort;
     1unit ListViewSort;
    22
    33// Date: 2019-05-17
     
    77uses
    88  {$IFDEF Windows}Windows, CommCtrl, LMessages, {$ENDIF}Classes, Graphics, ComCtrls, SysUtils,
    9   Controls, DateUtils, Dialogs, fgl, Forms, Grids, StdCtrls, ExtCtrls,
    10   LclIntf, LclType, LResources;
     9  Controls, DateUtils, Dialogs, Forms, Grids, StdCtrls, ExtCtrls,
     10  LclIntf, LclType, LResources, Generics.Collections, Generics.Defaults;
    1111
    1212type
     
    1717  TCompareEvent = function (Item1, Item2: TObject): Integer of object;
    1818  TListFilterEvent = procedure (ListViewSort: TListViewSort) of object;
     19
     20  TObjects = TObjectList<TObject>;
    1921
    2022  { TListViewSort }
     
    5052    {$ENDIF}
    5153  public
    52     List: TFPGObjectList<TObject>;
    53     Source: TFPGObjectList<TObject>;
     54    Source: TObjects;
     55    List: TObjects;
    5456    constructor Create(AOwner: TComponent); override;
    5557    destructor Destroy; override;
     
    147149destructor TListViewEx.Destroy;
    148150begin
    149   inherited Destroy;
     151  inherited;
    150152end;
    151153
     
    336338  ListViewSortCompare: TCompareEvent;
    337339
    338 function ListViewCompare(const Item1, Item2: TObject): Integer;
     340function ListViewCompare(constref Item1, Item2: TObject): Integer;
    339341begin
    340342  Result := ListViewSortCompare(Item1, Item2);
     
    347349  ListViewSortCompare := Compare;
    348350  if (List.Count > 0) then
    349     List.Sort(ListViewCompare);
     351    List.Sort(TComparer<TObject>.Construct(ListViewCompare));
    350352end;
    351353
     
    353355begin
    354356  if Assigned(FOnFilter) then FOnFilter(Self)
    355   else if Assigned(Source) then
    356     List.Assign(Source) else
     357  else if Assigned(Source) then begin
    357358    List.Clear;
     359    List.AddRange(Source);
     360  end else List.Clear;
    358361  if ListView.Items.Count <> List.Count then
    359362    ListView.Items.Count := List.Count;
     
    410413begin
    411414  inherited;
    412   List := TFPGObjectList<TObject>.Create;
    413   List.FreeObjects := False;
     415  List := TObjects.Create;
     416  List.OwnsObjects := False;
    414417end;
    415418
    416419destructor TListViewSort.Destroy;
    417420begin
    418   List.Free;
     421  FreeAndNil(List);
    419422  inherited;
    420423end;
  • trunk/Packages/Common/Memory.pas

    r144 r145  
    1 unit UMemory;
     1unit Memory;
    22
    33interface
     
    4242  end;
    4343
     44
    4445implementation
    4546
     
    4849procedure TPositionMemory.SetSize(AValue: Integer);
    4950begin
    50   inherited SetSize(AValue);
     51  inherited;
    5152  if FPosition > FSize then FPosition := FSize;
    5253end;
     
    105106begin
    106107  Size := 0;
    107   inherited Destroy;
     108  inherited;
    108109end;
    109110
     
    119120
    120121end.
    121 
  • trunk/Packages/Common/MetaCanvas.pas

    r144 r145  
    1 unit UMetaCanvas;
     1unit MetaCanvas;
    22
    33interface
    44
    55uses
    6   Classes, SysUtils, Graphics, Types, fgl;
     6  Classes, SysUtils, Graphics, Types, Generics.Collections;
    77
    88type
     
    1717  end;
    1818
    19   TCanvasObjects = class(TFPGObjectList<TCanvasObject>)
     19  TCanvasObjects = class(TObjectList<TCanvasObject>)
    2020  end;
    2121
     
    6363
    6464  TCanvasPolygon = class(TCanvasObject)
     65    Pen: TPen;
     66    Brush: TBrush;
     67    Points: array of TPoint;
     68    procedure Paint(Canvas: TCanvas); override;
     69    procedure Zoom(Factor: Double); override;
     70    procedure Move(Delta: TPoint); override;
     71    constructor Create;
     72    destructor Destroy; override;
     73  end;
     74
     75  { TCanvasPolyline }
     76
     77  TCanvasPolyline = class(TCanvasObject)
     78    Pen: TPen;
     79    Brush: TBrush;
     80    Points: array of TPoint;
     81    procedure Paint(Canvas: TCanvas); override;
     82    procedure Zoom(Factor: Double); override;
     83    procedure Move(Delta: TPoint); override;
     84    constructor Create;
     85    destructor Destroy; override;
     86  end;
     87
     88  { TCanvasPolyBezier }
     89
     90  TCanvasPolyBezier = class(TCanvasObject)
    6591    Pen: TPen;
    6692    Brush: TBrush;
     
    133159    procedure DoMoveTo(X, Y: Integer); override;
    134160    procedure DoLineTo(X, Y: Integer); override;
     161    procedure DoPolyline(const Points: array of TPoint); override;
     162    procedure DoPolyBezier(Points: PPoint; NumPts: Integer;
     163      Filled: Boolean = False; Continuous: Boolean = False); override;
    135164  public
    136165    Objects: TCanvasObjects;
     
    141170    procedure TextOut(X,Y: Integer; const Text: String); override;
    142171    procedure Polygon(Points: PPoint; NumPts: Integer; Winding: Boolean = False); override;
     172    procedure Polyline(Points: PPoint; NumPts: Integer); override;
     173    procedure PolyBezier(Points: PPoint; NumPts: Integer;
     174      Filled: Boolean = False; Continuous: Boolean = True); override;
    143175    procedure Ellipse(x1, y1, x2, y2: Integer); override;
    144176    procedure StretchDraw(const DestRect: TRect; SrcGraphic: TGraphic); override;
     
    159191
    160192uses
    161   UGeometric, LCLIntf;
     193  Geometric, LCLIntf;
     194
     195{ TCanvasPolyBezier }
     196
     197procedure TCanvasPolyBezier.Paint(Canvas: TCanvas);
     198begin
     199  Canvas.Pen.Assign(Pen);
     200  Canvas.Brush.Assign(Brush);
     201  Canvas.PolyBezier(Points);
     202end;
     203
     204procedure TCanvasPolyBezier.Zoom(Factor: Double);
     205var
     206  I: Integer;
     207begin
     208  for I := 0 to High(Points) do
     209    Points[I] := Point(Trunc(Points[I].X * Factor),
     210      Trunc(Points[I].Y * Factor));
     211  Pen.Width := Trunc(Pen.Width * Factor);
     212end;
     213
     214procedure TCanvasPolyBezier.Move(Delta: TPoint);
     215var
     216  I: Integer;
     217begin
     218  for I := 0 to High(Points) do
     219    Points[I] := AddPoint(Points[I], Delta);
     220end;
     221
     222constructor TCanvasPolyBezier.Create;
     223begin
     224  Pen := TPen.Create;
     225  Brush := TBrush.Create;
     226end;
     227
     228destructor TCanvasPolyBezier.Destroy;
     229begin
     230  FreeAndNil(Brush);
     231  FreeAndNil(Pen);
     232  inherited;
     233end;
     234
     235{ TCanvasPolyline }
     236
     237procedure TCanvasPolyline.Paint(Canvas: TCanvas);
     238begin
     239  Canvas.Pen.Assign(Pen);
     240  Canvas.Brush.Assign(Brush);
     241  Canvas.Polyline(Points);
     242end;
     243
     244procedure TCanvasPolyline.Zoom(Factor: Double);
     245var
     246  I: Integer;
     247begin
     248  for I := 0 to High(Points) do
     249    Points[I] := Point(Trunc(Points[I].X * Factor),
     250      Trunc(Points[I].Y * Factor));
     251  Pen.Width := Trunc(Pen.Width * Factor);
     252end;
     253
     254procedure TCanvasPolyline.Move(Delta: TPoint);
     255var
     256  I: Integer;
     257begin
     258  for I := 0 to High(Points) do
     259    Points[I] := AddPoint(Points[I], Delta);
     260end;
     261
     262constructor TCanvasPolyline.Create;
     263begin
     264  Pen := TPen.Create;
     265  Brush := TBrush.Create;
     266end;
     267
     268destructor TCanvasPolyline.Destroy;
     269begin
     270  FreeAndNil(Brush);
     271  FreeAndNil(Pen);
     272  inherited;
     273end;
    162274
    163275{ TCanvasPie }
     
    304416destructor TCanvasPolygon.Destroy;
    305417begin
    306   Brush.Free;
    307   Pen.Free;
     418  FreeAndNil(Brush);
     419  FreeAndNil(Pen);
    308420  inherited;
    309421end;
     
    511623    APoints[I] := Points[I];
    512624  DoPolygon(APoints);
     625end;
     626
     627procedure TMetaCanvas.Polyline(Points: PPoint; NumPts: Integer);
     628var
     629  APoints: array of TPoint;
     630  I: Integer;
     631begin
     632  APoints := nil;
     633  SetLength(APoints, NumPts);
     634  for I := 0 to High(APoints) do
     635    APoints[I] := Points[I];
     636  DoPolyline(APoints);
     637end;
     638
     639procedure TMetaCanvas.PolyBezier(Points: PPoint; NumPts: Integer;
     640  Filled: Boolean; Continuous: Boolean);
     641begin
     642  DoPolyBezier(Points, NumPts, Filled, Continuous);
    513643end;
    514644
     
    580710end;
    581711
     712procedure TMetaCanvas.DoPolyline(const Points: array of TPoint);
     713var
     714  NewObj: TCanvasPolyline;
     715  I: Integer;
     716begin
     717  NewObj := TCanvasPolyline.Create;
     718  NewObj.Brush.Assign(Brush);
     719  NewObj.Pen.Assign(Pen);
     720  SetLength(NewObj.Points, Length(Points));
     721  for I := 0 to High(Points) do
     722    NewObj.Points[I] := Points[I];
     723  Objects.Add(NewObj);
     724end;
     725
     726procedure TMetaCanvas.DoPolyBezier(Points: PPoint; NumPts: Integer;
     727  Filled: Boolean; Continuous: Boolean);
     728var
     729  NewObj: TCanvasPolyBezier;
     730  I: Integer;
     731begin
     732  NewObj := TCanvasPolyBezier.Create;
     733  NewObj.Brush.Assign(Brush);
     734  NewObj.Pen.Assign(Pen);
     735  SetLength(NewObj.Points, NumPts);
     736  for I := 0 to High(NewObj.Points) do
     737    NewObj.Points[I] := Points[I];
     738  Objects.Add(NewObj);
     739end;
     740
    582741procedure TMetaCanvas.FillRect(const ARect: TRect);
    583742begin
     
    664823
    665824end.
    666 
  • trunk/Packages/Common/PersistentForm.pas

    r144 r145  
    1 unit UPersistentForm;
    2 
    3 // Date: 2020-11-26
     1unit PersistentForm;
    42
    53interface
    64
    75uses
    8   Classes, SysUtils, Forms, URegistry, LCLIntf, Registry, Controls, ComCtrls,
     6  Classes, SysUtils, Forms, RegistryEx, LCLIntf, Registry, Controls, ComCtrls,
    97  ExtCtrls, LCLType;
    108
     
    2119    procedure SaveControl(Control: TControl);
    2220  public
    23     FormNormalSize: TRect;
    2421    FormRestoredSize: TRect;
    2522    FormWindowState: TWindowState;
     
    155152    RootKey := RegistryContext.RootKey;
    156153    OpenKey(RegistryContext.Key + '\Forms\' + Form.Name, True);
    157     // Normal size
    158     FormNormalSize.Left := ReadIntegerWithDefault('NormalLeft', FormNormalSize.Left);
    159     FormNormalSize.Top := ReadIntegerWithDefault('NormalTop', FormNormalSize.Top);
    160     FormNormalSize.Right := ReadIntegerWithDefault('NormalWidth', FormNormalSize.Right - FormNormalSize.Left)
    161       + FormNormalSize.Left;
    162     FormNormalSize.Bottom := ReadIntegerWithDefault('NormalHeight', FormNormalSize.Bottom - FormNormalSize.Top)
    163       + FormNormalSize.Top;
     154
    164155    // Restored size
    165156    FormRestoredSize.Left := ReadIntegerWithDefault('RestoredLeft', FormRestoredSize.Left);
     
    169160    FormRestoredSize.Bottom := ReadIntegerWithDefault('RestoredHeight', FormRestoredSize.Bottom - FormRestoredSize.Top)
    170161      + FormRestoredSize.Top;
     162
    171163    // Other state
    172164    FormWindowState := TWindowState(ReadIntegerWithDefault('WindowState', Integer(FormWindowState)));
     
    183175    RootKey := RegistryContext.RootKey;
    184176    OpenKey(RegistryContext.Key + '\Forms\' + Form.Name, True);
    185     // Normal state
    186     WriteInteger('NormalWidth', FormNormalSize.Right - FormNormalSize.Left);
    187     WriteInteger('NormalHeight', FormNormalSize.Bottom - FormNormalSize.Top);
    188     WriteInteger('NormalTop', FormNormalSize.Top);
    189     WriteInteger('NormalLeft', FormNormalSize.Left);
    190     // Restored state
     177
     178    // Restored size
    191179    WriteInteger('RestoredWidth', FormRestoredSize.Right - FormRestoredSize.Left);
    192180    WriteInteger('RestoredHeight', FormRestoredSize.Bottom - FormRestoredSize.Top);
    193181    WriteInteger('RestoredTop', FormRestoredSize.Top);
    194182    WriteInteger('RestoredLeft', FormRestoredSize.Left);
     183
    195184    // Other state
    196185    WriteInteger('WindowState', Integer(FormWindowState));
     
    257246begin
    258247  Self.Form := Form;
     248
    259249  // Set default
    260   FormNormalSize := Bounds((Screen.Width - Form.Width) div 2,
    261     (Screen.Height - Form.Height) div 2, Form.Width, Form.Height);
    262250  FormRestoredSize := Bounds((Screen.Width - Form.Width) div 2,
    263251    (Screen.Height - Form.Height) div 2, Form.Width, Form.Height);
     
    267255  LoadFromRegistry(RegistryContext);
    268256
    269   if not EqualRect(FormNormalSize, FormRestoredSize) or
    270     DefaultMaximized then begin
     257  if (FormWindowState = wsMaximized) or DefaultMaximized then begin
    271258    // Restore to maximized state
    272259    Form.WindowState := wsNormal;
     
    277264    // Restore to normal state
    278265    Form.WindowState := wsNormal;
    279     if FEntireVisible then FormNormalSize := CheckEntireVisible(FormNormalSize)
     266    if FEntireVisible then FormRestoredSize := CheckEntireVisible(FormRestoredSize)
    280267      else if FMinVisiblePart > 0 then
    281     FormNormalSize := CheckPartVisible(FormNormalSize, FMinVisiblePart);
    282     if not EqualRect(FormNormalSize, Form.BoundsRect) then
    283       Form.BoundsRect := FormNormalSize;
     268        FormRestoredSize := CheckPartVisible(FormRestoredSize, FMinVisiblePart);
     269    if not EqualRect(FormRestoredSize, Form.BoundsRect) then
     270      Form.BoundsRect := FormRestoredSize;
    284271  end;
    285272  if FormFullScreen then SetFullScreen(True);
     
    290277begin
    291278  Self.Form := Form;
    292   FormNormalSize := Bounds(Form.Left, Form.Top, Form.Width, Form.Height);
    293   if not FormFullScreen then
    294     FormRestoredSize := Bounds(Form.RestoredLeft, Form.RestoredTop, Form.RestoredWidth,
    295       Form.RestoredHeight);
    296   FormWindowState := Form.WindowState;
     279  if not FormFullScreen then begin
     280    FormWindowState := Form.WindowState;
     281    if FormWindowState = wsMaximized then begin
     282      FormRestoredSize := Bounds(Form.RestoredLeft, Form.RestoredTop, Form.RestoredWidth,
     283        Form.RestoredHeight);
     284    end else
     285    if FormWindowState = wsNormal then begin
     286      FormRestoredSize := Bounds(Form.Left, Form.Top, Form.Width, Form.Height);
     287    end;
     288  end;
    297289  SaveToRegistry(RegistryContext);
    298290  SaveControl(Form);
     
    312304  if State then begin
    313305    FormFullScreen := True;
    314     FormNormalSize := Form.BoundsRect;
    315     FormRestoredSize := Bounds(Form.RestoredLeft, Form.RestoredTop, Form.RestoredWidth,
    316       Form.RestoredHeight);
     306    if Form.WindowState = wsMaximized then begin
     307      FormRestoredSize := Bounds(Form.RestoredLeft, Form.RestoredTop, Form.RestoredWidth,
     308        Form.RestoredHeight);
     309    end else
     310    if Form.WindowState = wsNormal then begin
     311      FormRestoredSize := Bounds(Form.Left, Form.Top, Form.Width, Form.Height);
     312    end;
    317313    FormWindowState := Form.WindowState;
     314    Form.WindowState := wsMaximized;
     315    Form.WindowState := wsNormal;
    318316    ShowWindow(Form.Handle, SW_SHOWFULLSCREEN);
    319317    {$IFDEF WINDOWS}
     
    327325    ShowWindow(Form.Handle, SW_SHOWNORMAL);
    328326    if FormWindowState = wsNormal then begin
    329       Form.BoundsRect := FormNormalSize;
     327      Form.WindowState := wsNormal;
     328      Form.BoundsRect := FormRestoredSize;
    330329    end else
    331330    if FormWindowState = wsMaximized then begin
     
    337336
    338337end.
    339 
  • trunk/Packages/Common/PixelPointer.pas

    r144 r145  
    1 unit UPixelPointer;
     1unit PixelPointer;
    22
    33interface
     
    1515  private
    1616    procedure SetRGB(AValue: Cardinal);
    17     function GetRGB: Cardinal;   
     17    function GetRGB: Cardinal;
    1818  public
    1919    property RGB: Cardinal read GetRGB write SetRGB;
     
    5959  function Color32ToColor(Color: TColor32): TColor;
    6060  function ColorToColor32(Color: TColor): TColor32;
     61
    6162
    6263implementation
     
    309310end;
    310311
    311 
    312312end.
    313 
  • trunk/Packages/Common/Pool.pas

    r144 r145  
    1 unit UPool;
     1unit Pool;
    22
    33interface
    44
    55uses
    6   Classes, SysUtils, syncobjs, fgl, UThreading;
     6  Classes, SysUtils, syncobjs, Generics.Collections, Threading;
    77
    88type
     
    2020    function NewItemObject: TObject; virtual;
    2121  public
    22     Items: TFPGObjectList<TObject>;
    23     FreeItems: TFPGObjectList<TObject>;
     22    Items: TObjectList<TObject>;
     23    FreeItems: TObjectList<TObject>;
    2424    function Acquire: TObject; virtual;
    2525    procedure Release(Item: TObject); virtual;
     
    106106constructor TThreadedPool.Create;
    107107begin
    108   inherited Create;
     108  inherited;
    109109  Lock := TCriticalSection.Create;
    110110end;
     
    114114  TotalCount := 0;
    115115  Lock.Free;
    116   inherited Destroy;
     116  inherited;
    117117end;
    118118
     
    183183begin
    184184  inherited;
    185   Items := TFPGObjectList<TObject>.Create;
    186   FreeItems := TFPGObjectList<TObject>.Create;
    187   FreeItems.FreeObjects := False;
     185  Items := TObjectList<TObject>.Create;
     186  FreeItems := TObjectList<TObject>.Create;
     187  FreeItems.OwnsObjects := False;
    188188  FReleaseEvent := TEvent.Create(nil, False, False, '');
    189189end;
     
    199199
    200200end.
    201 
  • trunk/Packages/Common/PrefixMultiplier.pas

    r144 r145  
    1 unit UPrefixMultiplier;
     1unit PrefixMultiplier;
    22
    33// Date: 2010-06-01
     
    3131  (
    3232    (ShortText: 'y'; FullText: 'yocto'; Value: 1e-24),
    33           (ShortText: 'z'; FullText: 'zepto'; Value: 1e-21),
     33      (ShortText: 'z'; FullText: 'zepto'; Value: 1e-21),
    3434    (ShortText: 'a'; FullText: 'atto'; Value: 1e-18),
    3535    (ShortText: 'f'; FullText: 'femto'; Value: 1e-15),
     
    5252  (
    5353    (ShortText: 'ys'; FullText: 'yocto'; Value: 1e-24),
    54           (ShortText: 'zs'; FullText: 'zepto'; Value: 1e-21),
     54      (ShortText: 'zs'; FullText: 'zepto'; Value: 1e-21),
    5555    (ShortText: 'as'; FullText: 'atto'; Value: 1e-18),
    5656    (ShortText: 'fs'; FullText: 'femto'; Value: 1e-15),
     
    124124
    125125end.
    126 
  • trunk/Packages/Common/RegistryEx.pas

    r144 r145  
    1 unit URegistry;
     1unit RegistryEx;
    22
    33interface
     
    4646    HKEY_CURRENT_CONFIG, HKEY_DYN_DATA);
    4747
     48
    4849implementation
    49 
    5050
    5151{ TRegistryContext }
  • trunk/Packages/Common/ResetableThread.pas

    r144 r145  
    1 unit UResetableThread;
     1unit ResetableThread;
    22
    33interface
    44
    55uses
    6   Classes, SysUtils, syncobjs, UThreading, UPool;
     6  Classes, SysUtils, syncobjs, Threading, Pool;
    77
    88type
     
    165165  FreeAndNil(FStopEvent);
    166166  FreeAndNil(FLock);
    167   inherited Destroy;
     167  inherited;
    168168end;
    169169
     
    284284constructor TThreadPool.Create;
    285285begin
    286   inherited Create;
     286  inherited;
    287287end;
    288288
     
    291291  TotalCount := 0;
    292292  WaitForEmpty;
    293   inherited Destroy;
     293  inherited;
    294294end;
    295295
    296296end.
    297 
  • trunk/Packages/Common/ScaleDPI.pas

    r144 r145  
    1 unit UScaleDPI;
     1unit ScaleDPI;
    22
    33{ See: http://wiki.lazarus.freepascal.org/High_DPI }
     
    66
    77uses
    8   Classes, Forms, Graphics, Controls, ComCtrls, LCLType, SysUtils, fgl;
     8  Classes, Forms, Graphics, Controls, ComCtrls, LCLType, SysUtils,
     9  Generics.Collections;
    910
    1011type
     
    2627  end;
    2728
    28   TControlDimensions = class(TFPGObjectList<TControlDimension>)
     29  TControlDimensions = class(TObjectList<TControlDimension>)
    2930  end;
    3031
  • trunk/Packages/Common/StopWatch.pas

    r144 r145  
    55
    66uses
    7   {$IFDEF Windows}Windows,{$ENDIF}
     7  {$IFDEF WINDOWS}Windows,{$ENDIF}
    88  SysUtils, DateUtils;
    99
     
    3232  end;
    3333
     34
    3435implementation
    3536
     
    4041  fIsRunning := False;
    4142
    42   {$IFDEF Windows}
     43  {$IFDEF WINDOWS}
    4344  fIsHighResolution := QueryPerformanceFrequency(fFrequency) ;
    4445  {$ELSE}
  • trunk/Packages/Common/StringTable.pas

    r144 r145  
    1 unit UStringTable;
     1unit StringTable;
    22
    33interface
     
    6969end;
    7070
    71 
    7271end.
    73 
  • trunk/Packages/Common/SyncCounter.pas

    r144 r145  
    1 unit USyncCounter;
     1unit SyncCounter;
    22
    33interface
     
    2323    procedure Assign(Source: TSyncCounter);
    2424  end;
     25
    2526
    2627implementation
     
    7778
    7879end.
    79 
  • trunk/Packages/Common/Theme.pas

    r144 r145  
    1 unit UTheme;
     1unit Theme;
    22
    33interface
     
    55uses
    66  Classes, SysUtils, Graphics, ComCtrls, Controls, ExtCtrls, Menus, StdCtrls,
    7   Spin, Forms, fgl, Grids;
     7  Spin, Forms, Generics.Collections, Grids;
    88
    99type
     
    1919  { TThemes }
    2020
    21   TThemes = class(TFPGObjectList<TTheme>)
     21  TThemes = class(TObjectList<TTheme>)
    2222    function AddNew(Name: string): TTheme;
    2323    function FindByName(Name: string): TTheme;
     
    4848
    4949procedure Register;
     50
    5051
    5152implementation
     
    185186end;
    186187
    187 
    188188end.
  • trunk/Packages/Common/Threading.pas

    r144 r145  
    1 unit UThreading;
     1unit Threading;
    22
    33interface
    44
    55uses
    6   Classes, SysUtils, Forms, fgl, SyncObjs;
     6  Classes, SysUtils, Forms, Generics.Collections, SyncObjs;
    77
    88type
    99  TExceptionEvent = procedure (Sender: TObject; E: Exception) of object;
    1010  TMethodCall = procedure of object;
    11 
    1211
    1312  { TVirtualThread }
     
    10099  { TThreadList }
    101100
    102   TThreadList = class(TFPGObjectList<TVirtualThread>)
     101  TThreadList = class(TObjectList<TVirtualThread>)
    103102    function FindById(Id: TThreadID): TVirtualThread;
    104103    constructor Create; virtual;
     
    293292  end;
    294293  FThread.Free;
    295   inherited Destroy;
     294  inherited;
    296295end;
    297296
     
    359358ThreadListLock := TCriticalSection.Create;
    360359ThreadList := TThreadList.Create;
    361 ThreadList.FreeObjects := False;
     360ThreadList.OwnsObjects := False;
    362361
    363362finalization
     
    367366
    368367end.
    369 
  • trunk/Packages/Common/Translator.pas

    r144 r145  
    1 unit UTranslator;
     1unit Translator;
    22
    33interface
    44
    55uses
    6   Classes, SysUtils, Forms, ExtCtrls, Controls, fgl, LazFileUtils, LazUTF8,
    7   Translations, TypInfo, Dialogs, FileUtil, LCLProc, ULanguages, LCLType,
    8   LCLVersion;
     6  Classes, SysUtils, Forms, ExtCtrls, Controls, LazFileUtils, LazUTF8,
     7  Translations, TypInfo, Dialogs, FileUtil, LCLProc, Languages, LCLType,
     8  LCLVersion, Generics.Collections;
    99
    1010type
    1111  THandleStringEvent = function (AValue: string): string of object;
    1212
    13   TPoFiles = class(TFPGObjectList<TPOFile>)
     13  TPoFiles = class(TObjectList<TPOFile>)
    1414  end;
    1515
     
    2525  { TComponentExcludesList }
    2626
    27   TComponentExcludesList = class(TFPGObjectList<TComponentExcludes>)
     27  TComponentExcludesList = class(TObjectList<TComponentExcludes>)
    2828    function FindByClassType(AClassType: TClass): TComponentExcludes;
    2929    procedure DumpToStrings(Strings: TStrings);
     
    288288  Item := Component.ClassType;
    289289  while Assigned(Item) do begin
    290     //ShowMessage(Component.Name + ', ' + Component.ClassName + ', ' + Item.ClassName + ', ' + PropertyName);
    291290    Excludes := ComponentExcludes.FindByClassType(Item.ClassType);
    292291    if Assigned(Excludes) then begin
     
    570569end;
    571570
    572 
    573571end.
    574 
  • trunk/Packages/Common/URI.pas

    r144 r145  
    1 unit UURI;
     1unit URI;
    22
    33// Date: 2011-04-04
     
    8383  end;
    8484
     85
    8586implementation
    8687
     
    181182begin
    182183  Items.Free;
    183   inherited Destroy;
     184  inherited;
    184185end;
    185186
     
    230231begin
    231232  Path.Free;
    232   inherited Destroy;
     233  inherited;
    233234end;
    234235
     
    241242    Fragment := TURI(Source).Fragment;
    242243    Query := TURI(Source).Query;
    243   end else inherited Assign(Source);
     244  end else inherited;
    244245end;
    245246
     
    289290destructor TURL.Destroy;
    290291begin
    291   inherited Destroy;
     292  inherited;
    292293end;
    293294
     
    342343begin
    343344  Directory.Free;
    344   inherited Destroy;
    345 end;
    346 
     345  inherited;
     346end;
    347347
    348348end.
    349 
  • trunk/Packages/Common/XML.pas

    r144 r145  
    1 unit UXMLUtils;
     1unit XML;
    22
    33interface
     
    1414procedure WriteString(Node: TDOMNode; Name: string; Value: string);
    1515procedure WriteDateTime(Node: TDOMNode; Name: string; Value: TDateTime);
     16procedure WriteDouble(Node: TDOMNode; Name: string; Value: Double);
    1617function ReadInteger(Node: TDOMNode; Name: string; DefaultValue: Integer): Integer;
    1718function ReadInt64(Node: TDOMNode; Name: string; DefaultValue: Int64): Int64;
     
    1920function ReadString(Node: TDOMNode; Name: string; DefaultValue: string): string;
    2021function ReadDateTime(Node: TDOMNode; Name: string; DefaultValue: TDateTime): TDateTime;
     22function ReadDouble(Node: TDOMNode; Name: string; DefaultValue: Double): Double;
    2123procedure ReadXMLFileParser(out Doc: TXMLDocument; FileName: string);
    2224
    2325
    2426implementation
     27
     28function ReadDouble(Node: TDOMNode; Name: string; DefaultValue: Double): Double;
     29var
     30  NewNode: TDOMNode;
     31begin
     32  Result := DefaultValue;
     33  NewNode := Node.FindNode(DOMString(Name));
     34  if Assigned(NewNode) then
     35    Result := StrToFloat(string(NewNode.TextContent));
     36end;
    2537
    2638procedure ReadXMLFileParser(out Doc: TXMLDocument; FileName: string);
     
    200212end;
    201213
     214procedure WriteDouble(Node: TDOMNode; Name: string; Value: Double);
     215var
     216  NewNode: TDOMNode;
     217begin
     218  NewNode := Node.OwnerDocument.CreateElement(DOMString(Name));
     219  NewNode.TextContent := DOMString(FloatToStr(Value));
     220  Node.AppendChild(NewNode);
     221end;
     222
    202223function ReadInteger(Node: TDOMNode; Name: string; DefaultValue: Integer): Integer;
    203224var
     
    252273
    253274end.
    254 
  • trunk/Project.pas

    r144 r145  
    1 unit UProject;
     1unit Project;
    22
    33interface
  • trunk/Target.pas

    r144 r145  
    1 unit UTarget;
     1unit Target;
    22
    33interface
    44
    55uses
    6   Classes, SysUtils, StrUtils, Registry, URegistry, fgl, Dialogs,
     6  Classes, SysUtils, StrUtils, Registry, RegistryEx, fgl, Dialogs,
    77  FileUtil, Process, Menus, LazFileUtils;
    88
  • trunk/Target/TargetC.pas

    r144 r145  
    1 unit UTargetC;
     1unit TargetC;
    22
    33interface
    44
    55uses
    6   Classes, SysUtils, FileUtil, UTarget, UBFTarget, Process, Dialogs,
     6  Classes, SysUtils, FileUtil, Target, BFTarget, Process, Dialogs,
    77  LazFileUtils;
    88
  • trunk/Target/TargetCSharp.pas

    r144 r145  
    1 unit UTargetCSharp;
     1unit TargetCSharp;
    22
    33interface
    44
    55uses
    6   Classes, SysUtils, FileUtil, UTarget, UBFTarget, Dialogs;
     6  Classes, SysUtils, FileUtil, Target, BFTarget, Dialogs;
    77
    88type
  • trunk/Target/TargetDelphi.pas

    r144 r145  
    1 unit UTargetDelphi;
     1unit TargetDelphi;
    22
    33interface
    44
    55uses
    6   Classes, SysUtils, UTarget, UBFTarget;
     6  Classes, SysUtils, Target, BFTarget;
    77
    88type
  • trunk/Target/TargetFPC.pas

    r144 r145  
    1 unit UTargetFPC;
     1unit TargetFPC;
    22
    33interface
    44
    55uses
    6   Classes, SysUtils, UTarget, UBFTarget;
     6  Classes, SysUtils, Target, BFTarget;
    77
    88type
  • trunk/Target/TargetInterpretter.pas

    r144 r145  
    1 unit UTargetInterpretter;
     1unit TargetInterpretter;
    22
    33interface
    44
    55uses
    6   Classes, SysUtils, Dialogs, Forms, UTarget, UBFTarget, Math;
     6  Classes, SysUtils, Dialogs, Forms, Target, BFTarget, Math;
    77
    88type
  • trunk/Target/TargetJava.pas

    r144 r145  
    1 unit UTargetJava;
     1unit TargetJava;
    22
    33interface
    44
    55uses
    6   Classes, SysUtils, FileUtil, UTarget, UBFTarget, Dialogs;
     6  Classes, SysUtils, FileUtil, Target, BFTarget, Dialogs;
    77
    88type
  • trunk/Target/TargetJavascript.pas

    r144 r145  
    1 unit UTargetJavascript;
     1unit TargetJavascript;
    22
    33interface
    44
    55uses
    6   Classes, SysUtils, FileUtil, UTarget, UBFTarget, Dialogs, LazFileUtils,
     6  Classes, SysUtils, FileUtil, Target, BFTarget, Dialogs, LazFileUtils,
    77  Process, LCLIntf;
    88
  • trunk/Target/TargetPHP.pas

    r144 r145  
    1 unit UTargetPHP;
     1unit TargetPHP;
    22
    33interface
    44
    55uses
    6   Classes, SysUtils, UTarget, UBFTarget;
     6  Classes, SysUtils, Target, BFTarget;
    77
    88type
  • trunk/Target/TargetPython.pas

    r144 r145  
    1 unit UTargetPython;
     1unit TargetPython;
    22
    33interface
    44
    55uses
    6   Classes, SysUtils, UTarget, UBFTarget;
     6  Classes, SysUtils, Target, BFTarget;
    77
    88type
Note: See TracChangeset for help on using the changeset viewer.