X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=otk%2Fapplication.cc;h=1f65046b361c8727cedc5692c37d51984bfa628c;hb=3147507622de5ab771c99a4bb636f55344f6cbd7;hp=efe86d153a21490decf652ab396bc9cdaf765c17;hpb=77882b46dbeb1f626f052e2eb3cb200d44f3e3ff;p=chaz%2Fopenbox diff --git a/otk/application.cc b/otk/application.cc index efe86d15..1f65046b 100644 --- a/otk/application.cc +++ b/otk/application.cc @@ -1,48 +1,41 @@ // -*- mode: C++; indent-tabs-mode: nil; c-basic-offset: 2; -*- -#ifdef HAVE_CONFIG_H -# include "../config.h" -#endif +#include "config.h" #include "application.hh" #include "eventhandler.hh" -#include "widget.hh" #include "timer.hh" #include "property.hh" #include "rendercolor.hh" +#include "renderstyle.hh" +#include "display.hh" -extern "C" { -#ifdef HAVE_STDLIB_H -# include -#endif -} - +#include #include namespace otk { +extern void initialize(); +extern void destroy(); + Application::Application(int argc, char **argv) : EventDispatcher(), - _display(), _dockable(false), _appwidget_count(0) { (void)argc; (void)argv; - Timer::initialize(); - RenderColor::initialize(); - Property::initialize(); - _style = new RenderStyle(DefaultScreen(*_display), ""); // XXX: get a path! - + otk::initialize(); + + _screen = DefaultScreen(**display); + loadStyle(); } Application::~Application() { - delete _style; - RenderColor::destroy(); - Timer::destroy(); + otk::destroy(); } void Application::loadStyle(void) @@ -50,6 +43,7 @@ void Application::loadStyle(void) // XXX: find the style name as a property std::string style = "/usr/local/share/openbox/styles/artwiz"; //_style->load(style); + otk::RenderStyle::setStyle(_screen, style); } void Application::run(void) @@ -63,9 +57,8 @@ void Application::run(void) while (_appwidget_count > 0) { dispatchEvents(); - if (_appwidget_count <= 0) - break; - Timer::dispatchTimers(); // fire pending events + if (_appwidget_count > 0) + Timer::dispatchTimers(); // fire pending events } }