-
Notifications
You must be signed in to change notification settings - Fork 0
/
start_stop_toolbar_action.go
39 lines (30 loc) · 1.15 KB
/
start_stop_toolbar_action.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
// Package jsdrgui contains the detailed widgets used in the go_sdr app.
package jsdrgui
import (
"fmt"
"internal/gui"
"fyne.io/fyne/v2"
"fyne.io/fyne/v2/canvas"
)
// StartStopToolbarAction is a gui.TwoStateToolbarAction that defines the actions performed by the SDR start/stop toolbar button.
type StartStopToolbarAction struct {
action *gui.TwoStateToolbarAction
}
// NewStartStopToolbarAction creates a StartStopToolbarAction object.
func NewStartStopToolbarAction() *StartStopToolbarAction {
startIcon := canvas.NewImageFromResource(resourceStartSvg).Resource
stopIcon := canvas.NewImageFromResource(resourceStopSvg).Resource
startStop := StartStopToolbarAction{}
startStop.action = gui.NewTwoStateToolbarAction(startIcon, stopIcon, startStop.startActivated, startStop.stopActivated)
return &startStop
}
// ToolbarObject returns a pointer to the underlying TwoStateToolbarObject
func (t *StartStopToolbarAction) ToolbarObject() fyne.CanvasObject {
return t.action.ToolbarObject()
}
func (t *StartStopToolbarAction) startActivated() {
fmt.Println("In startActivated")
}
func (t *StartStopToolbarAction) stopActivated() {
fmt.Println("In stopActivated")
}