summaryrefslogtreecommitdiff
path: root/packages/w32/gdiplus.go
diff options
context:
space:
mode:
Diffstat (limited to 'packages/w32/gdiplus.go')
-rw-r--r--packages/w32/gdiplus.go175
1 files changed, 0 insertions, 175 deletions
diff --git a/packages/w32/gdiplus.go b/packages/w32/gdiplus.go
deleted file mode 100644
index f3a8fca..0000000
--- a/packages/w32/gdiplus.go
+++ /dev/null
@@ -1,175 +0,0 @@
-// Copyright 2010-2012 The W32 Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style
-// license that can be found in the LICENSE file.
-
-package w32
-
-import (
- "errors"
- "fmt"
- "syscall"
- "unsafe"
-)
-
-const (
- Ok = 0
- GenericError = 1
- InvalidParameter = 2
- OutOfMemory = 3
- ObjectBusy = 4
- InsufficientBuffer = 5
- NotImplemented = 6
- Win32Error = 7
- WrongState = 8
- Aborted = 9
- FileNotFound = 10
- ValueOverflow = 11
- AccessDenied = 12
- UnknownImageFormat = 13
- FontFamilyNotFound = 14
- FontStyleNotFound = 15
- NotTrueTypeFont = 16
- UnsupportedGdiplusVersion = 17
- GdiplusNotInitialized = 18
- PropertyNotFound = 19
- PropertyNotSupported = 20
- ProfileNotFound = 21
-)
-
-func GetGpStatus(s int32) string {
- switch s {
- case Ok:
- return "Ok"
- case GenericError:
- return "GenericError"
- case InvalidParameter:
- return "InvalidParameter"
- case OutOfMemory:
- return "OutOfMemory"
- case ObjectBusy:
- return "ObjectBusy"
- case InsufficientBuffer:
- return "InsufficientBuffer"
- case NotImplemented:
- return "NotImplemented"
- case Win32Error:
- return "Win32Error"
- case WrongState:
- return "WrongState"
- case Aborted:
- return "Aborted"
- case FileNotFound:
- return "FileNotFound"
- case ValueOverflow:
- return "ValueOverflow"
- case AccessDenied:
- return "AccessDenied"
- case UnknownImageFormat:
- return "UnknownImageFormat"
- case FontFamilyNotFound:
- return "FontFamilyNotFound"
- case FontStyleNotFound:
- return "FontStyleNotFound"
- case NotTrueTypeFont:
- return "NotTrueTypeFont"
- case UnsupportedGdiplusVersion:
- return "UnsupportedGdiplusVersion"
- case GdiplusNotInitialized:
- return "GdiplusNotInitialized"
- case PropertyNotFound:
- return "PropertyNotFound"
- case PropertyNotSupported:
- return "PropertyNotSupported"
- case ProfileNotFound:
- return "ProfileNotFound"
- }
- return "Unknown Status Value"
-}
-
-var (
- token uintptr
-
- modgdiplus = syscall.NewLazyDLL("gdiplus.dll")
-
- procGdipCreateBitmapFromFile = modgdiplus.NewProc("GdipCreateBitmapFromFile")
- procGdipCreateBitmapFromHBITMAP = modgdiplus.NewProc("GdipCreateBitmapFromHBITMAP")
- procGdipCreateHBITMAPFromBitmap = modgdiplus.NewProc("GdipCreateHBITMAPFromBitmap")
- procGdipCreateBitmapFromResource = modgdiplus.NewProc("GdipCreateBitmapFromResource")
- procGdipCreateBitmapFromStream = modgdiplus.NewProc("GdipCreateBitmapFromStream")
- procGdipDisposeImage = modgdiplus.NewProc("GdipDisposeImage")
- procGdiplusShutdown = modgdiplus.NewProc("GdiplusShutdown")
- procGdiplusStartup = modgdiplus.NewProc("GdiplusStartup")
-)
-
-func GdipCreateBitmapFromFile(filename string) (*uintptr, error) {
- var bitmap *uintptr
- ret, _, _ := procGdipCreateBitmapFromFile.Call(
- uintptr(unsafe.Pointer(syscall.StringToUTF16Ptr(filename))),
- uintptr(unsafe.Pointer(&bitmap)))
-
- if ret != Ok {
- return nil, errors.New(fmt.Sprintf("GdipCreateBitmapFromFile failed with status '%s' for file '%s'", GetGpStatus(int32(ret)), filename))
- }
-
- return bitmap, nil
-}
-
-func GdipCreateBitmapFromResource(instance HINSTANCE, resId *uint16) (*uintptr, error) {
- var bitmap *uintptr
- ret, _, _ := procGdipCreateBitmapFromResource.Call(
- uintptr(instance),
- uintptr(unsafe.Pointer(resId)),
- uintptr(unsafe.Pointer(&bitmap)))
-
- if ret != Ok {
- return nil, errors.New(fmt.Sprintf("GdiCreateBitmapFromResource failed with status '%s'", GetGpStatus(int32(ret))))
- }
-
- return bitmap, nil
-}
-
-func GdipCreateBitmapFromStream(stream *IStream) (*uintptr, error) {
- var bitmap *uintptr
- ret, _, _ := procGdipCreateBitmapFromStream.Call(
- uintptr(unsafe.Pointer(stream)),
- uintptr(unsafe.Pointer(&bitmap)))
-
- if ret != Ok {
- return nil, errors.New(fmt.Sprintf("GdipCreateBitmapFromStream failed with status '%s'", GetGpStatus(int32(ret))))
- }
-
- return bitmap, nil
-}
-
-func GdipCreateHBITMAPFromBitmap(bitmap *uintptr, background uint32) (HBITMAP, error) {
- var hbitmap HBITMAP
- ret, _, _ := procGdipCreateHBITMAPFromBitmap.Call(
- uintptr(unsafe.Pointer(bitmap)),
- uintptr(unsafe.Pointer(&hbitmap)),
- uintptr(background))
-
- if ret != Ok {
- return 0, errors.New(fmt.Sprintf("GdipCreateHBITMAPFromBitmap failed with status '%s'", GetGpStatus(int32(ret))))
- }
-
- return hbitmap, nil
-}
-
-func GdipDisposeImage(image *uintptr) {
- procGdipDisposeImage.Call(uintptr(unsafe.Pointer(image)))
-}
-
-func GdiplusShutdown() {
- procGdiplusShutdown.Call(token)
-}
-
-func GdiplusStartup(input *GdiplusStartupInput, output *GdiplusStartupOutput) {
- ret, _, _ := procGdiplusStartup.Call(
- uintptr(unsafe.Pointer(&token)),
- uintptr(unsafe.Pointer(input)),
- uintptr(unsafe.Pointer(output)))
-
- if ret != Ok {
- panic("GdiplusStartup failed with status " + GetGpStatus(int32(ret)))
- }
-}