Geometrize  1.0
An application for geometrizing images into geometric primitives
Classes | Signals | Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes | List of all members
geometrize::dialog::TemplateButton Class Reference

The TemplateButton class is a button that opens a task template when clicked. More...

#include <templatebutton.h>

Inheritance diagram for geometrize::dialog::TemplateButton:
Inheritance graph
[legend]
Collaboration diagram for geometrize::dialog::TemplateButton:
Collaboration graph
[legend]

Classes

class  TemplateButtonImpl
 

Signals

void signal_templateLoaded (QString, bool)
 

Public Member Functions

 TemplateButton (chaiscript::ChaiScript *const templateLoader, const QString &templateFolder)
 
virtual ~TemplateButton ()
 
TemplateManifest getTemplateManifest () const
 getTemplateManifest Get the manifest data of the template this item corresponds to. More...
 

Protected Member Functions

void changeEvent (QEvent *) override
 
void mousePressEvent (QMouseEvent *event) override
 
void mouseReleaseEvent (QMouseEvent *event) override
 
void mouseMoveEvent (QMouseEvent *event) override
 
void dragLeaveEvent (QDragLeaveEvent *event) override
 

Private Member Functions

virtual void contextMenuEvent (QContextMenuEvent *e) override
 

Private Attributes

std::unique_ptr< TemplateButtonImpld
 

Detailed Description

The TemplateButton class is a button that opens a task template when clicked.

Constructor & Destructor Documentation

◆ TemplateButton()

geometrize::dialog::TemplateButton::TemplateButton ( chaiscript::ChaiScript *const  templateLoader,
const QString &  templateFolder 
)
explicit
202  :
203  QPushButton(nullptr),
204  d{std::make_unique<TemplateButton::TemplateButtonImpl>(this, templateLoader, templateFolder)}
205 {
206 }

◆ ~TemplateButton()

geometrize::dialog::TemplateButton::~TemplateButton ( )
virtual
209 {
210 }

Member Function Documentation

◆ changeEvent()

void geometrize::dialog::TemplateButton::changeEvent ( QEvent *  event)
overrideprotected
223 {
224  if (event->type() == QEvent::LanguageChange) {
225  d->onLanguageChange();
226  }
227  QPushButton::changeEvent(event);
228 }

◆ contextMenuEvent()

void geometrize::dialog::TemplateButton::contextMenuEvent ( QContextMenuEvent *  e)
overrideprivatevirtual
213 {
214  d->showContextMenu(e);
215 }

◆ dragLeaveEvent()

void geometrize::dialog::TemplateButton::dragLeaveEvent ( QDragLeaveEvent *  event)
overrideprotected
252 {
253  QPushButton::dragLeaveEvent(event);
254 
255  d->handleDragLeaveEvent(event);
256 }

◆ getTemplateManifest()

TemplateManifest geometrize::dialog::TemplateButton::getTemplateManifest ( ) const

getTemplateManifest Get the manifest data of the template this item corresponds to.

Returns
The template manifest data this item corresponds to.
218 {
219  return d->getTemplateManifest();
220 }

◆ mouseMoveEvent()

void geometrize::dialog::TemplateButton::mouseMoveEvent ( QMouseEvent *  event)
overrideprotected
245 {
246  QPushButton::mouseMoveEvent(event);
247 
248  d->handleMouseMoveEvent(event);
249 }

◆ mousePressEvent()

void geometrize::dialog::TemplateButton::mousePressEvent ( QMouseEvent *  event)
overrideprotected
231 {
232  QPushButton::mousePressEvent(event);
233 
234  d->handleMousePressEvent(event);
235 }

◆ mouseReleaseEvent()

void geometrize::dialog::TemplateButton::mouseReleaseEvent ( QMouseEvent *  event)
overrideprotected
238 {
239  QPushButton::mouseReleaseEvent(event);
240 
241  d->handleMouseReleaseEvent(event);
242 }

◆ signal_templateLoaded

void geometrize::dialog::TemplateButton::signal_templateLoaded ( QString  ,
bool   
)
signal

Member Data Documentation

◆ d

std::unique_ptr<TemplateButtonImpl> geometrize::dialog::TemplateButton::d
private

The documentation for this class was generated from the following files:
geometrize::dialog::TemplateButton::d
std::unique_ptr< TemplateButtonImpl > d
Definition: templatebutton.h:55