Add option to switch auto-opaque/transparent option in ContextBar popup menu

This commit is contained in:
David Capello 2015-12-01 16:37:46 -03:00
parent 7e016905c5
commit f9b249fba7

View File

@ -887,17 +887,22 @@ private:
Menu menu;
MenuItem
opaque("Opaque"),
masked("Transparent");
masked("Transparent"),
automatic("Adjust automatically depending on layer type");
menu.addChild(&opaque);
menu.addChild(&masked);
menu.addChild(new MenuSeparator);
menu.addChild(&automatic);
if (Preferences::instance().selection.opaque())
opaque.setSelected(true);
else
masked.setSelected(true);
automatic.setSelected(Preferences::instance().selection.autoOpaque());
opaque.Click.connect(Bind<void>(&TransparentColorField::setOpaque, this, true));
masked.Click.connect(Bind<void>(&TransparentColorField::setOpaque, this, false));
automatic.Click.connect(Bind<void>(&TransparentColorField::onAutomatic, this));
menu.showPopup(gfx::Point(bounds.x, bounds.y+bounds.h));
}
@ -930,6 +935,11 @@ private:
m_owner->layout();
}
void onAutomatic() {
Preferences::instance().selection.autoOpaque(
!Preferences::instance().selection.autoOpaque());
}
ButtonSet m_icon;
ColorButton m_maskColor;
ContextBar* m_owner;