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

📄 modelutils.java

📁 lumaQQ的源文件
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
		ret.creator = cluster.getCreator();
		ret.clusterType = ClusterType.valueOf(cluster.getType());
		ret.messageSetting = MessageSetting.valueOf(cluster.getMessageSetting());
		ret.authType = (byte)cluster.getAuthType();
		ret.category = cluster.getCategory();
		ret.oldCategory = cluster.getOldCategory();
		ret.description = cluster.getDescription();
		ret.notice = cluster.getNotice();
		ret.lastMessageTime = cluster.getLastMessageTime();
		ret.parseAdminQQString(cluster.getAdmins());
		ret.parseStockholderQQString(cluster.getStockholders());
		return ret;
	}
	    
    /**
     * 创建缺省组文件
     * @param file 目的文件
     * @throws IOException 创建失败
     */
	@SuppressWarnings("unchecked")
	public static void createDefaultGroupXmlFile(File file) throws IOException {
    	file.getParentFile().mkdirs();
        file.createNewFile();
        XGroups groups = GroupFactory.eINSTANCE.createXGroups();
        // 我的好友
        XGroup group = GroupFactory.eINSTANCE.createXGroup();
        group.setName(group_default_friend);
        group.setType(GroupType.DEFAULT_FRIEND_GROUP.toString());
        groups.getGroup().add(group);
        // 群/校友录
        group = GroupFactory.eINSTANCE.createXGroup();
        group.setName(group_default_cluster);
        group.setType(GroupType.CLUSTER_GROUP.toString());
        groups.getGroup().add(group);
        // 陌生人
        group = GroupFactory.eINSTANCE.createXGroup();
        group.setName(group_default_stranger);
        group.setType(GroupType.STRANGER_GROUP.toString());
        groups.getGroup().add(group);
        // 黑名单
        group = GroupFactory.eINSTANCE.createXGroup();
        group.setName(group_default_blacklist);
        group.setType(GroupType.BLACKLIST_GROUP.toString());
        groups.getGroup().add(group);
        // 最近联系人
        group = GroupFactory.eINSTANCE.createXGroup();
        group.setName(group_default_latest);
        group.setType(GroupType.LATEST_GROUP.toString());
        groups.getGroup().add(group);
        // 保存
        GroupUtil.save(file, groups);
    }
	
	/**
     * 创建缺省登陆历史信息文件
     * @param file
     */
	public static void createDefaultLoginXmlFile(File file){
		Logins logins = createDefaultLogins();
        LoginUtil.save(file, logins);
    }
	
	/**
	 * 创建缺省的Logins对象
	 * 
	 * @return
	 */
	public static Logins createDefaultLogins() {
		Logins logins = LoginFactory.eINSTANCE.createLogins();
		logins.setLastLogin("");
		LoginOption lo = EcoreFactory.eINSTANCE.createLoginOption();
		lo.setUseTcp(true);
		lo.setAutoSelect(true);
		lo.setServer("");
		lo.setProxyType(ProxyType.NONE_LITERAL);
		lo.setProxyServer("");
		lo.setProxyPort(0);
		lo.setProxyUsername("");
		lo.setProxyPassword("");
		lo.setTcpPort(80);
		logins.setNetwork(lo);
		return logins;
	}

	/**
	 * 从Group创建一个XGroup元素对象,这相当于createGroup的反方法
	 * 
	 * @param group
	 * 		Group
	 * @return 
	 * 		XGroup元素对象
	 */
	public static XGroup createXGroup(Group group) {
		XGroup ret = GroupFactory.eINSTANCE.createXGroup();
		ret.setName(group.name);
		ret.setType(group.groupType.toString());
		return ret;
	}

	/**
	 * 从User创建XUser元素,相当于createUser的反方法
	 * 
	 * @param user
	 * 		User
	 * @return 
	 * 		XUser元素对象
	 */
	public static XUser createFriendElement(User user) {
		XUser ret = GroupFactory.eINSTANCE.createXUser();
		ContactInfo info = user.info;
		if(info == null)
			info = new ContactInfo();
		ret.setQq(user.qq);
		ret.setNick(user.nick);
		ret.setHeadId(user.headId);
		ret.setMember(user.member);
		ret.setWindowX(user.windowX);
		ret.setWindowY(user.windowY);
		ret.setTalkMode(user.talkMode);
		return ret;
	}
	
	/**
	 * 从Cluster对象创建一个XCluster元素
	 * 
	 * @param c
	 */
	public static XCluster createXCluster(Cluster c) {
		XCluster ret = GroupFactory.eINSTANCE.createXCluster();
		ret.setClusterId(c.clusterId);
		ret.setExternalId(c.externalId);
		ret.setParentClusterId(c.parentClusterId);
		ret.setName(c.name);
		ret.setHeadId(c.headId);
		ret.setMessageSetting(c.messageSetting.toString());
		ret.setType(c.clusterType.toString());
		ret.setCreator(c.creator);
		ret.setAuthType(c.authType);
		ret.setCategory(c.category);
		ret.setOldCategory(c.oldCategory);
		ret.setDescription(c.description);
		ret.setNotice(c.notice);
		ret.setAdmins(c.getAdminQQString());
		ret.setStockholders(c.getStockholderQQString());
		ret.setLastMessageTime(c.lastMessageTime);
		return ret;
	}
	
	/**
	 * 创建一个缺省的表情配置文件
	 * 
	 * @param file
	 * @throws IOException
	 */
	@SuppressWarnings("unchecked")
	public static void createDefaultFaceFile(File file) throws IOException {
		Faces faces = FaceFactory.eINSTANCE.createFaces();
		faces.setNextId(33);
		faces.setNextGroupId(3);
		
		FaceGroup defaultGroup = FaceFactory.eINSTANCE.createFaceGroup();
		defaultGroup.setName(face_group_default);
		defaultGroup.setId(FaceConstant.DEFAULT_GROUP_ID);
		faces.getGroup().add(defaultGroup);
		
		FaceGroup recvGroup = FaceFactory.eINSTANCE.createFaceGroup();
		recvGroup.setName(face_group_recv);
		recvGroup.setId(FaceConstant.RECEIVED_GROUP_ID);
		faces.getGroup().add(recvGroup);
		
		FaceGroup chGroup = FaceFactory.eINSTANCE.createFaceGroup();
		chGroup.setName(face_group_custom_head);
		chGroup.setId(FaceConstant.CUSTOM_HEAD_GROUP_ID);
		faces.getGroup().add(chGroup);
		
		FaceUtil.save(file, faces);
	}

	/**
	 * 创建一个缺省的系统设置文件
	 * @param file
	 */
	public static void createDefaultSysOptFile(File file) throws IOException {
		Options options = OptionFactory.eINSTANCE.createOptions();
		// 登陆设置
		LoginOption lo = EcoreFactory.eINSTANCE.createLoginOption();
		lo.setUseTcp(true);
		lo.setAutoSelect(true);
		lo.setServer("");
		lo.setProxyType(ProxyType.NONE_LITERAL);
		lo.setProxyServer("");
		lo.setProxyPort(0);
		lo.setProxyUsername("");
		lo.setProxyPassword("");
		lo.setTcpPort(80);
		options.setLoginOption(lo);
		// 界面设置
		GUIOption go = OptionFactory.eINSTANCE.createGUIOption();
		go.setLocationX(50);
		go.setLocationY(50);
		go.setWidth(-1);
		go.setHeight(-1);
		go.setShowNick(false);
		go.setShowSmallHead(false);
		go.setShowFriendTip(true);
		go.setShowOnlineOnly(false);		
		go.setShowOnlineTip(true);
		go.setShowLastLoginTip(true);
		go.setTreeMode(true);
		go.setOnlineTipLocationX(-1);
		go.setOnlineTipLocationY(-1);
		go.setFontName(default_font);
		go.setFontSize(9);
		go.setBold(false);
		go.setItalic(false);
		go.setFontColor(0);
		go.setGroupBackground(0xFFFFFF);
		go.setShowBlacklist(true);
		go.setAutoDock(true);
		go.setUseTabIMWindow(false);	
		go.setShowSignature(true);
		go.setShowCustomHead(true);
		go.setMinimizeWhenClose(false);
		go.setOnTop(true);
		go.setImOnTop(false);
		go.setHideWhenMinimize(false);
		go.setBarExpanded(false);
		options.setGuiOption(go);		
		// 消息设置
		MessageOption mo = OptionFactory.eINSTANCE.createMessageOption();
		mo.setAutoEject(false);
		mo.setEnableSound(true);
		mo.setRejectStranger(false);
		mo.setRejectTempSessionIM(false);
		mo.setUseEnterInMessageMode(false);
		mo.setUseEnterInTalkMode(false);
		options.setMessageOption(mo);
		// 热键设置
		KeyOption ko = OptionFactory.eINSTANCE.createKeyOption();
		ko.setMessageKey("<Ctrl><Alt>Z");
		options.setKeyOption(ko);
		// 同步设置
		SyncOption so = OptionFactory.eINSTANCE.createSyncOption();
		so.setAutoDownloadGroup(true);
		so.setAutoUploadGroup(OpType.PROMPT_LITERAL);
		so.setAutoDownloadFriendRemark(true);
		so.setAutoCheckUpdate(false);
		options.setSyncOption(so);
		// 其他设置
		OtherOption oo = OptionFactory.eINSTANCE.createOtherOption();
		oo.setBrowser("");
		oo.setKeepStrangerInLatest(false);
		oo.setLatestSize(20);
		oo.setEnableLatest(true);
		oo.setShowFakeCam(false);
		options.setOtherOption(oo);
		// 写入文件
		OptionUtil.save(file, options);
	}
}

⌨️ 快捷键说明

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