Drawing: Apply clang format
This commit is contained in:
@@ -11,15 +11,15 @@
|
||||
|
||||
#include "PreCompiled.h"
|
||||
#ifndef _PreComp_
|
||||
# include <sstream>
|
||||
# include <vector>
|
||||
#include <sstream>
|
||||
#include <vector>
|
||||
|
||||
# include <QCoreApplication>
|
||||
# include <QDir>
|
||||
# include <QFile>
|
||||
# include <QFileInfo>
|
||||
# include <QMessageBox>
|
||||
# include <QRegExp>
|
||||
#include <QCoreApplication>
|
||||
#include <QDir>
|
||||
#include <QFile>
|
||||
#include <QFileInfo>
|
||||
#include <QMessageBox>
|
||||
#include <QRegExp>
|
||||
#endif
|
||||
|
||||
#include <App/Document.h>
|
||||
@@ -52,25 +52,27 @@ using namespace std;
|
||||
DEF_STD_CMD(CmdDrawingOpen)
|
||||
|
||||
CmdDrawingOpen::CmdDrawingOpen()
|
||||
: Command("Drawing_Open")
|
||||
: Command("Drawing_Open")
|
||||
{
|
||||
sAppModule = "Drawing";
|
||||
sGroup = QT_TR_NOOP("Drawing");
|
||||
sMenuText = QT_TR_NOOP("Open SVG...");
|
||||
sToolTipText = QT_TR_NOOP("Open a scalable vector graphic");
|
||||
sWhatsThis = "Drawing_Open";
|
||||
sStatusTip = sToolTipText;
|
||||
sPixmap = "actions/document-new";
|
||||
sAppModule = "Drawing";
|
||||
sGroup = QT_TR_NOOP("Drawing");
|
||||
sMenuText = QT_TR_NOOP("Open SVG...");
|
||||
sToolTipText = QT_TR_NOOP("Open a scalable vector graphic");
|
||||
sWhatsThis = "Drawing_Open";
|
||||
sStatusTip = sToolTipText;
|
||||
sPixmap = "actions/document-new";
|
||||
}
|
||||
|
||||
void CmdDrawingOpen::activated(int iMsg)
|
||||
{
|
||||
Q_UNUSED(iMsg);
|
||||
// Reading an image
|
||||
QString filename = Gui::FileDialog::getOpenFileName(Gui::getMainWindow(), QObject::tr("Choose an SVG file to open"), QString(),
|
||||
QString filename = Gui::FileDialog::getOpenFileName(
|
||||
Gui::getMainWindow(),
|
||||
QObject::tr("Choose an SVG file to open"),
|
||||
QString(),
|
||||
QString::fromLatin1("%1 (*.svg *.svgz)").arg(QObject::tr("Scalable Vector Graphic")));
|
||||
if (!filename.isEmpty())
|
||||
{
|
||||
if (!filename.isEmpty()) {
|
||||
filename = Base::Tools::escapeEncodeFilename(filename);
|
||||
// load the file with the module
|
||||
Command::doCommand(Command::Gui, "import Drawing, DrawingGui");
|
||||
@@ -85,14 +87,14 @@ void CmdDrawingOpen::activated(int iMsg)
|
||||
DEF_STD_CMD_ACL(CmdDrawingNewPage)
|
||||
|
||||
CmdDrawingNewPage::CmdDrawingNewPage()
|
||||
: Command("Drawing_NewPage")
|
||||
: Command("Drawing_NewPage")
|
||||
{
|
||||
sAppModule = "Drawing";
|
||||
sGroup = QT_TR_NOOP("Drawing");
|
||||
sMenuText = QT_TR_NOOP("Insert new drawing");
|
||||
sToolTipText = QT_TR_NOOP("Insert new drawing");
|
||||
sWhatsThis = "Drawing_NewPage";
|
||||
sStatusTip = sToolTipText;
|
||||
sAppModule = "Drawing";
|
||||
sGroup = QT_TR_NOOP("Drawing");
|
||||
sMenuText = QT_TR_NOOP("Insert new drawing");
|
||||
sToolTipText = QT_TR_NOOP("Insert new drawing");
|
||||
sWhatsThis = "Drawing_NewPage";
|
||||
sStatusTip = sToolTipText;
|
||||
}
|
||||
|
||||
void CmdDrawingNewPage::activated(int iMsg)
|
||||
@@ -101,26 +103,31 @@ void CmdDrawingNewPage::activated(int iMsg)
|
||||
QAction* a = qAsConst(pcAction)->actions()[iMsg];
|
||||
|
||||
std::string FeatName = getUniqueObjectName(
|
||||
QCoreApplication::translate("Drawing_NewPage", "Page").toStdString().c_str());
|
||||
QCoreApplication::translate("Drawing_NewPage", "Page").toStdString().c_str());
|
||||
|
||||
QFileInfo tfi(a->property("Template").toString());
|
||||
if (tfi.isReadable()) {
|
||||
QString filename = Base::Tools::escapeEncodeFilename(tfi.filePath());
|
||||
openCommand("Create page");
|
||||
doCommand(Doc,"App.activeDocument().addObject('Drawing::FeaturePage','%s')",FeatName.c_str());
|
||||
doCommand(Doc,"App.activeDocument().%s.Template = '%s'",FeatName.c_str(), (const char*)filename.toUtf8());
|
||||
doCommand(Doc,"App.activeDocument().recompute()");
|
||||
doCommand(Doc,"Gui.activeDocument().getObject('%s').show()",FeatName.c_str());
|
||||
doCommand(Doc,
|
||||
"App.activeDocument().addObject('Drawing::FeaturePage','%s')",
|
||||
FeatName.c_str());
|
||||
doCommand(Doc,
|
||||
"App.activeDocument().%s.Template = '%s'",
|
||||
FeatName.c_str(),
|
||||
(const char*)filename.toUtf8());
|
||||
doCommand(Doc, "App.activeDocument().recompute()");
|
||||
doCommand(Doc, "Gui.activeDocument().getObject('%s').show()", FeatName.c_str());
|
||||
commitCommand();
|
||||
}
|
||||
else {
|
||||
QMessageBox::critical(Gui::getMainWindow(),
|
||||
QLatin1String("No template"),
|
||||
QLatin1String("No template available for this page size"));
|
||||
QLatin1String("No template"),
|
||||
QLatin1String("No template available for this page size"));
|
||||
}
|
||||
}
|
||||
|
||||
Gui::Action * CmdDrawingNewPage::createAction(void)
|
||||
Gui::Action* CmdDrawingNewPage::createAction(void)
|
||||
{
|
||||
Gui::ActionGroup* pcAction = new Gui::ActionGroup(this, Gui::getMainWindow());
|
||||
pcAction->setDropDownMenu(true);
|
||||
@@ -135,7 +142,7 @@ Gui::Action * CmdDrawingNewPage::createAction(void)
|
||||
std::string path = App::Application::getResourceDir();
|
||||
path += "Mod/Drawing/Templates/";
|
||||
QDir dir(QString::fromUtf8(path.c_str()), QString::fromLatin1("*.svg"));
|
||||
for (unsigned int i=0; i<dir.count(); i++ ) {
|
||||
for (unsigned int i = 0; i < dir.count(); i++) {
|
||||
QRegExp rx(QString::fromLatin1("(A|B|C|D|E)(\\d)_(Landscape|Portrait)(_.*\\.|\\.)svg$"));
|
||||
if (rx.indexIn(dir[i]) > -1) {
|
||||
QString paper = rx.cap(1);
|
||||
@@ -162,11 +169,13 @@ Gui::Action * CmdDrawingNewPage::createAction(void)
|
||||
lastPaper = paper;
|
||||
lastId = id;
|
||||
|
||||
QFile file(QString::fromLatin1(":/icons/actions/drawing-%1-%2%3.svg").arg(orientation.toLower(), paper).arg(id));
|
||||
QFile file(QString::fromLatin1(":/icons/actions/drawing-%1-%2%3.svg")
|
||||
.arg(orientation.toLower(), paper)
|
||||
.arg(id));
|
||||
QAction* a = pcAction->addAction(QString());
|
||||
if (file.open(QFile::ReadOnly)) {
|
||||
QByteArray data = file.readAll();
|
||||
a->setIcon(Gui::BitmapFactory().pixmapFromSvg(data, QSize(64,64)));
|
||||
a->setIcon(Gui::BitmapFactory().pixmapFromSvg(data, QSize(64, 64)));
|
||||
}
|
||||
|
||||
a->setProperty("TemplatePaper", paper);
|
||||
@@ -204,57 +213,51 @@ void CmdDrawingNewPage::languageChange()
|
||||
{
|
||||
Command::languageChange();
|
||||
|
||||
if (!_pcAction)
|
||||
if (!_pcAction) {
|
||||
return;
|
||||
}
|
||||
Gui::ActionGroup* pcAction = qobject_cast<Gui::ActionGroup*>(_pcAction);
|
||||
QList<QAction*> a = pcAction->actions();
|
||||
for (QList<QAction*>::iterator it = a.begin(); it != a.end(); ++it) {
|
||||
if ((*it)->isSeparator())
|
||||
if ((*it)->isSeparator()) {
|
||||
continue;
|
||||
}
|
||||
QString paper = (*it)->property("TemplatePaper").toString();
|
||||
int id = (*it)->property("TemplateId").toInt();
|
||||
QString orientation = (*it)->property("TemplateOrientation").toString();
|
||||
if (orientation.compare(QLatin1String("landscape"), Qt::CaseInsensitive) == 0)
|
||||
if (orientation.compare(QLatin1String("landscape"), Qt::CaseInsensitive) == 0) {
|
||||
orientation = QCoreApplication::translate("Drawing_NewPage", "Landscape");
|
||||
else if (orientation.compare(QLatin1String("portrait"), Qt::CaseInsensitive) == 0)
|
||||
}
|
||||
else if (orientation.compare(QLatin1String("portrait"), Qt::CaseInsensitive) == 0) {
|
||||
orientation = QCoreApplication::translate("Drawing_NewPage", "Portrait");
|
||||
}
|
||||
QString info = (*it)->property("TemplateInfo").toString();
|
||||
|
||||
if (info.isEmpty()) {
|
||||
(*it)->setText(QCoreApplication::translate(
|
||||
"Drawing_NewPage", "%1%2 %3")
|
||||
.arg(paper,
|
||||
QString::number(id),
|
||||
orientation));
|
||||
(*it)->setToolTip(QCoreApplication::translate(
|
||||
"Drawing_NewPage", "Insert new %1%2 %3 drawing")
|
||||
.arg(paper,
|
||||
QString::number(id),
|
||||
orientation));
|
||||
(*it)->setText(QCoreApplication::translate("Drawing_NewPage", "%1%2 %3")
|
||||
.arg(paper, QString::number(id), orientation));
|
||||
(*it)->setToolTip(
|
||||
QCoreApplication::translate("Drawing_NewPage", "Insert new %1%2 %3 drawing")
|
||||
.arg(paper, QString::number(id), orientation));
|
||||
}
|
||||
else {
|
||||
(*it)->setText(QCoreApplication::translate(
|
||||
"Drawing_NewPage", "%1%2 %3 (%4)")
|
||||
.arg(paper,
|
||||
QString::number(id),
|
||||
orientation,
|
||||
info));
|
||||
(*it)->setToolTip(QCoreApplication::translate(
|
||||
"Drawing_NewPage", "Insert new %1%2 %3 (%4) drawing")
|
||||
.arg(paper,
|
||||
QString::number(id),
|
||||
orientation,
|
||||
info));
|
||||
(*it)->setText(QCoreApplication::translate("Drawing_NewPage", "%1%2 %3 (%4)")
|
||||
.arg(paper, QString::number(id), orientation, info));
|
||||
(*it)->setToolTip(
|
||||
QCoreApplication::translate("Drawing_NewPage", "Insert new %1%2 %3 (%4) drawing")
|
||||
.arg(paper, QString::number(id), orientation, info));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
bool CmdDrawingNewPage::isActive(void)
|
||||
{
|
||||
if (getActiveGuiDocument())
|
||||
if (getActiveGuiDocument()) {
|
||||
return true;
|
||||
else
|
||||
}
|
||||
else {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
//===========================================================================
|
||||
@@ -264,15 +267,15 @@ bool CmdDrawingNewPage::isActive(void)
|
||||
DEF_STD_CMD_A(CmdDrawingNewA3Landscape)
|
||||
|
||||
CmdDrawingNewA3Landscape::CmdDrawingNewA3Landscape()
|
||||
: Command("Drawing_NewA3Landscape")
|
||||
: Command("Drawing_NewA3Landscape")
|
||||
{
|
||||
sAppModule = "Drawing";
|
||||
sGroup = QT_TR_NOOP("Drawing");
|
||||
sMenuText = QT_TR_NOOP("Insert new A3 landscape drawing");
|
||||
sToolTipText = QT_TR_NOOP("Insert new A3 landscape drawing");
|
||||
sWhatsThis = "Drawing_NewA3Landscape";
|
||||
sStatusTip = sToolTipText;
|
||||
sPixmap = "actions/drawing-landscape-A3";
|
||||
sAppModule = "Drawing";
|
||||
sGroup = QT_TR_NOOP("Drawing");
|
||||
sMenuText = QT_TR_NOOP("Insert new A3 landscape drawing");
|
||||
sToolTipText = QT_TR_NOOP("Insert new A3 landscape drawing");
|
||||
sWhatsThis = "Drawing_NewA3Landscape";
|
||||
sStatusTip = sToolTipText;
|
||||
sPixmap = "actions/drawing-landscape-A3";
|
||||
}
|
||||
|
||||
void CmdDrawingNewA3Landscape::activated(int iMsg)
|
||||
@@ -281,18 +284,20 @@ void CmdDrawingNewA3Landscape::activated(int iMsg)
|
||||
std::string FeatName = getUniqueObjectName("Page");
|
||||
|
||||
openCommand("Create page");
|
||||
doCommand(Doc,"App.activeDocument().addObject('Drawing::FeaturePage','%s')",FeatName.c_str());
|
||||
doCommand(Doc,"App.activeDocument().%s.Template = 'A3_Landscape.svg'",FeatName.c_str());
|
||||
doCommand(Doc,"App.activeDocument().recompute()");
|
||||
doCommand(Doc, "App.activeDocument().addObject('Drawing::FeaturePage','%s')", FeatName.c_str());
|
||||
doCommand(Doc, "App.activeDocument().%s.Template = 'A3_Landscape.svg'", FeatName.c_str());
|
||||
doCommand(Doc, "App.activeDocument().recompute()");
|
||||
commitCommand();
|
||||
}
|
||||
|
||||
bool CmdDrawingNewA3Landscape::isActive(void)
|
||||
{
|
||||
if (getActiveGuiDocument())
|
||||
if (getActiveGuiDocument()) {
|
||||
return true;
|
||||
else
|
||||
}
|
||||
else {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -303,45 +308,51 @@ bool CmdDrawingNewA3Landscape::isActive(void)
|
||||
DEF_STD_CMD(CmdDrawingNewView)
|
||||
|
||||
CmdDrawingNewView::CmdDrawingNewView()
|
||||
: Command("Drawing_NewView")
|
||||
: Command("Drawing_NewView")
|
||||
{
|
||||
sAppModule = "Drawing";
|
||||
sGroup = QT_TR_NOOP("Drawing");
|
||||
sMenuText = QT_TR_NOOP("Insert view in drawing");
|
||||
sToolTipText = QT_TR_NOOP("Insert a new View of a Part in the active drawing");
|
||||
sWhatsThis = "Drawing_NewView";
|
||||
sStatusTip = sToolTipText;
|
||||
sPixmap = "actions/drawing-view";
|
||||
sAppModule = "Drawing";
|
||||
sGroup = QT_TR_NOOP("Drawing");
|
||||
sMenuText = QT_TR_NOOP("Insert view in drawing");
|
||||
sToolTipText = QT_TR_NOOP("Insert a new View of a Part in the active drawing");
|
||||
sWhatsThis = "Drawing_NewView";
|
||||
sStatusTip = sToolTipText;
|
||||
sPixmap = "actions/drawing-view";
|
||||
}
|
||||
|
||||
void CmdDrawingNewView::activated(int iMsg)
|
||||
{
|
||||
Q_UNUSED(iMsg);
|
||||
std::vector<App::DocumentObject*> shapes = getSelection().getObjectsOfType(Part::Feature::getClassTypeId());
|
||||
std::vector<App::DocumentObject*> shapes =
|
||||
getSelection().getObjectsOfType(Part::Feature::getClassTypeId());
|
||||
if (shapes.empty()) {
|
||||
QMessageBox::warning(Gui::getMainWindow(), QObject::tr("Wrong selection"),
|
||||
QObject::tr("Select a Part object."));
|
||||
QMessageBox::warning(Gui::getMainWindow(),
|
||||
QObject::tr("Wrong selection"),
|
||||
QObject::tr("Select a Part object."));
|
||||
return;
|
||||
}
|
||||
|
||||
std::vector<App::DocumentObject*> pages = getSelection().getObjectsOfType(Drawing::FeaturePage::getClassTypeId());
|
||||
|
||||
std::vector<App::DocumentObject*> pages =
|
||||
getSelection().getObjectsOfType(Drawing::FeaturePage::getClassTypeId());
|
||||
if (pages.empty()) {
|
||||
pages = this->getDocument()->getObjectsOfType(Drawing::FeaturePage::getClassTypeId());
|
||||
if (pages.empty()){
|
||||
QMessageBox::warning(Gui::getMainWindow(), QObject::tr("No page found"),
|
||||
QObject::tr("Create a page first."));
|
||||
if (pages.empty()) {
|
||||
QMessageBox::warning(Gui::getMainWindow(),
|
||||
QObject::tr("No page found"),
|
||||
QObject::tr("Create a page first."));
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
const std::vector<App::DocumentObject*> selectedProjections = getSelection().getObjectsOfType(Drawing::FeatureView::getClassTypeId());
|
||||
const std::vector<App::DocumentObject*> selectedProjections =
|
||||
getSelection().getObjectsOfType(Drawing::FeatureView::getClassTypeId());
|
||||
float newX = 10.0;
|
||||
float newY = 10.0;
|
||||
float newScale = 1.0;
|
||||
float newRotation = 0.0;
|
||||
Base::Vector3d newDirection(0.0, 0.0, 1.0);
|
||||
if (!selectedProjections.empty()) {
|
||||
const Drawing::FeatureView* const myView = static_cast<Drawing::FeatureView*>(selectedProjections.front());
|
||||
const Drawing::FeatureView* const myView =
|
||||
static_cast<Drawing::FeatureView*>(selectedProjections.front());
|
||||
|
||||
newX = myView->X.getValue();
|
||||
newY = myView->Y.getValue();
|
||||
@@ -351,7 +362,8 @@ void CmdDrawingNewView::activated(int iMsg)
|
||||
// The "Direction" property does not belong to Drawing::FeatureView, but to one of the
|
||||
// many child classes that are projecting objects into the drawing. Therefore, we get the
|
||||
// property by name.
|
||||
const App::PropertyVector* const propDirection = dynamic_cast<App::PropertyVector*>(myView->getPropertyByName("Direction"));
|
||||
const App::PropertyVector* const propDirection =
|
||||
dynamic_cast<App::PropertyVector*>(myView->getPropertyByName("Direction"));
|
||||
if (propDirection) {
|
||||
newDirection = propDirection->getValue();
|
||||
}
|
||||
@@ -360,16 +372,30 @@ void CmdDrawingNewView::activated(int iMsg)
|
||||
std::string PageName = pages.front()->getNameInDocument();
|
||||
|
||||
openCommand("Create view");
|
||||
for (std::vector<App::DocumentObject*>::iterator it = shapes.begin(); it != shapes.end(); ++it) {
|
||||
for (std::vector<App::DocumentObject*>::iterator it = shapes.begin(); it != shapes.end();
|
||||
++it) {
|
||||
std::string FeatName = getUniqueObjectName("View");
|
||||
doCommand(Doc,"App.activeDocument().addObject('Drawing::FeatureViewPart','%s')",FeatName.c_str());
|
||||
doCommand(Doc,"App.activeDocument().%s.Source = App.activeDocument().%s",FeatName.c_str(),(*it)->getNameInDocument());
|
||||
doCommand(Doc,"App.activeDocument().%s.Direction = (%e,%e,%e)",FeatName.c_str(), newDirection.x, newDirection.y, newDirection.z);
|
||||
doCommand(Doc,"App.activeDocument().%s.X = %e",FeatName.c_str(), newX);
|
||||
doCommand(Doc,"App.activeDocument().%s.Y = %e",FeatName.c_str(), newY);
|
||||
doCommand(Doc,"App.activeDocument().%s.Scale = %e",FeatName.c_str(), newScale);
|
||||
doCommand(Doc,"App.activeDocument().%s.Rotation = %e",FeatName.c_str(), newRotation);
|
||||
doCommand(Doc,"App.activeDocument().%s.addObject(App.activeDocument().%s)",PageName.c_str(),FeatName.c_str());
|
||||
doCommand(Doc,
|
||||
"App.activeDocument().addObject('Drawing::FeatureViewPart','%s')",
|
||||
FeatName.c_str());
|
||||
doCommand(Doc,
|
||||
"App.activeDocument().%s.Source = App.activeDocument().%s",
|
||||
FeatName.c_str(),
|
||||
(*it)->getNameInDocument());
|
||||
doCommand(Doc,
|
||||
"App.activeDocument().%s.Direction = (%e,%e,%e)",
|
||||
FeatName.c_str(),
|
||||
newDirection.x,
|
||||
newDirection.y,
|
||||
newDirection.z);
|
||||
doCommand(Doc, "App.activeDocument().%s.X = %e", FeatName.c_str(), newX);
|
||||
doCommand(Doc, "App.activeDocument().%s.Y = %e", FeatName.c_str(), newY);
|
||||
doCommand(Doc, "App.activeDocument().%s.Scale = %e", FeatName.c_str(), newScale);
|
||||
doCommand(Doc, "App.activeDocument().%s.Rotation = %e", FeatName.c_str(), newRotation);
|
||||
doCommand(Doc,
|
||||
"App.activeDocument().%s.addObject(App.activeDocument().%s)",
|
||||
PageName.c_str(),
|
||||
FeatName.c_str());
|
||||
}
|
||||
updateActive();
|
||||
commitCommand();
|
||||
@@ -382,33 +408,37 @@ void CmdDrawingNewView::activated(int iMsg)
|
||||
DEF_STD_CMD_A(CmdDrawingOrthoViews)
|
||||
|
||||
CmdDrawingOrthoViews::CmdDrawingOrthoViews()
|
||||
: Command("Drawing_OrthoViews")
|
||||
: Command("Drawing_OrthoViews")
|
||||
{
|
||||
sAppModule = "Drawing";
|
||||
sGroup = QT_TR_NOOP("Drawing");
|
||||
sMenuText = QT_TR_NOOP("Insert orthographic views");
|
||||
sToolTipText = QT_TR_NOOP("Insert an orthographic projection of a part in the active drawing");
|
||||
sWhatsThis = "Drawing_OrthoView";
|
||||
sStatusTip = sToolTipText;
|
||||
sPixmap = "actions/drawing-orthoviews";
|
||||
sAppModule = "Drawing";
|
||||
sGroup = QT_TR_NOOP("Drawing");
|
||||
sMenuText = QT_TR_NOOP("Insert orthographic views");
|
||||
sToolTipText = QT_TR_NOOP("Insert an orthographic projection of a part in the active drawing");
|
||||
sWhatsThis = "Drawing_OrthoView";
|
||||
sStatusTip = sToolTipText;
|
||||
sPixmap = "actions/drawing-orthoviews";
|
||||
}
|
||||
|
||||
void CmdDrawingOrthoViews::activated(int iMsg)
|
||||
{
|
||||
Q_UNUSED(iMsg);
|
||||
const std::vector<App::DocumentObject*> shapes = getSelection().getObjectsOfType(Part::Feature::getClassTypeId());
|
||||
const std::vector<App::DocumentObject*> shapes =
|
||||
getSelection().getObjectsOfType(Part::Feature::getClassTypeId());
|
||||
if (shapes.size() != 1) {
|
||||
QMessageBox::warning(Gui::getMainWindow(), QObject::tr("Wrong selection"),
|
||||
QObject::tr("Select exactly one Part object."));
|
||||
QMessageBox::warning(Gui::getMainWindow(),
|
||||
QObject::tr("Wrong selection"),
|
||||
QObject::tr("Select exactly one Part object."));
|
||||
return;
|
||||
}
|
||||
|
||||
// Check that a page object exists. TaskDlgOrthoViews will then check for a selected page object
|
||||
// and use that, otherwise it will use the first page in the document.
|
||||
const std::vector<App::DocumentObject*> pages = this->getDocument()->getObjectsOfType(Drawing::FeaturePage::getClassTypeId());
|
||||
const std::vector<App::DocumentObject*> pages =
|
||||
this->getDocument()->getObjectsOfType(Drawing::FeaturePage::getClassTypeId());
|
||||
if (pages.empty()) {
|
||||
QMessageBox::warning(Gui::getMainWindow(), QObject::tr("No page found"),
|
||||
QObject::tr("Create a page first."));
|
||||
QMessageBox::warning(Gui::getMainWindow(),
|
||||
QObject::tr("No page found"),
|
||||
QObject::tr("Create a page first."));
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -419,8 +449,9 @@ void CmdDrawingOrthoViews::activated(int iMsg)
|
||||
|
||||
bool CmdDrawingOrthoViews::isActive(void)
|
||||
{
|
||||
if (Gui::Control().activeDialog())
|
||||
if (Gui::Control().activeDialog()) {
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -432,15 +463,15 @@ bool CmdDrawingOrthoViews::isActive(void)
|
||||
DEF_STD_CMD_A(CmdDrawingOpenBrowserView)
|
||||
|
||||
CmdDrawingOpenBrowserView::CmdDrawingOpenBrowserView()
|
||||
: Command("Drawing_OpenBrowserView")
|
||||
: Command("Drawing_OpenBrowserView")
|
||||
{
|
||||
// setting the
|
||||
sGroup = QT_TR_NOOP("Drawing");
|
||||
sMenuText = QT_TR_NOOP("Open &browser view");
|
||||
sToolTipText = QT_TR_NOOP("Opens the selected page in a browser view");
|
||||
sWhatsThis = "Drawing_OpenBrowserView";
|
||||
sStatusTip = QT_TR_NOOP("Opens the selected page in a browser view");
|
||||
sPixmap = "actions/drawing-openbrowser";
|
||||
sGroup = QT_TR_NOOP("Drawing");
|
||||
sMenuText = QT_TR_NOOP("Open &browser view");
|
||||
sToolTipText = QT_TR_NOOP("Opens the selected page in a browser view");
|
||||
sWhatsThis = "Drawing_OpenBrowserView";
|
||||
sStatusTip = QT_TR_NOOP("Opens the selected page in a browser view");
|
||||
sPixmap = "actions/drawing-openbrowser";
|
||||
}
|
||||
|
||||
void CmdDrawingOpenBrowserView::activated(int iMsg)
|
||||
@@ -448,14 +479,15 @@ void CmdDrawingOpenBrowserView::activated(int iMsg)
|
||||
Q_UNUSED(iMsg);
|
||||
unsigned int n = getSelection().countObjectsOfType(Drawing::FeaturePage::getClassTypeId());
|
||||
if (n != 1) {
|
||||
QMessageBox::warning(Gui::getMainWindow(), QObject::tr("Wrong selection"),
|
||||
QObject::tr("Select one Page object."));
|
||||
QMessageBox::warning(Gui::getMainWindow(),
|
||||
QObject::tr("Wrong selection"),
|
||||
QObject::tr("Select one Page object."));
|
||||
return;
|
||||
}
|
||||
std::vector<Gui::SelectionSingleton::SelObj> Sel = getSelection().getSelection();
|
||||
doCommand(Doc,"PageName = App.activeDocument().%s.PageResult",Sel[0].FeatName);
|
||||
doCommand(Doc,"import WebGui");
|
||||
doCommand(Doc,"WebGui.openBrowser(PageName)");
|
||||
doCommand(Doc, "PageName = App.activeDocument().%s.PageResult", Sel[0].FeatName);
|
||||
doCommand(Doc, "import WebGui");
|
||||
doCommand(Doc, "WebGui.openBrowser(PageName)");
|
||||
}
|
||||
|
||||
bool CmdDrawingOpenBrowserView::isActive(void)
|
||||
@@ -470,37 +502,44 @@ bool CmdDrawingOpenBrowserView::isActive(void)
|
||||
DEF_STD_CMD_A(CmdDrawingAnnotation)
|
||||
|
||||
CmdDrawingAnnotation::CmdDrawingAnnotation()
|
||||
: Command("Drawing_Annotation")
|
||||
: Command("Drawing_Annotation")
|
||||
{
|
||||
// setting the
|
||||
sGroup = QT_TR_NOOP("Drawing");
|
||||
sMenuText = QT_TR_NOOP("&Annotation");
|
||||
sToolTipText = QT_TR_NOOP("Inserts an Annotation view in the active drawing");
|
||||
sWhatsThis = "Drawing_Annotation";
|
||||
sStatusTip = QT_TR_NOOP("Inserts an Annotation view in the active drawing");
|
||||
sPixmap = "actions/drawing-annotation";
|
||||
sGroup = QT_TR_NOOP("Drawing");
|
||||
sMenuText = QT_TR_NOOP("&Annotation");
|
||||
sToolTipText = QT_TR_NOOP("Inserts an Annotation view in the active drawing");
|
||||
sWhatsThis = "Drawing_Annotation";
|
||||
sStatusTip = QT_TR_NOOP("Inserts an Annotation view in the active drawing");
|
||||
sPixmap = "actions/drawing-annotation";
|
||||
}
|
||||
|
||||
void CmdDrawingAnnotation::activated(int iMsg)
|
||||
{
|
||||
Q_UNUSED(iMsg);
|
||||
std::vector<App::DocumentObject*> pages = getSelection().getObjectsOfType(Drawing::FeaturePage::getClassTypeId());
|
||||
std::vector<App::DocumentObject*> pages =
|
||||
getSelection().getObjectsOfType(Drawing::FeaturePage::getClassTypeId());
|
||||
if (pages.empty()) {
|
||||
pages = this->getDocument()->getObjectsOfType(Drawing::FeaturePage::getClassTypeId());
|
||||
if (pages.empty()){
|
||||
QMessageBox::warning(Gui::getMainWindow(), QObject::tr("No page found"),
|
||||
QObject::tr("Create a page first."));
|
||||
if (pages.empty()) {
|
||||
QMessageBox::warning(Gui::getMainWindow(),
|
||||
QObject::tr("No page found"),
|
||||
QObject::tr("Create a page first."));
|
||||
return;
|
||||
}
|
||||
}
|
||||
std::string PageName = pages.front()->getNameInDocument();
|
||||
std::string FeatName = getUniqueObjectName("Annotation");
|
||||
openCommand("Create Annotation");
|
||||
doCommand(Doc,"App.activeDocument().addObject('Drawing::FeatureViewAnnotation','%s')",FeatName.c_str());
|
||||
doCommand(Doc,"App.activeDocument().%s.X = 10.0",FeatName.c_str());
|
||||
doCommand(Doc,"App.activeDocument().%s.Y = 10.0",FeatName.c_str());
|
||||
doCommand(Doc,"App.activeDocument().%s.Scale = 7.0",FeatName.c_str());
|
||||
doCommand(Doc,"App.activeDocument().%s.addObject(App.activeDocument().%s)",PageName.c_str(),FeatName.c_str());
|
||||
doCommand(Doc,
|
||||
"App.activeDocument().addObject('Drawing::FeatureViewAnnotation','%s')",
|
||||
FeatName.c_str());
|
||||
doCommand(Doc, "App.activeDocument().%s.X = 10.0", FeatName.c_str());
|
||||
doCommand(Doc, "App.activeDocument().%s.Y = 10.0", FeatName.c_str());
|
||||
doCommand(Doc, "App.activeDocument().%s.Scale = 7.0", FeatName.c_str());
|
||||
doCommand(Doc,
|
||||
"App.activeDocument().%s.addObject(App.activeDocument().%s)",
|
||||
PageName.c_str(),
|
||||
FeatName.c_str());
|
||||
updateActive();
|
||||
commitCommand();
|
||||
}
|
||||
@@ -518,34 +557,39 @@ bool CmdDrawingAnnotation::isActive(void)
|
||||
DEF_STD_CMD_A(CmdDrawingClip)
|
||||
|
||||
CmdDrawingClip::CmdDrawingClip()
|
||||
: Command("Drawing_Clip")
|
||||
: Command("Drawing_Clip")
|
||||
{
|
||||
// setting the
|
||||
sGroup = QT_TR_NOOP("Drawing");
|
||||
sMenuText = QT_TR_NOOP("&Clip");
|
||||
sToolTipText = QT_TR_NOOP("Inserts a clip group in the active drawing");
|
||||
sWhatsThis = "Drawing_Annotation";
|
||||
sStatusTip = QT_TR_NOOP("Inserts a clip group in the active drawing");
|
||||
sPixmap = "actions/drawing-clip";
|
||||
sGroup = QT_TR_NOOP("Drawing");
|
||||
sMenuText = QT_TR_NOOP("&Clip");
|
||||
sToolTipText = QT_TR_NOOP("Inserts a clip group in the active drawing");
|
||||
sWhatsThis = "Drawing_Annotation";
|
||||
sStatusTip = QT_TR_NOOP("Inserts a clip group in the active drawing");
|
||||
sPixmap = "actions/drawing-clip";
|
||||
}
|
||||
|
||||
void CmdDrawingClip::activated(int iMsg)
|
||||
{
|
||||
Q_UNUSED(iMsg);
|
||||
std::vector<App::DocumentObject*> pages = getSelection().getObjectsOfType(Drawing::FeaturePage::getClassTypeId());
|
||||
std::vector<App::DocumentObject*> pages =
|
||||
getSelection().getObjectsOfType(Drawing::FeaturePage::getClassTypeId());
|
||||
if (pages.empty()) {
|
||||
pages = this->getDocument()->getObjectsOfType(Drawing::FeaturePage::getClassTypeId());
|
||||
if (pages.empty()){
|
||||
QMessageBox::warning(Gui::getMainWindow(), QObject::tr("No page found"),
|
||||
QObject::tr("Create a page first."));
|
||||
if (pages.empty()) {
|
||||
QMessageBox::warning(Gui::getMainWindow(),
|
||||
QObject::tr("No page found"),
|
||||
QObject::tr("Create a page first."));
|
||||
return;
|
||||
}
|
||||
}
|
||||
std::string PageName = pages.front()->getNameInDocument();
|
||||
std::string FeatName = getUniqueObjectName("Clip");
|
||||
openCommand("Create Clip");
|
||||
doCommand(Doc,"App.activeDocument().addObject('Drawing::FeatureClip','%s')",FeatName.c_str());
|
||||
doCommand(Doc,"App.activeDocument().%s.addObject(App.activeDocument().%s)",PageName.c_str(),FeatName.c_str());
|
||||
doCommand(Doc, "App.activeDocument().addObject('Drawing::FeatureClip','%s')", FeatName.c_str());
|
||||
doCommand(Doc,
|
||||
"App.activeDocument().%s.addObject(App.activeDocument().%s)",
|
||||
PageName.c_str(),
|
||||
FeatName.c_str());
|
||||
updateActive();
|
||||
commitCommand();
|
||||
}
|
||||
@@ -563,45 +607,56 @@ bool CmdDrawingClip::isActive(void)
|
||||
DEF_STD_CMD_A(CmdDrawingSymbol)
|
||||
|
||||
CmdDrawingSymbol::CmdDrawingSymbol()
|
||||
: Command("Drawing_Symbol")
|
||||
: Command("Drawing_Symbol")
|
||||
{
|
||||
// setting the
|
||||
sGroup = QT_TR_NOOP("Drawing");
|
||||
sMenuText = QT_TR_NOOP("&Symbol");
|
||||
sToolTipText = QT_TR_NOOP("Inserts a symbol from a svg file in the active drawing");
|
||||
sWhatsThis = "Drawing_Symbol";
|
||||
sStatusTip = QT_TR_NOOP("Inserts a symbol from a svg file in the active drawing");
|
||||
sPixmap = "actions/drawing-symbol";
|
||||
sGroup = QT_TR_NOOP("Drawing");
|
||||
sMenuText = QT_TR_NOOP("&Symbol");
|
||||
sToolTipText = QT_TR_NOOP("Inserts a symbol from a svg file in the active drawing");
|
||||
sWhatsThis = "Drawing_Symbol";
|
||||
sStatusTip = QT_TR_NOOP("Inserts a symbol from a svg file in the active drawing");
|
||||
sPixmap = "actions/drawing-symbol";
|
||||
}
|
||||
|
||||
void CmdDrawingSymbol::activated(int iMsg)
|
||||
{
|
||||
Q_UNUSED(iMsg);
|
||||
std::vector<App::DocumentObject*> pages = getSelection().getObjectsOfType(Drawing::FeaturePage::getClassTypeId());
|
||||
std::vector<App::DocumentObject*> pages =
|
||||
getSelection().getObjectsOfType(Drawing::FeaturePage::getClassTypeId());
|
||||
if (pages.empty()) {
|
||||
pages = this->getDocument()->getObjectsOfType(Drawing::FeaturePage::getClassTypeId());
|
||||
if (pages.empty()){
|
||||
QMessageBox::warning(Gui::getMainWindow(), QObject::tr("No page found"),
|
||||
QObject::tr("Create a page first."));
|
||||
if (pages.empty()) {
|
||||
QMessageBox::warning(Gui::getMainWindow(),
|
||||
QObject::tr("No page found"),
|
||||
QObject::tr("Create a page first."));
|
||||
return;
|
||||
}
|
||||
}
|
||||
// Reading an image
|
||||
QString filename = Gui::FileDialog::getOpenFileName(Gui::getMainWindow(), QObject::tr("Choose an SVG file to open"), QString(),
|
||||
QString filename = Gui::FileDialog::getOpenFileName(
|
||||
Gui::getMainWindow(),
|
||||
QObject::tr("Choose an SVG file to open"),
|
||||
QString(),
|
||||
QString::fromLatin1("%1 (*.svg *.svgz)").arg(QObject::tr("Scalable Vector Graphic")));
|
||||
if (!filename.isEmpty())
|
||||
{
|
||||
if (!filename.isEmpty()) {
|
||||
std::string PageName = pages.front()->getNameInDocument();
|
||||
std::string FeatName = getUniqueObjectName("Symbol");
|
||||
filename = Base::Tools::escapeEncodeFilename(filename);
|
||||
openCommand("Create Symbol");
|
||||
doCommand(Doc,"import Drawing");
|
||||
doCommand(Doc,"f = open(\"%s\",'r')",(const char*)filename.toUtf8());
|
||||
doCommand(Doc,"svg = f.read()");
|
||||
doCommand(Doc,"f.close()");
|
||||
doCommand(Doc,"App.activeDocument().addObject('Drawing::FeatureViewSymbol','%s')",FeatName.c_str());
|
||||
doCommand(Doc,"App.activeDocument().%s.Symbol = Drawing.removeSvgTags(svg)",FeatName.c_str());
|
||||
doCommand(Doc,"App.activeDocument().%s.addObject(App.activeDocument().%s)",PageName.c_str(),FeatName.c_str());
|
||||
doCommand(Doc, "import Drawing");
|
||||
doCommand(Doc, "f = open(\"%s\",'r')", (const char*)filename.toUtf8());
|
||||
doCommand(Doc, "svg = f.read()");
|
||||
doCommand(Doc, "f.close()");
|
||||
doCommand(Doc,
|
||||
"App.activeDocument().addObject('Drawing::FeatureViewSymbol','%s')",
|
||||
FeatName.c_str());
|
||||
doCommand(Doc,
|
||||
"App.activeDocument().%s.Symbol = Drawing.removeSvgTags(svg)",
|
||||
FeatName.c_str());
|
||||
doCommand(Doc,
|
||||
"App.activeDocument().%s.addObject(App.activeDocument().%s)",
|
||||
PageName.c_str(),
|
||||
FeatName.c_str());
|
||||
updateActive();
|
||||
commitCommand();
|
||||
}
|
||||
@@ -620,15 +675,15 @@ bool CmdDrawingSymbol::isActive(void)
|
||||
DEF_STD_CMD_A(CmdDrawingExportPage)
|
||||
|
||||
CmdDrawingExportPage::CmdDrawingExportPage()
|
||||
: Command("Drawing_ExportPage")
|
||||
: Command("Drawing_ExportPage")
|
||||
{
|
||||
// setting the
|
||||
sGroup = QT_TR_NOOP("File");
|
||||
sMenuText = QT_TR_NOOP("&Export page...");
|
||||
sToolTipText = QT_TR_NOOP("Export a page to an SVG file");
|
||||
sWhatsThis = "Drawing_ExportPage";
|
||||
sStatusTip = QT_TR_NOOP("Export a page to an SVG file");
|
||||
sPixmap = "document-save";
|
||||
sGroup = QT_TR_NOOP("File");
|
||||
sMenuText = QT_TR_NOOP("&Export page...");
|
||||
sToolTipText = QT_TR_NOOP("Export a page to an SVG file");
|
||||
sWhatsThis = "Drawing_ExportPage";
|
||||
sStatusTip = QT_TR_NOOP("Export a page to an SVG file");
|
||||
sPixmap = "document-save";
|
||||
}
|
||||
|
||||
void CmdDrawingExportPage::activated(int iMsg)
|
||||
@@ -636,8 +691,9 @@ void CmdDrawingExportPage::activated(int iMsg)
|
||||
Q_UNUSED(iMsg);
|
||||
unsigned int n = getSelection().countObjectsOfType(Drawing::FeaturePage::getClassTypeId());
|
||||
if (n != 1) {
|
||||
QMessageBox::warning(Gui::getMainWindow(), QObject::tr("Wrong selection"),
|
||||
QObject::tr("Select one Page object."));
|
||||
QMessageBox::warning(Gui::getMainWindow(),
|
||||
QObject::tr("Wrong selection"),
|
||||
QObject::tr("Select one Page object."));
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -645,17 +701,20 @@ void CmdDrawingExportPage::activated(int iMsg)
|
||||
filter << QString::fromLatin1("%1 (*.svg)").arg(QObject::tr("Scalable Vector Graphic"));
|
||||
filter << QString::fromLatin1("%1 (*.*)").arg(QObject::tr("All Files"));
|
||||
|
||||
QString fn = Gui::FileDialog::getSaveFileName(Gui::getMainWindow(), QObject::tr("Export page"), QString(), filter.join(QLatin1String(";;")));
|
||||
QString fn = Gui::FileDialog::getSaveFileName(Gui::getMainWindow(),
|
||||
QObject::tr("Export page"),
|
||||
QString(),
|
||||
filter.join(QLatin1String(";;")));
|
||||
if (!fn.isEmpty()) {
|
||||
std::vector<Gui::SelectionSingleton::SelObj> Sel = getSelection().getSelection();
|
||||
openCommand("Drawing export page");
|
||||
|
||||
doCommand(Doc,"PageFile = open(App.activeDocument().%s.PageResult,'r')",Sel[0].FeatName);
|
||||
doCommand(Doc, "PageFile = open(App.activeDocument().%s.PageResult,'r')", Sel[0].FeatName);
|
||||
std::string fname = (const char*)fn.toUtf8();
|
||||
fname = Base::Tools::escapeEncodeFilename(fname);
|
||||
doCommand(Doc,"OutFile = open(\"%s\",'w')",fname.c_str());
|
||||
doCommand(Doc,"OutFile.write(PageFile.read())");
|
||||
doCommand(Doc,"del OutFile,PageFile");
|
||||
doCommand(Doc, "OutFile = open(\"%s\",'w')", fname.c_str());
|
||||
doCommand(Doc, "OutFile.write(PageFile.read())");
|
||||
doCommand(Doc, "del OutFile,PageFile");
|
||||
|
||||
commitCommand();
|
||||
}
|
||||
@@ -673,14 +732,14 @@ bool CmdDrawingExportPage::isActive(void)
|
||||
DEF_STD_CMD_A(CmdDrawingProjectShape)
|
||||
|
||||
CmdDrawingProjectShape::CmdDrawingProjectShape()
|
||||
: Command("Drawing_ProjectShape")
|
||||
: Command("Drawing_ProjectShape")
|
||||
{
|
||||
// setting the
|
||||
sGroup = QT_TR_NOOP("Drawing");
|
||||
sMenuText = QT_TR_NOOP("Project shape...");
|
||||
sToolTipText = QT_TR_NOOP("Project shape onto a user-defined plane");
|
||||
sStatusTip = QT_TR_NOOP("Project shape onto a user-defined plane");
|
||||
sWhatsThis = "Drawing_ProjectShape";
|
||||
sGroup = QT_TR_NOOP("Drawing");
|
||||
sMenuText = QT_TR_NOOP("Project shape...");
|
||||
sToolTipText = QT_TR_NOOP("Project shape onto a user-defined plane");
|
||||
sStatusTip = QT_TR_NOOP("Project shape onto a user-defined plane");
|
||||
sWhatsThis = "Drawing_ProjectShape";
|
||||
}
|
||||
|
||||
void CmdDrawingProjectShape::activated(int iMsg)
|
||||
@@ -701,7 +760,6 @@ bool CmdDrawingProjectShape::isActive(void)
|
||||
}
|
||||
|
||||
|
||||
|
||||
//===========================================================================
|
||||
// Drawing_Draft_View
|
||||
//===========================================================================
|
||||
@@ -709,22 +767,23 @@ bool CmdDrawingProjectShape::isActive(void)
|
||||
DEF_STD_CMD_A(CmdDrawingDraftView)
|
||||
|
||||
CmdDrawingDraftView::CmdDrawingDraftView()
|
||||
: Command("Drawing_DraftView")
|
||||
: Command("Drawing_DraftView")
|
||||
{
|
||||
// setting the
|
||||
sGroup = QT_TR_NOOP("Drawing");
|
||||
sMenuText = QT_TR_NOOP("&Draft View");
|
||||
sToolTipText = QT_TR_NOOP("Inserts a Draft view of the selected object(s) in the active drawing");
|
||||
sWhatsThis = "Drawing_DraftView";
|
||||
sStatusTip = QT_TR_NOOP("Inserts a Draft view of the selected object(s) in the active drawing");
|
||||
sPixmap = "actions/drawing-draft-view";
|
||||
sGroup = QT_TR_NOOP("Drawing");
|
||||
sMenuText = QT_TR_NOOP("&Draft View");
|
||||
sToolTipText =
|
||||
QT_TR_NOOP("Inserts a Draft view of the selected object(s) in the active drawing");
|
||||
sWhatsThis = "Drawing_DraftView";
|
||||
sStatusTip = QT_TR_NOOP("Inserts a Draft view of the selected object(s) in the active drawing");
|
||||
sPixmap = "actions/drawing-draft-view";
|
||||
}
|
||||
|
||||
void CmdDrawingDraftView::activated(int iMsg)
|
||||
{
|
||||
Q_UNUSED(iMsg);
|
||||
addModule(Gui,"Draft");
|
||||
doCommand(Gui,"Gui.runCommand(\"Draft_Drawing\")");
|
||||
addModule(Gui, "Draft");
|
||||
doCommand(Gui, "Gui.runCommand(\"Draft_Drawing\")");
|
||||
}
|
||||
|
||||
bool CmdDrawingDraftView::isActive(void)
|
||||
@@ -740,39 +799,51 @@ bool CmdDrawingDraftView::isActive(void)
|
||||
DEF_STD_CMD_A(CmdDrawingSpreadsheetView)
|
||||
|
||||
CmdDrawingSpreadsheetView::CmdDrawingSpreadsheetView()
|
||||
: Command("Drawing_SpreadsheetView")
|
||||
: Command("Drawing_SpreadsheetView")
|
||||
{
|
||||
// setting the
|
||||
sGroup = QT_TR_NOOP("Drawing");
|
||||
sMenuText = QT_TR_NOOP("&Spreadsheet View");
|
||||
sToolTipText = QT_TR_NOOP("Inserts a view of a selected spreadsheet in the active drawing");
|
||||
sWhatsThis = "Drawing_SpreadsheetView";
|
||||
sStatusTip = QT_TR_NOOP("Inserts a view of a selected spreadsheet in the active drawing");
|
||||
sPixmap = "actions/drawing-spreadsheet";
|
||||
sGroup = QT_TR_NOOP("Drawing");
|
||||
sMenuText = QT_TR_NOOP("&Spreadsheet View");
|
||||
sToolTipText = QT_TR_NOOP("Inserts a view of a selected spreadsheet in the active drawing");
|
||||
sWhatsThis = "Drawing_SpreadsheetView";
|
||||
sStatusTip = QT_TR_NOOP("Inserts a view of a selected spreadsheet in the active drawing");
|
||||
sPixmap = "actions/drawing-spreadsheet";
|
||||
}
|
||||
|
||||
void CmdDrawingSpreadsheetView::activated(int iMsg)
|
||||
{
|
||||
Q_UNUSED(iMsg);
|
||||
const std::vector<App::DocumentObject*> spreads = getSelection().getObjectsOfType(Spreadsheet::Sheet::getClassTypeId());
|
||||
const std::vector<App::DocumentObject*> spreads =
|
||||
getSelection().getObjectsOfType(Spreadsheet::Sheet::getClassTypeId());
|
||||
if (spreads.size() != 1) {
|
||||
QMessageBox::warning(Gui::getMainWindow(), QObject::tr("Wrong selection"),
|
||||
QObject::tr("Select exactly one Spreadsheet object."));
|
||||
QMessageBox::warning(Gui::getMainWindow(),
|
||||
QObject::tr("Wrong selection"),
|
||||
QObject::tr("Select exactly one Spreadsheet object."));
|
||||
return;
|
||||
}
|
||||
const std::vector<App::DocumentObject*> pages = this->getDocument()->getObjectsOfType(Drawing::FeaturePage::getClassTypeId());
|
||||
const std::vector<App::DocumentObject*> pages =
|
||||
this->getDocument()->getObjectsOfType(Drawing::FeaturePage::getClassTypeId());
|
||||
if (pages.empty()) {
|
||||
QMessageBox::warning(Gui::getMainWindow(), QObject::tr("No page found"),
|
||||
QObject::tr("Create a page first."));
|
||||
QMessageBox::warning(Gui::getMainWindow(),
|
||||
QObject::tr("No page found"),
|
||||
QObject::tr("Create a page first."));
|
||||
return;
|
||||
}
|
||||
std::string SpreadName = spreads.front()->getNameInDocument();
|
||||
std::string PageName = pages.front()->getNameInDocument();
|
||||
openCommand("Create spreadsheet view");
|
||||
std::string FeatName = getUniqueObjectName("View");
|
||||
doCommand(Doc,"App.activeDocument().addObject('Drawing::FeatureViewSpreadsheet','%s')",FeatName.c_str());
|
||||
doCommand(Doc,"App.activeDocument().%s.Source = App.activeDocument().%s",FeatName.c_str(),SpreadName.c_str());
|
||||
doCommand(Doc,"App.activeDocument().%s.addObject(App.activeDocument().%s)",PageName.c_str(),FeatName.c_str());
|
||||
doCommand(Doc,
|
||||
"App.activeDocument().addObject('Drawing::FeatureViewSpreadsheet','%s')",
|
||||
FeatName.c_str());
|
||||
doCommand(Doc,
|
||||
"App.activeDocument().%s.Source = App.activeDocument().%s",
|
||||
FeatName.c_str(),
|
||||
SpreadName.c_str());
|
||||
doCommand(Doc,
|
||||
"App.activeDocument().%s.addObject(App.activeDocument().%s)",
|
||||
PageName.c_str(),
|
||||
FeatName.c_str());
|
||||
updateActive();
|
||||
commitCommand();
|
||||
}
|
||||
@@ -785,7 +856,7 @@ bool CmdDrawingSpreadsheetView::isActive(void)
|
||||
|
||||
void CreateDrawingCommands(void)
|
||||
{
|
||||
Gui::CommandManager &rcCmdMgr = Gui::Application::Instance->commandManager();
|
||||
Gui::CommandManager& rcCmdMgr = Gui::Application::Instance->commandManager();
|
||||
|
||||
rcCmdMgr.addCommand(new CmdDrawingOpen());
|
||||
rcCmdMgr.addCommand(new CmdDrawingNewPage());
|
||||
|
||||
Reference in New Issue
Block a user