![]() |
Spore ModAPI
2.4.0
API for creating C++ mods for Spore
|
UTFWin is the user interface system in Spore. More...
Namespaces | |
ButtonFlags | |
ButtonStateFlags | |
Classes | |
class | BehaviourTimeOscillator |
class | BehaviourTimeRamp |
class | BehaviourTimeSmoothRamp |
class | BiStateEffect |
class | ButtonDrawableRadio |
The standard IDrawable for a standard, simple radio or checkbox button component. More... | |
class | ButtonDrawableStandard |
The standard IDrawable for a standard, simple button component. More... | |
class | CascadeEffect |
class | ChildrenIterator |
class | ComboBoxDrawable |
The standard IDrawable for a combo box component. More... | |
struct | ComponentSerialization |
class | cSPUIMessageBox |
class | DefaultDrawable |
A class that implements all the methods of an IDrawable. More... | |
class | DefaultLayoutElement |
A default implementation of ILayoutElement. More... | |
class | DialogDrawable |
The standard IDrawable for a dialog component. More... | |
class | EventPropertyObject |
class | EventTimeFunctionBase |
class | FadeEffect |
class | FrameDrawable |
FrameDrawable is a procedural drawable that renders multiple frame styles depending on the current state. More... | |
struct | FrameStyle |
class | GlideEffect |
class | Graphics2D |
A class that can be used to draw things in the user interface. More... | |
class | GridUnknown |
class | IBiStateEffect |
class | IButton |
An interface that declares all the functions needed by a button component. More... | |
class | IButtonDrawable |
This class is a type of UTFWin::IDrawable capable of rendering an UTFWin::IButton. More... | |
class | IButtonDrawableRadio |
An abstract class that has the methods that a drawable for a simple radio or checkbox button would require. More... | |
class | IButtonDrawableStandard |
An abstract class that has the methods that a drawable for a simple standard button would require. More... | |
class | ICascadeEffect |
class | IComboBox |
class | IComboBoxDrawable |
An abstract class that has the methods that a drawable for a combo box would require. More... | |
class | IDialogDrawable |
An abstract class that has the methods that a drawable for a dialog would require. More... | |
class | IDrawable |
A class that is capable of drawing a user interface component. More... | |
class | IEventTimeFunction |
class | IGlideEffect |
class | IImageDrawable |
An abstract class that has the methods that a drawable that renders an image would require. More... | |
class | IInflateEffect |
class | ILayoutElement |
This class represents an element that is part of a user interfaces. More... | |
class | ILayoutStyle |
This class represents an object that can apply a certain layout to a given Rectangle area. More... | |
class | Image |
A layout element that represents an image. More... | |
class | ImageDrawable |
A standard IDrawable that renders an image. More... | |
class | IModulateEffect |
class | InflateEffect |
class | InteractiveWindow |
class | InteractiveWinProc |
class | IPerspectiveEffect |
class | IRotateEffect |
class | IScrollbarDrawable |
An abstract class that has the methods that a drawable for a scrollbar would require. More... | |
class | ISlider |
class | ISliderDrawable |
An abstract class that has the methods that a drawable for a slider would require. More... | |
class | ISpinnerDrawable |
An abstract class that has the methods that a drawable for a spinner would require. More... | |
class | IStdDrawable |
An abstract class that has the methods that a standard drawable would require. More... | |
class | ITextEdit |
class | ITreeNode |
class | ITreeView |
class | IWindow |
An interface that represents a component in the user interface. More... | |
class | IWindowManager |
class | IWinProc |
This class is a window procedure, also known as an event/message listener. More... | |
class | LambdaFilterProc |
class | LambdaProc |
class | LayoutObjectsContainer |
class | LayoutReader |
class | Message |
class | MessageBoxCallback |
class | ModulateEffect |
class | OutlineFormat |
class | PerspectiveEffect |
class | ProcIterator |
struct | PropertyMethods |
class | ProportionalLayout |
struct | RenderParams |
A structure used to represent various parameters for the IDrawable::Paint() method, like which image to draw, the current state of the window, etc. More... | |
class | RotateEffect |
class | ScrollbarDrawable |
The standard IDrawable for a scrollbar component. More... | |
class | SerializationService |
struct | SerializedProperty |
class | Serializer |
class | SimpleLayout |
class | SliderDrawable |
The standard IDrawable for a slider component. More... | |
class | SpinnerDrawable |
The standard IDrawable for a spinner component. More... | |
class | SporeAnimatedIconWin |
class | SporeStdDrawable |
class | SporeStdDrawableImageInfo |
A structure that represents an state of a SporeStdDrawable. More... | |
class | SporeTooltipWinProc |
class | StdDrawable |
The standard IDrawable for user interactive components. More... | |
struct | StructSerialization |
struct | TextChange |
This struct is used in kMsgTextChanged messages to represent the text in a ITextEdit. More... | |
class | TreeNode |
class | UILayout |
An object used to load and contain user interfaces. More... | |
class | UILayoutObjects |
class | UIRenderer |
class | UTFWinObject |
class | VariableWidthDrawable |
A drawable that completely fills the window of variable width with a graphic without a horizontal stretch. More... | |
class | WinButton |
class | Window |
class | WindowChildren |
class | WindowProcedures |
class | WinGrid |
class | WinTreeView |
Typedefs | |
typedef InteractiveWinProc | Effect |
typedef intrusive_list< intrusive_list_node > | IWindowList_t |
typedef function< bool(IWindow *, const Message &)> | HandleUILambda_t |
typedef bool(* | StructSerializerGetter) (Serializer &dst, void *arg_4, ComponentSerialization &serialization) |
typedef bool(* | Getter) (void *arg_0, void *arg_4, ComponentSerialization &serialization) |
typedef bool(* | Setter) (void *arg_0, void *arg_4, ComponentSerialization &serialization) |
typedef bool(* | SerializerGetter) (Serializer &dst, void *arg_4, ComponentSerialization &serialization) |
typedef SporeTooltipWinProc | Tooltip |
typedef VariableWidthDrawable | ProgressBarDrawable |
UTFWin is the user interface system in Spore.
The ModAPI defines some functionalities of this system; although a user interface can be created via coding, it is recommended to use the SPUI Editor in SporeModder instead. The ModAPI can be useful for programatically creating pieces of interfaces (like the editor categories) and listening to UI Events.
The basic unit in UTFWin is the IWindow, an abstract class that defines an area in the screen. All classes whose name start with 'Win...' are IWindows. The basic implementation is Window; there's another class called InteractiveWindow which is prepared to receive events.
Another key piece in UTFWin is IWinProc, 'window procedures'. Window procedures receive events (aka messages) received on windows, therefore they act as event listeners; they are the UI equivalent to IMessageListener.
For rendering windows, the IDrawable interface is used. Windows can only have one (or none) IDrawable object assigned; depending on the window implementation, the drawable might only be used to render certain parts.
typedef InteractiveWinProc UTFWin::Effect |
typedef bool(* UTFWin::Getter) (void *arg_0, void *arg_4, ComponentSerialization &serialization) |
typedef function<bool(IWindow*, const Message&)> UTFWin::HandleUILambda_t |
typedef intrusive_list<intrusive_list_node> UTFWin::IWindowList_t |
typedef bool(* UTFWin::SerializerGetter) (Serializer &dst, void *arg_4, ComponentSerialization &serialization) |
typedef bool(* UTFWin::Setter) (void *arg_0, void *arg_4, ComponentSerialization &serialization) |
typedef bool(* UTFWin::StructSerializerGetter) (Serializer &dst, void *arg_4, ComponentSerialization &serialization) |
typedef SporeTooltipWinProc UTFWin::Tooltip |
|
strong |
|
strong |
|
strong |
enum UTFWin::ButtonFlags |
Flags that can be set to an UTFWin::IButton.
Flags relted to the state of a button that can be set to an UTFWin::IButton.
Enumerator | |
---|---|
kBtnStateSelected |
|
strong |
|
strong |
enum UTFWin::EventFlags |
|
strong |
|
strong |
|
strong |
|
strong |
An enumeration used by ImageDrawable, that determine how the image is tiled.
|
strong |
enum UTFWin::LayoutAnchor |
enum UTFWin::MessageType |
Enumerator | |
---|---|
kMsgKeyDown | Occurs when a key is pressed while the component has focus. |
kMsgKeyUp | Occurs when a key is released while the component has focus. |
kMsgKeyDown2 | Occurs when a key is pressed while the component has focus. |
kMsgKeyUp2 | Occurs when a key is released while the component has focus. |
kMsgKeyPress | Occurs when a character. space or backspace key is pressed while the control has focus. |
kMsgMouseDown | Occurs when the mouse pointer is over the component and a mouse button is pressed. |
kMsgMouseUp | Occurs when the mouse pointer is over the component and a mouse button is released. |
kMsgMouseMove | Occurs when the mouse pointer is moved over the component. |
kMsgMouseWheel | Occurs when the mouse wheel moves while the component has focus. |
kMsgRefresh | Occurs when the mouse pointer leaves or enters the component. |
kMsgUpdate | Occurs every game loop, not all components receive this message. |
kMsgPaint | Occurs when the component is redrawn. |
kMsgWindowChanged | Occurs when something in the window (caption, flags or drawable) changes. |
kMsgLayout | Occurs every time the window area is changed, when IWindow::Revalidate() is called. |
kMsgElementAdded | Occurs every time a window or procedure is added. |
kMsgElementRemoved | Occurs every time a window is removed. |
kMsgStateChanged | Occurs when the state of a window changes. |
kMsgCollisionDetect | Occurs when a window is checked to see if it contains the mouse pointer. |
kMsgTransformed | Occurs when a transformation is applied to a window. |
kMsgButtonClick | Occurs when a standard button is clicked. |
kMsgButtonSelect | Occurs when a toggle or radio button is selected. |
kMsgMouseEnter | Occurs when the mouse pointer enters the component. |
kMsgMouseLeave | Occurs when the mouse pointer leaves the component. |
kMsgWinProcAdded | Occurs inmediately after a IWinProc is added to a component. This is called directly on the IWinProc. |
kMsgWinProcRemoved | Occurs inmediately after a IWinProc is removed from a component. This is called directly on the IWinProc. |
kMsgComponentActivated | |
kMsgTextChanged | Occurs when the text inside a ITextEdit is changed. |
|
strong |
|
strong |
enum UTFWin::RefreshType |
|
strong |
An enumeration used by certain drawables, that determines how to draw the images.
|
strong |
|
strong |
|
strong |
|
strong |
|
strong |
|
strong |
|
strong |
enum UTFWin::WindowFlags |
namespace UTFWin::Addresses | ( | UTFWin | ) |
namespace UTFWin::Addresses | ( | ITextEdit | ) |
namespace UTFWin::Addresses | ( | FadeEffect | ) |
namespace UTFWin::Addresses | ( | UIRenderer | ) |
namespace UTFWin::Addresses | ( | ProportionalLayout | ) |
namespace UTFWin::Addresses | ( | IWindowManager | ) |
namespace UTFWin::Addresses | ( | SimpleLayout | ) |
namespace UTFWin::Addresses | ( | Graphics2D | ) |
namespace UTFWin::Addresses | ( | InflateEffect | ) |
namespace UTFWin::Addresses | ( | PerspectiveEffect | ) |
namespace UTFWin::Addresses | ( | GlideEffect | ) |
namespace UTFWin::Addresses | ( | ModulateEffect | ) |
namespace UTFWin::Addresses | ( | SporeStdDrawable | ) |
namespace UTFWin::Addresses | ( | VariableWidthDrawable | ) |
namespace UTFWin::Addresses | ( | ScrollbarDrawable | ) |
namespace UTFWin::Addresses | ( | SpinnerDrawable | ) |
namespace UTFWin::Addresses | ( | SliderDrawable | ) |
namespace UTFWin::Addresses | ( | RotateEffect | ) |
namespace UTFWin::Addresses | ( | ButtonDrawableStandard | ) |
namespace UTFWin::Addresses | ( | CascadeEffect | ) |
namespace UTFWin::Addresses | ( | ButtonDrawableRadio | ) |
namespace UTFWin::Addresses | ( | ComboBoxDrawable | ) |
namespace UTFWin::Addresses | ( | TreeNode | ) |
namespace UTFWin::Addresses | ( | Image | ) |
namespace UTFWin::Addresses | ( | FrameDrawable | ) |
namespace UTFWin::Addresses | ( | UILayout | ) |
namespace UTFWin::Addresses | ( | SporeTooltipWinProc | ) |
namespace UTFWin::Addresses | ( | cSPUIMessageBox | ) |
namespace UTFWin::Addresses | ( | SporeStdDrawableImageInfo | ) |
namespace UTFWin::Addresses | ( | DialogDrawable | ) |
namespace UTFWin::Addresses | ( | StdDrawable | ) |
namespace UTFWin::Addresses | ( | BiStateEffect | ) |
namespace UTFWin::Addresses | ( | InteractiveWinProc | ) |
namespace UTFWin::Addresses | ( | ImageDrawable | ) |
namespace UTFWin::Addresses | ( | IImageDrawable | ) |
namespace UTFWin::Addresses | ( | Window | ) |
namespace UTFWin::Addresses | ( | IButton | ) |
|
inline |
Creates an instance of the Tooltip class that can be used to display the given text as a tooltip.
Tooltips are window procedures, so you can add it to a window with IWindow::AddWinProc().
pText | The text the tooltip displays. |
pDetailedText | [Optional] The detailed text showed when the mouse has been a while hovering. |
pLayoutName | [Optional] The name of the UI layout used in the tooltip. |
controlID | [Optional] The ControlID of the window in the layout that will display the text. |
detailControlID | [Optional] The ControlID of the window in the layout that will display the detailed text. |
ICoreAllocator* UTFWin::GetAllocator | ( | ) |
EventFlags UTFWin::GetEventFlags | ( | MessageType | type | ) |
|
inline |
Returns the active window manager.
Same as IWindowManager::Get().