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

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

?? fxloginwindow.cpp

?? linux-下的fetion-0.8.1。包括所有源代碼
?? CPP
字號:
/*************************************************************************** *   Copyright (C) 2008 by DDD                                          * *   dedodong@163.com                                                     * *                                                                         * *   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.             * ***************************************************************************/#include <QtGui>#include <QMainWindow>#include "appconfig.h"#include "fxloginwindow.h"FxLoginWindow::FxLoginWindow(QWidget *parent)    : QDialog(parent){	user_id = NULL;	user_pwd = NULL;	proxy = new FxProxy(this);	proxy->hide();    setupUi(this);	this->installEventFilter(this);	loginState->setStyleSheet("background-color: rgb(246,243,243)");	//BT_Login_Ok->setStyleSheet("background-color: rgb(246,243,243)");	{		loginState->setItemIcon(0, getOnlineStatusIcon(FX_STATUS_ONLINE));		loginState->setItemIcon(1, getOnlineStatusIcon(FX_STATUS_OFFLINE));		loginState->setItemIcon(2, getOnlineStatusIcon(FX_STATUS_AWAY));		loginState->setItemIcon(3, getOnlineStatusIcon(FX_STATUS_BUSY));	}	set_login_button_state(true);	login_image->setPixmap(getLoginImage());	LibFetion_image->setPixmap(getLibFetionImage());	//	Login_State->setText("test version for v 0.2.0");	connect(BT_Login_Ok, SIGNAL(clicked()), this, SLOT(BT_Login_clicked()));	//connect(BT_Login_Cancel, SIGNAL(clicked()), this, SLOT(Cancel_logwin()));	connect(this, SIGNAL(signal_enableLoginBT()), this, SLOT(slots_enableLonginBT()) ); 	//connect(Net_Setting, SIGNAL(clicked()), this, SLOT(Setting()));	connect(Net_Setting, SIGNAL(linkActivated(const QString &)), this, SLOT(Setting(const QString &)));	connect(&loginTimer, SIGNAL(timeout()), this, SLOT(login_timer()));	QRegExp rx_port("[0-9]{0,11}");	QValidator *validator_port = new QRegExpValidator(rx_port, this);	ED_Fetion_ID->setValidator(validator_port);	    this->setWindowIcon(getSysTrayIcon(0));    //this->setWindowIcon(getSysTrayIcon(FX_STATUS_AWAY));	//set auto login 	int state_tmp = 0;	if (isAutoLogin(&user_id, &user_pwd, &state_tmp) && user_id) 	{		remPWD->setCheckState(Qt::Checked);		ED_Fetion_ID->setText (QString::fromUtf8(user_id));		ED_Fetion_Pwd->setText (QString::fromUtf8(user_pwd));		loginState->setCurrentIndex(state_tmp);		login();	}}FxLoginWindow::~FxLoginWindow(){	if(user_id)		free(user_id);	if(user_pwd)		free(user_pwd);	proxy->proxy_destroy();}void FxLoginWindow::Cancel_logwin(){	enableLoginBT();	fx_close_network();}void FxLoginWindow::set_login_button_state(bool state){	willLogin = state;	if (willLogin) {		BT_Login_Ok->setText(tr("login"));		BT_Login_Ok->setPixmap(getLogion_InImage());	} else {		BT_Login_Ok->setText(tr("cancel"));		BT_Login_Ok->setPixmap(getLogin_CancelImage());	}}void FxLoginWindow::BT_Login_clicked(){	if (willLogin)		login();	else	{		Cancel_logwin();		set_login_button_state(true);	}}void FxLoginWindow::Setting(const QString &){	proxy->show();}void FxLoginWindow::setLogingState(char *ch){#if 0	QTextCodec * codec_cstring = QTextCodec::codecForCStrings ()	QTextCodec *codec_locale = QTextCodec::codecForLocale ();	QTextCodec::setCodecForLocale(QTextCodec::codecForName("GBK"));	QTextCodec::setCodecForCStrings(QTextCodec::codecForName("GBK"));	//	QTextCodec::setCodecForTr(QTextCodec::codecForName("GBK"));#endif	QString str = str.fromUtf8(ch);	Login_State->setText(str);	update();#if 0	QTextCodec::setCodecForLocale(codec_locale);	QTextCodec::setCodecForCStrings(codec_cstring);#endif	}#define fetion_debug printf  void  My_EventListener (int message, WPARAM wParam, LPARAM lParam, void* args){	FxLoginWindow *loginDlg = NULL;	if(!args)		return;	loginDlg = (FxLoginWindow *)args;		switch(message)	{	case FX_LOGIN_URI_ERROR:		fetion_debug("FX_LOGIN_URI_ERROR\n");		loginDlg->Login_State->setText(QObject::tr("mobile_no or fetion uid error"));		loginDlg->enableLoginBT();		break;			case FX_LOGIN_CONNECTING:		fetion_debug("FX_LOGIN_CONNECTING\n");		loginDlg->Login_State->setText(QObject::tr("connecting the fetion server"));		break;			case FX_LOGIN_WAIT_AUTH:		fetion_debug("FX_LOGIN_WAIT_AUTH\n");		loginDlg->Login_State->setText(QObject::tr("waiting the server auth"));		break;			case FX_LOGIN_AUTH_OK:		fetion_debug("FX_LOGIN_WAIT_AUTH \n");		loginDlg->Login_State->setText(QObject::tr("server auth ok"));		break;			case FX_LOGIN_FAIL:		fetion_debug("FX_LOGIN_FAIL \n");		loginDlg->Login_State->setText(QObject::tr("password error"));		loginDlg->enableLoginBT();		break;	case FX_LOGIN_NETWORK_ERROR:		fetion_debug("FX_LOGIN_NETWORK_ERROR \n");		loginDlg->Login_State->setText(QObject::tr("network error"));		cleanCacheServerAdd(); //clean the sever ip cache		loginDlg->enableLoginBT();		break;	case FX_LOGIN_UNKOWN_ERROR :   		fetion_debug("FX_LOGIN_UNKOWN_ERROR \n");		loginDlg->Login_State->setText(QObject::tr("unkown error"));		cleanCacheServerAdd(); //clean the sever ip cache		loginDlg->enableLoginBT();		break;			case FX_LOGIN_TIMEOUT:		fetion_debug("FX_LOGIN_TIMEOUT \n");		loginDlg->Login_State->setText(QObject::tr("login time out"));		loginDlg->enableLoginBT();		break;	case FX_LOGIN_UNKOWN_USR:		fetion_debug("FX_LOGIN_UNKOWN_USR \n");		loginDlg->Login_State->setText(QObject::tr("unkown fetion uid"));		loginDlg->enableLoginBT();		break;			case FX_LOGIN_GCL_GETTING:		fetion_debug("FX_LOGIN_GCL_GETTING\n");		break;			case FX_LOGIN_GCL_OK:   		fetion_debug("FX_LOGIN_GCL_OK \n");		break;			case FX_LOGIN_GCL_FAIL:		fetion_debug("FX_LOGIN_GCL_FAIL \n");		loginDlg->Login_State->setText(QObject::tr("get account list fail"));		loginDlg->enableLoginBT();		break;			case FX_LOGIN_GP_GETTING:		fetion_debug("FX_LOGIN_GP_GETTING\n");		break;			case FX_LOGIN_GP_OK:		fetion_debug("FX_LOGIN_GP_OK \n");		break;	case FX_LOGIN_GP_FAIL:		fetion_debug("FX_LOGIN_GP_FAIL\n");		loginDlg->Login_State->setText(QObject::tr("get account info fail"));		loginDlg->enableLoginBT();		break;			case FX_LOGIN_OK :		fetion_debug("FX_LOGIN_OK \n");		loginDlg->Login_State->setText(QObject::tr("fetion login ok"));		loginDlg->LoginOK();		break;	}}void FxLoginWindow::enableLoginBT(){	emit signal_enableLoginBT();}void FxLoginWindow::slots_enableLonginBT(){	if (loginTimer.isActive())		loginTimer.stop();	set_login_button_state(true);}void FxLoginWindow::LoginOK(){	if (remPWD->checkState() == Qt::Checked )		setAutoLogin(user_id, user_pwd, loginState->currentIndex());	else		disAutoLogin();	char * serve_address = fx_get_serve_address();	if(serve_address){			setCacheServerAdd(user_id, serve_address);		free(serve_address);	}	//fixme;.....	//fx_get_usr_uri();	emit signal_LoginOK();}void FxLoginWindow::login(){#if 0	LoginOK();	return ;#endif	Login_State->setText(tr("logining"));	int id_len = ED_Fetion_ID->text().size(); 	int pwd_len = ED_Fetion_Pwd->text().size(); 	if (id_len != 9 && id_len != 11) {		Login_State->setText( tr("error usr id"));		return;	}	if (pwd_len == 0) {		Login_State->setText( tr("please input password"));		return;	}	if(user_id)		free(user_id);	if(user_pwd)		free(user_pwd);	user_id = (char*)malloc(id_len + 1);	memcpy(user_id, ED_Fetion_ID->text().toUtf8().data(), id_len);	user_id[id_len] = '\0';	user_pwd = (char*)malloc(pwd_len+1);	memcpy(user_pwd, ED_Fetion_Pwd->text().toUtf8().data(), pwd_len);	user_pwd[pwd_len] = '\0';	char * poxy = getCacheServerAdd(user_id);	if(poxy) {		fx_set_serve_address(poxy);		free(poxy);	}	else		fx_set_unknow_serve_address();		QString state = loginState->currentText(); 	if( state == tr("offline") )		fx_set_login_status(FX_STATUS_OFFLINE);	else		if( state == tr("busy") )			fx_set_login_status(FX_STATUS_BUSY);		else			if( state == tr("away") )				fx_set_login_status(FX_STATUS_AWAY);			else				fx_set_login_status(FX_STATUS_ONLINE);	set_login_button_state(false);//	fx_set_proxy("221.130.46.144:8080");	if(!fx_login(user_id, user_pwd, My_EventListener, this))	{		set_login_button_state(true);		Login_State->setText( tr("password error"));	}	if (loginTimer.isActive())		loginTimer.stop();	loginTimer.start(1000*35);}void FxLoginWindow::login_timer(){	if (loginTimer.isActive())		loginTimer.stop();		Login_State->setText(tr("login time out"));	set_login_button_state(true);}bool FxLoginWindow::eventFilter(QObject *target, QEvent *event){   	if (event->type() == QEvent::KeyPress ) {		QKeyEvent *keyEvent = (QKeyEvent *) event;		if (keyEvent->key() == Qt::Key_Return) {			login();			return true;		}	}    return QObject::eventFilter(target, event);}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品乱码人人做人人爱| 91福利在线免费观看| 亚洲国产精品一区二区www| 国产精品黄色在线观看| 国产欧美日韩激情| 国产欧美综合色| 日本一区二区在线不卡| 欧美激情综合在线| 亚洲欧洲一区二区三区| 亚洲色图在线播放| 亚洲色图丝袜美腿| 亚洲成人午夜电影| 美女视频免费一区| 老司机精品视频线观看86 | 精品成人一区二区三区| 日韩欧美www| 国产日韩欧美a| 亚洲美女少妇撒尿| 日韩va欧美va亚洲va久久| 另类欧美日韩国产在线| 激情欧美一区二区三区在线观看| 国产综合色产在线精品| 成人一级视频在线观看| 一本大道av伊人久久综合| 欧美日韩成人在线一区| 精品福利一区二区三区| 亚洲欧美日韩电影| 麻豆91精品91久久久的内涵| 从欧美一区二区三区| 欧美性淫爽ww久久久久无| 欧美成va人片在线观看| 欧美国产日韩a欧美在线观看| 亚洲视频综合在线| 久久精品国产精品亚洲精品| 成人av网站在线观看| 欧美精品一级二级三级| 国产精品天干天干在观线| 亚洲二区视频在线| 成人深夜视频在线观看| 欧美一区二区视频在线观看| 国产精品女同一区二区三区| 免费观看一级特黄欧美大片| 99久久综合国产精品| 日韩欧美亚洲国产精品字幕久久久| 国产精品美女久久久久久久久 | 亚洲黄色av一区| 国产一区二区三区最好精华液| 欧洲中文字幕精品| 国产欧美一二三区| 老司机免费视频一区二区| 91亚洲国产成人精品一区二区三| 亚洲精品一区二区在线观看| 香蕉久久夜色精品国产使用方法 | 久久综合久久鬼色| 亚洲动漫第一页| 91年精品国产| 国产欧美精品一区| 国产精品一区二区免费不卡| 欧美一区二区在线免费播放| 1000精品久久久久久久久| 国产精品白丝av| 欧美成人伊人久久综合网| 日韩avvvv在线播放| 日本国产一区二区| 樱桃国产成人精品视频| 91在线国内视频| 国产精品欧美久久久久无广告| 国产米奇在线777精品观看| 欧美成人在线直播| 国产一区在线看| 日韩一级成人av| 日本特黄久久久高潮| 欧美一级久久久| 久久综合综合久久综合| 欧美mv和日韩mv的网站| 蜜臀国产一区二区三区在线播放| 欧美va亚洲va在线观看蝴蝶网| 亚洲欧美日韩成人高清在线一区| 国产91对白在线观看九色| 国产目拍亚洲精品99久久精品| 国产一区二区视频在线播放| 日韩精品一区二区三区蜜臀| 蜜桃久久久久久| 久久久久久久久久美女| 韩国三级电影一区二区| 久久久久久久久久久电影| 国产精品资源在线看| 日本一二三四高清不卡| av一区二区不卡| 亚洲欧美怡红院| 在线观看亚洲精品| 亚洲免费观看视频| 欧美伦理电影网| 精品亚洲国产成人av制服丝袜| 日韩欧美国产wwwww| 国产综合久久久久久久久久久久| 久久精子c满五个校花| 国产福利一区二区三区| 亚洲美女淫视频| 日韩欧美二区三区| 国产乱码精品一区二区三区忘忧草 | 欧美一区二区三区四区高清| 看电视剧不卡顿的网站| 国产精品第四页| 欧美天堂一区二区三区| 国产一区二区91| 亚洲综合久久av| 久久久不卡影院| 日本高清不卡视频| 国产一区二区三区久久悠悠色av| 国产精品全国免费观看高清| 欧美三级日韩在线| 成人午夜激情在线| 午夜激情一区二区| 国产精品萝li| 日韩免费一区二区| 91老师片黄在线观看| 日本不卡123| 亚洲婷婷综合色高清在线| 精品国产免费人成在线观看| 色综合中文字幕| 国产老肥熟一区二区三区| 亚洲一区二区三区四区在线观看 | 国产精品色婷婷久久58| 欧美日韩美女一区二区| 国产一区在线精品| 蜜臀久久99精品久久久画质超高清| 亚洲欧美自拍偷拍| 久久精子c满五个校花| 日韩欧美中文字幕制服| 在线看一区二区| 99精品国产99久久久久久白柏| 国产一区二区三区免费| 蜜臀va亚洲va欧美va天堂| 亚洲综合色婷婷| 一区二区三区 在线观看视频 | 亚洲人成影院在线观看| 久久精品视频网| 精品国产露脸精彩对白| 日韩片之四级片| 欧美一区二区三区在| 欧美日本韩国一区二区三区视频| 色综合天天综合在线视频| 国产不卡视频在线播放| 国产精品一区二区在线播放| 九九视频精品免费| 久久电影网站中文字幕 | fc2成人免费人成在线观看播放| 捆绑变态av一区二区三区| 日韩中文字幕1| 视频一区二区国产| 日本不卡视频在线观看| 婷婷激情综合网| 日韩不卡免费视频| 久久99精品国产.久久久久久| 日韩 欧美一区二区三区| 日韩电影在线免费观看| 免费在线一区观看| 精品一区二区三区在线播放| 日本不卡不码高清免费观看| 久久99国产精品尤物| 国产一区二区91| 99这里只有久久精品视频| aaa亚洲精品一二三区| 91美女蜜桃在线| 欧美伊人精品成人久久综合97| 欧美性色综合网| 欧美一二三四在线| 久久久久久久一区| 亚洲理论在线观看| 日本一不卡视频| 国产精品99久久久久久有的能看| 国产成+人+日韩+欧美+亚洲| 99热国产精品| 欧美日韩国产一级片| 欧美变态口味重另类| 久久久久久日产精品| 亚洲男人的天堂在线aⅴ视频| 午夜精品久久久久久久99樱桃 | 久久九九久精品国产免费直播| 欧美激情在线一区二区三区| 亚洲色图.com| 毛片av一区二区三区| 97久久精品人人爽人人爽蜜臀| 欧美日韩情趣电影| 国产欧美一区二区三区在线老狼| 一区二区三区高清在线| 日本不卡不码高清免费观看| 成人亚洲一区二区一| 91精品国产麻豆| 国产精品乱码妇女bbbb| 午夜精品一区二区三区电影天堂| 精品一区二区三区在线播放视频 | 亚洲色图色小说| 极品销魂美女一区二区三区| 成人av网站免费| 精品国产免费一区二区三区香蕉| 一片黄亚洲嫩模| 懂色av一区二区在线播放| 欧美精品日韩精品|