#include "wx/msw/ole/oleutils.h"
#include <shldisp.h>
-#if defined(__MINGW32__)
+#if defined(__MINGW32__) || defined (__WATCOMC__)
// needed for IID_IAutoComplete, IID_IAutoComplete2 and ACO_AUTOSUGGEST
#include <shlguid.h>
#endif
memcpy(olestr, wcbuf, size);
- *rgelt++ = wx_static_cast(LPOLESTR, olestr);
+ *rgelt++ = static_cast<LPOLESTR>(olestr);
++(*pceltFetched);
}
void wxTextEntry::SetInsertionPoint(long pos)
{
+ // calling DoSetSelection(-1, -1) would select everything which is not what
+ // we want here
+ if ( pos == -1 )
+ pos = GetLastPosition();
+
// be careful to call DoSetSelection() which is overridden in wxTextCtrl
// and not just SetSelection() here
DoSetSelection(pos, pos);
// auto-completion
// ----------------------------------------------------------------------------
+#if wxUSE_OLE
bool wxTextEntry::AutoCompleteFileNames()
{
#ifdef HAS_AUTOCOMPLETE
static wxDynamicLibrary s_dllShlwapi;
if ( s_pfnSHAutoComplete == (SHAutoComplete_t)-1 )
{
- wxLogNull noLog;
-
- if ( !s_dllShlwapi.Load(_T("shlwapi.dll"), wxDL_VERBATIM) )
+ if ( !s_dllShlwapi.Load(_T("shlwapi.dll"), wxDL_VERBATIM | wxDL_QUIET) )
{
s_pfnSHAutoComplete = NULL;
}
NULL,
CLSCTX_INPROC_SERVER,
IID_IAutoComplete,
- wx_reinterpret_cast(void **, &pAutoComplete)
+ reinterpret_cast<void **>(&pAutoComplete)
);
if ( FAILED(hr) )
{
hr = pAutoComplete->QueryInterface
(
IID_IAutoComplete2,
- wx_reinterpret_cast(void **, &pAutoComplete2)
+ reinterpret_cast<void **>(&pAutoComplete2)
);
if ( SUCCEEDED(hr) )
{
pAutoComplete->Release();
return true;
#else // !HAS_AUTOCOMPLETE
+ wxUnusedVar(choices);
+
return false;
#endif // HAS_AUTOCOMPLETE/!HAS_AUTOCOMPLETE
}
+#endif // wxUSE_OLE
// ----------------------------------------------------------------------------
// editable state