Skip to content
Snippets Groups Projects
Commit 6e4a9bba authored by Rainer Kartmann's avatar Rainer Kartmann
Browse files

Added en/disabling of button and removed log messages (sorry)

parent de73b5a9
No related branches found
No related tags found
No related merge requests found
......@@ -144,7 +144,7 @@ void DebugDrawerViewerWidgetController::updateComboClearLayer()
combo->setFont(font);
};
auto setHint = [combo, &setItalic](const std::string & hint)
auto disableButton = [combo, this, &setItalic](const std::string & hint)
{
QString itemText(hint.c_str());
QString itemData("");
......@@ -160,11 +160,13 @@ void DebugDrawerViewerWidgetController::updateComboClearLayer()
combo->setItemText(0, itemText);
combo->setItemData(0, itemData);
}
this->widget.btnClearLayer->setEnabled(false);
};
if (!debugDrawer)
{
setHint("not connected");
disableButton("not connected");
return;
}
......@@ -173,19 +175,19 @@ void DebugDrawerViewerWidgetController::updateComboClearLayer()
if (layers.empty())
{
setHint("no layers");
disableButton("no layers");
return;
}
else if (combo->font().italic())
else
{
setItalic(false);
this->widget.btnClearLayer->setEnabled(true);
}
const int numLayers = static_cast<int>(layers.size());
// sort the layers by name
std::sort(layers.begin(), layers.end(), [](const LayerInformation & lhs, const LayerInformation & rhs)
{
// compare case insensitively
for (std::size_t i = 0; i < lhs.layerName.size() && i < lhs.layerName.size(); ++i)
{
auto lhsLow = std::tolower(lhs.layerName[i]);
......@@ -199,12 +201,14 @@ void DebugDrawerViewerWidgetController::updateComboClearLayer()
return false;
}
}
// if one is a prefix of the other, the shorter is the "smaller" one
// if one is a prefix of the other, the shorter one "smaller"
return lhs.layerName.size() < rhs.layerName.size();
});
for (int i = 0; i < static_cast<int>(layers.size()); ++i)
const int numLayers = static_cast<int>(layers.size());
for (int i = 0; i < numLayers; ++i)
{
const LayerInformation& layer = layers[static_cast<std::size_t>(i)];
......@@ -219,7 +223,6 @@ void DebugDrawerViewerWidgetController::updateComboClearLayer()
{
// item layer is smaller than next layer
// => item layer was deleted
ARMARX_INFO << "Removing " << itemData;
combo->removeItem(i);
itemData = i < combo->count() ? combo->itemData(i).toString() : "";
}
......@@ -227,20 +230,17 @@ void DebugDrawerViewerWidgetController::updateComboClearLayer()
// update existing layer
if (itemData == layerName)
{
ARMARX_INFO << "Updating " << itemData;
combo->setItemText(i, makeLayerItemText(layer));
}
else // (itemData > layerName)
{
// item layer is further down than current layer
// => insert current layer here
ARMARX_INFO << "Inserting " << layerName << " before " << itemData;
combo->insertItem(i, makeLayerItemText(layer), layerName);
}
}
else // out of range
{
ARMARX_INFO << "Inserting " << layerName << " at end";
combo->insertItem(i, makeLayerItemText(layer), layerName);
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment