46 #if !defined (USE_FINAL_H) && !defined (COMPILE_FINAL_CUT)    47   #error "Only <final/final.h> can be included directly."    52 #include "final/fwidget.h"    53 #include "final/fwidgetcolors.h"    66     using FWidget::setEnable;
    67     using FWidget::delAccelerator;
    80     ~
FLabel() noexcept 
override;
    90     template <
typename typeT>
    91     auto operator << (
const typeT&) -> 
FLabel&;
    92     auto operator << (UniChar) -> 
FLabel&;
    93     auto operator << (
const wchar_t) -> 
FLabel&;
   102     auto getClassName() 
const -> 
FString override;
   103     auto getAccelWidget() -> 
FWidget*;
   104     auto getAlignment() 
const noexcept -> Align;
   108     void setAccelWidget (
FWidget* = 
nullptr);
   109     void setAlignment (Align) noexcept;
   110     void setEmphasis (
bool = 
true) noexcept;
   111     void unsetEmphasis() noexcept;
   112     void resetColors() 
override;
   113     void setReverseMode (
bool = 
true) noexcept;
   114     void unsetReverseMode() noexcept;
   115     void setEnable (
bool = 
true) 
override;
   116     void setNumber (uLong);
   117     void setNumber (
long);
   118     void setNumber (
float, 
int = FLT_DIG);
   119     void setNumber (
double, 
int = DBL_DIG);
   120     void setNumber (lDouble, 
int = LDBL_DIG);
   124     auto hasEmphasis() 
const noexcept -> bool;
   125     auto hasReverseMode() 
const noexcept -> bool;
   128     void hide() 
override;
   136     void cb_accelWidgetDestroyed();
   140     static constexpr 
auto NOT_SET = 
static_cast<std::size_t
>(-1);
   144     void setHotkeyAccelerator();
   145     auto getAlignOffset (
const std::size_t) 
const -> std::size_t;
   146     void draw() 
override;
   147     void drawMultiLine();
   148     void drawSingleLine();
   149     void printHotkeyChar (
wchar_t);
   150     void printLineContent (
FString&, std::size_t);
   154     FStringList  multiline_text{};
   156     FWidget*     accel_widget{
nullptr};
   157     Align        alignment{Align::Left};
   158     std::size_t  align_offset{0};
   159     std::size_t  hotkeypos{NOT_SET};
   160     std::size_t  column_width{0};
   161     FColor       emphasis_color{FColor::Default};
   162     FColor       ellipsis_color{FColor::Default};
   163     bool         multiline{
false};
   164     bool         emphasis{
false};
   165     bool         reverse_mode{
false};
   170 template <
typename typeT>
   171 inline auto FLabel::operator << (
const typeT& s) -> 
FLabel&
   180 inline auto FLabel::getClassName() 
const -> 
FString   184 inline auto FLabel::getAccelWidget () -> 
FWidget*
   185 { 
return accel_widget; }
   188 inline auto FLabel::getAlignment() 
const noexcept -> Align
   189 { 
return alignment; }
   192 inline auto FLabel::getText() & -> 
FString&
   196 inline void FLabel::setEmphasis (
bool enable) noexcept
   197 { emphasis = enable; }
   200 inline void FLabel::unsetEmphasis() noexcept
   201 { setEmphasis(
false); }
   204 inline void FLabel::setReverseMode (
bool enable) noexcept
   205 { reverse_mode = enable; }
   208 inline void FLabel::unsetReverseMode() noexcept
   209 { setReverseMode(
false); }
   212 inline void FLabel::setNumber (uLong num)
   213 { setText(
FString().setNumber(num)); }
   216 inline void FLabel::setNumber (
long num)
   217 { setText(
FString().setNumber(num)); }
   220 inline void FLabel::setNumber (
float num, 
int precision)
   221 { setText(
FString().setNumber(num, precision)); }
   224 inline void FLabel::setNumber (
double num, 
int precision)
   225 { setText(
FString().setNumber(num, precision)); }
   228 inline void FLabel::setNumber (lDouble num, 
int precision)
   229 { setText(
FString().setNumber(num, precision)); }
   232 inline auto FLabel::hasEmphasis() 
const noexcept -> 
bool   236 inline auto FLabel::hasReverseMode() 
const noexcept -> 
bool   237 { 
return reverse_mode; }
   240 inline void FLabel::clear()
 
Definition: class_template.cpp:25