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

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

Introduction

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

Prototype

protected FormPanel(Element element) 

Source Link

Document

This constructor may be used by subclasses to explicitly use an existing element.

Usage

From source file:org.vectomatic.client.rep.RepApplication.java

License:Open Source License

public void onModuleLoad() {
    _constants = (UIConstants) GWT.create(UIConstants.class);
    _messages = (UIMessages) GWT.create(UIMessages.class);
    _icons = (UIImageBundle) GWT.create(UIImageBundle.class);

    app = this;//  w  w w  .  j  a  v a2s  . co  m
    //debugArea = new TextArea();
    _model = new DrawingModel();
    _selection = new ShapeSelection(_model);
    _history = new CommandHistory(20);
    _paletteList = new PaletteList();
    _paletteList.addPalette(Palette.getEGA());
    _paletteList.addPalette(Palette.getGOLD());

    RepresentationController repController = new RepresentationController(this);
    _view = new DrawingView(repController, _model, 400, 400);
    _view.setTabIndex(1);
    _view.setFocus(true);
    _selector = new MouseControllerSelector(_view);

    Attribute.LINE_STYLE.setName(_constants.lineStyleAttribute());
    Attribute.LINE_OPACITY.setName(_constants.lineOpacityAttribute());
    Attribute.LINE_PATTERN.setName(_constants.linePatternAttribute());
    Attribute.LINE_CAP.setName(_constants.lineCapAttribute());
    Attribute.LINE_WIDTH.setName(_constants.lineWidthAttribute());
    Attribute.FILL_STYLE.setName(_constants.fillStyleAttribute());
    Attribute.FILL_OPACITY.setName(_constants.fillOpacityAttribute());

    _lineStyleController = new StyleController(this, _constants.lineLabel(), Attribute.LINE_STYLE,
            Attribute.LINE_OPACITY, Color.BLACK, new FloatAttributeValue(1f));
    _fillStyleController = new StyleController(this, _constants.fillLabel(), Attribute.FILL_STYLE,
            Attribute.FILL_OPACITY, Color.fromRGB(0, 128, 255), new FloatAttributeValue(1f));
    _lineWidthController = new LineWidthController(this);
    _clipBoard = new ClipBoard();
    UndoController undoController = new UndoController(this);
    RedoController redoController = new RedoController(this);
    CopyController copyController = new CopyController(this);
    CutController cutController = new CutController(this);
    PasteController pasteController = new PasteController(this);
    GroupController groupController = new GroupController(this);
    UngroupController ungroupController = new UngroupController(this);
    DeleteController deleteController = new DeleteController(this);
    OrderingController orderingController = new OrderingController(this);
    ResizeController resizeController = new ResizeController(this, repController);

    FormPanel form = new FormPanel("export");
    ExportController exportController = new ExportController(this, form);

    ContextualMenuVisitor contextVisitor = new ContextualMenuVisitor(deleteController, ungroupController,
            groupController, orderingController, _view);

    SelectShapeController selectShapeController = new SelectShapeController(this, deleteController,
            contextVisitor);
    NewRectController newRectController = new NewRectController(this);
    NewEllipseController newEllipseController = new NewEllipseController(this);
    NewPolylineController newPolylineController = new NewPolylineController(this);
    EditPolylineController editPolylineController = new EditPolylineController(this);
    NewPathController newPathController = new NewPathController(this);
    EditPathController editPathController = new EditPathController(this);

    _selector.add(selectShapeController.getButton());
    _selector.add(newRectController.getButton());
    _selector.add(newEllipseController.getButton());
    _selector.add(newPolylineController.getButton());
    _selector.add(editPolylineController.getButton());
    _selector.add(newPathController.getButton());
    _selector.add(editPathController.getButton());
    _selector.selectController(newRectController.getButton());

    final Grid commandButtons = new Grid(5, 2);
    commandButtons.setWidget(0, 0, selectShapeController.getButton());
    commandButtons.setWidget(0, 1, repController.getSaveButton());
    commandButtons.setWidget(1, 0, newRectController.getButton());
    commandButtons.setWidget(1, 1, newEllipseController.getButton());
    commandButtons.setWidget(2, 0, newPolylineController.getButton());
    commandButtons.setWidget(2, 1, editPolylineController.getButton());
    commandButtons.setWidget(3, 0, newPathController.getButton());
    commandButtons.setWidget(3, 1, editPathController.getButton());
    commandButtons.setWidget(4, 0, undoController.getUndoButton());
    commandButtons.setWidget(4, 1, redoController.getRedoButton());

    final VerticalPanel toolBar = new VerticalPanel();
    toolBar.add(commandButtons);

    HorizontalPanel row1 = new HorizontalPanel();
    row1.add(toolBar);

    HorizontalPanel row2 = new HorizontalPanel();
    row2.add(_lineStyleController.getWidget());
    row2.add(_lineWidthController.getWidget());
    row2.add(_fillStyleController.getWidget());

    VerticalPanel col1 = new VerticalPanel();
    col1.add(row2);
    col1.add(_view);
    row1.add(col1);
    //debugArea.setCharacterWidth(80);
    //debugArea.setVisibleLines(20);
    //row1.add(debugArea);

    VerticalPanel col2 = new VerticalPanel();
    MenuBar editMenu = new MenuBar(true);
    editMenu.addItem(_constants.resetViewCommand(), new Command() {
        public void execute() {
            _view.reset();
        }
    });
    editMenu.addItem(undoController.getUndoMenuItem());
    editMenu.addItem(redoController.getRedoMenuItem());
    editMenu.addItem(cutController.getCutMenuItem());
    editMenu.addItem(copyController.getCopyMenuItem());
    editMenu.addItem(pasteController.getPasteMenuItem());
    editMenu.addItem(exportController.getExportSVG11Item());
    editMenu.addItem(exportController.getExportSVG12Item());
    MenuBar modifyMenu = new MenuBar(true);
    modifyMenu.addItem(groupController.getGroupMenuItem());
    modifyMenu.addItem(ungroupController.getUngroupMenuItem());
    modifyMenu.addItem(orderingController.newMenuItem(_view, ChangeOrderingCommand.BRING_TO_FRONT));
    modifyMenu.addItem(orderingController.newMenuItem(_view, ChangeOrderingCommand.SEND_TO_BACK));
    modifyMenu.addItem(orderingController.newMenuItem(_view, ChangeOrderingCommand.BRING_FORWARD));
    modifyMenu.addItem(orderingController.newMenuItem(_view, ChangeOrderingCommand.SEND_BACKWARD));
    modifyMenu.addItem(resizeController.getResizeMenuItem(_view));
    MenuBar helpMenu = new MenuBar(true);
    helpMenu.addItem(_constants.helpCommand(), new Command() {
        public void execute() {
        }
    });
    final AboutPanel panel = new AboutPanel();
    helpMenu.addItem(_constants.aboutCommand(), new Command() {
        public void execute() {
            panel.show();
        }
    });
    MenuBar menuBar = new MenuBar();
    menuBar.addItem(_constants.editMenu(), editMenu);
    menuBar.addItem(_constants.modifyMenu(), modifyMenu);
    menuBar.addItem(_constants.helpMenu(), helpMenu);
    col2.add(menuBar);
    col2.add(row1);
    col2.add(form);

    //EventPanel eventPanel = new EventPanel(_view);
    //eventPanel.add(col1);
    //RootPanel.get().add(eventPanel);
    RootPanel.get().add(col2);
    repController.open();
    RootPanel rootPanel = RootPanel.get();
    rootPanel.sinkEvents(0xFFFFFFFF);
    DOM.setEventListener(RootPanel.getBodyElement(), this);
    _view.render();
}

From source file:therandomhomepage.mainclient.FeedbackPanel.java

License:Apache License

public FeedbackPanel() {

    NamedFrame mailFrame = new NamedFrame("mailFrame");
    mailFrame.setVisible(false);/* w w w.  jav a 2s  .c om*/

    final FormPanel form = new FormPanel(mailFrame);
    form.setAction("/php/sendMail.php");

    form.setMethod(FormPanel.METHOD_GET);
    form.setEncoding(FormPanel.ENCODING_URLENCODED);

    VerticalPanel panel = new VerticalPanel();
    panel.setHorizontalAlignment(VerticalPanel.ALIGN_CENTER);
    panel.setVerticalAlignment(VerticalPanel.ALIGN_TOP);

    panel.add(form);

    panel.add(mailFrame);

    initWidget(panel);

    table = new FlexTable();
    table.addStyleName("divBlock");
    table.addStyleName("feedbackForm");

    table.setWidget(1, 0, new HTML("<h3>Feedback</h3>"));

    table.setWidget(2, 0, new Label("Name: "));
    table.getFlexCellFormatter().setVerticalAlignment(1, 0, HasVerticalAlignment.ALIGN_TOP);

    TextBox txtName = new TextBox();
    txtName.setName("txtName");
    table.setWidget(2, 1, txtName);

    table.setWidget(3, 0, new Label("Email: "));
    table.getFlexCellFormatter().setVerticalAlignment(2, 0, HasVerticalAlignment.ALIGN_TOP);

    txtEmail = new TextBox();
    txtEmail.setName("txtEmail");
    table.setWidget(3, 1, txtEmail);

    table.setWidget(4, 0, new Label("Subject: "));
    table.getFlexCellFormatter().setVerticalAlignment(3, 0, HasVerticalAlignment.ALIGN_TOP);

    ListBox subject = new ListBox();
    subject.setName("selSubject");
    subject.addItem("General", "General");
    subject.addItem("Comments", "Comments");
    subject.addItem("Suggestion", "Suggestion");
    subject.addItem("Bug report", "Bug report");
    subject.addItem("Others", "Others");

    table.setWidget(4, 1, subject);

    table.setWidget(5, 0, new Label("Message: "));
    table.getFlexCellFormatter().setVerticalAlignment(4, 0, HasVerticalAlignment.ALIGN_TOP);

    txtMessage = new TextArea();
    txtMessage.setName("txtMessage");
    txtMessage.setCharacterWidth(50);
    txtMessage.setVisibleLines(8);
    table.setWidget(5, 1, txtMessage);

    btnSubmit = new Button("Submit", new ClickListener() {
        public void onClick(Widget sender) {
            form.submit();
        }
    });

    table.setWidget(6, 0, btnSubmit);

    form.add(table);

    form.addFormHandler(new FormHandler() {
        public void onSubmitComplete(FormSubmitCompleteEvent event) {
            //ignore this
        }

        public void onSubmit(FormSubmitEvent event) {
            if (txtEmail.getText().trim().length() == 0) {
                Window.alert("Please provide your email address !");
                event.setCancelled(true);
                txtEmail.setFocus(true);
            } else if (txtMessage.getText().trim().length() == 0) {
                Window.alert("Please provide feedback !");
                event.setCancelled(true);
                txtMessage.setFocus(true);
            } else {
                HTML thanksHTML = new HTML(
                        "<b class=\"thanks\">We really appreciate your feedback. Thanks a lot !</b>");
                table.setWidget(0, 1, thanksHTML);
                btnSubmit.setEnabled(false);
            }
        }
    });
}