void OnSelectionChanged(object ob, EventArgs a)
{
if (frontend != null) {
bool canCut, canCopy, canPaste, canDelete;
ObjectWrapper obj = ObjectWrapper.Lookup (widget.Selection);
Stetic.Wrapper.Widget wrapper = obj as Stetic.Wrapper.Widget;
IEditableObject editable = widget.Selection as IEditableObject;
if (editable == null)
editable = obj as IEditableObject;
if (editable != null) {
canCut = editable.CanCut;
canCopy = editable.CanCopy;
canPaste = editable.CanPaste;
canDelete = editable.CanDelete;
}
else {
canCut = canCopy = canPaste = canDelete = false;
}
frontend.NotifySelectionChanged (Component.GetSafeReference (obj), canCut, canCopy, canPaste, canDelete);
if (SelectionChanged != null)
SelectionChanged (this, new Stetic.Wrapper.WidgetEventArgs (wrapper));
}
}