//
// Copyright (c) PlaceholderCompany. All rights reserved.
//
namespace SystemTrayMenu.Handler
{
using System;
using System.Collections;
using System.Windows.Controls;
using System.Windows.Input;
using System.Windows.Threading;
using SystemTrayMenu.DataClasses;
using SystemTrayMenu.Utilities;
using static SystemTrayMenu.UserInterface.Menu;
using ListView = System.Windows.Controls.ListView;
using Menu = SystemTrayMenu.UserInterface.Menu;
internal class WaitToLoadMenu : IDisposable
{
private readonly DispatcherTimer timerStartLoad = new();
private ListView? dgv;
private ListViewItemData? dgvItemData;
#if TODO // Misc MouseEvents
private ListView? dgvTmp;
private ListViewItemData rowItemDataTmp;
#endif
private bool alreadyOpened;
#if TODO // Misc MouseEvents
private int mouseMoveEvents;
private DateTime dateTimeLastMouseMoveEvent = DateTime.Now;
#endif
private bool checkForMouseActive = true;
internal WaitToLoadMenu()
{
timerStartLoad.Interval = TimeSpan.FromMilliseconds(Properties.Settings.Default.TimeUntilOpens);
timerStartLoad.Tick += WaitStartLoad_Tick;
}
internal event Action? StartLoadMenu;
internal event Action? CloseMenu;
internal event Action? StopLoadMenu;
internal event Action