JX Application Framework
Loading...
Searching...
No Matches
Public Member Functions | Protected Member Functions | List of all members
JXMenuDirector Class Referenceabstract

#include <JXMenuDirector.h>

Inheritance diagram for JXMenuDirector:
[legend]

Public Member Functions

 JXMenuDirector (JXDirector *supervisor, JXMenu *menu)
 
 ~JXMenuDirector () override
 
JXMenuTableGetMenuTable () const
 
void BuildWindow (const JPoint &leftPtR, const JPoint &rightPtR, const JCoordinate sourceHeight)
 
void GrabKeyboard ()
 
void GrabPointer ()
 
- Public Member Functions inherited from JXWindowDirector
 JXWindowDirector (JXDirector *supervisor)
 
 ~JXWindowDirector () override
 
void Activate () override
 
bool Deactivate () override
 
void Suspend () override
 
void Resume () override
 
JXWindowGetWindow () const
 
JXDisplayGetDisplay () const
 
virtual const JStringGetName () const
 
virtual bool GetMenuIcon (const JXImage **icon) const
 
virtual bool NeedsSave () const
 
- Public Member Functions inherited from JXDirector
 JXDirector (JXDirector *supervisor)
 
 ~JXDirector () override
 
bool IsClosing () const
 
virtual bool Close ()
 
bool IsActive () const
 
bool IsSuspended () const
 
bool HasSubdirectors () const
 
bool GetSubdirectors (const JPtrArray< JXDirector > **list) const
 
- Public Member Functions inherited from JBroadcaster
 JBroadcaster ()
 
virtual ~JBroadcaster ()
 
JBroadcasteroperator= (const JBroadcaster &source)
 
bool HasSenders () const
 
JSize GetSenderCount () const
 
bool HasRecipients () const
 
JSize GetRecipientCount () const
 
virtual JString ToString () const
 
template<class T >
void ListenTo (const JBroadcaster *sender, const std::function< void(const T &)> &f)
 

Protected Member Functions

virtual JXMenuTableCreateMenuTable ()=0
 
- Protected Member Functions inherited from JXWindowDirector
virtual bool OKToDeactivate ()
 
- Protected Member Functions inherited from JXDirector
JXDirectorGetSupervisor () const
 
bool CloseAllSubdirectors ()
 
virtual void DirectorClosed (JXDirector *theDirector)
 
- Protected Member Functions inherited from JBroadcaster
 JBroadcaster (const JBroadcaster &source)
 
void ListenTo (const JBroadcaster *sender)
 
void StopListening (const JBroadcaster *sender)
 
void ClearWhenGoingAway (const JBroadcaster *sender, void *pointerToMember)
 
void StopListening (const JBroadcaster *sender, const std::type_info &messageType)
 
template<class T >
void Send (JBroadcaster *recipient, const T &message)
 
template<class T >
void Broadcast (const T &message)
 
virtual void Receive (JBroadcaster *sender, const Message &message)
 
void SendWithFeedback (JBroadcaster *recipient, Message *message)
 
void BroadcastWithFeedback (Message *message)
 
virtual void ReceiveWithFeedback (JBroadcaster *sender, Message *message)
 
virtual void ReceiveGoingAway (JBroadcaster *sender)
 

Constructor & Destructor Documentation

◆ JXMenuDirector()

JXMenuDirector::JXMenuDirector ( JXDirector supervisor,
JXMenu menu 
)

◆ ~JXMenuDirector()

JXMenuDirector::~JXMenuDirector ( )
override

Member Function Documentation

◆ BuildWindow()

void JXMenuDirector::BuildWindow ( const JPoint leftPtR,
const JPoint rightPtR,
const JCoordinate  sourceHeight 
)

We have to do this after the constructor is finished because CreateMenuTable() is pure virtual.

If sourceHeight > 0, considers possibility of placing the window above (*PtR.y - sourceHeight)

◆ CreateMenuTable()

virtual JXMenuTable * JXMenuDirector::CreateMenuTable ( )
protectedpure virtual

◆ GetMenuTable()

JXMenuTable * JXMenuDirector::GetMenuTable ( ) const
inline

◆ GrabKeyboard()

void JXMenuDirector::GrabKeyboard ( )

We can't grab the keyboard until after the window is visible.

◆ GrabPointer()

void JXMenuDirector::GrabPointer ( )

We can't grab the pointer until after the window is visible. This should only be called when the menu is activated by a shortcut.


The documentation for this class was generated from the following files: