Diffstat (limited to 'libopie2/opiecore/oapplication.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r-- | libopie2/opiecore/oapplication.cpp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/libopie2/opiecore/oapplication.cpp b/libopie2/opiecore/oapplication.cpp index 06d8ba2..84cab48 100644 --- a/libopie2/opiecore/oapplication.cpp +++ b/libopie2/opiecore/oapplication.cpp | |||
@@ -9,72 +9,77 @@ | |||
9 | .> <`_, > . <= redistribute it and/or modify it under | 9 | .> <`_, > . <= redistribute it and/or modify it under |
10 | :`=1 )Y*s>-.-- : the terms of the GNU Library General Public | 10 | :`=1 )Y*s>-.-- : the terms of the GNU Library General Public |
11 | .="- .-=="i, .._ License as published by the Free Software | 11 | .="- .-=="i, .._ License as published by the Free Software |
12 | - . .-<_> .<> Foundation; either version 2 of the License, | 12 | - . .-<_> .<> Foundation; either version 2 of the License, |
13 | ._= =} : or (at your option) any later version. | 13 | ._= =} : or (at your option) any later version. |
14 | .%`+i> _;_. | 14 | .%`+i> _;_. |
15 | .i_,=:_. -<s. This program is distributed in the hope that | 15 | .i_,=:_. -<s. This program is distributed in the hope that |
16 | + . -:. = it will be useful, but WITHOUT ANY WARRANTY; | 16 | + . -:. = it will be useful, but WITHOUT ANY WARRANTY; |
17 | : .. .:, . . . without even the implied warranty of | 17 | : .. .:, . . . without even the implied warranty of |
18 | =_ + =;=|` MERCHANTABILITY or FITNESS FOR A | 18 | =_ + =;=|` MERCHANTABILITY or FITNESS FOR A |
19 | _.=:. : :=>`: PARTICULAR PURPOSE. See the GNU | 19 | _.=:. : :=>`: PARTICULAR PURPOSE. See the GNU |
20 | ..}^=.= = ; Library General Public License for more | 20 | ..}^=.= = ; Library General Public License for more |
21 | ++= -. .` .: details. | 21 | ++= -. .` .: details. |
22 | : = ...= . :.=- | 22 | : = ...= . :.=- |
23 | -. .:....=;==+<; You should have received a copy of the GNU | 23 | -. .:....=;==+<; You should have received a copy of the GNU |
24 | -_. . . )=. = Library General Public License along with | 24 | -_. . . )=. = Library General Public License along with |
25 | -- :-=` this library; see the file COPYING.LIB. | 25 | -- :-=` this library; see the file COPYING.LIB. |
26 | If not, write to the Free Software Foundation, | 26 | If not, write to the Free Software Foundation, |
27 | Inc., 59 Temple Place - Suite 330, | 27 | Inc., 59 Temple Place - Suite 330, |
28 | Boston, MA 02111-1307, USA. | 28 | Boston, MA 02111-1307, USA. |
29 | */ | 29 | */ |
30 | 30 | ||
31 | #include <opie2/oapplication.h> | 31 | #include <opie2/oapplication.h> |
32 | #include <opie2/oconfig.h> | 32 | #include <opie2/oconfig.h> |
33 | #include <opie2/odebug.h> | ||
33 | 34 | ||
34 | #include <signal.h> | 35 | #include <signal.h> |
35 | #include <stdio.h> | 36 | #include <stdio.h> |
36 | 37 | ||
37 | OApplication* OApplication::_instance = 0; | 38 | OApplication* OApplication::_instance = 0; |
38 | 39 | ||
39 | /**************************************************************************************************/ | 40 | /**************************************************************************************************/ |
40 | /* OApplicationPrivate | 41 | /* OApplicationPrivate |
41 | /**************************************************************************************************/ | 42 | /**************************************************************************************************/ |
42 | 43 | ||
43 | class OApplicationPrivate | 44 | class OApplicationPrivate |
44 | { | 45 | { |
45 | public: | 46 | public: |
46 | OApplicationPrivate() {}; | 47 | OApplicationPrivate() {}; |
47 | ~OApplicationPrivate() {}; | 48 | ~OApplicationPrivate() {}; |
48 | }; | 49 | }; |
49 | 50 | ||
50 | /**************************************************************************************************/ | 51 | /**************************************************************************************************/ |
51 | /* OApplication | 52 | /* OApplication |
52 | /**************************************************************************************************/ | 53 | /**************************************************************************************************/ |
53 | 54 | ||
54 | 55 | ||
55 | OApplication::OApplication( int& argc, char** argv, const QCString& rAppName ) | 56 | OApplication::OApplication( int& argc, char** argv, const QCString& rAppName ) |
57 | #ifdef QWS | ||
56 | :QPEApplication( argc, argv ), | 58 | :QPEApplication( argc, argv ), |
59 | #else | ||
60 | :QApplication( argc, argv ), | ||
61 | #endif | ||
57 | _appname( rAppName ), | 62 | _appname( rAppName ), |
58 | _config( 0 ) | 63 | _config( 0 ) |
59 | { | 64 | { |
60 | init(); | 65 | init(); |
61 | } | 66 | } |
62 | 67 | ||
63 | 68 | ||
64 | OApplication::~OApplication() | 69 | OApplication::~OApplication() |
65 | { | 70 | { |
66 | delete d; | 71 | delete d; |
67 | if ( _config ) | 72 | if ( _config ) |
68 | delete _config; | 73 | delete _config; |
69 | OApplication::_instance = 0; | 74 | OApplication::_instance = 0; |
70 | // after deconstruction of the one-and-only application object, | 75 | // after deconstruction of the one-and-only application object, |
71 | // the construction of another object is allowed | 76 | // the construction of another object is allowed |
72 | } | 77 | } |
73 | 78 | ||
74 | 79 | ||
75 | OConfig* OApplication::config() | 80 | OConfig* OApplication::config() |
76 | { | 81 | { |
77 | if ( !_config ) | 82 | if ( !_config ) |
78 | { | 83 | { |
79 | _config = new OConfig( _appname ); | 84 | _config = new OConfig( _appname ); |
80 | } | 85 | } |
@@ -86,40 +91,47 @@ void OApplication::init() | |||
86 | { | 91 | { |
87 | d = new OApplicationPrivate(); | 92 | d = new OApplicationPrivate(); |
88 | if ( !OApplication::_instance ) | 93 | if ( !OApplication::_instance ) |
89 | { | 94 | { |
90 | OApplication::_instance = this; | 95 | OApplication::_instance = this; |
91 | 96 | ||
92 | /* register SIGSEGV handler to give programs an option | 97 | /* register SIGSEGV handler to give programs an option |
93 | * to exit gracefully, e.g. save or close devices or files. | 98 | * to exit gracefully, e.g. save or close devices or files. |
94 | struct sigaction sa; | 99 | struct sigaction sa; |
95 | sa.sa_handler = ( void (*)(int) ) &segv_handler; | 100 | sa.sa_handler = ( void (*)(int) ) &segv_handler; |
96 | sa.sa_flags = SA_SIGINFO | SA_RESTART; | 101 | sa.sa_flags = SA_SIGINFO | SA_RESTART; |
97 | sigemptyset(&sa.sa_mask); | 102 | sigemptyset(&sa.sa_mask); |
98 | sigaction(SIGSEGV, &sa, NULL); | 103 | sigaction(SIGSEGV, &sa, NULL); |
99 | */ | 104 | */ |
100 | } | 105 | } |
101 | else | 106 | else |
102 | { | 107 | { |
103 | qFatal( "OApplication: Can't create more than one OApplication object. Aborting." ); | 108 | qFatal( "OApplication: Can't create more than one OApplication object. Aborting." ); |
104 | } | 109 | } |
105 | } | 110 | } |
106 | 111 | ||
107 | 112 | ||
108 | void OApplication::showMainWidget( QWidget* widget, bool nomax ) | 113 | void OApplication::showMainWidget( QWidget* widget, bool nomax ) |
109 | { | 114 | { |
115 | #ifdef QWS | ||
110 | QPEApplication::showMainWidget( widget, nomax ); | 116 | QPEApplication::showMainWidget( widget, nomax ); |
117 | #else | ||
118 | // tille: I am quit sure if this is the right way to do.. | ||
119 | odDebug(nomax,7) << "ignoring nomax"; | ||
120 | setMainWidget( widget ); | ||
121 | widget->show(); | ||
122 | #endif | ||
111 | widget->setCaption( _appname ); | 123 | widget->setCaption( _appname ); |
112 | } | 124 | } |
113 | 125 | ||
114 | 126 | ||
115 | void OApplication::setTitle( const QString& title ) const | 127 | void OApplication::setTitle( const QString& title ) const |
116 | { | 128 | { |
117 | if ( mainWidget() ) | 129 | if ( mainWidget() ) |
118 | { | 130 | { |
119 | if ( !title.isNull() ) | 131 | if ( !title.isNull() ) |
120 | mainWidget()->setCaption( QString(_appname) + QString( " - " ) + title ); | 132 | mainWidget()->setCaption( QString(_appname) + QString( " - " ) + title ); |
121 | else | 133 | else |
122 | mainWidget()->setCaption( _appname ); | 134 | mainWidget()->setCaption( _appname ); |
123 | } | 135 | } |
124 | } | 136 | } |
125 | 137 | ||