📄 projecteditor.java
字号:
/** * Copyright 2004 Carlos Silva A. * * 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 jgantt.view.dialogs;import java.awt.GridBagConstraints;import java.awt.GridBagLayout;import java.awt.Window;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.JComponent;import javax.swing.JLabel;import javax.swing.JPanel;import javax.swing.JTextField;import jgantt.Messages;import jgantt.view.adapters.ProjectViewModel;import jgantt.view.adapters.ProjectViewModelChange;import jgantt.view.adapters.ProjectViewModelListener;import com.csa.lib.swing.DateField;/** * ProjectEditor, edita las caracteristicas de un proyecto: * <ul> * <li> fechad de inicio * </ul> * * <p>$Date: 2005/07/14 06:16:04 $</p> * @version $Revision: 1.14 $ * @author {user} */public class ProjectEditor extends JPanel implements ActionListener, ProjectViewModelListener { private static final long serialVersionUID = 3618699686526335283L; DateField startDate; JTextField projectName; JTextField hoursPerDay; ProjectViewModel pvModel; ProjectEditor projectEditor = this; protected void addComp(JComponent cmp, GridBagLayout gridbag, GridBagConstraints c) { gridbag.setConstraints(cmp, c); add(cmp); } /** * Constructor for TaskEditor */ public ProjectEditor(Window parent, ProjectViewModel projectViewModel) { super(); startDate = new DateField(Messages.getString("ProjectEditor.date.format")); projectName = new JTextField(30); hoursPerDay= new JTextField(5); GridBagLayout gridbag = new GridBagLayout(); GridBagConstraints c = new GridBagConstraints(); setLayout(gridbag); c.fill = GridBagConstraints.BOTH; c.weightx = 1.0; c.gridwidth = 1; addComp(new JLabel(Messages.getString("ProjectEditor.projectName.label"), JLabel.LEFT), gridbag,c); //$NON-NLS-1$ c.gridwidth = GridBagConstraints.REMAINDER; //end row addComp(projectName, gridbag,c); c.weightx = 0.0; c.gridwidth = 1; addComp(new JLabel(Messages.getString("ProjectEditor.startDate.label"), JLabel.LEFT), gridbag,c); //$NON-NLS-1$ c.gridwidth = GridBagConstraints.REMAINDER; //end row addComp(startDate, gridbag,c); c.weightx = 0.0; c.gridwidth = 1; addComp(new JLabel(Messages.getString("ProjectEditor.hours.label"), JLabel.LEFT), gridbag,c); //$NON-NLS-1$ c.gridwidth = GridBagConstraints.REMAINDER; //end row addComp(hoursPerDay, gridbag,c); startDate.addActionListener(this); projectName.addActionListener(this); hoursPerDay.addActionListener(this); assignViewModel(projectViewModel); projectViewModel.addListener(this); if (parent != null) new RemoveObservers(parent, pvModel, this, null); } /** * cambios en los controles. */ public void actionPerformed(ActionEvent event) { //System.out.println("actionPerformed "+event.getSource()); Object src = event.getSource(); if (src == startDate) { pvModel.getProject().setStartDate(startDate.getDate()); } else if (src == projectName) { pvModel.getProject().setName(projectName.getText()); } else if (src == hoursPerDay) { String s = hoursPerDay.getText(); int h=Integer.parseInt(s.substring(0,s.indexOf(":"))); int m=Integer.parseInt(s.substring(s.indexOf(":")+1)); pvModel.getProject().getDateOrganizer().setWorktime(h,m); } } /** * Asigna a la ventana los datos del viewModel indicado */ public void assignViewModel (ProjectViewModel pvm) { pvModel = pvm; startDate.setDate(pvModel.getProject().getStartDate()); projectName.setText(pvModel.getProject().getName()); int m = pvModel.getProject().getDateOrganizer().getWorktime(); String s =(m/60)+":"+(m%60); hoursPerDay.setText(s); } /** * Eventos del modelo * @see jgantt.view.adapters.ProjectViewModelListener#projectChanged(jgantt.view.adapters.ProjectViewModelChange) */ public void viewModelChanged(ProjectViewModelChange c) { if (c.getId()==ProjectViewModelChange.NEW_PROJECT_LOADED) assignViewModel(c.getProjectViewModel()); }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -