Sketcher: fix clazy warnings:

* Wclazy-connect-by-name
* Wclazy-unused-non-trivial-variable
* Wclazy-detaching-temporary
This commit is contained in:
wmayer
2022-11-13 15:39:27 +01:00
parent 0a5358c24f
commit fce59ca723
2 changed files with 81 additions and 56 deletions

View File

@@ -512,6 +512,7 @@ TaskSketcherElements::TaskSketcherElements(ViewProviderSketch *sketchView)
const char* ctrlKey = "Ctrl";
QString cmdKey = QShortcut::tr(ctrlKey);
#endif
Q_UNUSED(cmdKey)
ui->listWidgetElements->setSelectionMode(QAbstractItemView::ExtendedSelection);
ui->listWidgetElements->setEditTriggers(QListWidget::NoEditTriggers);
@@ -519,42 +520,7 @@ TaskSketcherElements::TaskSketcherElements(ViewProviderSketch *sketchView)
createSettingsButtonActions();
// connecting the needed signals
QObject::connect(
ui->listWidgetElements, SIGNAL(itemPressed(QListWidgetItem *)),
this , SLOT (on_listWidgetElements_itemPressed(QListWidgetItem *))
);
QObject::connect(
ui->listWidgetElements, SIGNAL(itemEntered(QListWidgetItem *)),
this , SLOT (on_listWidgetElements_itemEntered(QListWidgetItem *))
);
QObject::connect(
ui->listWidgetElements, SIGNAL(onItemHovered(QListWidgetItem *)),
this, SLOT(on_listWidgetElements_mouseMoveOnItem(QListWidgetItem *))
);
QObject::connect(
ui->listMultiFilter, SIGNAL(itemChanged(QListWidgetItem*)),
this, SLOT(on_listMultiFilter_itemChanged(QListWidgetItem*))
);
QObject::connect(
ui->filterBox, SIGNAL(stateChanged(int)),
this, SLOT(on_filterBox_stateChanged(int))
);
QObject::connect(
ui->settingsButton, SIGNAL(clicked(bool)),
this, SLOT(on_settingsButton_clicked(bool))
);
QObject::connect(
qAsConst(ui->settingsButton)->actions()[0], SIGNAL(changed()),
this, SLOT(on_settings_extendedInformation_changed())
);
QObject::connect(
qAsConst(ui->settingsButton)->actions()[1], SIGNAL(changed()),
this, SLOT(on_settings_autoCollapseFilter_changed())
);
connectionElementsChanged = sketchView->signalElementsChanged.connect(
boost::bind(&SketcherGui::TaskSketcherElements::slotElementsChanged, this));
connectSignals();
this->groupLayout()->addWidget(proxy);
@@ -584,9 +550,50 @@ TaskSketcherElements::~TaskSketcherElements()
connectionElementsChanged.disconnect();
}
void TaskSketcherElements::connectSignals()
{
// connecting the needed signals
QObject::connect(
ui->listWidgetElements, &ElementView::itemPressed,
this, &TaskSketcherElements::onListWidgetElementsItemPressed
);
QObject::connect(
ui->listWidgetElements, &ElementView::itemEntered,
this, &TaskSketcherElements::onListWidgetElementsItemEntered
);
QObject::connect(
ui->listWidgetElements, &ElementView::onItemHovered,
this, &TaskSketcherElements::onListWidgetElementsMouseMoveOnItem
);
QObject::connect(
ui->listMultiFilter, &QListWidget::itemChanged,
this, &TaskSketcherElements::onListMultiFilterItemChanged
);
QObject::connect(
ui->filterBox, &QCheckBox::stateChanged,
this, &TaskSketcherElements::onFilterBoxStateChanged
);
QObject::connect(
ui->settingsButton, &QToolButton::clicked,
this, &TaskSketcherElements::onSettingsButtonClicked
);
QObject::connect(
qAsConst(ui->settingsButton)->actions()[0], &QAction::changed,
this, &TaskSketcherElements::onSettingsExtendedInformationChanged
);
QObject::connect(
qAsConst(ui->settingsButton)->actions()[1], &QAction::changed,
this, &TaskSketcherElements::onSettingsAutoCollapseFilterChanged
);
connectionElementsChanged = sketchView->signalElementsChanged.connect(
boost::bind(&SketcherGui::TaskSketcherElements::slotElementsChanged, this));
}
/* filter functions --------------------------------------------------- */
void TaskSketcherElements::on_filterBox_stateChanged(int val){
void TaskSketcherElements::onFilterBoxStateChanged(int val)
{
Q_UNUSED(val)
ui->listMultiFilter->setVisible(ui->filterBox->checkState() == Qt::Checked);
@@ -610,14 +617,29 @@ bool TaskSketcherElements::eventFilter(QObject* obj, QEvent* event)
return TaskBox::eventFilter(obj, event);
}
enum class GeoFilterType { NormalGeos, ConstructionGeos, InternalGeos, ExternalGeos, AllGeosTypes, PointGeos, LineGeos, CircleGeos, EllipseGeos, ArcGeos, ArcOfEllipseGeos, HyperbolaGeos, ParabolaGeos, BSplineGeos };
enum class GeoFilterType { NormalGeos,
ConstructionGeos,
InternalGeos,
ExternalGeos,
AllGeosTypes,
PointGeos,
LineGeos,
CircleGeos,
EllipseGeos,
ArcGeos,
ArcOfEllipseGeos,
HyperbolaGeos,
ParabolaGeos,
BSplineGeos
};
void TaskSketcherElements::on_listMultiFilter_itemChanged(QListWidgetItem* item)
void TaskSketcherElements::onListMultiFilterItemChanged(QListWidgetItem* item)
{
{
int start = 4; //From 4 to the end, it's the geometry types (line, circle, arc...)
QSignalBlocker sigblk(ui->listMultiFilter);
if (item == ui->listMultiFilter->item(static_cast<int>(GeoFilterType::AllGeosTypes))) {
for (int i = 4; i < ui->listMultiFilter->count(); i++) { //From 4 to the end, it's the geometry types (line, circle, arc...)
for (int i = start; i < ui->listMultiFilter->count(); i++) {
ui->listMultiFilter->item(i)->setCheckState(item->checkState());
}
}
@@ -752,7 +774,7 @@ void TaskSketcherElements::onSelectionChanged(const Gui::SelectionChanges& msg)
}
}
void TaskSketcherElements::on_listWidgetElements_itemPressed(QListWidgetItem* it) {
void TaskSketcherElements::onListWidgetElementsItemPressed(QListWidgetItem* it) {
//We use itemPressed instead of previously used ItemSelectionChanged because if user click on already selected item, ItemSelectionChanged didn't trigger.
if (!it)
return;
@@ -897,14 +919,14 @@ void TaskSketcherElements::on_listWidgetElements_itemPressed(QListWidgetItem* it
ui->listWidgetElements->repaint();
}
void TaskSketcherElements::on_listWidgetElements_itemEntered(QListWidgetItem *item)
void TaskSketcherElements::onListWidgetElementsItemEntered(QListWidgetItem *item)
{
ui->listWidgetElements->setFocus();
focusItemIndex = ui->listWidgetElements->row(item);
}
void TaskSketcherElements::on_listWidgetElements_mouseMoveOnItem(QListWidgetItem* it) {
void TaskSketcherElements::onListWidgetElementsMouseMoveOnItem(QListWidgetItem* it) {
ElementItem* item = static_cast<ElementItem*>(it);
if (!item || (ui->listWidgetElements->row(item) == previouslyHoveredItemIndex && item->hovered == previouslyHoveredType) )
@@ -1177,9 +1199,10 @@ void TaskSketcherElements::createSettingsButtonActions()
collapseFilter = hGrp->GetBool("AutoCollapseFilter", true);
}
void TaskSketcherElements::on_settings_extendedInformation_changed()
void TaskSketcherElements::onSettingsExtendedInformationChanged()
{
isNamingBoxChecked = ui->settingsButton->actions()[0]->isChecked();
QList<QAction*> acts = ui->settingsButton->actions();
isNamingBoxChecked = acts[0]->isChecked();
ParameterGrp::handle hGrp = App::GetApplication().GetParameterGroupByPath("User parameter:BaseApp/Preferences/Mod/Sketcher/Elements");
hGrp->SetBool("ExtendedNaming", isNamingBoxChecked);
@@ -1187,9 +1210,10 @@ void TaskSketcherElements::on_settings_extendedInformation_changed()
slotElementsChanged();
}
void TaskSketcherElements::on_settings_autoCollapseFilter_changed()
void TaskSketcherElements::onSettingsAutoCollapseFilterChanged()
{
collapseFilter = ui->settingsButton->actions()[1]->isChecked();
QList<QAction*> acts = ui->settingsButton->actions();
collapseFilter = acts[1]->isChecked();
ParameterGrp::handle hGrp = App::GetApplication().GetParameterGroupByPath("User parameter:BaseApp/Preferences/Mod/Sketcher/Elements");
hGrp->SetBool("AutoCollapseFilter", collapseFilter);
@@ -1202,7 +1226,7 @@ void TaskSketcherElements::on_settings_autoCollapseFilter_changed()
}
}
void TaskSketcherElements::on_settingsButton_clicked(bool)
void TaskSketcherElements::onSettingsButtonClicked(bool)
{
ui->settingsButton->showMenu();
}

View File

@@ -196,16 +196,17 @@ private:
void setItemVisibility(QListWidgetItem* item);
void clearWidget();
void createSettingsButtonActions();
void connectSignals();
public Q_SLOTS:
void on_listWidgetElements_itemPressed(QListWidgetItem* item);
void on_listWidgetElements_itemEntered(QListWidgetItem *item);
void on_listWidgetElements_mouseMoveOnItem(QListWidgetItem* item);
void on_settings_extendedInformation_changed();
void on_settings_autoCollapseFilter_changed();
void on_settingsButton_clicked(bool);
void on_filterBox_stateChanged(int val);
void on_listMultiFilter_itemChanged(QListWidgetItem* item);
void onListWidgetElementsItemPressed(QListWidgetItem* item);
void onListWidgetElementsItemEntered(QListWidgetItem *item);
void onListWidgetElementsMouseMoveOnItem(QListWidgetItem* item);
void onSettingsExtendedInformationChanged();
void onSettingsAutoCollapseFilterChanged();
void onSettingsButtonClicked(bool);
void onFilterBoxStateChanged(int val);
void onListMultiFilterItemChanged(QListWidgetItem* item);
protected:
void changeEvent(QEvent *e) override;