From f7188d32d0beaef31fc3475be05daea2f018ebec Mon Sep 17 00:00:00 2001 From: Shamus Hammons Date: Mon, 21 Jun 2010 03:44:08 +0000 Subject: [PATCH] Refactored CAD tool bars to use predefined actions. --- architektonas.pro | 13 - src/actions/rs_actionmodifymirror.cpp | 20 +- src/actions/rs_actionselect.cpp | 5 +- src/forms/cadtoolbar.cpp | 27 +- src/forms/cadtoolbar.h | 7 +- src/forms/cadtoolbararcs.cpp | 44 ++ src/forms/cadtoolbararcs.h | 20 +- src/forms/cadtoolbarcircles.cpp | 88 +--- src/forms/cadtoolbarcircles.h | 22 +- src/forms/cadtoolbardim.cpp | 104 ++-- src/forms/cadtoolbardim.h | 25 +- src/forms/cadtoolbarellipses.cpp | 62 +-- src/forms/cadtoolbarellipses.h | 19 +- src/forms/cadtoolbarinfo.cpp | 83 +-- src/forms/cadtoolbarinfo.h | 22 +- src/forms/cadtoolbarlines.ui | 609 ----------------------- src/forms/cadtoolbarmodify.cpp | 174 ++----- src/forms/cadtoolbarmodify.h | 35 +- src/forms/cadtoolbarpoints.cpp | 57 +-- src/forms/cadtoolbarpoints.h | 18 +- src/forms/cadtoolbarpolylines.cpp | 91 ++-- src/forms/cadtoolbarpolylines.h | 23 +- src/forms/cadtoolbarselect.cpp | 149 ++---- src/forms/cadtoolbarselect.h | 37 +- src/forms/cadtoolbarsnap.cpp | 57 +++ src/forms/cadtoolbarsnap.h | 24 + src/forms/cadtoolbarsplines.cpp | 57 +-- src/forms/cadtoolbarsplines.h | 18 +- src/forms/res/architektonas.qrc | 21 +- src/forms/res/qg_selectall.xpm | 23 - src/forms/res/qg_selectcontour.xpm | 24 - src/forms/res/qg_selectdoubles.xpm | 24 - src/forms/res/qg_selectinters.xpm | 27 - src/forms/res/qg_selectinvert.xpm | 25 - src/forms/res/qg_selectlayer.xpm | 28 -- src/forms/res/qg_selectnothing.xpm | 23 - src/forms/res/qg_selectsingle.xpm | 27 - src/forms/res/qg_selectwindow.xpm | 25 - src/forms/res/select-all.xpm | 21 + src/forms/res/select-contour.xpm | 22 + src/forms/res/select-intersection.xpm | 25 + src/forms/res/select-invert.xpm | 23 + src/forms/res/select-layer.xpm | 26 + src/forms/res/select-none.xpm | 21 + src/forms/res/select-nonintersection.xpm | 25 + src/forms/res/select-nonwindow.xpm | 23 + src/forms/res/select-single.xpm | 25 + src/forms/res/select-window.xpm | 23 + src/mainapp/createqtactions.cpp | 24 +- src/mainapp/createqtactions.h | 2 +- src/widgets/qg_actionhandler.cpp | 177 ++++--- 51 files changed, 843 insertions(+), 1751 deletions(-) delete mode 100644 src/forms/cadtoolbarlines.ui delete mode 100644 src/forms/res/qg_selectall.xpm delete mode 100644 src/forms/res/qg_selectcontour.xpm delete mode 100644 src/forms/res/qg_selectdoubles.xpm delete mode 100644 src/forms/res/qg_selectinters.xpm delete mode 100644 src/forms/res/qg_selectinvert.xpm delete mode 100644 src/forms/res/qg_selectlayer.xpm delete mode 100644 src/forms/res/qg_selectnothing.xpm delete mode 100644 src/forms/res/qg_selectsingle.xpm delete mode 100644 src/forms/res/qg_selectwindow.xpm create mode 100644 src/forms/res/select-all.xpm create mode 100644 src/forms/res/select-contour.xpm create mode 100644 src/forms/res/select-intersection.xpm create mode 100644 src/forms/res/select-invert.xpm create mode 100644 src/forms/res/select-layer.xpm create mode 100644 src/forms/res/select-none.xpm create mode 100644 src/forms/res/select-nonintersection.xpm create mode 100644 src/forms/res/select-nonwindow.xpm create mode 100644 src/forms/res/select-single.xpm create mode 100644 src/forms/res/select-window.xpm diff --git a/architektonas.pro b/architektonas.pro index a7952aa..9cb30c5 100644 --- a/architektonas.pro +++ b/architektonas.pro @@ -582,20 +582,7 @@ SOURCES += \ FORMS = \ src/forms/blockdialog.ui \ - src/forms/cadtoolbar.ui \ - src/forms/cadtoolbararcs.ui \ - src/forms/cadtoolbarcircles.ui \ - src/forms/cadtoolbardim.ui \ - src/forms/cadtoolbarellipses.ui \ - src/forms/cadtoolbarinfo.ui \ - src/forms/cadtoolbarlines.ui \ src/forms/cadtoolbarmain.ui \ - src/forms/cadtoolbarmodify.ui \ - src/forms/cadtoolbarpoints.ui \ - src/forms/cadtoolbarpolylines.ui \ - src/forms/cadtoolbarselect.ui \ - src/forms/cadtoolbarsnap.ui \ - src/forms/cadtoolbarsplines.ui \ src/forms/commandwidget.ui \ src/forms/coordinatewidget.ui \ src/forms/dimensionlabeleditor.ui \ diff --git a/src/actions/rs_actionmodifymirror.cpp b/src/actions/rs_actionmodifymirror.cpp index ea2cd26..215a10e 100644 --- a/src/actions/rs_actionmodifymirror.cpp +++ b/src/actions/rs_actionmodifymirror.cpp @@ -38,7 +38,7 @@ void RS_ActionModifyMirror::trigger() RS_Modification m(*container, graphicView); m.mirror(data); - if (RS_DIALOGFACTORY != NULL) + if (RS_DIALOGFACTORY) RS_DIALOGFACTORY->updateSelectionWidget(container->countSelected()); } @@ -46,8 +46,7 @@ void RS_ActionModifyMirror::mouseMoveEvent(QMouseEvent * e) { RS_DEBUG->print("RS_ActionModifyMirror::mouseMoveEvent begin"); - if (getStatus() == SetAxisPoint1 - || getStatus() == SetAxisPoint2) + if (getStatus() == SetAxisPoint1 || getStatus() == SetAxisPoint2) { Vector mouse = snapPoint(e); @@ -67,11 +66,8 @@ void RS_ActionModifyMirror::mouseMoveEvent(QMouseEvent * e) clearPreview(); preview->addSelectionFrom(*container); preview->mirror(axisPoint1, axisPoint2); - - preview->addEntity(new RS_Line(preview, - RS_LineData(axisPoint1, - axisPoint2))); - + preview->addEntity(new RS_Line(preview,RS_LineData(axisPoint1, + axisPoint2))); drawPreview(); } break; @@ -101,7 +97,7 @@ void RS_ActionModifyMirror::mouseReleaseEvent(QMouseEvent * e) void RS_ActionModifyMirror::coordinateEvent(Vector * e) { - if (e == NULL) + if (!e) return; Vector mouse = *e; @@ -119,7 +115,7 @@ void RS_ActionModifyMirror::coordinateEvent(Vector * e) setStatus(ShowDialog); graphicView->moveRelativeZero(mouse); - if (RS_DIALOGFACTORY != NULL) + if (RS_DIALOGFACTORY) { if (RS_DIALOGFACTORY->requestMirrorDialog(data)) { @@ -140,7 +136,7 @@ void RS_ActionModifyMirror::coordinateEvent(Vector * e) void RS_ActionModifyMirror::updateMouseButtonHints() { - if (RS_DIALOGFACTORY != NULL) + if (RS_DIALOGFACTORY) { switch (getStatus()) { @@ -189,5 +185,3 @@ void RS_ActionModifyMirror::updateToolBar() } } } - -// EOF diff --git a/src/actions/rs_actionselect.cpp b/src/actions/rs_actionselect.cpp index 1fe684a..83077c7 100644 --- a/src/actions/rs_actionselect.cpp +++ b/src/actions/rs_actionselect.cpp @@ -18,7 +18,8 @@ #include "rs_dialogfactory.h" #include "graphicview.h" -RS_ActionSelect::RS_ActionSelect(RS_EntityContainer & container, GraphicView & graphicView, RS2::ActionType nextAction): +RS_ActionSelect::RS_ActionSelect(RS_EntityContainer & container, GraphicView & graphicView, + RS2::ActionType nextAction): RS_ActionInterface("Select Entities", container, graphicView) { this->nextAction = nextAction; @@ -42,7 +43,7 @@ void RS_ActionSelect::mouseReleaseEvent(QMouseEvent * e) void RS_ActionSelect::updateToolBar() { - if (RS_DIALOGFACTORY != NULL) + if (RS_DIALOGFACTORY) { if (!isFinished()) RS_DIALOGFACTORY->requestToolBarSelect(this, nextAction); diff --git a/src/forms/cadtoolbar.cpp b/src/forms/cadtoolbar.cpp index 2ae0746..fd44fc7 100644 --- a/src/forms/cadtoolbar.cpp +++ b/src/forms/cadtoolbar.cpp @@ -35,10 +35,19 @@ CadToolBar::CadToolBar(QWidget * parent/*= 0*/, Qt::WindowFlags flags/*= 0*/): tbEllipses(NULL), tbArcs(NULL), tbModify(NULL), tbCircles(NULL), tbSnap(NULL), tbSelect(NULL), tbPolylines(NULL) { - ui.setupUi(this); +//hmm. +#if 1 + resize(86, 336); +// QSizePolicy policy(QSizePolicy::Fixed, QSizePolicy::MinimumExpanding); +// policy.setHorizontalStretch(0); +// policy.setVerticalStretch(0); +// policy.setHeightForWidth(sizePolicy().hasHeightForWidth()); +// setSizePolicy(policy); + setMinimumSize(QSize(56, 336)); +#endif //hm. here maybe? Yesh! -if (parent) - ((QToolBar *)parent)->addWidget(this); + if (parent) + ((QToolBar *)parent)->addWidget(this); } CadToolBar::~CadToolBar() @@ -97,51 +106,39 @@ void CadToolBar::createSubToolBars(QG_ActionHandler * ah) currentTb = tbMain; tbPoints = new CadToolBarPoints(this); - tbPoints->setCadToolBar(this); tbPoints->hide(); tbLines = new CadToolBarLines(this); -// tbLines->setCadToolBar(this); tbLines->hide(); tbArcs = new CadToolBarArcs(this); - tbArcs->setCadToolBar(this); tbArcs->hide(); tbCircles = new CadToolBarCircles(this); - tbCircles->setCadToolBar(this); tbCircles->hide(); tbEllipses = new CadToolBarEllipses(this); - tbEllipses->setCadToolBar(this); tbEllipses->hide(); tbSplines = new CadToolBarSplines(this); - tbSplines->setCadToolBar(this); tbSplines->hide(); tbPolylines = new CadToolBarPolylines(this); - tbPolylines->setCadToolBar(this); tbPolylines->hide(); tbDim = new CadToolBarDim(this); - tbDim->setCadToolBar(this); tbDim->hide(); tbInfo = new CadToolBarInfo(this); - tbInfo->setCadToolBar(this); tbInfo->hide(); tbModify = new CadToolBarModify(this); - tbModify->setCadToolBar(this); tbModify->hide(); tbSnap = new CadToolBarSnap(this); - tbSnap->setCadToolBar(this); tbSnap->hide(); tbSelect = new CadToolBarSelect(this); - tbSelect->setCadToolBar(this); tbSelect->hide(); } diff --git a/src/forms/cadtoolbar.h b/src/forms/cadtoolbar.h index 52065fd..c593a28 100644 --- a/src/forms/cadtoolbar.h +++ b/src/forms/cadtoolbar.h @@ -1,7 +1,8 @@ #ifndef __CADTOOLBAR_H__ #define __CADTOOLBAR_H__ -#include "ui_cadtoolbar.h" +//#include "ui_cadtoolbar.h" +#include class RS_ActionInterface; class QG_ActionHandler; @@ -72,8 +73,8 @@ class CadToolBar: public QWidget CadToolBarSelect * tbSelect; CadToolBarPolylines * tbPolylines; - private: - Ui::CadToolBar ui; +// private: +// Ui::CadToolBar ui; }; #endif // __CADTOOLBAR_H__ diff --git a/src/forms/cadtoolbararcs.cpp b/src/forms/cadtoolbararcs.cpp index 6ea2bd0..98469c1 100644 --- a/src/forms/cadtoolbararcs.cpp +++ b/src/forms/cadtoolbararcs.cpp @@ -14,6 +14,7 @@ #include "cadtoolbararcs.h" +#if 0 #include "cadtoolbar.h" #include "qg_actionhandler.h" #include "rs_debug.h" @@ -79,3 +80,46 @@ void CadToolBarArcs::back() if (cadToolBar != NULL) cadToolBar->back(); } +#else +#include "cadtoolbar.h" +#include "createqtactions.h" + +CadToolBarArcs::CadToolBarArcs(CadToolBar * parent, Qt::WindowFlags flags/*= 0*/): + QWidget((QWidget *)parent, flags), cadToolBar(parent) +{ + QGridLayout * gridLayout = new QGridLayout(this); + gridLayout->setSpacing(0); + gridLayout->setContentsMargins(0, 0, 0, 0); + + QAction * actionBack = new QAction(QIcon(":/res/qg_back"), tr("Back"), this); + QToolButton * button = new QToolButton(this); + button->setDefaultAction(actionBack); + QSizePolicy policy(QSizePolicy::MinimumExpanding, QSizePolicy::Preferred); + button->setSizePolicy(policy); + gridLayout->addWidget(button, 0, 0, 1, 2); + connect(button, SIGNAL(triggered(QAction *)), this, SLOT(back())); + + gridLayout->addWidget(CreateToolButton(actionDrawArc), 1, 0, 1, 1); + gridLayout->addWidget(CreateToolButton(actionDrawArc3P), 1, 1, 1, 1); + gridLayout->addWidget(CreateToolButton(actionDrawArcParallel), 2, 0, 1, 1); + gridLayout->addWidget(CreateToolButton(actionDrawArcTangential), 2, 1, 1, 1); +} + +CadToolBarArcs::~CadToolBarArcs() +{ +} + +void CadToolBarArcs::back() +{ + cadToolBar->back(); +} + +QToolButton * CadToolBarArcs::CreateToolButton(QAction * action) +{ + QToolButton * button = new QToolButton(this); + button->setDefaultAction(action); + button->setIconSize(QSize(18, 18)); + + return button; +} +#endif diff --git a/src/forms/cadtoolbararcs.h b/src/forms/cadtoolbararcs.h index 47dc709..d29afc2 100644 --- a/src/forms/cadtoolbararcs.h +++ b/src/forms/cadtoolbararcs.h @@ -1,34 +1,26 @@ #ifndef __CADTOOLBARARCS_H__ #define __CADTOOLBARARCS_H__ -#include "ui_cadtoolbararcs.h" +#include class CadToolBar; -class QG_ActionHandler; class CadToolBarArcs: public QWidget { Q_OBJECT public: - CadToolBarArcs(QWidget * parent = 0, Qt::WindowFlags flags = 0); + CadToolBarArcs(CadToolBar * parent, Qt::WindowFlags flags = 0); ~CadToolBarArcs(); - public slots: - void contextMenuEvent(QContextMenuEvent * e); - void setCadToolBar(CadToolBar * tb); - void drawArc(); - void drawArc3P(); - void drawArcParallel(); - void drawArcTangential(); + protected slots: void back(); + private: + QToolButton * CreateToolButton(QAction * action); + protected: - QG_ActionHandler * actionHandler; CadToolBar * cadToolBar; - - private: - Ui::CadToolBarArcs ui; }; #endif // __CADTOOLBARARCS_H__ diff --git a/src/forms/cadtoolbarcircles.cpp b/src/forms/cadtoolbarcircles.cpp index 0ca00d6..17a3671 100644 --- a/src/forms/cadtoolbarcircles.cpp +++ b/src/forms/cadtoolbarcircles.cpp @@ -15,80 +15,44 @@ #include "cadtoolbarcircles.h" #include "cadtoolbar.h" -#include "qg_actionhandler.h" -#include "rs_debug.h" +#include "createqtactions.h" -CadToolBarCircles::CadToolBarCircles(QWidget * parent/*= 0*/, Qt::WindowFlags flags/*= 0*/): - QWidget(parent, flags), actionHandler(NULL), cadToolBar(NULL) +CadToolBarCircles::CadToolBarCircles(CadToolBar * parent, Qt::WindowFlags flags/*= 0*/): + QWidget((QWidget *)parent, flags), cadToolBar(parent) { - ui.setupUi(this); -} - -CadToolBarCircles::~CadToolBarCircles() -{ -} - -void CadToolBarCircles::mousePressEvent(QMouseEvent * e) -{ - if (e->button() == Qt::RightButton && cadToolBar != NULL) - { - cadToolBar->back(); - e->accept(); - } -} - -void CadToolBarCircles::contextMenuEvent(QContextMenuEvent * e) -{ - e->accept(); -} + QGridLayout * gridLayout = new QGridLayout(this); + gridLayout->setSpacing(0); + gridLayout->setContentsMargins(0, 0, 0, 0); -void CadToolBarCircles::setCadToolBar(CadToolBar * tb) -{ - cadToolBar = tb; + QAction * actionBack = new QAction(QIcon(":/res/qg_back"), tr("Back"), this); + QToolButton * button = new QToolButton(this); + button->setDefaultAction(actionBack); + QSizePolicy policy(QSizePolicy::MinimumExpanding, QSizePolicy::Preferred); + button->setSizePolicy(policy); + gridLayout->addWidget(button, 0, 0, 1, 2); + connect(button, SIGNAL(triggered(QAction *)), this, SLOT(back())); - if (tb != NULL) - { - actionHandler = tb->getActionHandler(); - } - else - { - RS_DEBUG->print(RS_Debug::D_ERROR, - "CadToolBarCircles::setCadToolBar(): No valid toolbar set."); - } + gridLayout->addWidget(CreateToolButton(actionDrawCircle), 1, 0, 1, 1); + gridLayout->addWidget(CreateToolButton(actionDrawCircleCR), 1, 1, 1, 1); + gridLayout->addWidget(CreateToolButton(actionDrawCircle2P), 2, 0, 1, 1); + gridLayout->addWidget(CreateToolButton(actionDrawCircle3P), 2, 1, 1, 1); + gridLayout->addWidget(CreateToolButton(actionDrawCircleParallel), 3, 0, 1, 1); } -void CadToolBarCircles::drawCircle() -{ - if (cadToolBar != NULL && actionHandler != NULL) - actionHandler->slotDrawCircle(); -} - -void CadToolBarCircles::drawCircleCR() -{ - if (cadToolBar != NULL && actionHandler != NULL) - actionHandler->slotDrawCircleCR(); -} - -void CadToolBarCircles::drawCircle2P() +CadToolBarCircles::~CadToolBarCircles() { - if (cadToolBar != NULL && actionHandler != NULL) - actionHandler->slotDrawCircle2P(); } -void CadToolBarCircles::drawCircle3P() +void CadToolBarCircles::back() { - if (cadToolBar != NULL && actionHandler != NULL) - actionHandler->slotDrawCircle3P(); + cadToolBar->back(); } -void CadToolBarCircles::drawCircleParallel() +QToolButton * CadToolBarCircles::CreateToolButton(QAction * action) { - if (cadToolBar != NULL && actionHandler != NULL) - actionHandler->slotDrawCircleParallel(); -} + QToolButton * button = new QToolButton(this); + button->setDefaultAction(action); + button->setIconSize(QSize(18, 18)); -void CadToolBarCircles::back() -{ - if (cadToolBar != NULL) - cadToolBar->back(); + return button; } diff --git a/src/forms/cadtoolbarcircles.h b/src/forms/cadtoolbarcircles.h index 3383463..edfe31e 100644 --- a/src/forms/cadtoolbarcircles.h +++ b/src/forms/cadtoolbarcircles.h @@ -1,36 +1,26 @@ #ifndef __CADTOOLBARCIRCLES_H__ #define __CADTOOLBARCIRCLES_H__ -#include "ui_cadtoolbarcircles.h" +#include class CadToolBar; -class QG_ActionHandler; class CadToolBarCircles: public QWidget { Q_OBJECT public: - CadToolBarCircles(QWidget * parent = 0, Qt::WindowFlags flags = 0); + CadToolBarCircles(CadToolBar * parent, Qt::WindowFlags flags = 0); ~CadToolBarCircles(); - public slots: - void mousePressEvent(QMouseEvent * e); - void contextMenuEvent(QContextMenuEvent * e); - void setCadToolBar(CadToolBar * tb); - void drawCircle(); - void drawCircleCR(); - void drawCircle2P(); - void drawCircle3P(); - void drawCircleParallel(); + protected slots: void back(); + private: + QToolButton * CreateToolButton(QAction * action); + protected: - QG_ActionHandler * actionHandler; CadToolBar * cadToolBar; - - private: - Ui::CadToolBarCircles ui; }; #endif // __CADTOOLBARCIRCLES_H__ diff --git a/src/forms/cadtoolbardim.cpp b/src/forms/cadtoolbardim.cpp index b6eb567..8d7caf1 100644 --- a/src/forms/cadtoolbardim.cpp +++ b/src/forms/cadtoolbardim.cpp @@ -15,93 +15,47 @@ #include "cadtoolbardim.h" #include "cadtoolbar.h" -#include "qg_actionhandler.h" -#include "rs_debug.h" +#include "createqtactions.h" -CadToolBarDim::CadToolBarDim(QWidget * parent/*= 0*/, Qt::WindowFlags flags/*= 0*/): - QWidget(parent, flags), actionHandler(NULL), cadToolBar(NULL) +CadToolBarDim::CadToolBarDim(CadToolBar * parent, Qt::WindowFlags flags/*= 0*/): + QWidget((QWidget *)parent, flags), cadToolBar(parent) { - ui.setupUi(this); -} - -CadToolBarDim::~CadToolBarDim() -{ -} - -void CadToolBarDim::mousePressEvent(QMouseEvent * e) -{ - if (e->button() == Qt::RightButton && cadToolBar != NULL) - { - cadToolBar->back(); - e->accept(); - } -} - -void CadToolBarDim::contextMenuEvent(QContextMenuEvent * e) -{ - e->accept(); -} - -void CadToolBarDim::setCadToolBar(CadToolBar * tb) -{ - cadToolBar = tb; - - if (tb != NULL) - actionHandler = tb->getActionHandler(); - else - RS_DEBUG->print(RS_Debug::D_ERROR, "CadToolBarDim::setCadToolBar(): No valid toolbar set."); -} - -void CadToolBarDim::drawDimAligned() -{ - if (cadToolBar != NULL && actionHandler != NULL) - actionHandler->slotDimAligned(); -} - -void CadToolBarDim::drawDimLinear() -{ - if (cadToolBar != NULL && actionHandler != NULL) - actionHandler->slotDimLinear(); -} - -void CadToolBarDim::drawDimLinearHor() -{ - if (cadToolBar != NULL && actionHandler != NULL) - actionHandler->slotDimLinearHor(); -} + QGridLayout * gridLayout = new QGridLayout(this); + gridLayout->setSpacing(0); + gridLayout->setContentsMargins(0, 0, 0, 0); -void CadToolBarDim::drawDimLinearVer() -{ - if (cadToolBar != NULL && actionHandler != NULL) - actionHandler->slotDimLinearVer(); -} + QAction * actionBack = new QAction(QIcon(":/res/qg_back"), tr("Back"), this); + QToolButton * button = new QToolButton(this); + button->setDefaultAction(actionBack); + QSizePolicy policy(QSizePolicy::MinimumExpanding, QSizePolicy::Preferred); + button->setSizePolicy(policy); + gridLayout->addWidget(button, 0, 0, 1, 2); + connect(button, SIGNAL(triggered(QAction *)), this, SLOT(back())); -void CadToolBarDim::drawDimRadial() -{ - if (cadToolBar != NULL && actionHandler != NULL) - actionHandler->slotDimRadial(); + gridLayout->addWidget(CreateToolButton(actionDimAligned), 1, 0, 1, 1); + gridLayout->addWidget(CreateToolButton(actionDimLinear), 1, 1, 1, 1); + gridLayout->addWidget(CreateToolButton(actionDimLinearHor), 2, 0, 1, 1); + gridLayout->addWidget(CreateToolButton(actionDimLinearVer), 2, 1, 1, 1); + gridLayout->addWidget(CreateToolButton(actionDimRadial), 3, 0, 1, 1); + gridLayout->addWidget(CreateToolButton(actionDimDiametric), 3, 1, 1, 1); + gridLayout->addWidget(CreateToolButton(actionDimAngular), 4, 0, 1, 1); + gridLayout->addWidget(CreateToolButton(actionDimLeader), 4, 1, 1, 1); } -void CadToolBarDim::drawDimDiametric() +CadToolBarDim::~CadToolBarDim() { - if (cadToolBar != NULL && actionHandler != NULL) - actionHandler->slotDimDiametric(); } -void CadToolBarDim::drawDimAngular() +void CadToolBarDim::back() { - if (cadToolBar != NULL && actionHandler != NULL) - actionHandler->slotDimAngular(); + cadToolBar->back(); } -void CadToolBarDim::drawDimLeader() +QToolButton * CadToolBarDim::CreateToolButton(QAction * action) { - if (cadToolBar != NULL && actionHandler != NULL) - actionHandler->slotDimLeader(); -} + QToolButton * button = new QToolButton(this); + button->setDefaultAction(action); + button->setIconSize(QSize(18, 18)); -void CadToolBarDim::back() -{ - if (cadToolBar != NULL) - cadToolBar->back(); + return button; } diff --git a/src/forms/cadtoolbardim.h b/src/forms/cadtoolbardim.h index 4fad206..2c80cb6 100644 --- a/src/forms/cadtoolbardim.h +++ b/src/forms/cadtoolbardim.h @@ -1,39 +1,26 @@ #ifndef __CADTOOLBARDIM_H__ #define __CADTOOLBARDIM_H__ -#include "ui_cadtoolbardim.h" +#include class CadToolBar; -class QG_ActionHandler; class CadToolBarDim: public QWidget { Q_OBJECT public: - CadToolBarDim(QWidget * parent = 0, Qt::WindowFlags flags = 0); + CadToolBarDim(CadToolBar * parent, Qt::WindowFlags flags = 0); ~CadToolBarDim(); - public slots: - void mousePressEvent(QMouseEvent * e); - void contextMenuEvent(QContextMenuEvent * e); - void setCadToolBar(CadToolBar * tb); - void drawDimAligned(); - void drawDimLinear(); - void drawDimLinearHor(); - void drawDimLinearVer(); - void drawDimRadial(); - void drawDimDiametric(); - void drawDimAngular(); - void drawDimLeader(); + protected slots: void back(); + private: + QToolButton * CreateToolButton(QAction * action); + protected: - QG_ActionHandler * actionHandler; CadToolBar * cadToolBar; - - private: - Ui::CadToolBarDim ui; }; #endif // __CADTOOLBARDIM_H__ diff --git a/src/forms/cadtoolbarellipses.cpp b/src/forms/cadtoolbarellipses.cpp index 6e38532..db170f6 100644 --- a/src/forms/cadtoolbarellipses.cpp +++ b/src/forms/cadtoolbarellipses.cpp @@ -15,57 +15,41 @@ #include "cadtoolbarellipses.h" #include "cadtoolbar.h" -#include "qg_actionhandler.h" -#include "rs_debug.h" +#include "createqtactions.h" -CadToolBarEllipses::CadToolBarEllipses(QWidget * parent/*= 0*/, Qt::WindowFlags flags/*= 0*/): - QWidget(parent, flags), actionHandler(NULL), cadToolBar(NULL) +CadToolBarEllipses::CadToolBarEllipses(CadToolBar * parent, Qt::WindowFlags flags/*= 0*/): + QWidget((QWidget *)parent, flags), cadToolBar(parent) { - ui.setupUi(this); -} + QGridLayout * gridLayout = new QGridLayout(this); + gridLayout->setSpacing(0); + gridLayout->setContentsMargins(0, 0, 0, 0); -CadToolBarEllipses::~CadToolBarEllipses() -{ -} - -void CadToolBarEllipses::mousePressEvent(QMouseEvent * e) -{ - if (e->button() == Qt::RightButton && cadToolBar != NULL) - { - cadToolBar->back(); - e->accept(); - } -} + QAction * actionBack = new QAction(QIcon(":/res/qg_back"), tr("Back"), this); + QToolButton * button = new QToolButton(this); + button->setDefaultAction(actionBack); + QSizePolicy policy(QSizePolicy::MinimumExpanding, QSizePolicy::Preferred); + button->setSizePolicy(policy); + gridLayout->addWidget(button, 0, 0, 1, 2); + connect(button, SIGNAL(triggered(QAction *)), this, SLOT(back())); -void CadToolBarEllipses::contextMenuEvent(QContextMenuEvent * e) -{ - e->accept(); + gridLayout->addWidget(CreateToolButton(actionDrawEllipseAxis), 1, 0, 1, 1); + gridLayout->addWidget(CreateToolButton(actionDrawEllipseArcAxis), 1, 1, 1, 1); } -void CadToolBarEllipses::setCadToolBar(CadToolBar * tb) +CadToolBarEllipses::~CadToolBarEllipses() { - cadToolBar = tb; - - if (tb != NULL) - actionHandler = tb->getActionHandler(); - else - RS_DEBUG->print(RS_Debug::D_ERROR, "CadToolBarEllipses::setCadToolBar(): No valid toolbar set."); } -void CadToolBarEllipses::drawEllipseAxis() +void CadToolBarEllipses::back() { - if (cadToolBar != NULL && actionHandler != NULL) - actionHandler->slotDrawEllipseAxis(); + cadToolBar->back(); } -void CadToolBarEllipses::drawEllipseArcAxis() +QToolButton * CadToolBarEllipses::CreateToolButton(QAction * action) { - if (cadToolBar != NULL && actionHandler != NULL) - actionHandler->slotDrawEllipseArcAxis(); -} + QToolButton * button = new QToolButton(this); + button->setDefaultAction(action); + button->setIconSize(QSize(18, 18)); -void CadToolBarEllipses::back() -{ - if (cadToolBar != NULL) - cadToolBar->back(); + return button; } diff --git a/src/forms/cadtoolbarellipses.h b/src/forms/cadtoolbarellipses.h index a0008b1..7f778e9 100644 --- a/src/forms/cadtoolbarellipses.h +++ b/src/forms/cadtoolbarellipses.h @@ -1,33 +1,26 @@ #ifndef __CADTOOLBARELLIPSES_H__ #define __CADTOOLBARELLIPSES_H__ -#include "ui_cadtoolbarellipses.h" +#include class CadToolBar; -class QG_ActionHandler; class CadToolBarEllipses: public QWidget { Q_OBJECT public: - CadToolBarEllipses(QWidget * parent = 0, Qt::WindowFlags flags = 0); + CadToolBarEllipses(CadToolBar * parent, Qt::WindowFlags flags = 0); ~CadToolBarEllipses(); - public slots: - void mousePressEvent(QMouseEvent * e); - void contextMenuEvent(QContextMenuEvent * e); - void setCadToolBar(CadToolBar * tb); - void drawEllipseAxis(); - void drawEllipseArcAxis(); + protected slots: void back(); + private: + QToolButton * CreateToolButton(QAction * action); + protected: - QG_ActionHandler * actionHandler; CadToolBar * cadToolBar; - - private: - Ui::CadToolBarEllipses ui; }; #endif // __CADTOOLBARELLIPSES_H__ diff --git a/src/forms/cadtoolbarinfo.cpp b/src/forms/cadtoolbarinfo.cpp index 98daa80..383e9e6 100644 --- a/src/forms/cadtoolbarinfo.cpp +++ b/src/forms/cadtoolbarinfo.cpp @@ -15,75 +15,44 @@ #include "cadtoolbarinfo.h" #include "cadtoolbar.h" -#include "qg_actionhandler.h" -#include "rs_debug.h" +#include "createqtactions.h" -CadToolBarInfo::CadToolBarInfo(QWidget * parent/*= 0*/, Qt::WindowFlags flags/*= 0*/): - QWidget(parent, flags), actionHandler(NULL), cadToolBar(NULL) +CadToolBarInfo::CadToolBarInfo(CadToolBar * parent, Qt::WindowFlags flags/*= 0*/): + QWidget((QWidget *)parent, flags), cadToolBar(parent) { - ui.setupUi(this); -} - -CadToolBarInfo::~CadToolBarInfo() -{ -} - -void CadToolBarInfo::mousePressEvent(QMouseEvent * e) -{ - if (e->button() == Qt::RightButton && cadToolBar != NULL) - { - cadToolBar->back(); - e->accept(); - } -} - -void CadToolBarInfo::contextMenuEvent(QContextMenuEvent *e) { - e->accept(); -} - -void CadToolBarInfo::setCadToolBar(CadToolBar * tb) -{ - cadToolBar = tb; - - if (tb != NULL) - actionHandler = tb->getActionHandler(); - else - RS_DEBUG->print(RS_Debug::D_ERROR, - "CadToolBarInfo::setCadToolBar(): No valid toolbar set."); -} + QGridLayout * gridLayout = new QGridLayout(this); + gridLayout->setSpacing(0); + gridLayout->setContentsMargins(0, 0, 0, 0); -void CadToolBarInfo::infoDist() -{ - if (cadToolBar != NULL && actionHandler != NULL) - actionHandler->slotInfoDist(); -} + QAction * actionBack = new QAction(QIcon(":/res/qg_back"), tr("Back"), this); + QToolButton * button = new QToolButton(this); + button->setDefaultAction(actionBack); + QSizePolicy policy(QSizePolicy::MinimumExpanding, QSizePolicy::Preferred); + button->setSizePolicy(policy); + gridLayout->addWidget(button, 0, 0, 1, 2); + connect(button, SIGNAL(triggered(QAction *)), this, SLOT(back())); -void CadToolBarInfo::infoDist2() -{ - if (cadToolBar != NULL && actionHandler != NULL) - actionHandler->slotInfoDist2(); + gridLayout->addWidget(CreateToolButton(actionInfoDist), 1, 0, 1, 1); + gridLayout->addWidget(CreateToolButton(actionInfoDist2), 1, 1, 1, 1); + gridLayout->addWidget(CreateToolButton(actionInfoAngle), 2, 0, 1, 1); + gridLayout->addWidget(CreateToolButton(actionInfoTotalLength), 2, 1, 1, 1); + gridLayout->addWidget(CreateToolButton(actionInfoArea), 3, 0, 1, 1); } -void CadToolBarInfo::infoAngle() +CadToolBarInfo::~CadToolBarInfo() { - if (cadToolBar != NULL && actionHandler != NULL) - actionHandler->slotInfoAngle(); } -void CadToolBarInfo::infoTotalLength() +void CadToolBarInfo::back() { - if (cadToolBar != NULL && actionHandler != NULL) - actionHandler->slotInfoTotalLength(); + cadToolBar->back(); } -void CadToolBarInfo::infoArea() +QToolButton * CadToolBarInfo::CreateToolButton(QAction * action) { - if (cadToolBar != NULL && actionHandler != NULL) - actionHandler->slotInfoArea(); -} + QToolButton * button = new QToolButton(this); + button->setDefaultAction(action); + button->setIconSize(QSize(18, 18)); -void CadToolBarInfo::back() -{ - if (cadToolBar != NULL) - cadToolBar->back(); + return button; } diff --git a/src/forms/cadtoolbarinfo.h b/src/forms/cadtoolbarinfo.h index 01ecced..f326cf4 100644 --- a/src/forms/cadtoolbarinfo.h +++ b/src/forms/cadtoolbarinfo.h @@ -1,36 +1,26 @@ #ifndef __CADTOOLBARINFO_H__ #define __CADTOOLBARINFO_H__ -#include "ui_cadtoolbarinfo.h" +#include class CadToolBar; -class QG_ActionHandler; class CadToolBarInfo: public QWidget { Q_OBJECT public: - CadToolBarInfo(QWidget * parent = 0, Qt::WindowFlags flags = 0); + CadToolBarInfo(CadToolBar * parent, Qt::WindowFlags flags = 0); ~CadToolBarInfo(); - public slots: - void mousePressEvent(QMouseEvent * e); - void contextMenuEvent(QContextMenuEvent * e); - void setCadToolBar(CadToolBar * tb); - void infoDist(); - void infoDist2(); - void infoAngle(); - void infoTotalLength(); - void infoArea(); + protected slots: void back(); + private: + QToolButton * CreateToolButton(QAction * action); + protected: - QG_ActionHandler * actionHandler; CadToolBar * cadToolBar; - - private: - Ui::CadToolBarInfo ui; }; #endif // __CADTOOLBARINFO_H__ diff --git a/src/forms/cadtoolbarlines.ui b/src/forms/cadtoolbarlines.ui deleted file mode 100644 index a8b25cf..0000000 --- a/src/forms/cadtoolbarlines.ui +++ /dev/null @@ -1,609 +0,0 @@ - - - CadToolBarLines - - - - 0 - 0 - 56 - 338 - - - - - 0 - 0 - - - - - 56 - 336 - - - - Lines - - - - - 0 - 0 - 56 - 20 - - - - Back to main menu - - - - - - - :res/qg_back.xpm:res/qg_back.xpm - - - - - - 0 - 20 - 28 - 28 - - - - Line with two points - - - - - - - :res/qg_linesnormal.xpm:res/qg_linesnormal.xpm - - - - - - 28 - 20 - 28 - 28 - - - - Line with given angle - - - - - - - :res/qg_linesangle.xpm:res/qg_linesangle.xpm - - - - - - 0 - 48 - 28 - 28 - - - - Horizontal lines - - - - - - - :res/qg_lineshor.xpm:res/qg_lineshor.xpm - - - - - - 28 - 48 - 28 - 28 - - - - Vertical lines - - - - - - - :res/qg_linesver.xpm:res/qg_linesver.xpm - - - - - - 0 - 76 - 28 - 28 - - - - Rectangles - - - - - - - :res/qg_linesrect.xpm:res/qg_linesrect.xpm - - - - - - 28 - 76 - 28 - 28 - - - - Bisectors - - - - - - - :res/qg_linesbisector.xpm:res/qg_linesbisector.xpm - - - - - - 0 - 104 - 28 - 28 - - - - Parallels with distance - - - - - - - :res/qg_linespara.xpm:res/qg_linespara.xpm - - - - - - 0 - 132 - 28 - 28 - - - - Tangents from point to circle - - - - - - - :res/qg_linestan1.xpm:res/qg_linestan1.xpm - - - - - - 28 - 132 - 28 - 28 - - - - Tangents from circle to circle - - - - - - - :res/qg_linestan2.xpm:res/qg_linestan2.xpm - - - - - - 0 - 160 - 28 - 28 - - - - Orthogonal lines - - - - - - - :res/qg_linesorthogonal.xpm:res/qg_linesorthogonal.xpm - - - - - - 28 - 160 - 28 - 28 - - - - Lines with relative angles - - - - - - - :res/qg_linesrelativeangle.xpm:res/qg_linesrelativeangle.xpm - - - - - - 0 - 188 - 28 - 28 - - - - Polygons with Center and Corner - - - - - - - :res/qg_linespolygon.xpm:res/qg_linespolygon.xpm - - - - - - 28 - 188 - 28 - 28 - - - - Polygons with two Corners - - - - - - - :res/qg_linespolygon2.xpm:res/qg_linespolygon2.xpm - - - - - - 0 - 216 - 28 - 28 - - - - Freehand lines - - - - - - - :res/qg_linesfree.xpm:res/qg_linesfree.xpm - - - - - - 28 - 104 - 28 - 28 - - - - Parallels through point - - - - - - - :res/qg_linesparathrough.xpm:res/qg_linesparathrough.xpm - - - - - - - - bNormal - clicked() - CadToolBarLines - drawLine() - - - 20 - 20 - - - 20 - 20 - - - - - bFree - clicked() - CadToolBarLines - drawLineFree() - - - 20 - 20 - - - 20 - 20 - - - - - bParallel - clicked() - CadToolBarLines - drawLineParallel() - - - 20 - 20 - - - 20 - 20 - - - - - bAngle - clicked() - CadToolBarLines - drawLineAngle() - - - 20 - 20 - - - 20 - 20 - - - - - bHorizontal - clicked() - CadToolBarLines - drawLineHorizontal() - - - 20 - 20 - - - 20 - 20 - - - - - bBisector - clicked() - CadToolBarLines - drawLineBisector() - - - 20 - 20 - - - 20 - 20 - - - - - bTangent1 - clicked() - CadToolBarLines - drawLineTangent1() - - - 20 - 20 - - - 20 - 20 - - - - - bTangent2 - clicked() - CadToolBarLines - drawLineTangent2() - - - 20 - 20 - - - 20 - 20 - - - - - bRectangle - clicked() - CadToolBarLines - drawLineRectangle() - - - 20 - 20 - - - 20 - 20 - - - - - bBack - clicked() - CadToolBarLines - back() - - - 20 - 20 - - - 20 - 20 - - - - - bRelAngle - clicked() - CadToolBarLines - drawLineRelAngle() - - - 20 - 20 - - - 20 - 20 - - - - - bVertical - clicked() - CadToolBarLines - drawLineVertical() - - - 20 - 20 - - - 20 - 20 - - - - - bOrthogonal - clicked() - CadToolBarLines - drawLineOrthogonal() - - - 20 - 20 - - - 20 - 20 - - - - - bPolygon - clicked() - CadToolBarLines - drawLinePolygon() - - - 20 - 20 - - - 20 - 20 - - - - - bPolygon2 - clicked() - CadToolBarLines - drawLinePolygon2() - - - 20 - 20 - - - 20 - 20 - - - - - bParallelThrough - clicked() - CadToolBarLines - drawLineParallelThrough() - - - 20 - 20 - - - 20 - 20 - - - - - diff --git a/src/forms/cadtoolbarmodify.cpp b/src/forms/cadtoolbarmodify.cpp index faf53ae..35edbce 100644 --- a/src/forms/cadtoolbarmodify.cpp +++ b/src/forms/cadtoolbarmodify.cpp @@ -14,155 +14,65 @@ #include "cadtoolbarmodify.h" #include "cadtoolbar.h" -#include "qg_actionhandler.h" -#include "rs_debug.h" +#include "createqtactions.h" -CadToolBarModify::CadToolBarModify(QWidget * parent /*= 0*/, Qt::WindowFlags flags /*= 0*/): - QWidget(parent, flags), actionHandler(NULL), cadToolBar(NULL) +CadToolBarModify::CadToolBarModify(CadToolBar * parent, Qt::WindowFlags flags/*= 0*/): + QWidget((QWidget *)parent, flags), cadToolBar(parent) { - ui.setupUi(this); -} - -CadToolBarModify::~CadToolBarModify() -{ -} - -void CadToolBarModify::mousePressEvent(QMouseEvent * e) -{ - if (e->button() == Qt::RightButton && cadToolBar != NULL) - { - cadToolBar->back(); - e->accept(); - } -} - -void CadToolBarModify::contextMenuEvent(QContextMenuEvent *e) -{ - e->accept(); -} - -void CadToolBarModify::setCadToolBar(CadToolBar * tb) -{ - cadToolBar = tb; - - if (tb != NULL) - actionHandler = tb->getActionHandler(); - else - RS_DEBUG->print(RS_Debug::D_ERROR, - "CadToolBarModify::setCadToolBar(): No valid toolbar set."); -} - -void CadToolBarModify::modifyMove() -{ - if (cadToolBar != NULL && actionHandler != NULL) - actionHandler->slotModifyMove(); -} - -void CadToolBarModify::modifyRotate() -{ - if (cadToolBar != NULL && actionHandler != NULL) - actionHandler->slotModifyRotate(); -} - -void CadToolBarModify::modifyScale() -{ - if (cadToolBar != NULL && actionHandler != NULL) - actionHandler->slotModifyScale(); -} - -void CadToolBarModify::modifyMirror() -{ - if (cadToolBar != NULL && actionHandler != NULL) - actionHandler->slotModifyMirror(); -} - -void CadToolBarModify::modifyMoveRotate() -{ - if (cadToolBar != NULL && actionHandler != NULL) - actionHandler->slotModifyMoveRotate(); -} + QGridLayout * gridLayout = new QGridLayout(this); + gridLayout->setSpacing(0); + gridLayout->setContentsMargins(0, 0, 0, 0); -void CadToolBarModify::modifyRotate2() -{ - if (cadToolBar != NULL && actionHandler != NULL) - actionHandler->slotModifyRotate2(); -} + QAction * actionBack = new QAction(QIcon(":/res/qg_back"), tr("Back"), this); + QToolButton * button = new QToolButton(this); + button->setDefaultAction(actionBack); + QSizePolicy policy(QSizePolicy::MinimumExpanding, QSizePolicy::Preferred); + button->setSizePolicy(policy); + gridLayout->addWidget(button, 0, 0, 1, 2); + connect(button, SIGNAL(triggered(QAction *)), this, SLOT(back())); -void CadToolBarModify::modifyTrim() -{ - if (cadToolBar != NULL && actionHandler != NULL) - actionHandler->slotModifyTrim(); -} + gridLayout->addWidget(CreateToolButton(actionModifyMove), 1, 0, 1, 1); + gridLayout->addWidget(CreateToolButton(actionModifyRotate), 1, 1, 1, 1); + gridLayout->addWidget(CreateToolButton(actionModifyScale), 2, 0, 1, 1); + gridLayout->addWidget(CreateToolButton(actionModifyMirror), 2, 1, 1, 1); + gridLayout->addWidget(CreateToolButton(actionModifyMoveRotate), 3, 0, 1, 1); + gridLayout->addWidget(CreateToolButton(actionModifyRotate2), 3, 1, 1, 1); -void CadToolBarModify::modifyTrim2() -{ - if (cadToolBar != NULL && actionHandler != NULL) - actionHandler->slotModifyTrim2(); -} + gridLayout->addWidget(CreateToolButton(actionModifyTrim), 5, 0, 1, 1); + gridLayout->addWidget(CreateToolButton(actionModifyTrim2), 5, 1, 1, 1); + gridLayout->addWidget(CreateToolButton(actionModifyTrimAmount), 6, 0, 1, 1); -void CadToolBarModify::modifyTrimAmount() -{ - if (cadToolBar != NULL && actionHandler != NULL) - actionHandler->slotModifyTrimAmount(); -} + gridLayout->addWidget(CreateToolButton(actionModifyBevel), 8, 0, 1, 1); + gridLayout->addWidget(CreateToolButton(actionModifyRound), 8, 1, 1, 1); -void CadToolBarModify::modifyCut() -{ - if (cadToolBar != NULL && actionHandler != NULL) - actionHandler->slotModifyCut(); -} + gridLayout->addWidget(CreateToolButton(actionModifyCut), 10, 0, 1, 1); + gridLayout->addWidget(CreateToolButton(actionModifyStretch), 10, 1, 1, 1); -void CadToolBarModify::modifyBevel() -{ - if (cadToolBar != NULL && actionHandler != NULL) - actionHandler->slotModifyBevel(); -} + gridLayout->addWidget(CreateToolButton(actionModifyEntity), 12, 0, 1, 1); + gridLayout->addWidget(CreateToolButton(actionModifyAttributes), 12, 1, 1, 1); + gridLayout->addWidget(CreateToolButton(actionModifyDelete), 13, 0, 1, 1); + gridLayout->addWidget(CreateToolButton(actionModifyExplode), 13, 1, 1, 1); -void CadToolBarModify::modifyRound() -{ - if (cadToolBar != NULL && actionHandler != NULL) - actionHandler->slotModifyRound(); + gridLayout->addWidget(CreateToolButton(actionModifyExplodeText), 15, 0, 1, 1); +#warning "!!! actionModifyEntityText is missing !!!" +//EntityText +// gridLayout->addWidget(CreateToolButton(actionModifyEntityText), 15, 1, 1, 1); } -void CadToolBarModify::modifyEntity() -{ - if (cadToolBar != NULL && actionHandler != NULL) - actionHandler->slotModifyEntity(); -} - -void CadToolBarModify::modifyDelete() -{ - if (cadToolBar != NULL && actionHandler != NULL) - actionHandler->slotModifyDelete(); -} - -void CadToolBarModify::modifyAttributes() -{ - if (cadToolBar != NULL && actionHandler != NULL) - actionHandler->slotModifyAttributes(); -} - -void CadToolBarModify::modifyStretch() +CadToolBarModify::~CadToolBarModify() { - if (cadToolBar != NULL && actionHandler != NULL) - actionHandler->slotModifyStretch(); } -void CadToolBarModify::modifyExplode() +void CadToolBarModify::back() { - if (cadToolBar != NULL && actionHandler != NULL) - actionHandler->slotBlocksExplode(); + cadToolBar->back(); } -void CadToolBarModify::modifyExplodeText() +QToolButton * CadToolBarModify::CreateToolButton(QAction * action) { - if (cadToolBar != NULL && actionHandler != NULL) - actionHandler->slotModifyExplodeText(); -} + QToolButton * button = new QToolButton(this); + button->setDefaultAction(action); + button->setIconSize(QSize(18, 18)); -void CadToolBarModify::back() -{ - if (cadToolBar != NULL) - cadToolBar->back(); + return button; } - diff --git a/src/forms/cadtoolbarmodify.h b/src/forms/cadtoolbarmodify.h index 4a78abe..a42133a 100644 --- a/src/forms/cadtoolbarmodify.h +++ b/src/forms/cadtoolbarmodify.h @@ -1,49 +1,26 @@ #ifndef __CADTOOLBARMODIFY_H__ #define __CADTOOLBARMODIFY_H__ -#include "ui_cadtoolbarmodify.h" +#include class CadToolBar; -class QG_ActionHandler; class CadToolBarModify: public QWidget { Q_OBJECT public: - CadToolBarModify(QWidget* parent = 0, Qt::WindowFlags flags = 0); + CadToolBarModify(CadToolBar * parent, Qt::WindowFlags flags = 0); ~CadToolBarModify(); - public slots: - void mousePressEvent(QMouseEvent * e); - void contextMenuEvent(QContextMenuEvent * e); - void setCadToolBar(CadToolBar * tb); - void modifyMove(); - void modifyRotate(); - void modifyScale(); - void modifyMirror(); - void modifyMoveRotate(); - void modifyRotate2(); - void modifyTrim(); - void modifyTrim2(); - void modifyTrimAmount(); - void modifyCut(); - void modifyBevel(); - void modifyRound(); - void modifyEntity(); - void modifyDelete(); - void modifyAttributes(); - void modifyStretch(); - void modifyExplode(); - void modifyExplodeText(); + protected slots: void back(); + private: + QToolButton * CreateToolButton(QAction * action); + protected: - QG_ActionHandler * actionHandler; CadToolBar * cadToolBar; - - private: - Ui::CadToolBarModify ui; }; #endif // __CADTOOLBARMODIFY_H__ diff --git a/src/forms/cadtoolbarpoints.cpp b/src/forms/cadtoolbarpoints.cpp index 89758ab..6c06233 100644 --- a/src/forms/cadtoolbarpoints.cpp +++ b/src/forms/cadtoolbarpoints.cpp @@ -15,51 +15,40 @@ #include "cadtoolbarpoints.h" #include "cadtoolbar.h" -#include "qg_actionhandler.h" -#include "rs_debug.h" +#include "createqtactions.h" -CadToolBarPoints::CadToolBarPoints(QWidget * parent/*= 0*/, Qt::WindowFlags flags/*= 0*/): - QWidget(parent, flags), actionHandler(NULL), cadToolBar(NULL) +CadToolBarPoints::CadToolBarPoints(CadToolBar * parent, Qt::WindowFlags flags/*= 0*/): + QWidget((QWidget *)parent, flags), cadToolBar(parent) { - ui.setupUi(this); + QGridLayout * gridLayout = new QGridLayout(this); + gridLayout->setSpacing(0); + gridLayout->setContentsMargins(0, 0, 0, 0); + + QAction * actionBack = new QAction(QIcon(":/res/qg_back"), tr("Back"), this); + QToolButton * button = new QToolButton(this); + button->setDefaultAction(actionBack); + QSizePolicy policy(QSizePolicy::MinimumExpanding, QSizePolicy::Preferred); + button->setSizePolicy(policy); + gridLayout->addWidget(button, 0, 0, 1, 2); + connect(button, SIGNAL(triggered(QAction *)), this, SLOT(back())); + + gridLayout->addWidget(CreateToolButton(actionDrawPoint), 1, 0, 1, 1); } CadToolBarPoints::~CadToolBarPoints() { } -void CadToolBarPoints::mousePressEvent(QMouseEvent * e) -{ - if (e->button() == Qt::RightButton && cadToolBar != NULL) - { - cadToolBar->back(); - e->accept(); - } -} - -void CadToolBarPoints::contextMenuEvent(QContextMenuEvent * e) -{ - e->accept(); -} - -void CadToolBarPoints::setCadToolBar(CadToolBar * tb) +void CadToolBarPoints::back() { - cadToolBar = tb; - - if (tb != NULL) - actionHandler = tb->getActionHandler(); - else - RS_DEBUG->print(RS_Debug::D_ERROR, "QG_CadToolBarPoints::setCadToolBar(): No valid toolbar set."); + cadToolBar->back(); } -void CadToolBarPoints::drawPoint() +QToolButton * CadToolBarPoints::CreateToolButton(QAction * action) { - if (cadToolBar != NULL && actionHandler != NULL) - actionHandler->slotDrawPoint(); -} + QToolButton * button = new QToolButton(this); + button->setDefaultAction(action); + button->setIconSize(QSize(18, 18)); -void CadToolBarPoints::back() -{ - if (cadToolBar != NULL) - cadToolBar->back(); + return button; } diff --git a/src/forms/cadtoolbarpoints.h b/src/forms/cadtoolbarpoints.h index 597f197..1dd8b99 100644 --- a/src/forms/cadtoolbarpoints.h +++ b/src/forms/cadtoolbarpoints.h @@ -1,32 +1,26 @@ #ifndef __CADTOOLBARPOINTS_H__ #define __CADTOOLBARPOINTS_H__ -#include "ui_cadtoolbarpoints.h" +#include class CadToolBar; -class QG_ActionHandler; class CadToolBarPoints: public QWidget { Q_OBJECT public: - CadToolBarPoints(QWidget * parent = 0, Qt::WindowFlags flags = 0); + CadToolBarPoints(CadToolBar * parent, Qt::WindowFlags flags = 0); ~CadToolBarPoints(); - public slots: - void mousePressEvent(QMouseEvent * e); - void contextMenuEvent(QContextMenuEvent * e); - void setCadToolBar(CadToolBar * tb); - void drawPoint(); + protected slots: void back(); + private: + QToolButton * CreateToolButton(QAction * action); + protected: - QG_ActionHandler * actionHandler; CadToolBar * cadToolBar; - - private: - Ui::CadToolBarPoints ui; }; #endif // __CADTOOLBARPOINTS_H__ diff --git a/src/forms/cadtoolbarpolylines.cpp b/src/forms/cadtoolbarpolylines.cpp index 17ab7bc..6ff2ea1 100644 --- a/src/forms/cadtoolbarpolylines.cpp +++ b/src/forms/cadtoolbarpolylines.cpp @@ -15,81 +15,46 @@ #include "cadtoolbarpolylines.h" #include "cadtoolbar.h" -#include "qg_actionhandler.h" -#include "rs_debug.h" +#include "createqtactions.h" -CadToolBarPolylines::CadToolBarPolylines(QWidget * parent/*= 0*/, Qt::WindowFlags flags/*= 0*/): - QWidget(parent, flags), actionHandler(NULL), cadToolBar(NULL) +CadToolBarPolylines::CadToolBarPolylines(CadToolBar * parent, Qt::WindowFlags flags/*= 0*/): + QWidget((QWidget *)parent, flags), cadToolBar(parent) { - ui.setupUi(this); -} - -CadToolBarPolylines::~CadToolBarPolylines() -{ -} - -void CadToolBarPolylines::mousePressEvent(QMouseEvent * e) -{ - if (e->button() == Qt::RightButton && cadToolBar != NULL) - { - cadToolBar->back(); - e->accept(); - } -} - -void CadToolBarPolylines::contextMenuEvent(QContextMenuEvent * e) -{ - e->accept(); -} - -void CadToolBarPolylines::setCadToolBar(CadToolBar * tb) -{ - cadToolBar = tb; + QGridLayout * gridLayout = new QGridLayout(this); + gridLayout->setSpacing(0); + gridLayout->setContentsMargins(0, 0, 0, 0); - if (tb != NULL) - actionHandler = tb->getActionHandler(); - else - RS_DEBUG->print(RS_Debug::D_ERROR, "CadToolBarPolylines::setCadToolBar(): No valid toolbar set."); -} + QAction * actionBack = new QAction(QIcon(":/res/qg_back"), tr("Back"), this); + QToolButton * button = new QToolButton(this); + button->setDefaultAction(actionBack); + QSizePolicy policy(QSizePolicy::MinimumExpanding, QSizePolicy::Preferred); + button->setSizePolicy(policy); + gridLayout->addWidget(button, 0, 0, 1, 2); + connect(button, SIGNAL(triggered(QAction *)), this, SLOT(back())); -void CadToolBarPolylines::drawPolyline() -{ - if (cadToolBar != NULL && actionHandler != NULL) - actionHandler->slotDrawPolyline(); + gridLayout->addWidget(CreateToolButton(actionDrawPolyline), 1, 0, 1, 1); + gridLayout->addWidget(CreateToolButton(actionPolylineAdd), 1, 1, 1, 1); +#warning "!!! Missing actionPolylineAppend !!!" +// gridLayout->addWidget(CreateToolButton(actionPolylineAppend), 2, 0, 1, 1); + gridLayout->addWidget(CreateToolButton(actionPolylineDel), 2, 1, 1, 1); + gridLayout->addWidget(CreateToolButton(actionPolylineDelBetween), 3, 0, 1, 1); + gridLayout->addWidget(CreateToolButton(actionPolylineTrim), 3, 1, 1, 1); } -void CadToolBarPolylines::polylineAdd() -{ - if (cadToolBar != NULL && actionHandler != NULL) - actionHandler->slotPolylineAdd(); -} - -void CadToolBarPolylines::polylineAppend() -{ - if (cadToolBar != NULL && actionHandler != NULL) - actionHandler->slotPolylineAppend(); -} - -void CadToolBarPolylines::polylineDel() +CadToolBarPolylines::~CadToolBarPolylines() { - if (cadToolBar != NULL && actionHandler != NULL) - actionHandler->slotPolylineDel(); } -void CadToolBarPolylines::polylineDelBetween() +void CadToolBarPolylines::back() { - if (cadToolBar != NULL && actionHandler != NULL) - actionHandler->slotPolylineDelBetween(); + cadToolBar->back(); } -void CadToolBarPolylines::polylineTrim() +QToolButton * CadToolBarPolylines::CreateToolButton(QAction * action) { - if (cadToolBar != NULL && actionHandler != NULL) - actionHandler->slotPolylineTrim(); -} + QToolButton * button = new QToolButton(this); + button->setDefaultAction(action); + button->setIconSize(QSize(18, 18)); -void CadToolBarPolylines::back() -{ - if (cadToolBar != NULL) - cadToolBar->back(); + return button; } diff --git a/src/forms/cadtoolbarpolylines.h b/src/forms/cadtoolbarpolylines.h index 0814dea..1ae2265 100644 --- a/src/forms/cadtoolbarpolylines.h +++ b/src/forms/cadtoolbarpolylines.h @@ -1,37 +1,26 @@ #ifndef __CADTOOLBARPOLYLINES_H__ #define __CADTOOLBARPOLYLINES_H__ -#include "ui_cadtoolbarpolylines.h" +#include class CadToolBar; -class QG_ActionHandler; class CadToolBarPolylines: public QWidget { Q_OBJECT public: - CadToolBarPolylines(QWidget * parent = 0, Qt::WindowFlags flags = 0); + CadToolBarPolylines(CadToolBar * parent, Qt::WindowFlags flags = 0); ~CadToolBarPolylines(); - public slots: - void mousePressEvent(QMouseEvent * e); - void contextMenuEvent(QContextMenuEvent * e); - void setCadToolBar(CadToolBar * tb); - void drawPolyline(); - void polylineAdd(); - void polylineAppend(); - void polylineDel(); - void polylineDelBetween(); - void polylineTrim(); + protected slots: void back(); + private: + QToolButton * CreateToolButton(QAction * action); + protected: - QG_ActionHandler * actionHandler; CadToolBar * cadToolBar; - - private: - Ui::CadToolBarPolylines ui; }; #endif // __CADTOOLBARPOLYLINES_H__ diff --git a/src/forms/cadtoolbarselect.cpp b/src/forms/cadtoolbarselect.cpp index 14fa5dd..27eee4e 100644 --- a/src/forms/cadtoolbarselect.cpp +++ b/src/forms/cadtoolbarselect.cpp @@ -14,107 +14,53 @@ #include "cadtoolbarselect.h" -#include "cadtoolbar.h" #include "qg_actionhandler.h" #include "rs_actioninterface.h" -#include "rs_debug.h" +#include "cadtoolbar.h" +#include "createqtactions.h" -CadToolBarSelect::CadToolBarSelect(QWidget * parent/*= 0*/, Qt::WindowFlags flags/*= 0*/): - QWidget(parent, flags), actionHandler(NULL), cadToolBar(NULL), selectAction(NULL), - nextAction(-1) +CadToolBarSelect::CadToolBarSelect(CadToolBar * parent, Qt::WindowFlags flags/*= 0*/): + QWidget((QWidget *)parent, flags), cadToolBar(parent), actionHandler(NULL), + selectAction(NULL), nextAction(-1) { - ui.setupUi(this); + actionHandler = cadToolBar->getActionHandler(); + + QGridLayout * gridLayout = new QGridLayout(this); + gridLayout->setSpacing(0); + gridLayout->setContentsMargins(0, 0, 0, 0); + + QAction * actionBack = new QAction(QIcon(":/res/qg_back"), tr("Back"), this); + QToolButton * button = new QToolButton(this); + button->setDefaultAction(actionBack); + QSizePolicy policy(QSizePolicy::MinimumExpanding, QSizePolicy::Preferred); + button->setSizePolicy(policy); + gridLayout->addWidget(button, 0, 0, 1, 2); + connect(button, SIGNAL(clicked()), this, SLOT(back())); + + gridLayout->addWidget(CreateToolButton(actionDeselectAll), 1, 0, 1, 1); + gridLayout->addWidget(CreateToolButton(actionSelectAll), 1, 1, 1, 1); + gridLayout->addWidget(CreateToolButton(actionSelectSingle), 2, 0, 1, 1); + gridLayout->addWidget(CreateToolButton(actionSelectContour), 2, 1, 1, 1); + gridLayout->addWidget(CreateToolButton(actionDeselectWindow), 3, 0, 1, 1); + gridLayout->addWidget(CreateToolButton(actionSelectWindow), 3, 1, 1, 1); + gridLayout->addWidget(CreateToolButton(actionDeselectIntersected), 4, 0, 1, 1); + gridLayout->addWidget(CreateToolButton(actionSelectIntersected), 4, 1, 1, 1); + gridLayout->addWidget(CreateToolButton(actionSelectInvert), 5, 0, 1, 1); + gridLayout->addWidget(CreateToolButton(actionSelectLayer), 5, 1, 1, 1); + + QAction * actionDoit = new QAction(QIcon(":/res/qg_forward"), tr("Forward"), this); + doit = new QToolButton(this); + doit->setDefaultAction(actionDoit); + doit->setSizePolicy(policy); + gridLayout->addWidget(doit, 6, 0, 1, 2); + connect(doit, SIGNAL(clicked()), this, SLOT(runNextAction())); } CadToolBarSelect::~CadToolBarSelect() { } -void CadToolBarSelect::mousePressEvent(QMouseEvent * e) -{ - if (e->button() == Qt::RightButton && cadToolBar != NULL) - { - cadToolBar->back(); - e->accept(); - } -} - -void CadToolBarSelect::contextMenuEvent(QContextMenuEvent *e) { - e->accept(); -} - -void CadToolBarSelect::setCadToolBar(CadToolBar * tb) -{ - cadToolBar = tb; - - if (tb != NULL) - actionHandler = tb->getActionHandler(); - //actionHandler->setCadToolBarSelect(this); - else - RS_DEBUG->print(RS_Debug::D_ERROR, "CadToolBarSelect::setCadToolBar(): No valid toolbar set."); -} - -void CadToolBarSelect::selectSingle() -{ - if (actionHandler!=NULL) { - actionHandler->slotSelectSingle(); - } -} - -void CadToolBarSelect::selectContour() { - if (actionHandler!=NULL) { - actionHandler->slotSelectContour(); - } -} - -void CadToolBarSelect::deselectAll() { - if (actionHandler!=NULL) { - actionHandler->slotDeselectAll(); - } -} - -void CadToolBarSelect::selectAll() { - if (actionHandler!=NULL) { - actionHandler->slotSelectAll(); - } -} - -void CadToolBarSelect::selectWindow() { - if (actionHandler!=NULL) { - actionHandler->slotSelectWindow(); - } -} - -void CadToolBarSelect::deselectWindow() { - if (actionHandler!=NULL) { - actionHandler->slotDeselectWindow(); - } -} - -void CadToolBarSelect::selectIntersected() { - if (actionHandler!=NULL) { - actionHandler->slotSelectIntersected(); - } -} - -void CadToolBarSelect::deselectIntersected() { - if (actionHandler!=NULL) { - actionHandler->slotDeselectIntersected(); - } -} - -void CadToolBarSelect::selectInvert() { - if (actionHandler!=NULL) { - actionHandler->slotSelectInvert(); - } -} - -void CadToolBarSelect::selectLayer() -{ - if (actionHandler!=NULL) - actionHandler->slotSelectLayer(); -} - +//hmm, should these three funcs be here??? void CadToolBarSelect::setSelectAction(RS_ActionInterface * selectAction) { this->selectAction = selectAction; @@ -125,21 +71,24 @@ void CadToolBarSelect::setNextAction(int nextAction) this->nextAction = nextAction; if (nextAction == -1) - ui.bDoit->hide(); + doit->hide(); else - ui.bDoit->show(); + doit->show(); } void CadToolBarSelect::runNextAction() { - if (selectAction != NULL) +//printf("CadToolBarSelect::runNextAction(): Entered function...\n"); + if (selectAction) { +//printf("CadToolBarSelect::runNextAction(): About to do selectAction...\n"); selectAction->finish(); selectAction = NULL; } if (nextAction != -1) { +//printf("CadToolBarSelect::runNextAction(): About to do nextAction...\n"); actionHandler->killSelectActions(); actionHandler->setCurrentAction((RS2::ActionType)nextAction); } @@ -147,6 +96,14 @@ void CadToolBarSelect::runNextAction() void CadToolBarSelect::back() { - if (cadToolBar != NULL) - cadToolBar->back(); + cadToolBar->back(); +} + +QToolButton * CadToolBarSelect::CreateToolButton(QAction * action) +{ + QToolButton * button = new QToolButton(this); + button->setDefaultAction(action); + button->setIconSize(QSize(18, 18)); + + return button; } diff --git a/src/forms/cadtoolbarselect.h b/src/forms/cadtoolbarselect.h index 6ab0298..434ce94 100644 --- a/src/forms/cadtoolbarselect.h +++ b/src/forms/cadtoolbarselect.h @@ -1,7 +1,7 @@ #ifndef __CADTOOLBARSELECT_H__ #define __CADTOOLBARSELECT_H__ -#include "ui_cadtoolbarselect.h" +#include class CadToolBar; class QG_ActionHandler; @@ -12,38 +12,29 @@ class CadToolBarSelect: public QWidget Q_OBJECT public: - CadToolBarSelect(QWidget * parent = 0, Qt::WindowFlags flags = 0); + CadToolBarSelect(CadToolBar * parent, Qt::WindowFlags flags = 0); ~CadToolBarSelect(); + void setSelectAction(RS_ActionInterface * selectAction); + void setNextAction(int nextAction); + public slots: - virtual void mousePressEvent(QMouseEvent * e); - virtual void contextMenuEvent(QContextMenuEvent * e); - virtual void setCadToolBar(CadToolBar * tb); - virtual void selectSingle(); - virtual void selectContour(); - virtual void deselectAll(); - virtual void selectAll(); - virtual void selectWindow(); - virtual void deselectWindow(); - virtual void selectIntersected(); - virtual void deselectIntersected(); - virtual void selectInvert(); - virtual void selectLayer(); - virtual void setSelectAction(RS_ActionInterface * selectAction); - virtual void setNextAction(int nextAction); - virtual void runNextAction(); - virtual void back(); + void runNextAction(); + + protected slots: + void back(); + + private: + QToolButton * CreateToolButton(QAction * action); protected: - QG_ActionHandler * actionHandler; CadToolBar * cadToolBar; private: + QToolButton * doit; + QG_ActionHandler * actionHandler; RS_ActionInterface * selectAction; int nextAction; - - private: - Ui::CadToolBarSelect ui; }; #endif // __CADTOOLBARSELECT_H__ diff --git a/src/forms/cadtoolbarsnap.cpp b/src/forms/cadtoolbarsnap.cpp index 9acce48..ff7fa81 100644 --- a/src/forms/cadtoolbarsnap.cpp +++ b/src/forms/cadtoolbarsnap.cpp @@ -14,6 +14,7 @@ #include "cadtoolbarsnap.h" +#if 0 #include "cadtoolbar.h" #include "qg_actionhandler.h" #include "rs_debug.h" @@ -291,3 +292,59 @@ void CadToolBarSnap::back() if (cadToolBar != NULL) cadToolBar->back(); } +#else +#include "cadtoolbar.h" +#include "createqtactions.h" + +CadToolBarSnap::CadToolBarSnap(CadToolBar * parent, Qt::WindowFlags flags/*= 0*/): + QWidget((QWidget *)parent, flags), cadToolBar(parent) +{ + QGridLayout * gridLayout = new QGridLayout(this); + gridLayout->setSpacing(0); + gridLayout->setContentsMargins(0, 0, 0, 0); + + QAction * actionBack = new QAction(QIcon(":/res/qg_back"), tr("Back"), this); + QToolButton * button = new QToolButton(this); + button->setDefaultAction(actionBack); + QSizePolicy policy(QSizePolicy::MinimumExpanding, QSizePolicy::Preferred); + button->setSizePolicy(policy); + gridLayout->addWidget(button, 0, 0, 1, 2); + connect(button, SIGNAL(triggered(QAction *)), this, SLOT(back())); + + gridLayout->addWidget(CreateToolButton(actionSnapFree), 1, 0, 1, 1); + gridLayout->addWidget(CreateToolButton(actionSnapGrid), 1, 1, 1, 1); + gridLayout->addWidget(CreateToolButton(actionSnapEndpoint), 2, 0, 1, 1); + gridLayout->addWidget(CreateToolButton(actionSnapOnEntity), 2, 1, 1, 1); + gridLayout->addWidget(CreateToolButton(actionSnapCenter), 3, 0, 1, 1); + gridLayout->addWidget(CreateToolButton(actionSnapMiddle), 3, 1, 1, 1); + gridLayout->addWidget(CreateToolButton(actionSnapDist), 4, 0, 1, 1); + gridLayout->addWidget(CreateToolButton(actionSnapIntersection), 4, 1, 1, 1); + gridLayout->addWidget(CreateToolButton(actionSnapIntersectionManual), 5, 0, 1, 1); + + gridLayout->addWidget(CreateToolButton(actionRestrictNothing), 7, 0, 1, 1); + gridLayout->addWidget(CreateToolButton(actionRestrictOrthogonal), 7, 1, 1, 1); + gridLayout->addWidget(CreateToolButton(actionRestrictHorizontal), 8, 0, 1, 1); + gridLayout->addWidget(CreateToolButton(actionRestrictVertical), 8, 1, 1, 1); + + gridLayout->addWidget(CreateToolButton(actionSetRelativeZero), 10, 0, 1, 1); + gridLayout->addWidget(CreateToolButton(actionLockRelativeZero), 10, 1, 1, 1); +} + +CadToolBarSnap::~CadToolBarSnap() +{ +} + +void CadToolBarSnap::back() +{ + cadToolBar->back(); +} + +QToolButton * CadToolBarSnap::CreateToolButton(QAction * action) +{ + QToolButton * button = new QToolButton(this); + button->setDefaultAction(action); + button->setIconSize(QSize(18, 18)); + + return button; +} +#endif diff --git a/src/forms/cadtoolbarsnap.h b/src/forms/cadtoolbarsnap.h index b706293..2e0dfa0 100644 --- a/src/forms/cadtoolbarsnap.h +++ b/src/forms/cadtoolbarsnap.h @@ -1,6 +1,7 @@ #ifndef __CADTOOLBARSNAP_H__ #define __CADTOOLBARSNAP_H__ +#if 0 #include "ui_cadtoolbarsnap.h" class CadToolBar; @@ -46,5 +47,28 @@ class CadToolBarSnap: public QWidget private: Ui::CadToolBarSnap ui; }; +#else +#include + +class CadToolBar; + +class CadToolBarSnap: public QWidget +{ + Q_OBJECT + + public: + CadToolBarSnap(CadToolBar * parent, Qt::WindowFlags flags = 0); + ~CadToolBarSnap(); + + protected slots: + void back(); + + private: + QToolButton * CreateToolButton(QAction * action); + + protected: + CadToolBar * cadToolBar; +}; +#endif #endif // __CADTOOLBARSNAP_H__ diff --git a/src/forms/cadtoolbarsplines.cpp b/src/forms/cadtoolbarsplines.cpp index 6b6aff7..2ad19b0 100644 --- a/src/forms/cadtoolbarsplines.cpp +++ b/src/forms/cadtoolbarsplines.cpp @@ -15,51 +15,40 @@ #include "cadtoolbarsplines.h" #include "cadtoolbar.h" -#include "qg_actionhandler.h" -#include "rs_debug.h" +#include "createqtactions.h" -CadToolBarSplines::CadToolBarSplines(QWidget * parent/*= 0*/, Qt::WindowFlags flags/*= 0*/): - QWidget(parent, flags), actionHandler(NULL), cadToolBar(NULL) +CadToolBarSplines::CadToolBarSplines(CadToolBar * parent, Qt::WindowFlags flags/*= 0*/): + QWidget((QWidget *)parent, flags), cadToolBar(parent) { - ui.setupUi(this); + QGridLayout * gridLayout = new QGridLayout(this); + gridLayout->setSpacing(0); + gridLayout->setContentsMargins(0, 0, 0, 0); + + QAction * actionBack = new QAction(QIcon(":/res/qg_back"), tr("Back"), this); + QToolButton * button = new QToolButton(this); + button->setDefaultAction(actionBack); + QSizePolicy policy(QSizePolicy::MinimumExpanding, QSizePolicy::Preferred); + button->setSizePolicy(policy); + gridLayout->addWidget(button, 0, 0, 1, 2); + connect(button, SIGNAL(triggered(QAction *)), this, SLOT(back())); + + gridLayout->addWidget(CreateToolButton(actionDrawSpline), 1, 0, 1, 1); } CadToolBarSplines::~CadToolBarSplines() { } -void CadToolBarSplines::mousePressEvent(QMouseEvent * e) -{ - if (e->button() == Qt::RightButton && cadToolBar != NULL) - { - cadToolBar->back(); - e->accept(); - } -} - -void CadToolBarSplines::contextMenuEvent(QContextMenuEvent * e) -{ - e->accept(); -} - -void CadToolBarSplines::setCadToolBar(CadToolBar * tb) +void CadToolBarSplines::back() { - cadToolBar = tb; - - if (tb != NULL) - actionHandler = tb->getActionHandler(); - else - RS_DEBUG->print(RS_Debug::D_ERROR, "CadToolBarSplines::setCadToolBar(): No valid toolbar set."); + cadToolBar->back(); } -void CadToolBarSplines::drawSpline() +QToolButton * CadToolBarSplines::CreateToolButton(QAction * action) { - if (cadToolBar != NULL && actionHandler != NULL) - actionHandler->slotDrawSpline(); -} + QToolButton * button = new QToolButton(this); + button->setDefaultAction(action); + button->setIconSize(QSize(18, 18)); -void CadToolBarSplines::back() -{ - if (cadToolBar != NULL) - cadToolBar->back(); + return button; } diff --git a/src/forms/cadtoolbarsplines.h b/src/forms/cadtoolbarsplines.h index aeaf8b8..1c4e1ee 100644 --- a/src/forms/cadtoolbarsplines.h +++ b/src/forms/cadtoolbarsplines.h @@ -1,32 +1,26 @@ #ifndef __CADTOOLBARSPLINES_H__ #define __CADTOOLBARSPLINES_H__ -#include "ui_cadtoolbarsplines.h" +#include class CadToolBar; -class QG_ActionHandler; class CadToolBarSplines: public QWidget { Q_OBJECT public: - CadToolBarSplines(QWidget * parent = 0, Qt::WindowFlags flags = 0); + CadToolBarSplines(CadToolBar * parent, Qt::WindowFlags flags = 0); ~CadToolBarSplines(); - public slots: - void mousePressEvent(QMouseEvent * e); - void contextMenuEvent(QContextMenuEvent * e); - void setCadToolBar(CadToolBar * tb); - void drawSpline(); + protected slots: void back(); + private: + QToolButton * CreateToolButton(QAction * action); + protected: - QG_ActionHandler * actionHandler; CadToolBar * cadToolBar; - - private: - Ui::CadToolBarSplines ui; }; #endif // __CADTOOLBARSPLINES_H__ diff --git a/src/forms/res/architektonas.qrc b/src/forms/res/architektonas.qrc index 8f82e28..4aa18a6 100644 --- a/src/forms/res/architektonas.qrc +++ b/src/forms/res/architektonas.qrc @@ -207,15 +207,6 @@ qg_restrictnothing.xpm qg_restrictorthogonal.xpm qg_restrictvertical.xpm - qg_selectall.xpm - qg_selectcontour.xpm - qg_selectdoubles.xpm - qg_selectinters.xpm - qg_selectinvert.xpm - qg_selectlayer.xpm - qg_selectnothing.xpm - qg_selectsingle.xpm - qg_selectwindow.xpm qg_snapcenter.xpm qg_snapdist.xpm qg_snapendpoint.xpm @@ -230,9 +221,17 @@ qg_tolerance2.xpm qg_widthbox.xpm redo2.png + select-all.xpm + select-contour.xpm + select-intersection.xpm + select-invert.xpm + select-layer.xpm + select-none.xpm + select-nonintersection.xpm + select-nonwindow.xpm + select-single.xpm + select-window.xpm splash.png - splash_camexpert.xpm - splash_qcad.xpm undo2.png viewdraft.png viewdraft.xpm diff --git a/src/forms/res/qg_selectall.xpm b/src/forms/res/qg_selectall.xpm deleted file mode 100644 index 9d37a55..0000000 --- a/src/forms/res/qg_selectall.xpm +++ /dev/null @@ -1,23 +0,0 @@ -/* XPM */ -static const char *qg_selectall_xpm[] = { -"18 16 2 1", -"$ c None", -"% c #ff0000", -"$$$$$%%%%%%%%%%%%%", -"$$$%%$$$$$$$$$$$$%", -"$$%$$$$$$$$$$$$$$%", -"$%$$$$$$$$$$$$$$$%", -"$%$$$%%%$$$$$$$$$%", -"%$$$%$$$%$$$$$$$$%", -"%$$$%$$$%$$$$%$$$%", -"%$$$%$$$%$$$%%$$$%", -"%$$$$%%%$$$%$%$$$%", -"%$$$$$$$$$%$$%$$$%", -"%$$$$$$$$%$$$%$$$%", -"%%%%%%$$%%%%%%$$$%", -"$$$$$%$$$$$$$$$$$%", -"$$$$$%$$$$$$$$$$$%", -"$$$$$%$$$$$$$$$$$%", -"$$$$$%%%%%%%%%%%%%" -}; - diff --git a/src/forms/res/qg_selectcontour.xpm b/src/forms/res/qg_selectcontour.xpm deleted file mode 100644 index 3cd5752..0000000 --- a/src/forms/res/qg_selectcontour.xpm +++ /dev/null @@ -1,24 +0,0 @@ -/* XPM */ -static const char *qg_selectcontour_xpm[] = { -"18 16 3 1", -"$ c None", -"% c #ff0000", -"& c #000000", -"$$$$$%%%%%%%%%%%%%", -"$$$%%$$$$$$$$$$$$%", -"$$%$$$$$$$$$$$$$$%", -"$%$$$$$$$$$$$$$$$%", -"$%$$$&&&$$$$$$$$$%", -"%$$$&$$$&$$$$$$$$%", -"%$$$&$$$&$$$$&$$$%", -"%$$$&$$$&$$$&&$$$%", -"%$$$$&&&$$$&$&$$$%", -"%$$$$$$$$$&$$&$$$%", -"%$$$$$$$$&$$$&$$$%", -"%%%%%%$$&&&&&&$$$%", -"$$$$$%$$$$$$$$$$$%", -"$$$$$%$$$$$$$$$$$%", -"$$$$$%$$$$$$$$$$$%", -"$$$$$%%%%%%%%%%%%%" -}; - diff --git a/src/forms/res/qg_selectdoubles.xpm b/src/forms/res/qg_selectdoubles.xpm deleted file mode 100644 index bc31700..0000000 --- a/src/forms/res/qg_selectdoubles.xpm +++ /dev/null @@ -1,24 +0,0 @@ -/* XPM */ -static const char *qg_selectdoubles_xpm[] = { -"18 16 3 1", -"$ c None", -"% c #000000", -"& c #ff0000", -"$$$$$%%%%%%%%%%%%%", -"$$$%%&&$$$$$$$$$&%", -"$$%&&$$$$$$$$$$$&%", -"$%&$$%%$$$$$$$$$&%", -"$%&$%$$%$$$$$$$$&%", -"%&$%$$$$%$$$$&$$&%", -"%&$%$$$$%$$$&%$$&%", -"%$$$%$$%$$$&%%$$&%", -"%$$$$%%$$$&%$%$$&%", -"%$$$$$$$$&%$$%$$&%", -"%$$$$$$$&%$$$%$$&%", -"%$$$$$$&%%%%%%$$&%", -"%%%%%%$$$$$$$$$$&%", -"$$$$$%$$$$$$$$$$&%", -"$$$$$%$$$$$$$$$$&%", -"$$$$$%%%%%%%%%%%%%" -}; - diff --git a/src/forms/res/qg_selectinters.xpm b/src/forms/res/qg_selectinters.xpm deleted file mode 100644 index 3dbcfaf..0000000 --- a/src/forms/res/qg_selectinters.xpm +++ /dev/null @@ -1,27 +0,0 @@ -/* XPM */ -static const char *qg_selectinters_xpm[] = { -"15 18 4 1", -"$ c None", -"% c #000000", -"& c #ff0000", -"' c #0000ff", -"$$$$$$$$$%$$$$$", -"$$$$$$$$%%%$$$$", -"$$$$&&&&&'&&&&&", -"$$%%$$$$$'$$$$%", -"$%$$$$$$$'$$$$%", -"$%$$%%%$$'$$$$%", -"%$$%$$$%$'$$$$%", -"%$$%$$$%$'$$$$%", -"%$$%$$$%$'$&$$%", -"%$$$%%%$$'&%$$%", -"%$$$$$$$$'$%$$%", -"%$$$$$$$&'$%$$%", -"%%%%%$$&&'&&$$%", -"$$$$%$$$$'$$$$%", -"$$$$%$$$$'$$$$%", -"$$$$&&&&&'&&&&&", -"$$$$$$$$%%%$$$$", -"$$$$$$$$$%$$$$$" -}; - diff --git a/src/forms/res/qg_selectinvert.xpm b/src/forms/res/qg_selectinvert.xpm deleted file mode 100644 index 5e6f17f..0000000 --- a/src/forms/res/qg_selectinvert.xpm +++ /dev/null @@ -1,25 +0,0 @@ -/* XPM */ -static const char *qg_selectinvert_xpm[] = { -"18 16 4 1", -"$ c None", -"% c #0000ff", -"& c #000000", -"' c #ff0000", -"%$$$$'''''''''''$$", -"$%$''$$$$$$$$$$'$$", -"$$%$$$$$$$$$$$$'$$", -"$$'%$&&&$$$$$$$'$$", -"$&$$%%$$&$$$$$$'$$", -"$&$$'$%$&$$$$$$'$$", -"$&$$'$$%&$$$&$$'$$", -"$&$$$'''%$$&&$$'$$", -"$&$$$$$$$%&$&$$'$$", -"$&$$$$$$$'%$&$$'$$", -"$&&&&&$$'''%&$$'$$", -"$$$$$&$$$$$$%%$'$$", -"$$$$$&$$$$$$$$%'$$", -"$$$$$&&&&&&&&&&%$$", -"$$$$$$$$$$$$$$$$%$", -"$$$$$$$$$$$$$$$$$%" -}; - diff --git a/src/forms/res/qg_selectlayer.xpm b/src/forms/res/qg_selectlayer.xpm deleted file mode 100644 index 0dab69a..0000000 --- a/src/forms/res/qg_selectlayer.xpm +++ /dev/null @@ -1,28 +0,0 @@ -/* XPM */ -static const char *qg_selectlayer_xpm[] = { -"14 19 4 1", -"$ c None", -"% c #000000", -"& c #ffffff", -"' c #ff0000", -"$$$$$$$$%%$$$$", -"$$$$$$%%&%$$$$", -"$$$$%%&&&%$$%%", -"$$%%&&&%&%%%&%", -"%%&&&%%&%%&&&%", -"%&&%%&%%&&&&&%", -"%&%&%%&&&&'&&%", -"%&%&%&&&&&'&&%", -"%&%&%&&&&''&&%", -"%&%&%&&&&''&&%", -"%&%&%&&&'&'&&%", -"%&%%%&&&'&'&&%", -"%&%&%&&'&''&&%", -"%&&&%&&''&&&&%", -"%&&&%&'&&&&&%%", -"%&%%%&&&&&%%$$", -"%%$$%&&&%%$$$$", -"$$$$%&%%$$$$$$", -"$$$$%%$$$$$$$$" -}; - diff --git a/src/forms/res/qg_selectnothing.xpm b/src/forms/res/qg_selectnothing.xpm deleted file mode 100644 index e69d443..0000000 --- a/src/forms/res/qg_selectnothing.xpm +++ /dev/null @@ -1,23 +0,0 @@ -/* XPM */ -static const char *qg_selectnothing_xpm[] = { -"18 16 2 1", -"$ c None", -"% c #000000", -"$$$$$%%%%%%%%%%%%%", -"$$$%%$$$$$$$$$$$$%", -"$$%$$$$$$$$$$$$$$%", -"$%$$$$$$$$$$$$$$$%", -"$%$$$%%%$$$$$$$$$%", -"%$$$%$$$%$$$$$$$$%", -"%$$$%$$$%$$$$%$$$%", -"%$$$%$$$%$$$%%$$$%", -"%$$$$%%%$$$%$%$$$%", -"%$$$$$$$$$%$$%$$$%", -"%$$$$$$$$%$$$%$$$%", -"%%%%%%$$%%%%%%$$$%", -"$$$$$%$$$$$$$$$$$%", -"$$$$$%$$$$$$$$$$$%", -"$$$$$%$$$$$$$$$$$%", -"$$$$$%%%%%%%%%%%%%" -}; - diff --git a/src/forms/res/qg_selectsingle.xpm b/src/forms/res/qg_selectsingle.xpm deleted file mode 100644 index 7b13b41..0000000 --- a/src/forms/res/qg_selectsingle.xpm +++ /dev/null @@ -1,27 +0,0 @@ -/* XPM */ -static const char *qg_selectsingle_xpm[] = { -"15 18 4 1", -"$ c None", -"% c #000000", -"& c #ffffff", -"' c #ff0000", -"$$$$$$$$$$$$$$'", -"$$$$$$$$$$$$''$", -"$$$$$$$$$$''$$$", -"$$$$$$$$''$$$$$", -"$$$$$$$'$$$$$$$", -"$$$$$''%$$$$$$$", -"$$$''$$%%$$$$$$", -"$''$$$$%&%$$$$$", -"'$$$$$$%&&%$$$$", -"$$$$$$$%&&&%$$$", -"$$$$$$$%&&&&%$$", -"$$$$$$$%&&&%%%$", -"$$$$$$$%&%&%$$$", -"$$$$$$$%%%&&%$$", -"$$$$$$$%$$%&%$$", -"$$$$$$$$$$$%&%$", -"$$$$$$$$$$$%&%$", -"$$$$$$$$$$$$%$$" -}; - diff --git a/src/forms/res/qg_selectwindow.xpm b/src/forms/res/qg_selectwindow.xpm deleted file mode 100644 index 42d4e71..0000000 --- a/src/forms/res/qg_selectwindow.xpm +++ /dev/null @@ -1,25 +0,0 @@ -/* XPM */ -static const char *qg_selectwindow_xpm[] = { -"18 16 4 1", -"$ c None", -"% c #000000", -"& c #0000ff", -"' c #ff0000", -"$%$$$$$$$$$$$$$$$$", -"%%%&&&&&&&&&&&&&&$", -"$%$$$$$$$$$$$$$$&$", -"$&$$$$$$$$$$$$$$&$", -"$&$$$'''$$$$$$$$&$", -"$&$$'$$$'$$$$$$$&$", -"$&$$'$$$'$$$$'$$&$", -"$&$$'$$$'$$$''$$&$", -"$&$$$'''$$$'$'$$&$", -"$&$$$$$$$$'$$'$$&$", -"$&$$$$$$$'$$$'$$&$", -"$&$$$$$$''''''$$&$", -"$&$$$$$$$$$$$$$$&$", -"$&$$$$$$$$$$$$$$%$", -"$&&&&&&&&&&&&&&%%%", -"$$$$$$$$$$$$$$$$%$" -}; - diff --git a/src/forms/res/select-all.xpm b/src/forms/res/select-all.xpm new file mode 100644 index 0000000..fc74cad --- /dev/null +++ b/src/forms/res/select-all.xpm @@ -0,0 +1,21 @@ +/* XPM */ +static const char * image0_xpm[] = { +"18 16 2 1", +". c None", +"# c #ff0000", +".....#############", +"...##............#", +"..#..............#", +".#...............#", +".#...###.........#", +"#...#...#........#", +"#...#...#....#...#", +"#...#...#...##...#", +"#....###...#.#...#", +"#.........#..#...#", +"#........#...#...#", +"######..######...#", +".....#...........#", +".....#...........#", +".....#...........#", +".....#############"}; diff --git a/src/forms/res/select-contour.xpm b/src/forms/res/select-contour.xpm new file mode 100644 index 0000000..6e3d361 --- /dev/null +++ b/src/forms/res/select-contour.xpm @@ -0,0 +1,22 @@ +/* XPM */ +static const char * image7_xpm[] = { +"18 16 3 1", +". c None", +"a c #000000", +"# c #ff0000", +".....#############", +"...##............#", +"..#..............#", +".#...............#", +".#...aaa.........#", +"#...a...a........#", +"#...a...a....a...#", +"#...a...a...aa...#", +"#....aaa...a.a...#", +"#.........a..a...#", +"#........a...a...#", +"######..aaaaaa...#", +".....#...........#", +".....#...........#", +".....#...........#", +".....#############"}; diff --git a/src/forms/res/select-intersection.xpm b/src/forms/res/select-intersection.xpm new file mode 100644 index 0000000..23d6970 --- /dev/null +++ b/src/forms/res/select-intersection.xpm @@ -0,0 +1,25 @@ +/* XPM */ +static const char * image2_xpm[] = { +"15 18 4 1", +". c None", +"# c #000000", +"b c #0000ff", +"a c #ff0000", +".........#.....", +"........###....", +"....aaaaabaaaaa", +"..##.....b....#", +".#.......b....#", +".#..###..b....#", +"#..#...#.b....#", +"#..#...#.b....#", +"#..#...#.b.a..#", +"#...###..ba#..#", +"#........b.#..#", +"#.......ab.#..#", +"#####..aabaa..#", +"....#....b....#", +"....#....b....#", +"....aaaaabaaaaa", +"........###....", +".........#....."}; diff --git a/src/forms/res/select-invert.xpm b/src/forms/res/select-invert.xpm new file mode 100644 index 0000000..53d521e --- /dev/null +++ b/src/forms/res/select-invert.xpm @@ -0,0 +1,23 @@ +/* XPM */ +static const char * image5_xpm[] = { +"18 16 4 1", +"# c None", +"b c #000000", +". c #0000ff", +"a c #ff0000", +".####aaaaaaaaaaa##", +"#.#aa##########a##", +"##.############a##", +"##a.#bbb#######a##", +"#b##..##b######a##", +"#b##a#.#b######a##", +"#b##a##.b###b##a##", +"#b###aaa.##bb##a##", +"#b#######.b#b##a##", +"#b#######a.#b##a##", +"#bbbbb##aaa.b##a##", +"#####b######..#a##", +"#####b########.a##", +"#####bbbbbbbbbb.##", +"################.#", +"#################."}; diff --git a/src/forms/res/select-layer.xpm b/src/forms/res/select-layer.xpm new file mode 100644 index 0000000..4912b96 --- /dev/null +++ b/src/forms/res/select-layer.xpm @@ -0,0 +1,26 @@ +/* XPM */ +static const char * image6_xpm[] = { +"14 19 4 1", +". c None", +"# c #000000", +"b c #ff0000", +"a c #ffffff", +"........##....", +"......##a#....", +"....##aaa#..##", +"..##aaa#a###a#", +"##aaa##a##aaa#", +"#aa##a##aaaaa#", +"#a#a##aaaabaa#", +"#a#a#aaaaabaa#", +"#a#a#aaaabbaa#", +"#a#a#aaaabbaa#", +"#a#a#aaababaa#", +"#a###aaababaa#", +"#a#a#aababbaa#", +"#aaa#aabbaaaa#", +"#aaa#abaaaaa##", +"#a###aaaaa##..", +"##..#aaa##....", +"....#a##......", +"....##........"}; diff --git a/src/forms/res/select-none.xpm b/src/forms/res/select-none.xpm new file mode 100644 index 0000000..26df387 --- /dev/null +++ b/src/forms/res/select-none.xpm @@ -0,0 +1,21 @@ +/* XPM */ +static const char * image4_xpm[] = { +"18 16 2 1", +". c None", +"# c #000000", +".....#############", +"...##............#", +"..#..............#", +".#...............#", +".#...###.........#", +"#...#...#........#", +"#...#...#....#...#", +"#...#...#...##...#", +"#....###...#.#...#", +"#.........#..#...#", +"#........#...#...#", +"######..######...#", +".....#...........#", +".....#...........#", +".....#...........#", +".....#############"}; diff --git a/src/forms/res/select-nonintersection.xpm b/src/forms/res/select-nonintersection.xpm new file mode 100644 index 0000000..783a72d --- /dev/null +++ b/src/forms/res/select-nonintersection.xpm @@ -0,0 +1,25 @@ +/* XPM */ +static const char * image3_xpm[] = { +"15 18 4 1", +". c None", +"# c #000000", +"b c #0000ff", +"a c #ff0000", +".........#.....", +"........###....", +"....a####b#####", +"..aa.....b....a", +".a.......b....a", +".a..aaa..b....a", +"a..a...a.b....a", +"a..a...a.b....a", +"a..a...a.b.#..a", +"a...aaa..b#a..a", +"a........b.a..a", +"a.......#b.a..a", +"aaaaa..##b##..a", +"....a....b....a", +"....a....b....a", +"....#####b#####", +"........###....", +".........#....."}; diff --git a/src/forms/res/select-nonwindow.xpm b/src/forms/res/select-nonwindow.xpm new file mode 100644 index 0000000..ccf1d51 --- /dev/null +++ b/src/forms/res/select-nonwindow.xpm @@ -0,0 +1,23 @@ +/* XPM */ +static const char * image9_xpm[] = { +"18 17 3 1", +". c None", +"# c #000000", +"a c #0000ff", +".#................", +"###aaaaaaaaaaaaaa.", +".#..............a.", +".a..............a.", +".a...##.........a.", +".a..#..#........a.", +".a.#....#.......a.", +".a.#....#....#..a.", +".a..#..#....##..a.", +".a...##....#.#..a.", +".a........#..#..a.", +".a.......#...#..a.", +".a......######..a.", +".a..............a.", +".a..............#.", +".aaaaaaaaaaaaaa###", +"................#."}; diff --git a/src/forms/res/select-single.xpm b/src/forms/res/select-single.xpm new file mode 100644 index 0000000..0e2236b --- /dev/null +++ b/src/forms/res/select-single.xpm @@ -0,0 +1,25 @@ +/* XPM */ +static const char * image8_xpm[] = { +"15 18 4 1", +". c None", +"a c #000000", +"# c #ff0000", +"b c #ffffff", +"..............#", +"............##.", +"..........##...", +"........##.....", +".......#.......", +".....##a.......", +"...##..aa......", +".##....aba.....", +"#......abba....", +".......abbba...", +".......abbbba..", +".......abbbaaa.", +".......ababa...", +".......aaabba..", +".......a..aba..", +"...........aba.", +"...........aba.", +"............a.."}; diff --git a/src/forms/res/select-window.xpm b/src/forms/res/select-window.xpm new file mode 100644 index 0000000..f7c67bf --- /dev/null +++ b/src/forms/res/select-window.xpm @@ -0,0 +1,23 @@ +/* XPM */ +static const char * image10_xpm[] = { +"18 16 4 1", +". c None", +"# c #000000", +"a c #0000ff", +"b c #ff0000", +".#................", +"###aaaaaaaaaaaaaa.", +".#..............a.", +".a..............a.", +".a...bbb........a.", +".a..b...b.......a.", +".a..b...b....b..a.", +".a..b...b...bb..a.", +".a...bbb...b.b..a.", +".a........b..b..a.", +".a.......b...b..a.", +".a......bbbbbb..a.", +".a..............a.", +".a..............#.", +".aaaaaaaaaaaaaa###", +"................#."}; diff --git a/src/mainapp/createqtactions.cpp b/src/mainapp/createqtactions.cpp index 2e8fb8c..55e5261 100644 --- a/src/mainapp/createqtactions.cpp +++ b/src/mainapp/createqtactions.cpp @@ -128,7 +128,7 @@ QAction * actionModifyAttributes; QAction * actionModifyDelete; QAction * actionModifyDeleteQuick; QAction * actionModifyExplodeText; -//QAction * actionModifyExplode; +QAction * actionModifyExplode; QAction * actionSnapFree; QAction * actionSnapGrid; @@ -235,16 +235,16 @@ void CreateQtActions(QWidget * parent) actionViewStatusbar->setCheckable(true); actionFocusCommandLine = CreateAction(tr("Focus on &Command Line"), tr("Focus on Command Line"), tr(""), QIcon(":/res/editclear.png"), QKeySequence(Qt::Key_Space), parent); - actionDeselectAll = CreateAction2(tr("Deselect &all"), tr("Deselect all"), tr("Deselects all Entities"), QIcon(":/res/qg_selectnothing.xpm"), QKeySequence("t, n"), QKeySequence(Qt::CTRL + Qt::Key_K), parent); - actionSelectAll = CreateAction2(tr("Select &All"), tr("Select All"), tr("Selects all Entities"), QIcon(":/res/qg_selectall.xpm"), QKeySequence("t, a"), QKeySequence(Qt::CTRL + Qt::Key_A), parent); - actionSelectSingle = CreateAction(tr("(De-)&Select Entity"), tr("Select Entity"), tr("Selects single Entities"), QIcon(":/res/qg_selectsingle.xpm"), QKeySequence("t, s"), NULL); - actionSelectContour = CreateAction(tr("(De-)Select &Contour"), tr("(De-)Select Contour"), tr("(De-)Selects connected entities"), QIcon(":/res/qg_selectcontour.xpm"), QKeySequence("t, c"), NULL); - actionDeselectWindow = CreateAction(tr("Deselect &Window"), tr("Deselect Window"), tr("Deselects all Entities in a given Window"), QIcon(), QKeySequence("u, w"), NULL); - actionSelectWindow = CreateAction(tr("Select &Window"), tr("Select Window"), tr("Selects all Entities in a given Window"), QIcon(":/res/qg_selectwindow.xpm"), QKeySequence("t, w"), NULL); - actionSelectInvert = CreateAction(tr("&Invert Selection"), tr("Invert Selection"), tr("Inverts the current selection"), QIcon(":/res/qg_selectinvert.xpm"), QKeySequence("t, i"), NULL); - actionSelectIntersected = CreateAction(tr("In&tersected Entities"), tr("Select Intersected Entities"), tr("Selects all entities intersected by a line"), QIcon(":/res/qg_selectinters.xpm"), QKeySequence("t, x"), NULL); - actionDeselectIntersected = CreateAction(tr("Deselect Inte&rsected Entities"), tr("Deselect Intersected Entities"), tr("Deselects all entities intersected by a line"), QIcon(), QKeySequence("u, x"), NULL); - actionSelectLayer = CreateAction(tr("(De-)Select Layer"), tr("(De-)Select Layer"), tr("(De-)Selects layers"), QIcon(":/res/qg_selectlayer.xpm"), QKeySequence("t, l"), NULL); + actionDeselectAll = CreateAction2(tr("Deselect &all"), tr("Deselect all"), tr("Deselects all Entities"), QIcon(":/res/select-none"), QKeySequence("t, n"), QKeySequence(Qt::CTRL + Qt::Key_K), parent); + actionSelectAll = CreateAction2(tr("Select &All"), tr("Select All"), tr("Selects all Entities"), QIcon(":/res/select-all"), QKeySequence("t, a"), QKeySequence(Qt::CTRL + Qt::Key_A), parent); + actionSelectSingle = CreateAction(tr("(De-)&Select Entity"), tr("Select Entity"), tr("Selects single Entities"), QIcon(":/res/select-single"), QKeySequence("t, s"), NULL); + actionSelectContour = CreateAction(tr("(De-)Select &Contour"), tr("(De-)Select Contour"), tr("(De-)Selects connected entities"), QIcon(":/res/select-contour"), QKeySequence("t, c"), NULL); + actionDeselectWindow = CreateAction(tr("Deselect &Window"), tr("Deselect Window"), tr("Deselects all Entities in a given Window"), QIcon(":/res/select-nonwindow"), QKeySequence("u, w"), NULL); + actionSelectWindow = CreateAction(tr("Select &Window"), tr("Select Window"), tr("Selects all Entities in a given Window"), QIcon(":/res/select-window"), QKeySequence("t, w"), NULL); + actionSelectInvert = CreateAction(tr("&Invert Selection"), tr("Invert Selection"), tr("Inverts the current selection"), QIcon(":/res/select-invert"), QKeySequence("t, i"), NULL); + actionSelectIntersected = CreateAction(tr("In&tersected Entities"), tr("Select Intersected Entities"), tr("Selects all entities intersected by a line"), QIcon(":/res/select-intersection"), QKeySequence("t, x"), NULL); + actionDeselectIntersected = CreateAction(tr("Deselect Inte&rsected Entities"), tr("Deselect Intersected Entities"), tr("Deselects all entities intersected by a line"), QIcon(":/res/select-nonintersection"), QKeySequence("u, x"), NULL); + actionSelectLayer = CreateAction(tr("(De-)Select Layer"), tr("(De-)Select Layer"), tr("(De-)Selects layers"), QIcon(":/res/select-layer"), QKeySequence("t, l"), NULL); actionDrawPoint = CreateAction(tr("&Points"), tr("Points"), tr("Draw Points"), QIcon(":/res/qg_points.xpm"), QKeySequence("p, o"), NULL); actionDrawLine = CreateAction(tr("&2 Points"), tr("Line: 2 Points"), tr("Draw lines"), QIcon(":/res/qg_linesnormal.xpm"), QKeySequence("l, i"), NULL); @@ -326,7 +326,7 @@ void CreateQtActions(QWidget * parent) #endif ), parent); actionModifyExplodeText = CreateAction(tr("&Explode Text into Letters"), tr("Explode Text"), tr("Explodes Text Entities into single Letters"), QIcon(":/res/qg_modifyexplodetext.xpm"), QKeySequence("x, e"), NULL); -// actionModifyExplode = CreateAction(tr("&Explode"), tr("Explode"), tr("Explode Blocks and other Entity Groups"), QIcon(":/res/qg_modifyexplode.xpm"), QKeySequence("x, p"), NULL); + actionModifyExplode = CreateAction(tr("&Explode"), tr("Explode"), tr("Explode Blocks and other Entity Groups"), QIcon(":/res/qg_modifyexplode.xpm"), QKeySequence("x, p"), NULL); actionSnapFree = CreateAction(tr("&Free"), tr("Free"), tr("Free positioning"), QIcon(":/res/qg_snapfree.xpm"), QKeySequence("s, f"), parent); actionSnapFree->setCheckable(true); diff --git a/src/mainapp/createqtactions.h b/src/mainapp/createqtactions.h index 713e489..e90dd02 100644 --- a/src/mainapp/createqtactions.h +++ b/src/mainapp/createqtactions.h @@ -119,7 +119,7 @@ extern QAction * actionModifyAttributes; extern QAction * actionModifyDelete; extern QAction * actionModifyDeleteQuick; extern QAction * actionModifyExplodeText; -//extern QAction * actionModifyExplode; +extern QAction * actionModifyExplode; extern QAction * actionSnapFree; extern QAction * actionSnapGrid; diff --git a/src/widgets/qg_actionhandler.cpp b/src/widgets/qg_actionhandler.cpp index d0d6210..58ee599 100644 --- a/src/widgets/qg_actionhandler.cpp +++ b/src/widgets/qg_actionhandler.cpp @@ -176,7 +176,7 @@ void QG_ActionHandler::killSelectActions() { GraphicView * gv = mainWindow->getGraphicView(); - if (gv != NULL) + if (gv) gv->killSelectActions(); } @@ -206,7 +206,7 @@ RS_ActionInterface * QG_ActionHandler::setCurrentAction(RS_ActionInterface * act return NULL; } - if (action != NULL) + if (action) gv->setCurrentAction(action); return action; @@ -778,7 +778,7 @@ RS_ActionInterface * QG_ActionHandler::setCurrentAction(RS2::ActionType id) break; } - if (a != NULL) + if (a) gv->setCurrentAction(a); RS_DEBUG->print("QG_ActionHandler::setCurrentAction(): OK"); @@ -793,7 +793,7 @@ QStringList QG_ActionHandler::getAvailableCommands() { RS_ActionInterface * currentAction = getCurrentAction(); - if (currentAction != NULL) + if (currentAction) return currentAction->getAvailableCommands(); else { @@ -819,7 +819,7 @@ bool QG_ActionHandler::keycode(const QString & code) //RS_keycodeEvent e(cmd); //GraphicView* gv = mainWindow->getGraphicView(); - //if (gv!=NULL) { + //if (gv) { // gv->keycodeEvent(&e); //} @@ -901,7 +901,7 @@ bool QG_ActionHandler::command(const QString & cmd) { GraphicView * gv = mainWindow->getGraphicView(); - if (gv != NULL) + if (gv) gv->back(); RS_DEBUG->print("QG_ActionHandler::command: back"); @@ -913,7 +913,7 @@ bool QG_ActionHandler::command(const QString & cmd) GraphicView * gv = mainWindow->getGraphicView(); - if (gv != NULL) + if (gv) { RS_DEBUG->print("QG_ActionHandler::command: trigger command event in graphic view"); gv->commandEvent(&e); @@ -1418,12 +1418,12 @@ void QG_ActionHandler::slotSnapFree() { disableSnaps(); - if (snapFree != NULL) + if (snapFree) snapFree->setChecked(true); - - if (cadToolBarSnap != NULL) +#if 0 + if (cadToolBarSnap) cadToolBarSnap->setSnapMode(RS2::SnapFree); - +#endif setCurrentAction(RS2::ActionSnapFree); } @@ -1431,12 +1431,13 @@ void QG_ActionHandler::slotSnapGrid() { disableSnaps(); - if (snapGrid != NULL) + if (snapGrid) snapGrid->setChecked(true); - if (cadToolBarSnap != NULL) +#if 0 + if (cadToolBarSnap) cadToolBarSnap->setSnapMode(RS2::SnapGrid); - +#endif setCurrentAction(RS2::ActionSnapGrid); } @@ -1444,26 +1445,25 @@ void QG_ActionHandler::slotSnapEndpoint() { disableSnaps(); - if (snapEndpoint != NULL) + if (snapEndpoint) snapEndpoint->setChecked(true); - if (cadToolBarSnap != NULL) +#if 0 + if (cadToolBarSnap) cadToolBarSnap->setSnapMode(RS2::SnapEndpoint); - +#endif setCurrentAction(RS2::ActionSnapEndpoint); } void QG_ActionHandler::slotSnapOnEntity() { disableSnaps(); - if (snapOnEntity!=NULL) { + if (snapOnEntity) snapOnEntity->setChecked(true); - } -//#if QT_VERSION>=0x030000 - if (cadToolBarSnap!=NULL) { +#if 0 + if (cadToolBarSnap) cadToolBarSnap->setSnapMode(RS2::SnapOnEntity); - } -//#endif +#endif setCurrentAction(RS2::ActionSnapOnEntity); } @@ -1471,13 +1471,13 @@ void QG_ActionHandler::slotSnapCenter() { disableSnaps(); - if (snapCenter != NULL) + if (snapCenter) snapCenter->setChecked(true); -//#if QT_VERSION>=0x030000 - if (cadToolBarSnap != NULL) +#if 0 + if (cadToolBarSnap) cadToolBarSnap->setSnapMode(RS2::SnapCenter); -//#endif +#endif setCurrentAction(RS2::ActionSnapCenter); } @@ -1486,13 +1486,13 @@ void QG_ActionHandler::slotSnapMiddle() { disableSnaps(); - if (snapMiddle != NULL) + if (snapMiddle) snapMiddle->setChecked(true); -//#if QT_VERSION>=0x030000 - if (cadToolBarSnap != NULL) +#if 0 + if (cadToolBarSnap) cadToolBarSnap->setSnapMode(RS2::SnapMiddle); -//#endif +#endif setCurrentAction(RS2::ActionSnapMiddle); } @@ -1501,13 +1501,13 @@ void QG_ActionHandler::slotSnapDist() { disableSnaps(); - if (snapDist != NULL) + if (snapDist) snapDist->setChecked(true); -//#if QT_VERSION>=0x030000 - if (cadToolBarSnap != NULL) +#if 0 + if (cadToolBarSnap) cadToolBarSnap->setSnapMode(RS2::SnapDist); -//#endif +#endif setCurrentAction(RS2::ActionSnapDist); } @@ -1516,13 +1516,13 @@ void QG_ActionHandler::slotSnapIntersection() { disableSnaps(); - if (snapIntersection != NULL) + if (snapIntersection) snapIntersection->setChecked(true); -//#if QT_VERSION>=0x030000 - if (cadToolBarSnap != NULL) +#if 0 + if (cadToolBarSnap) cadToolBarSnap->setSnapMode(RS2::SnapIntersection); -//#endif +#endif setCurrentAction(RS2::ActionSnapIntersection); } @@ -1530,10 +1530,10 @@ void QG_ActionHandler::slotSnapIntersection() void QG_ActionHandler::slotSnapIntersectionManual() { //disableSnaps(); - /*if (snapIntersectionManual!=NULL) { + /*if (snapIntersectionManual) { snapIntersectionManual->setChecked(true); }*/ - /*if (cadToolBarSnap!=NULL) { + /*if (cadToolBarSnap) { cadToolBarSnap->setSnapMode(RS2::SnapIntersectionManual); }*/ setCurrentAction(RS2::ActionSnapIntersectionManual); @@ -1541,47 +1541,50 @@ void QG_ActionHandler::slotSnapIntersectionManual() void QG_ActionHandler::disableSnaps() { - if (snapFree != NULL) + if (snapFree) snapFree->setChecked(false); - if (snapGrid != NULL) + if (snapGrid) snapGrid->setChecked(false); - if (snapEndpoint != NULL) + if (snapEndpoint) snapEndpoint->setChecked(false); - if (snapOnEntity != NULL) + if (snapOnEntity) snapOnEntity->setChecked(false); - if (snapCenter != NULL) + if (snapCenter) snapCenter->setChecked(false); - if (snapMiddle != NULL) + if (snapMiddle) snapMiddle->setChecked(false); - if (snapDist != NULL) + if (snapDist) snapDist->setChecked(false); - if (snapIntersection != NULL) + if (snapIntersection) snapIntersection->setChecked(false); - if (snapIntersectionManual != NULL) + if (snapIntersectionManual) snapIntersectionManual->setChecked(false); - if (cadToolBarSnap != NULL) +#if 0 + if (cadToolBarSnap) cadToolBarSnap->disableSnaps(); +#endif } void QG_ActionHandler::slotRestrictNothing() { disableRestrictions(); - if (restrictNothing != NULL) + if (restrictNothing) restrictNothing->setChecked(true); - if (cadToolBarSnap != NULL) +#if 0 + if (cadToolBarSnap) cadToolBarSnap->setSnapRestriction(RS2::RestrictNothing); - +#endif setCurrentAction(RS2::ActionRestrictNothing); } @@ -1589,12 +1592,13 @@ void QG_ActionHandler::slotRestrictOrthogonal() { disableRestrictions(); - if (restrictOrthogonal != NULL) + if (restrictOrthogonal) restrictOrthogonal->setChecked(true); - if (cadToolBarSnap != NULL) +#if 0 + if (cadToolBarSnap) cadToolBarSnap->setSnapRestriction(RS2::RestrictOrthogonal); - +#endif setCurrentAction(RS2::ActionRestrictOrthogonal); } @@ -1602,11 +1606,13 @@ void QG_ActionHandler::slotRestrictHorizontal() { disableRestrictions(); - if (restrictHorizontal != NULL) + if (restrictHorizontal) restrictHorizontal->setChecked(true); - if (cadToolBarSnap != NULL) +#if 0 + if (cadToolBarSnap) cadToolBarSnap->setSnapRestriction(RS2::RestrictHorizontal); +#endif setCurrentAction(RS2::ActionRestrictHorizontal); } @@ -1615,31 +1621,34 @@ void QG_ActionHandler::slotRestrictVertical() { disableRestrictions(); - if (restrictVertical != NULL) + if (restrictVertical) restrictVertical->setChecked(true); - if (cadToolBarSnap != NULL) +#if 0 + if (cadToolBarSnap) cadToolBarSnap->setSnapRestriction(RS2::RestrictVertical); - +#endif setCurrentAction(RS2::ActionRestrictVertical); } void QG_ActionHandler::disableRestrictions() { - if (restrictNothing != NULL) + if (restrictNothing) restrictNothing->setChecked(false); - if (restrictOrthogonal != NULL) + if (restrictOrthogonal) restrictOrthogonal->setChecked(false); - if (restrictHorizontal != NULL) + if (restrictHorizontal) restrictHorizontal->setChecked(false); - if (restrictVertical != NULL) + if (restrictVertical) restrictVertical->setChecked(false); - if (cadToolBarSnap != NULL) +#if 0 + if (cadToolBarSnap) cadToolBarSnap->disableRestrictions(); +#endif } /** @@ -1648,35 +1657,35 @@ void QG_ActionHandler::disableRestrictions() */ void QG_ActionHandler::updateSnapMode() { - if (snapFree != NULL && snapFree->isChecked()) + if (snapFree && snapFree->isChecked()) slotSnapFree(); - else if (snapGrid != NULL && snapGrid->isChecked()) + else if (snapGrid && snapGrid->isChecked()) slotSnapGrid(); - else if (snapEndpoint != NULL && snapEndpoint->isChecked()) + else if (snapEndpoint && snapEndpoint->isChecked()) slotSnapEndpoint(); - else if (snapOnEntity != NULL && snapOnEntity->isChecked()) + else if (snapOnEntity && snapOnEntity->isChecked()) slotSnapOnEntity(); - else if (snapCenter != NULL && snapCenter->isChecked()) + else if (snapCenter && snapCenter->isChecked()) slotSnapCenter(); - else if (snapMiddle != NULL && snapMiddle->isChecked()) + else if (snapMiddle && snapMiddle->isChecked()) slotSnapMiddle(); - else if (snapDist != NULL && snapDist->isChecked()) + else if (snapDist && snapDist->isChecked()) slotSnapDist(); - else if (snapIntersection != NULL && snapIntersection->isChecked()) + else if (snapIntersection && snapIntersection->isChecked()) slotSnapIntersection(); // snap restricitons: - if (restrictNothing != NULL && restrictNothing->isChecked()) + if (restrictNothing && restrictNothing->isChecked()) slotRestrictNothing(); - else if (restrictOrthogonal != NULL && restrictOrthogonal->isChecked()) + else if (restrictOrthogonal && restrictOrthogonal->isChecked()) slotRestrictOrthogonal(); - else if (restrictHorizontal != NULL && restrictHorizontal->isChecked()) + else if (restrictHorizontal && restrictHorizontal->isChecked()) slotRestrictHorizontal(); - else if (restrictVertical != NULL && restrictVertical->isChecked()) + else if (restrictVertical && restrictVertical->isChecked()) slotRestrictVertical(); // lock of relative zero: - if (lockRelativeZero != NULL) + if (lockRelativeZero) slotLockRelativeZero(lockRelativeZero->isChecked()); } @@ -1687,7 +1696,7 @@ void QG_ActionHandler::slotSetRelativeZero() void QG_ActionHandler::slotLockRelativeZero(bool on) { - if (lockRelativeZero != NULL) + if (lockRelativeZero) lockRelativeZero->setChecked(on); if (on) @@ -1695,8 +1704,10 @@ void QG_ActionHandler::slotLockRelativeZero(bool on) else setCurrentAction(RS2::ActionUnlockRelativeZero); - if (cadToolBarSnap != NULL) +#if 0 + if (cadToolBarSnap) cadToolBarSnap->setLockRelativeZero(on); +#endif } void QG_ActionHandler::slotInfoInside() @@ -1838,7 +1849,7 @@ void QG_ActionHandler::slotCamReorder() void QG_ActionHandler::slotFocusNormal() { //QG_GraphicView* gv = mainWindow->getGraphicView(); - //if (gv!=NULL) { + //if (gv) { //gv->setFocus(); mainWindow->setFocus2(); //} -- 2.37.2