Layouting Namespace
The Layouting namespace contains classes and functions to conveniently create layouts in code. More...
| Header: | #include <Layouting> |
Classes
| class | Align |
| class | Canvas |
| class | CanvasWidget |
| class | Column |
| class | CompletingTextEdit |
| class | Else |
| class | Flow |
| class | Form |
| class | Grid |
| class | GridCell |
| class | Group |
| class | If |
| class | Label |
| class | Layout |
| class | LayoutItem |
| class | LineEdit |
| class | MarkdownBrowser |
| class | PushButton |
| class | Row |
| class | ScrollArea |
| class | Space |
| class | Span |
| class | SpanAll |
| class | SpinBox |
| class | Spinner |
| class | Splitter |
| class | Stack |
| class | Stretch |
| class | Tab |
| class | TabWidget |
| class | TextEdit |
| class | Then |
| class | ToolBar |
| class | ToolButton |
| class | Widget |
Functions
| void | br(Layouting::Layout *layout) |
| QWidget * | createHr(QWidget *parent = nullptr) |
| void | destroyLayout(QLayout *layout) |
| void | empty(Layouting::Layout *layout) |
| void | hr(Layouting::Layout *layout) |
| void | ignoreDirtyHooks(Layouting::Widget *widget) |
| void | noMargin(Layouting::Layout *layout) |
| void | normalMargin(Layouting::Layout *layout) |
| Layouting::LayoutModifier | spacing(int space) |
| void | st(Layouting::Layout *layout) |
| Layouting::LayoutModifier | stretch(int index, int stretch) |
| void | tight(Layouting::Layout *layout) |
| void | withFormAlignment(Layouting::Layout *layout) |
Detailed Description
Classes in the namespace help to create QLayout or QWidget derived classes. Instances should be used locally within a function and never stored.
See also Layouting::Widget and Layouting::Layout.
Classes
class Align
Sets a Qt::Alignment on all items produced by the wrapped builder. More...
class Canvas
Provides a custom-painted widget surface for use in a Layouting builder. More...
class CanvasWidget
A QWidget subclass that delegates painting to a user-supplied function. More...
class Column
Arranges items vertically (QVBoxLayout). More...
class CompletingTextEdit
Wraps Utils::CompletingTextEdit for use in a Layouting builder. More...
class Else
Holds the list of items to include when the If condition is false. More...
class Flow
Arranges items in a left-to-right flow that wraps to a new line when the available width is exceeded. More...
class Form
Arranges label-field pairs in a two-column form layout (QFormLayout). More...
class Grid
Arranges items in a two-dimensional grid (QGridLayout). More...
class GridCell
Groups multiple items into a single grid cell without advancing the column counter. More...
class Group
Wraps QGroupBox for use in a Layouting builder. More...
class If
Conditionally includes layout items based on a boolean condition. More...
class Label
Wraps QLabel for use in a Layouting builder. More...
class Layout
Base class for layout builder classes. More...
class LayoutItem
class LineEdit
Wraps Utils::FancyLineEdit for use in a Layouting builder. More...
class MarkdownBrowser
Wraps Utils::MarkdownBrowser for use in a Layouting builder. More...
class PushButton
Wraps QPushButton for use in a Layouting builder. More...
class Row
Arranges items horizontally (QHBoxLayout). More...
class ScrollArea
Wraps QScrollArea for use in a Layouting builder. More...
class Space
The Space class represents some empty space in a layout. More...
class Span
Sets a column and/or row span on a single item in a Grid layout. More...
class SpanAll
Sets a column and/or row span on all items added by a nested builder. More...
class SpinBox
Wraps QSpinBox for use in a Layouting builder. More...
class Spinner
Wraps SpinnerSolution::SpinnerWidget for use in a Layouting builder. More...
class Splitter
Wraps QSplitter for use in a Layouting builder. More...
class Stack
Wraps QStackedWidget for use in a Layouting builder. More...
class Stretch
The Stretch class represents some stretch in a layout. More...
class Tab
Represents a single tab for use inside a TabWidget builder. More...
class TabWidget
Wraps QTabWidget for use in a Layouting builder. More...
class TextEdit
Wraps QTextEdit for use in a Layouting builder. More...
class Then
Holds the list of items to include when the If condition is true. More...
class ToolBar
Wraps QToolBar for use in a Layouting builder. More...
class ToolButton
Wraps QToolButton for use in a Layouting builder. More...
class Widget
Base class for widget builder classes. More...
Function Documentation
void Layouting::br(Layouting::Layout *layout)
Starts a new row in layout by calling flush(). Use in Grid and Form initializer lists to end the current row.
See also Layout::flush() and Layout::addRow().
QWidget *Layouting::createHr(QWidget *parent = nullptr)
Creates and returns a horizontal rule widget (a sunken QFrame with a HLine shape). The optional parent is passed to the QFrame constructor.
See also Layouting::hr().
void Layouting::destroyLayout(QLayout *layout)
Recursively destroys layout and all its child items and nested layouts. Widgets owned by the layout items are also deleted.
void Layouting::empty(Layouting::Layout *layout)
Adds an empty (no-op) placeholder item to layout. Useful as a filler in Grid or Form rows where a cell should be left blank.
void Layouting::hr(Layouting::Layout *layout)
Adds a horizontal rule (a sunken QFrame) to layout.
See also Layouting::createHr().
void Layouting::ignoreDirtyHooks(Layouting::Widget *widget)
Marks widget so that changes to it do not trigger dirty-state notifications. Useful for widgets whose value changes should not mark a settings page or document as modified.
void Layouting::noMargin(Layouting::Layout *layout)
Sets all content margins of layout to zero.
See also Layout::setNoMargins(), Layouting::normalMargin(), and Layouting::tight().
void Layouting::normalMargin(Layouting::Layout *layout)
Sets all content margins of layout to 9 pixels.
See also Layout::setNormalMargins() and Layouting::noMargin().
Layouting::LayoutModifier Layouting::spacing(int space)
Returns a LayoutModifier that sets the spacing of a layout to space pixels.
See also Layouting::stretch().
void Layouting::st(Layouting::Layout *layout)
Adds a stretch factor of 1 to layout. Only effective in box (Column/Row) layouts.
See also Layouting::Stretch and Layouting::spacing().
Layouting::LayoutModifier Layouting::stretch(int index, int stretch)
Returns a LayoutModifier that sets the stretch factor of item at index to stretch.
See also Layouting::spacing().
void Layouting::tight(Layouting::Layout *layout)
Sets both the content margins and the spacing of layout to zero. Equivalent to calling noMargin() followed by spacing(0).
See also Layouting::noMargin() and Layouting::spacing().
void Layouting::withFormAlignment(Layouting::Layout *layout)
Intended to enable form-style label alignment for layout. Not yet implemented.