forked from fyne-io/fyne
-
Notifications
You must be signed in to change notification settings - Fork 0
/
canvas.go
51 lines (44 loc) · 1.7 KB
/
canvas.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
package fyne
import "image"
// Canvas defines a graphical canvas to which a CanvasObject or Container can be added.
// Each canvas has a scale which is automatically applied during the render process.
type Canvas interface {
Content() CanvasObject
SetContent(CanvasObject)
Refresh(CanvasObject)
Focus(Focusable)
Unfocus()
Focused() Focusable
// Size returns the current size of this canvas
Size() Size
// Scale returns the current scale (multiplication factor) this canvas uses to render
// The pixel size of a CanvasObject can be found by multiplying by this value.
Scale() float32
// SetScale sets ths scale for this canvas only, overriding system and user settings.
//
// Deprecated: Settings are now calculated solely on the user configuration and system setup.
SetScale(float32)
// Overlay returns the current overlay.
//
// Deprecated: Overlays are stacked now.
// This method returns the top of the overlay stack.
// Use Overlays() instead.
Overlay() CanvasObject
// Overlays returns the overlay stack.
Overlays() OverlayStack
// SetOverlay sets the overlay for the canvas.
//
// Deprecated: Overlays are stacked now.
// This method replaces the whole stack by the given overlay.
// Use Overlays() instead.
SetOverlay(CanvasObject)
OnTypedRune() func(rune)
SetOnTypedRune(func(rune))
OnTypedKey() func(*KeyEvent)
SetOnTypedKey(func(*KeyEvent))
AddShortcut(shortcut Shortcut, handler func(shortcut Shortcut))
Capture() image.Image
// PixelCoordinateForPosition returns the x and y pixel coordinate for a given position on this canvas.
// This can be used to find absolute pixel positions or pixel offsets relative to an object top left.
PixelCoordinateForPosition(Position) (int, int)
}