projects
/
lgpl
/
argeo-commons.git
/ blobdiff
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Extend CMS view.
[lgpl/argeo-commons.git]
/
org.argeo.cms.ui
/
src
/
org
/
argeo
/
cms
/
ui
/
CmsView.java
diff --git
a/org.argeo.cms.ui/src/org/argeo/cms/ui/CmsView.java
b/org.argeo.cms.ui/src/org/argeo/cms/ui/CmsView.java
index ce0acb89fd2b68c0c2c249b6f9df362310d0483c..0e7e7268042a64650a9979acb5e03dba53dd5553 100644
(file)
--- a/
org.argeo.cms.ui/src/org/argeo/cms/ui/CmsView.java
+++ b/
org.argeo.cms.ui/src/org/argeo/cms/ui/CmsView.java
@@
-1,5
+1,7
@@
package org.argeo.cms.ui;
package org.argeo.cms.ui;
+import java.util.Map;
+
import javax.security.auth.login.LoginContext;
import org.eclipse.swt.widgets.Composite;
import javax.security.auth.login.LoginContext;
import org.eclipse.swt.widgets.Composite;
@@
-7,7
+9,10
@@
import org.eclipse.swt.widgets.Shell;
/** Provides interaction with the CMS system. */
public interface CmsView {
/** Provides interaction with the CMS system. */
public interface CmsView {
- //String KEY = "org.argeo.cms.ui.view";
+ final static String CMS_VIEW_UID_PROPERTY = "argeo.cms.view.uid";
+ // String KEY = "org.argeo.cms.ui.view";
+
+ String getUid();
UxContext getUxContext();
UxContext getUxContext();
@@
-28,6
+33,14
@@
public interface CmsView {
boolean isAnonymous();
boolean isAnonymous();
+ /**
+ * Send an event to this topic. Does noothing by default., but if implemented it
+ * MUST set the {@link #CMS_VIEW_UID_PROPERTY} in the properties.
+ */
+ default void sendEvent(String topic, Map<String, Object> properties) {
+
+ }
+
static CmsView getCmsView(Composite parent) {
// find parent shell
Shell topShell = parent.getShell();
static CmsView getCmsView(Composite parent) {
// find parent shell
Shell topShell = parent.getShell();
@@
-44,8
+57,7
@@
public interface CmsView {
// check if already set
if (topShell.getData(CmsView.class.getName()) != null) {
CmsView registeredView = (CmsView) topShell.getData(CmsView.class.getName());
// check if already set
if (topShell.getData(CmsView.class.getName()) != null) {
CmsView registeredView = (CmsView) topShell.getData(CmsView.class.getName());
- throw new IllegalArgumentException(
- "Cms view " + registeredView + " already registered in this shell");
+ throw new IllegalArgumentException("Cms view " + registeredView + " already registered in this shell");
}
shell.setData(CmsView.class.getName(), view);
}
}
shell.setData(CmsView.class.getName(), view);
}