NXWidgets  1.19
Public Member Functions | Protected Attributes | List of all members
NxWM::IApplication Class Referenceabstract

#include <iapplication.hxx>

Inheritance diagram for NxWM::IApplication:
Inheritance graph

Public Member Functions

virtual ~IApplication (void)
 
virtual IApplicationWindowgetWindow (void) const =0
 
virtual NXWidgets::IBitmapgetIcon (void)=0
 
virtual NXWidgets::CNxString getName (void)=0
 
virtual bool run (void)=0
 
virtual void stop (void)=0
 
virtual void destroy (void)=0
 
virtual void hide (void)=0
 
virtual void redraw (void)=0
 
void setMinimized (bool minimized)
 
void setTopApplication (bool topapp)
 
bool isMinimized (void) const
 
bool isTopApplication (void) const
 
virtual bool isFullScreen (void) const =0
 

Protected Attributes

bool m_minimized
 
bool m_topapp
 

Detailed Description

IApplication provides the abstract base class for each NxWM application.

Definition at line 70 of file iapplication.hxx.

Constructor & Destructor Documentation

◆ ~IApplication()

virtual NxWM::IApplication::~IApplication ( void  )
inlinevirtual

A virtual destructor is required in order to override the IApplication destructor. We do this because if we delete IApplication, we want the destructor of the class that inherits from IApplication to run, not this one.

Definition at line 90 of file iapplication.hxx.

Member Function Documentation

◆ destroy()

virtual void NxWM::IApplication::destroy ( void  )
pure virtual

Destroy the application and free all of its resources. This method will initiate blocking of messages from the NX server. The server will flush the window message queue and reply with the blocked message. When the block message is received by CWindowMessenger, it will send the destroy message to the start window task which will, finally, safely delete the application.

Implemented in NxWM::CMediaPlayer, NxWM::CCalibration, NxWM::CHexCalculator, NxWM::CStartWindow, and NxWM::CNxTerm.

◆ getIcon()

virtual NXWidgets::IBitmap* NxWM::IApplication::getIcon ( void  )
pure virtual

Get the icon associated with the application

Returns
An instance if IBitmap that may be used to rend the application's icon. This is an new IBitmap instance that must be deleted by the caller when it is no long needed.

Implemented in NxWM::CMediaPlayer, NxWM::CCalibration, NxWM::CHexCalculator, NxWM::CStartWindow, and NxWM::CNxTerm.

◆ getName()

virtual NXWidgets::CNxString NxWM::IApplication::getName ( void  )
pure virtual

Get the name string associated with the application

Returns
A copy if CNxString that contains the name of the application.

Implemented in NxWM::CMediaPlayer, NxWM::CCalibration, NxWM::CHexCalculator, NxWM::CStartWindow, and NxWM::CNxTerm.

◆ getWindow()

virtual IApplicationWindow* NxWM::IApplication::getWindow ( void  ) const
pure virtual

Each implementation of IApplication must provide a method to recover the contained CApplicationWindow instance.

Implemented in NxWM::CMediaPlayer, NxWM::CCalibration, NxWM::CHexCalculator, NxWM::CStartWindow, and NxWM::CNxTerm.

◆ hide()

virtual void NxWM::IApplication::hide ( void  )
pure virtual

The application window is hidden (either it is minimized or it is maximized, but not at the top of the hierarchy

Implemented in NxWM::CMediaPlayer, NxWM::CCalibration, NxWM::CHexCalculator, NxWM::CStartWindow, and NxWM::CNxTerm.

◆ isFullScreen()

virtual bool NxWM::IApplication::isFullScreen ( void  ) const
pure virtual

Report of this is a "normal" window or a full screen window. The primary purpose of this method is so that window manager will know whether or not it show draw the task bar.

Returns
True if this is a full screen window.

Implemented in NxWM::CMediaPlayer, NxWM::CCalibration, NxWM::CHexCalculator, NxWM::CStartWindow, and NxWM::CNxTerm.

◆ isMinimized()

bool NxWM::IApplication::isMinimized ( void  ) const
inline

Get the application's minimized state

Returns
True if the application is minimized

Definition at line 186 of file iapplication.hxx.

◆ isTopApplication()

bool NxWM::IApplication::isTopApplication ( void  ) const
inline

Return true if this is the top application

Returns
True if the application is the new top application

Definition at line 197 of file iapplication.hxx.

◆ redraw()

virtual void NxWM::IApplication::redraw ( void  )
pure virtual

Redraw the entire window. The application has been maximized or otherwise moved to the top of the hierarchy. This method is call from CTaskbar when the application window must be displayed

Implemented in NxWM::CMediaPlayer, NxWM::CCalibration, NxWM::CHexCalculator, NxWM::CStartWindow, and NxWM::CNxTerm.

◆ run()

virtual bool NxWM::IApplication::run ( void  )
pure virtual

Start the application (perhaps in the minimized state).

Returns
True if the application was successfully started.

Implemented in NxWM::CMediaPlayer, NxWM::CCalibration, NxWM::CHexCalculator, NxWM::CStartWindow, and NxWM::CNxTerm.

◆ setMinimized()

void NxWM::IApplication::setMinimized ( bool  minimized)
inline

Set the application's minimized state

Parameters
minimized.True if the application is minimized

Definition at line 164 of file iapplication.hxx.

◆ setTopApplication()

void NxWM::IApplication::setTopApplication ( bool  topapp)
inline

Set the application's top state

Parameters
topapp.True if the application is the new top application

Definition at line 175 of file iapplication.hxx.

◆ stop()

virtual void NxWM::IApplication::stop ( void  )
pure virtual

Stop the application, put all widgets in a deactivated/disabled state and wait to see what happens next.

Implemented in NxWM::CMediaPlayer, NxWM::CCalibration, NxWM::CHexCalculator, NxWM::CStartWindow, and NxWM::CNxTerm.

Member Data Documentation

◆ m_minimized

bool NxWM::IApplication::m_minimized
protected

These values (and the accessors that go with them) violate the "purity" of the base class. These are really part of the task bar implementation: Each application provides this state information needed by the taskbar.True if the application is minimized

Definition at line 79 of file iapplication.hxx.

◆ m_topapp

bool NxWM::IApplication::m_topapp
protected

True if this application is at the top in the hiearchy

Definition at line 80 of file iapplication.hxx.


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