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.ext.style.ui;
022
023 import java.awt.event.KeyEvent;
024
025 import javax.swing.JMenu;
026
027 import csheets.ui.ctrl.UIController;
028
029 /**
030 * A menu that displays style-related actions.
031 * @author Einar Pehrson
032 */
033 @SuppressWarnings("serial")
034 public class StyleMenu extends JMenu {
035
036 /**
037 * Creates a new style menu.
038 * @param uiController the user interface controller
039 */
040 public StyleMenu(UIController uiController) {
041 super("Style");
042 setMnemonic(KeyEvent.VK_S);
043
044 // Adds font actions
045 add(new FontAction(uiController));
046
047 // Adds font style actions
048 add(new BoldAction(uiController));
049 add(new ItalicAction(uiController));
050 add(new UnderlineAction(uiController));
051 addSeparator();
052
053 // Adds color and border actions
054 add(new FormatAction(uiController));
055 add(new BorderAction(uiController));
056 add(new ForegroundAction(uiController));
057 add(new BackgroundAction(uiController));
058 addSeparator();
059
060 // Adds alignment actions
061 add(new AlignLeftAction(uiController));
062 add(new AlignCenterAction(uiController));
063 add(new AlignRightAction(uiController));
064 addSeparator();
065 add(new AlignTopAction(uiController));
066 add(new AlignMiddleAction(uiController));
067 add(new AlignBottomAction(uiController));
068 }
069 }