xtd 0.2.0
Loading...
Searching...
No Matches
text_format_flags.h
Go to the documentation of this file.
1
4#pragma once
5#include <xtd/enum>
6
8namespace xtd {
10 namespace forms {
22 enum class text_format_flags {
24 default_format = 0b0,
28 left = 0b0,
30 top = 0b0,
34 right = 0b10,
36 vertical_center = 0b100,
38 bottom = 0b1000,
40 word_break = 0b10000,
42 single_line = 0b100000,
44 expand_tabs = 0b1000000,
46 no_clipping = 0b100000000,
48 external_leading = 0b1000000000,
50 no_prefix = 0b10000000000,
52 internal = 0b1000000000000,
54 text_box_control = 0b10000000000000,
56 path_ellipsis = 0b100000000000000,
58 end_ellipse = 0b1000000000000000,
60 modify_string = 0b10000000000000000,
62 right_to_left = 0b100000000000000000,
64 word_ellipsis = 0b1000000000000000000,
66 no_full_width_characterB_break = 0b10000000000000000000,
68 hide_prefix = 0b100000000000000000000,
70 prefix_only = 0b1000000000000000000000,
72 preserve_graphics_clipping = 0b1000000000000000000000000,
74 preserve_graphics_translate_transform = 0b10000000000000000000000000,
76 no_padding = 0b10000000000000000000000000000,
78 left_and_right_padding = 0b100000000000000000000000000000,
79 };
80 }
81}
82
84flags_attribute_(xtd::forms, text_format_flags);
85
87 explicit operator auto() const noexcept {return xtd::enum_collection<xtd::forms::text_format_flags> {{xtd::forms::text_format_flags::default_format, "default_format"}, {xtd::forms::text_format_flags::glyph_overhang_padding, "glyph_overhang_padding"}, {xtd::forms::text_format_flags::left, "left"}, {xtd::forms::text_format_flags::top, "top"}, {xtd::forms::text_format_flags::horizontal_center, "horizontal_center"}, {xtd::forms::text_format_flags::right, "right"}, {xtd::forms::text_format_flags::vertical_center, "vertical_center"}, {xtd::forms::text_format_flags::bottom, "bottom"}, {xtd::forms::text_format_flags::word_break, "word_break"}, {xtd::forms::text_format_flags::single_line, "single_line"}, {xtd::forms::text_format_flags::expand_tabs, "expand_tabs"}, {xtd::forms::text_format_flags::no_clipping, "no_clipping"}, {xtd::forms::text_format_flags::external_leading, "external_leading"}, {xtd::forms::text_format_flags::no_prefix, "no_prefix"}, {xtd::forms::text_format_flags::internal, "internal"}, {xtd::forms::text_format_flags::text_box_control, "text_box_control"}, {xtd::forms::text_format_flags::path_ellipsis, "path_ellipsis"}, {xtd::forms::text_format_flags::end_ellipse, "end_ellipse"}, {xtd::forms::text_format_flags::modify_string, "modify_string"}, {xtd::forms::text_format_flags::right_to_left, "right_to_left"}, {xtd::forms::text_format_flags::word_ellipsis, "word_ellipsis"}, {xtd::forms::text_format_flags::no_full_width_characterB_break, "no_full_width_characterB_break"}, {xtd::forms::text_format_flags::hide_prefix, "hide_prefix"}, {xtd::forms::text_format_flags::prefix_only, "prefix_only"}, {xtd::forms::text_format_flags::preserve_graphics_clipping, "preserve_graphics_clipping"}, {xtd::forms::text_format_flags::preserve_graphics_translate_transform, "preserve_graphics_translate_transform"}, {xtd::forms::text_format_flags::no_padding, "no_padding"}, {xtd::forms::text_format_flags::left_and_right_padding, "left_and_right_padding"}};}
88};
#define flags_attribute_(namespace_name, enum_type)
Provides the set attribute struct for enumerations helper.
Definition flags_attribute.h:34
std::vector< xtd::collections::generic::key_value_pair< enum_t, xtd::string > > enum_collection
Represents a pair of an enum_t value and a string of an enum of type enum_t.
Definition enum_collection.h:22
text_format_flags
Specifies the display and layout information for text strings.
Definition text_format_flags.h:22
right_to_left
Specifies a value indicating whether the text appears from right to left, such as when using Hebrew o...
Definition right_to_left.h:24
@ modify_string
Has no effect on the drawn text or text measurements. When used to draw text by TextRenderer,...
@ vertical_center
Centers the text vertically, within the bounding rectangle.
@ expand_tabs
Expands tab characters. The default number of characters per tab is eight. The word_ellipsis,...
@ default_format
Applies the default formatting, which is left-aligned.
@ preserve_graphics_translate_transform
Preserves the transformation specified by a graphics. Applies only to methods receiving an ideviceCon...
@ bottom
Aligns the text on the bottom of the bounding rectangle. Applied only when the text is a single line....
@ no_prefix
Turns off processing of prefix characters. Typically, the ampersand (&) mnemonic-prefix character is ...
@ right_to_left
Displays the text from right to left.
@ right
Aligns the text on the right side of the clipping area.
@ left
Aligns the text on the left side of the clipping area. This is the default.
@ word_break
Breaks the text at the end of a word.
@ external_leading
Includes the font external leading in line height. Typically, external leading is not included in the...
@ preserve_graphics_clipping
Preserves the clipping specified by a graphics object. Applies only to methods receiving an idevice_c...
@ word_ellipsis
Trims the line to the nearest word and an ellipsis is placed at the end of a trimmed line....
@ glyph_overhang_padding
Adds padding to the bounding rectangle to accommodate overhanging glyphs. This is the default.
@ top
Aligns the text on the top of the bounding rectangle. This is the default.
@ end_ellipse
Removes the end of trimmed lines, and replaces them with an ellipsis. When used to draw text by text_...
@ hide_prefix
Ignores the ampersand (&) prefix character in the text, so that the letter that follows won't be unde...
@ path_ellipsis
Removes the center of trimmed lines and replaces it with an ellipsis. When used to draw text by text_...
@ text_box_control
Specifies the text should be formatted for display on a TextBox control.
@ left_and_right_padding
Adds padding to both sides of the bounding rectangle.
@ single_line
Displays the text in a single line.
@ internal
Uses the system font to calculate text metrics.
@ no_clipping
Allows the overhanging parts of glyphs and unwrapped text reaching outside the formatting rectangle t...
@ no_padding
Does not add padding to the bounding rectangle.
@ horizontal_center
Centers the text horizontally within the bounding rectangle.
@ no_full_width_characterB_break
A legacy value that has no effect. It prevents a line break at a double-wide character string,...
@ prefix_only
Draws only an underline at the position of the character following the ampersand (&) prefix character...
@ bottom
Bind control edges to the bottom of its container.
@ right
Bind control edges to the right of its container.
@ left
Bind control edges to the left of its container.
@ top
Bind control edges to the top of its container.
The xtd::forms namespace contains classes for creating Windows-based applications that take full adva...
Definition xtd_about_box.h:12
The xtd namespace contains all fundamental classes to access Hardware, Os, System,...
Definition xtd_about_box.h:10
Provides the registration struct for enumerations.
Definition enum_register.h:38