0001209: Change the Word 'Radius' for Chamfering

This commit is contained in:
wmayer 2013-08-13 15:04:55 +02:00
parent 2bb8c10fed
commit c9ba79666d
3 changed files with 39 additions and 17 deletions

View File

@ -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<int> 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<QStandardItemModel*>(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"));
}

View File

@ -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_DlgFilletEdges> ui;
std::auto_ptr<DlgFilletEdgesP> d;
class Private;
std::auto_ptr<Private> 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();

View File

@ -91,7 +91,7 @@
<number>0</number>
</property>
<item>
<widget class="QLabel" name="label_2">
<widget class="QLabel" name="labelRadius">
<property name="text">
<string>Radius:</string>
</property>