Graphic Calculator: FIDocalcus
Проект трёх первокурсников (по инженерному практикуму в первом семестре) по созданию графического калькулятора на FLTK C++
Loading...
Searching...
No Matches
Graph_lib::Widget Class Referenceabstract

Абстрактный объект взаимодействия с пользователем More...

#include <Widgets.h>

Inheritance diagram for Graph_lib::Widget:
Collaboration diagram for Graph_lib::Widget:

Public Member Functions

 Widget ()=default
 
 Widget (const Widget &)=delete
 
 Widget (Point _loc, pix_amount _width, pix_amount _height, const std::string &_label, Callback _cb)
 
virtual ~Widget ()=default
 
virtual void attach (Window &)=0
 
virtual void hide ()
 
virtual void move (int dx, int dy)
 
Widgetoperator= (const Widget &)=delete
 
virtual void show ()
 
Windowwindow ()
 

Protected Attributes

Callback cb
 
pix_amount height
 
std::string label
 
Point loc
 
Windowown
 Окно, которому принадлежит виджет
 
Fl_Widgetptr_wid
 Указатель на FLTK виджет
 
pix_amount width
 

Detailed Description

Абстрактный объект взаимодействия с пользователем

Виджет — это дескриптор Fl_widget, но не Fl_widget, мы стараемся держать классы интерфейса на расстоянии от FLTK)

Constructor & Destructor Documentation

◆ Widget() [1/3]

Graph_lib::Widget::Widget ( )
default

◆ Widget() [2/3]

Graph_lib::Widget::Widget ( Point _loc,
pix_amount _width,
pix_amount _height,
const std::string & _label,
Callback _cb )
inline
31 : loc{_loc}, width{_width}, height{_height}, label{_label}, cb{_cb} {}
std::string label
Definition Widgets.h:66
pix_amount width
Definition Widgets.h:63
pix_amount height
Definition Widgets.h:64
Callback cb
Definition Widgets.h:67
Point loc
Definition Widgets.h:62

◆ Widget() [3/3]

Graph_lib::Widget::Widget ( const Widget & )
delete

◆ ~Widget()

virtual Graph_lib::Widget::~Widget ( )
virtualdefault

Member Function Documentation

◆ attach()

◆ hide()

virtual void Graph_lib::Widget::hide ( )
inlinevirtual
41{ ptr_wid->hide(); }
Fl_Widget * ptr_wid
Указатель на FLTK виджет
Definition Widgets.h:60
Here is the caller graph for this function:

◆ move()

void Graph_lib::Widget::move ( int dx,
int dy )
virtual

Reimplemented in Graphix_calc::Function_box.

9 {
10 if (dx + int(loc.x) < 0 || dy + int(loc.y) < 0)
11 throw std::invalid_argument("bad dx or dy");
12
13 hide();
14 ptr_wid->position(loc.x += dx, loc.y += dy);
15 show();
16}
virtual void hide()
Definition Widgets.h:41
virtual void show()
Definition Widgets.h:43
pix_amount y
Definition Point.h:30
pix_amount x
Definition Point.h:30
Here is the call graph for this function:
Here is the caller graph for this function:

◆ operator=()

Widget & Graph_lib::Widget::operator= ( const Widget & )
delete

◆ show()

virtual void Graph_lib::Widget::show ( )
inlinevirtual
43{ ptr_wid->show(); }
Here is the caller graph for this function:

◆ window()

Window & Graph_lib::Widget::window ( )
inline
47{ return *own; }
Window * own
Окно, которому принадлежит виджет
Definition Widgets.h:57

Member Data Documentation

◆ cb

Callback Graph_lib::Widget::cb
protected

◆ height

pix_amount Graph_lib::Widget::height
protected

◆ label

std::string Graph_lib::Widget::label
protected

◆ loc

Point Graph_lib::Widget::loc
protected

◆ own

Window* Graph_lib::Widget::own
protected

Окно, которому принадлежит виджет

◆ ptr_wid

Fl_Widget* Graph_lib::Widget::ptr_wid
protected

Указатель на FLTK виджет

◆ width

pix_amount Graph_lib::Widget::width
protected

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