MRPT logo

mrpt::gui::CBaseGUIWindow Class Reference

The base class for GUI window classes. More...

#include <mrpt/gui/CBaseGUIWindow.h>

Inheritance diagram for mrpt::gui::CBaseGUIWindow:
Inheritance graph
[legend]
Collaboration diagram for mrpt::gui::CBaseGUIWindow:
Collaboration graph
[legend]

List of all members.

Public Member Functions

void * getWxObject ()
 Read-only access to the wxDialog object.
void notifyChildWindowDestruction ()
 Called by wx main thread to set m_hwnd to NULL.
void notifySemThreadReady ()
 Called by wx main thread to signal the semaphore that the wx window is built and ready.
 CBaseGUIWindow (const std::string &initial_caption=std::string())
virtual ~CBaseGUIWindow ()
bool isOpen ()
 Returns false if the user has already closed the window.
virtual void resize (unsigned int width, unsigned int height)=0
 Resizes the window, stretching the image to fit into the display area.
virtual void setPos (int x, int y)=0
 Changes the position of the window on the screen.
virtual void setWindowTitle (const std::string &str)=0
 Changes the window title text.
int waitForKey (bool ignoreControlKeys=true, mrptKeyModifier *out_pushModifier=NULL)
 Waits for any key to be pushed on the image or the console, and returns the key code.
bool keyHit () const
 Returns true if a key has been pushed, without blocking waiting for a new key being pushed.
void clearKeyHitFlag ()
 Assure that "keyHit" will return false until the next pushed key.
int getPushedKey (mrptKeyModifier *out_pushModifier=NULL)
 Returns the latest pushed key, or 0 if there is no new key stroke.

Protected Attributes

synch::CSemaphore m_semThreadReady
 This semaphore will be signaled when the wx window is built and ready.
synch::CSemaphore m_semWindowDestroyed
 This semaphore will be signaled when the wx window is destroyed.
std::string m_caption
 The caption of the window.
void_ptr_noncopy m_hwnd
 The window handle.
volatile bool m_keyPushed
volatile int m_keyPushedCode
volatile mrptKeyModifier m_keyPushedModifier

Friends

class CWindowDialog
class C3DWindowDialog
class CWindowDialogPlots

Detailed Description

The base class for GUI window classes.

Definition at line 48 of file CBaseGUIWindow.h.


Constructor & Destructor Documentation

mrpt::gui::CBaseGUIWindow::CBaseGUIWindow ( const std::string &  initial_caption = std::string()  ) 
virtual mrpt::gui::CBaseGUIWindow::~CBaseGUIWindow (  )  [virtual]

Member Function Documentation

void mrpt::gui::CBaseGUIWindow::clearKeyHitFlag (  )  [inline]

Assure that "keyHit" will return false until the next pushed key.

See also:
keyHit, waitForKey

Definition at line 110 of file CBaseGUIWindow.h.

int mrpt::gui::CBaseGUIWindow::getPushedKey ( mrptKeyModifier out_pushModifier = NULL  ) 

Returns the latest pushed key, or 0 if there is no new key stroke.

Parameters:
out_pushModifier If set to !=NULL, the modifiers of the key stroke will be saved here.
Returns:
The virtual key code, as defined in mrptKeyCode (a replication of wxWidgets key codes).
See also:
keyHit, waitForKey
void* mrpt::gui::CBaseGUIWindow::getWxObject (  )  [inline]

Read-only access to the wxDialog object.

Definition at line 66 of file CBaseGUIWindow.h.

bool mrpt::gui::CBaseGUIWindow::isOpen (  ) 

Returns false if the user has already closed the window.

bool mrpt::gui::CBaseGUIWindow::keyHit (  )  const [inline]

Returns true if a key has been pushed, without blocking waiting for a new key being pushed.

See also:
waitForKey, clearKeyHitFlag

Definition at line 105 of file CBaseGUIWindow.h.

void mrpt::gui::CBaseGUIWindow::notifyChildWindowDestruction (  ) 

Called by wx main thread to set m_hwnd to NULL.

void mrpt::gui::CBaseGUIWindow::notifySemThreadReady (  ) 

Called by wx main thread to signal the semaphore that the wx window is built and ready.

virtual void mrpt::gui::CBaseGUIWindow::resize ( unsigned int  width,
unsigned int  height 
) [pure virtual]

Resizes the window, stretching the image to fit into the display area.

Implemented in mrpt::gui::CDisplayWindow, mrpt::gui::CDisplayWindow3D, and mrpt::gui::CDisplayWindowPlots.

virtual void mrpt::gui::CBaseGUIWindow::setPos ( int  x,
int  y 
) [pure virtual]

Changes the position of the window on the screen.

Implemented in mrpt::gui::CDisplayWindow, mrpt::gui::CDisplayWindow3D, and mrpt::gui::CDisplayWindowPlots.

virtual void mrpt::gui::CBaseGUIWindow::setWindowTitle ( const std::string &  str  )  [pure virtual]

Changes the window title text.

Implemented in mrpt::gui::CDisplayWindow, mrpt::gui::CDisplayWindow3D, and mrpt::gui::CDisplayWindowPlots.

int mrpt::gui::CBaseGUIWindow::waitForKey ( bool  ignoreControlKeys = true,
mrptKeyModifier out_pushModifier = NULL 
)

Waits for any key to be pushed on the image or the console, and returns the key code.

This method remove key strokes previous to its call, so it will always wait. To get the latest pushed key, see

Parameters:
ignoreControlKeys If set to false, any push of shift, cmd, control, etc... will make this method to return.
out_pushModifier If set to !=NULL, the modifiers of the key stroke will be saved here.
Returns:
The virtual key code, as defined in mrptKeyCode (a replication of wxWidgets key codes).
See also:
getPushedKey, Key codes in the enum mrptKeyCode

Friends And Related Function Documentation

friend class C3DWindowDialog [friend]

Reimplemented in mrpt::gui::CDisplayWindow3D.

Definition at line 51 of file CBaseGUIWindow.h.

friend class CWindowDialog [friend]

Definition at line 50 of file CBaseGUIWindow.h.

friend class CWindowDialogPlots [friend]

Reimplemented in mrpt::gui::CDisplayWindowPlots.

Definition at line 52 of file CBaseGUIWindow.h.


Member Data Documentation

std::string mrpt::gui::CBaseGUIWindow::m_caption [protected]

The caption of the window.

Definition at line 57 of file CBaseGUIWindow.h.

The window handle.

Definition at line 58 of file CBaseGUIWindow.h.

volatile bool mrpt::gui::CBaseGUIWindow::m_keyPushed [protected]

Definition at line 61 of file CBaseGUIWindow.h.

Definition at line 62 of file CBaseGUIWindow.h.

Definition at line 63 of file CBaseGUIWindow.h.

This semaphore will be signaled when the wx window is built and ready.

Definition at line 55 of file CBaseGUIWindow.h.

This semaphore will be signaled when the wx window is destroyed.

Definition at line 56 of file CBaseGUIWindow.h.




Page generated by Doxygen 1.6.2 for MRPT 0.8.1 SVN:exported at Mon Feb 15 22:01:07 UTC 2010