Improve CMS theming.
[lgpl/argeo-commons.git] / org.argeo.cms.ui / src / org / argeo / cms / ui / util / CmsUiUtils.java
index 1671c90cc3400616aaeb09eb36dbba46b71773c2..167d7341f441748bf1e4bd99d4126572de794f84 100644 (file)
@@ -14,7 +14,6 @@ import org.argeo.api.NodeUtils;
 import org.argeo.cms.CmsException;
 import org.argeo.cms.ui.CmsConstants;
 import org.argeo.cms.ui.CmsView;
-import org.argeo.eclipse.ui.specific.UiContext;
 import org.argeo.jcr.JcrUtils;
 import org.eclipse.rap.rwt.RWT;
 import org.eclipse.rap.rwt.service.ResourceManager;
@@ -41,9 +40,13 @@ public class CmsUiUtils implements CmsConstants {
        /**
         * The CMS view related to this display, or null if none is available from this
         * call.
+        * 
+        * @deprecated Use {@link CmsView#getCmsView(Composite)} instead.
         */
+       @Deprecated
        public static CmsView getCmsView() {
-               return UiContext.getData(CmsView.KEY);
+//             return UiContext.getData(CmsView.class.getName());
+               return CmsView.getCmsView(Display.getCurrent().getActiveShell());
        }
 
        public static StringBuilder getServerBaseUrl(HttpServletRequest request) {
@@ -115,7 +118,7 @@ public class CmsUiUtils implements CmsConstants {
        }
 
        public static GridData fillHeight() {
-               return grabWidth(SWT.FILL, SWT.FILL);
+               return grabHeight(SWT.FILL, SWT.FILL);
        }
 
        public static GridData grabHeight(int horizontalAlignment, int verticalAlignment) {
@@ -132,6 +135,12 @@ public class CmsUiUtils implements CmsConstants {
                return widget;
        }
 
+       /** Style widget */
+       public static <T extends Widget> T style(T widget, CmsStyle style) {
+               widget.setData(CmsConstants.STYLE, style.toStyleClass());
+               return widget;
+       }
+
        /** Enable markups on widget */
        public static <T extends Widget> T markup(T widget) {
                widget.setData(CmsConstants.MARKUP, true);