diff options
author | Simon Garrelou <simon.garrelou@gmail.com> | 2022-12-07 20:21:55 +0100 |
---|---|---|
committer | Simon Garrelou <simon.garrelou@gmail.com> | 2022-12-07 20:21:55 +0100 |
commit | 38fe18fc9b89365566359d075335a8d474f16709 (patch) | |
tree | c2c0161a0bf4561afbfbb2d4ad50597c994db717 | |
parent | f8f5ec9f3b37464094b5264954a60c551304257a (diff) | |
download | termsonic-38fe18fc9b89365566359d075335a8d474f16709.tar.gz termsonic-38fe18fc9b89365566359d075335a8d474f16709.zip |
Use methods instead of functions (makes more sense)
-rw-r--r-- | src/alert.go | 2 | ||||
-rw-r--r-- | src/app.go | 22 | ||||
-rw-r--r-- | src/page_artists.go | 8 | ||||
-rw-r--r-- | src/page_config.go | 12 |
4 files changed, 22 insertions, 22 deletions
diff --git a/src/alert.go b/src/alert.go index 917d089..bfa7321 100644 --- a/src/alert.go +++ b/src/alert.go | |||
@@ -6,7 +6,7 @@ import ( | |||
6 | "github.com/rivo/tview" | 6 | "github.com/rivo/tview" |
7 | ) | 7 | ) |
8 | 8 | ||
9 | func alert(a *app, format string, params ...interface{}) { | 9 | func (a *app) alert(format string, params ...interface{}) { |
10 | modal := tview.NewModal(). | 10 | modal := tview.NewModal(). |
11 | SetText(fmt.Sprintf(format, params...)). | 11 | SetText(fmt.Sprintf(format, params...)). |
12 | AddButtons([]string{"OK"}). | 12 | AddButtons([]string{"OK"}). |
@@ -44,14 +44,14 @@ func Run(cfg *Config) { | |||
44 | cur, _ := a.pages.GetFrontPage() | 44 | cur, _ := a.pages.GetFrontPage() |
45 | 45 | ||
46 | if hl != cur { | 46 | if hl != cur { |
47 | switchToPage(a, hl) | 47 | a.switchToPage(hl) |
48 | } | 48 | } |
49 | }) | 49 | }) |
50 | fmt.Fprintf(a.header, `["artists"]F1: Artists[""] | ["playlists"]F2: Playlists[""] | ["config"]F3: Configuration[""]`) | 50 | fmt.Fprintf(a.header, `["artists"]F1: Artists[""] | ["playlists"]F2: Playlists[""] | ["config"]F3: Configuration[""]`) |
51 | 51 | ||
52 | a.pages.SetBorder(true) | 52 | a.pages.SetBorder(true) |
53 | a.pages.AddPage("config", configPage(a), true, false) | 53 | a.pages.AddPage("config", a.configPage(), true, false) |
54 | a.pages.AddPage("artists", artistsPage(a), true, false) | 54 | a.pages.AddPage("artists", a.artistsPage(), true, false) |
55 | 55 | ||
56 | mainLayout := tview.NewFlex(). | 56 | mainLayout := tview.NewFlex(). |
57 | SetDirection(tview.FlexRow). | 57 | SetDirection(tview.FlexRow). |
@@ -60,14 +60,14 @@ func Run(cfg *Config) { | |||
60 | AddItem(a.footer, 1, 1, false) | 60 | AddItem(a.footer, 1, 1, false) |
61 | 61 | ||
62 | if testConfig(a.cfg) != nil { | 62 | if testConfig(a.cfg) != nil { |
63 | switchToPage(a, "config") | 63 | a.switchToPage("config") |
64 | } else { | 64 | } else { |
65 | a.sub, _ = buildSubsonicClient(a.cfg) | 65 | a.sub, _ = buildSubsonicClient(a.cfg) |
66 | err := refreshArtists(a) | 66 | err := a.refreshArtists() |
67 | if err != nil { | 67 | if err != nil { |
68 | alert(a, "Could not refresh artists: %v", err) | 68 | a.alert("Could not refresh artists: %v", err) |
69 | } else { | 69 | } else { |
70 | switchToPage(a, "artists") | 70 | a.switchToPage("artists") |
71 | } | 71 | } |
72 | } | 72 | } |
73 | 73 | ||
@@ -75,13 +75,13 @@ func Run(cfg *Config) { | |||
75 | a.tv.SetInputCapture(func(event *tcell.EventKey) *tcell.EventKey { | 75 | a.tv.SetInputCapture(func(event *tcell.EventKey) *tcell.EventKey { |
76 | switch event.Key() { | 76 | switch event.Key() { |
77 | case tcell.KeyF1: | 77 | case tcell.KeyF1: |
78 | switchToPage(a, "artists") | 78 | a.switchToPage("artists") |
79 | return nil | 79 | return nil |
80 | case tcell.KeyF2: | 80 | case tcell.KeyF2: |
81 | switchToPage(a, "playlists") | 81 | a.switchToPage("playlists") |
82 | return nil | 82 | return nil |
83 | case tcell.KeyF3: | 83 | case tcell.KeyF3: |
84 | switchToPage(a, "config") | 84 | a.switchToPage("config") |
85 | return nil | 85 | return nil |
86 | } | 86 | } |
87 | 87 | ||
@@ -99,7 +99,7 @@ func Run(cfg *Config) { | |||
99 | } | 99 | } |
100 | } | 100 | } |
101 | 101 | ||
102 | func switchToPage(a *app, name string) { | 102 | func (a *app) switchToPage(name string) { |
103 | switch name { | 103 | switch name { |
104 | case "artists": | 104 | case "artists": |
105 | a.pages.SwitchToPage("artists") | 105 | a.pages.SwitchToPage("artists") |
diff --git a/src/page_artists.go b/src/page_artists.go index 0e1cc72..23d9a1e 100644 --- a/src/page_artists.go +++ b/src/page_artists.go | |||
@@ -13,7 +13,7 @@ type selection struct { | |||
13 | id string | 13 | id string |
14 | } | 14 | } |
15 | 15 | ||
16 | func artistsPage(a *app) tview.Primitive { | 16 | func (a *app) artistsPage() tview.Primitive { |
17 | grid := tview.NewGrid(). | 17 | grid := tview.NewGrid(). |
18 | SetColumns(40, 0). | 18 | SetColumns(40, 0). |
19 | SetBorders(true) | 19 | SetBorders(true) |
@@ -35,7 +35,7 @@ func artistsPage(a *app) tview.Primitive { | |||
35 | return | 35 | return |
36 | } | 36 | } |
37 | 37 | ||
38 | loadAlbumInPanel(a, sel.id) | 38 | a.loadAlbumInPanel(sel.id) |
39 | a.tv.SetFocus(a.songsList) | 39 | a.tv.SetFocus(a.songsList) |
40 | }) | 40 | }) |
41 | 41 | ||
@@ -66,7 +66,7 @@ func artistsPage(a *app) tview.Primitive { | |||
66 | return grid | 66 | return grid |
67 | } | 67 | } |
68 | 68 | ||
69 | func refreshArtists(a *app) error { | 69 | func (a *app) refreshArtists() error { |
70 | artistsID3, err := a.sub.GetArtists(nil) | 70 | artistsID3, err := a.sub.GetArtists(nil) |
71 | if err != nil { | 71 | if err != nil { |
72 | return err | 72 | return err |
@@ -104,7 +104,7 @@ func refreshArtists(a *app) error { | |||
104 | return nil | 104 | return nil |
105 | } | 105 | } |
106 | 106 | ||
107 | func loadAlbumInPanel(a *app, id string) error { | 107 | func (a *app) loadAlbumInPanel(id string) error { |
108 | album, err := a.sub.GetMusicDirectory(id) | 108 | album, err := a.sub.GetMusicDirectory(id) |
109 | if err != nil { | 109 | if err != nil { |
110 | return err | 110 | return err |
diff --git a/src/page_config.go b/src/page_config.go index 090a70b..71662ec 100644 --- a/src/page_config.go +++ b/src/page_config.go | |||
@@ -8,7 +8,7 @@ import ( | |||
8 | "github.com/rivo/tview" | 8 | "github.com/rivo/tview" |
9 | ) | 9 | ) |
10 | 10 | ||
11 | func configPage(a *app) *tview.Form { | 11 | func (a *app) configPage() *tview.Form { |
12 | var err error | 12 | var err error |
13 | 13 | ||
14 | form := tview.NewForm(). | 14 | form := tview.NewForm(). |
@@ -17,23 +17,23 @@ func configPage(a *app) *tview.Form { | |||
17 | AddPasswordField("Password", a.cfg.Password, 20, '*', func(txt string) { a.cfg.Password = txt }). | 17 | AddPasswordField("Password", a.cfg.Password, 20, '*', func(txt string) { a.cfg.Password = txt }). |
18 | AddButton("Test", func() { | 18 | AddButton("Test", func() { |
19 | if err = testConfig(a.cfg); err != nil { | 19 | if err = testConfig(a.cfg); err != nil { |
20 | alert(a, "Could not auth: %v", err) | 20 | a.alert("Could not auth: %v", err) |
21 | } else { | 21 | } else { |
22 | alert(a, "Success.") | 22 | a.alert("Success.") |
23 | } | 23 | } |
24 | }). | 24 | }). |
25 | AddButton("Save", func() { | 25 | AddButton("Save", func() { |
26 | err := a.cfg.Save() | 26 | err := a.cfg.Save() |
27 | if err != nil { | 27 | if err != nil { |
28 | alert(a, "Error saving: %v", err) | 28 | a.alert("Error saving: %v", err) |
29 | return | 29 | return |
30 | } | 30 | } |
31 | 31 | ||
32 | a.sub, err = buildSubsonicClient(a.cfg) | 32 | a.sub, err = buildSubsonicClient(a.cfg) |
33 | if err != nil { | 33 | if err != nil { |
34 | alert(a, "Could not auth: %v", err) | 34 | a.alert("Could not auth: %v", err) |
35 | } else { | 35 | } else { |
36 | alert(a, "All good!") | 36 | a.alert("All good!") |
37 | } | 37 | } |
38 | }) | 38 | }) |
39 | return form | 39 | return form |