aboutsummaryrefslogtreecommitdiff
path: root/ShiftOS.Wpf/Startup.cs
diff options
context:
space:
mode:
authorMichael <[email protected]>2017-02-13 09:05:25 -0500
committerMichael <[email protected]>2017-02-13 09:05:25 -0500
commite8dfafa17a492bdba99151379d5d4926c267dde5 (patch)
treebdc21f8c028e03f987920d581c0aaad3b1168938 /ShiftOS.Wpf/Startup.cs
parent14bd25bab6dbed116c194d392e887c68a90c4d73 (diff)
downloadshiftos_thereturn-e8dfafa17a492bdba99151379d5d4926c267dde5.tar.gz
shiftos_thereturn-e8dfafa17a492bdba99151379d5d4926c267dde5.tar.bz2
shiftos_thereturn-e8dfafa17a492bdba99151379d5d4926c267dde5.zip
ugh more debugging
Diffstat (limited to 'ShiftOS.Wpf/Startup.cs')
-rw-r--r--ShiftOS.Wpf/Startup.cs351
1 files changed, 0 insertions, 351 deletions
diff --git a/ShiftOS.Wpf/Startup.cs b/ShiftOS.Wpf/Startup.cs
deleted file mode 100644
index a4e8bbc..0000000
--- a/ShiftOS.Wpf/Startup.cs
+++ /dev/null
@@ -1,351 +0,0 @@
-/*
- * MIT License
- *
- * Copyright (c) 2017 Michael VanOverbeek and ShiftOS devs
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in all
- * copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- */
-
-using System;
-using System.Collections.Generic;
-using System.IO;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using System.Windows;
-using System.Windows.Controls;
-using System.Windows.Media;
-using System.Windows.Media.Imaging;
-using System.Windows.Threading;
-using ShiftOS.Engine;
-using static ShiftOS.Engine.SkinEngine;
-
-namespace ShiftOS.Wpf
-{
- public static class ShiftOSSkin
- {
- public static Brush GetAppButtonHoverBrush(DependencyObject obj)
- {
- return (Brush)obj.GetValue(AppButtonHoverBrushProperty);
- }
-
- public static void SetAppButtonHoverBrush(DependencyObject obj, Brush value)
- {
- obj.SetValue(AppButtonHoverBrushProperty, value);
- }
-
- public static readonly DependencyProperty AppButtonHoverBrushProperty =
- DependencyProperty.RegisterAttached(
- "AppButtonHoverBrush",
- typeof(Brush),
- typeof(ShiftOSSkin),
- new FrameworkPropertyMetadata(LoadedSkin.Menu_MenuItemSelected.CreateBrush()));
- }
-
- public static class Startup
- {
- private static Visibility getVisibility(string upg)
- {
- if (Shiftorium.UpgradeInstalled(upg))
- {
- return Visibility.Visible;
- }
- else
- {
- return Visibility.Collapsed;
-
- }
- }
-
-
- public static void Upgrade(this Control ctrl, string upg)
- {
- ctrl.Visibility = getVisibility(upg);
-
- }
-
- public static void Upgrade(this UIElement ctrl, string upg)
- {
- ctrl.Visibility = getVisibility(upg);
-
- }
-
- static public void BringToFront(this UserControl pToMove, Canvas pParent)
- {
- int currentIndex = Canvas.GetZIndex(pToMove);
- int zIndex = 0;
- int maxZ = 0;
- UserControl child;
- for (int i = 0; i < pParent.Children.Count; i++)
- {
- if (pParent.Children[i] is UserControl &&
- pParent.Children[i] != pToMove)
- {
- child = pParent.Children[i] as UserControl;
- zIndex = Canvas.GetZIndex(child);
- maxZ = Math.Max(maxZ, zIndex);
- if (zIndex > currentIndex)
- {
- Canvas.SetZIndex(child, zIndex - 1);
- }
- }
- }
- Canvas.SetZIndex(pToMove, maxZ);
-
- }
-
- public static void SetTitle(this IShiftOSWindow win, string title)
- {
- foreach(var frm in AppearanceManager.OpenForms)
- {
- if(frm.ParentWindow == win)
- {
- frm.Text = title;
- }
- }
- }
-
- public static void InitiateEngine(System.IO.TextWriter writer)
- {
- OutOfBoxExperience.Init(new OOBE());
- AppearanceManager.Initiate(new WpfWindowManager());
- Infobox.Init(new WpfInfoboxFrontend());
- FileSkimmerBackend.Init(new Applications.WpfFSFrontend());
- if (writer != null)
- {
- Console.SetOut(writer);
- }
- SaveSystem.Begin(false);
- AppearanceManager.OnExit += () =>
- {
- Environment.Exit(0);
- };
- }
-
- public static void SetMouseOverStyle(this Control button, string style = "")
- {
- var bg = button.Background;
- var fg = button.Foreground;
- var border = button.BorderThickness;
- var borderfg = button.BorderBrush;
-
- button.MouseEnter += (o, a) =>
- {
- try
- {
- switch (style)
- {
- case "menuitem":
- button.Background = LoadedSkin.Menu_MenuItemSelected.CreateBrush();
- button.Foreground = LoadedSkin.Menu_SelectedTextColor.CreateBrush();
- button.BorderBrush = LoadedSkin.Menu_MenuItemBorder.CreateBrush();
- break;
- }
- }
- catch { }
- };
- button.MouseLeave += (o, a) =>
- {
- try
- {
- button.Background = bg;
- button.Foreground = fg;
- button.BorderThickness = border;
- button.BorderBrush = borderfg;
- }
- catch
- {
-
- }
- };
-
-
- }
-
- public static void DestroyShiftOSEngine()
- {
- ServerManager.Disconnect();
- }
-
- public static TextBox ConsoleOut { get; set; }
-
- public static SolidColorBrush CreateBrush(this System.Drawing.Color color)
- {
- return new SolidColorBrush(Color.FromArgb(color.A, color.R, color.G, color.B));
- }
-
- public struct Font
- {
- public FontFamily FontFamily { get; set; }
- public double FontSize { get; set; }
- public FontStyle FontStyle { get; set; }
- public FontWeight FontWeight { get; set; }
- }
-
- private static Font createFont(System.Drawing.Font f)
- {
- var font = new Font();
- font.FontFamily = new FontFamily(f.Name);
- font.FontSize = f.Size;
- switch (f.Style)
- {
- case System.Drawing.FontStyle.Bold:
- font.FontWeight = FontWeights.Bold;
- break;
- case System.Drawing.FontStyle.Italic:
- font.FontStyle = FontStyles.Oblique;
- break;
- default:
- case System.Drawing.FontStyle.Regular:
- font.FontStyle = FontStyles.Normal;
- break;
-
-
- }
- return font;
- }
-
- public static void SetFont(this Control ctrl, System.Drawing.Font f)
- {
- var font = createFont(f);
- ctrl.FontFamily = font.FontFamily;
- ctrl.FontSize = PointsToPixels(font.FontSize);
- ctrl.FontStyle = font.FontStyle;
- ctrl.FontWeight = font.FontWeight;
- }
-
- private static double PointsToPixels(double points)
- {
- return points * (96.0 / 72.0);
- }
-
- public static void SetFont(this TextBlock ui, System.Drawing.Font f)
- {
- var font = createFont(f);
- ui.FontFamily = font.FontFamily;
- ui.FontSize = PointsToPixels(font.FontSize);
- ui.FontStyle = font.FontStyle;
- ui.FontWeight = font.FontWeight;
- }
-
- public static BitmapImage ToBitmapImage(this System.Drawing.Image img)
- {
- using(var str = new MemoryStream())
- {
- img.Save(str, System.Drawing.Imaging.ImageFormat.Png);
- return ToBitmapImage(str.ToArray());
- }
- }
-
- public static BitmapImage ToBitmapImage(this byte[] imgSource)
- {
- using(MemoryStream ms = new MemoryStream(imgSource))
- {
- var img = new BitmapImage();
- img.BeginInit();
- img.StreamSource = ms;
- img.CacheOption = BitmapCacheOption.OnLoad;
- img.EndInit();
- return img;
- }
- }
- }
-
- public class WpfTerminalTextWriter : TextWriter
- {
- public override Encoding Encoding
- {
- get
- {
- return Encoding.Unicode;
- }
- }
-
- public TextBox UnderlyingControl
- {
- get
- {
- return Startup.ConsoleOut;
- }
- }
-
- public void select()
- {
- try
- {
- UnderlyingControl.Select(UnderlyingControl.Text.Length, 0);
- UnderlyingControl.ScrollToEnd();
- UnderlyingControl.Focus();
- AppearanceManager.CurrentPosition = 1;
- AppearanceManager.LastLength = UnderlyingControl.Text.Length - 1;
- }
- catch { }
- }
-
- public override void Write(char value)
- {
- try
- {
- UnderlyingControl.Dispatcher.Invoke(new Action(() =>
- {
- UnderlyingControl.AppendText(value.ToString());
- select();
- }));
- }
- catch { }
- }
-
- public override void WriteLine(string value)
- {
- try
- {
- UnderlyingControl.Dispatcher.Invoke(new Action(() =>
- {
- UnderlyingControl.AppendText(ShiftOS.Engine.Localization.Parse(value) + Environment.NewLine);
- select();
- }));
- }
- catch { }
- }
-
- public void SetLastText()
- {
- if (SaveSystem.CurrentSave != null)
- {
- if (!Shiftorium.UpgradeInstalled("window_manager"))
- AppearanceManager.LastTerminalText = UnderlyingControl.Text;
- }
- }
-
- public override void Write(string value)
- {
- try
- {
- UnderlyingControl.Dispatcher.Invoke(new Action(() =>
- {
- UnderlyingControl.AppendText(ShiftOS.Engine.Localization.Parse(value));
- select();
- }));
- }
- catch { }
- }
-
-
- }
-}