Free Electron
Mask.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 __viewer_Mask_h__
8 #define __viewer_Mask_h__
9 
10 #include "viewer/MaskI.h"
11 
12 namespace fe
13 {
14 namespace ext
15 {
16 
17 class FE_DL_EXPORT Mask : virtual public MaskI
18 {
19  public:
20  Mask(void);
21 virtual ~Mask(void){}
22 virtual void maskSet(const String &key,
23  const WindowEvent::Mask &value);
24 virtual void maskDefault(const String &key,
25  const WindowEvent::Mask &value);
26 virtual WindowEvent::Mask maskGet(const String &key);
27 
28 virtual Record maskCreate(const sp<Layout> l_mask,
29  const String &key);
30 virtual void maskInit(const String &a_prefix);
31 virtual bool maskEnabled(const WindowEvent &wev);
32 virtual void maskEnable(bool a_setting);
33 
34  protected:
35  bool &enabled(void) { return m_enabled; }
36  void cookKey(String &a_cooked, const String &a_raw);
37 
38  private:
39  bool m_enabled;
40  String m_prefix;
41 };
42 
43 } /* namespace ext */
44 } /* namespace fe */
45 
46 #endif /* __viewer_Mask_h__ */
47 
kernel
Definition: namespace.dox:3