X-Git-Url: http://shamusworld.gotdns.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fforms%2Fcadtoolbarellipses.cpp;h=db170f6fc0c6e1565dc392a0c1b78d1fa90a6bee;hb=f7188d32d0beaef31fc3475be05daea2f018ebec;hp=d7645287e660f307e675cbff3ecbcf31686ee417;hpb=27d4a138d23453e93a833e9347444b828a971cb4;p=architektonas diff --git a/src/forms/cadtoolbarellipses.cpp b/src/forms/cadtoolbarellipses.cpp index d764528..db170f6 100644 --- a/src/forms/cadtoolbarellipses.cpp +++ b/src/forms/cadtoolbarellipses.cpp @@ -1,5 +1,6 @@ // cadtoolbarellipses.cpp // +// Part of the Architektonas Project // Originally part of QCad Community Edition by Andrew Mustun // Extensively rewritten and refactored by James L. Hammons // (C) 2010 Underground Software @@ -14,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; }