]>
git.saurik.com Git - wxWidgets.git/blob - src/univ/inpcons.cpp
   1 ///////////////////////////////////////////////////////////////////////////// 
   2 // Name:        src/univ/inpcons.cpp 
   3 // Purpose:     wxInputConsumer: mix-in class for input handling 
   4 // Author:      Vadim Zeitlin 
   8 // Copyright:   (c) 2000 SciTech Software, Inc. (www.scitechsoft.com) 
   9 // Licence:     wxWindows licence 
  10 ///////////////////////////////////////////////////////////////////////////// 
  12 // ============================================================================ 
  14 // ============================================================================ 
  16 // ---------------------------------------------------------------------------- 
  18 // ---------------------------------------------------------------------------- 
  20 #include "wx/wxprec.h" 
  27     #include "wx/window.h" 
  30 #include "wx/univ/renderer.h" 
  31 #include "wx/univ/inphand.h" 
  32 #include "wx/univ/theme.h" 
  34 // ============================================================================ 
  36 // ============================================================================ 
  38 // ---------------------------------------------------------------------------- 
  39 // focus/activation handling 
  40 // ---------------------------------------------------------------------------- 
  42 void wxInputConsumer::OnFocus(wxFocusEvent
& event
) 
  44     if ( m_inputHandler 
&& m_inputHandler
->HandleFocus(this, event
) ) 
  45         GetInputWindow()->Refresh(); 
  50 void wxInputConsumer::OnActivate(wxActivateEvent
& event
) 
  52     if ( m_inputHandler 
&& m_inputHandler
->HandleActivation(this, event
.GetActive()) ) 
  53         GetInputWindow()->Refresh(); 
  58 // ---------------------------------------------------------------------------- 
  60 // ---------------------------------------------------------------------------- 
  63 wxInputConsumer::DoGetStdInputHandler(wxInputHandler 
* WXUNUSED(handlerDef
)) 
  68 void wxInputConsumer::CreateInputHandler(const wxString
& inphandler
) 
  70     m_inputHandler 
= wxTheme::Get()->GetInputHandler(inphandler
, this); 
  73 void wxInputConsumer::OnKeyDown(wxKeyEvent
& event
) 
  75     if ( !m_inputHandler 
|| !m_inputHandler
->HandleKey(this, event
, true) ) 
  79 void wxInputConsumer::OnKeyUp(wxKeyEvent
& event
) 
  81     if ( !m_inputHandler 
|| !m_inputHandler
->HandleKey(this, event
, false) ) 
  85 void wxInputConsumer::OnMouse(wxMouseEvent
& event
) 
  89         if ( event
.Moving() || event
.Dragging() || 
  90                 event
.Entering() || event
.Leaving() ) 
  92             if ( m_inputHandler
->HandleMouseMove(this, event
) ) 
  95         else // a click action 
  97             if ( m_inputHandler
->HandleMouse(this, event
) ) 
 105 // ---------------------------------------------------------------------------- 
 107 // ---------------------------------------------------------------------------- 
 109 bool wxInputConsumer::PerformAction(const wxControlAction
& WXUNUSED(action
), 
 110                                     long WXUNUSED(numArg
), 
 111                                     const wxString
& WXUNUSED(strArg
))