]> Dogcows Code - chaz/openbox/blobdiff - otk/otk_test.cc
rm the xftlsfonts manpage
[chaz/openbox] / otk / otk_test.cc
index 4889d50c569272b5b83adcb3e8e6ff7a9f12efff..495b81d59ff687c425f3c7f748d9be517e936b83 100644 (file)
@@ -1,49 +1,58 @@
+// -*- mode: C++; indent-tabs-mode: nil; c-basic-offset: 2; -*-
+
+#ifdef HAVE_CONFIG_H
+# include "../config.h"
+#endif
+
+#include "application.hh"
 #include "focuswidget.hh"
+#include "appwidget.hh"
 #include "button.hh"
-#include "display.hh"
-#include "configuration.hh"
-#include "timerqueuemanager.hh"
-#include "image.hh"
-#include "style.hh"
-#include <iostream>
-
-int main(void) {
-  otk::OBDisplay::initialize(NULL);
-  otk::Configuration style_conf(False);
-  otk::OBTimerQueueManager *tm = new otk::OBTimerQueueManager();
-  const otk::ScreenInfo *s_info =
-    otk::OBDisplay::screenInfo(DefaultScreen(otk::OBDisplay::display));
-  otk::BImageControl *ctrl = new otk::BImageControl(tm, s_info, True, 4, 5, 200);
-
-  otk::Style *my_style = new otk::Style(ctrl);
-
-  style_conf.setFile("/usr/local/share/openbox/styles/artwiz");
-  style_conf.load();
-
-  my_style->load(style_conf);
-
-  otk::OtkFocusWidget foo(my_style);
-  otk::OtkButton iconb(&foo);
-  otk::OtkFocusWidget label(&foo);
-  otk::OtkButton maxb(&foo);
-  otk::OtkButton closeb(&foo);
+
+int main(int argc, char **argv) {
+  otk::OtkApplication app(argc, argv);
+
+  otk::OtkAppWidget foo(&app);
+
+  foo.resize(600, 500);
+  foo.setTexture(app.getStyle()->getTitleFocus());
+//  foo.setUnfocusTexture(app.getStyle()->getTitleUnfocus());
 
   foo.setBevelWidth(2);
-  foo.setDirection(otk::OtkWidget::Vertical);
-  
-  foo.setHeight(400);
-  foo.setTexture(my_style->getTitleFocus());
-  foo.setUnfocusTexture(my_style->getTitleUnfocus());
+  foo.setDirection(otk::OtkWidget::Horizontal);
+
+  otk::OtkFocusWidget left(&foo);
+  otk::OtkFocusWidget right(&foo);
 
+  left.setDirection(otk::OtkWidget::Horizontal);
+  left.setStretchableVert(true);
+  left.setStretchableHorz(true);
+  left.setTexture(app.getStyle()->getTitleFocus());
+  left.setUnfocusTexture(app.getStyle()->getTitleUnfocus());
+  right.setDirection(otk::OtkWidget::Vertical);
+  right.setBevelWidth(10);
+  right.setStretchableVert(true);
+  right.setWidth(300);
+  right.setTexture(app.getStyle()->getTitleFocus());
+  right.setUnfocusTexture(app.getStyle()->getTitleUnfocus());
+
+  otk::OtkButton iconb(&left);
+  iconb.resize(40,20);
+  otk::OtkFocusWidget label(&left);
+  otk::OtkButton maxb(&left);
+  otk::OtkButton closeb(&left);
+  
   // fixed size
   iconb.setText("foo");
-  iconb.press();
+  iconb.press(Button1);
 
   // fix width to 60 and let the height be calculated by its parent
-  label.setWidth(60);
+  //label.setHeight(20);
   label.setStretchableVert(true);
-  label.setTexture(my_style->getLabelFocus());
-  label.setUnfocusTexture(my_style->getLabelUnfocus());
+  label.setStretchableHorz(true);
+  label.setTexture(app.getStyle()->getLabelFocus());
+  label.setUnfocusTexture(app.getStyle()->getLabelUnfocus());
 
   // fixed size
   maxb.setText("bar");
@@ -51,28 +60,24 @@ int main(void) {
   // fixed size
   closeb.setText("fuubar");
 
+  otk::OtkFocusWidget rblef(&right);
+  otk::OtkButton rbutt1(&right);
+  otk::OtkButton rbutt2(&right);
+
+  rblef.setStretchableHorz(true);
+  rblef.setHeight(50);
+  rblef.setTexture(app.getStyle()->getHandleFocus());
+  rblef.setUnfocusTexture(app.getStyle()->getHandleUnfocus());
+  
+  rbutt1.setText("this is fucking tight");
+  rbutt2.setText("heh, WOOP");
+
   // will recursively unfocus its children
   //foo.unfocus();
-  foo.update();
+
   foo.show();
 
-  while (1) {
-    if (XPending(otk::OBDisplay::display)) {
-      XEvent e;
-      XNextEvent(otk::OBDisplay::display, &e);
-      if (e.type == Expose) {
-        foo.expose(e.xexpose);
-      } else if (e.type == ConfigureNotify) {
-        foo.configure(e.xconfigure);
-      }
-    } 
-  }
-
-  delete my_style;
-  delete tm;
-  delete ctrl;
-
-  otk::OBDisplay::destroy();
+  app.exec();
 
   return 0;
 }
This page took 0.025845 seconds and 4 git commands to generate.