CMS 3D CMS Logo

FWDetailViewManager.h
Go to the documentation of this file.
1 #ifndef Fireworks_Core_FWDetailViewManager_h
2 #define Fireworks_Core_FWDetailViewManager_h
3 // -*- C++ -*-
4 //
5 // Package: Core
6 // Class : FWDetailViewManager
7 //
16 //
17 // Original Author: Chris Jones
18 // Created: Wed Mar 5 09:13:43 EST 2008
19 //
20 #include <map>
21 #include <string>
22 #include <vector>
23 
24 class FWColorManager;
25 class TEveCompositeFrameInMainFrame;
26 class FWDetailViewBase;
27 class FWModelId;
28 class TEveWindow;
29 
30 namespace fireworks
31 {
32 class Context;
33 }
34 
36 {
37 public:
39  virtual ~FWDetailViewManager();
40 
41  std::vector<std::string> detailViewsFor(const FWModelId&) const;
42  // void assertMainFrame();
43  void openDetailViewFor(const FWModelId&, const std::string&);
44  void colorsChanged();
45  void newEventCallback();
46  void eveWindowDestroyed(TEveWindow*);
47 
48  struct ViewFrame
49  {
50  TEveCompositeFrameInMainFrame *m_eveFrame;
52  TEveWindow *m_eveWindow;
53 
54  ViewFrame(TEveCompositeFrameInMainFrame *f, FWDetailViewBase* v, TEveWindow* w):
55  m_eveFrame(f), m_detailView(v), m_eveWindow(w) {}
56  };
57 
58 protected:
60 
61 private:
62 
63  FWDetailViewManager(const FWDetailViewManager&); // stop default
64  const FWDetailViewManager& operator=(const FWDetailViewManager&); // stop default
65 
66  std::vector<std::string> findViewersFor(const std::string&) const;
67 
68  typedef std::vector<ViewFrame> vViews_t;
69  typedef vViews_t::iterator vViews_i;
70  vViews_t m_views;
71 
72  mutable std::map<std::string, std::vector<std::string> > m_typeToViewers;
73 };
74 
75 #endif
ViewFrame(TEveCompositeFrameInMainFrame *f, FWDetailViewBase *v, TEveWindow *w)
const double w
Definition: UKUtility.cc:23
vViews_t::iterator vViews_i
std::vector< ViewFrame > vViews_t
std::map< std::string, std::vector< std::string > > m_typeToViewers
double f[11][100]
fireworks::Context * m_context
TEveCompositeFrameInMainFrame * m_eveFrame