giodriver

package module
v0.0.0-...-baa6a99 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 4, 2021 License: Apache-2.0 Imports: 19 Imported by: 0

README

giodriver

Experimental oak driver using gio

Status

Occasional flickering

giodriver

Can this fundamentally work? Gio seems designed for:

  • Things that won't update often
  • Things that are largely defined by Gio's layout objects

... neither of which applies to oak.

A starting point for further thoughts.

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Driver

func Driver(f func(screen.Screen))

Types

type Deque

type Deque struct {
	// contains filtered or unexported fields
}

Deque is an infinitely buffered double-ended queue of events. The zero value is usable, but a Deque value must not be copied.

func (*Deque) NextEvent

func (q *Deque) NextEvent() interface{}

NextEvent implements the screen.EventDeque interface.

func (*Deque) Send

func (q *Deque) Send(event interface{})

Send implements the screen.EventDeque interface.

func (*Deque) SendFirst

func (q *Deque) SendFirst(event interface{})

SendFirst implements the screen.EventDeque interface.

type Image

type Image struct {
	// contains filtered or unexported fields
}

func (Image) Bounds

func (ii Image) Bounds() image.Rectangle

func (Image) RGBA

func (ii Image) RGBA() *image.RGBA

func (Image) Release

func (Image) Release()

func (Image) Size

func (ii Image) Size() image.Point

type Screen

type Screen struct {
	// contains filtered or unexported fields
}

func (*Screen) NewImage

func (s *Screen) NewImage(size image.Point) (screen.Image, error)

func (*Screen) NewTexture

func (s *Screen) NewTexture(size image.Point) (screen.Texture, error)

func (*Screen) NewWindow

func (s *Screen) NewWindow(opts screen.WindowGenerator) (screen.Window, error)

type SetAnimator

type SetAnimator interface {
	SetAnimating(bool)
}

type Texture

type Texture struct {
	// contains filtered or unexported fields
}

func (*Texture) Bounds

func (ti *Texture) Bounds() image.Rectangle

func (*Texture) Fill

func (*Texture) Fill(dr image.Rectangle, src color.Color, op draw.Op)

func (*Texture) Release

func (*Texture) Release()

func (*Texture) Size

func (ti *Texture) Size() image.Point

func (*Texture) Upload

func (ti *Texture) Upload(dp image.Point, src screen.Image, sr image.Rectangle)

type Window

type Window struct {
	*Deque
	// contains filtered or unexported fields
}

func (*Window) Copy

func (w *Window) Copy(dp image.Point, src screen.Texture, sr image.Rectangle, op draw.Op)

func (*Window) Draw

func (w *Window) Draw(src2dst f64.Aff3, src screen.Texture, sr image.Rectangle, op draw.Op)

func (*Window) DrawUniform

func (w *Window) DrawUniform(src2dst f64.Aff3, src color.Color, sr image.Rectangle, op draw.Op)

func (*Window) Fill

func (w *Window) Fill(dr image.Rectangle, src color.Color, op draw.Op)

func (*Window) Publish

func (w *Window) Publish() screen.PublishResult

func (*Window) Release

func (w *Window) Release()

func (*Window) Scale

func (w *Window) Scale(dr image.Rectangle, src screen.Texture, sr image.Rectangle, op draw.Op)

func (*Window) Upload

func (w *Window) Upload(dp image.Point, src screen.Image, sr image.Rectangle)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL