libroot/posix/stdio: Remove unused portions.
[haiku.git] / src / preferences / bluetooth / BluetoothMain.cpp
blob2873facd0ec36859ff390d3f474fbffa51d15eb6
1 /*
2 * Copyright 2008-10, Oliver Ruiz Dorantes, <oliver.ruiz.dorantes_at_gmail.com>
3 * All rights reserved. Distributed under the terms of the MIT License.
4 */
5 #include <stdio.h>
7 #include <Alert.h>
8 #include <Catalog.h>
9 #include <MessageRunner.h>
10 #include <Roster.h>
11 #include <private/interface/AboutWindow.h>
13 #include "BluetoothMain.h"
14 #include "BluetoothWindow.h"
15 #include "defs.h"
18 #undef B_TRANSLATION_CONTEXT
19 #define B_TRANSLATION_CONTEXT "main"
21 BluetoothApplication::BluetoothApplication()
23 BApplication(BLUETOOTH_APP_SIGNATURE)
28 void
29 BluetoothApplication::ReadyToRun()
31 if (!be_roster->IsRunning(BLUETOOTH_SIGNATURE)) {
32 BAlert* alert = new BAlert("Services not running",
33 B_TRANSLATE("The Bluetooth services are not currently running "
34 "on this system."),
35 B_TRANSLATE("Launch now"), B_TRANSLATE("Quit"), "",
36 B_WIDTH_AS_USUAL, B_WARNING_ALERT);
37 alert->SetShortcut(1, B_ESCAPE);
38 int32 choice = alert->Go();
40 switch (choice) {
41 case 0:
43 status_t error;
44 error = be_roster->Launch(BLUETOOTH_SIGNATURE);
45 printf("kMsgStartServices: %s\n", strerror(error));
46 // TODO: This is temporal
47 // BMessage handcheck: use the version of Launch()
48 // that includes a BMessage in that message include
49 // a BMessenger to yourself and the BT server could
50 // use that messenger to send back a reply indicating
51 // when it's ready and you could just create window
52 BMessageRunner::StartSending(be_app_messenger,
53 new BMessage('Xtmp'), 2 * 1000000, 1);
54 break;
56 case 1:
57 PostMessage(B_QUIT_REQUESTED);
58 break;
61 return;
64 PostMessage(new BMessage('Xtmp'));
68 void
69 BluetoothApplication::MessageReceived(BMessage* message)
71 switch (message->what) {
72 case kMsgAddToRemoteList:
73 fWindow->PostMessage(message);
74 break;
76 case 'Xtmp':
77 if (!be_roster->IsRunning(BLUETOOTH_SIGNATURE)) {
78 // Give another chance
79 BMessageRunner::StartSending(be_app_messenger,
80 new BMessage('Xtmp'), 2 * 1000000, 1);
81 } else {
82 fWindow = new BluetoothWindow(BRect(100, 100, 750, 420));
83 fWindow->Show();
85 break;
87 default:
88 BApplication::MessageReceived(message);
93 void
94 BluetoothApplication::AboutRequested()
96 BAboutWindow* about = new BAboutWindow("Bluetooth", BLUETOOTH_APP_SIGNATURE);
97 about->AddCopyright(2010, "Oliver Ruiz Dorantes");
98 about->AddText(B_TRANSLATE(
99 "With support of:\n"
100 " - Mika Lindqvist\n"
101 " - Adrien Destugues\n"
102 " - Maksym Yevmenkin\n\n"
103 "Thanks to the individuals who helped...\n\n"
104 "Shipping/donating hardware:\n"
105 " - Henry Jair Abril Florez (el Colombian)\n"
106 " & Stefanie Bartolich\n"
107 " - Edwin Erik Amsler\n"
108 " - Dennis d'Entremont\n"
109 " - Luroh\n"
110 " - Pieter Panman\n\n"
111 "Economically:\n"
112 " - Karl vom Dorff, Andrea Bernardi (OSDrawer),\n"
113 " - Matt M, Doug F, Hubert H,\n"
114 " - Sebastian B, Andrew M, Jared E,\n"
115 " - Frederik H, Tom S, Ferry B,\n"
116 " - Greg G, David F, Richard S, Martin W:\n\n"
117 "With patches:\n"
118 " - Michael Weirauch\n"
119 " - Fredrik Ekdahl\n"
120 " - Raynald Lesieur\n"
121 " - Andreas Färber\n"
122 " - Joerg Meyer\n"
123 "Testing:\n"
124 " - Petter H. Juliussen\n"
125 "Who gave me all the knowledge:\n"
126 " - the yellowTAB team"));
127 about->Show();
132 main(int, char**)
134 BluetoothApplication app;
135 app.Run();
137 return 0;