00001 #ifndef Fireworks_Core_FWGeometryTableView_h 00002 #define Fireworks_Core_FWGeometryTableView_h 00003 // -*- C++ -*- 00004 // 00005 // Package: Core 00006 // Class : FWGeometryTableView 00007 // 00016 // 00017 // Original Author: 00018 // Created: Wed Jan 4 00:05:38 CET 2012 00019 // $Id: FWGeometryTableView.h,v 1.2 2012/02/22 03:45:59 amraktad Exp $ 00020 // 00021 00022 #include "Fireworks/Core/interface/FWGeometryTableViewBase.h" 00023 class FWGeometryTableManagerBase; 00024 class FWGeometryTableManager; 00025 class FWGUIValidatingTextEntry; 00026 class FWGeoMaterialValidator; 00027 class FWEveDetectorGeo; 00028 00029 class FWGeometryTableView : public FWGeometryTableViewBase 00030 { 00031 public: 00032 00033 FWGeometryTableView(TEveWindowSlot* iParent, FWColorManager* colMng); 00034 virtual ~FWGeometryTableView(); 00035 virtual void populateController(ViewerParameterGUI&) const; 00036 virtual FWGeometryTableManagerBase* getTableManager(); 00037 00038 void filterListCallback(); 00039 void filterTextEntryCallback(); 00040 void updateFilter(std::string&); 00041 00042 bool getVolumeMode() const { return m_mode.value() == kVolume; } 00043 std::string getFilter () const { return m_filter.value(); } 00044 int getAutoExpand() const { return m_autoExpand.value(); } 00045 int getVisLevel() const { return m_visLevel.value(); } 00046 bool getIgnoreVisLevelWhenFilter() const { return m_visLevelFilter.value(); } 00047 00048 bool drawTopNode() const { return !m_disableTopNode.value(); } 00049 void autoExpandCallback(); 00050 virtual void setPath(int, std::string&); 00051 void printTable(); 00052 00053 00054 virtual void setFrom(const FWConfiguration&); 00055 00056 00057 void chosenItem(int); 00058 void updateVisibilityTopNode(); 00059 00060 protected: 00061 // virtual void initGeometry(TGeoNode* iGeoTopNode, TObjArray* iVolumes); 00062 00063 private: 00064 FWGeometryTableView(const FWGeometryTableView&); // stop default 00065 const FWGeometryTableView& operator=(const FWGeometryTableView&); // stop default 00066 00067 // ---------- member data -------------------------------- 00068 FWGeometryTableManager *m_tableManager; 00069 00070 FWGUIValidatingTextEntry* m_filterEntry; 00071 FWGeoMaterialValidator* m_filterValidator; 00072 00073 #ifndef __CINT__ 00074 FWEnumParameter m_mode; 00075 FWStringParameter m_filter; 00076 FWBoolParameter m_disableTopNode; 00077 FWLongParameter m_visLevel; 00078 FWBoolParameter m_visLevelFilter; 00079 #endif 00080 00081 00082 ClassDef(FWGeometryTableView, 0); 00083 }; 00084 00085 00086 #endif