aboutsummaryrefslogtreecommitdiff
path: root/Erable/ViewModels
diff options
context:
space:
mode:
authorAndrew Lee <alee14498@protonmail.com>2021-02-01 22:13:46 -0500
committerAndrew Lee <alee14498@protonmail.com>2021-02-01 22:13:46 -0500
commitc7428fab1c38d29bcc50ee263678504e34d01318 (patch)
treebf5c4a63afc1513d361c6b18fd6c6cf3f0aaaa27 /Erable/ViewModels
parentd5f8e3f543e138b43fca95ed058345b9ab446d2f (diff)
downloaderable-godot-c7428fab1c38d29bcc50ee263678504e34d01318.tar.gz
erable-godot-c7428fab1c38d29bcc50ee263678504e34d01318.tar.bz2
erable-godot-c7428fab1c38d29bcc50ee263678504e34d01318.zip
Moved project files
Diffstat (limited to 'Erable/ViewModels')
-rw-r--r--Erable/ViewModels/MainWindowViewModel.cs36
-rw-r--r--Erable/ViewModels/ViewModelBase.cs11
2 files changed, 47 insertions, 0 deletions
diff --git a/Erable/ViewModels/MainWindowViewModel.cs b/Erable/ViewModels/MainWindowViewModel.cs
new file mode 100644
index 0000000..0c51fbd
--- /dev/null
+++ b/Erable/ViewModels/MainWindowViewModel.cs
@@ -0,0 +1,36 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+using Avalonia.Controls;
+using Gst;
+
+namespace Erable.ViewModels
+{
+ public class MainWindowViewModel : ViewModelBase
+ {
+ public string Greeting => "Welcome to Erable Audio Player!";
+
+ public void PlayFunction(string[] args)
+ {
+ Application.Init(ref args);
+ // Build the pipeline
+ var pipeline = Parse.Launch("playbin uri=file:///home/andrew/Music/4616-werq-by-kevin-macleod.mp3");
+
+ // Start playing
+ pipeline.SetState(State.Playing);
+
+ // Wait until error or EOS
+ var bus = pipeline.Bus;
+ var msg = bus.TimedPopFiltered (Constants.CLOCK_TIME_NONE, MessageType.Eos | MessageType.Error);
+
+ // Free resources
+ //pipeline.SetState (State.Null);
+ }
+
+ public void BrowseFunction()
+ {
+ //OpenFileDialog dialog = new OpenFileDialog();
+ //dialog.Filters.Add(new FileDialogFilter() {Name = "Audio Files", Extensions = {"mp3"}});
+ }
+ }
+}
diff --git a/Erable/ViewModels/ViewModelBase.cs b/Erable/ViewModels/ViewModelBase.cs
new file mode 100644
index 0000000..6ab8d21
--- /dev/null
+++ b/Erable/ViewModels/ViewModelBase.cs
@@ -0,0 +1,11 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+using ReactiveUI;
+
+namespace Erable.ViewModels
+{
+ public class ViewModelBase : ReactiveObject
+ {
+ }
+}