aboutsummaryrefslogtreecommitdiff
path: root/ShiftOS.Main/ShiftOS/Desktop.cs
diff options
context:
space:
mode:
authorAlex-TIMEHACK <[email protected]>2017-11-18 16:29:54 +0000
committerAlex-TIMEHACK <[email protected]>2017-11-18 16:29:54 +0000
commit4037be53b29a122732cfc10693e9c0027f606bb0 (patch)
tree8533ea9ee0ac8f5f7f696b85cb039f783657ada0 /ShiftOS.Main/ShiftOS/Desktop.cs
parent65b7ac2b8cbc4478f6d31a21f106048aeb075078 (diff)
parent97722fbe9d474adffbba0b92e9727c48a8205234 (diff)
downloadshiftos-rewind-4037be53b29a122732cfc10693e9c0027f606bb0.tar.gz
shiftos-rewind-4037be53b29a122732cfc10693e9c0027f606bb0.tar.bz2
shiftos-rewind-4037be53b29a122732cfc10693e9c0027f606bb0.zip
Updated my fork!
Conflicts: ShiftOS.Engine/ShiftOS.Engine.csproj ShiftOS.Engine/Terminal/Commands/Hello.cs ShiftOS.Engine/Terminal/TerminalBackend.cs ShiftOS.Engine/Terminal/TerminalCommand.cs ShiftOS.Main/ShiftOS.Main.csproj ShiftOS.Main/ShiftOS/Apps/Terminal.cs ShiftOS.Main/ShiftOS/Desktop.cs
Diffstat (limited to 'ShiftOS.Main/ShiftOS/Desktop.cs')
-rw-r--r--ShiftOS.Main/ShiftOS/Desktop.cs79
1 files changed, 47 insertions, 32 deletions
diff --git a/ShiftOS.Main/ShiftOS/Desktop.cs b/ShiftOS.Main/ShiftOS/Desktop.cs
index 3477788..10eea41 100644
--- a/ShiftOS.Main/ShiftOS/Desktop.cs
+++ b/ShiftOS.Main/ShiftOS/Desktop.cs
@@ -1,13 +1,10 @@
using System;
-using System.Collections.Generic;
-using System.ComponentModel;
-using System.Data;
-using System.Drawing;
using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
using System.Windows.Forms;
+using ShiftOS.Engine.Misc;
using ShiftOS.Engine.WindowManager;
+using ShiftOS.Main.Properties;
+using ShiftOS.Main.ShiftOS.Apps;
namespace ShiftOS.Main.ShiftOS
{
@@ -19,43 +16,42 @@ namespace ShiftOS.Main.ShiftOS
timer1.Start();
- this.Closed += (sender, args) =>
- {
- Application.Exit();
- };
+ Closed += (sender, args) => { Application.Exit(); };
#region Disgusting taskbar code
- ShiftWM.Windows.CollectionChanged += (sender, args) =>
+ ShiftWM.Windows.ItemAdded += (sender, e) =>
+ {
+ taskbar.Invoke(
+ new Action(
+ () =>
+ {
+ taskbar.Items.Add(
+ new ToolStripButton
+ {
+ Text = e.Item.Title.Text,
+ Image = e.Item.Icon.ToBitmap(),
+ Tag = e.Item.Id
+ });
+ }));
+ };
+
+ ShiftWM.Windows.ItemRemoved += (sender, e) =>
{
- args.NewItems?.OfType<ShiftWindow>().ToList().ForEach(window =>
- {
- taskbar.Invoke(new Action(() =>
- {
- taskbar.Items.Add(new ToolStripButton
+ taskbar.Invoke(
+ new Action(
+ () =>
{
- Text = window.Title.Text,
- Image = window.Icon.ToBitmap(),
- Tag = window.Id
- });
- }));
- });
-
- args.OldItems?.OfType<ShiftWindow>().ToList().ForEach(window =>
- {
- taskbar.Invoke(new Action(() =>
- {
- var tbRemovalList = taskbar.Items.OfType<ToolStripItem>().Where(i => (uint) i.Tag == window.Id);
+ var tbRemovalList = taskbar.Items.OfType<ToolStripItem>().Where(i => (uint) i.Tag == e.Item.Id);
- tbRemovalList.ToList().ForEach(p => taskbar.Items.Remove(p));
- }));
- });
+ tbRemovalList.ToList().ForEach(p => taskbar.Items.Remove(p));
+ }));
};
#endregion
}
- private void timer1_Tick(object sender, EventArgs e) =>
+ void timer1_Tick(object sender, EventArgs e) =>
taskbarClock.Text = $"{DateTime.Now:t}";
private void terminalToolStripMenuItem_Click(object sender, EventArgs e)
@@ -66,3 +62,22 @@ namespace ShiftOS.Main.ShiftOS
}
}
}
+ void terminalToolStripMenuItem_Click(object sender, EventArgs e)
+ {
+ var trm = new Terminal();
+ ShiftWM.Init(trm, "Terminal", null);
+ }
+
+ void textPadToolStripMenuItem_Click(object sender, EventArgs e)
+ {
+ var tp = new TextPad();
+ ShiftWM.Init(tp, "TextPad", Resources.iconTextPad);
+ }
+
+ void fileSkimmerToolStripMenuItem_Click(object sender, EventArgs e)
+ {
+ var fs = new FileSkimmer();
+ ShiftWM.Init(fs, "File Skimmer", Resources.iconFileSkimmer);
+ }
+ }
+}