import org.eclipse.jface.viewers.ISelection;
import org.eclipse.jface.viewers.StructuredSelection;
import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.FocusEvent;
+import org.eclipse.swt.events.FocusListener;
import org.eclipse.swt.events.MouseAdapter;
import org.eclipse.swt.events.MouseListener;
import org.eclipse.swt.widgets.Composite;
private final CmsEditable cmsEditable;
private MouseListener mouseListener;
+ private FocusListener focusListener;
private EditablePart edited;
private ISelection selection = StructuredSelection.EMPTY;
- // FIXME Added by BSinou to manage non-section Composite.
- // Is it the correct method?
- @Deprecated
- protected AbstractPageViewer(Composite parent, int style,
- CmsEditable cmsEditable) {
- // read only at UI level
- readOnly = SWT.READ_ONLY == (style & SWT.READ_ONLY);
-
- this.cmsEditable = cmsEditable == null ? CmsEditable.NON_EDITABLE
- : cmsEditable;
- if (this.cmsEditable instanceof Observable)
- ((Observable) this.cmsEditable).addObserver(this);
-
- if (cmsEditable.canEdit()) {
- mouseListener = createMouseListener();
- }
- page = findPage(parent);
- }
-
protected AbstractPageViewer(Section parent, int style,
CmsEditable cmsEditable) {
// read only at UI level
if (cmsEditable.canEdit()) {
mouseListener = createMouseListener();
+ focusListener = createFocusListener();
}
page = findPage(parent);
}
};
}
+ /** Create (retrieve) the FocusListener to use. */
+ protected FocusListener createFocusListener() {
+ return new FocusListener() {
+ private static final long serialVersionUID = 1L;
+
+ @Override
+ public void focusLost(FocusEvent event) {
+ }
+
+ @Override
+ public void focusGained(FocusEvent event) {
+ }
+ };
+ }
+
protected Composite findPage(Composite composite) {
if (composite instanceof ScrolledPage) {
return (ScrolledPage) composite;
return mouseListener;
}
+ public FocusListener getFocusListener() {
+ return focusListener;
+ }
+
public CmsEditable getCmsEditable() {
return cmsEditable;
}
public ISelection getSelection() {
return selection;
}
-
-}
+}
\ No newline at end of file