Changeset 118 for trunk/UEngine.pas
- Timestamp:
- Oct 23, 2022, 10:55:55 PM (19 months ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/UEngine.pas
r110 r118 9 9 Classes, SysUtils, Graphics, Controls, ExtCtrls, Math, DateUtils, Types, 10 10 URegistry, UMetaCanvas, Generics.Collections, Generics.Defaults, UMenu, 11 UControls, UMetroPassenger, UColors, UView, URiver, UTrack, UCity, UGeometric; 11 UControls, UMetroPassenger, UColors, UView, URiver, UTrack, UCity, UGeometric, 12 UPersistentForm, UTranslator; 12 13 13 14 type … … 164 165 FOnDarkModeChange: TNotifyEvent; 165 166 FState: TGameState; 167 FTranslator: TTranslator; 166 168 LastMousePos: TPoint; 167 169 LastFocusedStation: TMapStation; … … 246 248 procedure EvaluateImprovement(Improvement: TMetroImprovement); 247 249 public 250 // Test 251 function GetSelectedOrUnusedMetroLine: TMetroLine; 252 public 248 253 AvailableTerminals: Integer; 249 254 Week: Integer; … … 304 309 procedure Paint(Canvas: TCanvas; CanvasSize: TPoint); 305 310 property Time: TDateTime read FTime; 306 property DarkMode: Boolean read FDarkMode write SetDarkMode;307 311 property State: TGameState read FState write SetState; 308 312 property ServedDaysCount: Integer read GetServedDaysCount; 313 published 314 property DarkMode: Boolean read FDarkMode write SetDarkMode; 315 property Translator: TTranslator read FTranslator write FTranslator; 309 316 property OnDarkModeChange: TNotifyEvent read FOnDarkModeChange 310 317 write FOnDarkModeChange; … … 1711 1718 BackgroundColor := Colors.MenuItemBackground; 1712 1719 BackgroundSelectedColor := Colors.MenuItemBackgroundSelected; 1713 FormMain.Translator1.LanguageListToStrings(States); 1714 Index := States.IndexOfObject(FormMain.Translator1.Language); 1720 if Assigned(Translator) then begin 1721 Translator.LanguageListToStrings(States); 1722 Index := States.IndexOfObject(Translator.Language); 1723 end; 1715 1724 if Index = -1 then Index := 0; 1716 1725 end; … … 1859 1868 begin 1860 1869 NewLanguage := TLanguage(TMenuItemComboBox(Sender).States.Objects[TMenuItemComboBox(Sender).Index]); 1861 if FormMain.Translator1.Language <> NewLanguagethen begin1862 FormMain.Translator1.Language := NewLanguage;1863 FormMain.Translator1.Translate;1870 if Assigned(Translator) and (Translator.Language <> NewLanguage) then begin 1871 Translator.Language := NewLanguage; 1872 Translator.Translate; 1864 1873 InitMenus; 1865 1874 … … 1874 1883 begin 1875 1884 FormMain.FullScreen := TMenuItemCheckBox(Sender).Checked; 1876 FormMain.PersistentForm1.SetFullScreen(FormMain.FullScreen); 1885 with TPersistentForm.Create(nil) do 1886 try 1887 SetFullScreen(FormMain.FullScreen); 1888 finally 1889 Free; 1890 end; 1877 1891 end; 1878 1892 … … 1963 1977 miTerminal: Inc(AvailableTerminals); 1964 1978 end; 1979 end; 1980 1981 function TEngine.GetSelectedOrUnusedMetroLine: TMetroLine; 1982 begin 1983 if Assigned(SelectedLine) and (SelectedLine.LineStations.Count = 0) then 1984 Result := SelectedLine 1985 else Result := GetUnusedLine; 1965 1986 end; 1966 1987 … … 3114 3135 Station := GetStationOnPos(View.PointDestToSrc(Position)); 3115 3136 if Assigned(Station) then begin 3116 if Assigned(SelectedLine) and (SelectedLine.LineStations.Count = 0) then NewLine := SelectedLine 3117 else NewLine := GetUnusedLine; 3137 NewLine := GetSelectedOrUnusedMetroLine; 3118 3138 if Assigned(NewLine) then begin 3119 3139 NewLine.ConnectStation(Station, nil, nil);
Note:
See TracChangeset
for help on using the changeset viewer.