HikoGUI
A low latency retained GUI
Loading...
Searching...
No Matches
Data Structures | Namespaces | Enumerations | Functions
alignment.hpp File Reference

types and utilities for alignment. More...

#include "../utility/utility.hpp"
#include "../macros.hpp"
#include <optional>
#include <algorithm>
#include <exception>
#include <compare>

Go to the source code of this file.

Data Structures

class  hi::v1::alignment
 Horizontal/Vertical alignment combination. More...
 

Namespaces

namespace  hi
 The HikoGUI namespace.
 
namespace  hi::v1
 The HikoGUI API version 1.
 

Enumerations

enum class  hi::v1::vertical_alignment : uint8_t { hi::v1::vertical_alignment::none = 0 , hi::v1::vertical_alignment::top = 1 , hi::v1::vertical_alignment::middle = 2 , hi::v1::vertical_alignment::bottom = 3 }
 Vertical alignment. More...
 
enum class  hi::v1::horizontal_alignment : uint8_t {
  hi::v1::horizontal_alignment::none = 0 , hi::v1::horizontal_alignment::flush = 1 , hi::v1::horizontal_alignment::left = 2 , hi::v1::horizontal_alignment::center = 3 ,
  hi::v1::horizontal_alignment::justified = 4 , hi::v1::horizontal_alignment::right = 5
}
 Horizontal alignment. More...
 

Functions

 hi_export_module (hikogui.geometry :alignment)
 
constexpr std::optional< float > hi::v1::make_guideline (vertical_alignment alignment, float bottom, float top, float guideline_width)
 Create a guideline between two points.
 
constexpr std::optional< float > hi::v1::make_guideline (horizontal_alignment alignment, float left, float right, float guideline_width=0.0f)
 Create a guideline between two points.
 
constexpr horizontal_alignment hi::v1::mirror (horizontal_alignment const &rhs) noexcept
 Mirror the horizontal alignment.
 
constexpr horizontal_alignment hi::v1::mirror (horizontal_alignment const &rhs, bool left_to_right) noexcept
 Mirror the horizontal alignment.
 
constexpr horizontal_alignment hi::v1::resolve (horizontal_alignment const &rhs, bool left_to_right) noexcept
 
constexpr horizontal_alignment hi::v1::resolve_mirror (horizontal_alignment const &rhs, bool left_to_right) noexcept
 
constexpr alignment hi::v1::operator| (horizontal_alignment lhs, vertical_alignment rhs) noexcept
 Combine vertical and horizontal alignment.
 
constexpr alignment hi::v1::operator| (vertical_alignment lhs, horizontal_alignment rhs) noexcept
 Combine vertical and horizontal alignment.
 

Detailed Description

types and utilities for alignment.