@@ -376,6 +376,7 @@ type |
| 376 |
Playing: Boolean; |
376 |
Playing: Boolean; |
| 377 |
LoadingFile: Boolean; |
377 |
LoadingFile: Boolean; |
| 378 |
SaveSucceeded: Boolean; |
378 |
SaveSucceeded: Boolean; |
|
|
379 |
ScopesOn: Boolean; |
| 379 |
|
380 |
|
| 380 |
{PatternsNode, } |
381 |
{PatternsNode, } |
| 381 |
WaveInstrumentsNode, |
382 |
WaveInstrumentsNode, |
@@ -904,6 +905,7 @@ begin |
| 904 |
TrackerGrid.OnResize:=@OnTrackerGridResize; |
905 |
TrackerGrid.OnResize:=@OnTrackerGridResize; |
| 905 |
|
906 |
|
| 906 |
TrackerGrid.FontSize := OptionsFile.ReadInteger('hUGETracker', 'fontsize', 12); |
907 |
TrackerGrid.FontSize := OptionsFile.ReadInteger('hUGETracker', 'fontsize', 12); |
|
|
908 |
ScopesOn := OptionsFile.ReadBool('hUGETracker', 'ScopesOn', True); |
| 907 |
|
909 |
|
| 908 |
// Fix the size of the channel headers |
910 |
// Fix the size of the channel headers |
| 909 |
for Section in HeaderControl1.Sections do |
911 |
for Section in HeaderControl1.Sections do |
@@ -1182,7 +1184,8 @@ begin |
| 1182 |
ResetEmulationThread; //TODO: remove this hack |
1184 |
ResetEmulationThread; //TODO: remove this hack |
| 1183 |
|
1185 |
|
| 1184 |
// Start the Oscilloscope repaint timer |
1186 |
// Start the Oscilloscope repaint timer |
| 1185 |
OscilloscopeUpdateTimer.Enabled := True; |
1187 |
OscilloscopeUpdateTimer.Enabled := ScopesOn; |
|
|
1188 |
Panel2.height := IfThen(ScopesOn, 64, 0); |
| 1186 |
|
1189 |
|
| 1187 |
// Switch to general tab sheet |
1190 |
// Switch to general tab sheet |
| 1188 |
PageControl1.ActivePageIndex := 0; |
1191 |
PageControl1.ActivePageIndex := 0; |
@@ -1800,10 +1803,16 @@ end; |
| 1800 |
procedure TfrmTracker.MenuItem26Click(Sender: TObject); |
1803 |
procedure TfrmTracker.MenuItem26Click(Sender: TObject); |
| 1801 |
begin |
1804 |
begin |
| 1802 |
frmOptions.FontSizeSpinner.Value := TrackerGrid.FontSize; |
1805 |
frmOptions.FontSizeSpinner.Value := TrackerGrid.FontSize; |
|
|
1806 |
frmOptions.ScopesCheck.Checked := ScopesOn; |
| 1803 |
frmOptions.ShowModal; |
1807 |
frmOptions.ShowModal; |
| 1804 |
TrackerGrid.FontSize := frmOptions.FontSizeSpinner.Value; |
1808 |
TrackerGrid.FontSize := frmOptions.FontSizeSpinner.Value; |
|
|
1809 |
ScopesOn := frmOptions.ScopesCheck.Checked; |
| 1805 |
|
1810 |
|
| 1806 |
OptionsFile.WriteInteger('hUGETracker', 'fontsize', TrackerGrid.FontSize); |
1811 |
OptionsFile.WriteInteger('hUGETracker', 'fontsize', TrackerGrid.FontSize); |
|
|
1812 |
OptionsFile.WriteBool('hUGETracker', 'ScopesOn', ScopesOn); |
|
|
1813 |
OscilloscopeUpdateTimer.Enabled := ScopesOn; |
|
|
1814 |
Panel2.height := IfThen(ScopesOn, 64, 0); |
|
|
1815 |
|
| 1807 |
end; |
1816 |
end; |
| 1808 |
|
1817 |
|
| 1809 |
procedure TfrmTracker.MenuItem31Click(Sender: TObject); |
1818 |
procedure TfrmTracker.MenuItem31Click(Sender: TObject); |
@@ -1888,6 +1897,20 @@ procedure TfrmTracker.OrderEditStringGridAfterSelection(Sender: TObject; aCol, |
| 1888 |
begin |
1897 |
begin |
| 1889 |
if OrderEditStringGrid.Row > -1 then |
1898 |
if OrderEditStringGrid.Row > -1 then |
| 1890 |
ReloadPatterns; |
1899 |
ReloadPatterns; |
|
|
1900 |
|
|
|
1901 |
if Playing = True then begin |
|
|
1902 |
if TrackerGrid.HighlightedRow <> 0 then begin |
|
|
1903 |
if OrderEditStringGrid.Row = 1 then begin |
|
|
1904 |
if PreparePreview then |
|
|
1905 |
Playing := True; |
|
|
1906 |
end |
|
|
1907 |
else begin |
|
|
1908 |
PokeSymbol(SYM_CURRENT_ORDER, 2*(OrderEditStringGrid.Row-2)); |
|
|
1909 |
PokeSymbol(SYM_ROW, 63); |
|
|
1910 |
end; |
|
|
1911 |
end; |
|
|
1912 |
EmulationThread.Start; |
|
|
1913 |
end |
| 1891 |
end; |
1914 |
end; |
| 1892 |
|
1915 |
|
| 1893 |
procedure TfrmTracker.OrderEditStringGridColRowDeleted(Sender: TObject; |
1916 |
procedure TfrmTracker.OrderEditStringGridColRowDeleted(Sender: TObject; |
@@ -1923,11 +1946,25 @@ procedure TfrmTracker.OrderEditStringGridDblClick(Sender: TObject); |
| 1923 |
var |
1946 |
var |
| 1924 |
Highest: Integer; |
1947 |
Highest: Integer; |
| 1925 |
begin |
1948 |
begin |
| 1926 |
Highest := Song.Patterns.MaxKey; |
1949 |
if Playing = True then begin |
|
|
1950 |
if OrderEditStringGrid.Row = 1 then begin |
|
|
1951 |
if PreparePreview then begin |
|
|
1952 |
Playing := True; |
|
|
1953 |
end; |
|
|
1954 |
end |
|
|
1955 |
else begin |
|
|
1956 |
PokeSymbol(SYM_CURRENT_ORDER, 2*(OrderEditStringGrid.Row-2)); |
|
|
1957 |
PokeSymbol(SYM_ROW, 63); |
|
|
1958 |
end; |
|
|
1959 |
EmulationThread.Start; |
|
|
1960 |
end |
|
|
1961 |
else begin |
|
|
1962 |
Highest := Song.Patterns.MaxKey; |
| 1927 |
|
1963 |
|
| 1928 |
with OrderEditStringGrid do begin |
1964 |
with OrderEditStringGrid do begin |
| 1929 |
Cells[Col, Row] := IntToStr(Highest); |
1965 |
Cells[Col, Row] := IntToStr(Highest); |
| 1930 |
TrackerGrid.LoadPattern(Col - 1, Highest); |
1966 |
TrackerGrid.LoadPattern(Col - 1, Highest); |
|
|
1967 |
end; |
| 1931 |
end; |
1968 |
end; |
| 1932 |
end; |
1969 |
end; |
| 1933 |
|
1970 |
|