Package org.jrebirth.af.showcase.undoredo.ui

Source Code of org.jrebirth.af.showcase.undoredo.ui.UndoView

/**
* Get more info at : www.jrebirth.org .
* Copyright JRebirth.org © 2011-2013
* Contact : sebastien.bordes@jrebirth.org
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
*     http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.jrebirth.af.showcase.undoredo.ui;

import javafx.scene.control.Button;
import javafx.scene.layout.BorderPane;
import javafx.scene.layout.FlowPaneBuilder;
import javafx.scene.layout.Pane;
import javafx.scene.layout.PaneBuilder;

import org.jrebirth.af.core.exception.CoreException;
import org.jrebirth.af.core.ui.AbstractView;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

/**
* The class <strong>UndoView</strong>. hold a graphical editor and a toolbar with undo/redo buttons.
*
* @author Sébastien Bordes
*/
public final class UndoView extends AbstractView<UndoModel, BorderPane, UndoController> {

    /** The class logger. */
    private static final Logger LOGGER = LoggerFactory.getLogger(UndoView.class);

    /** The undo button. */
    private Button undoButton;

    /** The redo button. */
    private Button redoButton;

    /** The add circle button. */
    private Button addCircleButton;

    /** The add square button. */
    private Button addSquareButton;

    /** The add rectangle button. */
    private Button addRectangleButton;

    /** The editor. */
    private Pane editor;

    /**
     * Default Constructor.
     *
     * @param model the controls view model
     *
     * @throws CoreException if build fails
     */
    public UndoView(final UndoModel model) throws CoreException {
        super(model);
    }

    /**
     * {@inheritDoc}
     */
    @Override
    protected void initView() {

        this.undoButton = new Button("Undo");
        this.redoButton = new Button("Redo");

        this.addCircleButton = new Button("Add Circle");
        this.addSquareButton = new Button("Add Square");
        this.addRectangleButton = new Button("Add Rectangle");

        getRootNode().setTop(FlowPaneBuilder.create()
                .children(this.undoButton, this.redoButton, this.addCircleButton, this.addSquareButton, this.addRectangleButton)
                .build());

        this.editor = PaneBuilder.create().style("-fx-background-color:beige").build();

        getRootNode().setCenter(this.editor);

    }

    /**
     * {@inheritDoc}
     */
    @Override
    public void start() {
        LOGGER.debug("Start the Sample View");
        // Custom code to process when the view is displayed the first time
    }

    /**
     * {@inheritDoc}
     */
    @Override
    public void reload() {
        LOGGER.debug("Reload the Sample View");
        // Custom code to process when the view is displayed the 1+n time
    }

    /**
     * {@inheritDoc}
     */
    @Override
    public void hide() {
        LOGGER.debug("Hide the Sample View");
        // Custom code to process when the view is hidden
    }

    /**
     * Gets the undo button.
     *
     * @return Returns the undoButton.
     */
    Button getUndoButton() {
        return this.undoButton;
    }

    /**
     * Gets the redo button.
     *
     * @return Returns the redoButton.
     */
    Button getRedoButton() {
        return this.redoButton;
    }

    /**
     * Gets the editor.
     *
     * @return Returns the editor.
     */
    Pane getEditor() {
        return this.editor;
    }

    /**
     * Gets the adds the circle button.
     *
     * @return Returns the addCircleButton.
     */
    Button getAddCircleButton() {
        return this.addCircleButton;
    }

    /**
     * Gets the adds the square button.
     *
     * @return Returns the addSquareButton.
     */
    Button getAddSquareButton() {
        return this.addSquareButton;
    }

    /**
     * Gets the adds the rectangle button.
     *
     * @return Returns the addRectangleButton.
     */
    Button getAddRectangleButton() {
        return this.addRectangleButton;
    }

}
TOP

Related Classes of org.jrebirth.af.showcase.undoredo.ui.UndoView

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.