Example #1
0
void INI_SaveSettings()
{
	wchar_t filename[] = L".\\Durazno.ini";

	SaveEntry(L"General", -1, L"INIversion", INIversion, filename);
	SaveString(L"General", -1, L"LoadDLL", customDLL, filename);

	for(s32 port = 0; port < 4; port++)
	{
		SaveEntry(L"Controller", port, L"Disable", settings[port].isDisabled?1:0, filename);
		SaveEntry(L"Controller", port, L"Dummy", settings[port].isDummy?1:0, filename);
		
		SaveEntry(L"Controller", port, L"AxisInvertedLX", settings[port].axisInverted[GP_AXIS_LX]?1:0, filename);
		SaveEntry(L"Controller", port, L"AxisInvertedLY", settings[port].axisInverted[GP_AXIS_LY]?1:0, filename);
		SaveEntry(L"Controller", port, L"AxisInvertedRX", settings[port].axisInverted[GP_AXIS_RX]?1:0, filename);
		SaveEntry(L"Controller", port, L"AxisInvertedRY", settings[port].axisInverted[GP_AXIS_RY]?1:0, filename);

		SaveEntry(L"Controller", port, L"TriggerMin", settings[port].triggerMin, filename);
		SaveEntry(L"Controller", port, L"TriggerMax", settings[port].triggerMax, filename);
		SaveEntry(L"Controller", port, L"Linearity", (s32)(settings[port].linearity*10) +30, filename);
		SaveEntry(L"Controller", port, L"Deadzone", (s32)(settings[port].deadzone * 100), filename);
		SaveEntry(L"Controller", port, L"AntiDeadzone", (s32)(settings[port].antiDeadzone * 100), filename);
		SaveEntry(L"Controller", port, L"Rumble", (s32)(settings[port].rumble * 100), filename);
		SaveEntry(L"Controller", port, L"Port", (s32)(settings[port].port), filename);

		SaveRemap(port, filename);
	}
}
void CSearchDialog::StartSearching()
{
	ShowWindow(GetDlgItem(m_hDlg, IDC_LINK_STATUS), SW_HIDE);
	ShowWindow(GetDlgItem(m_hDlg, IDC_STATIC_STATUS), SW_SHOW);

	m_AwaitingSearchItems.clear();
	m_SearchItemsMapInternal.clear();

	ListView_DeleteAllItems(GetDlgItem(m_hDlg, IDC_LISTVIEW_SEARCHRESULTS));

	TCHAR szBaseDirectory[MAX_PATH];
	TCHAR szSearchPattern[MAX_PATH];

	/* Get the directory and name, and remove leading and
	trailing whitespace. */
	/* TODO: Verify fields. */
	GetDlgItemText(m_hDlg, IDC_COMBO_DIRECTORY, szBaseDirectory,
		SIZEOF_ARRAY(szBaseDirectory));
	PathRemoveBlanks(szBaseDirectory);
	GetDlgItemText(m_hDlg, IDC_COMBO_NAME, szSearchPattern,
		SIZEOF_ARRAY(szSearchPattern));
	PathRemoveBlanks(szSearchPattern);

	BOOL bSearchSubFolders = IsDlgButtonChecked(m_hDlg, IDC_CHECK_SEARCHSUBFOLDERS) ==
		BST_CHECKED;

	BOOL bUseRegularExpressions = IsDlgButtonChecked(m_hDlg, IDC_CHECK_USEREGULAREXPRESSIONS) ==
		BST_CHECKED;

	BOOL bCaseInsensitive = IsDlgButtonChecked(m_hDlg, IDC_CHECK_CASEINSENSITIVE) ==
		BST_CHECKED;

	/* Turn search patterns of the form '???' into '*???*', and
	use this modified string to search. */
	if(!bUseRegularExpressions && lstrlen(szSearchPattern) > 0)
	{
		if(szSearchPattern[0] != '*' &&
			szSearchPattern[lstrlen(szSearchPattern) - 1] != '*')
		{
			TCHAR szTemp[MAX_PATH];

			StringCchPrintf(szTemp, SIZEOF_ARRAY(szTemp), _T("*%s*"),
				szSearchPattern);
			StringCchCopy(szSearchPattern, SIZEOF_ARRAY(szSearchPattern),
				szTemp);
		}
	}

	DWORD dwAttributes = 0;

	if(IsDlgButtonChecked(m_hDlg, IDC_CHECK_ARCHIVE) == BST_CHECKED)
		dwAttributes |= FILE_ATTRIBUTE_ARCHIVE;

	if(IsDlgButtonChecked(m_hDlg, IDC_CHECK_HIDDEN) == BST_CHECKED)
		dwAttributes |= FILE_ATTRIBUTE_HIDDEN;

	if(IsDlgButtonChecked(m_hDlg, IDC_CHECK_READONLY) == BST_CHECKED)
		dwAttributes |= FILE_ATTRIBUTE_READONLY;

	if(IsDlgButtonChecked(m_hDlg, IDC_CHECK_SYSTEM) == BST_CHECKED)
		dwAttributes |= FILE_ATTRIBUTE_SYSTEM;

	m_pSearch = new CSearch(m_hDlg, szBaseDirectory, szSearchPattern,
		dwAttributes, bUseRegularExpressions, bCaseInsensitive, bSearchSubFolders);
	m_pSearch->AddRef();

	/* Save the search directory and search pattern (only if they are not
	the same as the most recent entry). */
	BOOL bSaveEntry = FALSE;

	if(m_sdps->m_pSearchDirectories->empty() ||
		lstrcmp(szBaseDirectory, m_sdps->m_pSearchDirectories->begin()->c_str()) != 0)
	{
		bSaveEntry = TRUE;
	}

	if(bSaveEntry)
	{
		SaveEntry(IDC_COMBO_DIRECTORY, *m_sdps->m_pSearchDirectories);
	}

	bSaveEntry = FALSE;

	if(m_sdps->m_pSearchPatterns->empty() ||
		lstrcmp(szSearchPattern, m_sdps->m_pSearchPatterns->begin()->c_str()) != 0)
	{
		bSaveEntry = TRUE;
	}

	if(bSaveEntry)
	{
		SaveEntry(IDC_COMBO_NAME, *m_sdps->m_pSearchPatterns);
	}

	GetDlgItemText(m_hDlg, IDSEARCH, m_szSearchButton, SIZEOF_ARRAY(m_szSearchButton));

	TCHAR szTemp[64];

	LoadString(GetInstance(), IDS_STOP, szTemp, SIZEOF_ARRAY(szTemp));
	SetDlgItemText(m_hDlg, IDSEARCH, szTemp);

	m_bSearching = TRUE;

	/* Create a background thread, and search using it... */
	HANDLE hThread = CreateThread(NULL, 0, NSearchDialog::SearchThread,
		reinterpret_cast<LPVOID>(m_pSearch), 0, NULL);
	CloseHandle(hThread);
}
Example #3
0
void INI_SaveSettings(SETTINGS *settings)
{
	wchar_t filename[] = L".\\Durazno.ini";

	SaveEntry(L"General", -1, L"INIversion", INIversion, filename);
	SaveString(L"General", -1, L"LoadDLL", customDLL, filename);

	for(s32 port = 0; port < 4; port++)
	{
		SETTINGS &set = settings[port];

		SaveEntry(L"Controller", port, L"Port", (s32)(set.port), filename);
		SaveEntry(L"Controller", port, L"Dummy", set.isDummy ? 1 : 0, filename);
		SaveEntry(L"Controller", port, L"Disable", set.isDisabled ? 1 : 0, filename);
		SaveEntry(L"Controller", port, L"LinearDZ", set.linearDZ ? 1 : 0, filename);
		SaveEntry(L"Controller", port, L"LinearADZ", set.linearADZ ? 1 : 0, filename);

		SaveEntry(L"Controller", port, L"AxisInvertedLX", set.stickL.invertedX ? 1 : 0, filename);
		SaveEntry(L"Controller", port, L"AxisInvertedLY", set.stickL.invertedY ? 1 : 0, filename);
		SaveEntry(L"Controller", port, L"AxisInvertedRX", set.stickR.invertedX ? 1 : 0, filename);
		SaveEntry(L"Controller", port, L"AxisInvertedRY", set.stickR.invertedY ? 1 : 0, filename);

		SaveEntry(L"Controller", port, L"TriggerMin", set.triggerMin, filename);
		SaveEntry(L"Controller", port, L"TriggerMax", set.triggerMax, filename);

		SaveEntry(L"Controller", port, L"Rumble", (s32)(set.rumble * FACTOR), filename);

		SaveEntry(L"Controller", port, L"L_Linearity", (s32)(set.stickL.linearity * 100.0) + 300, filename);
		SaveEntry(L"Controller", port, L"L_Deadzone", (s32)(set.stickL.deadzone * FACTOR), filename);
		SaveEntry(L"Controller", port, L"L_AntiDeadzone", (s32)(set.stickL.antiDeadzone * FACTOR), filename);

		SaveEntry(L"Controller", port, L"R_Linearity", (s32)(set.stickR.linearity * 100.0) + 300, filename);
		SaveEntry(L"Controller", port, L"R_Deadzone", (s32)(set.stickR.deadzone * FACTOR), filename);
		SaveEntry(L"Controller", port, L"R_AntiDeadzone", (s32)(set.stickR.antiDeadzone * FACTOR), filename);

		SaveRemap(port, filename, settings);
	}
}