FreeRDP
All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Modules Pages
SdlButton Class Reference
Inheritance diagram for SdlButton:
Collaboration diagram for SdlButton:

Public Member Functions

 SdlButton (SDL_Renderer *renderer, std::string label, int id, SDL_Rect rect)
 
 SdlButton (const SdlButton &other)=delete
 
 SdlButton (SdlButton &&other) noexcept
 
SdlButtonoperator= (const SdlButton &other)=delete
 
SdlButtonoperator= (SdlButton &&other)=delete
 
bool highlight (SDL_Renderer *renderer)
 
bool mouseover (SDL_Renderer *renderer)
 
bool update (SDL_Renderer *renderer)
 
int id () const
 
 SdlButton (SDL_Renderer *renderer, std::string label, int id, const SDL_FRect &rect)
 
 SdlButton (SdlButton &&other) noexcept
 
 SdlButton (const SdlButton &other)=delete
 
SdlButtonoperator= (const SdlButton &other)=delete
 
SdlButtonoperator= (SdlButton &&other)=delete
 
bool highlight (SDL_Renderer *renderer)
 
bool mouseover (SDL_Renderer *renderer)
 
bool update (SDL_Renderer *renderer)
 
int id () const
 
- Public Member Functions inherited from SdlWidget
 SdlWidget (SDL_Renderer *renderer, SDL_Rect rect, bool input)
 
 SdlWidget (SdlWidget &&other) noexcept
 
bool fill (SDL_Renderer *renderer, SDL_Color color)
 
bool fill (SDL_Renderer *renderer, const std::vector< SDL_Color > &colors)
 
bool update_text (SDL_Renderer *renderer, const std::string &text, SDL_Color fgcolor)
 
bool update_text (SDL_Renderer *renderer, const std::string &text, SDL_Color fgcolor, SDL_Color bgcolor)
 
bool wrap () const
 
bool set_wrap (bool wrap=true, size_t width=0)
 
const SDL_Rect & rect () const
 
 SdlWidget (const SdlWidget &other)=delete
 
SdlWidgetoperator= (const SdlWidget &other)=delete
 
SdlWidgetoperator= (SdlWidget &&other)=delete
 
 SdlWidget (SDL_Renderer *renderer, const SDL_FRect &rect, bool input)
 
 SdlWidget (SDL_Renderer *renderer, const SDL_FRect &rect, SDL_IOStream *ops)
 
 SdlWidget (const SdlWidget &other)=delete
 
 SdlWidget (SdlWidget &&other) noexcept
 
SdlWidgetoperator= (const SdlWidget &other)=delete
 
SdlWidgetoperator= (SdlWidget &&other)=delete
 
bool fill (SDL_Renderer *renderer, SDL_Color color)
 
bool fill (SDL_Renderer *renderer, const std::vector< SDL_Color > &colors)
 
bool update_text (SDL_Renderer *renderer, const std::string &text, SDL_Color fgcolor)
 
bool update_text (SDL_Renderer *renderer, const std::string &text, SDL_Color fgcolor, SDL_Color bgcolor)
 
bool wrap () const
 
bool set_wrap (bool wrap=true, size_t width=0)
 
const SDL_FRect & rect () const
 

Additional Inherited Members

- Static Public Member Functions inherited from SdlWidget
static bool error_ex (Sint32 res, const char *what, const char *file, size_t line, const char *fkt)
 
static bool error_ex (bool success, const char *what, const char *file, size_t line, const char *fkt)
 

Detailed Description

Definition at line 7 of file SDL2/dialogs/sdl_button.hpp.

Constructor & Destructor Documentation

◆ SdlButton() [1/2]

SdlButton::SdlButton ( SDL_Renderer *  renderer,
std::string  label,
int  id,
SDL_Rect  rect 
)

Definition at line 31 of file SDL2/dialogs/sdl_button.cpp.

32 : SdlWidget(renderer, rect, false), _name(std::move(label)), _id(id)
33{
34 assert(renderer);
35
36 update_text(renderer, _name, buttonfontcolor, buttonbackgroundcolor);
37}

◆ SdlButton() [2/2]

SdlButton::SdlButton ( SDL_Renderer *  renderer,
std::string  label,
int  id,
const SDL_FRect &  rect 
)

Definition at line 31 of file SDL3/dialogs/sdl_button.cpp.

32 : SdlWidget(renderer, rect, false), _name(std::move(label)), _id(id)
33{
34 assert(renderer);
35
36 update_text(renderer, _name, buttonfontcolor, buttonbackgroundcolor);
37}

Member Function Documentation

◆ highlight()

bool SdlButton::highlight ( SDL_Renderer *  renderer)

Definition at line 43 of file SDL2/dialogs/sdl_button.cpp.

44{
45 assert(renderer);
46
47 std::vector<SDL_Color> colors = { buttonbackgroundcolor, buttonhighlightcolor };
48 if (!fill(renderer, colors))
49 return false;
50 return update_text(renderer, _name, buttonfontcolor);
51}

◆ id()

int SdlButton::id ( ) const

Definition at line 68 of file SDL2/dialogs/sdl_button.cpp.

69{
70 return _id;
71}

◆ mouseover()

bool SdlButton::mouseover ( SDL_Renderer *  renderer)

Definition at line 53 of file SDL2/dialogs/sdl_button.cpp.

54{
55 std::vector<SDL_Color> colors = { buttonbackgroundcolor, buttonmouseovercolor };
56 if (!fill(renderer, colors))
57 return false;
58 return update_text(renderer, _name, buttonfontcolor);
59}

◆ update()

bool SdlButton::update ( SDL_Renderer *  renderer)

Definition at line 61 of file SDL2/dialogs/sdl_button.cpp.

62{
63 assert(renderer);
64
65 return update_text(renderer, _name, buttonfontcolor, buttonbackgroundcolor);
66}

The documentation for this class was generated from the following files: