Example usage for com.google.gwt.user.client.ui DockPanel DockPanel

List of usage examples for com.google.gwt.user.client.ui DockPanel DockPanel

Introduction

In this page you can find the example usage for com.google.gwt.user.client.ui DockPanel DockPanel.

Prototype

public DockPanel() 

Source Link

Document

Creates an empty dock panel.

Usage

From source file:org.pentaho.pac.client.users.UsersPanel.java

License:Open Source License

public VerticalPanel buildUsersListPanel() {
    DockPanel headerDockPanel = new DockPanel();
    headerDockPanel.add(deleteUserBtn, DockPanel.EAST);
    VerticalPanel spacer = new VerticalPanel();
    spacer.setWidth("2"); //$NON-NLS-1$
    headerDockPanel.add(spacer, DockPanel.EAST);
    headerDockPanel.add(addUserBtn, DockPanel.EAST);
    Label label = new Label("Users"); //$NON-NLS-1$
    headerDockPanel.add(label, DockPanel.WEST);
    headerDockPanel.setCellWidth(label, "100%"); //$NON-NLS-1$
    VerticalPanel userListPanel = new VerticalPanel();
    userListPanel.add(headerDockPanel);//ww w .ja va 2s.  c o  m
    userListPanel.add(usersList);
    userListPanel.add(new Label(Messages.getString("filter"))); //$NON-NLS-1$
    userListPanel.add(filterTextBox);

    userListPanel.setCellHeight(usersList, "100%"); //$NON-NLS-1$
    userListPanel.setCellWidth(usersList, "100%"); //$NON-NLS-1$
    userListPanel.setHeight("100%"); //$NON-NLS-1$
    userListPanel.setWidth("100%"); //$NON-NLS-1$
    usersList.setHeight("100%"); //$NON-NLS-1$
    usersList.setWidth("100%"); //$NON-NLS-1$
    filterTextBox.setWidth("100%"); //$NON-NLS-1$
    deleteUserBtn.setEnabled(false);

    filterTextBox.addKeyboardListener(this);
    usersList.addChangeListener(this);
    addUserBtn.addClickListener(this);
    deleteUserBtn.addClickListener(this);
    return userListPanel;
}

From source file:org.pentaho.pac.client.users.UsersPanel.java

License:Open Source License

public VerticalPanel buildAssignedRolesPanel() {
    DockPanel headerDockPanel = new DockPanel();

    VerticalPanel fieldsetPanel = new VerticalPanel();

    Label label = new Label(Messages.getString("assignedRoles")); //$NON-NLS-1$
    Label spacer = new Label(""); //$NON-NLS-1$

    headerDockPanel.add(label, DockPanel.WEST);
    headerDockPanel.setCellWidth(label, "100%"); //$NON-NLS-1$
    headerDockPanel.add(deleteRoleAssignmentBtn, DockPanel.EAST);
    VerticalPanel spacer2 = new VerticalPanel();
    spacer2.setWidth("2"); //$NON-NLS-1$
    headerDockPanel.add(spacer2, DockPanel.EAST);
    headerDockPanel.add(addRoleAssignmentBtn, DockPanel.EAST);

    headerDockPanel.add(spacer, DockPanel.WEST);
    headerDockPanel.setCellWidth(spacer, "100%"); //$NON-NLS-1$

    DockPanel assignedRolesPanel = new DockPanel();
    assignedRolesPanel.add(headerDockPanel, DockPanel.NORTH);
    assignedRolesPanel.add(assignedRolesList, DockPanel.CENTER);
    assignedRolesPanel.setCellHeight(assignedRolesList, "100%"); //$NON-NLS-1$
    assignedRolesPanel.setCellWidth(assignedRolesList, "100%"); //$NON-NLS-1$
    assignedRolesList.setHeight("100%"); //$NON-NLS-1$
    assignedRolesList.setWidth("100%"); //$NON-NLS-1$

    assignedRolesList.addChangeListener(this);
    deleteRoleAssignmentBtn.addClickListener(this);
    addRoleAssignmentBtn.addClickListener(this);

    fieldsetPanel.add(assignedRolesPanel);
    assignedRolesPanel.setWidth("100%"); //$NON-NLS-1$
    assignedRolesPanel.setHeight("100%"); //$NON-NLS-1$
    return fieldsetPanel;
}

From source file:org.pepstock.jem.gwt.client.commons.MessageBox.java

License:Open Source License

/**
 * A generic message box, like a javascript Window.alert
 * /*from w  w  w. j av a2 s .c  o m*/
 * @param image image to show on west
 * @param title title of message to show
 * @param message content of message to show
 * 
 */
public MessageBox(ImageResource image, String title, String message) {
    super(false, true);
    setAnimationEnabled(true);
    setGlassEnabled(true);

    setStyleName(Styles.INSTANCE.messageBox().main());

    // sets message
    final HTML msg = new HTML(message);
    msg.addStyleName(Styles.INSTANCE.messageBox().message());

    // sets Max Width!
    int maxWidth = Window.getClientWidth() * 75 / 100;
    getElement().getStyle().setPropertyPx("maxWidth", maxWidth);

    // dialog box content
    DockPanel dock = new DockPanel();
    dock.setSpacing(5);
    final HorizontalPanel flow = new HorizontalPanel();
    flow.setSpacing(4);
    // add buttons to box
    if (getPreferredButtons() != null) {
        for (int i = 0; i < getPreferredButtons().length; i++) {
            PreferredButton button = getPreferredButtons()[i];
            button.setMessageBox(this);
            flow.add(button);
        }
    }

    // sets default button
    final int defaultButtonIndex = flow.getWidgetIndex(getDefaultButton());
    ((PreferredButton) flow.getWidget(defaultButtonIndex))
            .addStyleName(Styles.INSTANCE.common().defaultActionButton());

    dock.add(flow, DockPanel.SOUTH);
    dock.setCellHorizontalAlignment(flow, DockPanel.ALIGN_CENTER);

    // adds title
    if (title != null) {
        final Label t = new Label(title);
        t.addStyleName(Styles.INSTANCE.messageBox().title());
        dock.add(t, DockPanel.NORTH);
        dock.setCellHorizontalAlignment(t, DockPanel.ALIGN_CENTER);

    }

    dock.add(msg, DockPanel.CENTER);
    dock.setCellVerticalAlignment(msg, DockPanel.ALIGN_MIDDLE);

    // adds image
    dock.add(new Image((image == null) ? Images.INSTANCE.info() : image), DockPanel.WEST);

    dock.setWidth(Sizes.HUNDRED_PERCENT);
    setWidget(dock);

    // handle default button selection (deferred)
    Scheduler.get().scheduleDeferred(new ScheduledCommand() {
        public void execute() {
            ((PreferredButton) flow.getWidget(defaultButtonIndex)).setFocus(true);
        }
    });

}

From source file:org.phrasebook.transword.client.CwAdminTerminBox.java

License:Apache License

/**
 * Initialize this example./*from   w w w. ja v a  2s.  c om*/
 */
@Override
public Widget onInitialize() {

    // Top ToolBar panel
    final Button newFE = new Button(constants.cwNewFE());
    final Button newRefresh = new Button("Refresh");
    final Button newEdit = new Button("Edit");

    final TextBoxAdvanced searchFilter = new TextBoxAdvanced();

    newEdit.setEnabled(false);
    DockPanel admin = new DockPanel();

    HorizontalPanel hPanel = new HorizontalPanel();
    hPanel.setSpacing(5);
    hPanel.add(newFE);

    HorizontalPanel sPanel = new HorizontalPanel();
    sPanel.setSpacing(5);
    sPanel.add(searchFilter);

    hPanel.add(newRefresh);
    hPanel.add(newEdit);

    VerticalPanel svPanel = new VerticalPanel();
    svPanel.add(hPanel);
    svPanel.add(sPanel);

    searchFilter.addValueChangeHandler(new IStringValueChanged() {
        public void valueChanged(String newValue) {
            dataProvider.setFilter(newValue);
            dataProvider.refresh();
        }
    });

    admin.add(svPanel, DockPanel.NORTH);

    NewFEHandler handler = new NewFEHandler();
    newFE.addClickHandler(handler);

    NewRefFEHandler refhandler = new NewRefFEHandler();

    NewEditFEHandler edithandler = new NewEditFEHandler();
    newRefresh.addClickHandler(refhandler);

    newEdit.addClickHandler(edithandler);

    // Create a DataGrid.
    /*
     * Set a key provider that provides a unique key for each contact. If
     * key is used to identify contacts when fields (such as the name and
     * address) change.
     */
    dataGrid = new DataGrid<FixedExpression>();
    dataGrid.setWidth("100%");

    /*
     * Do not refresh the headers every time the data is updated. The footer
     * depends on the current data, so we do not disable auto refresh on the
     * footer.
     */
    dataGrid.setAutoHeaderRefreshDisabled(true);
    // Set the message to display when the table is empty.

    // Create a Pager to control the table.
    SimplePager.Resources pagerResources = GWT.create(SimplePager.Resources.class);
    pager = new SimplePager(TextLocation.CENTER, pagerResources, false, 0, true);
    pager.setDisplay(dataGrid);
    pager.setVisible(true);

    //dataProvider = new FilteredListDataProvider<FixedExpression>();

    dataProvider.setList(new ArrayList<FixedExpression>());
    dataGrid.setEmptyTableWidget(new Label("Loading, please wait. There are no fixed expressions yet!"));

    // Attach a column sort handler to the ListDataProvider to sort the
    // list.
    final DialogBox dlgBox = new DialogBox();
    final HTML serverResponseLabel = new HTML();
    final Button clsButton = new Button("Close");

    dlgBox.setText("Fixed Expression Result");
    dlgBox.setAnimationEnabled(true);
    // We can set the id of a widget by accessing its
    // Element
    clsButton.getElement().setId("closeButton");
    VerticalPanel dialogVPanel = new VerticalPanel();
    dialogVPanel.addStyleName("dialogVPanel");
    dialogVPanel.add(new HTML("<br><b>Server replies:</b>"));
    dialogVPanel.add(serverResponseLabel);
    dialogVPanel.setHorizontalAlignment(VerticalPanel.ALIGN_RIGHT);
    dialogVPanel.add(clsButton);
    dlgBox.setWidget(dialogVPanel);

    // Add a handler to close the DialogBox
    clsButton.addClickHandler(new ClickHandler() {
        public void onClick(ClickEvent event) {
            dlgBox.hide();
        }
    });

    final List<FixedExpression> lst = new ArrayList<FixedExpression>();

    feService.listFixedExpression(new AsyncCallback<List<FixedExpression>>() {
        public void onFailure(Throwable caught) {
            // Show the RPC error message to the
            // user
            dlgBox.setText("Remote Procedure Call - Failure");
            serverResponseLabel.addStyleName("serverResponseLabelError");
            serverResponseLabel.setHTML(SERVER_ERROR + caught.toString());
            dlgBox.center();
            clsButton.setFocus(true);
        }

        public void onSuccess(List<FixedExpression> list) {

            for (FixedExpression f : list) {
                lst.add(f);
            }
            dlgBox.setText("Fixed Expression - Add Result");
            serverResponseLabel.removeStyleName("Server Response Label Error");
            serverResponseLabel.setHTML("OK" + lst.size());
            // dlgBox.center();
            clsButton.setFocus(true);
        }
    });
    ListHandler<FixedExpression> sortHandler = new ListHandler<FixedExpression>(dataProvider.getList());
    dataGrid.addColumnSortHandler(sortHandler);

    final NoSelectionModel<FixedExpression> selectionModel = new NoSelectionModel<FixedExpression>();

    selectionModel.addSelectionChangeHandler(new SelectionChangeEvent.Handler() {

        public void onSelectionChange(SelectionChangeEvent event) {
            @SuppressWarnings("unchecked")
            NoSelectionModel<FixedExpression> sel = (NoSelectionModel<FixedExpression>) event.getSource();
            selExpression.setCoreString(sel.getLastSelectedObject().getCoreString());
            selExpression.setId(sel.getLastSelectedObject().getId());
            if (selExpression.getId() != null) {
                newEdit.setEnabled(true);
            } else {
                newEdit.setEnabled(false);
            }
        }
    });

    dataGrid.setSelectionModel(selectionModel);// ,
    // DefaultSelectionEventManager.<FixedExpression>
    // createCheckboxManager());
    // dataGrid.setSele
    dataGrid.setVisible(true);
    initTableColumns(selectionModel, sortHandler);
    dataProvider.addDataDisplay(dataGrid);
    dataGrid.addColumnSortHandler(sortHandler);

    // dataGrid.add

    admin.add(dataGrid, DockPanel.CENTER);
    admin.add(pager, DockPanel.SOUTH);

    admin.setWidth("100%");
    dataGrid.setHeight("450px");
    admin.setCellWidth(dataGrid, "100%");
    admin.setCellWidth(pager, "100%");

    Timer t = new Timer() {
        public void run() {
            dataList = lst;
            List<FixedExpression> list2 = dataProvider.getList();
            list2.addAll(dataList);
            dataProvider.refresh();
        }
    };

    // Schedule the timer to run once in 40 seconds.
    t.schedule(40000);
    return admin;
}

From source file:org.phrasebook.transword.client.CwDictionaryPanel.java

License:Apache License

/**
 * Initialize this example./*from   w  ww. j ava2  s. c  o  m*/
 */
@Override
public Widget onInitialize() {

    final Button understand = new Button(constants.cwUnderstandPhrase());

    final Button use = new Button(constants.cwUsePhrase());

    final Button mean = new Button(constants.cwSearchByMeanPhrase());

    final Button info = new Button(constants.cwAddInfo());

    HorizontalPanel sPanel = new HorizontalPanel();
    sPanel.setSpacing(5);
    sPanel.add(searchFilter);

    searchFilter.addValueChangeHandler(new IStringValueChanged() {
        public void valueChanged(String newValue) {
            dataProvider.setFilter(newValue);
            dataProvider.refresh();
        }
    });

    HorizontalPanel hPanel = new HorizontalPanel();
    hPanel.setSpacing(5);

    hPanel.add(understand);
    hPanel.add(use);
    hPanel.add(mean);
    hPanel.add(info);

    VerticalPanel svPanel = new VerticalPanel();
    svPanel.add(sPanel);
    svPanel.add(hPanel);

    // Top ToolBar panel
    DockPanel admin = new DockPanel();
    admin.add(svPanel, DockPanel.NORTH);

    UnderstandHandler handler = new UnderstandHandler();
    understand.addClickHandler(handler);

    MeanHandler mhandler = new MeanHandler();
    mean.addClickHandler(mhandler);

    InfoHandler ihandler = new InfoHandler();
    info.addClickHandler(ihandler);

    UseHandler uhandler = new UseHandler();
    use.addClickHandler(uhandler);

    // DATA GRID OUT

    // Create a DataGrid.
    /*
     * Set a key provider that provides a unique key for each contact. If
     * key is used to identify contacts when fields (such as the name and
     * address) change.
     */
    dataGrid = new DataGrid<FixedExpression>();
    dataGrid.setWidth("100%");

    /*
     * Do not refresh the headers every time the data is updated. The footer
     * depends on the current data, so we do not disable auto refresh on the
     * footer.
     */
    // dataGrid.setAutoHeaderRefreshDisabled(true);
    // Set the message to display when the table is empty.

    // Create a Pager to control the table.
    SimplePager.Resources pagerResources = GWT.create(SimplePager.Resources.class);
    pager = new SimplePager(TextLocation.CENTER, pagerResources, false, 0, true);
    pager.setDisplay(dataGrid);
    pager.setVisible(true);

    // dataProvider = new FilteredListDataProvider<FixedExpression>();

    dataProvider.setList(new ArrayList<FixedExpression>());
    dataGrid.setEmptyTableWidget(new Label("Loading, please wait. There are no fixed expressions yet!"));

    sortHandler = new ListHandler<FixedExpression>(dataProvider.getList());
    dataGrid.addColumnSortHandler(sortHandler);

    selectionModel.addSelectionChangeHandler(new SelectionChangeEvent.Handler() {

        public void onSelectionChange(SelectionChangeEvent event) {
            @SuppressWarnings("unchecked")
            NoSelectionModel<FixedExpression> sel = (NoSelectionModel<FixedExpression>) event.getSource();
            selExpression.setCoreString(sel.getLastSelectedObject().getCoreString());
            selExpression.setId(sel.getLastSelectedObject().getId());
            if (selExpression.getId() != null) {
                understand.setEnabled(true);
            } else {
                understand.setEnabled(false);
            }
        }
    });

    dataGrid.setSelectionModel(selectionModel);// ,
    // DefaultSelectionEventManager.<FixedExpression>
    // createCheckboxManager());
    // dataGrid.setSele
    dataGrid.setVisible(true);
    // initTableColumns(selectionModel, sortHandler);
    dataProvider.addDataDisplay(dataGrid);
    dataGrid.addColumnSortHandler(sortHandler);

    // dataGrid.add

    admin.add(dataGrid, DockPanel.CENTER);
    admin.add(pager, DockPanel.SOUTH);

    admin.setWidth("100%");
    dataGrid.setHeight("450px");
    admin.setCellWidth(dataGrid, "100%");
    admin.setCellWidth(pager, "100%");

    // Timer t = new Timer() {
    // public void run() {
    dataList = lst;
    List<FixedExpression> list2 = dataProvider.getList();
    list2.addAll(dataList);
    dataProvider.refresh();
    // }
    // };

    // Schedule the timer to run once in 40 seconds.
    // t.schedule(10000);
    return admin;
}

From source file:org.primordion.xholon.io.XholonGuiClassic.java

License:Open Source License

/**
  * Show the entire IXholon tree as a Tree.
  * @param node Node from which to start showing the tree.
  *//*from   w  w w. j  a v  a 2s .  c  om*/
public void showTree(IXholon node) {
    if (tiRoot != null) { // an existing model is already running
        //removeAll();
    }
    if (app == null) {
        app = node.getApp();
    }
    xhRoot = node;
    tiRoot = new TreeItem();
    createNode(xhRoot, tiRoot, null);
    tree = new XholonGuiClassicTree(this);
    tree.addItem(tiRoot);

    tree.addSelectionHandler(new SelectionHandler<TreeItem>() {
        public void onSelection(SelectionEvent<TreeItem> event) {
            TreeItem ti = event.getSelectedItem();
            handleNodeSelection(ti.getText(), ti, tree.isCtrlPressed());
        }
    });

    ScrollPanel scrollPanel = new ScrollPanel(tree);
    scrollPanel.setSize("500px", "500px");

    DockPanel panel = new DockPanel(); //this;
    panel.setStylePrimaryName("xhgui");

    panel.add(scrollPanel, DockPanel.CENTER);
    currentSelectionField = new TextBox();
    currentSelectionField.setVisibleLength(60); // 58
    currentSelectionField.setMaxLength(200);
    currentSelectionField.setText("Click on any node to show details");
    panel.add(currentSelectionField, DockPanel.SOUTH);

    // main menu at top of GUI
    MenuBar mainMenu = new MenuBar();
    mainMenu.setStylePrimaryName("mainMenu");

    // File
    MenuBar fileMenu = new MenuBar(true);
    MenuBar localStorageMenu = new MenuBar(true);
    boolean enableFileItems = true;
    //consoleLog(enableFileItems);
    //consoleLog(Window.Location.getParameter("src"));
    if ("gist".equals(Window.Location.getParameter("src"))) {
        //consoleLog("setting to false");
        enableFileItems = false;
    }
    //consoleLog(enableFileItems);
    localStorageMenu.addItem("Save", new Command() {
        @Override
        public void execute() {
            IApplication lsApp = new ApplicationNull();
            String configFileName = app.getConfigFileName();
            lsApp.setConfigFileName(configFileName);
            JavaApp2Workbook app2Wb = new JavaApp2Workbook();
            app2Wb.setWinName("_blank"); // open in new tab or window
            app2Wb.save(configFileName, lsApp);
        }
    }).setEnabled(enableFileItems);
    // save to localStorage using a new name
    /*localStorageMenu.addItem("Save as", new Command() {
      @Override
      public void execute() {
                
      }
    }).setEnabled(enableFileItems);*/
    localStorageMenu.addItem("Edit", new Command() {
        @Override
        public void execute() {
            IApplication lsApp = new ApplicationNull();
            String configFileName = app.getConfigFileName();
            lsApp.setConfigFileName(configFileName);
            JavaApp2Workbook app2Wb = new JavaApp2Workbook();
            app2Wb.setWinName("_blank"); // open in new tab or window
            app2Wb.edit(configFileName, lsApp);
        }
    }).setEnabled(enableFileItems);
    localStorageMenu.addItem("Restart from", new Command() {
        @Override
        public void execute() {
            // restart the current app by reloading the HTML page (equivalent to browser F5)
            // the reloaded app will automatically include the edited changes in localStorage
            Window.Location.reload();
        }
    }).setEnabled(enableFileItems);
    // remove from localStorage
    /*localStorageMenu.addItem("Remove from", new Command() {
      @Override
      public void execute() {
                
      }
    }).setEnabled(enableFileItems);*/
    fileMenu.addItem("localStorage", localStorageMenu);
    mainMenu.addItem("File", fileMenu);

    // Application
    mainMenu.addItem("Application", new Command() {
        @Override
        public void execute() {
            if (app == null) {
                //app.println("Application not yet loaded.");
            } else {
                app.about();
            }
        }
    });

    // Help
    MenuBar helpMenu = new MenuBar(true);
    helpMenu.addItem("About", new Command() {
        @Override
        public void execute() {
            if (app == null) {
                //app.println("Application not yet loaded.");
            } else {
                app.about();
            }
        }
    });
    helpMenu.addItem("Getting Started", new Command() {
        @Override
        public void execute() {
            gettingStarted("Getting Started with Xholon", splashText, 375, 475);
        }
    });
    helpMenu.addItem("Information", new Command() {
        @Override
        public void execute() {
            if (app == null) {
                //app.println("Application not yet loaded.");
            } else {
                app.information();
            }
        }
    });
    helpMenu.addItem("JavaScript API", new Command() {
        @Override
        public void execute() {
            Window.open(GwtEnvironment.gwtHostPageBaseURL + "jsapidoc/modules/XholonJsApi.html", "_blank", "");
        }
    });
    mainMenu.addItem("Help", helpMenu);
    HorizontalPanel mainMenuHp = new HorizontalPanel();
    mainMenuHp.setStylePrimaryName("mainMenu");
    mainMenuHp.add(mainMenu);

    // toolbar with Controller buttons just below main menu
    HorizontalPanel toolbar = new HorizontalPanel();
    toolbar.setStylePrimaryName("toolbar");
    IXholon controlNode = app.getControlRoot().getFirstChild();
    while (controlNode != null) {
        toolbar.add(makeToolbarWidget(controlNode));
        controlNode = controlNode.getNextSibling();
    }

    VerticalPanel topVp = new VerticalPanel();
    topVp.setStylePrimaryName("mainMenu");
    topVp.setWidth("500px"); // 474
    topVp.add(mainMenuHp);
    topVp.add(toolbar);
    panel.add(topVp, DockPanel.NORTH);

    RootPanel xhgui = RootPanel.get("xhgui");
    if (xhgui == null) {
        node.consoleLog("WARNING xhgui element does not exist");
    } else {
        xhgui.add(panel);
    }

    //((Application)app).clearConsole();
    // clear the contents of the xhconsole
    /*Element element = Document.get().getElementById("xhconsole").getFirstChildElement();
    if (element != null) {
        TextAreaElement textfield = element.cast();
        textfield.setValue("");
    }*/
}

From source file:org.quartz.GWTQuartzManager.client.QuartzManager.java

License:Open Source License

public void onModuleLoad() {
    //catch exception
    GWT.setUncaughtExceptionHandler(new UncaughtExceptionHandler() {
        public void onUncaughtException(Throwable e) {
            log.log(Level.SEVERE, e.getMessage(), e);
        }/*from   www.  j a va2 s  .  co m*/
    });
    Logger.getLogger("").addHandler(new ErrorDialog().getHandler());

    eventBus.addHandler(TriggerJobEvent.TYPE, new TriggerJobEvent.Handler() {
        @Override
        public void fireTrigger(GWTJobDetail jobDetail) {
            scheduler.triggerJob(jobDetail.getKey(), new GWTQuartzScheduler.nopAsynCallback<Void>());
        }
    });

    eventBus.addHandler(DeleteJobEvent.TYPE, new DeleteJobEvent.Handler() {

        @Override
        public void deleteJob(GWTJobDetail jobDetail) {
            scheduler.deleteJob(jobDetail.getKey(), new AsyncCallback<Boolean>() {

                @Override
                public void onFailure(Throwable caught) {
                    // TODO Auto-generated method stub

                }

                @Override
                public void onSuccess(Boolean result) {
                    updateJobs();
                }
            });
        }
    });

    eventBus.addHandler(EditTriggerEvent.TYPE, new EditTriggerEvent.Handler() {

        @Override
        public void startEdit(GWTTrigger trigger) {
            //TODO in the future, there may be some subclasses of GWTTrigger other than WGTCronTrigger.
            //do instanceof check
            EditCronTriggerWorkflow newTriggerWorkflow = new EditCronTriggerWorkflow(scheduler);
            newTriggerWorkflow.edit((GWTCronTrigger) trigger);
        }
    });

    eventBus.addHandler(ToggleTriggerStateEvent.TYPE, new ToggleTriggerStateEvent.Handler() {

        @Override
        public void resume(GWTTrigger trigger) {
            scheduler.resumeTrigger(trigger.getKey(), new GWTQuartzScheduler.nopAsynCallback<Void>());
        }

        @Override
        public void pause(GWTTrigger trigger) {
            scheduler.pauseTrigger(trigger.getKey(), new GWTQuartzScheduler.nopAsynCallback<Void>());
        }
    });

    eventBus.addHandler(EditJobEvent.TYPE, new EditJobEvent.Handler() {

        @Override
        public void editJob(GWTJobDetail jobDetail, boolean create) {
            new EditJobDetailWorkflow(scheduler, create).edit(jobDetail);
        }
    });

    RootPanel rootPanel = RootPanel.get();
    rootPanel.setSize("100%", "100%");

    DockPanel dockPanel = new DockPanel();
    rootPanel.add(dockPanel);
    dockPanel.setSize("", "100%");

    SimplePanel simplePanel = new SimplePanel();
    simplePanel.add(new SchedulerAdminButtonsWidget(scheduler));
    dockPanel.add(simplePanel, DockPanel.NORTH);

    SimplePanel simplePanel_1 = new SimplePanel();
    dockPanel.add(simplePanel_1, DockPanel.EAST);
    dockPanel.setCellWidth(simplePanel_1, "20%");
    simplePanel_1.setWidth("");

    executedJobsTable = new CellTable<GWTQuartzJobExecutionContext>();
    simplePanel_1.setWidget(executedJobsTable);
    executedJobsTable.setSize("100%", "100%");
    executedJobsTable.setTableLayoutFixed(false);

    TextColumn<GWTQuartzJobExecutionContext> ejJobName = new TextColumn<GWTQuartzJobExecutionContext>() {
        @Override
        public String getValue(GWTQuartzJobExecutionContext object) {
            return object.getJobKey().getName();
        }
    };
    executedJobsTable.addColumn(ejJobName, "job name");

    TextColumn<GWTQuartzJobExecutionContext> ejTriggerName = new TextColumn<GWTQuartzJobExecutionContext>() {
        @Override
        public String getValue(GWTQuartzJobExecutionContext object) {
            return object.getTriggerKey().getName();
        }
    };
    executedJobsTable.addColumn(ejTriggerName, "trigger name");

    Column<GWTQuartzJobExecutionContext, Number> ejRunTime = new Column<GWTQuartzJobExecutionContext, Number>(
            new NumberCell()) {
        @Override
        public Number getValue(GWTQuartzJobExecutionContext object) {
            return new Long(object.getJobRunTime());
        }
    };
    executedJobsTable.addColumn(ejRunTime, "run time");
    jobExecuationContextsProvider.addDataDisplay(executedJobsTable);

    final TabPanel tabPanel = new TabPanel();
    dockPanel.add(tabPanel, DockPanel.CENTER);
    dockPanel.setCellHeight(tabPanel, "100%");
    tabPanel.setSize("100%", "100%");
    VerticalPanel verticalPanel = new VerticalPanel();
    tabPanel.add(verticalPanel, "Jobs", false);
    verticalPanel.setSize("100%", "100%");
    tabPanel.selectTab(0);

    HorizontalPanel horizontalPanel_1 = new HorizontalPanel();
    verticalPanel.add(horizontalPanel_1);
    verticalPanel.setCellHeight(horizontalPanel_1, "22");
    verticalPanel.setCellWidth(horizontalPanel_1, "100%");

    Label lblNewLabel = new Label("Job Group");
    horizontalPanel_1.add(lblNewLabel);
    lblNewLabel.setWidth("67px");

    cbGroupName = new ListBox();
    horizontalPanel_1.add(cbGroupName);

    cbGroupName.addItem(ALL_GROUPS);
    cbGroupName.addChangeHandler(new ChangeHandler() {

        @Override
        public void onChange(ChangeEvent event) {
            updateJobs();
        }
    });

    final SimplePanel jobPanel = new SimplePanel();
    verticalPanel.add(jobPanel);
    verticalPanel.setCellHeight(jobPanel, "100%");
    verticalPanel.setCellWidth(jobPanel, "100%");
    jobPanel.setSize("100%", "");
    jobPanel.setStyleName("boxed");
    final JobsTable jobsTable = new JobsTable(jobsProvider, eventBus);
    jobPanel.add(jobsTable);
    jobsTable.setSize("100%", "397px");

    VerticalPanel verticalPanel_1 = new VerticalPanel();
    tabPanel.add(verticalPanel_1, "triggers", false);
    verticalPanel_1.setSize("100%", "100%");

    HorizontalPanel horizontalPanel_2 = new HorizontalPanel();
    verticalPanel_1.add(horizontalPanel_2);
    verticalPanel_1.setCellWidth(horizontalPanel_2, "100%");
    verticalPanel_1.setCellHeight(horizontalPanel_2, "22");

    Label lblGroup = new Label("Trigger Group");
    horizontalPanel_2.add(lblGroup);

    cbTriggerGroup = new ListBox();
    cbTriggerGroup.addItem(ALL_GROUPS);
    cbTriggerGroup.addChangeHandler(new ChangeHandler() {

        @Override
        public void onChange(ChangeEvent event) {
            updateTriggers();
        }
    });

    horizontalPanel_2.add(cbTriggerGroup);

    Button btnPauseAll = new Button("Pause All");
    btnPauseAll.addClickHandler(new ClickHandler() {
        public void onClick(ClickEvent event) {
            scheduler.pauseAll(new AsyncCallback<Void>() {

                @Override
                public void onFailure(Throwable caught) {
                    // TODO Auto-generated method stub

                }

                @Override
                public void onSuccess(Void result) {
                    // TODO Auto-generated method stub

                }
            });
        }
    });
    horizontalPanel_2.add(btnPauseAll);
    horizontalPanel_2.setCellHorizontalAlignment(btnPauseAll, HasHorizontalAlignment.ALIGN_RIGHT);

    Button btnResumeAll = new Button("Resume All");
    btnResumeAll.addClickHandler(new ClickHandler() {
        public void onClick(ClickEvent event) {
            scheduler.resumeAll(new AsyncCallback<Void>() {

                @Override
                public void onFailure(Throwable caught) {
                    // TODO Auto-generated method stub

                }

                @Override
                public void onSuccess(Void result) {
                    // TODO Auto-generated method stub

                }
            });
        }
    });
    horizontalPanel_2.add(btnResumeAll);

    Button btnPauseGroup = new Button("Pause Group");
    btnPauseGroup.addClickHandler(new ClickHandler() {
        public void onClick(ClickEvent event) {
            String selectedGroup = cbTriggerGroup.getItemText(cbTriggerGroup.getSelectedIndex());
            scheduler.pauseTriggers(selectedGroup, new AsyncCallback<Void>() {

                @Override
                public void onFailure(Throwable caught) {
                    // TODO Auto-generated method stub

                }

                @Override
                public void onSuccess(Void result) {
                    // TODO Auto-generated method stub

                }
            });
        }
    });
    horizontalPanel_2.add(btnPauseGroup);

    Button btnResumeGroup = new Button("Resume Group");
    btnResumeGroup.addClickHandler(new ClickHandler() {
        public void onClick(ClickEvent event) {
            String selectedGroup = cbTriggerGroup.getItemText(cbTriggerGroup.getSelectedIndex());
            scheduler.resumeTriggers(selectedGroup, new AsyncCallback<Void>() {

                @Override
                public void onFailure(Throwable caught) {
                    // TODO Auto-generated method stub

                }

                @Override
                public void onSuccess(Void result) {
                    // TODO Auto-generated method stub

                }
            });
        }
    });
    horizontalPanel_2.add(btnResumeGroup);

    SimplePanel triggerPanel = new SimplePanel();
    verticalPanel_1.add(triggerPanel);
    triggerPanel.setSize("100%", "390px");
    TriggersTable triggersTable = new TriggersTable(eventBus, triggersProvider);
    triggerPanel.add(triggersTable);
    triggersTable.setSize("100%", "100%");

    scheduler.getJobGroupNames(new AsyncCallback<ArrayList<String>>() {

        @Override
        public void onSuccess(ArrayList<String> result) {
            for (String name : result) {
                cbGroupName.addItem(name);
            }
            updateJobs();
        }

        @Override
        public void onFailure(Throwable caught) {
            // TODO Auto-generated method stub

        }
    });

    //polling jobs, triggers and job executions status
    new com.google.gwt.user.client.Timer() {
        @Override
        public void run() {

            updateJobs();

            updateTriggers();

            updateJobExecutionContexts();
            this.schedule(2000);
        }
    }.schedule(2000);

    scheduler.getTriggerGroupNames(new AsyncCallback<List<String>>() {

        @Override
        public void onFailure(Throwable caught) {
            // TODO Auto-generated method stub

        }

        @Override
        public void onSuccess(List<String> result) {
            for (String group : result) {
                cbTriggerGroup.addItem(group);
            }
            updateTriggers();
        }
    });

    //update trigger group combo box

}

From source file:org.rstudio.core.client.files.filedialog.FileBrowserWidget.java

License:Open Source License

public FileBrowserWidget(FileSystemContext context, Host host) {
    context_ = context;/*  ww w .j av  a  2 s  . co  m*/
    host_ = host;

    breadcrumb_ = new PathBreadcrumbWidget(context_);
    breadcrumb_.addSelectionCommitHandler(host);

    directory_ = new DirectoryContentsWidget(context_);
    directory_.addSelectionHandler(host);
    directory_.addSelectionCommitHandler(host);
    directory_.showProgress(true);

    DockPanel dockPanel = new DockPanel();
    Widget topWidget = createTopWidget();
    if (topWidget != null)
        dockPanel.add(topWidget, DockPanel.NORTH);
    dockPanel.add(breadcrumb_, DockPanel.NORTH);
    dockPanel.add(directory_, DockPanel.CENTER);

    initWidget(dockPanel);
}

From source file:org.rstudio.core.client.files.filedialog.FileSystemDialog.java

License:Open Source License

@Override
protected Widget createMainWidget() {
    breadcrumb_ = new PathBreadcrumbWidget(context_);
    breadcrumb_.addSelectionCommitHandler(this);

    directory_ = new DirectoryContentsWidget(context_);
    directory_.addSelectionHandler(this);
    directory_.addSelectionCommitHandler(this);
    directory_.showProgress(true);/*from w ww . j a va 2 s. co  m*/

    DockPanel dockPanel = new DockPanel();
    Widget topWidget = createTopWidget();
    if (topWidget != null)
        dockPanel.add(topWidget, DockPanel.NORTH);
    dockPanel.add(breadcrumb_, DockPanel.NORTH);
    dockPanel.add(directory_, DockPanel.CENTER);

    return dockPanel;
}

From source file:org.rstudio.core.client.widget.ModifyKeyboardShortcutsWidget.java

License:Open Source License

@Override
protected Widget createMainWidget() {
    resetState();//  w w  w  .  ja  v a2s  . co m

    setEscapeDisabled(true);
    setEnterDisabled(true);

    previewHandler_ = Event.addNativePreviewHandler(new NativePreviewHandler() {
        @Override
        public void onPreviewNativeEvent(NativePreviewEvent preview) {
            if (swallowNextKeyUpEvent_ && preview.getTypeInt() == Event.ONKEYUP) {
                swallowNextKeyUpEvent_ = false;
                preview.cancel();
                preview.getNativeEvent().stopPropagation();
                preview.getNativeEvent().preventDefault();
            } else if (preview.getTypeInt() == Event.ONKEYDOWN) {
                int keyCode = preview.getNativeEvent().getKeyCode();
                if (keyCode == KeyCodes.KEY_ESCAPE || keyCode == KeyCodes.KEY_ENTER) {
                    // If the DataGrid (or an underlying element) has focus, let it
                    // handle the escape / enter key.
                    Element target = preview.getNativeEvent().getEventTarget().cast();
                    Element foundTable = DomUtils.findParentElement(target, new ElementPredicate() {
                        @Override
                        public boolean test(Element el) {
                            return el.equals(table_.getElement());
                        }
                    });

                    if (foundTable != null)
                        return;

                    // If the filter widget has focus, Enter / Escape shouldn't close
                    // the widget.
                    if (filterWidget_.isFocused()) {
                        if (keyCode == KeyCodes.KEY_ENTER) {
                            table_.setKeyboardSelectedRow(0);
                            table_.setKeyboardSelectedColumn(0);
                            return;
                        } else if (keyCode == KeyCodes.KEY_ESCAPE) {
                            focusOkButton();
                            return;
                        }
                    }

                    // Otherwise, handle Enter / Escape 'modally' as we might normally do.
                    preview.cancel();
                    preview.getNativeEvent().stopPropagation();
                    preview.getNativeEvent().preventDefault();

                    if (keyCode == KeyCodes.KEY_ENTER) {
                        clickOkButton();
                        return;
                    } else if (keyCode == KeyCodes.KEY_ESCAPE) {
                        closeDialog();
                        return;
                    }
                }
            }
        }
    });

    addAttachHandler(new AttachEvent.Handler() {
        @Override
        public void onAttachOrDetach(AttachEvent event) {
            if (event.isAttached())
                ;
            else
                previewHandler_.removeHandler();
        }
    });

    VerticalPanel container = new VerticalPanel();

    FlowPanel headerPanel = new FlowPanel();

    Label radioLabel = new Label("Show:");
    radioLabel.getElement().getStyle().setFloat(Style.Float.LEFT);
    radioLabel.getElement().getStyle().setMarginRight(8, Unit.PX);
    headerPanel.add(radioLabel);
    headerPanel.add(radioAll_);
    radioAll_.setValue(true);
    headerPanel.add(radioCustomized_);

    filterWidget_.getElement().getStyle().setFloat(Style.Float.LEFT);
    filterWidget_.getElement().getStyle().setMarginLeft(10, Unit.PX);
    filterWidget_.getElement().getStyle().setMarginTop(-1, Unit.PX);
    headerPanel.add(filterWidget_);

    HelpLink link = new HelpLink("Customizing Keyboard Shortcuts", "custom_keyboard_shortcuts");
    link.getElement().getStyle().setFloat(Style.Float.RIGHT);
    headerPanel.add(link);

    container.add(headerPanel);

    FlowPanel spacer = new FlowPanel();
    spacer.setWidth("100%");
    spacer.setHeight("4px");
    container.add(spacer);

    DockPanel dockPanel = new DockPanel();
    dockPanel.add(table_, DockPanel.CENTER);
    container.add(dockPanel);

    return container;
}