⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 optionsdialogaction.java

📁 It is all about project scheduling. GanttProject is a tool for creating a project schedule by means
💻 JAVA
字号:
/* * Created on 02.04.2005 */package net.sourceforge.ganttproject.chart;import java.awt.BorderLayout;import java.awt.Component;import java.awt.event.ActionEvent;import javax.swing.AbstractAction;import javax.swing.Action;import javax.swing.BorderFactory;import javax.swing.ImageIcon;import javax.swing.JComponent;import javax.swing.JPanel;import net.sourceforge.ganttproject.action.CancelAction;import net.sourceforge.ganttproject.action.GPAction;import net.sourceforge.ganttproject.action.OkAction;import net.sourceforge.ganttproject.gui.UIFacade;import net.sourceforge.ganttproject.gui.options.OptionsPageBuilder;import net.sourceforge.ganttproject.gui.options.model.GPOptionGroup;import net.sourceforge.ganttproject.language.GanttLanguage;/** * @author bard */public class OptionsDialogAction extends GPAction {    private UIFacade myUIFacade;    private GPOptionGroup[] myGroups;    public OptionsDialogAction(GPOptionGroup[] groups, UIFacade uifacade) {        super(GanttLanguage.getInstance().getText("chartOptions"));        myGroups = groups;        myUIFacade = uifacade;        this.putValue(Action.SMALL_ICON, new ImageIcon(getClass().getResource(                "/icons/chartOptions_16.gif")));    }    public void actionPerformed(ActionEvent e) {        for (int i = 0; i < myGroups.length; i++) {            myGroups[i].lock();        }        final OkAction okAction = new OkAction() {            public void actionPerformed(ActionEvent e) {                commit();            }        };        final CancelAction cancelAction = new CancelAction() {            public void actionPerformed(ActionEvent e) {                rollback();            }        };        myUIFacade.showDialog(createDialogComponent(), new Action[] { okAction,                cancelAction });    }    private void commit() {        for (int i = 0; i < myGroups.length; i++) {            myGroups[i].commit();        }    }    private void rollback() {        for (int i = 0; i < myGroups.length; i++) {            myGroups[i].rollback();        }    }    protected Component createPreviewComponent() {        return null;    }    private Component createDialogComponent() {        OptionsPageBuilder builder = new OptionsPageBuilder();        JPanel combinedPanel = new JPanel(new BorderLayout());        JComponent comp = builder.buildPage(myGroups, "ganttChart");        combinedPanel.add(comp, BorderLayout.CENTER);        combinedPanel.setBorder(BorderFactory.createEmptyBorder(0,0,3,0));        Component previewComponent = createPreviewComponent();        if (previewComponent!=null) {            JPanel previewPanel = new JPanel(new BorderLayout());            previewPanel.setBorder(BorderFactory.createTitledBorder(BorderFactory                    .createEtchedBorder(), GanttLanguage.getInstance().getText("previewBar")));            previewPanel.add(previewComponent, BorderLayout.CENTER);            combinedPanel.add(previewPanel, BorderLayout.SOUTH);        }        return combinedPanel;    }	protected String getIconFilePrefix() {		return null;	}	protected String getLocalizedName() {		return getI18n("chartOptions");	}		}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -