Example usage for com.google.gwt.user.client Window confirm

List of usage examples for com.google.gwt.user.client Window confirm

Introduction

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

Prototype

public static boolean confirm(String msg) 

Source Link

Usage

From source file:eu.riscoss.client.riskanalysis.RASPanel.java

License:Apache License

protected void generateButtons() {

    saveRas = new Button("Save");
    saveRas.setStyleName("deleteButton");
    saveRas.addClickHandler(new ClickHandler() {
        @Override//from w  w  w.  j a  v  a2s  .  c om
        public void onClick(ClickEvent event) {
            saveRASData();
        }
    });

    update = new Button("Update");
    update.setStyleName("deleteButton");
    update.addClickHandler(new ClickHandler() {
        @Override
        public void onClick(ClickEvent arg0) {
            onUpdateIsClicked();
        }
    });

    run = new Button("Run");
    run.setStyleName("deleteButton");
    run.addClickHandler(new ClickHandler() {
        @Override
        public void onClick(ClickEvent arg0) {
            onRunIsClicked();
        }
    });

    backupUpdate = new Button("Backup & Update");
    backupUpdate.setStyleName("deleteButton");
    backupUpdate.addClickHandler(new ClickHandler() {
        @Override
        public void onClick(ClickEvent arg0) {
            onBackupUpdateClicked();
        }
    });

    backupRun = new Button("Backup & Run");
    backupRun.setStyleName("deleteButton");
    backupRun.addClickHandler(new ClickHandler() {
        @Override
        public void onClick(ClickEvent arg0) {
            onBackupRunClicked();
        }
    });

    remove = new Button("Delete");
    remove.setStyleName("deleteButton");
    remove.addClickHandler(new ClickHandler() {
        @Override
        public void onClick(ClickEvent arg0) {
            Boolean b = Window.confirm("Are you sure that you want to delete risk session " + rasName + "?");
            if (b) {
                String or = Window.Location.getParameter("or");
                if (or == null) {
                    risk.remove(selectedRAS);
                } else
                    Window.Location.replace("dashboard.jsp");
            }
        }
    });

    browseBack = new Button("Back");
    browseBack.setStyleName("deleteButton");
    browseBack.addClickHandler(new ClickHandler() {
        @Override
        public void onClick(ClickEvent arg0) {
            rasModule.back();
        }
    });

    browseDelete = new Button("Delete");
    browseDelete.setStyleName("deleteButton");
    browseDelete.addClickHandler(new ClickHandler() {
        @Override
        public void onClick(ClickEvent arg0) {
            Boolean b = Window.confirm("Are you sure that you want to delete risk session " + rasName + "?");
            if (b) {
                RiscossJsonClient.deleteRiskAnalysisSession(sessionSummary.getID(), new JsonCallback() {
                    @Override
                    public void onFailure(Method method, Throwable exception) {
                        Window.alert(exception.getMessage());
                    }

                    @Override
                    public void onSuccess(Method method, JSONValue response) {
                        rasModule.back();
                    }
                });
            }
        }
    });

    entityBack = new Button("Back");
    entityBack.setStyleName("deleteButton");
    entityBack.addClickHandler(new ClickHandler() {
        @Override
        public void onClick(ClickEvent arg0) {
            eppg.back(entityB);
        }
    });

    entityDelete = new Button("Delete");
    entityDelete.setStyleName("deleteButton");
    entityDelete.addClickHandler(new ClickHandler() {
        @Override
        public void onClick(ClickEvent arg0) {
            Boolean b = Window.confirm("Are you sure that you want to delete risk session " + rasName + "?");
            if (b)
                eppg.delete(sessionSummary.getID(), entityB);
        }
    });

    layerBack = new Button("Back");
    layerBack.setStyleName("deleteButton");
    layerBack.addClickHandler(new ClickHandler() {
        @Override
        public void onClick(ClickEvent arg0) {
            eppg.back(entityB);
        }
    });

    layerDelete = new Button("Delete");
    layerDelete.setStyleName("deleteButton");
    layerDelete.addClickHandler(new ClickHandler() {
        @Override
        public void onClick(ClickEvent arg0) {
            Boolean b = Window.confirm("Are you sure that you want to delete risk session " + rasName + "?");
            if (b)
                eppg.delete(sessionSummary.getID(), entityB);
        }
    });

    save = new Button("Save & Run");
    save.setStyleName("deleteButton");
    save.addClickHandler(new ClickHandler() {
        @Override
        public void onClick(ClickEvent event) {
            CodecRiskData crd = GWT.create(CodecRiskData.class);
            JSONValue values = crd.encode(inputForm.getValueMap());
            Log.println(values.toString());
            RiscossJsonClient.setAnalysisMissingData(selectedRAS, values, new JsonCallback() {
                @Override
                public void onSuccess(Method method, JSONValue response) {
                    onSaveAndRunClicked();
                }

                @Override
                public void onFailure(Method method, Throwable exception) {
                    Window.alert(exception.getMessage());
                }
            });
        }
    });

    backupSave = new Button("Backup, Save & Run");
    backupSave.setStyleName("deleteButton");
    backupSave.addClickHandler(new ClickHandler() {
        @Override
        public void onClick(ClickEvent arg0) {
            onBackupSaveClicked();
        }
    });

    mitigation = new Button("Apply mitigation");
    mitigation.setStyleName("deleteButton");
    mitigation.addClickHandler(new ClickHandler() {
        @Override
        public void onClick(ClickEvent arg0) {
            applyMitigation();
        }
    });

    whatIf = new Button("What-If");
    whatIf.setStyleName("deleteButton");
    whatIf.addClickHandler(new ClickHandler() {
        @Override
        public void onClick(ClickEvent arg0) {
            whatIfAnalysis();
        }
    });

    generateReport = new Button("Generate report");
    generateReport.setStyleName("deleteButton");
    generateReport.addClickHandler(new ClickHandler() {
        @Override
        public void onClick(ClickEvent event) {
            generateReport();
        }
    });
}

From source file:eu.riscoss.client.riskconfs.RiskConfsModule.java

License:Apache License

protected void deleteRC() {
    if (hasRisk)/*w ww  .  ja v a  2 s.  c  om*/
        Window.alert("Risk configurations with associated risk sessions cannot be deleted");
    else {
        Boolean b = Window
                .confirm("Are you sure that you want to delete risk configuration " + selectedRC + "?");
        if (b) {
            RiscossJsonClient.deleteRC(selectedRC, new JsonCallback() {
                @Override
                public void onFailure(Method method, Throwable exception) {
                    Window.alert(exception.getMessage());
                }

                @Override
                public void onSuccess(Method method, JSONValue response) {
                    onRCSelected(null);
                    Window.Location.reload();
                }
            });
        }
    }
}

From source file:fr.aliasource.webmail.client.composer.CannedResponsePanel.java

License:GNU General Public License

private AsyncCallback<ConversationList> getListConvCallback() {
    vp.clear();/*from   ww  w. j  a v a2  s  .  c  om*/
    return new AsyncCallback<ConversationList>() {
        public void onSuccess(ConversationList convs) {

            if (convs.getFullLength() == 0) {
                Label l = new Label(I18N.strings.noCannedResponses());
                vp.add(l);
            } else {
                Conversation[] c = convs.getData();
                for (Conversation conv : c) {
                    String title = conv.getTitle();
                    final ConversationId id = conv.getId();
                    Anchor hl = new Anchor(title);
                    hl.addClickHandler(new ClickHandler() {
                        public void onClick(ClickEvent sender) {
                            if (!mc.isEmpty()) {
                                if (Window.confirm(I18N.strings.loadCannedResponse())) {
                                    loadCannedResponse(id);
                                }
                            } else {
                                loadCannedResponse(id);
                            }
                            pp.hide();
                        }
                    });
                    vp.add(hl);
                }
            }
        }

        public void onFailure(Throwable caught) {
            Label l = new Label(I18N.strings.noCannedResponses());
            vp.add(l);
        }
    };
}

From source file:fr.aliasource.webmail.client.settings.FolderSettingsDataGrid.java

License:GNU General Public License

private void fillRow(final Folder folder, final int i) {

    final int margin = sepCount(folder.getName());

    if (i % 2 == 0) {
        getRowFormatter().setStyleName(i, "odd");
    } else {/*from  w  w  w.j  ava  2s  .  co m*/
        getRowFormatter().setStyleName(i, "even");
    }

    getCellFormatter().setStyleName(i, 0, "settingsCell");
    getCellFormatter().setStyleName(i, 1, "settingsCell");
    getCellFormatter().setStyleName(i, 2, "settingsCell");
    getCellFormatter().setStyleName(i, 3, "settingsCell");
    getCellFormatter().setStyleName(i, 4, "settingsCell");

    Anchor createLink = new Anchor(I18N.strings.createSubFolder());
    createLink.addClickHandler(new ClickHandler() {
        public void onClick(ClickEvent sender) {
            flt.selectFolder(folder);
        }
    });

    final String folderName = ui.displayName(folder);

    Anchor renameLink = new Anchor(I18N.strings.renameFolder());
    renameLink.addClickHandler(new ClickHandler() {
        public void onClick(ClickEvent sender) {
            final TextBox in = new TextBox();
            in.setText(folderName);

            in.addKeyPressHandler(new KeyPressHandler() {
                @Override
                public void onKeyPress(KeyPressEvent event) {
                    if (KeyCodes.KEY_ENTER == event.getNativeEvent().getKeyCode()) {
                        flt.renameFolder(folder, in.getText());
                    }
                }

            });

            HorizontalPanel horizontalPanel = createAlignementPanel(margin);
            horizontalPanel.add(in);
            setWidget(i, 0, horizontalPanel);

        }

    });

    if (folder.canChangeSubscription()) {
        Anchor folderLink = new Anchor(ui.displayName(folder));
        folderLink.addClickHandler(new ClickHandler() {
            public void onClick(ClickEvent sender) {
                flt.showFolder(folder);
            }
        });

        if (folder.isSubscribed()) {
            folderLink.addStyleName("subscribedFolderSettingsLink");
        } else {
            folderLink.addStyleName("folderSettingsLink");
        }

        HorizontalPanel horizontalPanel = createAlignementPanel(margin);
        horizontalPanel.add(folderLink);

        setWidget(i, 0, horizontalPanel);

        setWidget(i, 1, createLink);

        Anchor actionLink = null;
        if (folder.isSubscribed()) {
            actionLink = new Anchor(I18N.strings.unsubscribe());
            actionLink.addClickHandler(new ClickHandler() {
                public void onClick(ClickEvent sender) {
                    flt.unsubscribe(folder);
                }
            });
        } else {
            actionLink = new Anchor(I18N.strings.subscribe());
            actionLink.addClickHandler(new ClickHandler() {
                public void onClick(ClickEvent sender) {
                    flt.subscribe(folder);
                }
            });
        }
        setWidget(i, 2, actionLink);
    } else {
        Label label = new Label(ui.displayName(folder.getName()));
        label.addStyleName("folderSettingsLabel");

        label.getElement().setAttribute("style", "margin-left: " + margin + "px");
        setWidget(i, 0, label);
        setWidget(i, 1, createLink);
        setWidget(i, 2, new HTML("&nbsp;"));
    }

    boolean folderProtected = isProtectedFolders(folder);

    if (folder.canRename() && !folderProtected) {
        setWidget(i, 3, renameLink);
    } else {
        setWidget(i, 3, new HTML("&nbsp;"));
    }

    if (folder.canDelete() && !folderProtected) {
        Anchor deleteLink = new Anchor(I18N.strings.delete());
        deleteLink.addClickHandler(new ClickHandler() {
            public void onClick(ClickEvent sender) {
                if (isInTrash(folder)) {
                    if (Window.confirm(I18N.strings.confirmDirectDelete(folder.getDisplayName()))) {
                        flt.deleteFolder(folder);
                    }
                } else {
                    if (Window.confirm(I18N.strings.confirmDeleteFolder(folder.getDisplayName()))) {
                        flt.deleteFolder(folder);
                    }
                }
            }
        });

        setWidget(i, 4, deleteLink);
    } else {
        setWidget(i, 4, new HTML("&nbsp;"));
    }
}

From source file:fr.aliasource.webmail.client.View.java

License:GNU General Public License

public boolean confirmFolderAction(int nbConversations, Folder folderName) {
    return Window.confirm(
            I18N.strings.confirmFolderAction(Integer.toString(nbConversations), displayName(folderName)));
}

From source file:fr.gael.dhus.gwt.client.page.SearchPage.java

License:Open Source License

private static void deleteProduct(int id, String name) {
    if (!Window.confirm("Are you sure to delete the product '" + name + "' ?")) {
        return;/*from   w w w . jav  a 2s .co  m*/
    }
    productService.deleteProduct(new Long(id), new AccessDeniedRedirectionCallback<Void>() {

        @Override
        public void _onFailure(Throwable caught) {
            Window.alert("There was an error while deleting product.\n " + caught.getMessage());
        }

        @Override
        public void onSuccess(Void result) {
            refreshSearch();
        }
    });
    return;
}

From source file:fr.putnami.pwt.core.mvp.client.MvpController.java

License:Open Source License

@Override
public void goTo(final Place newPlace) {

    if (this.getWhere().equals(newPlace)) {
        return;/*from w w w .  j a va2  s . c  o m*/
    }

    PlaceChangeRequestEvent willChange = new PlaceChangeRequestEvent(newPlace);
    EventBus.get().fireEvent(willChange);
    String warning = willChange.getWarning();
    if (warning == null || Window.confirm(warning)) {
        this.doGo(newPlace);
    } else {
        this.goTo(this.getWhere());
    }
}

From source file:gov.nist.spectrumbrowser.admin.FftPowerSensorBands.java

License:Open Source License

public void draw() {

    verticalPanel.clear();//from ww w.ja v a  2 s.c  o  m
    HTML html = new HTML("<H2>Bands for sensor : " + sensor.getSensorId() + "</H2>");
    verticalPanel.add(html);
    JSONObject sensorThresholds = sensor.getThresholds();

    Grid grid = new Grid(sensorThresholds.keySet().size() + 1, 10);
    grid.setBorderWidth(2);
    grid.setCellPadding(2);
    grid.setCellSpacing(2);
    grid.setText(0, 0, "System To Detect");
    grid.setText(0, 1, "Min Freq (Hz)");
    grid.setText(0, 2, "Max Freq (Hz)");
    grid.setText(0, 3, "Channel Count");
    grid.setText(0, 4, "Sampling Rate");
    grid.setText(0, 5, "FFT-Size");
    grid.setText(0, 6, "Occupancy Threshold (dBm/Hz)");
    grid.setText(0, 7, "Occupancy Threshold (dBm)");
    grid.setText(0, 8, "Enabled?");
    grid.setText(0, 9, "Delete Band");
    grid.setBorderWidth(2);
    grid.setCellPadding(2);
    grid.setCellSpacing(2);
    CellFormatter formatter = grid.getCellFormatter();

    for (int i = 0; i < grid.getRowCount(); i++) {
        for (int j = 0; j < grid.getColumnCount(); j++) {
            formatter.setHorizontalAlignment(i, j, HasHorizontalAlignment.ALIGN_CENTER);
            formatter.setVerticalAlignment(i, j, HasVerticalAlignment.ALIGN_MIDDLE);
        }
    }
    for (int i = 0; i < grid.getColumnCount(); i++) {
        grid.getCellFormatter().setStyleName(0, i, "textLabelStyle");
    }

    int row = 1;
    for (String key : sensorThresholds.keySet()) {
        final FftPowerBand threshold = new FftPowerBand(sensorThresholds.get(key).isObject());
        grid.setText(row, 0, threshold.getSystemToDetect());
        grid.setText(row, 1, Long.toString(threshold.getMinFreqHz()));
        grid.setText(row, 2, Long.toString(threshold.getMaxFreqHz()));
        final TextBox channelCountTextBox = new TextBox();
        channelCountTextBox.setText(Long.toString(threshold.getChannelCount()));
        channelCountTextBox.addValueChangeHandler(new ValueChangeHandler<String>() {

            @Override
            public void onValueChange(ValueChangeEvent<String> event) {
                Long oldValue = Long.parseLong(channelCountTextBox.getValue());
                try {
                    long newValue = Long.parseLong(event.getValue());
                    threshold.setChannelCount((long) newValue);

                } catch (Exception ex) {
                    Window.alert(ex.getMessage());
                    channelCountTextBox.setValue(Double.toString(oldValue));
                }
            }

        });
        grid.setWidget(row, 3, channelCountTextBox);

        final TextBox samplingRateTextBox = new TextBox();
        samplingRateTextBox.setText(Long.toString(threshold.getSamplingRate()));
        samplingRateTextBox.addValueChangeHandler(new ValueChangeHandler<String>() {
            @Override
            public void onValueChange(ValueChangeEvent<String> event) {
                Long oldValue = Long.parseLong(samplingRateTextBox.getValue());
                try {
                    long newValue = Long.parseLong(event.getValue());
                    threshold.setSamplingRate((long) newValue);

                } catch (Exception ex) {
                    Window.alert(ex.getMessage());
                    samplingRateTextBox.setValue(Double.toString(oldValue));
                }
            }

        });

        grid.setWidget(row, 4, samplingRateTextBox);

        final TextBox fftSizeTextBox = new TextBox();

        fftSizeTextBox.setText(Long.toString(threshold.getFftSize()));
        fftSizeTextBox.addValueChangeHandler(new ValueChangeHandler<String>() {
            @Override
            public void onValueChange(ValueChangeEvent<String> event) {
                Long oldValue = Long.parseLong(fftSizeTextBox.getValue());
                try {
                    long newValue = Long.parseLong(event.getValue());
                    threshold.setFftSize((long) newValue);

                } catch (Exception ex) {
                    Window.alert(ex.getMessage());
                    fftSizeTextBox.setValue(Double.toString(oldValue));
                }
            }
        });

        grid.setWidget(row, 5, fftSizeTextBox);

        final Label thresholdDbmLabel = new Label();

        final TextBox thresholdTextBox = new TextBox();
        thresholdTextBox.setText(Double.toString(threshold.getThresholdDbmPerHz()));
        thresholdTextBox.addValueChangeHandler(new ValueChangeHandler<String>() {

            @Override
            public void onValueChange(ValueChangeEvent<String> event) {
                Double oldThreshold = Double.parseDouble(thresholdTextBox.getValue());
                try {
                    double newThreshold = Double.parseDouble(event.getValue());
                    threshold.setThresholdDbmPerHz(newThreshold);
                    thresholdDbmLabel.setText(Float.toString(threshold.getThresholdDbm()));

                } catch (Exception ex) {
                    Window.alert(ex.getMessage());
                    thresholdTextBox.setValue(Double.toString(oldThreshold));
                }
            }
        });

        grid.setWidget(row, 6, thresholdTextBox);
        thresholdDbmLabel.setText(Float.toString(threshold.getThresholdDbm()));
        grid.setWidget(row, 7, thresholdDbmLabel);
        CheckBox activeCheckBox = new CheckBox();
        grid.setWidget(row, 8, activeCheckBox);
        if (!sensor.isStreamingEnabled()) {
            activeCheckBox.setValue(true);
            activeCheckBox.setEnabled(false);
        } else {
            activeCheckBox.setValue(threshold.isActive());
        }

        activeCheckBox.addValueChangeHandler(new ValueChangeHandler<Boolean>() {

            @Override
            public void onValueChange(ValueChangeEvent<Boolean> event) {
                if (sensor.isStreamingEnabled()) {
                    if (event.getValue()) {
                        for (String key : sensor.getThresholds().keySet()) {
                            FftPowerBand th = new FftPowerBand(sensor.getThreshold(key));
                            th.setActive(false);
                        }
                    }
                    threshold.setActive(event.getValue());
                    draw();
                }
            }
        });

        Button deleteButton = new Button("Delete Band");
        deleteButton.addClickHandler(new DeleteThresholdClickHandler(threshold));
        grid.setWidget(row, 9, deleteButton);
        row++;
    }
    verticalPanel.add(grid);
    HorizontalPanel horizontalPanel = new HorizontalPanel();
    Button addButton = new Button("Add Band");
    addButton.addClickHandler(new ClickHandler() {

        @Override
        public void onClick(ClickEvent event) {
            new AddFftPowerSensorBand(admin, FftPowerSensorBands.this, sensorConfig, sensor, verticalPanel)
                    .draw();

        }
    });
    horizontalPanel.add(addButton);

    Button doneButton = new Button("Done");
    doneButton.setTitle("Return to Sensors screen");
    doneButton.addClickHandler(new ClickHandler() {

        @Override
        public void onClick(ClickEvent event) {
            sensorConfig.redraw();
        }

    });
    horizontalPanel.add(doneButton);

    Button updateButton = new Button("Update");
    updateButton.setTitle("Update sensor on the server");
    updateButton.addClickHandler(new ClickHandler() {

        @Override
        public void onClick(ClickEvent event) {
            Admin.getAdminService().updateSensor(sensor.toString(), sensorConfig);
        }
    });

    horizontalPanel.add(updateButton);

    Button logoffButton = new Button("Log Off");
    logoffButton.setTitle("Log off from admin");
    logoffButton.addClickHandler(new ClickHandler() {

        @Override
        public void onClick(ClickEvent event) {
            admin.logoff();
        }
    });

    Button recomputeButton = new Button("Recompute Occupancies");
    recomputeButton.setTitle("Recomputes per message summary occupancies.");
    recomputeButton.addClickHandler(new ClickHandler() {

        @Override
        public void onClick(ClickEvent event) {
            boolean yes = Window.confirm(
                    "Ensure no users are using the system. This can take a long time. Sensor will be disabled. Proceed?");
            if (yes) {

                final HTML html = new HTML(
                        "<h3>Recomputing occupancies - this can take a while. Sensor will be disabled. Please wait. </h3>");
                verticalPanel.add(html);
                Admin.getAdminService().updateSensor(sensor.toString(), sensorConfig);
                Admin.getAdminService().recomputeOccupancies(sensor.getSensorId(),
                        new SpectrumBrowserCallback<String>() {

                            @Override
                            public void onSuccess(String result) {
                                verticalPanel.remove(html);

                            }

                            @Override
                            public void onFailure(Throwable throwable) {
                                Window.alert("Error communicating with server");
                                admin.logoff();

                            }
                        });
            }
        }
    });
    horizontalPanel.add(recomputeButton);

    horizontalPanel.add(logoffButton);

    verticalPanel.add(horizontalPanel);

}

From source file:gov.nist.spectrumbrowser.admin.ManageStorage.java

License:Open Source License

public void draw() {
    verticalPanel.clear();/*from   w w  w . j  av a  2 s.  co  m*/

    HTML title = new HTML("<h3>Sensor Storage Management </h3>");
    verticalPanel.add(title);

    Grid grid = new Grid(2, 2);
    grid.setText(0, 0, "Data Retention Duration (months)");
    final TextBox dataRetentionTextBox = new TextBox();
    dataRetentionTextBox.setWidth("30px");
    dataRetentionTextBox.setValue(Integer.toString(sensor.getDataRetentionDurationMonths()));
    dataRetentionTextBox.addValueChangeHandler(new ValueChangeHandler<String>() {
        @Override
        public void onValueChange(ValueChangeEvent<String> event) {
            try {
                int newRetention = Integer.parseInt(event.getValue());
                if (!sensor.setDataRetentionDurationMonths(newRetention)) {
                    Window.alert("Please enter a valid integer >= 0");
                    dataRetentionTextBox.setText(Integer.toString(sensor.getDataRetentionDurationMonths()));
                    return;
                }
                Admin.getAdminService().updateSensor(sensor.toString(), ManageStorage.this);
            } catch (Exception ex) {
                Window.alert("Please enter a valid integer >= 0");
            }
        }
    });
    grid.setWidget(0, 1, dataRetentionTextBox);

    Button cleanupButton = new Button("Garbage Collect");
    cleanupButton.setTitle("Removes timed out data");
    cleanupButton.addClickHandler(new ClickHandler() {

        @Override
        public void onClick(ClickEvent event) {

            if (sensor.getSensorStatus().equals("ENABLED")) {
                Window.alert("Please toggle sensor status");
                return;
            }
            boolean yes = Window
                    .confirm("This can take a while. Please ensure there are no active user sessions. "
                            + "Deleted records can't be reclaimed.");

            if (yes) {
                verticalPanel.add(progress);
                ManageStorage.this.updateFlag = true;
                Admin.getAdminService().garbageCollect(sensor.getSensorId(), ManageStorage.this);
            }
        }
    });

    verticalPanel.add(grid);

    HorizontalPanel hpanel = new HorizontalPanel();
    hpanel.add(cleanupButton);

    Button done = new Button("Done");
    done.addClickHandler(new ClickHandler() {

        @Override
        public void onClick(ClickEvent event) {
            Window.alert("Please re-enable sensor on sensor management page");
            sensorConfig.draw();

        }
    });

    hpanel.add(done);

    Button logoffButton = new Button("Log out");
    logoffButton.addClickHandler(new ClickHandler() {

        @Override
        public void onClick(ClickEvent event) {
            admin.logoff();

        }
    });
    hpanel.add(logoffButton);
    verticalPanel.add(hpanel);

}

From source file:gov.nist.spectrumbrowser.admin.SensorConfig.java

License:Open Source License

@Override
public void draw() {
    verticalPanel.clear();//from w  ww  .  j  ava 2s. co  m

    HTML title = new HTML("<h3>Configured sensors. </h3>");

    titlePanel = new HorizontalPanel();
    titlePanel.add(title);
    HTML subtitle = new HTML("<p>Select Add button to add a new sensor. "
            + "Buttons on each sensor row allow you to reconfigure the sensor.</p>");
    verticalPanel.add(titlePanel);
    verticalPanel.add(subtitle);
    ;
    grid = new Grid(sensors.size() + 1, 13);

    for (int i = 0; i < grid.getColumnCount(); i++) {
        grid.getCellFormatter().setStyleName(0, i, "textLabelStyle");
    }

    for (int i = 0; i < grid.getRowCount(); i++) {
        for (int j = 0; j < grid.getColumnCount(); j++) {
            grid.getCellFormatter().setHorizontalAlignment(i, j, HasHorizontalAlignment.ALIGN_CENTER);
            grid.getCellFormatter().setVerticalAlignment(i, j, HasVerticalAlignment.ALIGN_MIDDLE);
        }
    }
    grid.setCellPadding(2);
    grid.setCellSpacing(2);
    grid.setBorderWidth(2);

    int col = 0;

    // Column headings.

    grid.setText(0, col++, "Sensor Identity"); //1
    grid.setText(0, col++, "Storage Management");//2
    grid.setText(0, col++, "Frequency Bands");//3
    grid.setText(0, col++, "Show Activity");//4
    grid.setText(0, col++, "Enabled?");//5
    grid.setText(0, col++, "Get System Messages");//6
    grid.setText(0, col++, "Measurement Params");//7
    grid.setText(0, col++, "Startup Params");//8
    grid.setText(0, col++, "Duplicate Settings");//9
    grid.setText(0, col++, "Purge Data");//10
    grid.setText(0, col++, "Remove Sensor");//11
    grid.setText(0, col++, "Configuration Status"); //12
    grid.setText(0, col++, "Run Status"); //13

    int row = 1;
    for (final Sensor sensor : sensors) {

        col = 0;
        Button sensorIdentityButton = new Button(sensor.getSensorId());
        sensorIdentityButton.setWidth("100%");
        grid.setWidget(row, col++, sensorIdentityButton);
        sensorIdentityButton.addClickHandler(new ClickHandler() {

            @Override
            public void onClick(ClickEvent event) {
                new SensorIdentity(admin, SensorConfig.this, sensor, verticalPanel).draw();
            }
        });

        final Button manageStorage = new Button("Manage Storage");
        manageStorage.addClickHandler(new ClickHandler() {

            @Override
            public void onClick(ClickEvent event) {
                if (sensor.getSensorStatus().equals("ENABLED")) {
                    Window.alert("Please disable sensor first (click on check box).");
                } else {
                    new ManageStorage(admin, verticalPanel, sensors, sensor, SensorConfig.this).draw();
                }

            }
        });

        grid.setWidget(row, col++, manageStorage);

        int thresholdCount = sensor.getThresholds().keySet().size();
        Button thresholdButton;
        if (thresholdCount == 0)
            thresholdButton = new Button("Add");
        else
            thresholdButton = new Button("Change/Add");
        thresholdButton.setTitle("Define Band Occupancy Threshold.");
        if (thresholdCount == 0) {
            thresholdButton.setStyleName("dangerous");
        }
        thresholdButton.addClickHandler(new ClickHandler() {
            @Override
            public void onClick(ClickEvent event) {
                if (sensor.getMeasurementType().equals(Defines.SWEPT_FREQUENCY)) {
                    new SweptFrequencySensorBands(admin, SensorConfig.this, sensor, verticalPanel).draw();
                } else {
                    new FftPowerSensorBands(admin, SensorConfig.this, sensor, verticalPanel).draw();
                }
            }
        });

        grid.setWidget(row, col++, thresholdButton);

        Button getMessageDates = new Button("Show");
        getMessageDates.addClickHandler(new ClickHandler() {

            @Override
            public void onClick(ClickEvent event) {
                new ShowMessageDates(admin, SensorConfig.this, sensor, verticalPanel).draw();
            }
        });
        grid.setWidget(row, col++, getMessageDates);

        CheckBox statusCheckBox = new CheckBox();
        statusCheckBox.setValue(sensor.getSensorStatus().equals("ENABLED"));
        statusCheckBox.addValueChangeHandler(new ValueChangeHandler<Boolean>() {

            @Override
            public void onValueChange(ValueChangeEvent<Boolean> event) {
                SensorConfig.this.updateFlag = true;
                Admin.getAdminService().toggleSensorStatus(sensor.getSensorId(), SensorConfig.this);

            }
        });

        grid.setWidget(row, col++, statusCheckBox);

        Button downloadSysMessages = new Button("Get");
        grid.setWidget(row, col++, downloadSysMessages);
        downloadSysMessages.addClickHandler(new ClickHandler() {

            @Override
            public void onClick(ClickEvent event) {
                Admin.getAdminService().getSystemMessages(sensor.getSensorId(),
                        new SpectrumBrowserCallback<String>() {

                            @Override
                            public void onSuccess(String result) {
                                JSONObject jsonObj = JSONParser.parseLenient(result).isObject();
                                String status = jsonObj.get("status").isString().stringValue();
                                if (status.equals("OK")) {
                                    Window.alert("Please check your email in 10 minutes for notification");
                                } else {
                                    Window.alert(jsonObj.get("ErrorMessage").isString().stringValue());
                                }

                            }

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

                            }
                        });
            }
        });

        Button streamingButton = new Button();

        if (!sensor.isStreamingEnabled()) {
            streamingButton.setText("Measurement Params");
            if (!sensor.isMeasurementConfigured()) {
                streamingButton.setStyleName("dangerous");
            }
            streamingButton.setTitle("Configure sensor measurement parameters");
        } else {
            streamingButton.setText("Streaming Params");
            streamingButton.setTitle("Streaming Params");
            if (!sensor.isStreamingConfigured()) {
                streamingButton.setStyleName("dangerous");
            }
        }

        grid.setWidget(row, col++, streamingButton); // 9
        streamingButton.addClickHandler(new ClickHandler() {

            @Override
            public void onClick(ClickEvent event) {
                if (sensor.isStreamingEnabled()) {
                    new SetStreamingParams(admin, verticalPanel, sensor, SensorConfig.this).draw();
                } else {
                    new SetMeasurementParams(admin, verticalPanel, sensor, SensorConfig.this).draw();
                }
            }
        });

        TextBox startupParamsTextBox = new TextBox();
        startupParamsTextBox.setWidth("120px");
        grid.setWidget(row, col++, startupParamsTextBox);
        startupParamsTextBox.setTitle("Startup parameters (read by sensor on startup)");
        startupParamsTextBox.setText(sensor.getStartupParams());
        startupParamsTextBox.addValueChangeHandler(new ValueChangeHandler<String>() {

            @Override
            public void onValueChange(ValueChangeEvent<String> event) {
                sensor.setStartupParams(event.getValue());
                Admin.getAdminService().updateSensor(sensor.toString(), SensorConfig.this);
            }
        });

        Button dupButton = new Button("Dup");
        dupButton.setTitle("Creates a new sensor with the same settings");
        dupButton.addClickHandler(new ClickHandler() {

            @Override
            public void onClick(ClickEvent event) {
                new AddNewSensor(admin, verticalPanel, sensor, SensorConfig.this).draw();
            }
        });
        grid.setWidget(row, col++, dupButton);

        Button purgeButton = new Button("Purge Data");
        purgeButton.setTitle("WARNING: Removes Sensor and all data associated with it");
        purgeButton.setStyleName("dangerous");
        purgeButton.addClickHandler(new ClickHandler() {

            @Override
            public void onClick(ClickEvent event) {
                if (sensor.getSensorStatus().equals("ENABLED")) {
                    Window.alert("Please toggle state of sensor");
                    return;
                }
                boolean yes = Window.confirm(
                        "Remove the all associated data? Cannot be undone! Ensure no active sessions.");
                if (yes) {
                    titlePanel.clear();
                    HTML html = new HTML(
                            "<h3>Purging sensor " + sensor.getSensorId() + ". This can take a while! </h3>");
                    titlePanel.add(html);
                    SensorConfig.this.updateFlag = true;
                    Admin.getAdminService().purgeSensor(sensor.getSensorId(), SensorConfig.this);

                }
            }
        });
        grid.setWidget(row, col++, purgeButton);

        Button removeButton = new Button("Remove Sensor");
        removeButton.setTitle("WARNING: Removes Sensor and all data associated with it");
        removeButton.setStyleName("dangerous");
        removeButton.addClickHandler(new ClickHandler() {

            @Override
            public void onClick(ClickEvent event) {
                if (sensor.getSensorStatus().equals("ENABLED")) {
                    Window.alert("Please toggle state of sensor");
                    return;
                }
                boolean yes = Window.confirm("Remove Sensor?");
                if (yes) {
                    titlePanel.clear();
                    HTML html = new HTML(
                            "<h3>Removing " + sensor.getSensorId() + ". This can take a while! </h3>");
                    titlePanel.add(html);
                    SensorConfig.this.updateFlag = true;
                    Admin.getAdminService().deleteSensor(sensor.getSensorId(), SensorConfig.this);

                }
            }
        });
        grid.setWidget(row, col++, removeButton);

        boolean isConfigured = true;
        if (sensor.getThresholdCount() == 0) {
            isConfigured = false;
        } else if (sensor.isStreamingEnabled()) {
            if (!new StreamingParams(sensor.getStreamingConfig()).verify()) {
                isConfigured = false;
            }
        } else if (!new MeasurementParams(sensor.getMeasurementParams()).verify()) {
            isConfigured = false;
        }
        grid.setText(row, col++, isConfigured ? "Configured" : "Incomplete");

        grid.setText(row, col++, sensor.getSensorStatus());

        row++;

    }
    verticalPanel.add(grid);
    HorizontalPanel buttonPanel = new HorizontalPanel();
    Button addNewSensorButton = new Button("Add new sensor");
    addNewSensorButton.addClickHandler(new ClickHandler() {
        @Override
        public void onClick(ClickEvent event) {
            new AddNewSensor(admin, verticalPanel, SensorConfig.this).draw();
        }
    });
    buttonPanel.add(addNewSensorButton);
    Button refreshButton = new Button("Refresh");
    refreshButton.addClickHandler(new ClickHandler() {

        @Override
        public void onClick(ClickEvent event) {
            SensorConfig.this.redraw();
        }
    });
    buttonPanel.add(refreshButton);

    Button logoffButton = new Button("Log Off");
    logoffButton.addClickHandler(new ClickHandler() {

        @Override
        public void onClick(ClickEvent event) {
            admin.logoff();
        }
    });
    buttonPanel.add(logoffButton);
    verticalPanel.add(buttonPanel);

}