亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? phonebook.java.svn-base

?? 類似QQ的功能
?? SVN-BASE
字號:
/******************************************************************************* Jimm - Mobile Messaging - J2ME ICQ clone Copyright (C) 2003-08  Jimm Project 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. ******************************************************************************** File: src/jimm/PhoneBook.java Version: ###VERSION###  Date: ###DATE### Author(s): Artyomov Denis, Mikitevich Ivan *******************************************************************************///#sijapp cond.if modules_PIM is "true" #package jimm;import java.util.*;import java.io.IOException;import java.io.InterruptedIOException;//#sijapp cond.if target!="DEFAULT"#import javax.microedition.pim.*;//#sijapp cond.end#import javax.microedition.io.Connector;import javax.microedition.lcdui.*;import javax.wireless.messaging.*;import DrawControls.TextList;import DrawControls.VirtualList;import jimm.util.ResourceBundle;public class PhoneBook implements CommandListener {	private static PhoneBook _this;	private static TextList list;	private static TextBox smsText;	private static TextBox numText;	private static MessageConnection connection;	private static TelNum[] allTelNum;	private static Vector data = new Vector();	private static final Command backCommand = new Command(ResourceBundle.getString("back"), Jimm.cmdBack, 1);	//#sijapp cond.if target!="DEFAULT"#	private static final Command cmdCall = new Command(ResourceBundle.getString("call"), Command.ITEM, 4);	//#sijapp cond.end#	private static final Command cmdWriteSMS = new Command(ResourceBundle.getString("write_sms"), Command.ITEM, 5);	private static final Command cmdSendSMS = new Command(ResourceBundle.getString("send_sms"), Command.ITEM, 1);	private static final Command cmdEditNum = new Command(ResourceBundle.getString("edit_num"), Command.ITEM, 6);	static int counter = 0;	private static boolean PIM_API_Available = false;	private static boolean SMS_API_Available = false;	static {		String pimVersion = System.getProperty("microedition.pim.version");		if (pimVersion != null) {			PIM_API_Available = true;		}		try {			Class.forName("javax.wireless.messaging.MessageConnection");			SMS_API_Available = true;		} catch ( Exception ignore ) {/* Do nothing */}				}	public PhoneBook() {		_this = this;	}	public static void addContactToList(String name, String number, int value) {		synchronized (list) {			if (name != lastContact){				list.addBigText(name + ":", list.getTextColor(), Font.STYLE_BOLD, -1);				list.doCRLF(value);			}			list.addBigText(number, Options.getSchemeColor(Options.CLRSCHHEME_OUTGOING, -1), Font.STYLE_PLAIN, value);			list.doCRLF(value);			lastContact = name;		}	}	private static String lastContact;	private static void fillPhonesInList() {		list.lock();		list.clear();		lastContact = null;		for (int i = 0; i < allTelNum.length; i++) {			addContactToList(allTelNum[i].getName(), allTelNum[i].getTel(), allTelNum[i].getValue());		}		list.unlock();	}	private static void addTelNumInfo(Vector vct, String name, String tel, int value) {		vct.addElement(new TelNum(name, tel, value));	}	public static void activate(boolean restorePos) {		String cap = null;		int lastPos = -1;		if (list == null) {			list = new TextList(ResourceBundle.getString(cap));		}		if (restorePos) {			lastPos = list.getCurrTextIndex();		}		list.setMode(VirtualList.CURSOR_MODE_DISABLED);		list.setCaption(ResourceBundle.getString("phone_book"));		JimmUI.setColorScheme(list, false, -1, true);		list.setCyclingCursor(true);		list.addCommandEx(JimmUI.cmdMenu, VirtualList.MENU_TYPE_LEFT_BAR);		//#sijapp cond.if target!="DEFAULT"#		list.addCommandEx(cmdCall, VirtualList.MENU_TYPE_RIGHT_BAR);		if (SMS_API_Available) {			list.addCommandEx(cmdWriteSMS, VirtualList.MENU_TYPE_LEFT);		}		list.addCommandEx(cmdEditNum, VirtualList.MENU_TYPE_LEFT);		//#sijapp cond.else#		//#if (SMS_API_Available) {		//#	list.addCommandEx(cmdWriteSMS, VirtualList.MENU_TYPE_RIGHT_BAR);		//#	list.addCommandEx(cmdEditNum, VirtualList.MENU_TYPE_LEFT);		//#} else {		//#	list.addCommandEx(cmdEditNum, VirtualList.MENU_TYPE_RIGHT_BAR);		//#}		//#sijapp cond.end#		list.addCommandEx(backCommand, VirtualList.MENU_TYPE_LEFT);		list.setCommandListener(_this);		if (counter == 0) {			addTelNumInfo(data, ResourceBundle.getString("enter_phone_num"), "", counter);			counter++;			if (PIM_API_Available)			{				// load the list of names in a different thread				new Thread(new LoadContacts()).start();			} else {				moveDataToList();			}		} else {			fillPhonesInList();		}		if (restorePos) {			list.selectTextByIndex(lastPos);		}		list.activate(Jimm.display);	}	private static void moveDataToList()	{		allTelNum = new TelNum[data.size()];		data.copyInto(allTelNum);		data.removeAllElements();		fillPhonesInList();	}	private String getCurrPhoneNumber() {		int idx = list.getCurrTextIndex();		if ((idx > -1) && (idx < allTelNum.length))			return allTelNum[idx].getTel();		else			return "";	}	private void setCurrPhoneNumber(String number) {		allTelNum[list.getCurrTextIndex()].setTel(number);	}	public void commandAction(Command c, Displayable d) {		Jimm.aaUserActivity();		if (c == backCommand) {			MainThread.backToLastScreenMT();		//#sijapp cond.if target!="DEFAULT"#		} else if (c == cmdCall) {			String number = getCurrPhoneNumber();			if (number.length() > 0) {				try {					Jimm.jimm.platformRequest("tel:" + number);				} catch (Exception ignore) {/*Do nothing*/}			}		//#sijapp cond.end#		} else if (c == cmdWriteSMS) {			/*String number = */			getCurrPhoneNumber();			smsText = new TextBox(null, "", 500, TextField.ANY);			smsText.addCommand(cmdSendSMS);			smsText.addCommand(backCommand);			smsText.setCommandListener(this);			Jimm.display.setCurrent(smsText);		} else if (c == cmdSendSMS) {			String number = getCurrPhoneNumber();			if (number.length() > 0) {				MainThread.backToLastScreenMT();				new Thread(new sms (smsText.getString(), number)).start();			}		} else if (c == cmdEditNum && list.getCurrTextIndex() > -1) {			String number = getCurrPhoneNumber();			numText = new TextBox(null, number, 20, TextField.PHONENUMBER);			numText.addCommand(JimmUI.cmdOk);			numText.addCommand(JimmUI.cmdCancel);			numText.setCommandListener(this);			Jimm.display.setCurrent(numText);		} else if (numText != null && numText.isShown()) {			if (c == JimmUI.cmdOk) {				setCurrPhoneNumber(numText.getString());			}			PhoneBook.activate(true);			numText = null;		}	}	private static class LoadContacts implements Runnable {//#sijapp cond.if target!="DEFAULT"#		private static String readPimName(Contact contact, int nameConstant) {			switch (nameConstant) {				case Contact.FORMATTED_NAME:					return contact.getString(nameConstant, 0);				case Contact.NAME:					int nameNumbers = contact.countValues(Contact.NAME);					StringBuffer sb = new StringBuffer();					for (int i = 0; i < nameNumbers; i++) {						String[] nameData = contact.getStringArray(Contact.NAME, i);						if (nameData != null) {							if (nameData[Contact.NAME_GIVEN] != null) {								sb.append(nameData[Contact.NAME_GIVEN]);							}							if (nameData[Contact.NAME_FAMILY] != null) {								if (sb.length() > 0) {									sb.append(" ");								}								sb.append(nameData[Contact.NAME_FAMILY]);							}						}					}					return sb.toString().trim();			}			return null;		}		private static void loadNames(String name) throws PIMException, SecurityException {			javax.microedition.pim.ContactList cl = null;			try {				if (name != null) {					cl = (javax.microedition.pim.ContactList) PIM.getInstance().openPIMList(PIM.CONTACT_LIST, PIM.READ_ONLY, name);				} else {					cl = (javax.microedition.pim.ContactList) PIM.getInstance().openPIMList(PIM.CONTACT_LIST, PIM.READ_ONLY);				}				int nameConstant;				if (cl.isSupportedField(Contact.FORMATTED_NAME)) {					nameConstant = Contact.FORMATTED_NAME;				} else if (cl.isSupportedField(Contact.NAME)) {					nameConstant = Contact.NAME;				} else {					return;				// TODO: Progress bar here				}				Enumeration items = cl.items();				Vector telNumbers = new Vector();				while (items.hasMoreElements()) {					Contact contact = (Contact) items.nextElement();					int telCount = contact.countValues(Contact.TEL);					int nameCount = contact.countValues(nameConstant);					if (telCount > 0 && nameCount > 0) {						String contactName = readPimName(contact, nameConstant);						for (int i = 0; i < telCount; i++) {							int telAttributes = contact.getAttributes(Contact.TEL, i);							String telNumber = contact.getString(Contact.TEL, i);							if (cl.isSupportedAttribute(Contact.TEL, Contact.ATTR_MOBILE)) {								if ((telAttributes & Contact.ATTR_MOBILE) != 0) {									telNumbers.insertElementAt(telNumber, 0);								} else {									telNumbers.addElement(telNumber);								}							} else {								telNumbers.addElement(telNumber);							}						}						if (contactName.length() > 20) {							contactName = contactName.substring(0, 17) + "...";						}						for (int i = 0; i < telNumbers.size(); i++) {							addTelNumInfo(data, contactName, (String) telNumbers.elementAt(i), counter);							counter++;						}						telNumbers.removeAllElements();					}				}			} finally {				if (cl != null) {					cl.close();				}			}		}		//#sijapp cond.end#		public void run() {			//#sijapp cond.if target!="DEFAULT"#			try {				String[] allContactLists = PIM.getInstance().listPIMLists(PIM.CONTACT_LIST);				if (allContactLists.length != 0) {					for (int i = 0; i < allContactLists.length; i++) {						loadNames(allContactLists[i]);					}				} else {					loadNames(null);				}			} catch (PIMException e) {				DebugLog.addText("PhoneBook: " + e.getMessage());			} catch (SecurityException e) {				DebugLog.addText("PhoneBook: " + e.getMessage());			}			//#sijapp cond.end#			moveDataToList();		}	}	private class sms implements Runnable {		private TextMessage message;				public sms(String message_, String number_) {						try {				connection = (MessageConnection) Connector.open("sms://:5000", Connector.WRITE);			} catch (IOException ex) {				// TODO: Exception handling			}			message = (TextMessage) connection.newMessage(					MessageConnection.TEXT_MESSAGE);			message.setAddress("sms://" + number_);			String text = message_;			message.setPayloadText(text);		}		/**		 * Sends a text SMS.		 */		public void run() {			try {				connection.send(message);			} catch (InterruptedIOException ex) {				// TODO: Exception (e.g. timeout) handling			} catch (IOException ex) {				// TODO: Exception (e.g. network failure) handling			} catch (IllegalArgumentException ex) {				// TODO: Exception (e.g. too big or otherwise invalid				// message) handling			} catch (SecurityException ex) {				// TODO: Exception (e.g. insufficient permissions) handling			}		}	}}//#sijapp cond.end#

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲柠檬福利资源导航| 日韩免费视频线观看| 国产精品久久久久婷婷二区次| 国产在线精品免费| 国产亚洲精品中文字幕| 粉嫩嫩av羞羞动漫久久久| 国产日韩欧美一区二区三区乱码 | 最好看的中文字幕久久| 99国产欧美久久久精品| 亚洲精品视频免费观看| 一本大道av一区二区在线播放 | 91麻豆视频网站| 一二三区精品视频| 欧美一区二区大片| 国产乱子伦一区二区三区国色天香| 久久久欧美精品sm网站| 91亚洲精品乱码久久久久久蜜桃 | 91九色02白丝porn| 午夜精品视频一区| 久久新电视剧免费观看| 99久久久国产精品| 人人狠狠综合久久亚洲| 国产精品黄色在线观看| 欧美性大战久久久| 老司机精品视频导航| 国产精品天天看| 欧美美女喷水视频| 国产精品综合在线视频| 亚洲一区二区三区中文字幕| 日韩精品在线看片z| 不卡一区二区中文字幕| 日本不卡视频一二三区| 国产精品嫩草久久久久| 制服丝袜av成人在线看| 成人小视频在线观看| 亚洲成人av在线电影| 欧美激情一区二区三区四区 | 成人app下载| 视频在线观看一区二区三区| 国产拍揄自揄精品视频麻豆| 欧美日韩免费电影| 成人性生交大片免费| 日日夜夜一区二区| 中文字幕一区二区日韩精品绯色| 欧美视频中文字幕| 春色校园综合激情亚洲| 青青草国产精品亚洲专区无| 亚洲色图在线播放| 久久久精品国产99久久精品芒果| 日本丰满少妇一区二区三区| 国产真实乱偷精品视频免| 亚洲电影视频在线| 中文字幕亚洲电影| 国产欧美日韩卡一| 日韩欧美国产高清| 7777精品伊人久久久大香线蕉完整版| eeuss国产一区二区三区| 久久99精品国产91久久来源| 一区二区三区在线观看欧美 | 综合久久综合久久| ww久久中文字幕| 日韩视频免费观看高清完整版| 在线视频中文字幕一区二区| 懂色av一区二区三区免费观看 | 国产成人a级片| 久久国内精品视频| 日本不卡在线视频| 日韩制服丝袜先锋影音| 亚洲无人区一区| 亚洲精品欧美综合四区| 国产精品理论片在线观看| 久久精品网站免费观看| 久久综合九色综合97婷婷女人 | 亚洲另类在线视频| 亚洲视频小说图片| ...av二区三区久久精品| 中文字幕一区二区三区在线播放| 欧美激情艳妇裸体舞| 国产欧美日韩在线观看| 久久精品网站免费观看| 久久这里只有精品6| 日韩精品资源二区在线| 精品国产精品一区二区夜夜嗨| 欧美va亚洲va在线观看蝴蝶网| 91精品国模一区二区三区| 欧美一区二区视频在线观看2022| 在线不卡免费av| 欧美一级精品大片| 日韩精品一区二区三区中文不卡 | 欧美日韩免费电影| 欧美精选一区二区| 欧美另类高清zo欧美| 日韩一级视频免费观看在线| 欧美成人精品高清在线播放 | 国产精品久久久久永久免费观看 | 国产精品一级在线| 丁香婷婷综合五月| 99久久久久久| 欧美男生操女生| 精品免费日韩av| 日本一区二区在线不卡| 亚洲欧洲日产国码二区| 亚洲国产综合91精品麻豆| 秋霞影院一区二区| 国产98色在线|日韩| 99精品久久99久久久久| 欧美精品第1页| 久久精品视频网| 最新久久zyz资源站| 丝袜美腿亚洲综合| 国产激情偷乱视频一区二区三区| 色婷婷亚洲一区二区三区| 91精品在线一区二区| 久久久精品免费网站| 亚洲精品国产无套在线观 | 日日摸夜夜添夜夜添精品视频| 裸体健美xxxx欧美裸体表演| 成人免费高清在线| 欧美精品亚洲二区| 久久久国产综合精品女国产盗摄| 亚洲日本丝袜连裤袜办公室| 日产欧产美韩系列久久99| 成人网男人的天堂| 欧美日韩日日摸| 国产欧美精品一区二区色综合朱莉| 亚洲精品大片www| 国产成人鲁色资源国产91色综| 欧美日韩黄色一区二区| 中文字幕欧美区| 秋霞成人午夜伦在线观看| 91浏览器在线视频| 国产亚洲精品aa午夜观看| 丝袜美腿一区二区三区| 91香蕉视频黄| 精品国产乱码久久久久久影片| 亚洲精品乱码久久久久久黑人| 国产精品一区二区果冻传媒| 7878成人国产在线观看| 亚洲美女电影在线| 国模少妇一区二区三区| 欧美喷潮久久久xxxxx| 亚洲欧美偷拍卡通变态| 国产高清视频一区| 欧美成人在线直播| 亚洲一区二区三区视频在线| 成人精品视频.| 久久亚洲精品小早川怜子| 日韩av中文字幕一区二区| 在线观看日韩毛片| 亚洲视频综合在线| 成人一区二区三区视频| 久久久午夜精品理论片中文字幕| 日本午夜一本久久久综合| 欧美视频在线不卡| 中文字幕亚洲在| 成人av网站大全| 国产日韩一级二级三级| 久久99久久久久久久久久久| 91精品综合久久久久久| 天天色天天操综合| 欧美日韩精品一二三区| 一区二区三区欧美| 色婷婷国产精品久久包臀| 国产精品美女久久久久aⅴ | 国产精品成人午夜| 国产成人精品免费一区二区| www成人在线观看| 黄网站免费久久| 久久亚洲一区二区三区明星换脸| 国内精品伊人久久久久影院对白| 日韩免费在线观看| 精品一二线国产| 久久精品免费在线观看| 国产99精品国产| 中文字幕久久午夜不卡| 成人不卡免费av| 中文字幕中文字幕在线一区 | 亚洲国产精品久久久久秋霞影院| 日本精品一区二区三区高清 | 91丝袜高跟美女视频| 1024国产精品| 在线观看国产一区二区| 亚洲一区二区精品3399| 欧美日本一区二区在线观看| 日本不卡视频一二三区| 久久久三级国产网站| 成人免费毛片片v| 亚洲欧美另类在线| 欧美老肥妇做.爰bbww视频| 蜜臀av性久久久久蜜臀aⅴ四虎| 欧美大片免费久久精品三p| 国产最新精品精品你懂的| 国产精品麻豆久久久| 在线观看视频欧美| 老司机精品视频一区二区三区| 亚洲国产精品精华液2区45| 91美女精品福利| 麻豆精品一区二区三区| 国产欧美精品在线观看| 欧美视频一区二区三区四区 |