#include "Midad/Scene.h"#include "Midad/Scenery.h"#include "Midad/GuiMainWindow.h"#include "Midad/GuiCanvas.h"#include "Midad/GuiBox.h"#include "Midad/GuiButton.h"#include "TApplication.h"#include "TRandom.h"#include "TCanvas.h"#include "TBox.h"#include <iostream>#include <sigc++/sigc++.h>#include <sigc++/object_slot.h>#include <sigc++/class_slot.h>Go to the source code of this file.
Classes | |
| class | MyScenery |
| class | DualSignal |
Functions | |
| void | add_box (Midad::Scene *s, SigC::Signal0< void > *sig) |
| int | main (int argc, char *argv[]) |
|
||||||||||||
|
Definition at line 46 of file test-Scene.cxx. References s(). Referenced by main(). 00047 {
00048 cerr << "Add a box\n";
00049 MyScenery* ms = manage(new MyScenery);
00050 s->Add(*ms);
00051 sig->connect(SigC::slot(*ms,&MyScenery::Diddle));
00052 s->Update();
00053 }
|
|
||||||||||||
|
Definition at line 55 of file test-Scene.cxx. References GuiCompositeFrameBase::Add(), add_box(), GuiButtonBase::clicked, GuiMainWindow::ConnectClose(), DualSignal::done, GuiBase::GetLayoutHints(), s(), GuiBase::SetLayoutHints(), GuiMainWindow::SetMinSize(), and GuiMainWindow::ShowAll(). 00056 {
00057 TApplication theApp("App", &argc, argv);
00058
00059 GuiMainWindow mw(300,400);
00060 GuiVBox vbox(mw);
00061 vbox.SetLayoutHints(vbox.GetLayoutHints() | kLHintsExpandX);
00062 mw.Add(vbox);
00063
00064 GuiCanvas gc(vbox);
00065 vbox.Add(gc);
00066
00067 Midad::Scene s("test-scene","generic-scene-type");
00068
00069 TCanvas* canvas = gc.GetCanvas();
00070 canvas->cd();
00071 s.Draw();
00072
00073 GuiHBox hbox(vbox);
00074 vbox.Add(hbox);
00075
00076 DualSignal dualsig;
00077 dualsig.done.connect(SigC::slot(s,&Midad::Scene::Update));
00078
00079 GuiTextButton* but = manage(new GuiTextButton(hbox,"modify"));
00080 hbox.Add(*but);
00081 but->clicked.connect(SigC::slot_class(dualsig,&DualSignal::emit));
00082
00083 GuiTextButton* addbut = manage(new GuiTextButton(hbox,"add"));
00084 hbox.Add(*addbut);
00085 addbut->clicked.connect(SigC::bind(SigC::slot(add_box),&s,&dualsig.sig));
00086
00087 but = manage(new GuiTextButton(hbox,"update"));
00088 hbox.Add(*but);
00089 but->clicked.connect(SigC::slot(s,&Midad::Scene::Update));
00090
00091
00092 mw.ShowAll();
00093 mw.SetMinSize();
00094 mw.ConnectClose();
00095
00096 theApp.Run();
00097 return 0;
00098 } // end of main()
|
1.3.9.1