Version: 9.12.0
QtxWorkstackDrag Class Reference

Workstack drag object. More...

#include <QtxWorkstack.h>

Inheritance diagram for QtxWorkstackDrag:
Inheritance graph

Public Member Functions

 QtxWorkstackDrag (QtxWorkstack *, QtxWorkstackChild *)
 Constructor. More...
 
virtual ~QtxWorkstackDrag ()
 Destructor. More...
 
virtual bool eventFilter (QObject *, QEvent *)
 Custom event filter. More...
 

Private Member Functions

void dropWidget ()
 Called when drop operation is finished. More...
 
void updateTarget (const QPoint &)
 Detect and set dropping target widget. More...
 
QtxWorkstackAreadetectTarget (const QPoint &, int &) const
 Detect dropping target. More...
 
void setTarget (QtxWorkstackArea *, const int)
 Set dropping target. More...
 
void drawRect ()
 Draw floating rectangle. More...
 
void endDrawRect ()
 Delete rubber band on the end on the dragging operation. More...
 
void startDrawRect ()
 Create rubber band to be drawn on the dragging operation. More...
 

Private Attributes

QtxWorkstackmyWS
 parent workstack More...
 
QtxWorkstackChildmyChild
 workstack child widget container More...
 
int myTab
 workarea tab page index More...
 
QtxWorkstackAreamyArea
 workarea More...
 
QRubberBand * myTabRect
 tab bar rubber band More...
 
QRubberBand * myAreaRect
 workarea rubber band More...
 

Detailed Description

Workstack drag object.

Constructor & Destructor Documentation

◆ QtxWorkstackDrag()

QtxWorkstackDrag::QtxWorkstackDrag ( QtxWorkstack ws,
QtxWorkstackChild child 
)

Constructor.

Parameters
wsparent workstack
childchild widget container

◆ ~QtxWorkstackDrag()

QtxWorkstackDrag::~QtxWorkstackDrag ( )
virtual

Destructor.

References endDrawRect().

Member Function Documentation

◆ detectTarget()

QtxWorkstackArea * QtxWorkstackDrag::detectTarget ( const QPoint &  p,
int &  tab 
) const
private

Detect dropping target.

Parameters
pcurrent dragging position
tabresulting target tab page index
Returns
target workarea or 0 if there is no correct drop target

References QtxWorkstack::areaAt(), myWS, and QtxWorkstackArea::tabAt().

◆ drawRect()

void QtxWorkstackDrag::drawRect ( )
private

◆ dropWidget()

void QtxWorkstackDrag::dropWidget ( )
private

Called when drop operation is finished.

Inserts dropped widget to the target workarea.

References QtxWorkstackArea::insertChild(), myArea, myChild, and myTab.

◆ endDrawRect()

void QtxWorkstackDrag::endDrawRect ( )
private

Delete rubber band on the end on the dragging operation.

References myAreaRect, and myTabRect.

◆ eventFilter()

bool QtxWorkstackDrag::eventFilter ( QObject ,
QEvent e 
)
virtual

Custom event filter.

Parameters
oevent receiver widget
eevent
Returns
true if event should be filtered (stop further processing)

References drawRect(), dropWidget(), endDrawRect(), and updateTarget().

◆ setTarget()

void QtxWorkstackDrag::setTarget ( QtxWorkstackArea area,
const int  tab 
)
private

Set dropping target.

Parameters
areanew target workarea
tabtarget workarea's tab page index

References drawRect(), myArea, myTab, and startDrawRect().

◆ startDrawRect()

void QtxWorkstackDrag::startDrawRect ( )
private

Create rubber band to be drawn on the dragging operation.

References myAreaRect, myTabRect, and Plot2d::Rectangle.

◆ updateTarget()

void QtxWorkstackDrag::updateTarget ( const QPoint &  p)
private

Detect and set dropping target widget.

Parameters
pcurrent dragging position

References detectTarget(), and setTarget().

Member Data Documentation

◆ myArea

QtxWorkstackArea* QtxWorkstackDrag::myArea
private

workarea

◆ myAreaRect

QRubberBand* QtxWorkstackDrag::myAreaRect
private

workarea rubber band

◆ myChild

QtxWorkstackChild* QtxWorkstackDrag::myChild
private

workstack child widget container

◆ myTab

int QtxWorkstackDrag::myTab
private

workarea tab page index

◆ myTabRect

QRubberBand* QtxWorkstackDrag::myTabRect
private

tab bar rubber band

◆ myWS

QtxWorkstack* QtxWorkstackDrag::myWS
private

parent workstack


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