mirror of
https://github.com/vsariola/sointu.git
synced 2025-06-04 01:28:45 -04:00
tracker: remove old unused code
This commit is contained in:
parent
f8ec857c16
commit
366a05c766
@ -1,8 +1,6 @@
|
|||||||
package tracker
|
package tracker
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"os"
|
|
||||||
|
|
||||||
"gioui.org/app"
|
"gioui.org/app"
|
||||||
"gioui.org/io/clipboard"
|
"gioui.org/io/clipboard"
|
||||||
"gioui.org/io/key"
|
"gioui.org/io/key"
|
||||||
@ -32,9 +30,6 @@ func (t *Tracker) Run(w *app.Window) error {
|
|||||||
}
|
}
|
||||||
case system.FrameEvent:
|
case system.FrameEvent:
|
||||||
gtx := layout.NewContext(&ops, e)
|
gtx := layout.NewContext(&ops, e)
|
||||||
if t.QuitButton.Clicked() {
|
|
||||||
os.Exit(0)
|
|
||||||
}
|
|
||||||
t.Layout(gtx)
|
t.Layout(gtx)
|
||||||
e.Frame(gtx.Ops)
|
e.Frame(gtx.Ops)
|
||||||
}
|
}
|
||||||
|
@ -49,7 +49,7 @@ func (t *Tracker) layoutMenuBar(gtx C) D {
|
|||||||
gtx.Constraints.Max.Y = gtx.Px(unit.Dp(36))
|
gtx.Constraints.Max.Y = gtx.Px(unit.Dp(36))
|
||||||
gtx.Constraints.Min.Y = gtx.Px(unit.Dp(36))
|
gtx.Constraints.Min.Y = gtx.Px(unit.Dp(36))
|
||||||
|
|
||||||
for clickedItem, hasClicked := t.FileMenu.Clicked(); hasClicked; {
|
for clickedItem, hasClicked := t.Menus[0].Clicked(); hasClicked; {
|
||||||
switch clickedItem {
|
switch clickedItem {
|
||||||
case 0:
|
case 0:
|
||||||
t.LoadSong(defaultSong.Copy())
|
t.LoadSong(defaultSong.Copy())
|
||||||
@ -58,10 +58,10 @@ func (t *Tracker) layoutMenuBar(gtx C) D {
|
|||||||
case 2:
|
case 2:
|
||||||
t.SaveSongFile()
|
t.SaveSongFile()
|
||||||
}
|
}
|
||||||
clickedItem, hasClicked = t.FileMenu.Clicked()
|
clickedItem, hasClicked = t.Menus[0].Clicked()
|
||||||
}
|
}
|
||||||
|
|
||||||
for clickedItem, hasClicked := t.EditMenu.Clicked(); hasClicked; {
|
for clickedItem, hasClicked := t.Menus[1].Clicked(); hasClicked; {
|
||||||
switch clickedItem {
|
switch clickedItem {
|
||||||
case 0:
|
case 0:
|
||||||
t.Undo()
|
t.Undo()
|
||||||
@ -72,9 +72,9 @@ func (t *Tracker) layoutMenuBar(gtx C) D {
|
|||||||
clipboard.WriteOp{Text: string(contents)}.Add(gtx.Ops)
|
clipboard.WriteOp{Text: string(contents)}.Add(gtx.Ops)
|
||||||
}
|
}
|
||||||
case 3:
|
case 3:
|
||||||
clipboard.ReadOp{Tag: t.EditMenu}.Add(gtx.Ops)
|
clipboard.ReadOp{Tag: &t.Menus[1]}.Add(gtx.Ops)
|
||||||
}
|
}
|
||||||
clickedItem, hasClicked = t.FileMenu.Clicked()
|
clickedItem, hasClicked = t.Menus[1].Clicked()
|
||||||
}
|
}
|
||||||
|
|
||||||
shortcutKey := "Ctrl+"
|
shortcutKey := "Ctrl+"
|
||||||
@ -82,12 +82,12 @@ func (t *Tracker) layoutMenuBar(gtx C) D {
|
|||||||
shortcutKey = "Cmd+"
|
shortcutKey = "Cmd+"
|
||||||
}
|
}
|
||||||
return layout.Flex{Axis: layout.Horizontal}.Layout(gtx,
|
return layout.Flex{Axis: layout.Horizontal}.Layout(gtx,
|
||||||
layout.Rigid(t.layoutMenu("File", &t.MenuBar[0], t.FileMenu, unit.Dp(200),
|
layout.Rigid(t.layoutMenu("File", &t.MenuBar[0], &t.Menus[0], unit.Dp(200),
|
||||||
MenuItem{IconBytes: icons.ContentClear, Text: "New Song", ShortcutText: shortcutKey + "N"},
|
MenuItem{IconBytes: icons.ContentClear, Text: "New Song", ShortcutText: shortcutKey + "N"},
|
||||||
MenuItem{IconBytes: icons.FileFolder, Text: "Open Song", ShortcutText: shortcutKey + "O"},
|
MenuItem{IconBytes: icons.FileFolder, Text: "Open Song", ShortcutText: shortcutKey + "O"},
|
||||||
MenuItem{IconBytes: icons.ContentSave, Text: "Save Song", ShortcutText: shortcutKey + "S"},
|
MenuItem{IconBytes: icons.ContentSave, Text: "Save Song", ShortcutText: shortcutKey + "S"},
|
||||||
)),
|
)),
|
||||||
layout.Rigid(t.layoutMenu("Edit", &t.MenuBar[1], t.EditMenu, unit.Dp(160),
|
layout.Rigid(t.layoutMenu("Edit", &t.MenuBar[1], &t.Menus[1], unit.Dp(160),
|
||||||
MenuItem{IconBytes: icons.ContentUndo, Text: "Undo", ShortcutText: shortcutKey + "Z", Disabled: len(t.undoStack) == 0},
|
MenuItem{IconBytes: icons.ContentUndo, Text: "Undo", ShortcutText: shortcutKey + "Z", Disabled: len(t.undoStack) == 0},
|
||||||
MenuItem{IconBytes: icons.ContentRedo, Text: "Redo", ShortcutText: shortcutKey + "Y", Disabled: len(t.redoStack) == 0},
|
MenuItem{IconBytes: icons.ContentRedo, Text: "Redo", ShortcutText: shortcutKey + "Y", Disabled: len(t.redoStack) == 0},
|
||||||
MenuItem{IconBytes: icons.ContentContentCopy, Text: "Copy", ShortcutText: shortcutKey + "C"},
|
MenuItem{IconBytes: icons.ContentContentCopy, Text: "Copy", ShortcutText: shortcutKey + "C"},
|
||||||
|
@ -26,7 +26,6 @@ const (
|
|||||||
)
|
)
|
||||||
|
|
||||||
type Tracker struct {
|
type Tracker struct {
|
||||||
QuitButton *widget.Clickable
|
|
||||||
songPlayMutex sync.RWMutex // protects song and playing
|
songPlayMutex sync.RWMutex // protects song and playing
|
||||||
song sointu.Song
|
song sointu.Song
|
||||||
Playing bool
|
Playing bool
|
||||||
@ -36,15 +35,12 @@ type Tracker struct {
|
|||||||
EditMode EditMode
|
EditMode EditMode
|
||||||
SelectionCorner SongPoint
|
SelectionCorner SongPoint
|
||||||
Cursor SongPoint
|
Cursor SongPoint
|
||||||
FileMenu *Menu
|
MenuBar []widget.Clickable
|
||||||
EditMenu *Menu
|
Menus []Menu
|
||||||
CursorColumn int
|
CursorColumn int
|
||||||
CurrentInstrument int
|
CurrentInstrument int
|
||||||
CurrentUnit int
|
CurrentUnit int
|
||||||
CurrentParam int
|
CurrentParam int
|
||||||
UnitGroupMenuVisible bool
|
|
||||||
UnitGroupMenuIndex int
|
|
||||||
UnitSubMenuIndex int
|
|
||||||
NoteTracking bool
|
NoteTracking bool
|
||||||
Theme *material.Theme
|
Theme *material.Theme
|
||||||
Octave *NumberInput
|
Octave *NumberInput
|
||||||
@ -55,22 +51,14 @@ type Tracker struct {
|
|||||||
TrackVoices *NumberInput
|
TrackVoices *NumberInput
|
||||||
InstrumentNameEditor *widget.Editor
|
InstrumentNameEditor *widget.Editor
|
||||||
NewTrackBtn *widget.Clickable
|
NewTrackBtn *widget.Clickable
|
||||||
CopySongBtn *widget.Clickable
|
|
||||||
PasteBtn *widget.Clickable
|
|
||||||
NewInstrumentBtn *widget.Clickable
|
NewInstrumentBtn *widget.Clickable
|
||||||
DeleteInstrumentBtn *widget.Clickable
|
DeleteInstrumentBtn *widget.Clickable
|
||||||
LoadSongFileBtn *widget.Clickable
|
|
||||||
NewSongFileBtn *widget.Clickable
|
|
||||||
AddSemitoneBtn *widget.Clickable
|
AddSemitoneBtn *widget.Clickable
|
||||||
SubtractSemitoneBtn *widget.Clickable
|
SubtractSemitoneBtn *widget.Clickable
|
||||||
AddOctaveBtn *widget.Clickable
|
AddOctaveBtn *widget.Clickable
|
||||||
SubtractOctaveBtn *widget.Clickable
|
SubtractOctaveBtn *widget.Clickable
|
||||||
SongLength *NumberInput
|
SongLength *NumberInput
|
||||||
SaveSongFileBtn *widget.Clickable
|
|
||||||
FileMenuBtn *widget.Clickable
|
|
||||||
PanicBtn *widget.Clickable
|
PanicBtn *widget.Clickable
|
||||||
MenuBar []widget.Clickable
|
|
||||||
FileMenuVisible bool
|
|
||||||
ParameterSliders []*widget.Float
|
ParameterSliders []*widget.Float
|
||||||
ParameterList *layout.List
|
ParameterList *layout.List
|
||||||
UnitDragList *DragList
|
UnitDragList *DragList
|
||||||
@ -90,12 +78,7 @@ type Tracker struct {
|
|||||||
|
|
||||||
sequencer *Sequencer
|
sequencer *Sequencer
|
||||||
refresh chan struct{}
|
refresh chan struct{}
|
||||||
setPlaying chan bool
|
|
||||||
rowJump chan int
|
|
||||||
patternJump chan int
|
|
||||||
audioContext sointu.AudioContext
|
audioContext sointu.AudioContext
|
||||||
playBuffer []float32
|
|
||||||
closer chan struct{}
|
|
||||||
undoStack []sointu.Song
|
undoStack []sointu.Song
|
||||||
redoStack []sointu.Song
|
redoStack []sointu.Song
|
||||||
}
|
}
|
||||||
@ -141,7 +124,6 @@ func clamp(a, min, max int) int {
|
|||||||
|
|
||||||
func (t *Tracker) Close() {
|
func (t *Tracker) Close() {
|
||||||
t.audioContext.Close()
|
t.audioContext.Close()
|
||||||
t.closer <- struct{}{}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func (t *Tracker) SetPlaying(value bool) {
|
func (t *Tracker) SetPlaying(value bool) {
|
||||||
@ -654,7 +636,6 @@ func (t *Tracker) Unselect() {
|
|||||||
func New(audioContext sointu.AudioContext, synthService sointu.SynthService) *Tracker {
|
func New(audioContext sointu.AudioContext, synthService sointu.SynthService) *Tracker {
|
||||||
t := &Tracker{
|
t := &Tracker{
|
||||||
Theme: material.NewTheme(gofont.Collection()),
|
Theme: material.NewTheme(gofont.Collection()),
|
||||||
QuitButton: new(widget.Clickable),
|
|
||||||
audioContext: audioContext,
|
audioContext: audioContext,
|
||||||
BPM: new(NumberInput),
|
BPM: new(NumberInput),
|
||||||
Octave: new(NumberInput),
|
Octave: new(NumberInput),
|
||||||
@ -667,12 +648,6 @@ func New(audioContext sointu.AudioContext, synthService sointu.SynthService) *Tr
|
|||||||
NewTrackBtn: new(widget.Clickable),
|
NewTrackBtn: new(widget.Clickable),
|
||||||
NewInstrumentBtn: new(widget.Clickable),
|
NewInstrumentBtn: new(widget.Clickable),
|
||||||
DeleteInstrumentBtn: new(widget.Clickable),
|
DeleteInstrumentBtn: new(widget.Clickable),
|
||||||
NewSongFileBtn: new(widget.Clickable),
|
|
||||||
CopySongBtn: new(widget.Clickable),
|
|
||||||
PasteBtn: new(widget.Clickable),
|
|
||||||
FileMenuBtn: new(widget.Clickable),
|
|
||||||
LoadSongFileBtn: new(widget.Clickable),
|
|
||||||
SaveSongFileBtn: new(widget.Clickable),
|
|
||||||
AddSemitoneBtn: new(widget.Clickable),
|
AddSemitoneBtn: new(widget.Clickable),
|
||||||
SubtractSemitoneBtn: new(widget.Clickable),
|
SubtractSemitoneBtn: new(widget.Clickable),
|
||||||
AddOctaveBtn: new(widget.Clickable),
|
AddOctaveBtn: new(widget.Clickable),
|
||||||
@ -681,15 +656,10 @@ func New(audioContext sointu.AudioContext, synthService sointu.SynthService) *Tr
|
|||||||
DeleteUnitBtn: new(widget.Clickable),
|
DeleteUnitBtn: new(widget.Clickable),
|
||||||
ClearUnitBtn: new(widget.Clickable),
|
ClearUnitBtn: new(widget.Clickable),
|
||||||
PanicBtn: new(widget.Clickable),
|
PanicBtn: new(widget.Clickable),
|
||||||
FileMenu: new(Menu),
|
Menus: make([]Menu, 2),
|
||||||
EditMenu: new(Menu),
|
|
||||||
MenuBar: make([]widget.Clickable, 2),
|
MenuBar: make([]widget.Clickable, 2),
|
||||||
UnitDragList: &DragList{List: &layout.List{Axis: layout.Vertical}},
|
UnitDragList: &DragList{List: &layout.List{Axis: layout.Vertical}},
|
||||||
setPlaying: make(chan bool),
|
|
||||||
rowJump: make(chan int),
|
|
||||||
patternJump: make(chan int),
|
|
||||||
refresh: make(chan struct{}, 1), // use non-blocking sends; no need to queue extra ticks if one is queued already
|
refresh: make(chan struct{}, 1), // use non-blocking sends; no need to queue extra ticks if one is queued already
|
||||||
closer: make(chan struct{}),
|
|
||||||
undoStack: []sointu.Song{},
|
undoStack: []sointu.Song{},
|
||||||
redoStack: []sointu.Song{},
|
redoStack: []sointu.Song{},
|
||||||
InstrumentDragList: &DragList{List: &layout.List{Axis: layout.Horizontal}},
|
InstrumentDragList: &DragList{List: &layout.List{Axis: layout.Horizontal}},
|
||||||
|
Loading…
x
Reference in New Issue
Block a user