diff --git a/WinPlaza/App.xaml b/WinPlaza/App.xaml
index ca8912c..42474cb 100644
--- a/WinPlaza/App.xaml
+++ b/WinPlaza/App.xaml
@@ -1,9 +1,8 @@
-
-
-
+ xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
+ xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
+ xmlns:local="clr-namespace:WinPlaza"
+ StartupUri="MainWindow.xaml">
+
+
diff --git a/WinPlaza/MainWindow.xaml b/WinPlaza/MainWindow.xaml
index e139d5d..e3b8a8e 100644
--- a/WinPlaza/MainWindow.xaml
+++ b/WinPlaza/MainWindow.xaml
@@ -5,60 +5,63 @@
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:WinPlaza"
mc:Ignorable="d"
- Title="Nightwave.Net" Height="200" Width="480" Background="#FFF0F0F0" ResizeMode="CanMinimize">
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+ Title="Nightwave.Net" Height="200" Width="480" Background="#FFF0F0F0" ResizeMode="CanMinimize" Deactivated="Window_Deactivated" Activated="Window_Activated" UseLayoutRounding="True">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/WinPlaza/MainWindow.xaml.cs b/WinPlaza/MainWindow.xaml.cs
index 86a24ee..6b44cc2 100644
--- a/WinPlaza/MainWindow.xaml.cs
+++ b/WinPlaza/MainWindow.xaml.cs
@@ -9,54 +9,72 @@ using ManagedBass;
namespace WinPlaza {
public partial class MainWindow : Window {
+ #region StateVars
static readonly object BufferLock=new object();
private int BuffCh;
private int BufferReqs;
- string LastArtwork="";
- Nightwave plaza=new Nightwave();
- Timer tRefresh;
- Timer tAudio;
- Timer tGfx;
- bool AudioInit=false;
- public MainWindow() {
- InitializeComponent();
- tRefresh = new Timer(300) { AutoReset = true };
- tRefresh.Elapsed += EvtRefresh;
- tRefresh.Start();
- if(!Bass.Init())
- sbStatus.Text = "Unable to initialise audio subsystem";
- else
- AudioInit = true;
- if(!AudioInit)
- return;
- tAudio = new Timer(50);
- tAudio.Elapsed += EvtAudio;
- tGfx = new Timer(18) { AutoReset = true };
- tGfx.Elapsed += EvtRender;
- Bass.NetPlaylist = 1;
- Bass.NetPreBuffer = 0;
-
- }
-
- private void EvtRender(object sender, ElapsedEventArgs e) => Dispatcher.BeginInvoke(new dgtNoParam(Leveller));
+ private int MuteVol=-1;
+ private int GfxWidthStep=-1;
+ private string LastArtwork="";
+ private Nightwave plaza=new Nightwave();
+ private Timer tRefresh;
+ private Timer tAudio;
+ private Timer tGfx;
+ private bool AudioInit=false;
+ #endregion
+ #region Delegates
+ private delegate void dgtNoParam();
+ private delegate void dgtBool(bool b);
+ private delegate void dgtStr(string s);
+ #endregion
+ #region CrossThreadCalls
private void Leveller() {
- int pxT=(32768/(int)chLeftCvs.ActualWidth);
- int left=Bass.ChannelGetLevelLeft(BuffCh);
- int right=Bass.ChannelGetLevelRight(BuffCh);
- chLeft.Width = (left / pxT);
- chRight.Width = (right / pxT);
+ if(GfxWidthStep<0)
+ GfxWidthStep = 32768 / (int)chLeftCvs.ActualWidth;
+ chLeft.Width = Bass.ChannelGetLevelLeft(BuffCh) / GfxWidthStep;
+ chRight.Width = Bass.ChannelGetLevelRight(BuffCh) / GfxWidthStep;
}
- private void EvtAudio(object sender, ElapsedEventArgs e) =>
- _ = Dispatcher.BeginInvoke(new dgtNoParam(dgtAud));
-
- ~MainWindow() {
- if(AudioInit)
- _ = Bass.Free();
+ private void SetStatus(string msg) =>
+ Dispatcher.BeginInvoke(new dgtStr(_Status), msg);
+ private void SetTitle(string msg) =>
+ Dispatcher.BeginInvoke(new dgtStr(_Title), msg);
+ private async void dgtRefresh(bool Force = false) {
+ Nightwave.Status s=await plaza.Broadcast(Force);
+ slDuration.Value = s.CalculatedElapsed;
+ sbListeners.Text = $"{s.Listeners} listeners";
+ lbLikeCt.Content = s.Likes;
+ lbDislikeCt.Content = s.Dislikes;
+ lbElapsed.Content = $"{(s.CalculatedElapsed / 60).ToString("D")}:{(s.CalculatedElapsed % 60).ToString("D2")}";
+ if(LastArtwork != s.ArtworkUri||Force) {
+ lbArtist.Content = s.Artist;
+ lbTitle.Content = s.Title;
+ lbAlbum.Content = s.Album;
+ if(btPlayPause.IsChecked == true)
+ SetTitle($"▶ {s.Title} - {s.Artist}");
+ slDuration.Maximum = s.Duration;
+ lbTime.Content = $"{(s.Duration / 60).ToString("D")}:{(s.Duration % 60).ToString("D2")}";
+ if(LastArtwork != s.ArtworkUri)
+ art.Source = new BitmapImage(new Uri(s.ArtworkUri));
+ LastArtwork = s.ArtworkUri;
+ }
}
- private void _Status(string s) => sbStatus.Text = s;
- private void SetStatus(string msg) => Dispatcher.BeginInvoke(new dgtStr(_Status), msg);
- private void _Title(string s) => Title = s;
- private void SetTitle(string msg) => Dispatcher.BeginInvoke(new dgtStr(_Title), msg);
+ private void dgtAud() {
+ long progress = Bass.StreamGetFilePosition(BuffCh, FileStreamPosition.Buffer)
+ * 100 / Bass.StreamGetFilePosition(BuffCh, FileStreamPosition.End);
+ if(progress > 75 || Bass.StreamGetFilePosition(BuffCh, FileStreamPosition.Connected) == 0) {
+ tAudio.Stop();
+ SetStatus("Playing");
+ SetTitle($"▶ {lbTitle.Content} - {lbArtist.Content}");
+ tGfx.Start();
+ _ = Bass.ChannelSetSync(BuffCh, SyncFlags.MetadataReceived, 0, MetaSync);
+ _ = Bass.ChannelSetSync(BuffCh, SyncFlags.OggChange, 0, MetaSync);
+ _ = Bass.ChannelSetSync(BuffCh, SyncFlags.End, 0, EndSync);
+ _ = Bass.ChannelPlay(BuffCh);
+ } else
+ SetStatus($"Buffering... {progress}%");
+ }
+ #endregion
+ #region PlaybackControllers
private void LoadUri(string uri) => Task.Factory.StartNew(() => {
int r;
lock(BufferLock)
@@ -77,70 +95,6 @@ namespace WinPlaza {
else
tAudio.Start();
});
- private void StatusProc(IntPtr buf, int len, IntPtr usr) {
- if(buf != IntPtr.Zero && len == 0 && usr.ToInt32() == BufferReqs)
- SetStatus(Marshal.PtrToStringAnsi(buf));
- }
- private void EndSync(int hdl, int ch, int dat, IntPtr usr) {
- SetStatus("Idle..");
- SetTitle("Nightwave.Net");
- }
- private void MetaSync(int hdl, int ch, int dat, IntPtr usr) => Dispatcher.BeginInvoke(new dgtBool(dgtRefresh), true);
- private void EvtRefresh(object sender, ElapsedEventArgs e) =>
- _ = Dispatcher.BeginInvoke(new dgtBool(dgtRefresh), false);
- private delegate void dgtNoParam();
- private delegate void dgtBool(bool b);
- private delegate void dgtStr(string s);
- private async void dgtRefresh(bool Force = false) {
- Nightwave.Status s=await plaza.Broadcast(Force);
- slDuration.Value = s.CalculatedElapsed;
- sbListeners.Text = $"{s.Listeners} listeners";
- lbLikeCt.Content = s.Likes;
- lbDislikeCt.Content = s.Dislikes;
- lbElapsed.Content = $"{(s.CalculatedElapsed / 60).ToString("D")}:{(s.CalculatedElapsed % 60).ToString("D2")}";
- if(LastArtwork != s.ArtworkUri) {
- lbArtist.Content = s.Artist;
- lbTitle.Content = s.Title;
- lbAlbum.Content = s.Album;
- if(btPlayPause.IsChecked == true)
- SetTitle($"▶ {s.Title} - {s.Artist}");
- slDuration.Maximum = s.Duration;
- lbTime.Content = $"{(s.Duration / 60).ToString("D")}:{(s.Duration % 60).ToString("D2")}";
- art.Source = new BitmapImage(new Uri(s.ArtworkUri));
- LastArtwork = s.ArtworkUri;
- }
- }
- private void dgtAud() {
- long progress = Bass.StreamGetFilePosition(BuffCh, FileStreamPosition.Buffer)
- * 100 / Bass.StreamGetFilePosition(BuffCh, FileStreamPosition.End);
- if(progress > 75 || Bass.StreamGetFilePosition(BuffCh, FileStreamPosition.Connected) == 0) {
- tAudio.Stop();
-
- sbStatus.Text = "Playing";
- SetTitle($"▶ {lbTitle.Content} - {lbArtist.Content}");
- tGfx.Start();
- /*
- IntPtr icy = Bass.ChannelGetTags(BuffCh, TagType.ICY);
- if(icy == IntPtr.Zero)
- icy = Bass.ChannelGetTags(BuffCh, TagType.HTTP);
- if(icy != IntPtr.Zero) {
- foreach(string tag in Extensions.ExtractMultiStringAnsi(icy)) {
- string icymeta = string.Empty;
- if(tag.StartsWith("icy-name:"))
- icymeta += $"ICY Name: {tag.Substring(9)}";
- if(tag.StartsWith("icy-url:"))
- icymeta += $"ICY Url: {tag.Substring(8)}";
- //IcyMeta = icymeta;
- }
- }*/
- _ = Bass.ChannelSetSync(BuffCh, SyncFlags.MetadataReceived, 0, MetaSync);
- _ = Bass.ChannelSetSync(BuffCh, SyncFlags.OggChange, 0, MetaSync);
- _ = Bass.ChannelSetSync(BuffCh, SyncFlags.End, 0, EndSync);
- _ = Bass.ChannelPlay(BuffCh);
- } else
- sbStatus.Text = $"Buffering... {progress}%";
- }
-
private void PlazaLoad() => LoadUri("https://radio.plaza.one/ogg");
private void PlazaStop() {
tGfx.Stop();
@@ -154,7 +108,24 @@ namespace WinPlaza {
SetTitle("Nightwave.Net");
}
}
-
+ #endregion
+ #region EventHandlers
+ private void EndSync(int hdl, int ch, int dat, IntPtr usr) {
+ SetStatus("Idle..");
+ SetTitle("Nightwave.Net");
+ }
+ private void MetaSync(int hdl, int ch, int dat, IntPtr usr) =>
+ Dispatcher.BeginInvoke(new dgtBool(dgtRefresh), true);
+ private void StatusProc(IntPtr buf, int len, IntPtr usr) {
+ if(buf != IntPtr.Zero && len == 0 && usr.ToInt32() == BufferReqs)
+ SetStatus(Marshal.PtrToStringAnsi(buf));
+ }
+ private void EvtRefresh(object sender, ElapsedEventArgs e) =>
+ _ = Dispatcher.BeginInvoke(new dgtBool(dgtRefresh), false);
+ private void EvtAudio(object sender, ElapsedEventArgs e) =>
+ _ = Dispatcher.BeginInvoke(new dgtNoParam(dgtAud));
+ private void EvtRender(object sender, ElapsedEventArgs e) =>
+ Dispatcher.BeginInvoke(new dgtNoParam(Leveller));
private void BtPlayPause_Click(object sender, RoutedEventArgs e) {
if(!AudioInit)
return;
@@ -163,5 +134,57 @@ namespace WinPlaza {
else
_ = Dispatcher.BeginInvoke(new dgtNoParam(PlazaStop));
}
+ private void SbMute_Click(object sender, RoutedEventArgs e) {
+ if(MuteVol<0) {
+ MuteVol = Bass.GlobalStreamVolume;
+ Bass.GlobalStreamVolume = 0;
+ sbMute.Content = "🔇";
+ } else {
+ Bass.GlobalStreamVolume = MuteVol;
+ MuteVol = -1;
+ sbMute.Content = "🔊";
+ }
+ }
+ private void SbVol_MouseWheel(object sender, System.Windows.Input.MouseWheelEventArgs e) {
+ sbVol.Value += e.Delta / 25;
+ e.Handled = true;
+ }
+ private void SbVol_ValueChanged(object sender, RoutedPropertyChangedEventArgs e) =>
+ Bass.GlobalStreamVolume = (int)sbVol.Value * 100;
+ private void Window_Deactivated(object sender, EventArgs e) {
+ if(tGfx.Enabled)
+ tGfx.Interval = 1000.0 / 25.0;
+ }
+ private void Window_Activated(object sender, EventArgs e) {
+ if(tGfx.Enabled)
+ tGfx.Interval = 1000.0 / 60.0;
+ }
+ #endregion
+ #region GUIMethods
+ public MainWindow() {
+ InitializeComponent();
+ tRefresh = new Timer(300) { AutoReset = true };
+ tRefresh.Elapsed += EvtRefresh;
+ tRefresh.Start();
+ if(!Bass.Init())
+ sbStatus.Text = "Unable to initialise audio subsystem";
+ else
+ AudioInit = true;
+ if(!AudioInit)
+ return;
+ tAudio = new Timer(50);
+ tAudio.Elapsed += EvtAudio;
+ tGfx = new Timer(16) { AutoReset = true };
+ tGfx.Elapsed += EvtRender;
+ Bass.NetPlaylist = 1;
+ Bass.NetPreBuffer = 0;
+ }
+ ~MainWindow() {
+ if(AudioInit)
+ _ = Bass.Free();
+ }
+ private void _Status(string s) => sbStatus.Text = s;
+ private void _Title(string s) => Title = s;
+ #endregion
}
}
diff --git a/WinPlaza/Properties/Resources.Designer.cs b/WinPlaza/Properties/Resources.Designer.cs
deleted file mode 100644
index 6bebd9d..0000000
--- a/WinPlaza/Properties/Resources.Designer.cs
+++ /dev/null
@@ -1,173 +0,0 @@
-//------------------------------------------------------------------------------
-//
-// This code was generated by a tool.
-// Runtime Version:4.0.30319.42000
-//
-// Changes to this file may cause incorrect behavior and will be lost if
-// the code is regenerated.
-//
-//------------------------------------------------------------------------------
-
-namespace WinPlaza.Properties {
- using System;
-
-
- ///
- /// A strongly-typed resource class, for looking up localized strings, etc.
- ///
- // This class was auto-generated by the StronglyTypedResourceBuilder
- // class via a tool like ResGen or Visual Studio.
- // To add or remove a member, edit your .ResX file then rerun ResGen
- // with the /str option, or rebuild your VS project.
- [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "16.0.0.0")]
- [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
- [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
- internal class Resources {
-
- private static global::System.Resources.ResourceManager resourceMan;
-
- private static global::System.Globalization.CultureInfo resourceCulture;
-
- [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
- internal Resources() {
- }
-
- ///
- /// Returns the cached ResourceManager instance used by this class.
- ///
- [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
- internal static global::System.Resources.ResourceManager ResourceManager {
- get {
- if (object.ReferenceEquals(resourceMan, null)) {
- global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("WinPlaza.Properties.Resources", typeof(Resources).Assembly);
- resourceMan = temp;
- }
- return resourceMan;
- }
- }
-
- ///
- /// Overrides the current thread's CurrentUICulture property for all
- /// resource lookups using this strongly typed resource class.
- ///
- [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
- internal static global::System.Globalization.CultureInfo Culture {
- get {
- return resourceCulture;
- }
- set {
- resourceCulture = value;
- }
- }
-
- ///
- /// Looks up a localized resource of type System.Drawing.Icon similar to (Icon).
- ///
- internal static System.Drawing.Icon conf_157 {
- get {
- object obj = ResourceManager.GetObject("conf_157", resourceCulture);
- return ((System.Drawing.Icon)(obj));
- }
- }
-
- ///
- /// Looks up a localized resource of type System.Drawing.Icon similar to (Icon).
- ///
- internal static System.Drawing.Icon mmsys_101 {
- get {
- object obj = ResourceManager.GetObject("mmsys_101", resourceCulture);
- return ((System.Drawing.Icon)(obj));
- }
- }
-
- ///
- /// Looks up a localized resource of type System.Drawing.Icon similar to (Icon).
- ///
- internal static System.Drawing.Icon mmsys_102 {
- get {
- object obj = ResourceManager.GetObject("mmsys_102", resourceCulture);
- return ((System.Drawing.Icon)(obj));
- }
- }
-
- ///
- /// Looks up a localized resource of type System.Drawing.Icon similar to (Icon).
- ///
- internal static System.Drawing.Icon mmsys_109 {
- get {
- object obj = ResourceManager.GetObject("mmsys_109", resourceCulture);
- return ((System.Drawing.Icon)(obj));
- }
- }
-
- ///
- /// Looks up a localized resource of type System.Drawing.Icon similar to (Icon).
- ///
- internal static System.Drawing.Icon mmsys_110 {
- get {
- object obj = ResourceManager.GetObject("mmsys_110", resourceCulture);
- return ((System.Drawing.Icon)(obj));
- }
- }
-
- ///
- /// Looks up a localized resource of type System.Drawing.Icon similar to (Icon).
- ///
- internal static System.Drawing.Icon mmsys_112 {
- get {
- object obj = ResourceManager.GetObject("mmsys_112", resourceCulture);
- return ((System.Drawing.Icon)(obj));
- }
- }
-
- ///
- /// Looks up a localized resource of type System.Drawing.Icon similar to (Icon).
- ///
- internal static System.Drawing.Icon mmsys_99 {
- get {
- object obj = ResourceManager.GetObject("mmsys_99", resourceCulture);
- return ((System.Drawing.Icon)(obj));
- }
- }
-
- ///
- /// Looks up a localized resource of type System.Drawing.Icon similar to (Icon).
- ///
- internal static System.Drawing.Icon mplayer_10 {
- get {
- object obj = ResourceManager.GetObject("mplayer_10", resourceCulture);
- return ((System.Drawing.Icon)(obj));
- }
- }
-
- ///
- /// Looks up a localized resource of type System.Drawing.Icon similar to (Icon).
- ///
- internal static System.Drawing.Icon shell32_40 {
- get {
- object obj = ResourceManager.GetObject("shell32_40", resourceCulture);
- return ((System.Drawing.Icon)(obj));
- }
- }
-
- ///
- /// Looks up a localized resource of type System.Drawing.Icon similar to (Icon).
- ///
- internal static System.Drawing.Icon sndvol32_301 {
- get {
- object obj = ResourceManager.GetObject("sndvol32_301", resourceCulture);
- return ((System.Drawing.Icon)(obj));
- }
- }
-
- ///
- /// Looks up a localized resource of type System.Drawing.Icon similar to (Icon).
- ///
- internal static System.Drawing.Icon sndvol32_302 {
- get {
- object obj = ResourceManager.GetObject("sndvol32_302", resourceCulture);
- return ((System.Drawing.Icon)(obj));
- }
- }
- }
-}
diff --git a/WinPlaza/Properties/Resources.resx b/WinPlaza/Properties/Resources.resx
deleted file mode 100644
index 263531c..0000000
--- a/WinPlaza/Properties/Resources.resx
+++ /dev/null
@@ -1,154 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- text/microsoft-resx
-
-
- 2.0
-
-
- System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
-
- ..\Resources\conf_157.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-
-
- ..\Resources\mmsys_101.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-
-
- ..\Resources\mmsys_102.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-
-
- ..\Resources\mmsys_109.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-
-
- ..\Resources\mmsys_110.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-
-
- ..\Resources\mmsys_112.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-
-
- ..\Resources\mmsys_99.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-
-
- ..\Resources\mplayer_10.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-
-
- ..\Resources\shell32_40.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-
-
- ..\Resources\sndvol32_301.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-
-
- ..\Resources\sndvol32_302.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-
-
\ No newline at end of file
diff --git a/WinPlaza/Resources/mmsys_109.ico b/WinPlaza/Resources/app.ico
similarity index 100%
rename from WinPlaza/Resources/mmsys_109.ico
rename to WinPlaza/Resources/app.ico
diff --git a/WinPlaza/Resources/mmsys_101.ico b/WinPlaza/Resources/mmsys_101.ico
deleted file mode 100644
index 6d910ff..0000000
Binary files a/WinPlaza/Resources/mmsys_101.ico and /dev/null differ
diff --git a/WinPlaza/Resources/mmsys_102.ico b/WinPlaza/Resources/mmsys_102.ico
deleted file mode 100644
index 1e4a979..0000000
Binary files a/WinPlaza/Resources/mmsys_102.ico and /dev/null differ
diff --git a/WinPlaza/Resources/mmsys_110.ico b/WinPlaza/Resources/mmsys_110.ico
deleted file mode 100644
index 5ad2433..0000000
Binary files a/WinPlaza/Resources/mmsys_110.ico and /dev/null differ
diff --git a/WinPlaza/Resources/mmsys_112.ico b/WinPlaza/Resources/mmsys_112.ico
deleted file mode 100644
index b0c5b14..0000000
Binary files a/WinPlaza/Resources/mmsys_112.ico and /dev/null differ
diff --git a/WinPlaza/Resources/mmsys_99.ico b/WinPlaza/Resources/mmsys_99.ico
deleted file mode 100644
index 602fcae..0000000
Binary files a/WinPlaza/Resources/mmsys_99.ico and /dev/null differ
diff --git a/WinPlaza/Resources/mplayer_10.ico b/WinPlaza/Resources/mplayer_10.ico
deleted file mode 100644
index 95f86b0..0000000
Binary files a/WinPlaza/Resources/mplayer_10.ico and /dev/null differ
diff --git a/WinPlaza/Resources/shell32_40.ico b/WinPlaza/Resources/shell32_40.ico
deleted file mode 100644
index 2a95876..0000000
Binary files a/WinPlaza/Resources/shell32_40.ico and /dev/null differ
diff --git a/WinPlaza/Resources/sndvol32_301.ico b/WinPlaza/Resources/sndvol32_301.ico
deleted file mode 100644
index 00a2a05..0000000
Binary files a/WinPlaza/Resources/sndvol32_301.ico and /dev/null differ
diff --git a/WinPlaza/Resources/sndvol32_302.ico b/WinPlaza/Resources/sndvol32_302.ico
deleted file mode 100644
index 7a3d0a8..0000000
Binary files a/WinPlaza/Resources/sndvol32_302.ico and /dev/null differ
diff --git a/WinPlaza/Resources/conf_157.ico b/WinPlaza/Resources/usr.ico
similarity index 100%
rename from WinPlaza/Resources/conf_157.ico
rename to WinPlaza/Resources/usr.ico
diff --git a/WinPlaza/WinPlaza.csproj b/WinPlaza/WinPlaza.csproj
index 572ba20..cbed666 100644
--- a/WinPlaza/WinPlaza.csproj
+++ b/WinPlaza/WinPlaza.csproj
@@ -31,8 +31,8 @@
true
index.html
false
- 2
- 1.1.0.%2a
+ 4
+ 1.3.0.%2a
false
true
true
@@ -61,7 +61,7 @@
false
- Resources\mmsys_109.ico
+ Resources\app.ico
56AE8D286B533A344BB2F6F2F383B107F823DF22
@@ -73,11 +73,14 @@
true
- true
+ false
WinPlaza.App
+
+ app.manifest
+
..\packages\ManagedBass.2.0.4\lib\net45\ManagedBass.dll
@@ -126,20 +129,12 @@
Code
-
- True
- True
- Resources.resx
-
True
Settings.settings
True
-
- ResXFileCodeGenerator
- Resources.Designer.cs
-
+
SettingsSingleFileGenerator
@@ -157,37 +152,10 @@
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
diff --git a/WinPlaza/app.manifest b/WinPlaza/app.manifest
new file mode 100644
index 0000000..4256b0e
--- /dev/null
+++ b/WinPlaza/app.manifest
@@ -0,0 +1,76 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ PerMonitorV2,PerMonitor
+ true
+
+
+
+
+
+
+