]>
git.argeo.org Git - lgpl/argeo-commons.git/blob - org.argeo.cms.ui/src/org/argeo/cms/ui/CmsUiProvider.java
1 package org
.argeo
.cms
.ui
;
4 import javax
.jcr
.RepositoryException
;
6 import org
.eclipse
.swt
.widgets
.Composite
;
7 import org
.eclipse
.swt
.widgets
.Control
;
9 /** Stateless factory building an SWT user interface given a JCR context. */
11 public interface CmsUiProvider
extends MvcProvider
<Composite
, Node
, Control
> {
13 * Initialises a user interface.
15 * @param parent the parent composite
16 * @param context a context node (holding the JCR underlying session), or null
18 Control
createUi(Composite parent
, Node context
) throws RepositoryException
;
21 default Control
createUiPart(Composite parent
, Node context
) {
23 return createUi(parent
, context
);
24 } catch (RepositoryException e
) {
25 throw new IllegalStateException("Cannot create UI for context " + context
, e
);