X-Git-Url: http://shamusworld.gotdns.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fforms%2Fcadtoolbarmain.cpp;h=afddfb1bf954750e272107b1c82dedf54766ffbc;hb=d774c2655ba2c3657a565f325411144452392277;hp=38d598f4d12eea3fae2ce0adb8ecea4316e6cb07;hpb=27d4a138d23453e93a833e9347444b828a971cb4;p=architektonas diff --git a/src/forms/cadtoolbarmain.cpp b/src/forms/cadtoolbarmain.cpp index 38d598f..afddfb1 100644 --- a/src/forms/cadtoolbarmain.cpp +++ b/src/forms/cadtoolbarmain.cpp @@ -10,67 +10,69 @@ // Who When What // --- ---------- ----------------------------------------------------------- // JLH 05/10/2010 Created this file. :-) +// JLH 06/22/2010 Refactored file to remove .ui dependency. This also results +// in a much smaller, easier to manage file. ;-) // #include "cadtoolbarmain.h" -#include "cadtoolbar.h" #include "qg_actionhandler.h" -#include "createqtactions.h" -#include "rs_debug.h" +#include "cadtoolbar.h" -CadToolBarMain::CadToolBarMain(QWidget * parent/*= 0*/, Qt::WindowFlags flags/*= 0*/): - QWidget(parent, flags) +CadToolBarMain::CadToolBarMain(CadToolBar * parent/*= 0*/, Qt::WindowFlags flags/*= 0*/): + QWidget((QWidget *)parent, flags) { - ui.setupUi(this); + QG_ActionHandler * actionHandler = parent->getActionHandler(); + + gridLayout = new QGridLayout(this); + gridLayout->setSpacing(0); + gridLayout->setContentsMargins(0, 0, 0, 0); + + connect(CreateToolButton(0, 0, ":/res/qg_menupoint"), SIGNAL(clicked()), + actionHandler, SLOT(slotDrawPoint())); + connect(CreateToolButton(0, 1, ":/res/qg_menuline"), SIGNAL(clicked()), + parent, SLOT(showToolBarLines())); + connect(CreateToolButton(1, 0, ":/res/qg_menuarc"), SIGNAL(clicked()), + parent, SLOT(showToolBarArcs())); + connect(CreateToolButton(1, 1, ":/res/qg_menucircle"), SIGNAL(clicked()), + parent, SLOT(showToolBarCircles())); + connect(CreateToolButton(2, 0, ":/res/qg_menuellipse"), SIGNAL(clicked()), + parent, SLOT(showToolBarEllipses())); + connect(CreateToolButton(2, 1, ":/res/qg_menuspline"), SIGNAL(clicked()), + actionHandler, SLOT(slotDrawSpline())); + connect(CreateToolButton(3, 0, ":/res/qg_menupolyline"), SIGNAL(clicked()), + parent, SLOT(showToolBarPolylines())); + + connect(CreateToolButton(5, 0, ":/res/qg_menutext"), SIGNAL(clicked()), + actionHandler, SLOT(slotDrawText())); + connect(CreateToolButton(5, 1, ":/res/qg_menudim"), SIGNAL(clicked()), + parent, SLOT(showToolBarDim())); + connect(CreateToolButton(6, 0, ":/res/qg_menuhatch"), SIGNAL(clicked()), + actionHandler, SLOT(slotDrawHatch())); + connect(CreateToolButton(6, 1, ":/res/qg_menuimage"), SIGNAL(clicked()), + actionHandler, SLOT(slotDrawImage())); -// Ain't hidin' dis no mo'... -//#ifndef RS_PROF -// ui.bMenuPolyline->hide(); -//#endif + connect(CreateToolButton(8, 0, ":/res/qg_menuedit"), SIGNAL(clicked()), + parent, SLOT(showToolBarModify())); + connect(CreateToolButton(8, 1, ":/res/qg_menumeasure"), SIGNAL(clicked()), + parent, SLOT(showToolBarInfo())); -//hm. -//well, it looks like something else is messing with this... -// if (parent) -// ((QToolBar *)parent)->addWidget(this); + connect(CreateToolButton(10, 0, ":/res/qg_menublock"), SIGNAL(clicked()), + actionHandler, SLOT(slotBlocksCreate())); + connect(CreateToolButton(10, 1, ":/res/qg_menuselect"), SIGNAL(clicked()), + parent, SLOT(showToolBarSelect())); } CadToolBarMain::~CadToolBarMain() { } -void CadToolBarMain::setCadToolBar(CadToolBar * tb) +QToolButton * CadToolBarMain::CreateToolButton(int row, int col, QString iconName) { - QG_ActionHandler * ah = NULL; - - if (tb) - ah = tb->getActionHandler(); - else - RS_DEBUG->print(RS_Debug::D_ERROR, "QG_CadToolBarMain::setCadToolBar(): No valid toolbar set."); - - if (ah) - { - connect(ui.bMenuPoint, SIGNAL(clicked()), ah, SLOT(slotDrawPoint())); - connect(ui.bMenuLine, SIGNAL(clicked()), tb, SLOT(showToolBarLines())); - connect(ui.bMenuArc, SIGNAL(clicked()), tb, SLOT(showToolBarArcs())); - connect(ui.bMenuCircle, SIGNAL(clicked()), tb, SLOT(showToolBarCircles())); - connect(ui.bMenuEllipse, SIGNAL(clicked()), tb, SLOT(showToolBarEllipses())); - connect(ui.bMenuSpline, SIGNAL(clicked()), ah, SLOT(slotDrawSpline())); - connect(ui.bMenuPolyline, SIGNAL(clicked()), tb, SLOT(showToolBarPolylines())); - - connect(ui.bMenuText, SIGNAL(clicked()), ah, SLOT(slotDrawText())); - connect(ui.bMenuDim, SIGNAL(clicked()), tb, SLOT(showToolBarDim())); - connect(ui.bMenuHatch, SIGNAL(clicked()), ah, SLOT(slotDrawHatch())); - connect(ui.bMenuImage, SIGNAL(clicked()), ah, SLOT(slotDrawImage())); - - connect(ui.bMenuModify, SIGNAL(clicked()), tb, SLOT(showToolBarModify())); - connect(ui.bMenuInfo, SIGNAL(clicked()), tb, SLOT(showToolBarInfo())); + QToolButton * button = new QToolButton(this); + button->setIcon(QIcon(iconName)); + button->setIconSize(QSize(18, 18)); + gridLayout->addWidget(button, row, col, 1, 1); - connect(ui.bMenuBlock, SIGNAL(clicked()), ah, SLOT(slotBlocksCreate())); - connect(ui.bMenuSelect, SIGNAL(clicked()), tb, SLOT(showToolBarSelect())); - } - else - { - RS_DEBUG->print(RS_Debug::D_ERROR, "QG_CadToolBarMain::setCadToolBar(): No valid action handler set."); - } + return button; }