You.i Engine
YiPopupView.h
Go to the documentation of this file.
1 // © You i Labs Inc. 2000-2017. All rights reserved.
2 #ifndef _YI_POPUP_VIEW_H_
3 #define _YI_POPUP_VIEW_H_
4 
6 #include <view/YiSceneView.h>
7 #include <utility/YiString.h>
8 #include <utility/YiTimer.h>
10 
11 class CYITextSceneNode;
12 class CYIPushButtonView;
13 
14 namespace yi
15 {
21 namespace deprecated
22 {
23 
24 
25 #define YI_POPUP_MAX_DISMISS_BUTTONS 3
26 
27 
44 class CYIPopupView : public CYISceneView
45 {
46 public:
47  CYIPopupView();
48  virtual ~CYIPopupView();
49 
50  virtual bool Init() override;
51 
56  void QueueMessage(const CYIPopupMessage &popupMessage);
57 
62  void DismissMessage();
63 
68  void Flush();
69 
72 
73 protected:
74  virtual void OnDismissButton(int32_t nButtonID);
75  virtual void OnDismissTimer();
77  void ProcessNextMessage();
78  virtual void OnMessageDismissed();
79 
80  // Self signaling to run on the same thread by connecting asynchronous.
82  void OnQueueMessageRequested(CYIPopupMessage popupMessage);
83 
87  std::queue<CYIPopupMessage> m_messagesQueue;
89 
91 };
92 
93 } // namespace deprecated
94 
97 } // namespace yi
98 
99 #endif // _YI_POPUP_VIEW_H_
Definition: YiAbstractSignalTransition.h:7
The base class for all view types. Views are containers of renderable elements that often define inte...
Definition: YiSceneView.h:47
CYIPopupMessage m_currentMessage
Definition: YiPopupView.h:88
CYITimer m_PopupDismissTimer
Definition: YiPopupView.h:86
#define YI_TYPE_BASES(...)
Definition: YiRtti.h:350
CYISignal< CYIPopupMessage > QueueMessageRequested
Definition: YiPopupView.h:81
A view to easily display popup messages.
Definition: YiPopupView.h:44
CYISignal< int32_t > DismissTimerTimedOut
Definition: YiPopupView.h:71
virtual void OnMessageDismissed()
void OnQueueMessageRequested(CYIPopupMessage popupMessage)
A low-precision timer driven by the update loop.
Definition: YiTimer.h:29
void QueueMessage(const CYIPopupMessage &popupMessage)
A scene node type that renders text.
Definition: YiTextSceneNode.h:77
#define YI_POPUP_MAX_DISMISS_BUTTONS
Definition: YiPopupView.h:25
virtual bool Init() override
virtual void OnDismissButton(int32_t nButtonID)
Definition: YiPopupMessage.h:12
CYITextSceneNode * m_pPopupMessageNode
Definition: YiPopupView.h:84
std::queue< CYIPopupMessage > m_messagesQueue
Definition: YiPopupView.h:87
Provides an implementation of a button which accepts user interaction in the form of a press and rele...
Definition: YiPushButtonView.h:35
CYISignal< int32_t, int32_t > DismissButtonClicked
Definition: YiPopupView.h:70
CYIPushButtonView * m_pDismissButtons[YI_POPUP_MAX_DISMISS_BUTTONS]
Definition: YiPopupView.h:85