Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code

Unified Diff: src/plugin/PluginUserSettings.cpp

Issue 29330618: Issue #1234 - Eliminate CString from PluginSettings.* and PluginUserSettings.* (Closed)
Patch Set: Created Nov. 20, 2015, 6:37 p.m.
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
View side-by-side diff with in-line comments
Download patch
« src/plugin/PluginSettings.cpp ('K') | « src/plugin/PluginSettings.cpp ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/plugin/PluginUserSettings.cpp
===================================================================
--- a/src/plugin/PluginUserSettings.cpp
+++ b/src/plugin/PluginUserSettings.cpp
@@ -19,7 +19,9 @@
#include "PluginUserSettings.h"
#include "AdblockPlusClient.h"
#include "PluginSettings.h"
+#include "PluginSystem.h"
#include "../shared/Dictionary.h"
+#include "../shared/Utils.h"
#include <unordered_map>
namespace
@@ -150,12 +152,6 @@
return S_OK;
}
-CStringW sGetMessage(const CString& section, const CString& key)
-{
- Dictionary* dictionary = Dictionary::GetInstance();
- return CStringW(dictionary->Lookup(std::string(CW2A(section)), std::string(CW2A(key))).c_str());
-}
-
Eric 2015/11/20 18:46:04 Inlined.
STDMETHODIMP CPluginUserSettings::Invoke(DISPID dispidMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS* pDispparams, VARIANT* pVarResult,
EXCEPINFO* pExcepinfo, UINT* pArgErr)
{
@@ -186,10 +182,11 @@
{
CComBSTR key = pDispparams->rgvarg[0].bstrVal;
CComBSTR section = pDispparams->rgvarg[1].bstrVal;
- CStringW message = sGetMessage((BSTR)section, (BSTR)key);
+ Dictionary* dictionary = Dictionary::GetInstance();
+ std::wstring message = dictionary->Lookup(ToUtf8String(std::wstring(section)), ToUtf8String(std::wstring(key)));
sergei 2015/11/25 09:27:08 Nit: strictly speaking we should use the length ob
Eric 2015/11/25 17:31:02 Done. There are a few other places where we need
sergei 2015/11/26 11:06:18 Sure, feel free to create the issue for it.
pVarResult->vt = VT_BSTR;
- pVarResult->bstrVal = SysAllocString(message);
+ pVarResult->bstrVal = SysAllocString(message.c_str());
}
}
break;
@@ -201,7 +198,7 @@
}
if (pVarResult)
{
- std::map<CString, CString> languageList = settings->GetFilterLanguageTitleList();
+ auto languageList = settings->GetFilterLanguageTitleList();
pVarResult->vt = VT_I4;
pVarResult->lVal = static_cast<LONG>(languageList.size());
@@ -222,15 +219,15 @@
{
int index = pDispparams->rgvarg[0].lVal;
- std::map<CString, CString> languageTitleList = settings->GetFilterLanguageTitleList();
+ auto languageTitleList = settings->GetFilterLanguageTitleList();
if (index < 0 || index >= static_cast<int>(languageTitleList.size()))
- return DISP_E_EXCEPTION;
+ return DISP_E_BADINDEX;
Oleksandr 2015/11/25 03:22:07 Nit: unrelated change.
sergei 2015/11/25 09:27:09 I would not mind to commit it but it's likely not
Eric 2015/11/25 17:31:02 It fixes a defect, actually. Rather than bicker ov
- CString language;
+ std::wstring language;
int loopIndex = 0;
- for (std::map<CString, CString>::const_iterator it = languageTitleList.begin(); it != languageTitleList.end(); ++it)
+ for (auto it = languageTitleList.begin(); it != languageTitleList.end(); ++it)
{
if (loopIndex == index)
{
@@ -241,7 +238,7 @@
}
pVarResult->vt = VT_BSTR;
- pVarResult->bstrVal = SysAllocString(language);
+ pVarResult->bstrVal = SysAllocString(language.c_str());
}
}
break;
@@ -259,15 +256,14 @@
{
int index = pDispparams->rgvarg[0].lVal;
- std::map<CString, CString> languageTitleList = settings->GetFilterLanguageTitleList();
+ auto languageTitleList = settings->GetFilterLanguageTitleList();
if (index < 0 || index >= static_cast<int>(languageTitleList.size()))
- return DISP_E_EXCEPTION;
+ return DISP_E_BADINDEX;
Oleksandr 2015/11/25 03:22:08 Nit: unrelated change.
- CString languageTitle;
-
+ std::wstring languageTitle;
int loopIndex = 0;
- for (std::map<CString, CString>::const_iterator it = languageTitleList.begin(); it != languageTitleList.end(); ++it)
+ for (auto it = languageTitleList.begin(); it != languageTitleList.end(); ++it)
{
if (loopIndex == index)
{
@@ -278,7 +274,7 @@
}
pVarResult->vt = VT_BSTR;
- pVarResult->bstrVal = SysAllocString(languageTitle);
+ pVarResult->bstrVal = SysAllocString(languageTitle.c_str());
}
}
break;
@@ -304,9 +300,9 @@
}
if (pVarResult)
{
- CString url = settings->GetSubscription();
+ std::wstring url = settings->GetSubscription();
pVarResult->vt = VT_BSTR;
- pVarResult->bstrVal = SysAllocString(url);
+ pVarResult->bstrVal = SysAllocString(url.c_str());
}
}
break;
@@ -318,18 +314,18 @@
}
if (pVarResult)
{
- std::vector<std::wstring> whiteList = settings->GetWhiteListedDomainList();
- CString sWhiteList;
- for (size_t i = 0; i < whiteList.size(); i++)
+ auto whiteListDomains = settings->GetWhiteListedDomainList();
+ std::wstring commaSeparatedDomains;
+ for (size_t i = 0; i < whiteListDomains.size(); i++)
{
- if (!sWhiteList.IsEmpty())
+ if (!commaSeparatedDomains.empty())
{
- sWhiteList += ',';
+ commaSeparatedDomains += ',';
}
- sWhiteList += CString(whiteList[i].c_str());
+ commaSeparatedDomains += whiteListDomains[i];
}
pVarResult->vt = VT_BSTR;
- pVarResult->bstrVal = SysAllocString(sWhiteList);
+ pVarResult->bstrVal = SysAllocString(commaSeparatedDomains.c_str());
}
}
break;
@@ -363,7 +359,7 @@
CComBSTR domain = pDispparams->rgvarg[0].bstrVal;
if (domain.Length())
{
- settings->RemoveWhiteListedDomain((BSTR)domain);
+ settings->RemoveWhiteListedDomain(std::wstring(domain));
}
}
break;
@@ -376,7 +372,7 @@
if (pVarResult)
{
pVarResult->vt = VT_BSTR;
- pVarResult->bstrVal = SysAllocString(settings->GetAppLocale());
+ pVarResult->bstrVal = SysAllocString(GetBrowserLanguage().c_str());
}
}
break;
@@ -389,7 +385,7 @@
if (pVarResult)
{
pVarResult->vt = VT_BSTR;
- pVarResult->bstrVal = SysAllocString(settings->GetDocumentationLink());
+ pVarResult->bstrVal = SysAllocString(CPluginClient::GetInstance()->GetDocumentationLink().c_str());
}
}
break;
« src/plugin/PluginSettings.cpp ('K') | « src/plugin/PluginSettings.cpp ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld