xref: /haiku/src/apps/sudoku/Sudoku.cpp (revision 570e1312b5b15c8e46deb13156da8c11ed61fd05)
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