MCPcopy Create free account
hub / github.com/OpenOrienteering/mapper / selectObjectsClicked

Method selectObjectsClicked

src/gui/map/map_editor.cpp:2972–3007  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

2970 map->push(undo_step);
2971}
2972void MapEditorController::selectObjectsClicked(bool select_exclusively)
2973{
2974 bool selection_changed = false;
2975 if (select_exclusively)
2976 {
2977 if (map->getNumSelectedObjects() > 0)
2978 selection_changed = true;
2979 map->clearObjectSelection(false);
2980 }
2981
2982 bool object_selected = false;
2983 MapPart* part = map->getCurrentPart();
2984 for (int i = 0, size = part->getNumObjects(); i < size; ++i)
2985 {
2986 Object* object = part->getObject(i);
2987 if (symbol_widget->isSymbolSelected(object->getSymbol()) && !(!select_exclusively && map->isObjectSelected(object)))
2988 {
2989 map->addObjectToSelection(object, false);
2990 object_selected = true;
2991 }
2992 }
2993
2994 selection_changed |= object_selected;
2995 if (selection_changed)
2996 map->emitSelectionChanged();
2997
2998 if (object_selected)
2999 {
3000 if (current_tool && current_tool->isDrawTool())
3001 setEditTool();
3002 }
3003 else
3004 {
3005 QMessageBox::warning(window, tr("Object selection"), tr("No objects were selected because there are no objects with the selected symbols."));
3006 }
3007}
3008
3009void MapEditorController::deselectObjectsClicked()
3010{

Callers

nothing calls this directly

Calls 11

getNumSelectedObjectsMethod · 0.80
clearObjectSelectionMethod · 0.80
getCurrentPartMethod · 0.80
getObjectMethod · 0.80
isObjectSelectedMethod · 0.80
addObjectToSelectionMethod · 0.80
emitSelectionChangedMethod · 0.80
isDrawToolMethod · 0.80
getNumObjectsMethod · 0.45
isSymbolSelectedMethod · 0.45
getSymbolMethod · 0.45

Tested by

no test coverage detected