1 / 20

Go4 GUI and GSI's QtROOT interface

Go4 GUI and GSI's QtROOT interface. G SI O nline O ffline O bject O riented. ROOT 2002. M. Al-Turany , D. Bertini, J. Adamczewski, H.G.Essel, S.Linev. Go4 GUI and QtROOT. Features of Qt ROOT Interface Using the Qt Designer Go4 GUI Singleton Features of the Go4 GUI Demo.

kalyca
Download Presentation

Go4 GUI and GSI's QtROOT interface

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Go4 GUIand GSI's QtROOT interface GSIOnlineOfflineObjectOriented ROOT 2002 M. Al-Turany, D. Bertini, J. Adamczewski, H.G.Essel, S.Linev M. Al-Turany Go4: Root 2002

  2. Go4 GUI and QtROOT • Features of Qt ROOT Interface • Using the Qt Designer • Go4 GUI Singleton • Features of the Go4 GUI • Demo M. Al-Turany Go4: Root 2002

  3. Qt Root Interface Features: • Support only Unix. • No changes in Root or Qt are needed • Maintainable with minimum effort • Can be used in parallel to the ROOT native GUI (TGxx classes). • Full Root canvas functionality embedded in a QWidget. • Drag and Drop support for canvas and pads. • SelectedPadChanged( TPad *) signal, emitted from TPad • The interface is tested and it works with ROOT >= 3.0 and Qt >= 2.3.0 M. Al-Turany Go4: Root 2002

  4. Qt Root Interface (UML) User Application Root Interface Qt M. Al-Turany Go4: Root 2002

  5. #include <qapplication.h>#include "MyWidget1.h"int main( int argc, char ** argv ){QApplication a( argc, argv );     MyWidget1 *w = new Mywidget1;     w->show();     a.connect( &a, SIGNAL( lastWindowClosed() ), &a, SLOT( quit() ) );   return a.exec();} Qt (Main.cxx) The designer generated Main.cpp will looks like: M. Al-Turany Go4: Root 2002

  6. #include "YOUR QT-ROOT INTERFACE DIR/tqapplication.h"#include "YOUR QT-ROOT INTERFACE DIR/qrootapplication.h"#include "MyWidget1.h"int main( int argc, char ** argv ){     QRootApplication a( argc, argv, 0);    TQApplication app("uno",&argc,argv);    MyWidget1 *w = new Mywidget1;   w->show();   a.connect( &a, SIGNAL( lastWindowClosed() ), &a, SLOT( quit() ) );  return a.exec();} Qt Root (Main.cxx) To use the QtRoot Interface you need: M. Al-Turany Go4: Root 2002

  7. Qt Designer A professional tool to create complex GUI‘s very easily M. Al-Turany Go4: Root 2002

  8. Qt Designer (Signals of QtRootCanvas) M. Al-Turany Go4: Root 2002

  9. Qt Designer (Slots of QtRootCanvas) M. Al-Turany Go4: Root 2002

  10. Qt Designer (Properties of QtRootCanvas) M. Al-Turany Go4: Root 2002

  11. Modified Popup Menu M. Al-Turany Go4: Root 2002

  12. Use of SelectedPadChanged ( TPad *) signal to change settings M. Al-Turany Go4: Root 2002

  13. Use of SelectedPadChanged ( TPad *) signal to change settings M. Al-Turany Go4: Root 2002

  14. Use ROOT and Qt together! Go4 GUI Description • Complex GUI • Flexible • Rapid prototyping • Easily extended M. Al-Turany Go4: Root 2002

  15. Go4 GUI Architecture • MDI Application • Remote File browser and Tree viewer • Signal-slot mechanism (both Qt and ROOT) • Gui singleton: registry + dispatcher (modified mediator pattern) • Persistent status objects per window • Well defined communication channels between the different parts of the GUI and external packages (e.g. Analysis, User GUI) M. Al-Turany Go4: Root 2002

  16. Gui Singleton: Registry + Dispatcher • A static Singleton which acts as a registry for all GUIsin the Go4 • All Commands sent to the analysis via this registry, also all objects sent from the analysis are delivered first here (dispatcher). M. Al-Turany Go4: Root 2002

  17. Go4 GUI (UML) Slots QWidget Status GUI Registry Qt Widget Root Classes M. Al-Turany Go4: Root 2002

  18. Go4 GUIFeatures: • Easy to use and self explaining GUI • Simplify use of ROOT standard methods • Drag and Drop support • Online help is integrated • User extensions are supported as: • Integrated in the Workspace and/or • Outside of the Go4 main window • Look & Feel support (fonts, styles) M. Al-Turany Go4: Root 2002

  19. M. Al-Turany Go4: Root 2002

  20. M. Al-Turany Go4: Root 2002

More Related