diff options
| author | craig <craig@11d20701-8431-0410-a711-e3c959e3b870> | 2012-01-01 11:40:09 +0000 |
|---|---|---|
| committer | craig <craig@11d20701-8431-0410-a711-e3c959e3b870> | 2012-01-01 11:40:09 +0000 |
| commit | 7ed83b6c6666eb8b6b104c211ae7e52907350372 (patch) | |
| tree | 4430b556abac0ad660a0aacf1887d77f85d8be02 /scribus/ui/modetoolbar.cpp | |
| download | scribus-7ed83b6c6666eb8b6b104c211ae7e52907350372.tar.gz scribus-7ed83b6c6666eb8b6b104c211ae7e52907350372.tar.xz scribus-7ed83b6c6666eb8b6b104c211ae7e52907350372.zip | |
Branch 1.3.5 tree to 1.4.x tree, goodbye 1.3.x
git-svn-id: svn://scribus.net/branches/Version14x/Scribus@17163 11d20701-8431-0410-a711-e3c959e3b870
Diffstat (limited to 'scribus/ui/modetoolbar.cpp')
| -rw-r--r-- | scribus/ui/modetoolbar.cpp | 123 |
1 files changed, 123 insertions, 0 deletions
diff --git a/scribus/ui/modetoolbar.cpp b/scribus/ui/modetoolbar.cpp new file mode 100644 index 0000000..55acb28 --- /dev/null +++ b/scribus/ui/modetoolbar.cpp @@ -0,0 +1,123 @@ +/* +For general Scribus (>=1.3.2) copyright and licensing information please refer +to the COPYING file provided with the program. Following this notice may exist +a copyright and/or license notice that predates the release of Scribus 1.3.2 +for which a new license (GPL+exception) is in place. +*/ +/*************************************************************************** + texttoolb.cpp - description + ------------------- + begin : Sun Mar 10 2002 + copyright : (C) 2002 by Franz Schmid + email : Franz.Schmid@altmuehlnet.de + ***************************************************************************/ + +/*************************************************************************** + * * + * This program is free software; you can redistribute it and/or modify * + * it under the terms of the GNU General Public License as published by * + * the Free Software Foundation; either version 2 of the License, or * + * (at your option) any later version. * + * * + ***************************************************************************/ + +#include <QToolTip> +#include <QEvent> +#include <QMenu> +#include <QPixmap> + +#include "modetoolbar.h" + +#include "autoformbuttongroup.h" +#include "menumanager.h" +#include "polyprops.h" +#include "scraction.h" +#include "scribus.h" +#include "scribusdoc.h" +#include "util.h" + +ModeToolBar::ModeToolBar(ScribusMainWindow* parent) : ScToolBar( tr("Tools"), "Tools", parent, Qt::Vertical) +{ + SubMode = 0; + ValCount = 32; + static double AutoShapes0[] = {0.0, 0.0, 0.0, 0.0, 100.0, 0.0, 100.0, 0.0, 100.0, 0.0, 100.0, 0.0, + 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 0.0, 100.0, 0.0, 100.0, + 0.0, 100.0, 0.0, 100.0, 0.0, 0.0, 0.0, 0.0}; + ShapeVals = AutoShapes0; + m_ScMW=parent; + this->addAction(m_ScMW->scrActions["toolsSelect"]); + this->addAction(m_ScMW->scrActions["toolsInsertTextFrame"]); + this->addAction(m_ScMW->scrActions["toolsInsertImageFrame"]); + this->addAction(m_ScMW->scrActions["toolsInsertRenderFrame"]); + this->addAction(m_ScMW->scrActions["toolsInsertTableFrame"]); + + this->addAction(m_ScMW->scrActions["toolsInsertShape"]); +// insertShapeButtonMenu = new QMenu(); + Rechteck = new AutoformButtonGroup( NULL ); +// insertShapeButtonAct = new QWidgetAction( this ); +// insertShapeButtonAct->setDefaultWidget(Rechteck); +// insertShapeButtonMenu->addAction(insertShapeButtonAct); +// m_ScMW->scrActions["toolsInsertShape"]->setMenu(insertShapeButtonMenu); + m_ScMW->scrActions["toolsInsertShape"]->setMenu(Rechteck); + QToolButton* tb = dynamic_cast<QToolButton*>(this->widgetForAction(m_ScMW->scrActions["toolsInsertShape"])); + tb->setPopupMode(QToolButton::MenuButtonPopup); + m_ScMW->scrActions["toolsInsertShape"]->setIcon(QIcon(Rechteck->getIconPixmap(0,16))); + + this->addAction(m_ScMW->scrActions["toolsInsertPolygon"]); + insertPolygonButtonMenu = new QMenu(); + idInsertPolygonButtonMenu = insertPolygonButtonMenu->addAction( "Properties...", this, SLOT(GetPolyProps())); + m_ScMW->scrActions["toolsInsertPolygon"]->setMenu(insertPolygonButtonMenu); + QToolButton* tb2 = dynamic_cast<QToolButton*>(this->widgetForAction(m_ScMW->scrActions["toolsInsertPolygon"])); + tb2->setPopupMode(QToolButton::MenuButtonPopup); + + this->addAction(m_ScMW->scrActions["toolsInsertLine"]); + this->addAction(m_ScMW->scrActions["toolsInsertBezier"]); + this->addAction(m_ScMW->scrActions["toolsInsertFreehandLine"]); + this->addAction(m_ScMW->scrActions["toolsRotate"]); + this->addAction(m_ScMW->scrActions["toolsZoom"]); + this->addAction(m_ScMW->scrActions["toolsEditContents"]); + this->addAction(m_ScMW->scrActions["toolsEditWithStoryEditor"]); + this->addAction(m_ScMW->scrActions["toolsLinkTextFrame"]); + this->addAction(m_ScMW->scrActions["toolsUnlinkTextFrame"]); + this->addAction(m_ScMW->scrActions["toolsMeasurements"]); + this->addAction(m_ScMW->scrActions["toolsCopyProperties"]); + this->addAction(m_ScMW->scrActions["toolsEyeDropper"]); + + languageChange(); + connect(Rechteck, SIGNAL(FormSel(int, int, qreal *)), this, SLOT(SelShape(int, int, qreal *))); +} + +void ModeToolBar::GetPolyProps() +{ + PolygonProps* dia = new PolygonProps(this, m_ScMW->doc->toolSettings.polyC, m_ScMW->doc->toolSettings.polyFd, m_ScMW->doc->toolSettings.polyF, m_ScMW->doc->toolSettings.polyS, m_ScMW->doc->toolSettings.polyR, m_ScMW->doc->toolSettings.polyCurvature); + if (dia->exec()) + dia->getValues(&m_ScMW->doc->toolSettings.polyC, &m_ScMW->doc->toolSettings.polyFd, &m_ScMW->doc->toolSettings.polyF, &m_ScMW->doc->toolSettings.polyS, &m_ScMW->doc->toolSettings.polyR, &m_ScMW->doc->toolSettings.polyCurvature); + delete dia; +} + +void ModeToolBar::SelShape(int s, int c, qreal *vals) +{ + m_ScMW->scrActions["toolsInsertShape"]->setIcon(QIcon(Rechteck->getIconPixmap(s,16))); +// insertShapeButtonMenu->hide(); + SubMode = s; + ValCount = c; + ShapeVals = vals; + m_ScMW->scrActions["toolsInsertShape"]->setChecked(false); + m_ScMW->scrActions["toolsInsertShape"]->setChecked(true); +} + +void ModeToolBar::changeEvent(QEvent *e) +{ + if (e->type() == QEvent::LanguageChange) + { + languageChange(); + } + else + QWidget::changeEvent(e); +} + +void ModeToolBar::languageChange() +{ + idInsertPolygonButtonMenu->setText( tr("Properties...")); + ScToolBar::languageChange(); +} |
