ScummVM API documentation
GUI::Dialog Class Reference
Inheritance diagram for GUI::Dialog:
GUI::GuiObject GUI::CommandReceiver Bbvs::MainMenu GUI::AboutDialog GUI::BrowserDialog GUI::ChooserDialog GUI::CloudConnectionWizard GUI::ConsoleDialog GUI::DLCsDialog GUI::DownloadDLCsDialog GUI::DownloadDialog GUI::DownloadPacksDialog GUI::EditRecordDialog GUI::FileBrowserDialog GUI::FluidSynthSettingsDialog GUI::GridItemTray GUI::HelpDialog GUI::IntegrityDialog GUI::LauncherDialog GUI::MassAddDialog GUI::MessageDialog GUI::OnScreenDialog GUI::OptionsDialog GUI::PopUpDialog GUI::PredictiveDialog GUI::PrintingDialog GUI::RecorderDialog GUI::RemoteBrowserDialog GUI::RemovalConfirmationDialog GUI::SaveLoadChooserDialog GUI::SavenameDialog GUI::ShaderBrowserDialog GUI::TextViewerDialog GUI::ThemeBrowser GUI::Tooltip GUI::UnknownGameDialog GUI::UpdatesDialog Grim::InputDialog Grim::MD5CheckDialog Hugo::EntryDialog Hugo::TopMenu MainMenuDialog Mohawk::InfoDialog Scumm::CreateSessionDialog Scumm::LoomTownsDifficultyDialog Scumm::MortimerDifficultyDialog Scumm::MortimerPilotDialog Scumm::ScummDialog Scumm::SessionSelectorDialog Scumm::ValueDisplayDialog Testbed::TestbedInteractionDialog Testbed::TestbedOptionsDialog Ultima::Nuvie::KeyHelpDialog WiiOptionsDialog

Public Member Functions

 Dialog (int x, int y, int w, int h, bool scale=false)
 
 Dialog (const Common::String &name)
 
virtual int runModal ()
 
bool isVisible () const override
 
void releaseFocus () override
 
void setFocusWidget (Widget *widget)
 
Widget * getFocusWidget ()
 
bool isDragging () const
 
void reflowLayout () override
 
virtual void lostFocus ()
 
virtual void receivedFocus (int x=-1, int y=-1)
 
virtual void open ()
 
virtual void close ()
 
Widget * findWidget (uint32 type)
 
- Public Member Functions inherited from GUI::GuiObject
 GuiObject (int x, int y, int w, int h, bool scale=false)
 
 GuiObject (const Common::String &name)
 
virtual void setTextDrawableArea (const Common::Rect &r)
 
virtual void resize (int x, int y, int w, int h, bool scale=true)
 
virtual Widget * addChild (Widget *newChild)
 
virtual int16 getRelX () const
 
virtual int16 getRelY () const
 
virtual int16 getAbsX () const
 
virtual int16 getAbsY () const
 
virtual int16 getChildX () const
 
virtual int16 getChildY () const
 
virtual uint16 getWidth () const
 
virtual uint16 getHeight () const
 
virtual bool isVisible () const =0
 
virtual void reflowLayout ()
 
virtual void removeWidget (Widget *widget)
 
virtual bool isPointIn (int x, int y)
 
virtual Common::Rect getClipRect () const
 

Protected Member Functions

void markWidgetsAsDirty ()
 
Common::Rect getMaxDirtyRect () const
 
virtual void drawDialog (DrawLayer layerToDraw, bool resetClipping=true)
 
void drawWidgets ()
 
virtual void handleTickle ()
 
virtual void handleMouseDown (int x, int y, int button, int clickCount)
 
virtual void handleMouseUp (int x, int y, int button, int clickCount)
 
virtual void handleMouseWheel (int x, int y, int direction) override
 
virtual void handleKeyDown (Common::KeyState state)
 
virtual void handleKeyUp (Common::KeyState state)
 
virtual void handleMouseMoved (int x, int y, int button)
 
virtual void handleMouseLeft (int button)
 
virtual void handleOtherEvent (const Common::Event &evt)
 
void handleCommand (CommandSender *sender, uint32 cmd, uint32 data) override
 
Widget * findWidget (int x, int y)
 
Widget * findWidget (const char *name)
 
void removeWidget (Widget *widget) override
 
void setDefaultFocusedWidget ()
 
void registerTickleWidget (Widget *widget) override
 
void unregisterTickleWidget (Widget *widget) override
 
void setResult (int result)
 
int getResult () const
 
virtual void handleMouseWheel (int x, int y, int direction)=0
 
virtual void releaseFocus ()=0
 
virtual void registerTickleWidget (Widget *widget)=0
 
virtual void unregisterTickleWidget (Widget *widget)
 
virtual void handleCommand (CommandSender *sender, uint32 cmd, uint32 data)
 

Protected Attributes

Widget * _mouseWidget
 
Widget * _focusedWidget
 
Widget * _dragWidget
 
Widget * _dragHookWidget
 
Widget * _tickleWidget
 
bool _visible
 
ThemeEngine::DialogBackground _backgroundType
 
- Protected Attributes inherited from GUI::GuiObject
Common::Rect _textDrawableArea
 
int16 _x
 
int16 _y
 
uint16 _w
 
uint16 _h
 
bool _useRTL
 
const Common::String _name
 
Widget * _firstWidget
 

Member Function Documentation

◆ isVisible()

bool GUI::Dialog::isVisible ( ) const
inlineoverridevirtual

Implements GUI::GuiObject.

◆ releaseFocus()

void GUI::Dialog::releaseFocus ( )
overridevirtual

Implements GUI::GuiObject.

◆ reflowLayout()

void GUI::Dialog::reflowLayout ( )
overridevirtual

Reimplemented from GUI::GuiObject.

◆ markWidgetsAsDirty()

void GUI::Dialog::markWidgetsAsDirty ( )
protected

Recursively mark all the widgets in this dialog as dirty so they are redrawn

◆ getMaxDirtyRect()

Common::Rect GUI::Dialog::getMaxDirtyRect ( ) const
protected

Returns the maximum dirty rectangle of this dialog

◆ drawDialog()

virtual void GUI::Dialog::drawDialog ( DrawLayer  layerToDraw,
bool  resetClipping = true 
)
protectedvirtual

Draw the dialog in its entirety (background and widgets)

Reimplemented in GUI::AboutDialog, GUI::ConsoleDialog, GUI::TextViewerDialog, GUI::Tooltip, GUI::PopUpDialog, and Scumm::ValueDisplayDialog.

◆ drawWidgets()

void GUI::Dialog::drawWidgets ( )
protected

Draw only the dialog's widgets

◆ handleMouseWheel()

virtual void GUI::Dialog::handleMouseWheel ( int  x,
int  y,
int  direction 
)
overrideprotectedvirtual

Implements GUI::GuiObject.

◆ handleCommand()

void GUI::Dialog::handleCommand ( CommandSender *  sender,
uint32  cmd,
uint32  data 
)
overrideprotectedvirtual

Reimplemented from GUI::CommandReceiver.

◆ removeWidget()

void GUI::Dialog::removeWidget ( Widget *  widget)
overrideprotectedvirtual

Reimplemented from GUI::GuiObject.

◆ registerTickleWidget()

void GUI::Dialog::registerTickleWidget ( Widget *  widget)
overrideprotectedvirtual

Implements GUI::GuiObject.

◆ unregisterTickleWidget()

void GUI::Dialog::unregisterTickleWidget ( Widget *  widget)
overrideprotectedvirtual

Reimplemented from GUI::GuiObject.


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