Freeciv21
Develop your civilization from humble roots to a global empire
resizable_widget Class Reference

#include <decorations.h>

+ Inheritance diagram for resizable_widget:
+ Collaboration diagram for resizable_widget:

Signals

void resized (QRect rect)
 

Public Member Functions

void setResizable (Qt::Edges edges)
 Set resizable flags. More...
 
Qt::Edges getResizable () const
 Get resizable flags of wdiget. More...
 
- Public Member Functions inherited from fcwidget
 fcwidget (QWidget *parent=nullptr)
 Constructor. More...
 
virtual void update_menu ()=0
 

Protected Member Functions

void mousePressEvent (QMouseEvent *event) override
 Checks if info_tab can be moved. More...
 
void mouseMoveEvent (QMouseEvent *event) override
 Called when mouse moved (mouse track is enabled). More...
 
void mouseReleaseEvent (QMouseEvent *event) override
 Restores cursor when resizing is done. More...
 

Private Member Functions

Qt::Edges get_in_event_mouse (const QMouseEvent *event) const
 Get resizable_flag from mouse position. More...
 

Private Attributes

Qt::Edges eventFlags {}
 
Qt::Edges resizeFlags {}
 

Static Private Attributes

static constexpr int event_width = 25
 
static constexpr int margin_width = 3
 

Detailed Description

Definition at line 74 of file decorations.h.

Member Function Documentation

◆ get_in_event_mouse()

Qt::Edges resizable_widget::get_in_event_mouse ( const QMouseEvent *  event) const
private

Get resizable_flag from mouse position.

Definition at line 225 of file decorations.cpp.

Referenced by mouseMoveEvent(), and mousePressEvent().

◆ getResizable()

Qt::Edges resizable_widget::getResizable ( ) const

Get resizable flags of wdiget.

Definition at line 204 of file decorations.cpp.

◆ mouseMoveEvent()

void resizable_widget::mouseMoveEvent ( QMouseEvent *  event)
overrideprotected

Called when mouse moved (mouse track is enabled).

Used for resizing resizable_widget.

Definition at line 267 of file decorations.cpp.

◆ mousePressEvent()

void resizable_widget::mousePressEvent ( QMouseEvent *  event)
overrideprotected

Checks if info_tab can be moved.

Definition at line 209 of file decorations.cpp.

◆ mouseReleaseEvent()

void resizable_widget::mouseReleaseEvent ( QMouseEvent *  event)
overrideprotected

Restores cursor when resizing is done.

Definition at line 249 of file decorations.cpp.

◆ resized

void resizable_widget::resized ( QRect  rect)
signal

Referenced by mouseReleaseEvent().

◆ setResizable()

void resizable_widget::setResizable ( Qt::Edges  edges)

Member Data Documentation

◆ event_width

constexpr int resizable_widget::event_width = 25
staticconstexprprivate

Definition at line 77 of file decorations.h.

Referenced by get_in_event_mouse().

◆ eventFlags

Qt::Edges resizable_widget::eventFlags {}
private

Definition at line 93 of file decorations.h.

Referenced by mouseMoveEvent(), mousePressEvent(), and mouseReleaseEvent().

◆ margin_width

constexpr int resizable_widget::margin_width = 3
staticconstexprprivate

Definition at line 78 of file decorations.h.

Referenced by setResizable().

◆ resizeFlags

Qt::Edges resizable_widget::resizeFlags {}
private

Definition at line 94 of file decorations.h.

Referenced by getResizable(), mouseMoveEvent(), mousePressEvent(), and setResizable().