Vegastrike 0.5.1 rc1  1.0
Original sources for Vegastrike Evolved
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
QuestionDialog Class Referenceabstract

#include <modaldialog.h>

Inheritance diagram for QuestionDialog:
ModalDialog WindowController AlertDialog ListQuestionDialog YesNoDialog UpgradeOperationMountDialog

Public Member Functions

virtual void initControls (void)=0
 
virtual void init (const std::string &title)
 
virtual void run (void)
 
 QuestionDialog ()
 
virtual ~QuestionDialog (void)
 
- Public Member Functions inherited from ModalDialog
virtual void setCallback (ModalDialogCallback *cb, const std::string &id)
 
virtual void init (void)
 
virtual bool processWindowCommand (const EventCommandId &command, Control *control)
 
void modalFinished (void)
 
 ModalDialog ()
 
virtual ~ModalDialog (void)
 
- Public Member Functions inherited from WindowController
virtual void draw (void)
 
virtual Windowwindow (void)
 
virtual void setWindow (Window *w)
 
 WindowController ()
 
virtual ~WindowController (void)
 

Protected Attributes

bool m_deleteWindow
 
- Protected Attributes inherited from ModalDialog
std::string m_callbackId
 
ModalDialogCallbackm_callback
 
int m_result
 
- Protected Attributes inherited from WindowController
Windowm_window
 
bool m_deleteOnWindowClose
 

Detailed Description

Definition at line 101 of file modaldialog.h.

Constructor & Destructor Documentation

QuestionDialog::QuestionDialog ( )
inline

Definition at line 114 of file modaldialog.h.

114 : m_deleteWindow( true ) {}
virtual QuestionDialog::~QuestionDialog ( void  )
inlinevirtual

Definition at line 115 of file modaldialog.h.

References m_deleteWindow, and WindowController::m_window.

116  {
117  if (m_window != NULL && m_deleteWindow) delete m_window;
118  }

Member Function Documentation

void QuestionDialog::init ( const std::string &  title)
virtual

Definition at line 240 of file modaldialog.cpp.

References Window::findControlById(), ModalDialog::init(), initControls(), StaticDisplay::setText(), WindowController::setWindow(), and WindowController::window().

Referenced by BaseComputer::BuyUpgradeOperation::selectMount(), BaseComputer::SellUpgradeOperation::selectMount(), showAlert(), showListQuestion(), and showYesNoQuestion().

241 {
242  setWindow( new Window );
243  initControls();
244 
245  StaticDisplay *titleControl = static_cast< StaticDisplay* > ( window()->findControlById( "Title" ) );
246  assert( titleControl != NULL );
247  std::string fixedTitle;
248  std::string::size_type lastpos = 0, pos;
249  for ( pos = title.find( '\n' ); pos != std::string::npos; pos = title.find( '\n', lastpos ) ) {
250  fixedTitle.append( title, lastpos, pos-lastpos );
251  fixedTitle.append( "#n#" );
252  lastpos = pos+1;
253  }
254  fixedTitle.append( title, lastpos, std::string::npos );
255  titleControl->setText( fixedTitle );
256 
258 }
virtual void QuestionDialog::initControls ( void  )
pure virtual

Implemented in ListQuestionDialog.

Referenced by init().

void QuestionDialog::run ( void  )
virtual

Reimplemented from ModalDialog.

Definition at line 261 of file modaldialog.cpp.

References m_deleteWindow, and ModalDialog::run().

Referenced by BaseComputer::BuyUpgradeOperation::selectMount(), BaseComputer::SellUpgradeOperation::selectMount(), showAlert(), showListQuestion(), and showYesNoQuestion().

262 {
263  //We need to delete the Window we created until the Window is opened.
264  m_deleteWindow = false;
265 
267 }

Member Data Documentation

bool QuestionDialog::m_deleteWindow
protected

Definition at line 122 of file modaldialog.h.

Referenced by run(), and ~QuestionDialog().


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