本文整理汇总了C++中NppParameters::setFileSaveDlgFilterIndex方法的典型用法代码示例。如果您正苦于以下问题:C++ NppParameters::setFileSaveDlgFilterIndex方法的具体用法?C++ NppParameters::setFileSaveDlgFilterIndex怎么用?C++ NppParameters::setFileSaveDlgFilterIndex使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类NppParameters
的用法示例。
在下文中一共展示了NppParameters::setFileSaveDlgFilterIndex方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: run
BOOL APIENTRY FileDialog::run(HWND hWnd, UINT uMsg, WPARAM, LPARAM lParam)
{
switch (uMsg)
{
case WM_NOTIFY :
{
LPNMHDR pNmhdr = (LPNMHDR)lParam;
switch(pNmhdr->code)
{
case CDN_INITDONE :
{
if (_extTypeIndex == -1)
return TRUE;
HWND fnControl = ::GetDlgItem(::GetParent(hWnd), _dialogFileBoxId);
HWND typeControl = ::GetDlgItem(::GetParent(hWnd), cmb1);
::SendMessage(typeControl, CB_SETCURSEL, _extTypeIndex, 0);
currentExt = addExt(fnControl, typeControl);
return TRUE;
}
case CDN_TYPECHANGE :
{
HWND fnControl = ::GetDlgItem(::GetParent(hWnd), _dialogFileBoxId);
HWND typeControl = ::GetDlgItem(::GetParent(hWnd), cmb1);
currentExt = addExt(fnControl, typeControl);
return TRUE;
}
case CDN_FILEOK :
{
HWND typeControl = ::GetDlgItem(::GetParent(hWnd), cmb1);
int index = ::SendMessage(typeControl, CB_GETCURSEL, 0, 0);
NppParameters *pNppParam = NppParameters::getInstance();
pNppParam->setFileSaveDlgFilterIndex(index);
return TRUE;
}
default :
return FALSE;
}
}
default :
return FALSE;
}
}
示例2: run
BOOL APIENTRY FileDialog::run(HWND hWnd, UINT uMsg, WPARAM, LPARAM lParam)
{
switch (uMsg)
{
case WM_NOTIFY :
{
LPNMHDR pNmhdr = (LPNMHDR)lParam;
switch(pNmhdr->code)
{
case CDN_INITDONE :
{
if (_extTypeIndex == -1)
return TRUE;
HWND fnControl = ::GetDlgItem(::GetParent(hWnd), _dialogFileBoxId);
HWND typeControl = ::GetDlgItem(::GetParent(hWnd), cmb1);
::SendMessage(typeControl, CB_SETCURSEL, _extTypeIndex, 0);
currentExt = addExt(fnControl, typeControl);
return TRUE;
}
case CDN_TYPECHANGE :
{
HWND fnControl = ::GetDlgItem(::GetParent(hWnd), _dialogFileBoxId);
HWND typeControl = ::GetDlgItem(::GetParent(hWnd), cmb1);
currentExt = addExt(fnControl, typeControl);
return TRUE;
}
case CDN_FILEOK :
{
HWND typeControl = ::GetDlgItem(::GetParent(hWnd), cmb1);
int index = static_cast<int32_t>(::SendMessage(typeControl, CB_GETCURSEL, 0, 0));
NppParameters *pNppParam = NppParameters::getInstance();
pNppParam->setFileSaveDlgFilterIndex(index);
// change forward-slash to back-slash directory paths so dialog can interpret
OPENFILENAME* ofn = reinterpret_cast<LPOFNOTIFY>(lParam)->lpOFN;
TCHAR* fileName = ofn->lpstrFile;
// note: this check is essential, because otherwise we could return True
// with a OFN_NOVALIDATE dialog, which leads to opening every file
// in the specified directory. Multi-select terminator is \0\0.
if ((ofn->Flags & OFN_ALLOWMULTISELECT) &&
(*(fileName + lstrlen(fileName) + 1) != '\0'))
return FALSE;
if (::PathIsDirectory(fileName))
{
// change to backslash, and insert trailing '\' to indicate directory
hFileDlg = ::GetParent(hWnd);
std::wstring _fnStr(fileName);
std::replace(_fnStr.begin(), _fnStr.end(), '/', '\\');
if (_fnStr.back() != '\\')
_fnStr.insert(_fnStr.end(), '\\');
// change the dialog directory selection
::SendMessage(hFileDlg, CDM_SETCONTROLTEXT, edt1,
reinterpret_cast<LPARAM>(_fnStr.c_str()));
::PostMessage(hFileDlg, WM_COMMAND, IDOK, 0);
::SetWindowLongPtr(hWnd, 0 /*DWL_MSGRESULT*/, 1);
}
return TRUE;
}
default :
return FALSE;
}
}
default :
return FALSE;
}
}