]>
git.argeo.org Git - lgpl/argeo-commons.git/blob - org.argeo.api.cms/src/org/argeo/api/cms/CmsApp.java
1 package org
.argeo
.api
.cms
;
5 /** An extensible user interface base on the CMS backend. */
6 public interface CmsApp
{
8 * If {@link CmsUi#setData(String, Object)} is set with this property, it
9 * indicates a different UI (typically with another theming. The {@link CmsApp}
10 * can use this information, but it doesn't have to be set, in which case a
11 * default UI must be provided. The provided value must belong to the values
12 * returned by {@link CmsApp#getUiNames()}.
14 final static String UI_NAME_PROPERTY
= CmsApp
.class.getName() + ".ui.name";
16 Set
<String
> getUiNames();
18 CmsUi
initUi(Object uiParent
);
20 void refreshUi(CmsUi cmsUi
, String state
);
22 void setState(CmsUi cmsUi
, String state
);
24 CmsTheme
getTheme(String uiName
);
26 boolean allThemesAvailable();
28 void addCmsAppListener(CmsAppListener listener
);
30 void removeCmsAppListener(CmsAppListener listener
);