]> Shamusworld >> Repos - architektonas/blob - src/forms/dlgdimlinear.cpp
Final round of dialogs/forms needing to be converted from Qt3 to 4
[architektonas] / src / forms / dlgdimlinear.cpp
1 // dlgdimlinear.cpp
2 //
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 // (C) 2010 Underground Software
7 //
8 // JLH = James L. Hammons <jlhamm@acm.org>
9 //
10 // Who  When        What
11 // ---  ----------  -----------------------------------------------------------
12 // JLH  06/11/2010  Created this file. :-)
13 //
14
15 #include "dlgdimlinear.h"
16
17 #include "rs_dimlinear.h"
18 #include "drawing.h"
19 #include "rs_math.h"
20
21 DlgDimLinear::DlgDimLinear(QWidget * parent/*= NULL*/, Qt::WindowFlags flags/*= 0*/):
22         QDialog(parent, flags)
23 {
24         ui.setupUi(this);
25 }
26
27 DlgDimLinear::~DlgDimLinear()
28 {
29 }
30
31 void DlgDimLinear::setDim(RS_DimLinear & d)
32 {
33         dim = &d;
34         ui.wPen->setPen(dim->getPen(false), true, false, "Pen");
35         Drawing * graphic = dim->getGraphic();
36
37         if (graphic)
38                 ui.cbLayer->init(*(graphic->getLayerList()), false, false);
39
40         RS_Layer * lay = dim->getLayer(false);
41
42         if (lay)
43                 ui.cbLayer->setLayer(*lay);
44
45         ui.wLabel->setLabel(dim->getLabel(false));
46         ui.leAngle->setText(QString("%1").arg(RS_Math::rad2deg(dim->getAngle())));
47 }
48
49 void DlgDimLinear::updateDim()
50 {
51         dim->setLabel(ui.wLabel->getLabel());
52         dim->setAngle(RS_Math::deg2rad(RS_Math::eval(ui.leAngle->text(), 0.0)));
53 }