aktueller stand
This commit is contained in:
@@ -0,0 +1,179 @@
|
||||
using C4IT.MultiLanguage;
|
||||
using FasdDesktopUi.Basics;
|
||||
using FasdDesktopUi.Pages.SearchPage;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows;
|
||||
using System.Windows.Controls;
|
||||
using System.Windows.Data;
|
||||
using System.Windows.Documents;
|
||||
using System.Windows.Forms;
|
||||
using System.Windows.Input;
|
||||
using System.Windows.Interop;
|
||||
using System.Windows.Media;
|
||||
using System.Windows.Media.Imaging;
|
||||
using System.Windows.Shapes;
|
||||
using ContextMenu = System.Windows.Controls.ContextMenu;
|
||||
using MenuItem = System.Windows.Controls.MenuItem;
|
||||
using MessageBox = System.Windows.MessageBox;
|
||||
|
||||
namespace FasdDesktopUi.Pages.DesktopWidgetPage
|
||||
{
|
||||
/// <summary>
|
||||
/// Interaction logic for DesktopWidgetPageView.xaml
|
||||
/// </summary>
|
||||
public partial class DesktopWidgetPageView : Window
|
||||
{
|
||||
|
||||
public bool IsWindowVisible
|
||||
{
|
||||
get { return (bool)GetValue(IsWindowVisibleProperty); }
|
||||
set { SetValue(IsWindowVisibleProperty, value); }
|
||||
}
|
||||
|
||||
// Using a DependencyProperty as the backing store for IsWindowVisible. This enables animation, styling, binding, etc...
|
||||
public static readonly DependencyProperty IsWindowVisibleProperty =
|
||||
DependencyProperty.Register(nameof(IsWindowVisible), typeof(bool), typeof(DesktopWidgetPageView), new PropertyMetadata(true));
|
||||
|
||||
|
||||
public bool AreAllWidgetsVisible
|
||||
{
|
||||
get { return (bool)GetValue(AreAllWidgetsVisibleProperty); }
|
||||
set { SetValue(AreAllWidgetsVisibleProperty, value); }
|
||||
}
|
||||
|
||||
// Using a DependencyProperty as the backing store for AreAllWidgetsVisible. This enables animation, styling, binding, etc...
|
||||
public static readonly DependencyProperty AreAllWidgetsVisibleProperty =
|
||||
DependencyProperty.Register(nameof(AreAllWidgetsVisible), typeof(bool), typeof(DesktopWidgetPageView), new PropertyMetadata(false));
|
||||
|
||||
|
||||
|
||||
public bool ShowMainNotification
|
||||
{
|
||||
get { return (bool)GetValue(ShowMainNotificationProperty); }
|
||||
set { SetValue(ShowMainNotificationProperty, value); }
|
||||
}
|
||||
|
||||
// Using a DependencyProperty as the backing store for ShowMainNotification. This enables animation, styling, binding, etc...
|
||||
public static readonly DependencyProperty ShowMainNotificationProperty =
|
||||
DependencyProperty.Register(nameof(ShowMainNotification), typeof(bool), typeof(DesktopWidgetPageView), new PropertyMetadata(true));
|
||||
|
||||
|
||||
|
||||
|
||||
public DesktopWidgetPageView()
|
||||
{
|
||||
InitializeComponent();
|
||||
|
||||
SourceInitialized += (s, e) =>
|
||||
{
|
||||
IntPtr handle = new WindowInteropHelper(this).Handle;
|
||||
HwndSource.FromHwnd(handle).AddHook(new HwndSourceHook(cUtility.WindowProc));
|
||||
};
|
||||
}
|
||||
|
||||
private bool IsAnyOtherVisible() => cSupportCaseDataProvider.detailsPage.IsVisible || SearchPageView.Instance.IsVisible;
|
||||
protected override void OnInitialized(EventArgs e)
|
||||
{
|
||||
|
||||
|
||||
cSupportCaseDataProvider.detailsPage.IsVisibleChanged += (sender, args) =>
|
||||
{
|
||||
this.Visibility = IsAnyOtherVisible() ? Visibility.Collapsed : Visibility.Visible;
|
||||
};
|
||||
|
||||
SearchPageView.Instance.IsVisibleChanged += (sender, args) =>
|
||||
{
|
||||
|
||||
this.Visibility = IsAnyOtherVisible() ? Visibility.Collapsed : Visibility.Visible;
|
||||
};
|
||||
|
||||
|
||||
base.OnInitialized(e);
|
||||
}
|
||||
|
||||
private void F4SDWidget_MouseLeftButtonUp(object sender, MouseButtonEventArgs e)
|
||||
{
|
||||
AreAllWidgetsVisible = !AreAllWidgetsVisible;
|
||||
ShowMainNotification = !ShowMainNotification;
|
||||
}
|
||||
|
||||
private void SearchWidget_MouseLeftButtonUp(object sender, MouseButtonEventArgs e)
|
||||
{
|
||||
SearchPageView.Instance.ActivateSearchView();
|
||||
}
|
||||
|
||||
private void SettingsWidget_MouseLeftButtonUp(object sender, MouseButtonEventArgs e)
|
||||
{
|
||||
ContextMenu menu = SetupSettingsContextMenu();
|
||||
SettingsWidget.ContextMenu = menu;
|
||||
SettingsWidget.ContextMenu.IsOpen = true;
|
||||
}
|
||||
|
||||
private ContextMenu SetupSettingsContextMenu()
|
||||
{
|
||||
ContextMenu menu = new ContextMenu();
|
||||
|
||||
MenuItem languageItem = new MenuItem();
|
||||
languageItem.Header = cMultiLanguageSupport.GetItem("Menu.SelectLanguage");
|
||||
languageItem.Items.Add(new MenuItem { Header = "DE" });
|
||||
languageItem.Items.Add(new MenuItem { Header = "EN" });
|
||||
menu.Items.Add(languageItem);
|
||||
|
||||
MenuItem optionsItem = new MenuItem();
|
||||
optionsItem.Header = cMultiLanguageSupport.GetItem("Menu.Options");
|
||||
optionsItem.Click += (s, e) => MessageBox.Show(cMultiLanguageSupport.GetItem("Menu.Options"));
|
||||
menu.Items.Add(optionsItem);
|
||||
|
||||
MenuItem m42Item = new MenuItem();
|
||||
m42Item.Header = cMultiLanguageSupport.GetItem("M42Settings.SystemTray");
|
||||
m42Item.Click += (s, e) => MessageBox.Show(cMultiLanguageSupport.GetItem("M42Settings.SystemTray"));
|
||||
menu.Items.Add(m42Item);
|
||||
|
||||
MenuItem phoneItem = new MenuItem();
|
||||
phoneItem.Header = cMultiLanguageSupport.GetItem("PhoneSettings.SystemTray");
|
||||
phoneItem.Click += (s, e) => MessageBox.Show(cMultiLanguageSupport.GetItem("PhoneSettings.SystemTray"));
|
||||
menu.Items.Add(phoneItem);
|
||||
|
||||
return menu;
|
||||
}
|
||||
|
||||
private void ShowMessageBox(string message)
|
||||
{
|
||||
MessageBox.Show(message);
|
||||
}
|
||||
|
||||
private void RestartWidget_MouseLeftButtonUp(object sender, MouseButtonEventArgs e)
|
||||
{
|
||||
ContextMenu menu = SetupRestartContextMenu();
|
||||
RestartWidget.ContextMenu = menu;
|
||||
RestartWidget.ContextMenu.IsOpen = true;
|
||||
}
|
||||
|
||||
private ContextMenu SetupRestartContextMenu()
|
||||
{
|
||||
ContextMenu menu = new ContextMenu();
|
||||
|
||||
MenuItem restartItem = new MenuItem();
|
||||
restartItem.Header = cMultiLanguageSupport.GetItem("Menu.Restart");
|
||||
restartItem.Click += (s, e) => MessageBox.Show(cMultiLanguageSupport.GetItem("Menu.Restart"));
|
||||
menu.Items.Add(restartItem);
|
||||
|
||||
MenuItem quitItem = new MenuItem();
|
||||
quitItem.Header = cMultiLanguageSupport.GetItem("Menu.Quit");
|
||||
quitItem.Click += (s, e) => MessageBox.Show(cMultiLanguageSupport.GetItem("Menu.Quit"));
|
||||
menu.Items.Add(quitItem);
|
||||
|
||||
return menu;
|
||||
}
|
||||
|
||||
private void TicketNotifyWidget_MouseLeftButtonUp(object sender, MouseButtonEventArgs e)
|
||||
{
|
||||
MessageBox.Show("Dies wurde leider noch nicht implementiert, sollte dich das stören setze es doch gerne selber um.");
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user