001    /*
002     * Copyright (c) 2005 Einar Pehrson <einar@pehrson.nu>.
003     *
004     * This file is part of
005     * CleanSheets - a spreadsheet application for the Java platform.
006     *
007     * CleanSheets is free software; you can redistribute it and/or modify
008     * it under the terms of the GNU General Public License as published by
009     * the Free Software Foundation; either version 2 of the License, or
010     * (at your option) any later version.
011     *
012     * CleanSheets is distributed in the hope that it will be useful,
013     * but WITHOUT ANY WARRANTY; without even the implied warranty of
014     * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
015     * GNU General Public License for more details.
016     *
017     * You should have received a copy of the GNU General Public License
018     * along with CleanSheets; if not, write to the Free Software
019     * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
020     */
021    package csheets.ui;
022    
023    import java.awt.Insets;
024    
025    import javax.swing.JToolBar;
026    
027    import csheets.ui.ctrl.ActionManager;
028    
029    /**
030     * The tool bar that displays standard file- and edit-related actions.
031     * @author Einar Pehrson
032     */
033    @SuppressWarnings("serial")
034    public class StandardToolBar extends JToolBar {
035    
036            /**
037             * Creates a new standard tool bar.
038             * @param actionManager a factory for actions
039             */
040            public StandardToolBar(ActionManager actionManager) {
041                    super("Standard");
042    
043                    // Creates common insets
044                    Insets insets = new Insets(2, 2, 2, 2);
045    
046                    // Adds file actions
047                    add(actionManager.getAction("new")).setMargin(insets);
048                    add(actionManager.getAction("open")).setMargin(insets);
049                    add(actionManager.getAction("save")).setMargin(insets);
050                    addSeparator();
051    
052                    // Adds edit actions
053                    add(actionManager.getAction("undo")).setMargin(insets);
054                    add(actionManager.getAction("redo")).setMargin(insets);
055                    addSeparator();
056                    add(actionManager.getAction("copy")).setMargin(insets);
057                    add(actionManager.getAction("cut")).setMargin(insets);
058                    add(actionManager.getAction("paste")).setMargin(insets);
059            }
060    }