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

📄 evamainwindow.cpp

📁 linux下的eva源代码
💻 CPP
📖 第 1 页 / 共 2 页
字号:
	if(pixLeave) pbStatus->setIconSet(QIconSet(*pixLeave));	pbStatus->setText(i18n( "Leave"));}void EvaMainWindow::invisible(){	if(pixInvisible) pbStatus->setIconSet(QIconSet(*pixInvisible));	pbStatus->setText(i18n( "Invisible"));}void EvaMainWindow::slotTbMyFace(){	if(qqNum)		emit requestDetails(qqNum);}void EvaMainWindow::slotContextMenu(QListViewItem *item, const QPoint & p, int col){	if(col!=0) return;	EvaGroupItem *g = dynamic_cast<EvaGroupItem *>(item);	EvaBuddyItem *b = dynamic_cast<EvaBuddyItem *>(item);	EvaQunItem *q = dynamic_cast<EvaQunItem *>(item);		if ( item && !item->isSelected() )	{		listView->clearSelection();		item->setSelected( true );	}		if ( !item )		listView->clearSelection();	if(g && groupMenu){		if(g->getType() == EvaGroupItem::Normal){			if(g->getGroupIndex() == 0 || g->getGroupIndex() > listView->getNumOfGroups() ){				groupMenu->setItemEnabled(0, false);				groupMenu->setItemEnabled(2, false);			}else{				groupMenu->setItemEnabled(0, true);				groupMenu->setItemEnabled(2, true);			}			groupMenu->popup(p);		} else if(g->getType() == EvaGroupItem::QunOrg){			qunOrgsMenu->popup(p);		} else if(g->getType() == EvaGroupItem::QunDiscuss){			qunDiscussMenu->popup(p);		}	}else if(b && buddyMenu ){		buddyMenu->popup(p);	} else if(q && qunMenu){		qunMenu->popup(p);	}}void EvaMainWindow::slotItemRenamed(QListViewItem *item, int){	EvaGroupItem *g = dynamic_cast<EvaGroupItem *>(item);	if(!g) return; 	if(g->getType() != EvaGroupItem::Normal) return;	emit groupRenamed(g->text(0), g->getGroupIndex());}void EvaMainWindow::slotRenameGroup(){	EvaGroupItem *g = dynamic_cast<EvaGroupItem *>(listView->selectedItem());	if(!g) return;	if(g->getGroupIndex() == 0) return;   // first group cannot be renamed	g->setGroupName(g->getGroupName());  // this is to elimate the online number statistics	g->setRenameEnabled(0, true);	g->startRename(0);}void EvaMainWindow::slotNewGroup(){	QString name(i18n( "new group"));	int index = listView->getNumOfGroups();	listView->addGroup(name, index);	EvaGroupItem *g = listView->findGroup(index);	emit groupAdded(name, index);		listView->clearSelection();	g->setSelected(true);	g->setRenameEnabled(0, true);	g->startRename(0);}void EvaMainWindow::slotDelGroup(){	EvaGroupItem *g = dynamic_cast<EvaGroupItem *>(listView->selectedItem());	if(!g) return;	if(g->getGroupIndex() == 0) return;   // first group cannot be deleted	if(g->childCount()){		QMessageBox::information( this, i18n( "Delete group"),			i18n( "Only empty group can be deleted.\n\n"));		return;	}	int index = g->getGroupIndex();	listView->deleteGroup(index);	emit groupDeleted(index);}void EvaMainWindow::slotIMChat(){	EvaBuddyItem *b = dynamic_cast<EvaBuddyItem *>(listView->selectedItem());	if(!b) return;	emit requestChat(b->getQQ());}void EvaMainWindow::slotSendFile(){	EvaBuddyItem *b = dynamic_cast<EvaBuddyItem *>(listView->selectedItem());	if(!b) return;	emit requestSendFile(b->getQQ());}void EvaMainWindow::slotUpdataLevel(){	EvaBuddyItem *b = dynamic_cast<EvaBuddyItem *>(listView->selectedItem());	if(!b) return;	emit requestLevel(b->getQQ());}void EvaMainWindow::slotDetails(){	EvaBuddyItem *b = static_cast<EvaBuddyItem *>(listView->selectedItem());	if(!b) return;	emit requestDetails(b->getQQ());}void EvaMainWindow::slotModifyMemo(){	EvaBuddyItem *b = static_cast<EvaBuddyItem *>(listView->selectedItem());	if(!b) return;	emit requestModifyMemo(b->getQQ());}void EvaMainWindow::slotHistory(){	EvaBuddyItem *b = dynamic_cast<EvaBuddyItem *>(listView->selectedItem());	if(!b) return;	emit requestHistory(b->getQQ());}void EvaMainWindow::slotShowOnlineBuddies(){	listView->showOnlineOnly();	emit showOnlineSelected();}void EvaMainWindow::slotShowAllBuddies(){	listView->showAll();	emit showAllSelected();}void EvaMainWindow::slotDelBuddy(){	EvaBuddyItem *b = dynamic_cast<EvaBuddyItem *>(listView->selectedItem());	if(!b) return;	QString info = QString(i18n("Delete friend \"%1\" from your list, are you sure?\n\n")).arg(b->text(0));	if(QMessageBox::warning( this, i18n( "Delete a friend"),		info, i18n( "Yes"),i18n( "No"), 0, 0, 1))		return;	emit requestDelete(b->getQQ());}void EvaMainWindow::slotBuddyDoubleClick(QListViewItem *item, const QPoint & , int){	EvaBuddyItem *b = dynamic_cast<EvaBuddyItem *>(item);	if(b){		//b->slotStopFlash();		EvaGroupItem *group = dynamic_cast<EvaGroupItem *>(((QListViewItem*)b)->parent());		if(!group) return;		group->stopFlash(b->getQQ());		emit requestChat(b->getQQ());	}else{		EvaQunItem *q = dynamic_cast<EvaQunItem *>(item);		if(q){			//q->slotStopFlash();			EvaGroupItem *group = dynamic_cast<EvaGroupItem *>(((QListViewItem*)q)->parent());			if(!group) return;			group->stopFlash(q->getQunID());			emit requestQunChat(q->getQunID());		}	}}void EvaMainWindow::slotSearch(){	emit requestSearch();}void EvaMainWindow::slotSystemMessages(){	emit requestSystemMessages();}void EvaMainWindow::slotListViewClicked( QListViewItem * item){	EvaGroupItem *g = dynamic_cast<EvaGroupItem *>(item);	if(g){		g->setOpen(! g->isOpen());	}}void EvaMainWindow::clearQunList( ){	listView->clearQunList();}QRect EvaMainWindow::tipRect( const QPoint & /*pos*/ ){	// at the moment we only have one button which has tooltip, so just return the rect of the button	return tbMyFace->rect();}QString EvaMainWindow::myInfoTip( ){	//const QQFriend *frd = (EvaMain::user->getFriendList()).getFriend(qqNum); 	if(!EvaMain::user->loginManager()->isCommandFinished(QQ_CMD_GET_USER_INFO))		return "Eva";	QString tip = "<qt>";	//EvaIPSeeker ipAddr(EvaGlobal::getDirPath().latin1());	QTextCodec *codec = QTextCodec::codecForName("GB18030");	QString nickName = codec->toUnicode(EvaMain::user->getDetails().at(ContactInfo::Info_nick).c_str());	//QString addr = codec->toUnicode(ipAddr.getIPLocation(frd->getIP()).c_str());	//if(addr.length()<4) addr = "0.0.0.0";		QString htmlName = nickName;	EvaHtmlParser parser;	parser.setAbsImagePath(EvaMain::images->getSmileyPath());	parser.convertToHtml(htmlName, false, true);		QString signature = codec->toUnicode(EvaMain::user->getSignature().c_str());	if(signature.length() > 40)		signature = signature.left(37) + "...";	if(!signature.isEmpty())		signature = "[" + signature + "]";		QString facePath = "<img src=\"" + EvaMain::images->getFacePath() + "/" +			QString::number(EvaMain::images->getFaceFileIndex(atoi(EvaMain::user->getDetails().at(ContactInfo::Info_face).c_str()))) + 			".png\"></img>";				if(EvaMain::user->hasUserHead() && EvaMain::uhManager){		QString uhFileName = EvaMain::uhManager->getFileName(EvaMain::user->getQQ());		if(!uhFileName.isEmpty())			facePath = "<img src=\"" + uhFileName + "\"></img>";	}		int suns, moons, stars;	EvaUtil::calcSuns(EvaMain::user->getLevel(), &suns, &moons, &stars);	QString strSun =  "<img src=\"" + EvaMain::images->getIconFullPath("TIME_SUN") + "\"></img>";	QString strMoon = "<img src=\"" + EvaMain::images->getIconFullPath("TIME_MOON") + "\"></img>";	QString strStar = "<img src=\"" + EvaMain::images->getIconFullPath("TIME_STAR") + "\"></img>";	QString level;	for(int i=0; i<suns; i++){		level += strSun;	}	for(int i=0; i<moons; i++){		level += strMoon;	}	for(int i=0; i<stars; i++){		level += strStar;	}		tip += "<table width = 260><tr><td width=60 align = center valign = middle>" + facePath + 		"</td><td align = left valign = middle><b><font color = blue>"+		i18n("QQ") +": </font></b>"+ QString::number(EvaMain::user->getQQ()) +"<br><b><font color = blue>"+		i18n("Nickname:") + " </font></b>"+htmlName +"<br>" + signature + "<br><b><font color = blue>"+ 		i18n("Level") +": </font></b>"+ level + "  (" + QString::number(EvaMain::user->getLevel()) +")<br><b><font color = blue>"+		i18n("Online Time") +": </font></b>"+ QString::number(EvaMain::user->getOnlineTime()/3600)+									" Hours<br><b><font color = blue>"+		i18n("Level Up") +": </font></b>"+ QString::number(EvaMain::user->getHoursToLevelUp())+							" Hours<br><b><font color = blue>" + "</td></tr></table>"; 	tip += "</qt>";	return tip;}void EvaMainWindow::slotIMQunChat( ){	EvaQunItem *q = dynamic_cast<EvaQunItem *>(listView->selectedItem());	if(!q) return;	emit requestQunChat(q->getQunID());}void EvaMainWindow::slotQunDetails( ){	EvaQunItem *q = dynamic_cast<EvaQunItem *>(listView->selectedItem());	if(!q) return;	emit requestQunDetails(q->getQunID());}void EvaMainWindow::slotQunExit( ){	EvaQunItem *q = dynamic_cast<EvaQunItem *>(listView->selectedItem());	if(!q) return;	emit requestQunExit(q->getQunID());}void EvaMainWindow::slotQunCreate( ){	emit requestQunCreate();}void EvaMainWindow::slotQunHistory( ){	EvaQunItem *q = dynamic_cast<EvaQunItem *>(listView->selectedItem());	if(!q) return;	emit requestQunHistory(q->getQunID());}void EvaMainWindow::resizeEvent( QResizeEvent * event ){	QSize s = event->size();	//listView->setColumnWidth(0, s.width() - 45);	//listView->setColumnWidth(1, 45);	listView->setColumnWidth(0, s.width());}void EvaMainWindow::moveEvent( QMoveEvent */*event*/ ){        setPosAndSize();}void EvaMainWindow::setPosAndSize(){        nowPosition = pos();        nowSize = size();}

⌨️ 快捷键说明

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