summaryrefslogtreecommitdiff
path: root/window_windows.go
diff options
context:
space:
mode:
authorPietro Gagliardi <[email protected]>2015-12-11 20:37:59 -0500
committerPietro Gagliardi <[email protected]>2015-12-11 20:37:59 -0500
commitf8e3f12ab02b528f2a05a4f713d7af7ea8e44b42 (patch)
tree82dedf4d37f0f6d31e88ebb2ca1ce6499dead261 /window_windows.go
parente34c561ed5bedeb180437ec165882b98d70d38c1 (diff)
LET'S GET THIS FINAL REWRITE EVER STARTED
Diffstat (limited to 'window_windows.go')
-rw-r--r--window_windows.go103
1 files changed, 0 insertions, 103 deletions
diff --git a/window_windows.go b/window_windows.go
deleted file mode 100644
index 85a8c83..0000000
--- a/window_windows.go
+++ /dev/null
@@ -1,103 +0,0 @@
-// 12 july 2014
-
-package ui
-
-import (
- "fmt"
- "syscall"
- "unsafe"
-)
-
-// #include "winapi_windows.h"
-import "C"
-
-type window struct {
- hwnd C.HWND
- shownbefore bool
-
- closing *event
-
- child Control
- margined bool
-}
-
-func makeWindowWindowClass() error {
- var errmsg *C.char
-
- err := C.makeWindowWindowClass(&errmsg)
- if err != 0 || errmsg != nil {
- return fmt.Errorf("%s: %v", C.GoString(errmsg), syscall.Errno(err))
- }
- return nil
-}
-
-func newWindow(title string, width int, height int, control Control) *window {
- w := &window{
- closing: newEvent(),
- child: control,
- }
- w.hwnd = C.newWindow(toUTF16(title), C.int(width), C.int(height), unsafe.Pointer(w))
- hresult := C.EnableThemeDialogTexture(w.hwnd, C.ETDT_ENABLE|C.ETDT_USETABTEXTURE)
- if hresult != C.S_OK {
- panic(fmt.Errorf("error setting tab background texture on Window; HRESULT: 0x%X", hresult))
- }
- w.child.setParent(&controlParent{w.hwnd})
- return w
-}
-
-func (w *window) Title() string {
- return getWindowText(w.hwnd)
-}
-
-func (w *window) SetTitle(title string) {
- C.setWindowText(w.hwnd, toUTF16(title))
-}
-
-func (w *window) Show() {
- if !w.shownbefore {
- C.ShowWindow(w.hwnd, C.nCmdShow)
- C.updateWindow(w.hwnd)
- w.shownbefore = true
- } else {
- C.ShowWindow(w.hwnd, C.SW_SHOW)
- }
-}
-
-func (w *window) Hide() {
- C.ShowWindow(w.hwnd, C.SW_HIDE)
-}
-
-func (w *window) Close() {
- C.windowClose(w.hwnd)
-}
-
-func (w *window) OnClosing(e func() bool) {
- w.closing.setbool(e)
-}
-
-func (w *window) Margined() bool {
- return w.margined
-}
-
-func (w *window) SetMargined(margined bool) {
- w.margined = margined
-}
-
-//export windowResize
-func windowResize(data unsafe.Pointer, r *C.RECT) {
- w := (*window)(data)
- d := beginResize(w.hwnd)
- if w.margined {
- marginRectDLU(r, marginDialogUnits, marginDialogUnits, marginDialogUnits, marginDialogUnits, d)
- }
- w.child.resize(int(r.left), int (r.top), int(r.right - r.left), int(r.bottom - r.top), d)
-}
-
-//export windowClosing
-func windowClosing(data unsafe.Pointer) {
- w := (*window)(data)
- close := w.closing.fire()
- if close {
- C.windowClose(w.hwnd)
- }
-}