diff --git a/.gitignore b/.gitignore
index bdc3535..8bcf350 100644
--- a/.gitignore
+++ b/.gitignore
@@ -106,3 +106,4 @@ Generated_Code #added for RIA/Silverlight projects
_UpgradeReport_Files/
Backup*/
UpgradeLog*.XML
+.vs
diff --git a/ProgramQueuer/App.xaml b/ProgramQueuer/App.xaml
index 1aeb5f9..cdc1767 100755
--- a/ProgramQueuer/App.xaml
+++ b/ProgramQueuer/App.xaml
@@ -1,8 +1,20 @@
-
+
+ /Resources/fontawesome.otf#Font Awesome 5 Free
+ /Resources/fontawesome-solid.otf#Font Awesome 5 Free
+ /Resources/fixedsys.ttf#Fixedsys Excelsior
+
+
+
+
+
+
+
+
diff --git a/ProgramQueuer/App.xaml.cs b/ProgramQueuer/App.xaml.cs
index 29aa2a3..4b1cfec 100755
--- a/ProgramQueuer/App.xaml.cs
+++ b/ProgramQueuer/App.xaml.cs
@@ -4,6 +4,7 @@ using System.Configuration;
using System.Data;
using System.Linq;
using System.Windows;
+using System.Windows.Controls;
namespace ProgramQueuer
{
@@ -12,5 +13,5 @@ namespace ProgramQueuer
///
public partial class App : Application
{
- }
+ }
}
diff --git a/ProgramQueuer/MainWindow.xaml b/ProgramQueuer/MainWindow.xaml
index 0b2a6ce..a73ead6 100755
--- a/ProgramQueuer/MainWindow.xaml
+++ b/ProgramQueuer/MainWindow.xaml
@@ -9,7 +9,7 @@
DragEnter="ListView_DragEnter" Drop="ListView_Drop"
Loaded="Window_Loaded"
Width="{Binding Path=width, Source={x:Static properties:Settings.Default}, Mode=TwoWay}"
- Height="{Binding Path=height, Source={x:Static properties:Settings.Default}, Mode=TwoWay}" Icon="/ProgramQueuer;component/program.ico" StateChanged="Window_StateChanged">
+ Height="{Binding Path=height, Source={x:Static properties:Settings.Default}, Mode=TwoWay}" Icon="logo.ico" StateChanged="Window_StateChanged">
@@ -18,11 +18,14 @@
-
+
+
+
+
-
+
@@ -30,20 +33,9 @@
-
+
-
-
-
-
-
-
-
-
-
-
-
@@ -51,75 +43,74 @@
-
+
-
-
-
-
+
+
-
+
-
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
+
+
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/ProgramQueuer/MainWindow.xaml.cs b/ProgramQueuer/MainWindow.xaml.cs
index 226bbb0..ad294aa 100755
--- a/ProgramQueuer/MainWindow.xaml.cs
+++ b/ProgramQueuer/MainWindow.xaml.cs
@@ -18,7 +18,6 @@ using System.Windows.Threading;
using ProgramQueuer.Queuer;
using WPF.JoshSmith.ServiceProviders.UI;
using Microsoft.Win32;
-
using NotifyIcon = System.Windows.Forms.NotifyIcon;
namespace ProgramQueuer
@@ -45,6 +44,7 @@ namespace ProgramQueuer
this._icon.MouseClick += new System.Windows.Forms.MouseEventHandler(_icon_MouseClick);
this.DataContext = _manager;
this.listPrograms.ItemsSource = _manager.QueueList;
+ mainGrid.RowDefinitions[2].Height = new GridLength(ProgramQueuer.Properties.Settings.Default.split_height);
}
void _icon_MouseClick(object sender, System.Windows.Forms.MouseEventArgs e)
@@ -62,17 +62,27 @@ namespace ProgramQueuer
private void Window_Loaded(object sender, RoutedEventArgs e)
{
_manager.RedirectOutput = ProgramQueuer.Properties.Settings.Default.redirectOutput;
+ _manager.Load();
new ListViewDragDropManager(this.listPrograms);
}
private void GridSplitter_DragCompleted(object sender, System.Windows.Controls.Primitives.DragCompletedEventArgs e)
{
- ProgramQueuer.Properties.Settings.Default.split_height = textboxStatus.Height;
+ ProgramQueuer.Properties.Settings.Default.split_height = mainGrid.RowDefinitions[2].ActualHeight;
}
private void Window_Closing(object sender, System.ComponentModel.CancelEventArgs e)
{
- if (_manager.Working)
+ bool working = false;
+ for (int i = 0; i < _manager.QueueList.Count; i++)
+ {
+ if (_manager.QueueList[i].Working)
+ {
+ working = true;
+ break;
+ }
+ }
+ if (working)
if (MessageBox.Show("Are you sure you want to stop current worker and batch and exit application?", "You sure you want to exit?", MessageBoxButton.YesNo) == MessageBoxResult.No)
{
e.Cancel = true;
@@ -83,7 +93,8 @@ namespace ProgramQueuer
this._icon.Visible = false;
ProgramQueuer.Properties.Settings.Default.redirectOutput = _manager.RedirectOutput;
ProgramQueuer.Properties.Settings.Default.lastPath = _openFile.InitialDirectory;
- ProgramQueuer.Properties.Settings.Default.Save();
+ _manager.Save();
+ // ProgramQueuer.Properties.Settings.Default.Save();
}
private void ButtonExit_Click(object sender, RoutedEventArgs e)
@@ -119,8 +130,9 @@ namespace ProgramQueuer
string[] files = (string[])e.Data.GetData(DataFormats.FileDrop, false);
foreach (string file in files)
{
- _manager.QueueList.Add(new ProgramEntry { Name = file , Status = "Queued"});
+ _manager.AddToQueue(new ProgramEntry { Name = file , Status = "Queued"});
_openFile.InitialDirectory = new FileInfo(file).DirectoryName;
+ _manager.Save();
}
}
}
@@ -136,14 +148,14 @@ namespace ProgramQueuer
{
if (MessageBox.Show("Are you sure you want to kill this process and continue with the next one available?", "Stop current process?", MessageBoxButton.YesNo) == MessageBoxResult.Yes)
{
- ((sender as Control).DataContext as ProgramEntry).Process.Kill();
+ _manager.ForceStopEntry((sender as Control).DataContext as ProgramEntry);
}
}
else
{
if (MessageBox.Show("Are you sure you want to kill this process?", "Stop selected process?", MessageBoxButton.YesNo) == MessageBoxResult.Yes)
{
- ((sender as Control).DataContext as ProgramEntry).Process.Kill();
+ _manager.ForceStopEntry((sender as Control).DataContext as ProgramEntry);
}
}
}
@@ -160,7 +172,7 @@ namespace ProgramQueuer
{
foreach (string file in _openFile.FileNames)
{
- _manager.QueueList.Add(new ProgramEntry { Name = file, Status = "Queued" });
+ _manager.AddToQueue(new ProgramEntry { Name = file, Status = "Queued" });
_openFile.InitialDirectory = new FileInfo(file).DirectoryName;
}
}
@@ -180,7 +192,7 @@ namespace ProgramQueuer
private void ButtonHelp_Click(object sender, RoutedEventArgs e)
{
- popupHelp.IsOpen = true;
+ // popupHelp.IsOpen = true;
}
private void buttonStartCurrent_Click(object sender, RoutedEventArgs e)
@@ -204,14 +216,20 @@ namespace ProgramQueuer
private void buttonClearFinished_Click(object sender, RoutedEventArgs e)
{
+ bool changed = false;
for (int i = 0; i < _manager.QueueList.Count; i++)
{
if (_manager.QueueList[i].Finished == true)
{
+ changed = true;
_manager.QueueList.Remove(_manager.QueueList[i]);
i--;
}
}
+ if (changed)
+ {
+ _manager.Save();
+ }
popupEmpty.IsOpen = false;
}
@@ -228,8 +246,37 @@ namespace ProgramQueuer
if (MessageBox.Show("Are you sure you want to clear list?", "Clear list?", MessageBoxButton.YesNo) == MessageBoxResult.Yes)
{
_manager.QueueList.Clear();
+ _manager.Save();
}
popupEmpty.IsOpen = false;
}
+
+ private void expanderStatus_Expanded(object sender, RoutedEventArgs e)
+ {
+ mainGrid.RowDefinitions[2].Height = new GridLength(ProgramQueuer.Properties.Settings.Default.split_height);
+ gridSplitter.Visibility = Visibility.Visible;
+ }
+
+ private void expanderStatus_Collapsed(object sender, RoutedEventArgs e)
+ {
+ mainGrid.RowDefinitions[2].Height = new GridLength(0, GridUnitType.Auto);
+ gridSplitter.Visibility = Visibility.Collapsed;
+ }
+
+ private void buttonResetCurrent_Click(object sender, RoutedEventArgs e)
+ {
+ var entry = (sender as Control).DataContext as ProgramEntry;
+ entry.Finished = false;
+ entry.Status = "Queued";
+ _manager.Save();
+ }
+
+ private void buttonMarkFinishedCurrent_Click(object sender, RoutedEventArgs e)
+ {
+ var entry = (sender as Control).DataContext as ProgramEntry;
+ entry.Finished = true;
+ entry.Status = "Marked finished";
+ _manager.Save();
+ }
}
}
diff --git a/ProgramQueuer/Monotone.Brushes.xaml b/ProgramQueuer/Monotone.Brushes.xaml
new file mode 100644
index 0000000..923f6f8
--- /dev/null
+++ b/ProgramQueuer/Monotone.Brushes.xaml
@@ -0,0 +1,196 @@
+
+ 1
+ 1
+ 1
+ 1
+ 1
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 1
+ 0
+ 0
+ 1
+ 2
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 10
+ -11
+ -10
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ M 0,5.1 L 1.7,5.2 L 3.4,7.1 L 8,0.4 L 9.2,0 L 3.3,10.8 Z
+ M 0,4 L 3.5,0 L 7,4 Z
+ M 0,0 L 3.5,4 L 7,0 Z
+ M 0,0 L 4,3.5 L 0,7 Z
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ M -5,-10.5 L 5,-10.5 L 5,10.5 L -5,10.5 Z
+ M 4.5,-8.5 L -4.5,-8.5 L -4.5,4.5 L -0.5,8.5 L 0.5,8.5 L 4.5,4.5 Z
+ M 4.5,-7.5 A 1 1 0 0 0 3.5,-8.5 L -3.5,-8.5 A 1 1 0 0 0 -4.5,-7.5 L -4.5,4.5 L -0.5,8.5 L 0.5,8.5 L 4.5,4.5 Z
+ M 3.5,-7.5 L -3.5,-7.5 L -3.5,4.5 L 0,8 L 3.5,4.5 Z
+
+
+
+
+ M -5,-9.5 L 5,-9.5 L 5,9.5 L -5,9.5 Z
+ M -4,-8.5 L 4,-8.5 L 4,8.5 L -4,8.5 Z
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/ProgramQueuer/Monotone.Colors.xaml b/ProgramQueuer/Monotone.Colors.xaml
new file mode 100644
index 0000000..e5f45d2
--- /dev/null
+++ b/ProgramQueuer/Monotone.Colors.xaml
@@ -0,0 +1,22 @@
+
+ #1f1f1f
+ #353535
+ #333
+ #606060
+ #3300FFFF
+ #0b6767
+ #999
+ #555
+ #BBB
+ #222
+ #1f1f1f
+ #1f1f1f
+ #ffffff
+ Cyan
+ DarkCyan
+ #33008B8B
+ #ff8888
+ #aa4444
+
\ No newline at end of file
diff --git a/ProgramQueuer/Monotone.xaml b/ProgramQueuer/Monotone.xaml
new file mode 100644
index 0000000..338469d
--- /dev/null
+++ b/ProgramQueuer/Monotone.xaml
@@ -0,0 +1,3657 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/ProgramQueuer/ProgramQueuer.csproj b/ProgramQueuer/ProgramQueuer.csproj
index 99e77ed..2d218d7 100755
--- a/ProgramQueuer/ProgramQueuer.csproj
+++ b/ProgramQueuer/ProgramQueuer.csproj
@@ -1,5 +1,5 @@
-
+
Debug
x86
@@ -10,10 +10,27 @@
Properties
ProgramQueuer
ProgramQueuer
- v3.5
+ v4.6
512
{60dc8134-eba5-43b8-bcc9-bb4bc16c2548};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}
4
+
+
+ publish\
+ true
+ Disk
+ false
+ Foreground
+ 7
+ Days
+ false
+ false
+ true
+ 0
+ 1.0.0.%2a
+ false
+ false
+ true
x86
@@ -24,6 +41,7 @@
DEBUG;TRACE
prompt
4
+ false
x86
@@ -33,15 +51,19 @@
TRACE
prompt
4
+ false
- program.ico
+ logo.ico
+
+
+
@@ -77,6 +99,18 @@
MainWindow.xaml
Code
+
+ Designer
+ MSBuild:Compile
+
+
+ Designer
+ MSBuild:Compile
+
+
+ Designer
+ MSBuild:Compile
+
@@ -102,42 +136,26 @@
Settings.Designer.cs
+
+
+
-
-
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+ False
+ Microsoft .NET Framework 4.6 %28x86 and x64%29
+ true
+
+
+ False
+ .NET Framework 3.5 SP1
+ false
+
+