コード例 #1
0
 // TODO [rh] is this safe for multiple shells?
 private static void processActivate(final Shell shell) {
   HttpServletRequest request = ContextProvider.getRequest();
   String widgetId = request.getParameter(JSConst.EVENT_WIDGET_ACTIVATED);
   if (widgetId != null) {
     Widget widget = WidgetUtil.find(shell, widgetId);
     if (widget != null) {
       setActiveControl(shell, widget);
     }
   } else {
     String activeControlId = WidgetLCAUtil.readPropertyValue(shell, "activeControl");
     Widget widget = WidgetUtil.find(shell, activeControlId);
     if (widget != null) {
       setActiveControl(shell, widget);
     }
   }
 }
コード例 #2
0
 public void renderInitialization(Widget widget) throws IOException {
   ControlDecorator decorator = (ControlDecorator) widget;
   IClientObject clientObject = ClientObjectFactory.getClientObject(decorator);
   clientObject.create(TYPE);
   clientObject.set("parent", WidgetUtil.getId(decorator.getParent()));
   clientObject.set("style", WidgetLCAUtil.getStyles(decorator, ALLOWED_STYLES));
 }
コード例 #3
0
 private static void preserveMenuBounds(final Shell shell) {
   Object adapter = shell.getAdapter(IShellAdapter.class);
   IShellAdapter shellAdapter = (IShellAdapter) adapter;
   Rectangle menuBounds = shellAdapter.getMenuBounds();
   IWidgetAdapter widgetAdapter = WidgetUtil.getAdapter(shell);
   widgetAdapter.preserve(PROP_SHELL_MENU_BOUNDS, menuBounds);
 }
コード例 #4
0
 public void renderInitialization(Widget widget) throws IOException {
   ToolTip toolTip = (ToolTip) widget;
   IClientObject clientObject = ClientObjectFactory.getClientObject(toolTip);
   clientObject.create(TYPE);
   clientObject.set("parent", WidgetUtil.getId(toolTip.getParent()));
   clientObject.set("style", WidgetLCAUtil.getStyles(toolTip, ALLOWED_STYLES));
 }
コード例 #5
0
ファイル: DropDown_Test.java プロジェクト: eclipse/rap
  @Test
  public void testSetData_DoesNotRenderDataNotInWhiteList() {
    Fixture.fakePhase(PhaseId.PROCESS_ACTION);

    WidgetUtil.registerDataKeys("foo", "bar");
    dropDown.setData("fool", "bar");

    verify(remoteObject, never()).set(eq("data"), any(JsonObject.class));
  }
コード例 #6
0
ファイル: DropDown_Test.java プロジェクト: eclipse/rap
  @Test
  public void testSetData_RendersDataInWhiteList() {
    Fixture.fakePhase(PhaseId.PROCESS_ACTION);

    WidgetUtil.registerDataKeys("foo", "bar");
    dropDown.setData("foo", "bar");

    verify(remoteObject).set(eq("data"), eq(new JsonObject().add("foo", "bar")));
  }
コード例 #7
0
 /* (intentionally non-JavaDoc'ed)
  * This method is declared public only to be accessible from DisplayLCA
  */
 public static void writeActiveControl(final Shell shell) throws IOException {
   final Control activeControl = getActiveControl(shell);
   String prop = PROP_ACTIVE_CONTROL;
   if (WidgetLCAUtil.hasChanged(shell, prop, activeControl, null)) {
     //      JSWriter writer = JSWriter.getWriterFor( shell );
     //      writer.set( "activeControl", new Object[] { activeControl } );
     IWidgetSynchronizer synchronizer = WidgetSynchronizerFactory.getSynchronizerForWidget(shell);
     synchronizer.setWidgetProperty("activeControl", WidgetUtil.getId(activeControl));
   }
 }
コード例 #8
0
 private static void processWidgetDefaultSelectedEvent(final Tree tree) {
   HttpServletRequest request = ContextProvider.getRequest();
   String eventName = JSConst.EVENT_WIDGET_DEFAULT_SELECTED;
   if (WidgetLCAUtil.wasEventSent(tree, eventName)) {
     String itemId = request.getParameter(eventName + ".item");
     Item treeItem = (Item) WidgetUtil.find(tree, itemId);
     int eventType = SelectionEvent.WIDGET_DEFAULT_SELECTED;
     SelectionEvent event = new SelectionEvent(tree, treeItem, eventType);
     event.stateMask = EventLCAUtil.readStateMask(JSConst.EVENT_WIDGET_SELECTED_MODIFIER);
     event.processEvent();
   }
 }
コード例 #9
0
 public void preserveValues(final Widget widget) {
   ScrolledComposite composite = (ScrolledComposite) widget;
   ControlLCAUtil.preserveValues(composite);
   IWidgetAdapter adapter = WidgetUtil.getAdapter(composite);
   adapter.preserve(PROP_BOUNDS, composite.getBounds());
   adapter.preserve(PROP_OVERFLOW, getOverflow(composite));
   adapter.preserve(PROP_H_BAR_SELECTION, getBarSelection(composite.getHorizontalBar()));
   adapter.preserve(PROP_V_BAR_SELECTION, getBarSelection(composite.getVerticalBar()));
   adapter.preserve(Props.SELECTION_LISTENERS, Boolean.valueOf(hasSelectionListener(composite)));
   adapter.preserve(PROP_SHOW_FOCUSED_CONTROL, Boolean.valueOf(composite.getShowFocusedControl()));
   WidgetLCAUtil.preserveCustomVariant(composite);
 }
コード例 #10
0
 private static void processWidgetSelectedEvent(final Tree tree) {
   HttpServletRequest request = ContextProvider.getRequest();
   String eventName = JSConst.EVENT_WIDGET_SELECTED;
   if (WidgetLCAUtil.wasEventSent(tree, eventName)) {
     Rectangle bounds = new Rectangle(0, 0, 0, 0);
     String itemId = request.getParameter(eventName + ".item");
     Item treeItem = (Item) WidgetUtil.find(tree, itemId);
     String detailStr = request.getParameter(eventName + ".detail");
     int detail = "check".equals(detailStr) ? SWT.CHECK : SWT.NONE;
     int eventType = SelectionEvent.WIDGET_SELECTED;
     int stateMask = EventLCAUtil.readStateMask(JSConst.EVENT_WIDGET_SELECTED_MODIFIER);
     SelectionEvent event =
         new SelectionEvent(tree, treeItem, eventType, bounds, stateMask, null, true, detail);
     event.processEvent();
   }
 }
コード例 #11
0
 public void preserveValues(final Widget widget) {
   ControlLCAUtil.preserveValues((Control) widget);
   Shell shell = (Shell) widget;
   IWidgetAdapter adapter = WidgetUtil.getAdapter(shell);
   adapter.preserve(PROP_ACTIVE_CONTROL, getActiveControl(shell));
   adapter.preserve(PROP_ACTIVE_SHELL, shell.getDisplay().getActiveShell());
   adapter.preserve(PROP_TEXT, shell.getText());
   adapter.preserve(PROP_IMAGE, shell.getImage());
   adapter.preserve(PROP_ALPHA, new Integer(shell.getAlpha()));
   adapter.preserve(PROP_MODE, getMode(shell));
   adapter.preserve(PROP_FULLSCREEN, Boolean.valueOf(shell.getFullScreen()));
   adapter.preserve(PROP_SHELL_LISTENER, Boolean.valueOf(ShellEvent.hasListener(shell)));
   adapter.preserve(PROP_SHELL_MENU, shell.getMenuBar());
   adapter.preserve(PROP_MINIMUM_SIZE, shell.getMinimumSize());
   WidgetLCAUtil.preserveCustomVariant(shell);
 }
コード例 #12
0
 public void preserveValues(final Widget widget) {
   Tree tree = (Tree) widget;
   ControlLCAUtil.preserveValues((Control) widget);
   IWidgetAdapter adapter = WidgetUtil.getAdapter(tree);
   adapter.preserve(PROP_SELECTION_LISTENERS, Boolean.valueOf(SelectionEvent.hasListener(tree)));
   adapter.preserve(PROP_HEADER_HEIGHT, new Integer(tree.getHeaderHeight()));
   adapter.preserve(PROP_HEADER_VISIBLE, Boolean.valueOf(tree.getHeaderVisible()));
   int[] values = tree.getColumnOrder();
   Integer[] columnOrder = new Integer[values.length];
   for (int i = 0; i < values.length; i++) {
     columnOrder[i] = new Integer(values[i]);
   }
   adapter.preserve(PROP_COLUMN_ORDER, columnOrder);
   adapter.preserve(PROP_SCROLL_LEFT, getScrollLeft(tree));
   adapter.preserve(PROP_HAS_H_SCROLL_BAR, hasHScrollBar(tree));
   adapter.preserve(PROP_HAS_V_SCROLL_BAR, hasVScrollBar(tree));
   WidgetLCAUtil.preserveCustomVariant(tree);
 }
コード例 #13
0
 private static void readSelection(final Tree tree) {
   String value = WidgetLCAUtil.readPropertyValue(tree, "selection");
   if (value != null) {
     String[] values = value.split(",");
     TreeItem[] selectedItems = new TreeItem[values.length];
     boolean validItemFound = false;
     for (int i = 0; i < values.length; i++) {
       selectedItems[i] = (TreeItem) WidgetUtil.find(tree, values[i]);
       if (selectedItems[i] != null) {
         validItemFound = true;
       }
     }
     if (!validItemFound) {
       selectedItems = new TreeItem[0];
     }
     tree.setSelection(selectedItems);
   }
 }
コード例 #14
0
  public void renderInitialization(final Widget widget) throws IOException {
    IWidgetSynchronizer synchronizer = WidgetSynchronizerFactory.getSynchronizerForWidget(widget);
    List styleList = new ArrayList();
    int style = widget.getStyle();
    if ((style & SWT.BORDER) != 0) {
      styleList.add("BORDER");
    }
    if ((style & MODAL) != 0) {
      styleList.add("MODAL");
    }
    if ((style & SWT.ON_TOP) != 0) {
      styleList.add("ON_TOP");
    }
    if ((style & SWT.TITLE) != 0) {
      styleList.add("TITLE");
    }
    if ((style & SWT.TOOL) != 0) {
      styleList.add("TOOL");
    }
    if ((style & SWT.SHEET) != 0) {
      styleList.add("SHEET");
    }
    if ((style & SWT.MIN) != 0) {
      styleList.add("MIN");
    }
    if ((style & SWT.MAX) != 0) {
      styleList.add("MAX");
    }
    if ((style & SWT.CLOSE) != 0) {
      styleList.add("CLOSE");
    }
    if ((style & SWT.RESIZE) != 0) {
      styleList.add("RESIZE");
    }
    String[] styles = new String[styleList.size()];
    styleList.toArray(styles);
    Composite parent = ((Shell) widget).getParent();
    if (parent instanceof Shell) {
      String parentId = WidgetUtil.getId(parent);
      synchronizer.newWidget(styles, new Object[] {parentId});
    }
    synchronizer.newWidget(styles);

    // old
    //    JSWriter writer = JSWriter.getWriterFor( widget );
    //    Shell shell = ( Shell )widget;
    //    writer.newWidget( QX_TYPE );
    //    ControlLCAUtil.writeStyleFlags( shell );
    //    if( ( style & MODAL ) != 0 ) {
    //      writer.call( "addState", new Object[] { "rwt_APPLICATION_MODAL" } );
    //    }
    //    if( ( style & SWT.ON_TOP ) != 0 ) {
    //      writer.call( "addState", new Object[] { "rwt_ON_TOP" } );
    //    }
    //    if( ( style & SWT.TITLE ) != 0 ) {
    //      writer.call( "addState", new Object[]{ "rwt_TITLE" } );
    //    }
    //    if( ( style & SWT.TOOL ) != 0 ) {
    //      writer.call( "addState", new Object[]{ "rwt_TOOL" } );
    //    }
    //    if( ( style & SWT.SHEET ) != 0 ) {
    //      writer.call( "addState", new Object[]{ "rwt_SHEET" } );
    //    }
    //    writer.set( "showMinimize", ( style & SWT.MIN ) != 0 );
    //    writer.set( "allowMinimize", ( style & SWT.MIN ) != 0 );
    //    writer.set( "showMaximize", ( style & SWT.MAX ) != 0 );
    //    writer.set( "allowMaximize", ( style & SWT.MAX ) != 0 );
    //    writer.set( "showClose", ( style & SWT.CLOSE ) != 0 );
    //    writer.set( "allowClose", ( style & SWT.CLOSE ) != 0 );
    //    Boolean resizable = Boolean.valueOf( ( style & SWT.RESIZE ) != 0 );
    //    writer.set( "resizable",
    //                new Object[] { resizable, resizable, resizable, resizable } );
    //    if( parent instanceof Shell ) {
    //      writer.set( "parentShell", parent );
    //    }
    //    writer.call( "initialize", null );
  }
コード例 #15
0
ファイル: DropDown_Test.java プロジェクト: eclipse/rap
 @Test
 public void testContructor_SetsReferenceWidget() {
   verify(remoteObject).set("parent", WidgetUtil.getId(text));
 }