1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
|
// 11 february 2014
package main
import (
"syscall"
"unsafe"
)
type sysData struct {
cSysData
hwnd _HWND
cid _HMENU
}
type classData struct {
name uintptr
style uint32
xstyle uint32
}
//const controlstyle = _WS_CHILD | _WS_VISIBLE | _WS_TABSTOP
//const controlxstyle = 0
var classTypes = [nctypes]*classData{
c_window: &classData{
name: uintptr(unsafe.Pointer(windowclass)),
style: xxxx,
xstyle: xxxx,
},
// c_button: &classData{
// name: uintptr(unsafe.Pointer("BUTTON"))
// style: _BS_PUSHBUTTON | controlstyle,
// xstyle: 0 | controlxstyle,
// },
}
func (s *sysData) make() (err error) {
}
func (s *sysData) show() (err error) {
ret := make(chan uiret)
defer close(ret)
uitask <- &uimsg{
call: _showWindow,
p: []uintptr{uintptr(s.hwnd, _SW_SHOW},
ret: ret,
}
r := <-ret
close(ret)
return r.err
}
func (s *sysData) hide() (err error) {
ret := make(chan uiret)
defer close(ret)
uitask <- &uimsg{
call: _showWindow,
p: []uintptr{uintptr(s.hwnd), _SW_HIDE},
ret: ret,
}
r := <-ret
close(ret)
return r.err
}
|