summaryrefslogtreecommitdiff
path: root/src/test.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/test.cc')
-rw-r--r--src/test.cc60
1 files changed, 54 insertions, 6 deletions
diff --git a/src/test.cc b/src/test.cc
index 45d758c..3219004 100644
--- a/src/test.cc
+++ b/src/test.cc
@@ -698,14 +698,48 @@ virtual int startup() throw (GeneralException) {
new mogltk::widgets::Frame(sh, w, 10, 10, 600, 400);
//new mogltk::widgets::MsgBox(sh, w, "Test", "Blablabla\nCeci est un test de la\nclasse MsgBox.");
- mogltk::widgets::ContextMenu * c = new mogltk::widgets::ContextMenu(sh, w, 20, 20), * c2;
- mogltk::widget * sm;
- mogltk::rect r;
+ class tLabel : public mogltk::widgets::Label {
+ public:
+ tLabel(mogltk::shape * sh, mogltk::widget * father) : Label(sh, father, 250, 200, 16, 16, "I"), tick(0) { set_timed_event(500); }
+ virtual bool process_event(int mx, int my, mogltk::event_t event) {
+ if (Label::process_event(mx, my, event))
+ return true;
+
+ if (event == mogltk::E_TIMER) {
+ set_timed_event(500);
+ tick = (tick + 1) % 4;
+ switch (tick) {
+ case 0:
+ caption = "I";
+ break;
+ case 1:
+ caption = "/";
+ break;
+ case 2:
+ caption = "-";
+ break;
+ case 3:
+ caption = "\\";
+ break;
+ }
+ }
+ }
+ private:
+ int tick;
+ };
- sm = new mogltk::widgets::SmartBox(sh, w, 250, 300, 100, 70, "SmartBox");
- r = sm->GetDrawRect();
- new mogltk::widgets::Menu(sh, w);
+ mogltk::widgets::ContextMenu * c, * c2;
+ //c = new mogltk::widgets::ContextMenu(sh, w, 20, 20);
+ mogltk::widgets::Menu * sm;
+ new mogltk::widgets::SmartBox(sh, w, 250, 300, 100, 70, "SmartBox");
+ sm = new mogltk::widgets::Menu(sh, w);
+
+ sm->addnode("Toto", 0);
+ sm->addnode("Titi", 0);
+ sm->addnode("Tutu", 0);
+
+#if 0
c->addnode("Test", 0);
c->addnode("Test2", 0);
c->addline();
@@ -716,6 +750,20 @@ virtual int startup() throw (GeneralException) {
c2->addnode("A sub", 0);
c2->createsub("subsub")->addnode("Toto", 0);
c2->SetEnabled(0, false);
+#endif
+
+ c = sm->createsub("Sub Menu");
+ c->addnode("Blah1", 0);
+ c->addnode("Blah2", 0);
+ c->addnode("Blah3", 0);
+ c->addline();
+ c2 = c->createsub("SubBlah");
+ c2->addnode("SubBlah1", 0);
+ c2->addnode("SubBlah2", 0);
+
+ sm->MoveOnTop();
+
+ new tLabel(sh, w);
w->mainloop();