dlgTemplateField parentage
cosmetic: move button box
This commit is contained in:
parent
8edfa147da
commit
277a00dc3c
|
@ -74,7 +74,7 @@
|
|||
<set>QDialogButtonBox::Cancel|QDialogButtonBox::Ok</set>
|
||||
</property>
|
||||
<property name="centerButtons">
|
||||
<bool>true</bool>
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
|
|
|
@ -94,7 +94,7 @@ MDIViewPage::MDIViewPage(ViewProviderPage *pageVp, Gui::Document* doc, QWidget*
|
|||
pageGui(pageVp),
|
||||
m_frameState(true)
|
||||
{
|
||||
m_view = new QGVPage(pageVp,m_scene);
|
||||
m_view = new QGVPage(pageVp,m_scene,this);
|
||||
|
||||
m_backgroundAction = new QAction(tr("&Background"), this);
|
||||
m_backgroundAction->setEnabled(false);
|
||||
|
|
|
@ -46,24 +46,21 @@
|
|||
|
||||
using namespace TechDrawGui;
|
||||
|
||||
QGISVGTemplate::QGISVGTemplate(QGraphicsScene *scene)
|
||||
: QGITemplate(scene)
|
||||
QGISVGTemplate::QGISVGTemplate(QGraphicsScene *scene, QWidget* srWidget)
|
||||
: QGITemplate(scene),
|
||||
upperLevelWidget(srWidget)
|
||||
{
|
||||
m_svgRender = new QSvgRenderer();
|
||||
m_svgItem.setSharedRenderer(&m_svgRender);
|
||||
|
||||
m_svgItem = new QGraphicsSvgItem();
|
||||
m_svgItem->setSharedRenderer(m_svgRender);
|
||||
m_svgItem.setFlags(QGraphicsItem::ItemClipsToShape);
|
||||
m_svgItem.setCacheMode(QGraphicsItem::NoCache);
|
||||
|
||||
m_svgItem->setFlags(QGraphicsItem::ItemClipsToShape);
|
||||
m_svgItem->setCacheMode(QGraphicsItem::NoCache);
|
||||
|
||||
addToGroup(m_svgItem);
|
||||
addToGroup(&m_svgItem);
|
||||
}
|
||||
|
||||
QGISVGTemplate::~QGISVGTemplate()
|
||||
{
|
||||
clearContents();
|
||||
delete m_svgRender;
|
||||
}
|
||||
|
||||
QVariant QGISVGTemplate::itemChange(GraphicsItemChange change,
|
||||
|
@ -99,11 +96,11 @@ void QGISVGTemplate::load(const QString &fileName)
|
|||
if (!file.exists()) {
|
||||
return;
|
||||
}
|
||||
m_svgRender->load(file.fileName());
|
||||
m_svgRender.load(file.fileName());
|
||||
|
||||
QSize size = m_svgRender->defaultSize();
|
||||
QSize size = m_svgRender.defaultSize();
|
||||
//Base::Console().Log("size of svg document <%i,%i>", size.width(), size.height());
|
||||
m_svgItem->setSharedRenderer(m_svgRender);
|
||||
m_svgItem.setSharedRenderer(&m_svgRender);
|
||||
|
||||
TechDraw::DrawSVGTemplate *tmplte = getSVGTemplate();
|
||||
|
||||
|
@ -170,7 +167,7 @@ void QGISVGTemplate::load(const QString &fileName)
|
|||
double width = editClickBoxSize;
|
||||
double height = editClickBoxSize;
|
||||
|
||||
TemplateTextField *item = new TemplateTextField(this, tmplte, nameMatch[1].str());
|
||||
TemplateTextField *item = new TemplateTextField(this, tmplte, nameMatch[1].str(), upperLevelWidget);
|
||||
float pad = 1;
|
||||
item->setRect(x - pad, -tmplte->getHeight() + y - height - pad,
|
||||
width + 2 * pad, height + 2 * pad);
|
||||
|
@ -198,7 +195,7 @@ void QGISVGTemplate::load(const QString &fileName)
|
|||
QTransform qtrans;
|
||||
qtrans.translate(0.f, -tmplte->getHeight());
|
||||
qtrans.scale(xaspect , yaspect);
|
||||
m_svgItem->setTransform(qtrans);
|
||||
m_svgItem.setTransform(qtrans);
|
||||
}
|
||||
|
||||
TechDraw::DrawSVGTemplate * QGISVGTemplate::getSVGTemplate()
|
||||
|
@ -223,4 +220,4 @@ void QGISVGTemplate::updateView(bool update)
|
|||
draw();
|
||||
}
|
||||
|
||||
#include "moc_QGISVGTemplate.cpp"
|
||||
#include "moc_QGISVGTemplate.cpp"
|
||||
|
|
|
@ -24,12 +24,12 @@
|
|||
#define DRAWINGGUI_QGRAPHICSITEMSVGTEMPLATE_H
|
||||
|
||||
#include "QGITemplate.h"
|
||||
#include <QGraphicsSvgItem>
|
||||
#include <QSvgRenderer>
|
||||
|
||||
QT_BEGIN_NAMESPACE
|
||||
class QGraphicsScene;
|
||||
class QGraphicsSceneMouseEvent;
|
||||
class QGraphicsSvgItem;
|
||||
class QSvgRenderer;
|
||||
QT_END_NAMESPACE
|
||||
|
||||
namespace TechDraw {
|
||||
|
@ -44,7 +44,7 @@ class TechDrawGuiExport QGISVGTemplate : public QGITemplate
|
|||
Q_OBJECT
|
||||
|
||||
public:
|
||||
QGISVGTemplate(QGraphicsScene *);
|
||||
QGISVGTemplate(QGraphicsScene *, QWidget* srWidget=0);
|
||||
~QGISVGTemplate();
|
||||
|
||||
enum {Type = QGraphicsItem::UserType + 153};
|
||||
|
@ -61,11 +61,12 @@ Q_SIGNALS:
|
|||
protected:
|
||||
void openFile(const QFile &file);
|
||||
void load (const QString & fileName);
|
||||
QWidget* upperLevelWidget; //for parenting dlgTemplateField
|
||||
|
||||
protected:
|
||||
TechDraw::DrawSVGTemplate * getSVGTemplate();
|
||||
QGraphicsSvgItem *m_svgItem;
|
||||
QSvgRenderer *m_svgRender;
|
||||
QGraphicsSvgItem m_svgItem;
|
||||
QSvgRenderer m_svgRender;
|
||||
virtual QVariant itemChange(GraphicsItemChange change, const QVariant &value);
|
||||
}; // class QGISVGTemplate
|
||||
|
||||
|
|
|
@ -420,7 +420,7 @@ void QGVPage::setPageTemplate(TechDraw::DrawTemplate *obj)
|
|||
pageTemplate = qTempItem;
|
||||
} else if(obj->isDerivedFrom(TechDraw::DrawSVGTemplate::getClassTypeId())) {
|
||||
//TechDraw::DrawSVGTemplate *dwgTemplate = static_cast<TechDraw::DrawSVGTemplate *>(obj);
|
||||
QGISVGTemplate *qTempItem = new QGISVGTemplate(scene());
|
||||
QGISVGTemplate *qTempItem = new QGISVGTemplate(scene(),this);
|
||||
pageTemplate = qTempItem;
|
||||
}
|
||||
pageTemplate->setTemplate(obj);
|
||||
|
|
|
@ -40,8 +40,12 @@ using namespace TechDrawGui;
|
|||
|
||||
TemplateTextField::TemplateTextField(QGraphicsItem*parent,
|
||||
TechDraw::DrawTemplate *myTmplte,
|
||||
const std::string &myFieldName)
|
||||
: QGraphicsRectItem(parent), tmplte(myTmplte), fieldNameStr(myFieldName)
|
||||
const std::string &myFieldName,
|
||||
QWidget* upperWidget)
|
||||
: QGraphicsRectItem(parent),
|
||||
tmplte(myTmplte),
|
||||
fieldNameStr(myFieldName),
|
||||
dlgOwner(upperWidget)
|
||||
{
|
||||
}
|
||||
|
||||
|
@ -52,7 +56,7 @@ TemplateTextField::~TemplateTextField()
|
|||
|
||||
void TemplateTextField::mousePressEvent(QGraphicsSceneMouseEvent *event)
|
||||
{
|
||||
DlgTemplateField* ui = new DlgTemplateField(nullptr);
|
||||
DlgTemplateField* ui = new DlgTemplateField(dlgOwner);
|
||||
ui->setFieldName(fieldNameStr);
|
||||
ui->setFieldContent(tmplte->EditableTexts[fieldNameStr]);
|
||||
int uiCode = ui->exec();
|
||||
|
|
|
@ -47,7 +47,8 @@ namespace TechDrawGui
|
|||
public:
|
||||
TemplateTextField(QGraphicsItem*parent,
|
||||
TechDraw::DrawTemplate *myTmplte,
|
||||
const std::string &myFieldName);
|
||||
const std::string &myFieldName,
|
||||
QWidget* upperWidget=0);
|
||||
|
||||
~TemplateTextField();
|
||||
|
||||
|
@ -61,6 +62,7 @@ namespace TechDrawGui
|
|||
virtual void mousePressEvent(QGraphicsSceneMouseEvent *event);
|
||||
TechDraw::DrawTemplate *tmplte;
|
||||
std::string fieldNameStr;
|
||||
QWidget* dlgOwner;
|
||||
};
|
||||
} // namespace TechDrawGui
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user