From 11304d02942e9fa493e4e80943a828f9c65f6772 Mon Sep 17 00:00:00 2001 From: mickeyl Date: Fri, 28 Mar 2003 15:11:52 +0000 Subject: skeleton and the start of libopie2, please read README, ROADMAP and STATUS and comment... --- (limited to 'libopie2/opiecore/oapplication.cpp') diff --git a/libopie2/opiecore/oapplication.cpp b/libopie2/opiecore/oapplication.cpp new file mode 100644 index 0000000..a0abcc2 --- a/dev/null +++ b/libopie2/opiecore/oapplication.cpp @@ -0,0 +1,110 @@ +/* +                 This file is part of the Opie Project + +              Copyright (C) 2003 Michael Lauer + =. + .=l. +           .>+-= + _;:,     .>    :=|. This program is free software; you can +.> <`_,   >  .   <= redistribute it and/or modify it under +:`=1 )Y*s>-.--   : the terms of the GNU Library General Public +.="- .-=="i,     .._ License as published by the Free Software + - .   .-<_>     .<> Foundation; either version 2 of the License, +     ._= =}       : or (at your option) any later version. +    .%`+i>       _;_. +    .i_,=:_.      -`: PARTICULAR PURPOSE. See the GNU +..}^=.=       =       ; Library General Public License for more +++=   -.     .`     .: details. + :     =  ...= . :.=- + -.   .:....=;==+<; You should have received a copy of the GNU +  -_. . .   )=.  = Library General Public License along with +    --        :-=` this library; see the file COPYING.LIB. + If not, write to the Free Software Foundation, + Inc., 59 Temple Place - Suite 330, + Boston, MA 02111-1307, USA. +*/ + +#include +#include + +OApplication* OApplication::_instance = 0; + +/**************************************************************************************************/ +/* OApplicationPrivate +/**************************************************************************************************/ + +class OApplicationPrivate +{ + public: + OApplicationPrivate() {}; + ~OApplicationPrivate() {}; +}; + +/**************************************************************************************************/ +/* OApplication +/**************************************************************************************************/ + + +OApplication::OApplication( int& argc, char** argv, const QCString& rAppName ) + :OApplicationBaseClass( argc, argv ), + _appname( rAppName ), + _config( 0 ) +{ + init(); +} + + +OApplication::~OApplication() +{ + delete d; + if ( _config ) + delete _config; + OApplication::_instance = 0; + // after deconstruction of the one-and-only application object, + // the construction of another object is allowed +} + + +OConfig* OApplication::config() +{ + if ( not _config ) + { + _config = new OConfig( _appname ); + } + return _config; +} + + +void OApplication::init() +{ + d = new OApplicationPrivate(); + if ( !OApplication::_instance ) + { + OApplication::_instance = this; + } + else + { + qFatal( "OApplication: Can't create more than one OApplication object. Aborting." ); + } +} + +void OApplication::setMainWidget( QWidget* widget ) +{ + showMainWidget( widget ); +} + +void OApplication::showMainWidget( QWidget* widget, bool nomax ) +{ + #ifdef Q_WS_QWS + QPEApplication::showMainWidget( widget, nomax ); + #else + QApplication::setMainWidget( widget ); + widget->show(); + #endif + widget->setCaption( _appname ); + +} -- cgit v0.9.0.2