xtd - Reference Guide  0.1.1
Modern c++17/20 framework to create console, GUI and unit test applications on Windows, macOS, Linux, iOS and android.
arrange_direction.h
Go to the documentation of this file.
1 #pragma once
5 #include <xtd/ustring.h>
6 
8 namespace xtd {
10  namespace forms {
19  enum class arrange_direction {
21  down = 0x0004,
23  left = 0x0000,
25  right = 0x0000,
27  up = 0x0004,
28  };
29 
31  inline arrange_direction& operator +=(arrange_direction& lhs, arrange_direction rhs) {lhs = static_cast<arrange_direction>(static_cast<long long>(lhs) + static_cast<long long>(rhs)); return lhs;}
32  inline arrange_direction& operator -=(arrange_direction& lhs, arrange_direction rhs) {lhs = static_cast<arrange_direction>(static_cast<long long>(lhs) - static_cast<long long>(rhs)); return lhs;}
33  inline arrange_direction& operator &=(arrange_direction& lhs, arrange_direction rhs) {lhs = static_cast<arrange_direction>(static_cast<long long>(lhs) & static_cast<long long>(rhs)); return lhs;}
34  inline arrange_direction& operator |=(arrange_direction& lhs, arrange_direction rhs) {lhs = static_cast<arrange_direction>(static_cast<long long>(lhs) | static_cast<long long>(rhs)); return lhs;}
35  inline arrange_direction& operator ^=(arrange_direction& lhs, arrange_direction rhs) {lhs = static_cast<arrange_direction>(static_cast<long long>(lhs) ^ static_cast<long long>(rhs)); return lhs;}
36  inline arrange_direction operator +(arrange_direction lhs, arrange_direction rhs) {return static_cast<arrange_direction>(static_cast<long long>(lhs) + static_cast<long long>(rhs));}
37  inline arrange_direction operator -(arrange_direction lhs, arrange_direction rhs) {return static_cast<arrange_direction>(static_cast<long long>(lhs) - static_cast<long long>(rhs));}
38  inline arrange_direction operator ~(arrange_direction rhs) {return static_cast<arrange_direction>(~static_cast<long long>(rhs));}
39  inline arrange_direction operator &(arrange_direction lhs, arrange_direction rhs) {return static_cast<arrange_direction>(static_cast<long long>(lhs) & static_cast<long long>(rhs));}
40  inline arrange_direction operator |(arrange_direction lhs, arrange_direction rhs) {return static_cast<arrange_direction>(static_cast<long long>(lhs) | static_cast<long long>(rhs));}
41  inline arrange_direction operator ^(arrange_direction lhs, arrange_direction rhs) {return static_cast<arrange_direction>(static_cast<long long>(lhs) ^ static_cast<long long>(rhs));}
42  inline std::ostream& operator<<(std::ostream& os, arrange_direction value) {return os << to_string(value, {{arrange_direction::down, "down"}, {arrange_direction::left, "left"}, {arrange_direction::right, "right"}, {arrange_direction::up, "up"}});}
43  inline std::wostream& operator<<(std::wostream& os, arrange_direction value) {return os << to_string(value, {{arrange_direction::down, L"down"}, {arrange_direction::left, L"left"}, {arrange_direction::right, L"right"}, {arrange_direction::up, L"up"}});}
45  }
46 }
std::string to_string(const value_t &value, const std::string &fmt, const std::locale &loc)
Convert a specified value into a string with specified format and locale.
Definition: to_string.h:37
arrange_direction
Specifies the direction the system uses to arrange minimized windows.
Definition: arrange_direction.h:19
@ up
Arranges vertically, from bottom to top.
@ down
Arranges vertically, from top to bottom.
@ right
Arranges horizontally, from right to left.
@ left
Arranges horizontally, from left to right.
The xtd::forms namespace contains classes for creating Windows-based applications that take full adva...
Definition: about_box.h:13
The xtd namespace contains all fundamental classes to access Hardware, Os, System,...
Definition: system_report.h:17
Contains xtd::ustring class.