rendered paste bodyvoid KoToolBox::setButtonsVisible(const KoCanvasController *canvas, const QList<QString> &codes)
{
if (canvas->canvas() != d->canvas)
return;
foreach(QToolButton *button, d->visibilityCodes.keys()) {
QString code = d->visibilityCodes.value(button);
if (code.startsWith(QLatin1String("flake/")))
continue;
if (code.endsWith( QLatin1String( "/always")))
{
button->setVisible(true);
button->setEnabled( true );
}
else if (code.isEmpty()) {
button->setVisible(true);
button->setEnabled( codes.count() != 0 );
}
else
button->setVisible( codes.contains(code) );
}
}
void KoToolBox::setCurrentLayer(const KoCanvasController *canvas, const KoShapeLayer *layer)
{
if (canvas->canvas() != d->canvas)
return;
const bool enabled = layer == 0 || (layer->isEditable() && layer->isVisible());
foreach (QToolButton *button, d->visibilityCodes.keys()) {
if (d->visibilityCodes[button].endsWith( QLatin1String( "/always") ) )
continue;
button->setEnabled(enabled);
}
}