aboutsummaryrefslogtreecommitdiff
path: root/source/WindowsFormsApplication1/ShiftOSDesktop.cs
diff options
context:
space:
mode:
authorMichaelTheShifter <[email protected]>2016-05-24 20:27:25 -0400
committerMichaelTheShifter <[email protected]>2016-05-24 20:27:35 -0400
commitb6bc4fd3de7324dd4b086c215768bc50b54c49bb (patch)
treeeba44505bcd8d824a093a0b18d471ffa0477384a /source/WindowsFormsApplication1/ShiftOSDesktop.cs
parent95a1f2e4ae8fdb6862dc238106b1cda4948262a9 (diff)
downloadshiftos-c-_theultimatehacker-b6bc4fd3de7324dd4b086c215768bc50b54c49bb.tar.gz
shiftos-c-_theultimatehacker-b6bc4fd3de7324dd4b086c215768bc50b54c49bb.tar.bz2
shiftos-c-_theultimatehacker-b6bc4fd3de7324dd4b086c215768bc50b54c49bb.zip
0.1.1 Release Candidate 1
Committing all code for 0.1.1 Release Candidate 1.
Diffstat (limited to 'source/WindowsFormsApplication1/ShiftOSDesktop.cs')
-rw-r--r--source/WindowsFormsApplication1/ShiftOSDesktop.cs171
1 files changed, 100 insertions, 71 deletions
diff --git a/source/WindowsFormsApplication1/ShiftOSDesktop.cs b/source/WindowsFormsApplication1/ShiftOSDesktop.cs
index 948efa9..3dcb156 100644
--- a/source/WindowsFormsApplication1/ShiftOSDesktop.cs
+++ b/source/WindowsFormsApplication1/ShiftOSDesktop.cs
@@ -178,7 +178,7 @@ namespace ShiftOS
this.BackColor = Color.FromArgb(r, g, b);
this.BackgroundImage = null;
}
- if (Viruses.InfectedWith("holyfuckmyears"))
+ if (Viruses.InfectedWith("ow"))
{
Random rand = new Random();
switch (rand.Next(0, 3)) {
@@ -241,7 +241,32 @@ namespace ShiftOS
CheckUnity();
SetupWidgets();
CheckForChristmas();
-
+ //Set up the context menus.
+ addDesktopPanelToolStripMenuItem.Visible = API.Upgrades["advanceddesktop"];
+ widgetManagerToolStripMenuItem.Visible = API.Upgrades["advanceddesktop"];
+ if (API.Upgrades["advanceddesktop"])
+ {
+ AppLauncherPanel.ContextMenuStrip = cbwidget;
+ Clock.ContextMenuStrip = cbwidget;
+ PanelButtonHolder.ContextMenuStrip = cbwidget;
+ }
+ else
+ {
+ AppLauncherPanel.ContextMenuStrip = null;
+ Clock.ContextMenuStrip = null;
+ PanelButtonHolder.ContextMenuStrip = null;
+ }
+ foreach(var dp in DesktopPanels)
+ {
+ if(API.Upgrades["advanceddesktop"])
+ {
+ dp.ContextMenuStrip = cbdpanel;
+ }
+ else
+ {
+ dp.ContextMenuStrip = cbdpanel;
+ }
+ }
}
public void SetupWidgets()
@@ -455,57 +480,42 @@ namespace ShiftOS
{
if (this.Controls.Contains(pnl))
{
+ pnl.Hide();
this.Controls.Remove(pnl);
}
}
}
+ var old_list = new List<Skinning.DesktopPanel>();
+ var dp = new Skinning.DesktopPanel();
+ dp.Position = API.CurrentSkin.desktoppanelposition;
+ dp.Height = API.CurrentSkin.desktoppanelheight;
+ dp.BackgroundColor = API.CurrentSkin.desktoppanelcolour;
+ dp.BackgroundImage = API.CurrentSkinImages.desktoppanel;
+ old_list.Add(dp);
+
if (API.CurrentSkin.DesktopPanels.Count == 0)
{
- var dp = new Skinning.DesktopPanel();
- dp.Position = API.CurrentSkin.desktoppanelposition;
- dp.Height = API.CurrentSkin.desktoppanelheight;
- dp.BackgroundColor = API.CurrentSkin.desktoppanelcolour;
- API.CurrentSkin.DesktopPanels.Add(dp);
+ API.CurrentSkin.DesktopPanels = old_list;
}
- DesktopPanels = new List<Panel>();
- foreach (var dp in API.CurrentSkin.DesktopPanels)
+ if(API.Upgrades["advanceddesktop"])
{
- Panel pnl = new Panel();
- pnl.BackColor = dp.BackgroundColor;
- switch (dp.Position)
- {
- case "Top":
- pnl.Dock = DockStyle.Top;
- break;
- case "Bottom":
- pnl.Dock = DockStyle.Bottom;
- break;
- }
- pnl.Tag = dp;
- pnl.Height = dp.Height;
- this.DesktopPanels.Add(pnl);
- this.Controls.Add(pnl);
+ SetupPanels(API.CurrentSkin.DesktopPanels);
}
- if (DesktopPanels != null)
+ else
{
- foreach (var pnl in DesktopPanels)
+ if(API.Upgrades["desktoppanel"])
{
- if (this.Controls.Contains(pnl))
- {
- this.Controls.Remove(pnl);
- }
+ SetupPanels(old_list);
}
}
- if (API.CurrentSkin.DesktopPanels.Count == 0)
- {
- var dp = new Skinning.DesktopPanel();
- dp.Position = "Top";
- dp.Height = API.CurrentSkin.desktoppanelheight;
- dp.BackgroundColor = API.CurrentSkin.desktoppanelcolour;
- API.CurrentSkin.DesktopPanels.Add(dp);
- }
+ desktopappmenu.BackgroundImageLayout = (ImageLayout)API.CurrentSkin.applauncherlayout;
+ }
+
+ public void SetupPanels(List<Skinning.DesktopPanel> lst)
+ {
DesktopPanels = new List<Panel>();
- foreach (var dp in API.CurrentSkin.DesktopPanels)
+
+ foreach (var dp in lst)
{
Panel pnl = new Panel();
pnl.BackColor = dp.BackgroundColor;
@@ -522,7 +532,7 @@ namespace ShiftOS
pnl.Height = dp.Height;
pnl.MouseMove += (object s, MouseEventArgs a) =>
{
- if(MovingControl != null)
+ if (MovingControl != null)
{
var newloc = new Point(a.X + 15, 0);
var proper = pnl.PointToClient(newloc);
@@ -531,15 +541,15 @@ namespace ShiftOS
};
pnl.MouseDown += (object s, MouseEventArgs a) =>
{
- if(MovingControl != null)
+ if (MovingControl != null)
{
- if(a.Button == MouseButtons.Left)
+ if (a.Button == MouseButtons.Left)
{
var w = (Skinning.DesktopWidget)MovingControl.Tag;
w.XLocation = MovingControl.Left;
Skinning.Utilities.saveskin();
}
- else if(a.Button == MouseButtons.Left)
+ else if (a.Button == MouseButtons.Left)
{
var w = (Skinning.DesktopWidget)MovingControl.Tag;
MovingControl.Left = w.XLocation;
@@ -549,50 +559,63 @@ namespace ShiftOS
MovingControl = null;
}
};
- this.DesktopPanels.Add(pnl);
- this.Controls.Add(pnl);
- }
- //AL bug fix with mouse-over/click behavior
- desktopappmenu.BackgroundImageLayout = (ImageLayout)API.CurrentSkin.applauncherlayout;
- foreach (var dp in DesktopPanels)
- {
+ DesktopPanels.Add(pnl);
if (API.Upgrades["desktoppanel"] == true)
{
- if (API.CurrentSkinImages.desktoppanel == null)
+ if (dp.BackgroundImage == null)
{
- dp.BackgroundImage = null;
- }
- else {
- dp.BackgroundImage = API.CurrentSkinImages.desktoppanel;
- dp.BackgroundImageLayout = (ImageLayout)API.CurrentSkin.desktoppanellayout;
- dp.BackColor = Color.Transparent;
+ pnl.BackgroundImage = null;
}
- var t = (Skinning.DesktopPanel)dp.Tag;
- if (API.CurrentSkin.ALPosition == t.Position)
+ else
{
- ChangePosition(AppLauncherPanel, dp);
+ pnl.BackgroundImage = dp.BackgroundImage;
+ pnl.BackgroundImageLayout = (ImageLayout)API.CurrentSkin.desktoppanellayout;
+ pnl.BackColor = Color.Transparent;
}
- if (API.CurrentSkin.PanelButtonPosition == t.Position)
+ if (lst.Count > 1)
{
- ChangePosition(PanelButtonHolder, dp);
+ if (API.CurrentSkin.ALPosition == dp.Position)
+ {
+ ChangePosition(AppLauncherPanel, pnl);
+ }
+ if (API.CurrentSkin.PanelButtonPosition == dp.Position)
+ {
+ ChangePosition(PanelButtonHolder, pnl);
+ }
+ if (API.CurrentSkin.ClockPosition == dp.Position)
+ {
+ ChangePosition(Clock, pnl);
+ }
}
- if (API.CurrentSkin.ClockPosition == t.Position)
+ else
{
- ChangePosition(Clock, dp);
+ ChangePosition(AppLauncherPanel, pnl);
+ ChangePosition(PanelButtonHolder, pnl);
+ ChangePosition(Clock, pnl);
}
- dp.MouseDown += (object s, MouseEventArgs a) =>
+ pnl.MouseDown += (object s, MouseEventArgs a) =>
{
if (a.Button == MouseButtons.Right)
{
- SelectedObject = dp;
+ SelectedObject = pnl;
}
};
- dp.Size = new Size(desktoppanel.Size.Width, API.CurrentSkin.desktoppanelheight);
- dp.Show();
+ if (API.Upgrades["advanceddesktop"])
+ {
+ pnl.ContextMenuStrip = cbdpanel;
+ }
+ else
+ {
+ pnl.ContextMenuStrip = null;
+ }
+ pnl.Size = new Size(desktoppanel.Size.Width, dp.Height);
+ this.Controls.Add(pnl);
+ pnl.Show();
}
- else {
- dp.Hide();
- this.Controls.Remove(dp);
+ else
+ {
+ pnl.Hide();
+ this.Controls.Remove(pnl);
}
}
@@ -1156,6 +1179,12 @@ namespace ShiftOS
{
API.CreateForm(new WidgetManager(), "Widget Manager", API.GetIcon("WidgetManager"));
}
+
+ private void optionsToolStripMenuItem_Click(object sender, EventArgs e)
+ {
+ var dp = (Skinning.DesktopPanel)SelectedObject.Tag;
+ API.CreateForm(new PanelManager(dp), "Panel Options", API.GetIcon("PanelOptions"));
+ }
}
public class DesktopIconManager