1 /****************************************************************************
2 **
3 ** This file is part of the LibreCAD project, a 2D CAD program
4 **
5 ** Copyright (C) 2010 R. van Twisk (librecad@rvt.dds.nl)
6 ** Copyright (C) 2001-2003 RibbonSoft. All rights reserved.
7 **
8 **
9 ** This file may be distributed and/or modified under the terms of the
10 ** GNU General Public License version 2 as published by the Free Software
11 ** Foundation and appearing in the file gpl-2.0.txt included in the
12 ** packaging of this file.
13 **
14 ** This program is distributed in the hope that it will be useful,
15 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
16 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17 ** GNU General Public License for more details.
18 **
19 ** You should have received a copy of the GNU General Public License
20 ** along with this program; if not, write to the Free Software
21 ** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
22 **
23 ** This copyright notice MUST APPEAR in all copies of the script!
24 **
25 **********************************************************************/
26 #include "qg_dlgattributes.h"
27 
28 /*
29  *  Constructs a QG_DlgAttributes as a child of 'parent', with the
30  *  name 'name' and widget flags set to 'f'.
31  *
32  *  The dialog will by default be modeless, unless you set 'modal' to
33  *  true to construct a modal dialog.
34  */
QG_DlgAttributes(QWidget * parent,bool modal,Qt::WindowFlags fl)35 QG_DlgAttributes::QG_DlgAttributes(QWidget* parent, bool modal, Qt::WindowFlags fl)
36     : QDialog(parent, fl)
37 {
38     setModal(modal);
39     setupUi(this);
40 
41 }
42 
43 /*
44  *  Destroys the object and frees any allocated resources
45  */
~QG_DlgAttributes()46 QG_DlgAttributes::~QG_DlgAttributes()
47 {
48     // no need to delete child widgets, Qt does it all for us
49 }
50 
51 /*
52  *  Sets the strings of the subwidgets using the current
53  *  language.
54  */
languageChange()55 void QG_DlgAttributes::languageChange()
56 {
57     retranslateUi(this);
58 }
59 
setData(RS_AttributesData * data,RS_LayerList & layerList)60 void QG_DlgAttributes::setData(RS_AttributesData* data, RS_LayerList& layerList) {
61     this->data = data;
62 
63     //pen = line->getPen();
64     wPen->setPen(data->pen, true, true, "Pen");
65 
66     //RS_Graphic* graphic = line->getGraphic();
67     //if (graphic) {
68         cbLayer->init(layerList, false, true);
69     //}
70     //cbLayer->setLayer(data->layer);
71     //RS_Layer* lay = line->getLayer(false);
72     //if (lay) {
73     //    cbLayer->setLayer(*lay);
74     //}
75 }
76 
updateData()77 void QG_DlgAttributes::updateData() {
78     data->pen = wPen->getPen();
79     data->layer = cbLayer->currentText();
80 
81     data->changeColor = !wPen->isColorUnchanged();
82     data->changeLineType = !wPen->isLineTypeUnchanged();
83     data->changeWidth = !wPen->isWidthUnchanged();
84 
85     data->changeLayer = !cbLayer->isUnchanged();
86 
87     data->applyBlockDeep = cbBlockDeep->isChecked();
88 }
89 
90