MCPcopy Create free account
hub / github.com/bruderstein/nppPluginManager / init

Method init

pluginManager/src/PluginList.cpp:64–132  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

62}
63
64void PluginList::init(NppData *nppData)
65{
66 _nppData = nppData;
67 TCHAR configDir[MAX_PATH];
68 TCHAR nppDir[MAX_PATH];
69 TCHAR allUsersPluginDir[MAX_PATH];
70
71 ::SendMessage(nppData->_nppHandle, NPPM_GETPLUGINSCONFIGDIR, MAX_PATH, reinterpret_cast<LPARAM>(configDir));
72 ::SendMessage(nppData->_nppHandle, NPPM_GETNPPDIRECTORY, MAX_PATH, reinterpret_cast<LPARAM>(nppDir));
73 LPARAM nppVersion = ::SendMessage(nppData->_nppHandle, NPPM_GETNPPVERSION, 0, 0);
74
75 int majorVersion = HIWORD(nppVersion);
76 int minorVersion = LOWORD(nppVersion);
77 TCHAR tmp[10];
78 _itot_s(majorVersion, tmp, 10, 10);
79 tstring versionString(tmp);
80
81 _itot_s(minorVersion, tmp, 10, 10);
82
83
84 for(int i = 0; tmp[i]; i++)
85 {
86 versionString.push_back(_T('.'));
87 versionString.push_back(tmp[i]);
88 }
89
90 _nppVersion = versionString;
91
92 _tcscpy_s(allUsersPluginDir, MAX_PATH, nppDir);
93 ::PathAppend(allUsersPluginDir, _T("plugins"));
94
95 _variableHandler = new VariableHandler();
96 _variableHandler->setVariable(_T("NPPDIR"), nppDir);
97 _variableHandler->setVariable(_T("ALLUSERSPLUGINDIR"), allUsersPluginDir);
98 _variableHandler->setVariable(VALIDATE_BASE_URL_VAR, getValidateUrl());
99
100 ITEMIDLIST *pidl;
101 HRESULT result = SHGetSpecialFolderLocation(NULL, CSIDL_APPDATA, &pidl);
102 if (result == S_OK)
103 {
104 TCHAR appDataPluginDir[MAX_PATH];
105
106 if (SHGetPathFromIDList(pidl, appDataPluginDir))
107 {
108 PathAppend(appDataPluginDir, _T("Notepad++\\plugins"));
109 _variableHandler->setVariable(_T("USERPLUGINDIR"), appDataPluginDir);
110 }
111 else
112 {
113 _variableHandler->setVariable(_T("USERPLUGINDIR"), allUsersPluginDir);
114 }
115 }
116 else
117 {
118 _variableHandler->setVariable(_T("USERPLUGINDIR"), allUsersPluginDir);
119 }
120
121 if (g_options.installLocation == INSTALLLOC_APPDATA)

Callers 3

setInfoFunction · 0.45
startupChecksFunction · 0.45
doReloadXmlFunction · 0.45

Calls 2

setVariableMethod · 0.80
c_strMethod · 0.80

Tested by

no test coverage detected