- Moved wxApp::SendIdleEvents and wxApp::ProcessIdle into common code.
- wxWindow::OnInternalIdle is now used in all ports, and ensures that user OnIdle events do not interfere with crucial internal processing. - wxWindow::UpdateWindowUI is now a documented function that sends wxUpdateUIEvents, and can be overridden. It has a helper function DoUpdateWindowUI for taking appropriate wxUpdateUIEvent action. - Added functions to wxUpdateUIEvent: Set/GetMode, Set/GetUpdateInterval, CanUpdate, to assist with optimising update event frequency. - Added functions to wxIdleEvent: Set/GetMode, CanSend, to determine whether a window should receive idle events. - Added wxWS_EX_PROCESS_IDLE, wxWS_EX_PROCESS_UI_UPDATES window styles for use with conservative idle and update event modes. - wxMSW and wxGTK now send menu update events only when a menu is about to be used. - Added WM_INITMENU processing instead of WM_ENTERMENULOOP, or accelerators don't always get called since menu items may still be disabled. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21789 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -169,6 +169,8 @@ public:
|
||||
// let wxColourScheme choose the right colours for us
|
||||
virtual bool IsContainerWindow() const { return TRUE; }
|
||||
|
||||
// idle processing
|
||||
virtual void OnInternalIdle();
|
||||
protected:
|
||||
// geometry
|
||||
virtual wxSize DoGetBestClientSize() const;
|
||||
@@ -183,7 +185,6 @@ protected:
|
||||
void Init();
|
||||
|
||||
// event handlers
|
||||
void OnIdle(wxIdleEvent& event);
|
||||
void OnSize(wxSizeEvent& event);
|
||||
|
||||
// common part of Clear() and DoSetItems(): clears everything
|
||||
|
@@ -119,14 +119,14 @@ public:
|
||||
// for wxControlRenderer::DrawScrollbar() only
|
||||
const wxScrollArrows& GetArrows() const { return m_arrows; }
|
||||
|
||||
// idle processing
|
||||
virtual void OnInternalIdle();
|
||||
|
||||
protected:
|
||||
virtual wxSize DoGetBestClientSize() const;
|
||||
virtual void DoDraw(wxControlRenderer *renderer);
|
||||
virtual wxBorder GetDefaultBorder() const { return wxBORDER_NONE; }
|
||||
|
||||
// event handlers
|
||||
void OnIdle(wxIdleEvent& event);
|
||||
|
||||
// forces update of thumb's visual appearence (does nothing if m_dirty=FALSE)
|
||||
void UpdateThumb();
|
||||
|
||||
|
@@ -455,7 +455,6 @@ protected:
|
||||
|
||||
// event handlers
|
||||
// --------------
|
||||
void OnIdle(wxIdleEvent& event);
|
||||
void OnChar(wxKeyEvent& event);
|
||||
void OnSize(wxSizeEvent& event);
|
||||
|
||||
@@ -476,6 +475,8 @@ protected:
|
||||
bool DoCut();
|
||||
bool DoPaste();
|
||||
|
||||
// idle processing
|
||||
virtual void OnInternalIdle();
|
||||
private:
|
||||
// all these methods are for multiline text controls only
|
||||
|
||||
|
Reference in New Issue
Block a user