Commit Graph

59 Commits

Author SHA1 Message Date
Václav Slavík
4ca64d4137 fixed wxOverlay to handle wxWindowDC/wxClientDC in the same way wxMac does
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@43192 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-11-08 12:17:56 +00:00
Vadim Zeitlin
2ee16da2c3 initialize m_surface when copying invalid bitmap
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@42883 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-11-01 01:55:44 +00:00
Vadim Zeitlin
c16db850cd compilation fixes after adding wxMemoryDCBase::Init(): renamed wxDC::Init() in wxDFB to DFBInit()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@42783 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-10-30 22:42:34 +00:00
Vadim Zeitlin
fea35690f1 Added wxMemoryDC::SelectObjectAsSource() and make SelectObject() unshare
the bitmap to ensure that no other bitmaps are modified; also remove some code
duplication by introducing wxMemoryDCBase (patch 1580745)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@42755 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-10-30 19:41:46 +00:00
Vadim Zeitlin
55ccdb93e4 COW cleanup patch (1583966):
1. perform deep comparison for the classes for which it makes sense in the
   ports where this wasn't done yet
2. remove (shallow) comparison operators for the classes for which it does
   not make sense (such as wxBitmap)
3. makes wxBitmap use COW on all ports
4. adds wxObject::IsRefTo()
5. centralizes and improves COW docs


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@42752 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-10-30 19:26:48 +00:00
Václav Slavík
59eb2acac0 fixed typo in last commit: use YLOG2DEV for y coordinates, not XLOG2DEV
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@42529 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-10-27 14:26:20 +00:00
Václav Slavík
ea28077683 don't draw the endpoint in DrawLine at least in the common cases of vertical and horizontal lines
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@42521 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-10-27 12:41:28 +00:00
Václav Slavík
30c841c84d moved wxOverlay into overlay.* files and out of dc.h/dcbase.cpp; implemented wxOverlay for wxDirectFB port
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@42340 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-10-24 12:29:14 +00:00
Robin Dunn
432efcb004 wxMemoryDC constructor now optionally accepts a wxBitmap parameter,
calling SelectObject itself if a valid bitmap is passed.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41989 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-10-13 18:48:36 +00:00
Vadim Zeitlin
b7cacb43db add IsOk() to all classes having Ok() method (patch 1570985)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41751 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-10-08 21:56:55 +00:00
Paul Cornett
452418c4b0 Move some things to wxBitmapBase to avoid much duplication.
Use proper const for XPM data, and const void* for arbitary bitmap data.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41689 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-10-08 08:04:49 +00:00
Václav Slavík
e48a305514 clean DFB event buffer on shutdown
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41537 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-09-30 19:22:40 +00:00
Václav Slavík
e17cd59f72 fixed another typo in pen/brush style validation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41529 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-09-30 14:44:52 +00:00
Václav Slavík
335c3c4a3b fixed typos in pen/brush style validation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41528 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-09-30 14:35:12 +00:00
Václav Slavík
21e3246c42 don't assert in wxDC::Blit() calls if the source rect is outside of source DC (wxCaret is prone to this)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41518 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-09-30 10:00:57 +00:00
Václav Slavík
399754a683 fixed incorrect computation of window's visible area: window's position was added once too much
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41517 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-09-30 09:50:39 +00:00
Vadim Zeitlin
a43c3ed057 suppress gcc warning about DWET_XXX enumeration values not handled in switch
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41498 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-09-28 23:09:42 +00:00
Vadim Zeitlin
87f83ac867 The Lesser wxMask Refactoring: merged wxMGL and wxDFB version, added wxMaskBase which could/should be used by other ports later
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41495 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-09-28 23:02:39 +00:00
Václav Slavík
8e3e26d375 don't hardcode the theme, it prevents WXTHEME env.var. from working
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41492 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-09-28 15:26:56 +00:00
Vadim Zeitlin
7de1afbfd2 DIKI_ALTGR was removed in DFB 0.9.25
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41491 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-09-28 14:02:52 +00:00
Vadim Zeitlin
8ddb1b8a88 handle DIKI_ALT_GR in the switch even if we don't have any matching key code, just to avoid gcc warning
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41489 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-09-28 13:43:19 +00:00
Václav Slavík
f87d0500fa added assert to check for not-yet-implemented behavior of SetClippingRegion
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41446 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-09-25 19:08:54 +00:00
Vadim Zeitlin
8a16d7370e The Great wxRegion Refactoring:
1. added wxRegionBase class and derive all wxRegions from it
2. also added wxRegionWithCombine for the ports providing Combine() method
   (MSW, OS2 and Mac) to reduce code duplication further
3. made sure region comparison works the same way in all ports (except those
   not implementing it) and added IsEqual() method


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41429 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-09-25 11:47:23 +00:00
Václav Slavík
7e2baeb413 don't allocate backbuffer for dummy surfaces
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41426 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-09-25 08:01:36 +00:00
Václav Slavík
93259e592b reduce the number of repaintings by repaiting (rect) union of all invalidated areas instead of iterating over every Refresh() request including duplicate ones
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41425 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-09-25 07:55:51 +00:00
Vadim Zeitlin
19883268f1 use wxRect::Contains(), not Inside() (fixes compilation for WXWIN_COMPATIBILITY_2_6==0
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41415 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-09-24 13:09:46 +00:00
Václav Slavík
6f7eb299f0 fixed client<->window coords translations in DoMoveWindow and DoSetSize
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41394 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-09-23 17:23:25 +00:00
Václav Slavík
4ff28c37c8 implemented SetFocus
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41365 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-09-22 06:55:08 +00:00
Václav Slavík
3dcc2231fa fixed DrawText to use text colours instead of pen+brush colours
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41344 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-09-21 12:56:28 +00:00
Václav Slavík
224175a564 hide the caret before setting m_updateRegion: produces small flicker, but works
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41342 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-09-21 10:13:42 +00:00
Václav Slavík
d18a706166 last change broke seting the surface in the common case, fixed (and reorganized the code a bit)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41312 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-09-20 08:09:51 +00:00
Václav Slavík
4dc9a81d7e fixes to wxWindowDC flipping+clipping when painting on hidden windows or windows not being painted at the moment
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41299 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-09-19 14:14:21 +00:00
Václav Slavík
7807a2b499 fixed TLWs resizing to invalidate the DFB surface used for painting
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41297 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-09-19 13:07:46 +00:00
Václav Slavík
5942996c94 basic blitting implementation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41274 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-09-18 11:20:58 +00:00
Václav Slavík
3278b06e6b added wxFAIL_MSG to unimplemented SetDepth/Width/Height
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41219 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-09-14 16:20:00 +00:00
Václav Slavík
a46d481471 implemented convertion between wxImage and wxBitmap
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41218 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-09-14 16:16:42 +00:00
Václav Slavík
949e0a3827 added check for supported depth and 'not implemented' wxFAIL_MSG
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41213 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-09-14 14:39:13 +00:00
Václav Slavík
4562386dc5 implemented wxBitmap::GetSubBitmap()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41212 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-09-14 14:36:12 +00:00
Václav Slavík
865a74c700 renamed wxWindow::IsVisible() to IsShownOnScreen() to fix name conflicts with other classes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41210 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-09-14 12:22:46 +00:00
Václav Slavík
22a35096a0 renamed wxRect::Inside() to wxRect::Contains(), wxRect::Inside(wxRect) is too confusing
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41198 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-09-13 17:12:25 +00:00
Václav Slavík
bb78b682be wxTLW::DoRefreshRect must check the rect, too
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41187 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-09-13 11:01:10 +00:00
Václav Slavík
20671963ef corrected painting implementation for wxDFB
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41185 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-09-13 09:50:02 +00:00
Václav Slavík
564b429f74 limit clipping to surface area
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41171 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-09-12 09:26:14 +00:00
Václav Slavík
5034c9dbba fixed two typos: XLOG2DEV was used instead of YLOG2DEV
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41165 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-09-11 21:00:30 +00:00
Václav Slavík
3af4da323a implemented DrawPoint in terms of DrawLine (for now)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41159 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-09-11 11:26:48 +00:00
Václav Slavík
a5b31f4e11 move misc surface helpers to wxIDirectFBSurface class
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41154 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-09-11 09:08:57 +00:00
Václav Slavík
2582bcdc9d make it possible to create wxWindowDC for a hidden window
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41131 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-09-10 15:51:03 +00:00
Václav Slavík
071f5576a0 fixed wxDC to correctly handle SetFoo(wxNullFoo) calls
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41071 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-09-08 15:29:55 +00:00
Václav Slavík
14ac4e3a8e don't try to paint hidden windows
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41068 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-09-08 11:52:02 +00:00
Václav Slavík
dbbdd3465f make sure wxWindow has valid (albeit bogus) size from the beginning
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41047 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-09-07 16:09:48 +00:00