projects
/
wxWidgets.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
respect wxBU_NOTEXT style in wxButton
[wxWidgets.git]
/
src
/
common
/
mousemanager.cpp
diff --git
a/src/common/mousemanager.cpp
b/src/common/mousemanager.cpp
index c37395503880e7c0f8d86848c7ea31ee6052b9d9..20849a0167ae489cf12a8488105f723e079242e7 100644
(file)
--- a/
src/common/mousemanager.cpp
+++ b/
src/common/mousemanager.cpp
@@
-24,6
+24,8
@@
#endif
#ifndef WX_PRECOMP
#endif
#ifndef WX_PRECOMP
+ #include "wx/settings.h"
+ #include "wx/window.h"
#endif // WX_PRECOMP
#include "wx/mousemanager.h"
#endif // WX_PRECOMP
#include "wx/mousemanager.h"
@@
-43,18
+45,27
@@
END_EVENT_TABLE()
// wxMouseEventsManager implementation
// ============================================================================
// wxMouseEventsManager implementation
// ============================================================================
-wxMouseEventsManager::wxMouseEventsManager(wxWindow *win)
- : m_win(win)
+void wxMouseEventsManager::Init()
{
{
+ m_win = NULL;
m_state = State_Normal;
m_item = wxNOT_FOUND;
m_state = State_Normal;
m_item = wxNOT_FOUND;
+}
+
+bool wxMouseEventsManager::Create(wxWindow *win)
+{
+ wxASSERT_MSG( !m_win, "Create() must not be called twice" );
+ m_win = win;
win->PushEventHandler(this);
win->PushEventHandler(this);
+
+ return true;
}
wxMouseEventsManager::~wxMouseEventsManager()
{
}
wxMouseEventsManager::~wxMouseEventsManager()
{
- m_win->RemoveEventHandler(this);
+ if ( m_win )
+ m_win->RemoveEventHandler(this);
}
void wxMouseEventsManager::OnCaptureLost(wxMouseCaptureLostEvent& WXUNUSED(event))
}
void wxMouseEventsManager::OnCaptureLost(wxMouseCaptureLostEvent& WXUNUSED(event))
@@
-92,6
+103,7
@@
void wxMouseEventsManager::OnLeftDown(wxMouseEvent& event)
}
m_state = State_Pressed;
}
m_state = State_Pressed;
+ m_win->SetFocus();
m_win->CaptureMouse();
MouseClickBegin(m_item);
}
m_win->CaptureMouse();
MouseClickBegin(m_item);
}