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

📄 resorgoptions.cpp

📁 ResOrg 图形化管理Vc项目的资源ID的工具的源代码。 ResOrg - Manage and Renumber Resource Symbol IDs Introduction The
💻 CPP
📖 第 1 页 / 共 3 页
字号:
																				m_sAboutMeURL);

	m_bWarnOnSymbolChanges				= (bool)::AfxGetApp()->GetProfileInt(	OPTIONS,
																				OPTION_WARN_SYM_CHANGES,
																				m_bWarnOnSymbolChanges);

	m_bAutoFixNextSymbolValues			= (bool)::AfxGetApp()->GetProfileInt(	OPTIONS,
																				OPTION_AUTOFIX_NEXT_SYM_VALUES,
																				m_bAutoFixNextSymbolValues);

	m_bWarnIfNextSymbolValuesInUse		= (bool)::AfxGetApp()->GetProfileInt(	OPTIONS,
																				OPTION_WARN_NEXT_SYM_VALUES,
																				m_bWarnIfNextSymbolValuesInUse);

	m_bCheckForOutOfRangeSymbols		= (bool)::AfxGetApp()->GetProfileInt(	OPTIONS,
																				OPTION_CHECK_OUT_OF_RANGE_SYMBOLS,
																				m_bCheckForOutOfRangeSymbols);

	m_bFilterMultiFileSymbolsDisplays	= (bool)::AfxGetApp()->GetProfileInt(	OPTIONS,
																				OPTION_FILTER_MULTI_FILE_DISPLAYS,
																				m_bFilterMultiFileSymbolsDisplays);

	m_bAutoSaveSymbolFileConfig			= (bool)::AfxGetApp()->GetProfileInt(	OPTIONS,
																				OPTION_SAVE_CONFIG,
																				m_bShowTextOnToolbars);

	m_bShowTextOnToolbars				= (bool)::AfxGetApp()->GetProfileInt(	OPTIONS,
																				OPTION_DISPLAY_TOOLBAR_TEXT,
																				m_bShowTextOnToolbars);

	m_bAutoReloadFiles					= (bool)::AfxGetApp()->GetProfileInt(	OPTIONS,
																				OPTION_DISPLAY_AUTO_RELOAD,
																				m_bAutoReloadFiles);

	m_bAutoHideWorkspace				= (bool)::AfxGetApp()->GetProfileInt(	OPTIONS,
																				OPTION_DISPLAY_AUTO_HIDE_WORKSPACE,
																				m_bAutoHideWorkspace);

	m_bAskAboutLoading					= (bool)::AfxGetApp()->GetProfileInt(	OPTIONS,
																				OPTION_ADDIN_LOAD_PROMPT,
																				m_bAskAboutLoading);

	m_bXpStyleMenus						= (bool)::AfxGetApp()->GetProfileInt(	OPTIONS,
																				OPTION_DISPLAY_XP_MENUS,
																				m_bXpStyleMenus);
	
	m_sDevStudioVer						= ::AfxGetApp()->GetProfileString(		OPTIONS,
																				OPTION_DS_VER);

	m_bEnableVersionChecking			= (bool)::AfxGetApp()->GetProfileInt(	OPTIONS,
																				OPTION_VERSION_CHECKING,
																				m_bEnableVersionChecking);

	m_nVersionCheckInterval				= ::AfxGetApp()->GetProfileInt(			OPTIONS,
																				OPTION_VERSION_CHECK_INTERVAL,
																				m_nVersionCheckInterval);

	m_bCheckDevelopmentVersions			= (bool)::AfxGetApp()->GetProfileInt(	OPTIONS,
																				OPTION_VERSION_CHECK_DEV,
																				m_bCheckDevelopmentVersions);

	m_timeLastUpdateCheck				= (time_t)::AfxGetApp()->GetProfileInt(	OPTIONS,
																				OPTION_LAST_UPDATE_CHECK,
																				0);

	m_bAskAboutMailingList				= (bool)::AfxGetApp()->GetProfileInt(	OPTIONS,
																				OPTION_MAILING_LIST_PROMPT,
																				m_bAskAboutMailingList);

	CString sDefaultFixedSymbols		= _T("IDR_MAINFRAME");

    CString sFixedSymbols				= ::AfxGetApp()->GetProfileString(		OPTIONS,
																				OPTION_FIXED_SYMBOLS,
																				sDefaultFixedSymbols );

	m_setDefaultFixedSymbols.insert(sDefaultFixedSymbols);

	while (!sFixedSymbols.IsEmpty() )
	{
		CString sSymbol = ::Chomp(sFixedSymbols, _T(",") );
		if (!sSymbol.IsEmpty() )
		{
			m_setFixedSymbols.insert(sSymbol);
		}
	}
	return true;
}


int CResOrgOptions::Configure(CWnd* pParentWnd /*= NULL*/)
{
	CNGPropertySheet dlg(IDS_RESORG_OPTIONS, pParentWnd);

	dlg.m_psh.dwFlags |= PSH_NOAPPLYNOW;		// Remove the "Apply" button

	CResOrgOptionsGeneralPage		GeneralPage;
	CResOrgOptionsSymbolsPage		SymbolsPage;
	CResOrgOptionsFixedSymbolsPage	FixedSymbolsPage;
	CResOrgOptionsAddInPage			AddInPage;
	CResOrgOptionsUpdatesPage		UpdatesPage;

	GeneralPage.m_bShowTextOnToolbars				= ShowTextOnToolbars();
	GeneralPage.m_bAutoReloadFiles					= AutoReloadFiles();
	GeneralPage.m_bAutoHideWorkspace				= AutoHideWorkspace();
	GeneralPage.m_bXpStyleMenus						= UseXpStyleMenus();
		
	SymbolsPage.m_bWarnOnSymbolChanges				= m_bWarnOnSymbolChanges;
	SymbolsPage.m_bAutoFixNextSymbolValues			= AutoFixNextSymbolValues();
	SymbolsPage.m_bWarnIfNextSymbolValuesInUse		= m_bWarnIfNextSymbolValuesInUse;
	SymbolsPage.m_bCheckForOutOfRangeSymbols		= m_bCheckForOutOfRangeSymbols;
	SymbolsPage.m_bFilterMultiFileSymbolsDisplays	= m_bFilterMultiFileSymbolsDisplays;
	SymbolsPage.m_bAutoSaveSymbolFileConfig			= m_bAutoSaveSymbolFileConfig;

	FixedSymbolsPage.SetFixedSymbols(m_setFixedSymbols);
	FixedSymbolsPage.SetDefaultFixedSymbols(m_setDefaultFixedSymbols);

	AddInPage.m_bAskAboutLoading					= m_bAskAboutLoading;

	UpdatesPage.m_bEnableVersionCheck				= m_bEnableVersionChecking;
	UpdatesPage.m_nVersionCheckInterval				= m_nVersionCheckInterval;
	UpdatesPage.m_bCheckDevelopmentVersions			= m_bCheckDevelopmentVersions;

	dlg.AddPage(&GeneralPage);
	dlg.AddPage(&SymbolsPage);
	dlg.AddPage(&FixedSymbolsPage);

#if _MSC_VER < 1300
	dlg.AddPage(&AddInPage);
#endif

	dlg.AddPage(&UpdatesPage);

	int nResult = dlg.DoModal();

	if (IDOK == nResult)
	{
		ShowTextOnToolbars(GeneralPage.m_bShowTextOnToolbars);
		AutoReloadFiles(GeneralPage.m_bAutoReloadFiles);
		AutoHideWorkspace(GeneralPage.m_bAutoHideWorkspace);
		UseXpStyleMenus(GeneralPage.m_bXpStyleMenus);

		WarnOnSymbolChanges(SymbolsPage.m_bWarnOnSymbolChanges);
		AutoFixNextSymbolValues(SymbolsPage.m_bAutoFixNextSymbolValues);
		WarnIfNextSymbolValuesInUse(SymbolsPage.m_bWarnIfNextSymbolValuesInUse);
		CheckForOutOfRangeSymbols(SymbolsPage.m_bCheckForOutOfRangeSymbols);
		FilterMultiFileSymbolsDisplays(SymbolsPage.m_bFilterMultiFileSymbolsDisplays);
		AutoSaveSymbolFileConfig(SymbolsPage.m_bAutoSaveSymbolFileConfig);

		AskAboutLoadingAddIn(AddInPage.m_bAskAboutLoading);
		EnableVersionChecking(UpdatesPage.m_bEnableVersionCheck);

		m_nVersionCheckInterval				= UpdatesPage.m_nVersionCheckInterval;
		CheckDevelopmentVersions(UpdatesPage.m_bCheckDevelopmentVersions);

		FixedSymbolsPage.GetFixedSymbols(m_setFixedSymbols);

		::AfxGetApp()->WriteProfileInt(		OPTIONS,
											OPTION_VERSION_CHECK_INTERVAL,
											m_nVersionCheckInterval);

		CString sFixedSymbols;
		for (std::set<CString>::const_iterator it = m_setFixedSymbols.begin();
			it != m_setFixedSymbols.end();
			it++)
		{
            sFixedSymbols += sFixedSymbols + *it + _T(",");
		}
		::AfxGetApp()->WriteProfileString(	OPTIONS,
											OPTION_FIXED_SYMBOLS,
											sFixedSymbols);
	}
	return nResult;
}


/////////////////////////////////////////////////////////////////////////////
// Operations

bool CResOrgOptions::SetWebURL(const CString& sWebURL)
{
	// For safety, don't accept a new URL if it is blank
	// since we should NEVER lose the homepage URL
	// (the others don't do this so we can disable them
	// if need be)
	if ( (sWebURL != m_sWebURL) && !sWebURL.IsEmpty())
	{
		m_sWebURL = sWebURL;

		::AfxGetApp()->WriteProfileString(OPTIONS,
										OPTION_WEB_URL,
										m_sWebURL);
		return true;
	}
	return false;
}


bool CResOrgOptions::SetEmailURL(const CString& sEmailURL)
{
	// For safety, don't accept a new URL if it is blank
	// since we should NEVER lose the homepage URL
	// (the others don't do this so we can disable them
	// if need be)
	if ( (sEmailURL != m_sEmailURL) && !sEmailURL.IsEmpty())
	{
		m_sEmailURL = sEmailURL;

		::AfxGetApp()->WriteProfileString(OPTIONS,
										OPTION_EMAIL_URL,
										m_sEmailURL);
		return true;
	}
	return false;
}


bool CResOrgOptions::SetFaqURL(const CString& sFaqURL)
{
	if (sFaqURL != m_sFaqURL)
	{
		m_sFaqURL = sFaqURL;

		::AfxGetApp()->WriteProfileString(OPTIONS,
										OPTION_FAQ_URL,
										m_sFaqURL);
		return true;
	}
	return false;
}


bool CResOrgOptions::SetDiscussionBoardURL(const CString& sDiscussionBoardURL)
{
	if (sDiscussionBoardURL != m_sDiscussionBoardURL)
	{
		m_sDiscussionBoardURL = sDiscussionBoardURL;

		::AfxGetApp()->WriteProfileString(OPTIONS,
										OPTION_DISCUSSIONS_URL,
										m_sDiscussionBoardURL);
		return true;
	}
	return false;
}


bool CResOrgOptions::SetKnownBugsURL(const CString& sKnownBugsURL)
{
	if (sKnownBugsURL != m_sKnownBugsURL)
	{
		m_sKnownBugsURL = sKnownBugsURL;

		::AfxGetApp()->WriteProfileString(OPTIONS,
										OPTION_BUGS_URL,
										m_sKnownBugsURL);
		return true;
	}
	return false;
}


bool CResOrgOptions::SetMailingListURL(const CString& sMailingListURL)
{
	if (sMailingListURL != m_sMailingListURL)
	{
		m_sMailingListURL = sMailingListURL;
	
		::AfxGetApp()->WriteProfileString(	OPTIONS,
											OPTION_MAILING_LIST_URL,
											m_sMailingListURL);
		return true;
	}
	return false;
}


bool CResOrgOptions::SetAboutMeURL(const CString& sAboutMeURL)
{
	if (sAboutMeURL != m_sAboutMeURL)
	{
		m_sAboutMeURL = sAboutMeURL;

		::AfxGetApp()->WriteProfileString(	OPTIONS,
											OPTION_ABOUTME_URL,
											m_sAboutMeURL);
		return true;
	}
	return false;
}


bool CResOrgOptions::WarnIfNextSymbolValuesInUse(bool bWarn)
{
	return UpdateBooleanOption(OPTION_WARN_NEXT_SYM_VALUES, m_bWarnIfNextSymbolValuesInUse, bWarn);
}


bool CResOrgOptions::ShowTextOnToolbars(bool bShow)
{
	return UpdateBooleanOption(OPTION_DISPLAY_TOOLBAR_TEXT, m_bShowTextOnToolbars, bShow);
}


bool CResOrgOptions::AutoReloadFiles(bool bEnable)
{
	return UpdateBooleanOption(OPTION_DISPLAY_AUTO_RELOAD, m_bAutoReloadFiles, bEnable);
}


bool CResOrgOptions::AutoFixNextSymbolValues(bool bEnable)
{
	return UpdateBooleanOption(OPTION_AUTOFIX_NEXT_SYM_VALUES, m_bAutoFixNextSymbolValues, bEnable);
}


bool CResOrgOptions::CheckForOutOfRangeSymbols(bool bCheck)
{
	return UpdateBooleanOption(OPTION_CHECK_OUT_OF_RANGE_SYMBOLS, m_bCheckForOutOfRangeSymbols, bCheck);
}


bool CResOrgOptions::FilterMultiFileSymbolsDisplays(bool bFilter)
{
	return UpdateBooleanOption(OPTION_FILTER_MULTI_FILE_DISPLAYS, m_bFilterMultiFileSymbolsDisplays, bFilter);
}


bool CResOrgOptions::WarnOnSymbolChanges(bool bWarn)
{
	return UpdateBooleanOption(OPTION_FILTER_MULTI_FILE_DISPLAYS, m_bWarnOnSymbolChanges, bWarn);
}


bool CResOrgOptions::UseXpStyleMenus(bool bXpStyleMenus)
{
	return UpdateBooleanOption(OPTION_DISPLAY_XP_MENUS, m_bXpStyleMenus, bXpStyleMenus);
}


bool CResOrgOptions::AutoHideWorkspace(bool bEnable)
{
	return UpdateBooleanOption(OPTION_DISPLAY_AUTO_HIDE_WORKSPACE, m_bAutoHideWorkspace, bEnable);
}


bool CResOrgOptions::AutoSaveSymbolFileConfig(bool bEnable)
{
	return UpdateBooleanOption(OPTION_SAVE_CONFIG, m_bAutoSaveSymbolFileConfig, bEnable);
}


bool CResOrgOptions::AskAboutLoadingAddIn(bool bAsk)
{
	return UpdateBooleanOption(OPTION_ADDIN_LOAD_PROMPT, m_bAskAboutLoading, bAsk);
}

⌨️ 快捷键说明

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