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

📄 reminderviewpanel.java

📁 发泄网! 发泄网! 发泄网! 发泄网! 发泄网! 发泄网! 发泄网! 发泄网!
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
	/* CRMS, customer relationship management system	Copyright (C) 2003  Service To Youth Council	This program is free software; you can redistribute it and/or modify	it under the terms of the GNU General Public License as published by	the Free Software Foundation; either version 2 of the License, or	(at your option) any later version.	This program is distributed in the hope that it will be useful,	but WITHOUT ANY WARRANTY; without even the implied warranty of	MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the	GNU General Public License for more details.	You should have received a copy of the GNU General Public License	along with this program; if not, write to the Free Software	Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA	For further information contact the SYC ICT department on GPL@syc.net.au	98 Kermode Street	North Adelaide	South Australia	SA 5006 	+61 (0)8 8367 0755	*//* * ReminderViewPanel.java * * Created on 27 March 2003, 23:48 */package crms.applet;import javax.swing.*;import javax.swing.event.*;import javax.swing.table.*;import javax.swing.border.*;import java.awt.*;import java.awt.event.*;import java.util.*;import java.text.*;import java.applet.*;import java.net.*;import crms.util.*;import crms.ui.*;import crms.vo.*;import crms.module.ReminderModule;import org.w3c.dom.*;/** * * @author  dmurphy */public class ReminderViewPanel extends CRMSPanel implements CallbackDestination {	JPanel titlePanel = new JPanel();	JPanel bodyPanel = new JPanel();	JLabel titleLabel = new JLabel();	JLabel lblMessage = new JLabel("Loading reminder details...");		ReminderTableModel reminderModel = new ReminderTableModel();	JTable reminderTable = new JTable(reminderModel) {		public TableCellRenderer getCellRenderer(int row, int column) {						final Reminder r = reminderModel.getReminder(row);						return new DefaultTableCellRenderer() {				final Reminder theReminder = r;				public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) {					// this is annoying if there are lots of reminders					// System.out.println("Creating JLabel as renderer...");					Component parent = super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column);					if (isSelected) {						//parent.setForeground(Color.WHITE);					} else {						int style = 0;												// read status						if (!theReminder.getOwnerHasRead()) {							style += Font.BOLD;						} 						// owner						if (theReminder.getCreator().compareTo(ServerFactory.getInstance().getUser()) == 0) {							style += Font.ITALIC;						}						if (style > 0) parent.setFont(parent.getFont().deriveFont(style));					   						// the reminder is due within 2 days						/*if (theReminder.getDaysTillDue() <= 2 && theReminder.getDaysTillDue() > 0) {							parent.setFont(parent.getFont().deriveFont(Font.BOLD));   						} */						float t = -theReminder.getDaysTillDue();						// t <= -5 (5 days before it is due)						if (t <= -5.0f) {							parent.setForeground(Color.BLACK);						} else if ((int)t <= 1.0f) {							// priorities override the colour							if (theReminder.getReminderRate() >= 8) {								parent.setForeground(Color.RED);							} else {								parent.setForeground(new Color(0x0f7500)); // dark green							}						} else {							parent.setForeground(Color.DARK_GRAY);						}						/*						// today						if (theReminder.getDaysTillDue() == 0) {							parent.setForeground(Color.BLUE);						}						// over due						if (theReminder.getDaysTillDue() < 0) {							parent.setForeground(Color.red);						}						// way over due						if (theReminder.getDaysTillDue() < -7) {							parent.setBackground(Color.red);							parent.setForeground(Color.white);													} */						/*if (!theReminder.getOwner().equals(PanelManager.getInstance().getAuthenticatedUser()) &&							theReminder.isApproved() != true ) {							parent.setBackground(Color.YELLOW);						}*/					}					return parent;				}			};						// else...//			return super.getCellRenderer(row, column);		}};		JScrollPane scrollPane = new JScrollPane(reminderTable);		static SimpleDateFormat df = new SimpleDateFormat("dd/MM/yyyy");	static SimpleDateFormat tf = new SimpleDateFormat("h:mm a");		//JButton buttonShow = new JButton("Show More >>");		boolean restrictReminderCount = false;		/** Creates a new instance of ReminderViewPanel */	public ReminderViewPanel() {	}		public ReminderViewPanel(boolean restrictCount) {		this.restrictReminderCount = restrictCount;	}	public void callback(Object source, int mode, Object data) {		if (source instanceof ReminderEditWindow) {			if ((mode == ReminderEditWindow.REMINDER_UPDATE) || (mode == ReminderEditWindow.REMINDER_DELETE)) {				boolean found = false;				java.util.List reminders = reminderModel.reminders;				ListIterator i = reminders.listIterator();				int reminderID = -1;				if (data instanceof Integer) { reminderID = ((Integer)data).intValue();				} else { reminderID = ((Reminder)data).getReminderID(); }								while (i.hasNext()) {					Reminder r = (Reminder)i.next();					if (reminderID == r.getReminderID()) {						if (mode == ReminderEditWindow.REMINDER_UPDATE) {							i.set(data);						} else if (mode == ReminderEditWindow.REMINDER_DELETE) {							i.remove();						}						found = true;						break;					}				}				if (found == false) {					reminders.add(0, data);				}				updateList();			}		} // end if ReminderEditWindow	}		public void init() {		final CallbackDestination thisobj = this;				setLayout(new BorderLayout());		setBackground(Color.WHITE);				titleLabel.setFont(new java.awt.Font("Serif", 1, 18));		titleLabel.setText("Reminders");		titleLabel.setBackground(Color.WHITE);		titleLabel.setHorizontalAlignment(JLabel.CENTER);				titlePanel.setLayout(new BorderLayout());		titlePanel.setBackground(Color.WHITE);		titlePanel.add(titleLabel, BorderLayout.CENTER);				add(titlePanel, BorderLayout.NORTH);//		if (restrictReminderCount) {//			titlePanel.add(buttonShow, BorderLayout.EAST);//		}				scrollPane.getViewport().setBackground(Color.WHITE);	   		lblMessage.setForeground(Color.GRAY);		lblMessage.setForeground(Color.GRAY);		lblMessage.setVerticalAlignment(JLabel.TOP);		lblMessage.setHorizontalAlignment(JLabel.CENTER);		java.util.Timer timer = new java.util.Timer();		timer.scheduleAtFixedRate(new TimerTask() {			public void run() {				refreshData();			}		}, 100, 1000 * 60 * 15);				bodyPanel.setLayout(new BorderLayout());		bodyPanel.setBackground(Color.WHITE);		bodyPanel.setBorder(new EmptyBorder(0,10,0,10));				//	bodyPanel.add(scrollPane, BorderLayout.CENTER);		bodyPanel.add(lblMessage, BorderLayout.CENTER);						bodyPanel.setBorder(new EmptyBorder(0,10,0,10));		scrollPane.setMinimumSize(new Dimension(0,0));				reminderTable.addMouseListener(new MouseAdapter() {		   public void mouseClicked(MouseEvent ev) {			   if (ev.getButton() == MouseEvent.BUTTON1 &&					ev.getClickCount() == 2) {					processSelectedReminder();			   }		   }		});		// prepare the button panel		JPanel buttonPanel = new JPanel(new FlowLayout(FlowLayout.RIGHT));		buttonPanel.setBackground(Color.WHITE);			if (restrictReminderCount == false) {			JButton buttonAddReminder = new JButton("Add");			buttonAddReminder.addActionListener( new ActionListener() {				public void actionPerformed(ActionEvent ev) {					//ReminderEditPanel panel = new ReminderEditPanel();					//PanelManager.getInstance().activatePanel(panel);					ReminderEditWindow window = new ReminderEditWindow();					window.setDestination(thisobj);					window.display();				}			});			JButton editButton = new JButton("Edit");			editButton.addActionListener( new ActionListener() {				public void actionPerformed(ActionEvent ev) {					processSelectedReminder();				}			} );			JButton exportButton = new JButton("Export");			exportButton.addActionListener( new ActionListener() {				public void actionPerformed(ActionEvent ev) {					processExport();				}			} );			/*JButton backButton = new JButton("Back");			backButton.addActionListener( new ActionListener() {				public void actionPerformed(ActionEvent ev) {					PanelManager.getInstance().activatePanel(new HomePanel());				}			});*/

⌨️ 快捷键说明

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