projects
/
wxWidgets.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Update docs to mention new filesystem handlers.
[wxWidgets.git]
/
src
/
os2
/
textctrl.cpp
diff --git
a/src/os2/textctrl.cpp
b/src/os2/textctrl.cpp
index d315a58b5caf08293ec3da7809e4dac4e9213bf5..111a63165bd0edd45d4dcec0ddd621b70d2cecd4 100644
(file)
--- a/
src/os2/textctrl.cpp
+++ b/
src/os2/textctrl.cpp
@@
-1,5
+1,5
@@
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
-// Name: textctrl.cpp
+// Name:
src/os2/
textctrl.cpp
// Purpose: wxTextCtrl
// Author: David Webster
// Modified by:
// Purpose: wxTextCtrl
// Author: David Webster
// Modified by:
@@
-16,17
+16,18
@@
// For compilers that support precompilation, includes "wx.h".
#include "wx/wxprec.h"
// For compilers that support precompilation, includes "wx.h".
#include "wx/wxprec.h"
+#include "wx/textctrl.h"
+
#ifndef WX_PRECOMP
#ifndef WX_PRECOMP
- #include "wx/textctrl.h"
#include "wx/scrolwin.h"
#include "wx/settings.h"
#include "wx/brush.h"
#include "wx/utils.h"
#include "wx/log.h"
#include "wx/scrolwin.h"
#include "wx/settings.h"
#include "wx/brush.h"
#include "wx/utils.h"
#include "wx/log.h"
+ #include "wx/app.h"
#endif
#if wxUSE_CLIPBOARD
#endif
#if wxUSE_CLIPBOARD
- #include "wx/app.h"
#include "wx/clipbrd.h"
#endif
#include "wx/clipbrd.h"
#endif
@@
-54,9
+55,9
@@
// event tables and other macros
// ----------------------------------------------------------------------------
// event tables and other macros
// ----------------------------------------------------------------------------
-IMPLEMENT_DYNAMIC_CLASS(wxTextCtrl, wx
Control
)
+IMPLEMENT_DYNAMIC_CLASS(wxTextCtrl, wx
TextCtrlBase
)
-BEGIN_EVENT_TABLE(wxTextCtrl, wx
Control
)
+BEGIN_EVENT_TABLE(wxTextCtrl, wx
TextCtrlBase
)
EVT_CHAR(wxTextCtrl::OnChar)
EVT_DROP_FILES(wxTextCtrl::OnDropFiles)
EVT_CHAR(wxTextCtrl::OnChar)
EVT_DROP_FILES(wxTextCtrl::OnDropFiles)
@@
-124,6
+125,7
@@
bool wxTextCtrl::Create(
m_windowStyle = lStyle;
m_bIsMLE = false;
m_windowStyle = lStyle;
m_bIsMLE = false;
+ m_bSkipUpdate = false;
long lSstyle = WS_VISIBLE | WS_TABSTOP;
long lSstyle = WS_VISIBLE | WS_TABSTOP;
@@
-342,8
+344,9
@@
wxString wxTextCtrl::GetValue() const
return sStr;
} // end of wxTextCtrl::GetValue
return sStr;
} // end of wxTextCtrl::GetValue
-void wxTextCtrl::SetValue(
- const wxString& rsValue
+void wxTextCtrl::DoSetValue(
+ const wxString& rsValue,
+ int flags
)
{
//
)
{
//
@@
-354,7
+357,10
@@
void wxTextCtrl::SetValue(
//
if ((rsValue.length() > 0x400) || (rsValue != GetValue()))
{
//
if ((rsValue.length() > 0x400) || (rsValue != GetValue()))
{
- ::WinSetWindowText(GetHwnd(), rsValue.c_str());
+ if ( flags & SetValue_SendEvent )
+ m_bSkipUpdate = true;
+
+ ::WinSetWindowText(GetHwnd(), (PSZ)rsValue.c_str());
AdjustSpaceLimit();
}
} // end of wxTextCtrl::SetValue
AdjustSpaceLimit();
}
} // end of wxTextCtrl::SetValue
@@
-366,7
+372,7
@@
void wxTextCtrl::WriteText(
if (m_bIsMLE)
::WinSendMsg(GetHwnd(), MLM_INSERT, MPARAM((PCHAR)rsValue.c_str()), MPARAM(0));
else
if (m_bIsMLE)
::WinSendMsg(GetHwnd(), MLM_INSERT, MPARAM((PCHAR)rsValue.c_str()), MPARAM(0));
else
- ::WinSetWindowText(GetHwnd(), rsValue.c_str());
+ ::WinSetWindowText(GetHwnd(),
(PSZ)
rsValue.c_str());
AdjustSpaceLimit();
} // end of wxTextCtrl::WriteText
AdjustSpaceLimit();
} // end of wxTextCtrl::WriteText
@@
-596,14
+602,12
@@
bool wxTextCtrl::IsEditable() const
// Editing
// ----------------------------------------------------------------------------
// Editing
// ----------------------------------------------------------------------------
-void wxTextCtrl::Replace(
- long lFrom
-, long lTo
-, const wxString& rsValue
-)
+void wxTextCtrl::Replace( long lFrom,
+ long lTo,
+ const wxString& rsValue )
{
#if wxUSE_CLIPBOARD
{
#if wxUSE_CLIPBOARD
- HWND
hWnd
= GetHwnd();
+ HWND
hWnd
= GetHwnd();
//
// Set selection and remove it
//
// Set selection and remove it
@@
-630,6
+634,9
@@
void wxTextCtrl::Replace(
else
::WinSendMsg(hWnd, EM_PASTE, (MPARAM)0, (MPARAM)0);
#else
else
::WinSendMsg(hWnd, EM_PASTE, (MPARAM)0, (MPARAM)0);
#else
+ wxUnusedVar(lFrom);
+ wxUnusedVar(lTo);
+ wxUnusedVar(rsValue);
wxFAIL_MSG("wxTextCtrl::Replace not implemented if wxUSE_CLIPBOARD is 0.");
#endif
} // end of wxTextCtrl::Replace
wxFAIL_MSG("wxTextCtrl::Replace not implemented if wxUSE_CLIPBOARD is 0.");
#endif
} // end of wxTextCtrl::Replace
@@
-677,11
+684,12
@@
void wxTextCtrl::SetSelection(
::WinSendMsg(hWnd, EM_SETSEL, MPFROM2SHORT((USHORT)lFromChar, (USHORT)lToChar), (MPARAM)0);
} // end of wxTextCtrl::SetSelection
::WinSendMsg(hWnd, EM_SETSEL, MPFROM2SHORT((USHORT)lFromChar, (USHORT)lToChar), (MPARAM)0);
} // end of wxTextCtrl::SetSelection
-bool wxTextCtrl::LoadFile(
- const wxString& rsFile
+bool wxTextCtrl::DoLoadFile(
+ const wxString& rsFile,
+ int fileType
)
{
)
{
- if ( wxTextCtrlBase::
LoadFile(rsFil
e) )
+ if ( wxTextCtrlBase::
DoLoadFile(rsFile, fileTyp
e) )
{
//
// Update the size limit if needed
{
//
// Update the size limit if needed
@@
-690,7
+698,7
@@
bool wxTextCtrl::LoadFile(
return true;
}
return false;
return true;
}
return false;
-} // end of wxTextCtrl::LoadFile
+} // end of wxTextCtrl::
Do
LoadFile
bool wxTextCtrl::IsModified() const
{
bool wxTextCtrl::IsModified() const
{
@@
-819,12
+827,10
@@
bool wxTextCtrl::PositionToXY(
return true;
} // end of wxTextCtrl::PositionToXY
return true;
} // end of wxTextCtrl::PositionToXY
-void wxTextCtrl::ShowPosition(
- long lPos
-)
+void wxTextCtrl::ShowPosition( long WXUNUSED(lPos) )
{
{
- HWND
hWnd = GetHwnd();
- long
lCurrentLineLineNo = 0L;
+ HWND hWnd = GetHwnd();
+ long lCurrentLineLineNo = 0L;
// To scroll to a position, we pass the number of lines and characters
// to scroll *by*. This means that we need to:
// To scroll to a position, we pass the number of lines and characters
// to scroll *by*. This means that we need to:
@@
-851,17
+857,17
@@
void wxTextCtrl::ShowPosition(
}
} // end of wxTextCtrl::ShowPosition
}
} // end of wxTextCtrl::ShowPosition
-int wxTextCtrl::GetLineLength(
- long lLineNo
-) const
+int wxTextCtrl::GetLineLength( long WXUNUSED(lLineNo) ) const
{
{
- long
lLen = 0L;
+ long lLen = 0L;
if (m_bIsMLE)
if (m_bIsMLE)
+ {
lLen = (long)::WinSendMsg(GetHwnd(), MLM_QUERYLINELENGTH, 0, 0);
lLen = (long)::WinSendMsg(GetHwnd(), MLM_QUERYLINELENGTH, 0, 0);
+ }
else
{
else
{
- WNDPARAMS
vParams;
+ WNDPARAMS vParams;
vParams.fsStatus = WPM_CCHTEXT;
if (::WinSendMsg( GetHwnd()
vParams.fsStatus = WPM_CCHTEXT;
if (::WinSendMsg( GetHwnd()
@@
-884,14
+890,14
@@
wxString wxTextCtrl::GetLineText(
{
long lLen = (long)GetLineLength((long)lLineNo) + 1;
wxString sStr;
{
long lLen = (long)GetLineLength((long)lLineNo) + 1;
wxString sStr;
-
char*
zBuf;
+
wxChar*
zBuf;
//
// There must be at least enough place for the length WORD in the
// buffer
//
lLen += sizeof(WORD);
//
// There must be at least enough place for the length WORD in the
// buffer
//
lLen += sizeof(WORD);
- zBuf = new
c
har[lLen];
+ zBuf = new
wxC
har[lLen];
if (m_bIsMLE)
{
long lIndex;
if (m_bIsMLE)
{
long lIndex;
@@
-902,7
+908,7
@@
wxString wxTextCtrl::GetLineText(
lIndex = lLen * lLineNo;
::WinSendMsg(GetHwnd(), MLM_SETSEL, (MPARAM)lIndex, (MPARAM)lIndex);
lIndex = lLen * lLineNo;
::WinSendMsg(GetHwnd(), MLM_SETSEL, (MPARAM)lIndex, (MPARAM)lIndex);
- ::WinSendMsg(GetHwnd(), MLM_SETIMPORTEXPORT, MPFROMP(zBuf), MPFROMSHORT((USHORT)
sizeof
(zBuf)));
+ ::WinSendMsg(GetHwnd(), MLM_SETIMPORTEXPORT, MPFROMP(zBuf), MPFROMSHORT((USHORT)
WXSIZEOF
(zBuf)));
lBuflen = (long)::WinSendMsg(GetHwnd(), MLM_QUERYFORMATTEXTLENGTH, MPFROMLONG(lIndex), MPFROMLONG(-1));
lCopied = (long)::WinSendMsg(GetHwnd(), MLM_EXPORT, MPFROMP(&lIndex), MPFROMP(&lBuflen));
zBuf[lCopied] = '\0';
lBuflen = (long)::WinSendMsg(GetHwnd(), MLM_QUERYFORMATTEXTLENGTH, MPFROMLONG(lIndex), MPFROMLONG(-1));
lCopied = (long)::WinSendMsg(GetHwnd(), MLM_EXPORT, MPFROMP(&lIndex), MPFROMP(&lBuflen));
zBuf[lCopied] = '\0';
@@
-917,7
+923,7
@@
wxString wxTextCtrl::GetLineText(
,&vParams
,0
))
,&vParams
,0
))
- memcpy(zBuf, vParams.pszText, vParams.cchText);
+ memcpy(
(char*)
zBuf, vParams.pszText, vParams.cchText);
zBuf[vParams.cchText] = '\0';
}
sStr = zBuf;
zBuf[vParams.cchText] = '\0';
}
sStr = zBuf;
@@
-994,21
+1000,17
@@
void wxTextCtrl::OnDropFiles(
}
} // end of wxTextCtrl::OnDropFiles
}
} // end of wxTextCtrl::OnDropFiles
-WXHBRUSH wxTextCtrl::OnCtlColor(
- WXHDC hWxDC
-, WXHWND hWnd
-, WXUINT uCtlColor
-, WXUINT uMessage
-, WXWPARAM wParam
-, WXLPARAM lParam
-)
+WXHBRUSH wxTextCtrl::OnCtlColor( WXHDC hWxDC,
+ WXHWND WXUNUSED(hWnd),
+ WXUINT WXUNUSED(uCtlColor),
+ WXUINT WXUNUSED(uMessage),
+ WXWPARAM WXUNUSED(wParam),
+ WXLPARAM WXUNUSED(lParam) )
{
{
- HPS hPS = (HPS)hWxDC;
- wxColour vColBack = GetBackgroundColour();
- wxColour vColFore = GetForegroundColour();
- wxBrush* pBackgroundBrush = wxTheBrushList->FindOrCreateBrush( GetBackgroundColour()
- ,wxSOLID
- );
+ HPS hPS = (HPS)hWxDC;
+ wxColour vColBack = GetBackgroundColour();
+ wxColour vColFore = GetForegroundColour();
+ wxBrush* pBackgroundBrush = wxTheBrushList->FindOrCreateBrush( vColBack, wxSOLID );
if (m_bUseCtl3D)
{
if (m_bUseCtl3D)
{
@@
-1098,6
+1100,12
@@
bool wxTextCtrl::OS2Command(
case EN_CHANGE:
{
case EN_CHANGE:
{
+ if (m_bSkipUpdate)
+ {
+ m_bSkipUpdate = false;
+ break;
+ }
+
wxCommandEvent vEvent( wxEVT_COMMAND_TEXT_UPDATED
,m_windowId
);
wxCommandEvent vEvent( wxEVT_COMMAND_TEXT_UPDATED
,m_windowId
);
@@
-1207,148
+1215,107
@@
wxSize wxTextCtrl::DoGetBestSize() const
// standard handlers for standard edit menu events
// ----------------------------------------------------------------------------
// standard handlers for standard edit menu events
// ----------------------------------------------------------------------------
-void wxTextCtrl::OnCut(
- wxCommandEvent& rEvent
-)
+void wxTextCtrl::OnCut( wxCommandEvent& WXUNUSED(rEvent) )
{
Cut();
} // end of wxTextCtrl::OnCut
{
Cut();
} // end of wxTextCtrl::OnCut
-void wxTextCtrl::OnCopy(
- wxCommandEvent& rEvent
-)
+void wxTextCtrl::OnCopy( wxCommandEvent& WXUNUSED(rEvent) )
{
Copy();
} // end of wxTextCtrl::OnCopy
{
Copy();
} // end of wxTextCtrl::OnCopy
-void wxTextCtrl::OnPaste(
- wxCommandEvent& rEvent
-)
+void wxTextCtrl::OnPaste( wxCommandEvent& WXUNUSED(rEvent) )
{
Paste();
} // end of wxTextCtrl::OnPaste
{
Paste();
} // end of wxTextCtrl::OnPaste
-void wxTextCtrl::OnUndo(
- wxCommandEvent& rEvent
-)
+void wxTextCtrl::OnUndo( wxCommandEvent& WXUNUSED(rEvent) )
{
Undo();
} // end of wxTextCtrl::OnUndo
{
Undo();
} // end of wxTextCtrl::OnUndo
-void wxTextCtrl::OnRedo(
- wxCommandEvent& rEvent
-)
+void wxTextCtrl::OnRedo( wxCommandEvent& WXUNUSED(rEvent) )
{
Redo();
} // end of wxTextCtrl::OnRedo
{
Redo();
} // end of wxTextCtrl::OnRedo
-void wxTextCtrl::OnDelete(
- wxCommandEvent& rEvent
-)
+void wxTextCtrl::OnDelete( wxCommandEvent& WXUNUSED(rEvent) )
{
{
- long lFrom;
- long lTo;
+ long lFrom, lTo;
+
+ GetSelection( &lFrom, &lTo );
- GetSelection( &lFrom
- ,&lTo
- );
if (lFrom != -1 && lTo != -1)
if (lFrom != -1 && lTo != -1)
- Remove( lFrom
- ,lTo
- );
+ Remove( lFrom, lTo );
} // end of wxTextCtrl::OnDelete
} // end of wxTextCtrl::OnDelete
-void wxTextCtrl::OnSelectAll(
- wxCommandEvent& rEvent
-)
+void wxTextCtrl::OnSelectAll( wxCommandEvent& WXUNUSED(rEvent) )
{
SetSelection(-1, -1);
} // end of wxTextCtrl::OnSelectAll
{
SetSelection(-1, -1);
} // end of wxTextCtrl::OnSelectAll
-void wxTextCtrl::OnUpdateCut(
- wxUpdateUIEvent& rEvent
-)
+void wxTextCtrl::OnUpdateCut( wxUpdateUIEvent& rEvent )
{
rEvent.Enable(CanCut());
} // end of wxTextCtrl::OnUpdateCut
{
rEvent.Enable(CanCut());
} // end of wxTextCtrl::OnUpdateCut
-void wxTextCtrl::OnUpdateCopy(
- wxUpdateUIEvent& rEvent
-)
+void wxTextCtrl::OnUpdateCopy( wxUpdateUIEvent& rEvent )
{
rEvent.Enable(CanCopy());
} // end of wxTextCtrl::OnUpdateCopy
{
rEvent.Enable(CanCopy());
} // end of wxTextCtrl::OnUpdateCopy
-void wxTextCtrl::OnUpdatePaste(
- wxUpdateUIEvent& rEvent
-)
+void wxTextCtrl::OnUpdatePaste( wxUpdateUIEvent& rEvent )
{
rEvent.Enable(CanPaste());
} // end of wxTextCtrl::OnUpdatePaste
{
rEvent.Enable(CanPaste());
} // end of wxTextCtrl::OnUpdatePaste
-void wxTextCtrl::OnUpdateUndo(
- wxUpdateUIEvent& rEvent
-)
+void wxTextCtrl::OnUpdateUndo( wxUpdateUIEvent& rEvent )
{
rEvent.Enable(CanUndo());
} // end of wxTextCtrl::OnUpdateUndo
{
rEvent.Enable(CanUndo());
} // end of wxTextCtrl::OnUpdateUndo
-void wxTextCtrl::OnUpdateRedo(
- wxUpdateUIEvent& rEvent
-)
+void wxTextCtrl::OnUpdateRedo( wxUpdateUIEvent& rEvent )
{
rEvent.Enable(CanRedo());
} // end of wxTextCtrl::OnUpdateRedo
{
rEvent.Enable(CanRedo());
} // end of wxTextCtrl::OnUpdateRedo
-void wxTextCtrl::OnUpdateDelete(
- wxUpdateUIEvent& rEvent
-)
+void wxTextCtrl::OnUpdateDelete( wxUpdateUIEvent& rEvent )
{
{
- long lFrom;
- long lTo;
+ long lFrom, lTo;
- GetSelection( &lFrom
- ,&lTo
- );
+ GetSelection( &lFrom, &lTo );
rEvent.Enable( lFrom != -1L && lTo != -1L && lFrom != lTo && IsEditable()) ;
} // end of wxTextCtrl::OnUpdateDelete
rEvent.Enable( lFrom != -1L && lTo != -1L && lFrom != lTo && IsEditable()) ;
} // end of wxTextCtrl::OnUpdateDelete
-void wxTextCtrl::OnUpdateSelectAll(
- wxUpdateUIEvent& rEvent
-)
+void wxTextCtrl::OnUpdateSelectAll( wxUpdateUIEvent& rEvent )
{
rEvent.Enable(GetLastPosition() > 0);
} // end of wxTextCtrl::OnUpdateSelectAll
{
rEvent.Enable(GetLastPosition() > 0);
} // end of wxTextCtrl::OnUpdateSelectAll
-bool wxTextCtrl::SetBackgroundColour(
- const wxColour& rColour
-)
+bool wxTextCtrl::SetBackgroundColour( const wxColour& rColour )
{
if (m_bIsMLE)
::WinSendMsg(GetHwnd(), MLM_SETBACKCOLOR, (MPARAM)rColour.GetPixel(), MLE_INDEX);
return true;
} // end of wxTextCtrl::SetBackgroundColour
{
if (m_bIsMLE)
::WinSendMsg(GetHwnd(), MLM_SETBACKCOLOR, (MPARAM)rColour.GetPixel(), MLE_INDEX);
return true;
} // end of wxTextCtrl::SetBackgroundColour
-bool wxTextCtrl::SetForegroundColour(
- const wxColour& rColour
-)
+bool wxTextCtrl::SetForegroundColour( const wxColour& rColour )
{
if (m_bIsMLE)
::WinSendMsg(GetHwnd(), MLM_SETTEXTCOLOR, (MPARAM)rColour.GetPixel(), MLE_INDEX);
return true;
} // end of wxTextCtrl::SetForegroundColour
{
if (m_bIsMLE)
::WinSendMsg(GetHwnd(), MLM_SETTEXTCOLOR, (MPARAM)rColour.GetPixel(), MLE_INDEX);
return true;
} // end of wxTextCtrl::SetForegroundColour
-bool wxTextCtrl::SetStyle(
- long lStart
-, long lEnd
-, const wxTextAttr& rStyle
-)
+bool wxTextCtrl::SetStyle( long lStart,
+ long lEnd,
+ const wxTextAttr& WXUNUSED(rStyle) )
{
{
- HWND
hWnd = GetHwnd();
+ HWND hWnd = GetHwnd();
if (lStart > lEnd)
{
if (lStart > lEnd)
{
- long
lTmp = lStart;
+ long lTmp = lStart;
lStart = lEnd;
lEnd = lTmp;
lStart = lEnd;
lEnd = lTmp;
@@
-1358,18
+1325,15
@@
bool wxTextCtrl::SetStyle(
// We can only change the format of the selection, so select the range we
// want and restore the old selection later
//
// We can only change the format of the selection, so select the range we
// want and restore the old selection later
//
- long lStartOld;
- long lEndOld;
+ long lStartOld, lEndOld;
- GetSelection( &lStartOld
- ,&lEndOld
- );
+ GetSelection( &lStartOld, &lEndOld );
//
// But do we really have to change the selection?
//
//
// But do we really have to change the selection?
//
- bool
bChangeSel = lStart != lStartOld ||
-
lEnd != lEndOld;
+ bool bChangeSel = lStart != lStartOld ||
+ lEnd != lEndOld;
if (bChangeSel)
{
if (bChangeSel)
{
@@
-1384,4
+1348,3
@@
bool wxTextCtrl::SetStyle(
//
return true;
} // end of wxTextCtrl::SetStyle
//
return true;
} // end of wxTextCtrl::SetStyle
-