diff options
| author | Michael <[email protected]> | 2017-01-08 09:57:10 -0500 |
|---|---|---|
| committer | Michael <[email protected]> | 2017-01-08 09:57:10 -0500 |
| commit | f30dcf5ef41d54c588d7b42c48be8d941abba72e (patch) | |
| tree | 7705f99b965673b1c034ac2b1c56e65072c827df /ShiftOS.Wpf/WpfWindowManager.cs | |
| parent | 69dfad54724d4176dfce238a8d7e73970e6eef24 (diff) | |
| download | shiftos_thereturn-f30dcf5ef41d54c588d7b42c48be8d941abba72e.tar.gz shiftos_thereturn-f30dcf5ef41d54c588d7b42c48be8d941abba72e.tar.bz2 shiftos_thereturn-f30dcf5ef41d54c588d7b42c48be8d941abba72e.zip | |
Initial upload
Diffstat (limited to 'ShiftOS.Wpf/WpfWindowManager.cs')
| -rw-r--r-- | ShiftOS.Wpf/WpfWindowManager.cs | 63 |
1 files changed, 63 insertions, 0 deletions
diff --git a/ShiftOS.Wpf/WpfWindowManager.cs b/ShiftOS.Wpf/WpfWindowManager.cs new file mode 100644 index 0000000..ee7c598 --- /dev/null +++ b/ShiftOS.Wpf/WpfWindowManager.cs @@ -0,0 +1,63 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Windows; +using System.Windows.Controls; +using ShiftOS.Engine; + +namespace ShiftOS.Wpf +{ + public class WpfWindowManager : WindowManager + { + public override void Close(IShiftOSWindow win) + { + IWindowBorder brdrToClose = null; + + foreach(WpfWindowBorder brdr in AppearanceManager.OpenForms) + { + if(brdr.ParentWindow == win) + { + brdrToClose = brdr; + } + } + + if (brdrToClose != null) + { + brdrToClose.Close(); + AppearanceManager.OpenForms.Remove(brdrToClose); + } + + } + + public override void InvokeAction(Action act) + { + App.Current.Dispatcher.Invoke(act); + } + + public override void Maximize(IWindowBorder border) + { + var wb = (WpfWindowBorder)border; + } + + public override void Minimize(IWindowBorder border) + { + throw new NotImplementedException(); + } + + public override void SetupDialog(IShiftOSWindow win) + { + var brdr = new WpfWindowBorder(win); + brdr.IsDialog = true; + AppearanceManager.OpenForms.Add(brdr); + } + + public override void SetupWindow(IShiftOSWindow win) + { + var brdr = new WpfWindowBorder(win); + + AppearanceManager.OpenForms.Add(brdr); + } + } +} |
