On wxMac don't call Refresh from FullPaint as that is the biggest

cause of the performance problems.  Instead call refresh when the
AutoComp window is displayed or hidden to ensure that borders,
etc. are drawn/erased as needed.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32225 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Robin Dunn
2005-02-19 23:45:18 +00:00
parent 32478f52ad
commit 719493e14b
4 changed files with 22 additions and 0 deletions

View File

@@ -806,6 +806,14 @@ public:
event.Skip();
}
#ifdef __WXMAC__
virtual bool Show(bool show = true) {
bool rv = wxWindow::Show(show);
GetParent()->Refresh(false);
return rv;
}
#endif
void OnActivate(wxListEvent& WXUNUSED(event)) {
doubleClickAction(doubleClickActionData);
}

View File

@@ -636,6 +636,7 @@ long ScintillaWX::WndProc(unsigned int iMessage, unsigned long wParam, long lPar
LexerManager::GetInstance()->Load((const char*)lParam);
break;
#endif
default:
return ScintillaBase::WndProc(iMessage, wParam, lParam);
}
@@ -983,7 +984,9 @@ void ScintillaWX::DoDragLeave() {
// Force the whole window to be repainted
void ScintillaWX::FullPaint() {
#ifndef __WXMAC__
stc->Refresh(false);
#endif
stc->Update();
}

View File

@@ -806,6 +806,14 @@ public:
event.Skip();
}
#ifdef __WXMAC__
virtual bool Show(bool show = true) {
bool rv = wxWindow::Show(show);
GetParent()->Refresh(false);
return rv;
}
#endif
void OnActivate(wxListEvent& WXUNUSED(event)) {
doubleClickAction(doubleClickActionData);
}

View File

@@ -636,6 +636,7 @@ long ScintillaWX::WndProc(unsigned int iMessage, unsigned long wParam, long lPar
LexerManager::GetInstance()->Load((const char*)lParam);
break;
#endif
default:
return ScintillaBase::WndProc(iMessage, wParam, lParam);
}
@@ -983,7 +984,9 @@ void ScintillaWX::DoDragLeave() {
// Force the whole window to be repainted
void ScintillaWX::FullPaint() {
#ifndef __WXMAC__
stc->Refresh(false);
#endif
stc->Update();
}