Free Electron
ScopeDebug.h
Go to the documentation of this file.
1 /* Copyright (C) 2003-2021 Free Electron Organization
2  Any use of this software requires a license. If a valid license
3  was not distributed with this file, visit freeelectron.org. */
4 
5 /** @file */
6 
7 #ifndef __dataui_ScopeDebug_h__
8 #define __dataui_ScopeDebug_h__
9 
10 #include <dataui/dataui.pmh>
11 
12 #include "viewer/DrawView.h"
13 #include "RegionalDebug.h"
14 namespace fe
15 {
16 namespace ext
17 {
18 
19 /** GUI for debug displaying a Scope
20  */
21 class FE_DL_EXPORT ScopeDebug :
22  public Initialize<ScopeDebug>,
23  virtual public RegionalDebug
24 {
25  public:
26  ScopeDebug(void);
27 virtual ~ScopeDebug(void);
28 
29  void initialize(void);
30 
31  protected:
32  class LayoutRegion : public Region
33  {
34  public:
35  LayoutRegion(void) { setName("LayoutRegion"); }
36 virtual ~LayoutRegion(void){}
37  sp<Layout> m_layout;
38  };
39 
40  class ScopeRegion : public Region
41  {
42  public:
43  ScopeRegion(void) { setName("ScopeRegion"); }
44 virtual ~ScopeRegion(void){}
45  sp<Scope> m_scope;
46  };
47 
48 virtual void handleRegion(sp<Region> a_region);
49 virtual void handleDraw(Record &r_sig);
50 virtual void handleHome(void);
51 
52  private:
53  sp<Layout> m_layout;
54  sp<Scope> m_spScope;
55  std::map< sp<Scope>, sp<Layout> > m_layoutMap;
56 };
57 
58 } /* namespace ext */
59 } /* namespace fe */
60 
61 
62 #endif /* __dataui_ScopeDebug_h__ */
63 
kernel
Definition: namespace.dox:3
Per-class participation in the Initialized <> mechanism.
Definition: Initialized.h:117
Reference to an instance of a Layout.
Definition: RecordSB.h:35
GUI for debug displaying a Scope.
Definition: ScopeDebug.h:21