00001 /* -*- mode: c++ -*- */ 00002 00014 #ifndef _PlotTable_H_ 00015 #define _PlotTable_H_ 00016 00017 #ifdef _MSC_VER 00018 #include <msdevstudio/MSconfig.h> 00019 #endif 00020 00021 #include "libqthippo.h" 00022 00023 #include <qglobal.h> // for version 00024 #if QT_VERSION < 0x040000 00025 #include "PlotTableBase.h" 00026 #else 00027 #include "PlotTableUI.h" 00028 #endif 00029 00030 #include <map> 00031 00032 class CanvasView; 00033 class Q3ListViewItem; 00034 class ViewBase; 00035 00045 #if QT_VERSION < 0x040000 00046 class MDL_QTHIPPOPLOT_API PlotTable : public PlotTableBase 00047 #else 00048 class MDL_QTHIPPOPLOT_API PlotTable : public QDialog, 00049 private Ui::PlotTableUI 00050 #endif 00051 { 00052 00053 private: 00054 00057 CanvasView * m_canvas_view; 00058 00060 #if QT_VERSION < 0x040000 00061 std::map < const QListViewItem *, const ViewBase * > m_view_map; 00062 #else 00063 std::map < const Q3ListViewItem *, const ViewBase * > m_view_map; 00064 #endif 00065 00068 QWidget * m_observer; 00069 00073 bool m_browser_mode; 00074 00076 void initialize (); 00077 00078 protected: 00079 00080 #if QT_VERSION < 0x040000 00081 virtual void selectionChanged ( QListViewItem * ); 00082 #else 00083 virtual void selectionChanged ( Q3ListViewItem * ); 00084 #endif 00085 00088 virtual void on_copyButton_clicked (); 00089 00092 virtual void on_closeButton_clicked (); 00093 00094 public: 00095 00098 PlotTable (); 00099 00101 void setCanvas ( CanvasView * canvas ); 00102 00110 void setBrowserMode ( bool browser, QWidget * observer = 0 ); 00111 00112 }; 00113 00114 #endif // _PlotTable_H_