1d578543aSAxel Dörfler /* 2d578543aSAxel Dörfler * Copyright 2007, Axel Dörfler, axeld@pinc-software.de. All rights reserved. 3d578543aSAxel Dörfler * Distributed under the terms of the MIT License. 4d578543aSAxel Dörfler */ 5d578543aSAxel Dörfler 6d578543aSAxel Dörfler 7*570e1312SFrançois Revol #include "Sudoku.h" 8*570e1312SFrançois Revol 9d578543aSAxel Dörfler #include "SudokuWindow.h" 10d578543aSAxel Dörfler 11d578543aSAxel Dörfler #include <stdlib.h> 12d578543aSAxel Dörfler 13d578543aSAxel Dörfler #include <Alert.h> 14d578543aSAxel Dörfler #include <Application.h> 15d578543aSAxel Dörfler #include <TextView.h> 16d578543aSAxel Dörfler 17d578543aSAxel Dörfler 18d578543aSAxel Dörfler const char* kSignature = "application/x-vnd.Haiku-Sudoku"; 19d578543aSAxel Dörfler 20d578543aSAxel Dörfler 21d578543aSAxel Dörfler Sudoku::Sudoku() 22d578543aSAxel Dörfler : BApplication(kSignature) 23d578543aSAxel Dörfler { 24d578543aSAxel Dörfler } 25d578543aSAxel Dörfler 26d578543aSAxel Dörfler 27d578543aSAxel Dörfler Sudoku::~Sudoku() 28d578543aSAxel Dörfler { 29d578543aSAxel Dörfler } 30d578543aSAxel Dörfler 31d578543aSAxel Dörfler 32d578543aSAxel Dörfler void 33d578543aSAxel Dörfler Sudoku::ReadyToRun() 34d578543aSAxel Dörfler { 35d578543aSAxel Dörfler fWindow = new SudokuWindow(); 36d578543aSAxel Dörfler fWindow->Show(); 37d578543aSAxel Dörfler } 38d578543aSAxel Dörfler 39d578543aSAxel Dörfler 40d578543aSAxel Dörfler void 41d578543aSAxel Dörfler Sudoku::RefsReceived(BMessage* message) 42d578543aSAxel Dörfler { 43d578543aSAxel Dörfler fWindow->PostMessage(message); 44d578543aSAxel Dörfler } 45d578543aSAxel Dörfler 46d578543aSAxel Dörfler 47d578543aSAxel Dörfler void 48d578543aSAxel Dörfler Sudoku::MessageReceived(BMessage* message) 49d578543aSAxel Dörfler { 50d578543aSAxel Dörfler BApplication::MessageReceived(message); 51d578543aSAxel Dörfler } 52d578543aSAxel Dörfler 53d578543aSAxel Dörfler 54d578543aSAxel Dörfler void 55d578543aSAxel Dörfler Sudoku::AboutRequested() 56d578543aSAxel Dörfler { 57*570e1312SFrançois Revol Sudoku::DisplayAbout(); 58*570e1312SFrançois Revol } 59*570e1312SFrançois Revol 60*570e1312SFrançois Revol 61*570e1312SFrançois Revol void 62*570e1312SFrançois Revol Sudoku::DisplayAbout() 63*570e1312SFrançois Revol { 64d578543aSAxel Dörfler BAlert *alert = new BAlert("about", "Sudoku\n" 65d578543aSAxel Dörfler "\twritten by Axel Dörfler\n" 667bd1d755SAxel Dörfler "\tCopyright 2007, Haiku Inc.\n", "Ok"); 67d578543aSAxel Dörfler BTextView *view = alert->TextView(); 68d578543aSAxel Dörfler BFont font; 69d578543aSAxel Dörfler 70d578543aSAxel Dörfler view->SetStylable(true); 71d578543aSAxel Dörfler 72d578543aSAxel Dörfler view->GetFont(&font); 73d578543aSAxel Dörfler font.SetSize(18); 74d578543aSAxel Dörfler font.SetFace(B_BOLD_FACE); 75d578543aSAxel Dörfler view->SetFontAndColor(0, 6, &font); 76d578543aSAxel Dörfler 77d578543aSAxel Dörfler alert->Go(); 78d578543aSAxel Dörfler } 79d578543aSAxel Dörfler 80d578543aSAxel Dörfler 81d578543aSAxel Dörfler // #pragma mark - 82d578543aSAxel Dörfler 83d578543aSAxel Dörfler 84d578543aSAxel Dörfler int 85d578543aSAxel Dörfler main(int /*argc*/, char** /*argv*/) 86d578543aSAxel Dörfler { 873a78bc6bSFrançois Revol srand(system_time() % INT_MAX); 88d578543aSAxel Dörfler 89d578543aSAxel Dörfler Sudoku sudoku; 90d578543aSAxel Dörfler sudoku.Run(); 91d578543aSAxel Dörfler 92d578543aSAxel Dörfler return 0; 93d578543aSAxel Dörfler } 94