diff --git a/applications/sudoku/sudokumain.lfm b/applications/sudoku/sudokumain.lfm index f2dcf6155..cf2b2010e 100644 --- a/applications/sudoku/sudokumain.lfm +++ b/applications/sudoku/sudokumain.lfm @@ -5,7 +5,7 @@ object Form1: TForm1 Width = 333 HorzScrollBar.Page = 271 VertScrollBar.Page = 280 - ActiveControl = ButtonFill + ActiveControl = btnEdit BorderStyle = bsDialog Caption = 'Sudoku Solver' ClientHeight = 359 @@ -29,24 +29,33 @@ object Form1: TForm1 OnPrepareCanvas = SGridPrepareCanvas OnSelectEditor = SGridSelectEditor end - object ButtonFill: TButton + object btnEdit: TButton Left = 16 Height = 25 Top = 312 Width = 75 BorderSpacing.InnerBorder = 2 - Caption = 'Fill' - OnClick = ButtonFillClick + Caption = 'Edit' + OnClick = btnEditClick TabOrder = 0 end - object ButtonSolve: TButton - Left = 151 + object btnSolve: TButton + Left = 208 Height = 25 Top = 312 Width = 75 BorderSpacing.InnerBorder = 2 Caption = 'Solve' - OnClick = ButtonSolveClick + OnClick = btnSolveClick TabOrder = 1 end + object btnClear: TButton + Left = 96 + Height = 25 + Top = 312 + Width = 75 + Caption = 'Clear' + OnClick = btnClearClick + TabOrder = 3 + end end diff --git a/applications/sudoku/sudokumain.pas b/applications/sudoku/sudokumain.pas index d494a9e99..27f496537 100644 --- a/applications/sudoku/sudokumain.pas +++ b/applications/sudoku/sudokumain.pas @@ -38,11 +38,13 @@ type { TForm1 } TForm1 = class(TForm) - ButtonSolve: TButton; - ButtonFill: TButton; + btnClear: TButton; + btnSolve: TButton; + btnEdit: TButton; SGrid: TStringGrid; - procedure ButtonFillClick(Sender: TObject); - procedure ButtonSolveClick(Sender: TObject); + procedure btnClearClick(Sender: TObject); + procedure btnEditClick(Sender: TObject); + procedure btnSolveClick(Sender: TObject); procedure EditorKeyPress(Sender: TObject; var Key: char); procedure FormActivate(Sender: TObject); procedure SGridPrepareCanvas(sender: TObject; aCol, aRow: Integer; @@ -67,18 +69,18 @@ implementation { TForm1 } -procedure TForm1.ButtonFillClick(Sender: TObject); -var - c, r: Integer; +procedure TForm1.btnEditClick(Sender: TObject); begin - for c := 0 to pred(SGrid.ColCount) do - for r := 0 to pred(SGrid.RowCount) do - SGrid.Cells[c, r] := ''; SGrid.Options := SGrid.Options + [goEditing]; SGrid.SetFocus; end; -procedure TForm1.ButtonSolveClick(Sender: TObject); +procedure TForm1.btnClearClick(Sender: TObject); +begin + SGrid.Clean; +end; + +procedure TForm1.btnSolveClick(Sender: TObject); begin SGrid.Options := SGrid.Options - [goEditing]; SolveSudoku;