3 // Part of the Architektonas Project
4 // Originally part of QCad Community Edition by Andrew Mustun
5 // Extensively rewritten and refactored by James L. Hammons
6 // Portions copyright (C) 2001-2003 RibbonSoft
7 // Copyright (C) 2010 Underground Software
8 // See the README and GPLv2 files for licensing and warranty information
10 // JLH = James L. Hammons <jlhamm@acm.org>
13 // --- ---------- -----------------------------------------------------------
14 // JLH 06/11/2010 Created this file. :-)
17 #include "dlginsert.h"
19 #include "rs_insert.h"
23 DlgInsert::DlgInsert(QWidget * parent/*= NULL*/, Qt::WindowFlags flags/*= 0*/):
24 QDialog(parent, flags)
29 DlgInsert::~DlgInsert()
33 void DlgInsert::setInsert(RS_Insert & i)
36 //pen = insert->getPen();
37 ui.wPen->setPen(insert->getPen(false), true, false, "Pen");
38 Drawing * graphic = insert->getGraphic();
41 ui.cbLayer->init(*(graphic->getLayerList()), false, false);
43 RS_Layer * lay = insert->getLayer(false);
46 ui.cbLayer->setLayer(*lay);
49 s.setNum(insert->getInsertionPoint().x);
50 ui.leInsertionPointX->setText(s);
51 s.setNum(insert->getInsertionPoint().y);
52 ui.leInsertionPointY->setText(s);
53 s.setNum(insert->getScale().x);
54 ui.leScale->setText(s);
55 s.setNum(RS_Math::rad2deg(insert->getAngle()));
56 ui.leAngle->setText(s);
57 s.setNum(insert->getRows());
58 ui.leRows->setText(s);
59 s.setNum(insert->getCols());
60 ui.leCols->setText(s);
61 s.setNum(insert->getSpacing().x);
62 ui.leRowSpacing->setText(s);
63 s.setNum(insert->getSpacing().y);
64 ui.leColSpacing->setText(s);
67 void DlgInsert::updateInsert()
69 insert->setInsertionPoint(Vector(RS_Math::eval(ui.leInsertionPointX->text()),
70 RS_Math::eval(ui.leInsertionPointY->text())));
71 insert->setScale(Vector(RS_Math::eval(ui.leScale->text()),
72 RS_Math::eval(ui.leScale->text())));
73 insert->setAngle(RS_Math::deg2rad(RS_Math::eval(ui.leAngle->text())));
74 insert->setRows(RS_Math::round(RS_Math::eval(ui.leRows->text())));
75 insert->setCols(RS_Math::round(RS_Math::eval(ui.leCols->text())));
76 insert->setSpacing(Vector(RS_Math::eval(ui.leRowSpacing->text()),
77 RS_Math::eval(ui.leColSpacing->text())));
78 insert->setPen(ui.wPen->getPen());
79 insert->setLayer(ui.cbLayer->currentText());