summaryrefslogtreecommitdiff
path: root/unmigrated
diff options
context:
space:
mode:
authorPietro Gagliardi <[email protected]>2014-02-24 11:55:38 -0500
committerPietro Gagliardi <[email protected]>2014-02-24 11:55:38 -0500
commit1d9a8834311ffc00bbd6dab1ee64f53f9e634db7 (patch)
treedaa3fe06b9a44edf827d9b2978fc34a3d75d6eec /unmigrated
parent3014a5edf10cd4cd05145c77e669060582f1ff65 (diff)
Re-added Windows font grabbing code. I won't use it just yet, since I only now realize I don't actually need it for preferred sizes, but eh
Diffstat (limited to 'unmigrated')
-rw-r--r--unmigrated/stdfont_windows.go74
1 files changed, 0 insertions, 74 deletions
diff --git a/unmigrated/stdfont_windows.go b/unmigrated/stdfont_windows.go
deleted file mode 100644
index 255013a..0000000
--- a/unmigrated/stdfont_windows.go
+++ /dev/null
@@ -1,74 +0,0 @@
-// 10 february 2014
-package ui
-
-import (
-// "syscall"
- "unsafe"
-)
-
-const (
- SPI_GETNONCLIENTMETRICS = 0x0029
- LF_FACESIZE = 32 // from wingdi.h
-)
-
-type LOGFONT struct {
- lfHeight int32
- lfWidth int32
- lfEscapement int32
- lfOrientation int32
- lfWeight int32
- lfItalic byte
- lfUnderline byte
- lfStrikeOut byte
- lfCharSet byte
- lfOutPrecision byte
- lfClipPrecision byte
- lfQuality byte
- lfPitchAndFamily byte
- lfFaceName [LF_FACESIZE]uint16
-}
-
-type NONCLIENTMETRICS struct {
- cbSize uint32
- iBorderWidth int32 // originally int
- iScrollWidth int32 // originally int
- iScrollHeight int32 // originally int
- iCaptionWidth int32 // originally int
- iCaptionHeight int32 // originally int
- lfCaptionFont LOGFONT
- iSmCaptionWidth int32 // originally int
- iSmCaptionHeight int32 // originally int
- lfSmCaptionFont LOGFONT
- iMenuWidth int32 // originally int
- iMenuHeight int32 // originally int
- lfMenuFont LOGFONT
- lfStatusFont LOGFONT
- lfMessageFont LOGFONT
-}
-
-var (
- systemParametersInfo = user32.NewProc("SystemParametersInfoW")
- createFontIndirect = gdi32.NewProc("CreateFontIndirectW")
-)
-
-// TODO adorn errors with which step failed?
-// TODO this specific font doesn't seem like the right one but that's all I could find for what people actually use; also I need to return the other ones and check HWND types to make sure I apply the right font to the right thing...
-func getStandardWindowFont() (hfont HANDLE, err error) {
- var ncm NONCLIENTMETRICS
-
- ncm.cbSize = uint32(unsafe.Sizeof(ncm))
- r1, _, err := systemParametersInfo.Call(
- uintptr(SPI_GETNONCLIENTMETRICS),
- uintptr(unsafe.Sizeof(ncm)),
- uintptr(unsafe.Pointer(&ncm)),
- 0)
- if r1 == 0 { // failure
- return NULL, err
- }
- // TODO does this specify an error?
- r1, _, err = createFontIndirect.Call(uintptr(unsafe.Pointer(&ncm.lfMessageFont)))
- if r1 == 0 { // failure
- return NULL, err
- }
- return HANDLE(r1), nil
-}