From c9ba79666daa0d1be20a17977c1f70551a1ea486 Mon Sep 17 00:00:00 2001 From: wmayer Date: Tue, 13 Aug 2013 15:04:55 +0200 Subject: [PATCH] 0001209: Change the Word 'Radius' for Chamfering --- src/Mod/Part/Gui/DlgFilletEdges.cpp | 44 +++++++++++++++++++++-------- src/Mod/Part/Gui/DlgFilletEdges.h | 10 ++++--- src/Mod/Part/Gui/DlgFilletEdges.ui | 2 +- 3 files changed, 39 insertions(+), 17 deletions(-) diff --git a/src/Mod/Part/Gui/DlgFilletEdges.cpp b/src/Mod/Part/Gui/DlgFilletEdges.cpp index f53fc7445..f6ea3929f 100644 --- a/src/Mod/Part/Gui/DlgFilletEdges.cpp +++ b/src/Mod/Part/Gui/DlgFilletEdges.cpp @@ -169,12 +169,13 @@ namespace PartGui { return element.substr(0,4) == "Face"; } }; - class DlgFilletEdgesP + class DlgFilletEdges::Private { public: App::DocumentObject* object; EdgeFaceSelection* selection; Part::FilletBase* fillet; + FilletType filletType; std::vector edge_ids; TopTools_IndexedMapOfShape all_edges; TopTools_IndexedMapOfShape all_faces; @@ -186,8 +187,8 @@ namespace PartGui { /* TRANSLATOR PartGui::DlgFilletEdges */ -DlgFilletEdges::DlgFilletEdges(Part::FilletBase* fillet, QWidget* parent, Qt::WFlags fl) - : QWidget(parent, fl), ui(new Ui_DlgFilletEdges()), d(new DlgFilletEdgesP()) +DlgFilletEdges::DlgFilletEdges(FilletType type, Part::FilletBase* fillet, QWidget* parent, Qt::WFlags fl) + : QWidget(parent, fl), ui(new Ui_DlgFilletEdges()), d(new Private()) { ui->setupUi(this); @@ -205,9 +206,22 @@ DlgFilletEdges::DlgFilletEdges(Part::FilletBase* fillet, QWidget* parent, Qt::WF connect(model, SIGNAL(toggleCheckState(const QModelIndex&)), this, SLOT(toggleCheckState(const QModelIndex&))); model->insertColumns(0,3); - model->setHeaderData(0, Qt::Horizontal, tr("Edges to fillet"), Qt::DisplayRole); - model->setHeaderData(1, Qt::Horizontal, tr("Start radius"), Qt::DisplayRole); - model->setHeaderData(2, Qt::Horizontal, tr("End radius"), Qt::DisplayRole); + + d->filletType = type; + if (d->filletType == DlgFilletEdges::CHAMFER) { + ui->labelRadius->setText(tr("Length:")); + ui->filletType->setItemText(0, tr("Constant Length")); + ui->filletType->setItemText(1, tr("Variable Length")); + + model->setHeaderData(0, Qt::Horizontal, tr("Edges to chamfer"), Qt::DisplayRole); + model->setHeaderData(1, Qt::Horizontal, tr("Start length"), Qt::DisplayRole); + model->setHeaderData(2, Qt::Horizontal, tr("End length"), Qt::DisplayRole); + } + else { + model->setHeaderData(0, Qt::Horizontal, tr("Edges to fillet"), Qt::DisplayRole); + model->setHeaderData(1, Qt::Horizontal, tr("Start radius"), Qt::DisplayRole); + model->setHeaderData(2, Qt::Horizontal, tr("End radius"), Qt::DisplayRole); + } ui->treeView->setRootIsDecorated(false); ui->treeView->setItemDelegate(new FilletRadiusDelegate(this)); ui->treeView->setModel(model); @@ -657,12 +671,18 @@ void DlgFilletEdges::on_filletType_activated(int index) { QStandardItemModel *model = qobject_cast(ui->treeView->model()); if (index == 0) { - model->setHeaderData(1, Qt::Horizontal, tr("Radius"), Qt::DisplayRole); + if (d->filletType == DlgFilletEdges::CHAMFER) + model->setHeaderData(1, Qt::Horizontal, tr("Length"), Qt::DisplayRole); + else + model->setHeaderData(1, Qt::Horizontal, tr("Radius"), Qt::DisplayRole); ui->treeView->hideColumn(2); ui->filletEndRadius->hide(); } else { - model->setHeaderData(1, Qt::Horizontal, tr("Start radius"), Qt::DisplayRole); + if (d->filletType == DlgFilletEdges::CHAMFER) + model->setHeaderData(1, Qt::Horizontal, tr("Start length"), Qt::DisplayRole); + else + model->setHeaderData(1, Qt::Horizontal, tr("Start radius"), Qt::DisplayRole); ui->treeView->showColumn(2); ui->filletEndRadius->show(); } @@ -790,10 +810,10 @@ bool DlgFilletEdges::accept() // --------------------------------------- -FilletEdgesDialog::FilletEdgesDialog(Part::FilletBase* fillet, QWidget* parent, Qt::WFlags fl) +FilletEdgesDialog::FilletEdgesDialog(DlgFilletEdges::FilletType type, Part::FilletBase* fillet, QWidget* parent, Qt::WFlags fl) : QDialog(parent, fl) { - widget = new DlgFilletEdges(fillet, this); + widget = new DlgFilletEdges(type, fillet, this); this->setWindowTitle(widget->windowTitle()); QVBoxLayout* hboxLayout = new QVBoxLayout(this); @@ -821,7 +841,7 @@ void FilletEdgesDialog::accept() TaskFilletEdges::TaskFilletEdges(Part::Fillet* fillet) { - widget = new DlgFilletEdges(fillet); + widget = new DlgFilletEdges(DlgFilletEdges::FILLET, fillet); taskbox = new Gui::TaskView::TaskBox( Gui::BitmapFactory().pixmap("Part_Fillet"), widget->windowTitle(), true, 0); @@ -861,7 +881,7 @@ bool TaskFilletEdges::reject() /* TRANSLATOR PartGui::DlgChamferEdges */ DlgChamferEdges::DlgChamferEdges(Part::FilletBase* chamfer, QWidget* parent, Qt::WFlags fl) - : DlgFilletEdges(chamfer, parent, fl) + : DlgFilletEdges(DlgFilletEdges::CHAMFER, chamfer, parent, fl) { this->setWindowTitle(tr("Chamfer Edges")); } diff --git a/src/Mod/Part/Gui/DlgFilletEdges.h b/src/Mod/Part/Gui/DlgFilletEdges.h index 0fab0dbeb..ac376dcd6 100644 --- a/src/Mod/Part/Gui/DlgFilletEdges.h +++ b/src/Mod/Part/Gui/DlgFilletEdges.h @@ -70,13 +70,14 @@ Q_SIGNALS: void toggleCheckState(const QModelIndex&); }; -class DlgFilletEdgesP; class DlgFilletEdges : public QWidget, public Gui::SelectionObserver { Q_OBJECT public: - DlgFilletEdges(Part::FilletBase*, QWidget* parent = 0, Qt::WFlags fl = 0); + enum FilletType { FILLET, CHAMFER }; + + DlgFilletEdges(FilletType type, Part::FilletBase*, QWidget* parent = 0, Qt::WFlags fl = 0); ~DlgFilletEdges(); bool accept(); @@ -107,7 +108,8 @@ private Q_SLOTS: private: std::auto_ptr ui; - std::auto_ptr d; + class Private; + std::auto_ptr d; }; class FilletEdgesDialog : public QDialog @@ -115,7 +117,7 @@ class FilletEdgesDialog : public QDialog Q_OBJECT public: - FilletEdgesDialog(Part::FilletBase* fillet, QWidget* parent = 0, Qt::WFlags fl = 0); + FilletEdgesDialog(DlgFilletEdges::FilletType type, Part::FilletBase* fillet, QWidget* parent = 0, Qt::WFlags fl = 0); ~FilletEdgesDialog(); void accept(); diff --git a/src/Mod/Part/Gui/DlgFilletEdges.ui b/src/Mod/Part/Gui/DlgFilletEdges.ui index 9f2e4606a..0ad96ceac 100644 --- a/src/Mod/Part/Gui/DlgFilletEdges.ui +++ b/src/Mod/Part/Gui/DlgFilletEdges.ui @@ -91,7 +91,7 @@ 0 - + Radius: