summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPietro Gagliardi <[email protected]>2014-06-08 00:55:11 -0400
committerPietro Gagliardi <[email protected]>2014-06-08 00:55:11 -0400
commitd4e06bb4d3b624e99d75d36fb69b2316b1b828c0 (patch)
tree2d24f18e8e48a2f993b8666c32c0ff9040c5c924
parentde6f07bb135d0a401e5fb8f879dcf933d45a508d (diff)
Checked Windows RECT usage and fixed wrong ones.
-rw-r--r--area_windows.go1
-rw-r--r--stdwndclass_windows.go2
-rw-r--r--todo.md1
3 files changed, 2 insertions, 2 deletions
diff --git a/area_windows.go b/area_windows.go
index 5f41790..235a5a3 100644
--- a/area_windows.go
+++ b/area_windows.go
@@ -77,6 +77,7 @@ func paintArea(s *sysData) {
hscroll, vscroll := getScrollPos(s.hwnd)
+ // both Windows RECT and Go image.Rect are point..point, so the following is correct
cliprect := image.Rect(int(xrect.left), int(xrect.top), int(xrect.right), int(xrect.bottom))
cliprect = cliprect.Add(image.Pt(int(hscroll), int(vscroll))) // adjust by scroll position
// make sure the cliprect doesn't fall outside the size of the Area
diff --git a/stdwndclass_windows.go b/stdwndclass_windows.go
index df7aef8..c36b9fe 100644
--- a/stdwndclass_windows.go
+++ b/stdwndclass_windows.go
@@ -158,7 +158,7 @@ func stdWndProc(hwnd _HWND, uMsg uint32, wParam _WPARAM, lParam _LPARAM) _LRESUL
panic("GetClientRect failed: " + err.Error())
}
// top-left corner is (0,0) so no need for winheight
- s.doResize(int(r.left), int(r.top), int(r.right), int(r.bottom), 0)
+ s.doResize(int(r.left), int(r.top), int(r.right - r.left), int(r.bottom - r.top), 0)
// TODO use the Defer movement functions here?
// TODO redraw window and all children here?
}
diff --git a/todo.md b/todo.md
index 96976a0..a35ef73 100644
--- a/todo.md
+++ b/todo.md
@@ -7,7 +7,6 @@ MAC OS X:
WINDOWS:
- windows: windows key handling is just wrong; figure out how to avoid (especially since Windows intercepts that key by default)
- redrawing controls after a window resize on Windows does not work properly
-- check all uses of RECT.right/.bottom in Windows that don't have an accompanying -RECT.left/.top to make sure they're correct
- when adding IsDialogMessage() find out if that make sthe area in the area bounds test automatically focused
UNIX: