Removed the GDI+ dependency on Windows since we no longer use it.

This commit is contained in:
Pietro Gagliardi 2014-04-12 15:42:13 -04:00
parent 41ce9c9ed0
commit ac633a8694
4 changed files with 1 additions and 33 deletions

View File

@ -184,7 +184,7 @@ func paintArea(s *sysData) {
// now we have to do TWO MORE things before we can finally do alpha blending
// first, we need to load the bitmap memory, because Windows makes it for us
// the pixels are arranged in RGBA order, but GDI+ requires BGRA
// the pixels are arranged in RGBA order, but GDI requires BGRA
// this turns out to be just ARGB in little endian; let's convert into this memory
// the bitmap Windows gives us has a stride == width
toARGB(i, ppvBits, i.Rect.Dx() * 4)

View File

@ -12,7 +12,6 @@ var (
kernel32 = syscall.NewLazyDLL("kernel32.dll")
gdi32 = syscall.NewLazyDLL("gdi32.dll")
comctl32 *syscall.LazyDLL // comctl32 not defined here; see comctl_windows.go
gdiplus = syscall.NewLazyDLL("gdiplus.dll")
msimg32 = syscall.NewLazyDLL("msimg32.dll")
)

View File

@ -11,7 +11,6 @@ import (
var (
hInstance _HANDLE
nCmdShow int
gdiplusToken uintptr
)
// TODO is this trick documented in MSDN?
@ -57,26 +56,6 @@ func getWinMainnCmdShow() {
}
}
func initGDIPlus() (err error) {
var gdiplusInit struct {
GdiplusVersion uint32
DebugEventCallback uintptr
SuppressBackgroundThread int32 // originally BOOL
SuppressExternalCodecs int32 // originally BOOL
}
gdiplusInit.GdiplusVersion = 1 // required
// TODO suppress external codecs?
r1, _, err := gdiplus.NewProc("GdiplusStartup").Call(
uintptr(unsafe.Pointer(&gdiplusToken)),
uintptr(unsafe.Pointer(&gdiplusInit)),
uintptr(0)) // we use the GDI+ thread so no need for output info
if r1 != 0 { // failure
return fmt.Errorf("error initializing GDI+ (GDI+ error code %d; windows last error %v)", r1, err)
}
return nil
}
func doWindowsInit() (err error) {
err = getWinMainhInstance()
if err != nil {
@ -95,14 +74,6 @@ func doWindowsInit() (err error) {
if err != nil {
return fmt.Errorf("error initializing Common Controls (comctl32.dll): %v", err)
}
err = initGDIPlus()
if err != nil {
return fmt.Errorf("error initializing GDI+ (gdiplus.dll): %v", err)
}
// TODO others
return nil // all ready to go
}
func doWindowsQuitStuff() {
gdiplus.NewProc("GdiplusShutdown").Call(gdiplusToken) // returns void according to MSDN
}

View File

@ -87,8 +87,6 @@ func ui(main func()) error {
}()
msgloop()
doWindowsQuitStuff()
return nil
}