Palettes::PageArrowsUI class

The class that represents the fragment of user interface of the page numbers and arrow buttons in an Editors::PaletteCategory.

Base classes

class UTFWin::IWinProc
This class is a window procedure, also known as an event/message listener.
class UnkPageArrowsUI
class DefaultRefCounted
The default implementation of a reference counted class.

Public types

enum ControlIDs { kControlMainWindow = 0xFFFFFFFF, kControlNumbersText = 0x05D122C0, kControlTurnBackBtn = 0x92DF6FD7, kControlTurnForwardBtn = 0x92DF6FD6 }

Public static variables

static const uint32_t TYPE

Constructors, destructors, conversion operators

PageArrowsUI()
~PageArrowsUI() virtual

Public functions

void Load(IWindow* pWindow, PaletteCategoryUI* pCategoryUI)
Loads the UI for this panel and adds it to the window and given category UI.
void SetVisible(bool bVisible)
Toggles the visibility of this panel.
void Update(int)
auto AddRef() -> int virtual
auto Release() -> int virtual
auto Cast(uint32_t) -> void* virtual
auto GetEventFlags() const -> int override
Gets the flags that represent which type of messages this IWinProc can handle.
auto HandleUIMessage(IWindow* pWindow, const Message& message) -> bool override
Method called every time a message is received on a window that has this IWinProc added.
auto func04h(int, int) -> bool override

Public variables

intrusive_ptr<UILayout> mpLayout
The UI layout of this panel.
intrusive_ptr<PaletteCategoryUI> mpCategoryUI
The UI of the palette category whose page numbers are being displayed by this class.
intrusive_ptr<IWindow> mpPageNumberPanel
The window (something meant to display text) that shows the page number.
intrusive_ptr<IWindow> mpMainWindow
The window that contains all the page number/arrows stuff.
int field_20
int field_24

Enum documentation

enum Palettes::PageArrowsUI::ControlIDs

Enumerators
kControlMainWindow

The ControlID of the main window in the layout.

kControlNumbersText

The ControlID of the window (that displays text) that shows the current page number.

kControlTurnBackBtn

The ControlID of the button used to turn one page backwards.

kControlTurnForwardBtn

The ControlID of the button used to turn one page forward.

Function documentation

void Palettes::PageArrowsUI::Load(IWindow* pWindow, PaletteCategoryUI* pCategoryUI)

Loads the UI for this panel and adds it to the window and given category UI.

Parameters
pWindow
pCategoryUI

This method loads the UI with instance ID 0xB0039D21. This class, which inherits from UTFWin::IWinProc, adds itself as a window procedure to the main window of the UI layout loaded, in order to receive events.

void Palettes::PageArrowsUI::SetVisible(bool bVisible)

Toggles the visibility of this panel.

Parameters
bVisible Whether the panel must be visible or not.

int Palettes::PageArrowsUI::GetEventFlags() const override

Gets the flags that represent which type of messages this IWinProc can handle.

This allows for better performance, since generally a procedure only needs to listen specific events. The flags are in the kEventFlag... values.

bool Palettes::PageArrowsUI::HandleUIMessage(IWindow* pWindow, const Message& message) override

Method called every time a message is received on a window that has this IWinProc added.

Parameters
pWindow The window that received this message.
message The message received.
Returns Whether the message was handled or not.

This method is responsible of handling (or not) the message. This method receives the IWindow that is currently receiving the message; this way, the same IWinProc can be listening for more than one window. This method returns whether the message was handled or not; if it was handled, no other IWinProcs will be called on that window.

Variable documentation

intrusive_ptr<IWindow> Palettes::PageArrowsUI::mpPageNumberPanel

The window (something meant to display text) that shows the page number.

It corresponds to the Editors::PaletteCategoryUI::ControlIDs::PageArrowsUI::TODO window.

intrusive_ptr<IWindow> Palettes::PageArrowsUI::mpMainWindow

The window that contains all the page number/arrows stuff.

It corresponds to the Editors::PaletteCategoryUI::ControlIDs::PageArrowsUI::TODO window.