- // now we cannot rely on having its borders drawn by a window itself, as it does not
- // get the updateRgn wide enough to always do so, so we do it from the parent
- // this would also be the place to draw any custom backgrounds for native controls
- // in Composited windowing
- wxPoint clientOrigin = GetClientAreaOrigin() ;
+ wxPaintEvent event(GetId());
+ event.SetTimestamp(time);
+ event.SetEventObject(this);
+ handled = HandleWindowEvent(event);
+ }
+
+ m_updateRegion = formerUpdateRgn;
+ return handled;
+}
+
+void wxWindowMac::MacPaintChildrenBorders()
+{
+ // now we cannot rely on having its borders drawn by a window itself, as it does not
+ // get the updateRgn wide enough to always do so, so we do it from the parent
+ // this would also be the place to draw any custom backgrounds for native controls
+ // in Composited windowing
+ wxPoint clientOrigin = GetClientAreaOrigin() ;
+
+ wxWindowMac *child;
+ int x, y, w, h;
+ for (wxWindowList::compatibility_iterator node = GetChildren().GetFirst(); node; node = node->GetNext())
+ {
+ child = node->GetData();
+ if (child == NULL)
+ continue;
+#if wxUSE_SCROLLBAR
+ if (child == m_vScrollBar)
+ continue;
+ if (child == m_hScrollBar)
+ continue;
+#endif
+ if (child->IsTopLevel())
+ continue;
+ if (!child->IsShown())
+ continue;
+
+ // only draw those in the update region (add a safety margin of 10 pixels for shadow effects
+
+ child->GetPosition( &x, &y );
+ child->GetSize( &w, &h );