Exemplo n.º 1
0
void COptionsPageEdit::SetCtrlState()
{
	bool custom = GetRCheck(XRCID("ID_DEFAULT_CUSTOM"));

	XRCCTRL(*this, "ID_EDITOR", wxTextCtrl)->Enable(custom);
	XRCCTRL(*this, "ID_BROWSE", wxButton)->Enable(custom);

	XRCCTRL(*this, "ID_USEDEFAULT", wxRadioButton)->Enable(!GetRCheck(XRCID("ID_DEFAULT_NONE")) || GetRCheck(XRCID("ID_USEDEFAULT")));
}
bool COptionsPageDateFormatting::Validate()
{
	if (GetRCheck(XRCID("ID_DATEFORMAT_CUSTOM")) && XRCCTRL(*this, "ID_CUSTOM_DATEFORMAT", wxTextCtrl)->GetValue() == _T(""))
		return DisplayError(_T("ID_CUSTOM_DATEFORMAT"), _("Please enter a custom date format."));

	if (GetRCheck(XRCID("ID_TIMEFORMAT_CUSTOM")) && XRCCTRL(*this, "ID_CUSTOM_TIMEFORMAT", wxTextCtrl)->GetValue() == _T(""))
		return DisplayError(_T("ID_CUSTOM_TIMEFORMAT"), _("Please enter a custom time format."));

	return true;
}
CSizeFormat::_format COptionsPageSizeFormatting::GetFormat() const
{
	if (GetRCheck(XRCID("ID_SIZEFORMAT_IEC")))
		return CSizeFormat::iec;
	else if (GetRCheck(XRCID("ID_SIZEFORMAT_SI_BINARY")))
		return CSizeFormat::si1024;
	else if (GetRCheck(XRCID("ID_SIZEFORMAT_SI_DECIMAL")))
		return CSizeFormat::si1000;

	return CSizeFormat::bytes;
}
void COptionsPageConnectionActive::SetCtrlState()
{
	FindWindow(XRCID("ID_LOWESTPORT"))->Enable(GetCheck(XRCID("ID_LIMITPORTS")));
	FindWindow(XRCID("ID_HIGHESTPORT"))->Enable(GetCheck(XRCID("ID_LIMITPORTS")));

	int mode;
	if (GetRCheck(XRCID("ID_ACTIVEMODE1")))
		mode = 0;
	else
		mode = GetRCheck(XRCID("ID_ACTIVEMODE2")) ? 1 : 2;
	FindWindow(XRCID("ID_ACTIVEIP"))->Enable(mode == 1);
	FindWindow(XRCID("ID_ACTIVERESOLVER"))->Enable(mode == 2);

	FindWindow(XRCID("ID_NOEXTERNALONLOCAL"))->Enable(mode != 0);
}
bool COptionsPageConnectionFTP::SavePage()
{
	m_pOptions->SetOption(OPTION_USEPASV, GetRCheck(XRCID("ID_PASSIVE")) ? 1 : 0);
	m_pOptions->SetOption(OPTION_ALLOW_TRANSFERMODEFALLBACK, GetCheck(XRCID("ID_FALLBACK")) ? 1 : 0);
	m_pOptions->SetOption(OPTION_FTP_SENDKEEPALIVE, GetCheck(XRCID("ID_USEKEEPALIVE")) ? 1 : 0);
	return true;
}
Exemplo n.º 6
0
bool COptionsPageEdit::SavePage()
{
	COptions* pOptions = COptions::Get();

	if (GetRCheck(XRCID("ID_DEFAULT_CUSTOM")))
		pOptions->SetOption(OPTION_EDIT_DEFAULTEDITOR, _T("2") + GetText(XRCID("ID_EDITOR")));
	else 
		pOptions->SetOption(OPTION_EDIT_DEFAULTEDITOR, GetRCheck(XRCID("ID_DEFAULT_TEXT")) ? _T("1") : _T("0"));

	if (GetRCheck(XRCID("ID_USEDEFAULT")))
		pOptions->SetOption(OPTION_EDIT_ALWAYSDEFAULT, 1);
	else
		pOptions->SetOption(OPTION_EDIT_ALWAYSDEFAULT, 0);

	SetOptionFromCheck(XRCID("ID_EDIT_TRACK_LOCAL"), OPTION_EDIT_TRACK_LOCAL);
		
	return true;
}
Exemplo n.º 7
0
bool COptionsPageProxy::SavePage()
{
	SetOptionFromText(XRCID("ID_PROXY_HOST"), OPTION_PROXY_HOST);
	SetOptionFromText(XRCID("ID_PROXY_PORT"), OPTION_PROXY_PORT);
	SetOptionFromText(XRCID("ID_PROXY_USER"), OPTION_PROXY_USER);
	SetOptionFromText(XRCID("ID_PROXY_PASS"), OPTION_PROXY_PASS);

	int type;
	if (GetRCheck(XRCID("ID_PROXYTYPE_HTTP")))
		type = 1;
	else if (GetRCheck(XRCID("ID_PROXYTYPE_SOCKS5")))
		type = 2;
	else
		type = 0;
	m_pOptions->SetOption(OPTION_PROXY_TYPE, type);

	return true;
}
bool COptionsPageDateFormatting::SavePage()
{
	wxString dateFormat;
	if (GetRCheck(XRCID("ID_DATEFORMAT_CUSTOM")))
		dateFormat = _T("2") + XRCCTRL(*this, "ID_CUSTOM_DATEFORMAT", wxTextCtrl)->GetValue();
	else if (GetRCheck(XRCID("ID_DATEFORMAT_ISO")))
		dateFormat = _T("1");
	else
		dateFormat = _T("0");
	m_pOptions->SetOption(OPTION_DATE_FORMAT, dateFormat);

	wxString timeFormat;
	if (GetRCheck(XRCID("ID_TIMEFORMAT_CUSTOM")))
		timeFormat = _T("2") + XRCCTRL(*this, "ID_CUSTOM_TIMEFORMAT", wxTextCtrl)->GetValue();
	else if (GetRCheck(XRCID("ID_TIMEFORMAT_ISO")))
		timeFormat = _T("1");
	else
		timeFormat = _T("0");
	m_pOptions->SetOption(OPTION_TIME_FORMAT, timeFormat);

	return true;
}
bool COptionsPageConnectionActive::SavePage()
{
	SetOptionFromCheck(XRCID("ID_LIMITPORTS"), OPTION_LIMITPORTS);

	SetIntOptionFromText(XRCID("ID_LOWESTPORT"), OPTION_LIMITPORTS_LOW);
	SetIntOptionFromText(XRCID("ID_HIGHESTPORT"), OPTION_LIMITPORTS_HIGH);

	int mode;
	if (GetRCheck(XRCID("ID_ACTIVEMODE1")))
		mode = 0;
	else
		mode = GetRCheck(XRCID("ID_ACTIVEMODE2")) ? 1 : 2;
	m_pOptions->SetOption(OPTION_EXTERNALIPMODE, mode);

	if (mode == 1)
		SetOptionFromText(XRCID("ID_ACTIVEIP"), OPTION_EXTERNALIP);
	else if (mode == 2)
		SetOptionFromText(XRCID("ID_ACTIVERESOLVER"), OPTION_EXTERNALIPRESOLVER);
	SetOptionFromCheck(XRCID("ID_NOEXTERNALONLOCAL"), OPTION_NOEXTERNALONLOCAL);

	return true;
}
Exemplo n.º 10
0
bool COptionsPageFtpProxy::SavePage()
{
	SetOptionFromText(XRCID("ID_PROXY_HOST"), OPTION_FTP_PROXY_HOST);
	SetOptionFromText(XRCID("ID_PROXY_USER"), OPTION_FTP_PROXY_USER);
	SetOptionFromText(XRCID("ID_PROXY_PASS"), OPTION_FTP_PROXY_PASS);

	int type = 0;
	if (GetRCheck(XRCID("ID_PROXYTYPE_USER")))
		type = 1;
	else if (GetRCheck(XRCID("ID_PROXYTYPE_SITE")))
		type = 2;
	else if (GetRCheck(XRCID("ID_PROXYTYPE_OPEN")))
		type = 3;
	else if (GetRCheck(XRCID("ID_PROXYTYPE_CUSTOM")))
	{
		SetOptionFromText(XRCID("ID_LOGINSEQUENCE"), OPTION_FTP_PROXY_CUSTOMLOGINSEQUENCE);
		type = 4;
	}
	m_pOptions->SetOption(OPTION_FTP_PROXY_TYPE, type);

	return true;
}
Exemplo n.º 11
0
bool COptionsPageEdit::Validate()
{
	bool failure = false;

	const bool custom = GetRCheck(XRCID("ID_DEFAULT_CUSTOM"));
	wxString editor;
	if (custom)
	{
		editor = GetText(XRCID("ID_EDITOR"));
		editor.Trim(true);
		editor.Trim(false);
		SetText(XRCID("EDITOR"), editor, failure);

		if (editor != _T(""))
		{
			wxString args;
			if (!UnquoteCommand(editor, args))
				return DisplayError(_T("ID_EDITOR"), _("Default editor not properly quoted."));

			if (editor == _T(""))
				return DisplayError(_T("ID_EDITOR"), _("Empty quoted string."));

			if (!ProgramExists(editor))
				return DisplayError(_T("ID_EDITOR"), _("The file selected as default editor does not exist."));
		}
	}

	if (GetRCheck(XRCID("ID_USEDEFAULT")))
	{
		if (GetRCheck(XRCID("ID_DEFAULT_NONE")) ||
			(custom && editor.empty()))
		{
			return DisplayError(_T("ID_EDITOR"), _("A default editor needs to be set."));
		}
	}

	return true;
}
bool COptionsPageConnectionActive::Validate()
{
	// Validate port limiting settings
	if (GetCheck(XRCID("ID_LIMITPORTS")))
	{
		wxTextCtrl* pLow = XRCCTRL(*this, "ID_LOWESTPORT", wxTextCtrl);

		long low;
		if (!pLow->GetValue().ToLong(&low) || low < 1024 || low > 65535)
			return DisplayError(pLow, _("Lowest available port has to be a number between 1024 and 65535."));

		wxTextCtrl* pHigh = XRCCTRL(*this, "ID_LOWESTPORT", wxTextCtrl);

		long high;
		if (!pHigh->GetValue().ToLong(&high) || high < 1024 || high > 65535)
			return DisplayError(pHigh, _("Highest available port has to be a number between 1024 and 65535."));

		if (low > high)
			return DisplayError(pLow, _("The lowest available port has to be less or equal than the highest available port."));
	}

	int mode;
	if (GetRCheck(XRCID("ID_ACTIVEMODE1")))
		mode = 0;
	else
		mode = GetRCheck(XRCID("ID_ACTIVEMODE2")) ? 1 : 2;

	if (mode == 1)
	{
		wxTextCtrl* pActiveIP = XRCCTRL(*this, "ID_ACTIVEIP", wxTextCtrl);
		if (!IsIpAddress(pActiveIP->GetValue()))
			return DisplayError(pActiveIP, _("You have to enter a valid IP address."));
	}

	return true;
}
Exemplo n.º 13
0
bool COptionsPageDateFormatting::Validate()
{
	if (GetRCheck(XRCID("ID_DATEFORMAT_CUSTOM"))) {
		wxString const dateformat = XRCCTRL(*this, "ID_CUSTOM_DATEFORMAT", wxTextCtrl)->GetValue();
		if (dateformat.empty()) {
			return DisplayError(_T("ID_CUSTOM_DATEFORMAT"), _("Please enter a custom date format."));
		}
		if (!CDateTime::VerifyFormat(dateformat)) {
			return DisplayError(_T("ID_CUSTOM_DATEFORMAT"), _("The custom date format is invalid or contains unsupported format specifiers."));
		}
	}

	if (GetRCheck(XRCID("ID_TIMEFORMAT_CUSTOM"))) {
		wxString const timeformat = XRCCTRL(*this, "ID_CUSTOM_TIMEFORMAT", wxTextCtrl)->GetValue();
		if (timeformat.empty()) {
			return DisplayError(_T("ID_CUSTOM_TIMEFORMAT"), _("Please enter a custom time format."));
		}
		if (!CDateTime::VerifyFormat(timeformat)) {
			return DisplayError(_T("ID_CUSTOM_TIMEFORMAT"), _("The custom time format is invalid or contains unsupported format specifiers."));
		}
	}

	return true;
}
Exemplo n.º 14
0
void COptionsPageDateFormatting::SetCtrlState()
{
	XRCCTRL(*this, "ID_CUSTOM_DATEFORMAT", wxTextCtrl)->Enable(GetRCheck(XRCID("ID_DATEFORMAT_CUSTOM")));
	XRCCTRL(*this, "ID_CUSTOM_TIMEFORMAT", wxTextCtrl)->Enable(GetRCheck(XRCID("ID_TIMEFORMAT_CUSTOM")));
}
bool COptionsPageFileExists::SavePage()
{
	enum CFileExistsNotification::OverwriteAction value;
	if (GetRCheck(XRCID("ID_DL_OVERWRITE")))
		value = CFileExistsNotification::overwrite;
	else if (GetRCheck(XRCID("ID_DL_OVERWRITEIFNEWER")))
		value = CFileExistsNotification::overwriteNewer;
	else if (GetRCheck(XRCID("ID_DL_OVERWRITESIZE")))
		value = CFileExistsNotification::overwriteSize;
	else if (GetRCheck(XRCID("ID_DL_OVERWRITESIZEORNEWER")))
		value = CFileExistsNotification::overwriteSizeOrNewer;
	else if (GetRCheck(XRCID("ID_DL_RESUME")))
		value = CFileExistsNotification::resume;
	else if (GetRCheck(XRCID("ID_DL_RENAME")))
		value = CFileExistsNotification::rename;
	else if (GetRCheck(XRCID("ID_DL_SKIP")))
		value = CFileExistsNotification::skip;
	else
		value = CFileExistsNotification::ask;
	m_pOptions->SetOption(OPTION_FILEEXISTS_DOWNLOAD, value);

	if (GetRCheck(XRCID("ID_UL_OVERWRITE")))
		value = CFileExistsNotification::overwrite;
	else if (GetRCheck(XRCID("ID_UL_OVERWRITEIFNEWER")))
		value = CFileExistsNotification::overwriteNewer;
	else if (GetRCheck(XRCID("ID_UL_OVERWRITESIZE")))
		value = CFileExistsNotification::overwriteSize;
	else if (GetRCheck(XRCID("ID_UL_OVERWRITESIZEORNEWER")))
		value = CFileExistsNotification::overwriteSizeOrNewer;
	else if (GetRCheck(XRCID("ID_UL_RESUME")))
		value = CFileExistsNotification::resume;
	else if (GetRCheck(XRCID("ID_UL_RENAME")))
		value = CFileExistsNotification::rename;
	else if (GetRCheck(XRCID("ID_UL_SKIP")))
		value = CFileExistsNotification::skip;
	else
		value = CFileExistsNotification::ask;
	m_pOptions->SetOption(OPTION_FILEEXISTS_UPLOAD, value);

	m_pOptions->SetOption(OPTION_ASCIIRESUME, GetCheck(XRCID("ID_ASCIIRESUME")));
	return true;
}