Add RGFW backend
This commit is contained in:
parent
1868520849
commit
7810550d63
23 changed files with 8110 additions and 28 deletions
102
raylib/platform_desktop_rgfw.go
Normal file
102
raylib/platform_desktop_rgfw.go
Normal file
|
@ -0,0 +1,102 @@
|
|||
//go:build rgfw && !sdl && !drm && !android
|
||||
// +build rgfw,!sdl,!drm,!android
|
||||
|
||||
package rl
|
||||
|
||||
/*
|
||||
#include "raylib.h"
|
||||
#include <stdlib.h>
|
||||
*/
|
||||
import "C"
|
||||
|
||||
import (
|
||||
"os"
|
||||
"unsafe"
|
||||
)
|
||||
|
||||
// InitWindow - Initialize Window and OpenGL Graphics
|
||||
func InitWindow(width int32, height int32, title string) {
|
||||
cwidth := (C.int)(width)
|
||||
cheight := (C.int)(height)
|
||||
|
||||
ctitle := C.CString(title)
|
||||
defer C.free(unsafe.Pointer(ctitle))
|
||||
|
||||
C.InitWindow(cwidth, cheight, ctitle)
|
||||
}
|
||||
|
||||
// SetCallbackFunc - Sets callback function
|
||||
func SetCallbackFunc(func()) {
|
||||
}
|
||||
|
||||
// ShowCursor - Shows cursor
|
||||
func ShowCursor() {
|
||||
C.ShowCursor()
|
||||
}
|
||||
|
||||
// HideCursor - Hides cursor
|
||||
func HideCursor() {
|
||||
C.HideCursor()
|
||||
}
|
||||
|
||||
// IsCursorHidden - Returns true if cursor is not visible
|
||||
func IsCursorHidden() bool {
|
||||
ret := C.IsCursorHidden()
|
||||
v := bool(ret)
|
||||
|
||||
return v
|
||||
}
|
||||
|
||||
// IsCursorOnScreen - Check if cursor is on the current screen.
|
||||
func IsCursorOnScreen() bool {
|
||||
ret := C.IsCursorOnScreen()
|
||||
v := bool(ret)
|
||||
|
||||
return v
|
||||
}
|
||||
|
||||
// EnableCursor - Enables cursor
|
||||
func EnableCursor() {
|
||||
C.EnableCursor()
|
||||
}
|
||||
|
||||
// DisableCursor - Disables cursor
|
||||
func DisableCursor() {
|
||||
C.DisableCursor()
|
||||
}
|
||||
|
||||
// IsFileDropped - Check if a file have been dropped into window
|
||||
func IsFileDropped() bool {
|
||||
ret := C.IsFileDropped()
|
||||
v := bool(ret)
|
||||
|
||||
return v
|
||||
}
|
||||
|
||||
// LoadDroppedFiles - Load dropped filepaths
|
||||
func LoadDroppedFiles() []string {
|
||||
ret := C.LoadDroppedFiles()
|
||||
defer C.UnloadDroppedFiles(ret)
|
||||
|
||||
tmpslice := (*[1 << 24]*C.char)(unsafe.Pointer(ret.paths))[:ret.count:ret.count]
|
||||
gostrings := make([]string, ret.count)
|
||||
for i, s := range tmpslice {
|
||||
gostrings[i] = C.GoString(s)
|
||||
}
|
||||
|
||||
return gostrings
|
||||
}
|
||||
|
||||
// UnloadDroppedFiles - Unload dropped filepaths
|
||||
func UnloadDroppedFiles() {
|
||||
}
|
||||
|
||||
// OpenAsset - Open asset
|
||||
func OpenAsset(name string) (Asset, error) {
|
||||
f, err := os.Open(name)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return f, nil
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue