28 #include "BufferRef.h" 34 #include "Portability.h" 35 #include "StringRef.h" 40 #ifndef DOXYGEN_SHOULD_SKIP_THIS 415 static constexpr
unsigned DefaultCharacterSize = 13;
423 UI(
Font& font,
unsigned characterSize = DefaultCharacterSize);
433 UI(
const UI&) =
delete;
438 UI& operator=(
const UI&) =
delete;
443 UI(
UI&& other) noexcept;
448 UI& operator=(
UI&& other) noexcept;
457 void processEvent(
const Event& event);
494 RectF windowGetBounds();
513 void layoutRowDynamic(
float height,
int cols);
524 void layoutRowStatic(
float height,
int itemWidth,
int cols);
535 void layoutRowBegin(
UILayout format,
float height,
int cols);
544 void layoutRowPush(
float width);
569 void separator(
float height);
625 void groupScrolledEnd();
714 void image(
const Texture& texture,
const RectF& textureRect);
748 bool buttonPopBehavior();
768 bool buttonColor(
const Color4f& color);
810 bool checkbox(
StringRef title,
bool& active);
822 bool checkboxFlags(
StringRef title,
unsigned& flags,
unsigned value);
842 bool option(
StringRef title,
bool active);
853 bool radio(
StringRef title,
bool& active);
896 bool sliderFloat(
float min,
float& val,
float max,
float step);
909 bool sliderInt(
int min,
int& val,
int max,
int step);
945 bool colorPicker(
Color4f& color);
968 void propertyInt(
const std::string& name,
int min,
int& val,
int max,
int step,
float incPerPixel);
982 void propertyFloat(
const std::string& name,
float min,
float& val,
float max,
float step,
float incPerPixel);
996 void propertyDouble(
const std::string& name,
double min,
double& val,
double max,
double step,
float incPerPixel);
1026 bool fileSelector(
UIBrowser& browser,
const std::string& title,
const RectF& bounds);
1083 void combobox(
const std::vector<std::string>& items,
int& selected,
int itemHeight,
Vector2f size);
1096 void comboboxSeparator(
const std::string& itemsSeparatedBySeparator,
char separator,
int& selected,
int itemHeight,
Vector2f size);
1221 void contextualClose();
1228 void contextualEnd();
1244 void tooltip(
const std::string& text);
1254 bool tooltipBegin(
float width);
1277 void menubarBegin();
1308 bool menuBeginSymbol(
const std::string&
id,
UISymbol symbol,
Vector2f size);
1370 RectF getWidgetBounds();
1379 bool isWidgetHovered();
1386 void spacing(
int cols);
1420 void setState(State state);
1425 std::unique_ptr<UIImpl> m_impl;
1429 #ifndef DOXYGEN_SHOULD_SKIP_THIS 1433 #ifndef DOXYGEN_SHOULD_SKIP_THIS 1435 struct EnableBitmaskOperators<
UIWindow> {
1436 static constexpr
bool value =
true;
1440 struct EnableBitmaskOperators<
UIEdit> {
1441 static constexpr
bool value =
true;
1446 static constexpr
bool value =
true;
The window's scrollbar can hide automatically.
The window can be moved by the user.
The row has a dynamic layout.
The tree is a node, generally an internal node of the tree.
The row has a static layout.
UILayout
Layout property for rows.
Definition: UI.h:87
Edit widget is not active and is not being modified.
The button is active once.
Edit widget is currently being modified.
UIEditEvent
Properties for edit events.
Definition: UI.h:200
Base class for all render targets (window, texture, ...)
Definition: RenderTarget.h:66
UIPopup
Type of popup.
Definition: UI.h:245
Define the states used for drawing to a RenderTarget.
Definition: RenderStates.h:82
Bitfield relying on an enumeration.
Definition: Flags.h:68
UIEditFilter
Filters for edit.
Definition: UI.h:220
UIProgress
State of the progress bar.
Definition: UI.h:132
static const UIEditFlags Field
Definition: UI.h:191
The button is active as long as it is pressed.
UIPredefinedStyle
A predefined style.
Definition: UI.h:254
Context for an immediate mode graphical interface.
Definition: UI.h:410
Path currentPath
The current path for searching.
Definition: UI.h:237
The window is scalable by the user.
A reference to a modifiable buffer and its size.
Definition: BufferRef.h:43
Abstract base class for objects that can be drawn to a render window.
Definition: Drawable.h:79
Edit widget has received an enter and lost focus.
UIAlignment
The alignment of the text.
Definition: UI.h:107
A texture for colored images.
Definition: Texture.h:339
static const UIEditFlags Box
Definition: UI.h:192
UIButtonBehavior
Behavior for buttons.
Definition: UI.h:123
Vector< unsigned, 2 > Vector2u
A unsigned vector with 2 components.
Definition: Vector.h:1179
Data for file selector.
Definition: UI.h:236
The window can be closed with an icon in the header.
gf::Clipboard provides an interface for getting and setting the contents of the system clipboard...
Definition: Clipboard.h:67
The window can not scale, move or get focus.
The namespace for gf classes.
Definition: Action.h:34
A blue and light gray style.
A constant reference to an array and its size.
Definition: ArrayRef.h:42
A character font.
Definition: Font.h:130
The progress bar can be modified.
static const UIEditFlags Simple
Definition: UI.h:190
static const UIEditFlags Editor
Definition: UI.h:193
UICollapse
Collapse property of a tree.
Definition: UI.h:78
UIEdit
Properties for edit widgets.
Definition: UI.h:161
Edit widget went from state inactive to state active.
boost::filesystem::path Path
A path in the filesystem.
Definition: Path.h:41
The progress bar is fixed.
Predefined flags for edit.
Definition: UI.h:189
A constant reference to a string and its size.
Definition: StringRef.h:41
UISymbol
A representative symbol.
Definition: UI.h:141
The window is in the background.
The window has no scrollbar.
UITree
The type of tree.
Definition: UI.h:96
The window's scaler is on the left.
Defines a system event and its parameters.
Definition: Event.h:118
UIWindow
Properties for windows and window-like elements.
Definition: UI.h:52
A dark gray and dark blue style.
The window can be minimized with an icon in the header.
Edit widget went from state active to state inactive.
Path selectedPath
The selected path.
Definition: UI.h:238
The window has a title in the header.