00001 #ifndef FLOWVIS_FRAME_H 00002 #define FLOWVIS_FRAME_H 00003 00004 #include "gui.h" 00005 #include "flowvis_data.h" 00006 #include "flowvis_canvas.h" 00007 00009 class FlowVisFrame: public FlowVisFrameBase { 00010 public: 00012 FlowVisFrame(wxWindow* parent); 00013 00015 void OnTraFuChanged(); 00016 00017 protected: 00020 void OnExit(wxCommandEvent& event); 00021 void OnOpen(wxCommandEvent& event); 00022 void OnBGOpenTraFu(wxCommandEvent& event); 00023 void OnBGComboChange(wxCommandEvent& event); 00024 void OnChangeNrArrows(wxSpinEvent& event); 00025 void OnArrowOpenTraFu(wxCommandEvent& event); 00026 void OnPlotSettingsChange(wxCommandEvent& event); 00027 void OnSLPlotSettingsChange(wxCommandEvent& event); 00028 void OnAbout(wxCommandEvent& event); 00029 void OnSLColorChange(wxColourPickerEvent& event); 00030 void OnGlyphDensitChanged(wxScrollEvent& event); 00031 void OnApplyCalcSettings(wxCommandEvent& event); 00032 void OnSave(wxCommandEvent& event); 00034 00035 private: 00037 void SyncUI(); 00038 00040 void TransferSLPlotSettings(); 00041 00043 void TransferCalcSettings(); 00044 00046 FlowVisCanvas *m_flowcanvas; 00047 00049 std::auto_ptr<FlowVisData> m_data; 00050 00052 std::vector<TraFuData> m_trafu_datas; 00053 00054 int m_current_set; 00055 bool m_arrows_enabled; 00056 }; 00057 00058 #endif // FLOWVIS_FRAME_H