X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=otk%2Fotk_test.cc;h=ec352f9f13ebf58d8e4b44cafc325474a1893a65;hb=6f5e60f0337e60d904a8f549aeaa631afefc8033;hp=7bd6e9d618eb3eb6c5699107be01d7e21f7ce19f;hpb=590f7f58a6d4ba9214d3bd2d42ba2c353b492d4e;p=chaz%2Fopenbox diff --git a/otk/otk_test.cc b/otk/otk_test.cc index 7bd6e9d6..ec352f9f 100644 --- a/otk/otk_test.cc +++ b/otk/otk_test.cc @@ -1,58 +1,75 @@ -#include "widget.hh" -#include "display.hh" -#include "configuration.hh" -#include "timerqueuemanager.hh" -#include "image.hh" -#include "style.hh" - -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(0ul, ctrl); - - const char *sfile = "/usr/local/share/openbox/styles/artwiz"; - - style_conf.setFile(sfile); - style_conf.load(); +#include "application.hh" +#include "focuswidget.hh" +#include "button.hh" - my_style->load(style_conf); +int main(int argc, char **argv) { + otk::OtkApplication app(argc, argv); - otk::OtkWidget foo(my_style); - otk::OtkWidget bar(&foo); - otk::OtkWidget baz(&foo); - otk::OtkWidget blef(&bar); + otk::OtkFocusWidget foo(&app); - foo.setTexture(my_style->getButtonFocus()); - foo.setGeometry(0, 0, 100, 110); + foo.resize(600, 500); + foo.setTexture(app.getStyle()->getTitleFocus()); + foo.setUnfocusTexture(app.getStyle()->getTitleUnfocus()); - bar.setTexture(my_style->getLabelFocus()); - bar.setGeometry(10, 10, 80, 40); + foo.setBevelWidth(2); + foo.setDirection(otk::OtkWidget::Horizontal); - baz.setTexture(my_style->getLabelFocus()); - baz.setGeometry(10, 60, 80, 40); + otk::OtkFocusWidget left(&foo); + otk::OtkFocusWidget right(&foo); - blef.setTexture(my_style->getHandleFocus()); - blef.setGeometry(10, 10, 60, 20); + 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()); - foo.show(); + otk::OtkButton iconb(&left); + otk::OtkFocusWidget label(&left); + otk::OtkButton maxb(&left); + otk::OtkButton closeb(&left); + + // fixed size + iconb.setText("foo"); + iconb.press(); + + // fix width to 60 and let the height be calculated by its parent + //label.setHeight(20); + label.setStretchableVert(true); + label.setStretchableHorz(true); + label.setTexture(app.getStyle()->getLabelFocus()); + label.setUnfocusTexture(app.getStyle()->getLabelUnfocus()); + + // fixed size + maxb.setText("bar"); - while (1) { - if (XPending(otk::OBDisplay::display)) { - XEvent e; - XNextEvent(otk::OBDisplay::display, &e); - } - } + // fixed size + closeb.setText("fuubar"); - delete my_style; - delete tm; - delete ctrl; + 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.show(); - otk::OBDisplay::destroy(); + app.exec(); return 0; }