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

📄 client.java

📁 create the email in the server
💻 JAVA
📖 第 1 页 / 共 3 页
字号:
	}

	class RefreshAction extends AbstractAction {
		RefreshAction() {
			super("Refresh view");
		}

		public void actionPerformed(ActionEvent arg0) {
			repaint();

			emailPanel.doLayout();
		}

	}

	class AccountsAction extends AbstractAction {
		AccountsAction() {
			super("Refresh view");
		}

		public void actionPerformed(ActionEvent arg0) {
			generalPanel = new GeneralPanel(GeneralPanel.Images.ACCOUNT);
			account = new AccountsPanel(accounts,clientTopass);
			generalPanel.add(account, BorderLayout.CENTER);
			JDialog dialog = new JDialog(client);
			//dialog.addComponentListener(new DialogListener(account));
			dialog.setLayout(new BorderLayout());
			dialog.add(generalPanel, BorderLayout.CENTER);
			dialog.setSize(628, 508);
			account.setSize(dialog.getSize().width,dialog.getSize().height);
			dialog.setVisible(true);
			dialog.setTitle("ICAT Accounts ");
		}

	}
	class OpenAddressBookAction extends AbstractAction {
		OpenAddressBookAction() {
			super("Open AddressBook");
		}

		public void actionPerformed(ActionEvent arg0) {
			generalPanel = new GeneralPanel(GeneralPanel.Images.ADDRESSBOOK);
			contactPanel = new ContactPanel();
			generalPanel.add(contactPanel, BorderLayout.CENTER);
			JDialog dialog = new JDialog(client);
			dialog.addComponentListener(new DialogListener());
			dialog.setLayout(new BorderLayout());
			dialog.add(generalPanel, BorderLayout.CENTER);
			dialog.setSize(600, 550);
			contactPanel.setSize(dialog.getSize().width,dialog.getSize().height);
			dialog.setTitle("ICAT AddressBook ");
			dialog.setVisible(true);
		}

	}

	class TreeListener implements TreeSelectionListener
	{
		Client c;
		TreeListener(Client c)
		{
			this.c = c;
		}

		public void valueChanged(TreeSelectionEvent e) {
			Node s = ((Node)e.getNewLeadSelectionPath().getLastPathComponent());
			if (s.toString().equals("Inbox"))
				setCurrentList(box.getMail());
				//setRightComponent(panel = new EmailPanel(box.getMail(),c,accounts));
			else if (s.toString().equals("Outbox"))
				setCurrentList(box.getOutbox());
				//setRightComponent(panel = new EmailPanel(box.getOutbox(),c, accounts));
			else if (s.toString().equals("Sent mail"))
				setCurrentList(box.getSentMail());
				//setRightComponent(panel = new EmailPanel(box.getSentMail(),c,accounts));
			else if (s.toString().equals("Junk mail"))
				setCurrentList(box.getJunkMail());
				//setRightComponent(panel = new EmailPanel(box.getJunkMail(),c ,accounts));
			else if (s.toString().equals("Trash"))
				setCurrentList(box.getTrash());
			else if (s instanceof FolderNode)
			{
				FolderNode f = (FolderNode)s;
				//setRightComponent(panel = new EmailPanel(f.getEmail(),c ,accounts));
				setCurrentList(f.getEmail());
			}

			/* Address book opened */
			else if (s.toString().equals("Addressbook"))
			{
				JPanel p = new JPanel();
				p.setLayout(new BorderLayout());
				p.setSize(600,550);
				contactPanel = new ContactPanel();
				contactPanel.setSize(p.getWidth(),p.getHeight());
				p.add(contactPanel,BorderLayout.CENTER);
				setRightComponent(contactPanel);
			}
			/* Calendar opened */
			else if (s.toString().equals("Calender"))
			{
				CalFrame f = new CalFrame("Calendar");
				f.pack(); //the Window will be validated after the preferredSize is calculated
				f.run();
				//contactPanel = new ContactPanel();
				//contactPanel.setSize(p.getWidth(),p.getHeight());
				//p.add(contactPanel,BorderLayout.CENTER);
				//setRightComponent(contactPanel);
			}
			/* Accounts opened */
			else if (s.toString().equals("Accounts"))
			{
				setRightComponent(new AccountsPanel(accounts,client));
			}
			else
			{
				JPanel panel = new JPanel();
				panel.setSize(500,500);
				//setRightComponent(panel);
				setCurrentList(currentList);
			}
		}
	}

	class DeleteEmailAction extends AbstractAction
	{

		public void actionPerformed(ActionEvent arg0)
		{
			Email e = (Email)(panel.getList().getSelectedValue());
			int c = JOptionPane.showConfirmDialog(null,"Are you sure you wish to delete the email: "+email.getSubject(),"Warning",JOptionPane.YES_NO_OPTION);
			if (c == JOptionPane.YES_OPTION)
			if (e != null)
			{
				currentList.remove(e);
				box.addTrash(e);
			}
			setCurrentList(currentList);
			//setRightComponent(panel = new EmailPanel(box.getMail(),client,accounts));
		}

	}

	//===================================================
	// action handler for Download Rulemanager
	//====================================================
	class DownloadRulesAction extends AbstractAction {
		DownloadRulesAction() {
			super("Open Rules gui");
		}

		public void actionPerformed(ActionEvent arg0) {
			generalPanel = new GeneralPanel(GeneralPanel.Images.DOWNLOADRULES);
			rulegui = new DownloadRuleGui(theRules);
			generalPanel.add(rulegui, BorderLayout.CENTER);
			JDialog dialog = new JDialog(client);
			dialog.addComponentListener(new DialogListener());
			dialog.setLayout(new BorderLayout());
			dialog.add(generalPanel, BorderLayout.CENTER);
			dialog.setSize(628, 540);
			rulegui.setSize(dialog.getSize().width,dialog.getSize().height);
			dialog.setTitle("ICAT Download Rules ");

			dialog.setVisible(true);
			//theRules = rulegui.getNewVector();
		}

	}

	class LanguageFilterAction extends AbstractAction {
		LanguageFilterAction() {
			super("Open LanguageFilter gui");
		}

		public void actionPerformed(ActionEvent arg0)
		{
/*			Vector<String> words = new Vector<String>();
			words.addElement("donder");
			words.addElement("moer");

			Vector<Email> emails = getTestEmails();*/
			generalPanel = new GeneralPanel(GeneralPanel.Images.LANGUAGEFILTER);
			FilterGui languageFiltergui = new FilterGui(languageFilter);
			generalPanel.add(languageFiltergui, BorderLayout.CENTER);
			JDialog dialog = new JDialog(client);
			dialog.addComponentListener(new DialogListener());
			dialog.setLayout(new BorderLayout());
			dialog.add(generalPanel, BorderLayout.CENTER);
			dialog.setSize(540, 555);
			languageFiltergui.setSize(dialog.getSize().width,dialog.getSize().height);
			dialog.setTitle("ICAT Language Filter");

			dialog.setVisible(true);
			//theRules = rulegui.getNewVector();
		}

	}
	//========================================
	// Creates general panel with junkMailView panel
	//==========================================

	class JunkMailRulesAction extends AbstractAction {
		JunkMailRulesAction() {
			super("Open JunkMail Rules gui");
		}

		public void actionPerformed(ActionEvent arg0) {
			generalPanel = new GeneralPanel(GeneralPanel.Images.JUNKMAIL);
			junkmail = new ViewJunkRules(junkMailManager.getRules(),clientTopass);
			generalPanel.add(junkmail, BorderLayout.CENTER);
			JDialog dialog = new JDialog(client);
			dialog.addComponentListener(new DialogListener());
			dialog.setLayout(new BorderLayout());
			dialog.add(generalPanel, BorderLayout.CENTER);
			dialog.setSize(628, 540);
			junkmail.setSize(dialog.getSize().width,dialog.getSize().height);
			dialog.setTitle("ICAT Download Rules ");

			dialog.setVisible(true);

//======== To get new vector junkmailvector = junkmail.getNewVector();
		}

	}

	class FolderRulesAction extends AbstractAction {
		FolderRulesAction() {
			super("Open Folder Mail Rules gui");
		}

		public void actionPerformed(ActionEvent arg0) {
			generalPanel = new GeneralPanel(GeneralPanel.Images.FOLDERMAILRULES);
			folderRuleMainPanel = new ViewFolderRuleMainPanel(folderManager.getRules(),clientTopass);
			generalPanel.add(folderRuleMainPanel , BorderLayout.CENTER);
			JDialog dialog = new JDialog(client);
			dialog.addComponentListener(new DialogListener());
			dialog.setLayout(new BorderLayout());
			dialog.add(generalPanel, BorderLayout.CENTER);
			dialog.setSize(628, 540);
			folderRuleMainPanel.setSize(dialog.getSize().width,dialog.getSize().height);
			dialog.setTitle("ICAT Download Rules ");
			dialog.setVisible(true);

//======== To get new vector junkmailvector = junkmail.getNewVector();
		}

	}
	class DailerAction extends AbstractAction {
		DailerAction() {
			super("open dailer option window");
		}

		public void actionPerformed(ActionEvent arg0) {
			JDialog dialog = new JDialog(client);
			generalPanel = new GeneralPanel(GeneralPanel.Images.DAILERSETTINGS);
			dailer_ = new DailerMainGui(client, dialog, dialer);
			generalPanel.add(dailer_ , BorderLayout.CENTER);
			dialog.addComponentListener(new DialogListener());
			dialog.setLayout(new BorderLayout());
			dialog.add(generalPanel, BorderLayout.CENTER);
			dialog.setSize(470, 310);
			dailer_.setSize(dialog.getSize().width,dialog.getSize().height);
			dialog.setTitle("ICAT Analogue Dialer Configuration ");
			dialog.setVisible(true);


		}

	}


	class SendEmailExchange implements SendActionListener
	{
		public void send(Email e) {
			if (accounts.getDefaultAccount() != null)
				e.setSender(accounts.getDefaultAccount().getEmailAddress());
			box.addOutboxMail(e);
		}

	}

	class EmailListener implements ClientEmailDownloadListener
	{

		public void addEmail(Email e) {
			if (junkMailManager.accept(e))
				box.addJunkMail(e);
			else
			{
				if (folderManager.accept(e))
				{
					System.out.println("Rule accepted "+e.getSubject());
					String f = folderManager.getFolder(e);
					FolderNode fn = box.getFolder(f);
					if (fn != null)
						fn.addEmail(e);
					else
					{
						ServerAdmin.error.warning("Could not find the folder to place this email into.");
						box.addEmail(e);
					}
				}
				else
				{
					System.out.println("No rule accepted "+e.getSubject());
					box.addEmail(e);
				}
			}
			setCurrentList(currentList);
		}

		public void sentEmail(Email e) {
			box.getOutbox().remove(e);
			box.getSentMail().addElement(e);
			//setRightComponent(panel = new EmailPanel(box.getMail(),client, accounts));
			setCurrentList(currentList);
		}
	}

	class ClientSearchListener implements SearchListener
	{

		public void searchResults(Vector<Email> emails) {
			//setRightComponent(panel = new EmailPanel(emails,client, accounts));
			setCurrentList(emails);
		}

	}
	class HelpAction extends AbstractAction
	{

		public void actionPerformed(ActionEvent arg0) {
			try {
				String [] files = {
						"\"C:/program files/Internet Explorer/iexplore.exe\"",
						System.getProperty("user.dir")+ "/Help/help.html"
						};
				Process p = Runtime.getRuntime().exec(files);
			} catch (IOException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}

		}

	}

	class AboutScreenAction extends AbstractAction {
		AboutScreenAction() {
			super("open about window");
		}

		public void actionPerformed(ActionEvent arg0) {


			AboutScreen screen = new AboutScreen();
			screen.setVisible(true);

		}

	}



	public void scheduleUpdate()
	{
		Timer timer = new Timer();
		Scheduler event = new Scheduler(new AutoUpdate(receiver));
		timer.schedule(event, 15*6000, 15*6000);
	}


}

⌨️ 快捷键说明

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