Skip to content

Commit dae5d6f

Browse files
committed
Add ability to run the whole project
1 parent 456876d commit dae5d6f

File tree

4 files changed

+26
-2
lines changed

4 files changed

+26
-2
lines changed

assets/folder-play.svg

Lines changed: 4 additions & 0 deletions
Loading

bundled.go

Lines changed: 5 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

main.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
1-
//go:generate fyne bundle -o bundled.go Icon.png
1+
//go:generate fyne bundle -o bundled.go assets
2+
//go:generate fyne bundle -a -o bundled.go Icon.png
23

34
package main
45

menus.go

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@ package main
22

33
import (
44
"net/url"
5+
"os"
6+
"os/exec"
57
"strings"
68

79
"github.com/fyne-io/defyne/internal/envcheck"
@@ -59,6 +61,14 @@ func (d *defyne) menuActionNew() {
5961
}, d.win)
6062
}
6163

64+
func (d *defyne) menuActionRunProject() {
65+
cmd := exec.Command("go", "run", ".")
66+
cmd.Dir = d.projectRoot.Path()
67+
cmd.Stderr = os.Stderr
68+
cmd.Stdout = os.Stdout
69+
cmd.Start()
70+
}
71+
6272
func (d *defyne) menuActionRun() {
6373
if ed, ok := d.openEditors[d.fileTabs.Selected()]; ok {
6474
ed.run()
@@ -79,7 +89,9 @@ func (d *defyne) makeMenu() *fyne.MainMenu {
7989
fyne.NewMenuItem("New File...", d.menuActionNew),
8090
fyne.NewMenuItemSeparator(),
8191
fyne.NewMenuItem("Save", d.menuActionSave),
92+
fyne.NewMenuItemSeparator(),
8293
fyne.NewMenuItem("Run", d.menuActionRun),
94+
fyne.NewMenuItem("Run Project", d.menuActionRunProject),
8395
),
8496
fyne.NewMenu("Help",
8597
fyne.NewMenuItem("Documentation", func() {
@@ -107,5 +119,7 @@ func (d *defyne) makeToolbar() *widget.Toolbar {
107119
return widget.NewToolbar(
108120
widget.NewToolbarAction(theme.FileIcon(), d.menuActionNew),
109121
widget.NewToolbarAction(theme.DocumentSaveIcon(), d.menuActionSave),
110-
widget.NewToolbarAction(theme.MailForwardIcon(), d.menuActionRun))
122+
widget.NewToolbarSeparator(),
123+
widget.NewToolbarAction(theme.MediaPlayIcon(), d.menuActionRun),
124+
widget.NewToolbarAction(theme.NewThemedResource(resourceFolderPlaySvg), d.menuActionRunProject))
111125
}

0 commit comments

Comments
 (0)