Esempio n. 1
0
void ReportSendQueueTimeouts(HWND hwndSender)
{
	MessageSendQueueItem *item, *item2;
	int timeout = db_get_dw(NULL, SRMMMOD, SRMSGSET_MSGTIMEOUT, SRMSGDEFSET_MSGTIMEOUT);

	mir_cslock lock(queueMutex);

	for (item = global_sendQueue; item != NULL; item = item2) {
		item2 = item->next;
		if (item->timeout < timeout) {
			item->timeout += 1000;
			if (item->timeout >= timeout) {
				if (item->hwndSender == hwndSender && item->hwndErrorDlg == NULL) {
					if (hwndSender != NULL) {
						ErrorWindowData *ewd = (ErrorWindowData *) mir_alloc(sizeof(ErrorWindowData));
						ewd->szName = GetNickname(item->hContact, item->proto);
						ewd->szDescription = mir_tstrdup(TranslateT("The message send timed out."));
						ewd->szText = GetSendBufferMsg(item);
						ewd->hwndParent = hwndSender;
						ewd->queueItem = item;
						PostMessage(hwndSender, DM_SHOWERRORMESSAGE, 0, (LPARAM)ewd);
					} else {
						/* TODO: Handle errors outside messaging window in a better way */
						RemoveSendQueueItem(item);
					}
				}
			}
		}
	}
}
Esempio n. 2
0
void UShooterLocalPlayer::LoadSaveGame()
{
	auto SlotName = GetNickname();
	auto UserIndex = GetControllerId();

//#if PLATFORM_WOLF
//	FPlatformMisc::GetUniqueStringNameForControllerId(UserIdex, SaveGameName);
//#endif

	if (nullptr != SaveGame)
	{
		if (SaveGame->GetUserIndex() != UserIndex || SaveGame->GetSlotName() != SlotName)
		{
			SaveGame->SaveIfDirty();
			SaveGame = nullptr;
		}
	}

	if (nullptr == SaveGame)
	{
		const auto IdentityInterface = Online::GetIdentityInterface();
		if (IdentityInterface.IsValid() && GetPreferredUniqueNetId().IsValid())
		{
			UserIndex = IdentityInterface->GetPlatformUserIdFromUniqueNetId(*GetPreferredUniqueNetId());
		}

		SaveGame = UShooterSaveGame::Load(SlotName, UserIndex);
	}
}
Esempio n. 3
0
	ChannelOptions IrcJoinGroupChat::GetChannelInfo () const
	{
		ChannelOptions info;
		info.ServerName_ = GetServer ();
		info.ChannelName_ = GetChannel ();
		info.ChannelPassword_ = QString ();
		info.ChannelNickname_ = GetNickname ();

		return info;
	}
	ServerOptions IrcJoinGroupChat::GetServerOptions () const
	{
		ServerOptions so;
		so.ServerName_ = GetServer ();
		so.ServerPort_ = GetPort ();
		so.ServerEncoding_ = GetEncoding ();
		so.ServerPassword_ = QString ();
		so.SSL_ = GetSSL ();
		so.ServerNickName_ = GetNickname ();
		return so;
	}
Esempio n. 5
0
	void ToxProtocol::RegisterAccount (const QString& name, const QList<QWidget*>& widgets)
	{
		const auto detailsPage = qobject_cast<AccRegisterDetailsPage*> (widgets.value (0));

		auto acc = new ToxAccount { name, this };
		acc->SetNickname (detailsPage->GetNickname ());
		SaveAccount (acc);

		Accounts_ << acc;
		emit accountAdded (acc);

		InitConnections (acc);
	}
Esempio n. 6
0
static TCHAR* GetTabName(HANDLE *hContact)
{
	int len;
	TCHAR *result = NULL;
	if (hContact) {
		result = GetNickname(hContact, NULL);
		len = lstrlen(result);
		if (g_dat->flags & SMF_LIMITNAMES) {
			if (len > 20 ) {
				result[20] = '\0';
			}
		}
	}
	return result;
}
Esempio n. 7
0
void scene_BuildPlayerWin()
{
	DmaArrayCopy(newbtlwinsPal, MEM_PAL + 0x1a0);
	DmaArrayCopy(hpbarPal, MEM_PAL + 0x180);
	DmaCopy(newbtlwinsTiles + 0x400, MEM_VRAM + 0x6400, 0xa00);

	u16* BG = (u16*)0x600C000;

	int i,x=16,y=9;
	for(i = 0; i < 78; i++)
	{
		BG[(y*32)+x] = (800 | 0xD000) + i;
		if(y == 11 &&  x > 21 && x < 28) BG[(y*32)+x] = (800 | 0xC000) + i;
		if(y == 12 &&  x > 17 && x < 24) BG[(y*32)+x] = (800 | 0xC000) + i;
		x++;
		if(x==32)
		{
			x=16;
			y++;
		}
	}

	char genderchar = 0x7F, gendercolor = 1;
	int species = GetMonsterStats(fighters[0].mon, pSpecies);
	ssPersonal *myP = (ssPersonal*)&fighters[0].mon->Personal;

	if(BaseStats[species].Gender < 0xFF)
	{
		if((u8)myP->Personal > BaseStats[species].Gender)
		{
			genderchar = 0x8A; //Male
			gendercolor = 11;
		} else
		{
			genderchar = 0x8B; //Female
			gendercolor = 10;
		}
	}
	char foo[64];
	sprintf(foo, "%s\a\1%c%c", GetNickname(fighters[0].mon), gendercolor, genderchar);
	scene_WriteInBox(0, foo);
	sprintf(foo, "%d/%d", GetMonsterStats(fighters[0].mon, pCurrentHP), GetMonsterStats(fighters[0].mon, pTotalHP));
	scene_WriteInBox(2, foo);
	MakeHPBar(GetMonsterStats(fighters[0].mon, pCurrentHP), GetMonsterStats(fighters[0].mon, pTotalHP), MEM_VRAM + 0x68c0, 0);
	MakeEXPBar(fighters[0].mon);

	InstallHBlank(scene_StatusWindows);
}
Esempio n. 8
0
void scene_BuildOpponentWin()
{
	DmaArrayCopy(newbtlwinsPal, MEM_PAL + 0x1a0);
	DmaArrayCopy(hpbarPal, MEM_PAL + 0x180);
	DmaCopy(newbtlwinsTiles, MEM_VRAM + 0x5c00, 0x800);

	u16* BG = (u16*)0x600C000;

	int i,x=0,y=0;
	for(i = 0; i < 62; i++)
	{
		BG[(y*32)+x] = (736 | 0xD000) + i;
		if(y == 2 &&  x > 5 && x < 12) BG[(y*32)+x] = (736 | 0xC000) + i;
		x++;
		if(x==16)
		{
			x=0;
			y++;
		}
	}

	char genderchar = 0x7F, gendercolor = 1;
	int species = GetMonsterStats(fighters[1].mon, pSpecies);
	ssPersonal *myP = (ssPersonal*)&fighters[1].mon->Personal;

	if(GETBIT(MyDex.caught, species))
		DmaCopy(newbtlwinsTiles + 0x960, MEM_VRAM + 0x5e20, 0x20);

	if(BaseStats[species].Gender < 0xFF)
	{
		if((u8)myP->Personal > BaseStats[species].Gender)
		{
			genderchar = 0x8A; //Male
			gendercolor = 11;
		} else
		{
			genderchar = 0x8B; //Female
			gendercolor = 10;
		}
	}
	char foo[64];
	sprintf(foo, "%s\a\1%c%c", GetNickname(fighters[1].mon), gendercolor, genderchar);
	scene_WriteInBox(1, foo);
	MakeHPBar(GetMonsterStats(fighters[1].mon, pCurrentHP), GetMonsterStats(fighters[1].mon, pTotalHP), MEM_VRAM + 0x60c0, 0);

	InstallHBlank(scene_StatusWindows);
}
void AddContactWidget::on_addContactButton_clicked()
{
	QRegExp rx("^[\\w\\d][\\w\\d\\-.]*@[\\w\\d]{2}[\\w\\d\\-]*.[\\w\\d]{2}(\\.?[\\w\\d\\-]+)*$");
	int pos;
	QRegExpValidator emailValidator(rx,0);
	QString email(ui.emailEdit->text());
	if (emailValidator.validate(email,pos) == QValidator::Acceptable)
	{
		m_selctedGrId = ui.groupComboBox->itemData(ui.groupComboBox->currentIndex()).toUInt();		
		m_contactEmail = ui.emailEdit->text();
                m_client->Protocol()->AddContact(GetContactEmail(),GetNickname(),GetSelectedGroupId());
                close();
	}
	else
	{
		QMessageBox::critical(this,tr("Incorrect email"),tr("Email you entered is not valid or empty!"),QMessageBox::Ok,QMessageBox::Ok);
	}
}
Esempio n. 10
0
	ServerOptions IrcJoinGroupChat::GetConnectionOptions () const
	{
		ServerOptions opts;
		opts.NetworkName_ = QString ();
		opts.ServerName_ = GetServer ();
		opts.ServerPort_ = GetPort ();
		opts.ServerPassword_ = QString ();
		opts.ServerEncoding_ = GetEncoding ();
		opts.SSL_ = GetSSL ();
		opts.ServerNicknames_ << GetNickname ();
		QString username;
		if (SelectedAccount_->GetServers ().isEmpty ())
			username = Core::Instance ().GetDefaultUserName ();
		else
			username = SelectedAccount_->GetServers ().at (0).ServerRealName_;
		
		opts.ServerRealName_ = username;

		return opts;
	}
void UShooterLocalPlayer::LoadPersistentUser()
{
    // if we changed controllerid / user, then we need to load the appropriate persistent user.
    if (PersistentUser != nullptr && ( GetControllerId() != PersistentUser->GetUserIndex() || GetNickname() != PersistentUser->GetName() ) )
    {
        PersistentUser->SaveIfDirty();
        PersistentUser = nullptr;
    }

    if (PersistentUser == NULL)
    {
        // Use the platform id here to be resilient in the face of controller swapping and similar situations.
        FPlatformUserId PlatformId = GetControllerId();

        auto Identity = Online::GetIdentityInterface();
        if (Identity.IsValid() && GetPreferredUniqueNetId().IsValid())
        {
            PlatformId = Identity->GetPlatformUserIdFromUniqueNetId(*GetPreferredUniqueNetId());
        }

        PersistentUser = UShooterPersistentUser::LoadPersistentUser( GetNickname(), PlatformId );
    }
}
void UShooterLocalPlayer::SetControllerId(int32 NewControllerId)
{
    ULocalPlayer::SetControllerId(NewControllerId);

    // if we changed controllerid / user, then we need to load the appropriate persistent user.
    if (PersistentUser != nullptr && ( GetControllerId() != PersistentUser->GetUserIndex() || GetNickname() != PersistentUser->GetName() ) )
    {
        PersistentUser->SaveIfDirty();
        PersistentUser = nullptr;
    }

    if (!PersistentUser)
    {
        LoadPersistentUser();
    }
}
Esempio n. 13
0
static TCHAR* GetWindowTitle(HANDLE *hContact, const char *szProto)
{
	DBVARIANT dbv;
	int isTemplate;
	int len, contactNameLen = 0, statusLen = 0, statusMsgLen = 0, protocolLen = 0;
	TCHAR *p, *tmplt, *szContactName = NULL, *szStatus = NULL, *szStatusMsg = NULL, *szProtocol = NULL, *title;
	TCHAR *pszNewTitleEnd = _tcsdup(TranslateT("Message Session"));
	isTemplate = 0;
	if (hContact && szProto) {
		szContactName = GetNickname(hContact, szProto);
		contactNameLen = lstrlen(szContactName);
		szStatus = strToWcs((char *) CallService(MS_CLIST_GETSTATUSMODEDESCRIPTION, szProto == NULL ? ID_STATUS_OFFLINE : DBGetContactSettingWord(hContact, szProto, "Status", ID_STATUS_OFFLINE), 0), -1, CP_ACP);
		statusLen = lstrlen(szStatus);
		if (!DBGetContactSetting(hContact, "CList", "StatusMsg",&dbv)) {
			if (strlen(dbv.pszVal) > 0) {
				int i, j;
       			szStatusMsg = strToWcs(dbv.pszVal, -1, CP_ACP);
				statusMsgLen = lstrlen(szStatusMsg);
				for (i = j = 0; i < statusMsgLen; i++) {
					if (szStatusMsg[i] == '\r') {
						continue;
					} else if (szStatusMsg[i] == '\n') {
						szStatusMsg[j++] = ' ';
					} else {
						szStatusMsg[j++] = szStatusMsg[i];
					}
				}
				szStatusMsg[j] = '\0';
				statusMsgLen = j;
			}
       		DBFreeVariant(&dbv);
		}

		if (!DBGetContactSetting(NULL, SRMMMOD, SRMSGSET_WINDOWTITLE, &dbv)) {
			isTemplate = 1;
			tmplt = strToWcs(dbv.pszVal, -1, CP_ACP);
			DBFreeVariant(&dbv);
		} else {
			int statusIcon = DBGetContactSettingByte(NULL, SRMMMOD, SRMSGSET_STATUSICON, SRMSGDEFSET_STATUSICON);
			if (statusIcon) {
				tmplt = _T("%name% - ");
			} else {
				tmplt = _T("%name% (%status%) : ");
			}
		}
	} else {
		tmplt = _T("");
	}
	for (len = 0, p = tmplt; *p; p++) {
		if (*p == '%') {
			if (!_tcsncmp(p, _T("%name%"), 6)) {
				len += contactNameLen;
				p += 5;
				continue;
			} else if (!_tcsncmp(p, _T("%status%"), 8)) {
				len += statusLen;
				p += 7;
				continue;
			} else if (!_tcsncmp(p, _T("%statusmsg%"), 11)) {
				len += statusMsgLen;
				p += 10;
				continue;
			}
		}
		len++;
	}
	if (!isTemplate) {
		len += lstrlen(pszNewTitleEnd);
	}
	title = (TCHAR *)malloc(sizeof(TCHAR) * (len + 1));
	for (len = 0, p = tmplt; *p; p++) {
		if (*p == '%') {
			if (!_tcsncmp(p, _T("%name%"), 6)) {
				memcpy(title+len, szContactName, sizeof(TCHAR) * contactNameLen);
				len += contactNameLen;
				p += 5;
				continue;
			} else if (!_tcsncmp(p, _T("%status%"), 8)) {
				memcpy(title+len, szStatus, sizeof(TCHAR) * statusLen);
				len += statusLen;
				p += 7;
				continue;
			} else if (!_tcsncmp(p, _T("%statusmsg%"), 11)) {
				memcpy(title+len, szStatusMsg, sizeof(TCHAR) * statusMsgLen);
				len += statusMsgLen;
				p += 10;
				continue;
			}
		}
		title[len++] = *p;
	}
	if (!isTemplate) {
		memcpy(title+len, pszNewTitleEnd, sizeof(TCHAR) * lstrlen(pszNewTitleEnd));
		len += lstrlen(pszNewTitleEnd);
	}
	title[len] = '\0';
	if (isTemplate) {
		free(tmplt);
	}
	free(szContactName);
	free(szStatus);
	free(pszNewTitleEnd);
	return title;
}