/** * Abstract base class for number fields. * * @author Lateef Ojulari * @since 1.0 */ @UplAttributes({ @UplAttribute(name = "precision", type = int.class), @UplAttribute(name = "acceptNegative", type = boolean.class), @UplAttribute(name = "useGrouping", type = boolean.class), @UplAttribute(name = "formatter", type = Formatter.class) }) public abstract class AbstractNumberField extends TextField { }
/** * Default amount formatter. * * @author Lateef Ojulari * @since 1.0 */ @Component(name = "amountformat", description = "$m{format.amount}") @UplAttributes({ @UplAttribute(name = "precision", type = int.class, defaultValue = "16"), @UplAttribute(name = "scale", type = int.class, defaultValue = "2"), @UplAttribute(name = "useGrouping", type = boolean.class, defaultValue = "true") }) public class AmountFormatterImpl extends DecimalFormatterImpl implements AmountFormatter { }
/** * Graphical indicator that shows a toggle state. The toggle state is the * boolean value of the widget's binded property. * * @author Lateef Ojulari * @since 1.0 */ @Component("ui-toggleimage") @UplAttributes({ @UplAttribute(name = "onImgSrc", type = String.class, defaultValue = "$t{images/toggleon.png}"), @UplAttribute(name = "offImgSrc", type = String.class, defaultValue = "$t{images/toggleoff.png}") }) public class ToggleImage extends AbstractTargetControl { }
/** * Horizontal flyout menu widget. * * @author Lateef Ojulari * @since 1.0 */ @Component("ui-horizontalflyoutmenu") @UplAttributes({ @UplAttribute(name = "backImgSrc", type = String.class, defaultValue = "$t{images/previous.png}"), @UplAttribute(name = "forwardImgSrc", type = String.class, defaultValue = "$t{images/next.png}") }) public class HorizontalFlyoutMenu extends AbstractFlyoutMenu { @Override public boolean isVertical() { return false; } }
/** * Vertical flyout menu widget. * * @author Lateef Ojulari * @since 1.0 */ @Component("ui-verticalflyoutmenu") @UplAttributes({ @UplAttribute(name = "backImgSrc", type = String.class, defaultValue = "$t{images/up.png}"), @UplAttribute(name = "forwardImgSrc", type = String.class, defaultValue = "$t{images/down.png}") }) public class VerticalFlyoutMenu extends AbstractFlyoutMenu { @Override public boolean isVertical() { return true; } }
/** * Abstract base class for statistics dashboard portlet panels. * * @author Lateef Ojulari * @since 1.0 */ @UplAttributes({ @UplAttribute(name = "provider", type = String.class, mandatory = true) }) public abstract class AbstractStatisticsDashbordPortletPanel extends AbstractDashboardPortletPanel { @Action @Override public void switchState() throws UnifyException { super.switchState(); StatisticsProvider<?> statisticsProvider = (StatisticsProvider<?>) getComponent(getUplAttribute(String.class, "provider")); setValueStore(createValueStore(statisticsProvider.provide())); } }
/** * Type-2 desktop document layout component. * * @author Lateef Ojulari * @since 1.0 */ @Component("ui-desktoptype2") @UplAttributes({ @UplAttribute(name = "collapsibleSidebar", type = boolean.class, defaultValue = "false") }) public class DesktopType2Layout extends AbstractDocumentLayout { }
/** * Represents an input field for entering a percentage amount. * * @author Lateef Ojulari * @since 1.0 */ @Component("ui-percent") @UplAttributes({ @UplAttribute(name = "formatter", type = Formatter.class, defaultValue = "$d{!percentformat}") }) public class PercentField extends DecimalField { }
/** * A labeled text control. * * @author Lateef Ojulari * @since 1.0 */ @Component("ui-labeledtext") @UplAttributes({ @UplAttribute(name = "maxLen", type = int.class) }) public class LabeledText extends AbstractFormattedControl { }
/** * Download action. * * @author Lateef Ojulari * @since 1.0 */ @Component("ui-download") @UplAttributes({ @UplAttribute(name = "resource", type = String.class, mandatory = true) }) public class DownloadAction extends AbstractPageAction { public DownloadAction() { super("download"); } }
/** * Represents a remote document view panel. * * @author Lateef Ojulari * @version 1.0 */ @Component("ui-remotedocviewpanel") @UplAttributes({ @UplAttribute(name = "hideOnNoComponents", type = boolean.class, defaultValue = "false") }) public class RemoteDocViewPanel extends AbstractPanel { public RemoteDocViewInfo getRemoteDocViewInfo() throws UnifyException { return (RemoteDocViewInfo) getValue(); } }
/** * A button widget. * * @author Lateef Ojulari * @since 1.0 */ @Component("ui-button") @UplAttributes({ @UplAttribute(name = "imageSrc", type = String.class) }) public class Button extends AbstractTargetControl { @Override public boolean isLayoutCaption() { return false; } }
/** * Disable action. * * @author Lateef Ojulari * @since 1.0 */ @Component("ui-disable") @UplAttributes({ @UplAttribute(name = "valueComponentList", type = UplElementReferences.class) }) public class DisableAction extends AbstractPageAction { public DisableAction() { super("disable"); } }
/** * Renders components in a grid layout. * * @author Lateef Ojulari * @since 1.0 */ @Component("ui-grid") @UplAttributes({ @UplAttribute(name = "columns", type = int.class, defaultValue = "1") }) public class GridLayout extends AbstractTabularLayout { public int getColumns() throws UnifyException { return getUplAttribute(int.class, "columns"); } }
/** * A list of descriptions for presentation only. Not a real control and doesn't * bind to any value attribute. Descriptions are gotten from list objects. * * @author Lateef Ojulari * @since 1.0 */ @Component("ui-listarea") @UplAttributes({ @UplAttribute(name = "binding", type = String.class, mandatory = false) }) public class ListArea extends AbstractListControl { @Override public boolean isMultiple() { return false; } }
/** * Represents an input text field for entering a password. * * @author Lateef Ojulari * @since 1.0 */ @Component("ui-password") @UplAttributes({ @UplAttribute(name = "autocomplete", type = boolean.class) }) public class PasswordField extends TextField { @Override public boolean isMasked() throws UnifyException { return true; } }
/** * A bell widget. * * @author Lateef Ojulari * @since 1.0 */ @Component("ui-bell") @UplAttributes({ @UplAttribute(name = "imageSrc", type = String.class, defaultValue = "$t{images/notification_gray.png}") }) public class Bell extends AbstractWidget { public String getImageSrc() throws UnifyException { return getUplAttribute(String.class, "imageSrc"); } }
/** * Hidden input control. * * @author Lateef Ojulari * @since 1.0 */ @Component("ui-hidden") @UplAttributes({ @UplAttribute(name = "hidden", type = boolean.class, defaultValue = "true") }) public class HiddenField extends AbstractControl { @Override public boolean isVisible() throws UnifyException { return false; } }
/** * A link grid widget. * * @author Lateef Ojulari * @since 1.0 */ @Component("ui-linkgrid") @UplAttributes({ @UplAttribute(name = "columns", type = int.class) }) public class LinkGrid extends AbstractMultiControl { public int getColumns() throws UnifyException { return getUplAttribute(int.class, "columns"); } @Override public boolean isLayoutCaption() throws UnifyException { return false; } }
/** * Memory utilization portlet panel. * * @author Lateef Ojulari * @since 1.0 */ @Component(name = "ui-memoryutilizationportlet", description = "$m{system.memoryutilization.portlet}") @UplBinding("web/system/upl/memoryutilizationportletpanel.upl") @UplAttributes({ @UplAttribute(name = "provider", type = String.class, defaultValue = "memoryutilization-portletprovider") }) public class MemoryUtilizationPortletPanel extends AbstractSimpleDialPortletPanel { }