Beispiel #1
0
        /// <summary>
        /// Initializes a new instance of the <see cref="TradebarViewModel" /> class.
        /// </summary>
        /// <param name="eventAggregator">The event aggregator.</param>
        /// <param name="clientLurker">The client lurker.</param>
        /// <param name="processLurker">The process lurker.</param>
        /// <param name="keyboardLurker">The keyboard lurker.</param>
        /// <param name="dockingHelper">The docking helper.</param>
        /// <param name="keyboardHelper">The keyboard helper.</param>
        /// <param name="settingsService">The settings service.</param>
        /// <param name="windowManager">The window manager.</param>
        /// <param name="soundService">The sound service.</param>
        public TradebarViewModel(IEventAggregator eventAggregator, ClientLurker clientLurker, ProcessLurker processLurker, KeyboardLurker keyboardLurker, DockingHelper dockingHelper, PoeKeyboardHelper keyboardHelper, SettingsService settingsService, IWindowManager windowManager, SoundService soundService)
            : base(windowManager, dockingHelper, processLurker, settingsService)
        {
            this._eventAggregator = eventAggregator;
            this._keyboardHelper  = keyboardHelper;
            this._soundService    = soundService;
            this._clientLurker    = clientLurker;

            this._keyboardLurker = keyboardLurker;
            this.TradeOffers     = new ObservableCollection <OfferViewModel>();
            this._soldOffers     = new List <TradeEvent>();
            this._context        = new TradebarContext(this.RemoveOffer, this.AddActiveOffer, this.AddToSoldOffer, this.SetActiveOffer, this.ClearAll);
            this.DisplayName     = "Poe Lurker";
        }
        /// <summary>
        /// Initializes a new instance of the <see cref="BuildViewModel" /> class.
        /// </summary>
        /// <param name="windowManager">The window manager.</param>
        /// <param name="dockingHelper">The docking helper.</param>
        /// <param name="processLurker">The process lurker.</param>
        /// <param name="settingsService">The settings service.</param>
        /// <param name="buildService">The build service.</param>
        /// <param name="playerService">The player service.</param>
        /// <param name="settingsViewModel">The settings view model.</param>
        public BuildViewModel(IWindowManager windowManager, DockingHelper dockingHelper, ProcessLurker processLurker, SettingsService settingsService, BuildService buildService, PlayerService playerService, SettingsViewModel settingsViewModel)
            : base(windowManager, dockingHelper, processLurker, settingsService)
        {
            this._activePlayer = playerService.FirstPlayer;
            if (this._activePlayer != null && !string.IsNullOrEmpty(this._activePlayer.Build.BuildId))
            {
                var build = buildService.Builds.FirstOrDefault(b => b.Id == this._activePlayer.Build.BuildId);
                if (build == null)
                {
                    this._hasNoBuild = true;
                }
                else
                {
                    this._currentBuild = build;
                    this._currentTask  = this.Initialize(build.PathOfBuildingCode, false);
                }
            }
            else
            {
                this._hasNoBuild = true;
            }

            this.IsVisible             = true;
            this._settings             = settingsViewModel;
            this._eventAggregator      = IoC.Get <IEventAggregator>();
            this.Skills                = new ObservableCollection <SkillViewModel>();
            this._skillTimelineEnabled = this.SettingsService.TimelineEnabled;
            this._playerService        = playerService;
            this.UniqueItems           = new ObservableCollection <UniqueItemViewModel>();

            this.ActivePlayer = new PlayerViewModel(playerService);
            this._playerService.PlayerChanged += this.PlayerService_PlayerChanged;
            this._buildService = buildService;
            this._builds       = new ObservableCollection <SimpleBuild>();

            this.BuildSelector = new BuildSelectorViewModel(buildService);
            this.BuildSelector.BuildSelected += this.BuildSelector_BuildSelected;
        }
Beispiel #3
0
        /// <summary>
        /// Initializes a new instance of the <see cref="PoeOverlayBase" /> class.
        /// </summary>
        /// <param name="windowManager">The window manager.</param>
        /// <param name="dockingHelper">The docking helper.</param>
        /// <param name="processLurker">The process lurker.</param>
        /// <param name="settingsService">The settings service.</param>
        public PoeOverlayBase(IWindowManager windowManager, DockingHelper dockingHelper, ProcessLurker processLurker, SettingsService settingsService)
            : base(windowManager)
        {
            this.DockingHelper   = dockingHelper;
            this.ProcessLurker   = processLurker;
            this.SettingsService = settingsService;

            // Default scale value
            this._scaleY = 1;
            this._scaleX = 1;
        }
 /// <summary>
 /// Initializes a new instance of the <see cref="LifeBulbViewModel" /> class.
 /// </summary>
 /// <param name="eventAggregator">The event aggregator.</param>
 /// <param name="windowManager">The window manager.</param>
 /// <param name="dockingHelper">The docking helper.</param>
 /// <param name="processLurker">The process lurker.</param>
 /// <param name="clientLurker">The client lurker.</param>
 /// <param name="settingsService">The settings service.</param>
 public LifeBulbViewModel(IEventAggregator eventAggregator, IWindowManager windowManager, DockingHelper dockingHelper, ProcessLurker processLurker, ClientLurker clientLurker, SettingsService settingsService)
     : base(windowManager, dockingHelper, processLurker, settingsService, clientLurker)
 {
     this._eventAggregator = eventAggregator;
     this._eventAggregator.Subscribe(this);
 }
        /// <summary>
        /// Initializes a new instance of the <see cref="BuildTimelineViewModel" /> class.
        /// </summary>
        /// <param name="windowManager">The window manager.</param>
        /// <param name="dockingHelper">The docking helper.</param>
        /// <param name="processLurker">The process lurker.</param>
        /// <param name="settingsService">The settings service.</param>
        /// <param name="playerService">The character service.</param>
        public BuildTimelineViewModel(IWindowManager windowManager, DockingHelper dockingHelper, ProcessLurker processLurker, SettingsService settingsService, PlayerService playerService)
            : base(windowManager, dockingHelper, processLurker, settingsService)
        {
            this._playerService = playerService;
            var firstPlayer = this._playerService.FirstPlayer;

            var progress = 0;

            if (firstPlayer != null)
            {
                progress        = firstPlayer.Levels.FirstOrDefault();
                this.PlayerName = firstPlayer.Name;
            }

            this.Timeline   = new TimelineViewModel(progress, MaxLevel);
            this.PlayerName = firstPlayer != null ? firstPlayer.Name : string.Empty;

            this.PlayerLevel = string.Empty;
            if (firstPlayer != null)
            {
                var level = firstPlayer.Levels.FirstOrDefault();
                if (level != 0)
                {
                    this.PlayerLevel = level.ToString();
                }
            }

            this._playerService.PlayerChanged += this.PlayerChanged;

            this._eventAggregator = IoC.Get <IEventAggregator>();
            this._skills          = new List <Skill>();
            this._items           = new List <UniqueItem>();
            this.ActivePlayer     = new PlayerViewModel(playerService);
        }
Beispiel #6
0
        /// <summary>
        /// Initializes a new instance of the <see cref="PoeOverlayBase" /> class.
        /// </summary>
        /// <param name="windowManager">The window manager.</param>
        /// <param name="dockingHelper">The docking helper.</param>
        /// <param name="processLurker">The process lurker.</param>
        /// <param name="settingsService">The settings service.</param>
        public PoeOverlayBase(IWindowManager windowManager, DockingHelper dockingHelper, ProcessLurker processLurker, SettingsService settingsService)
            : base(windowManager)
        {
            this.DockingHelper                = dockingHelper;
            this.ProcessLurker                = processLurker;
            this.SettingsService              = settingsService;
            this.ProcessLurker.ProcessClosed += this.Lurker_PoeClosed;
            this.SettingsService.OnSave      += this.SettingsService_OnSave;

            if (this.DockingHelper != null)
            {
                this.DockingHelper.OnWindowMove       += this.DockingHelper_OnWindowMove;
                this.DockingHelper.OnForegroundChange += this.DockingHelper_OnForegroundChange;
            }
        }
Beispiel #7
0
 /// <summary>
 /// Initializes a new instance of the <see cref="PopupViewModel"/> class.
 /// </summary>
 /// <param name="windowManager">The window manager.</param>
 /// <param name="dockingHelper">The docking helper.</param>
 /// <param name="processLurker">The process lurker.</param>
 /// <param name="settingsService">The settings service.</param>
 /// <param name="mouseLurker">The mouse lurker.</param>
 public PopupViewModel(IWindowManager windowManager, DockingHelper dockingHelper, ProcessLurker processLurker, SettingsService settingsService, MouseLurker mouseLurker)
     : base(windowManager, dockingHelper, processLurker, settingsService)
 {
     this._mouseLurker = mouseLurker;
     this._opacity     = 1;
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="HideoutViewModel" /> class.
 /// </summary>
 /// <param name="windowManager">The window manager.</param>
 /// <param name="dockingHelper">The docking helper.</param>
 /// <param name="processLurker">The process lurker.</param>
 /// <param name="settingsService">The settings service.</param>
 /// <param name="keyboardHelper">The keyboard helper.</param>
 public HideoutViewModel(IWindowManager windowManager, DockingHelper dockingHelper, ProcessLurker processLurker, SettingsService settingsService, PoeKeyboardHelper keyboardHelper)
     : base(windowManager, dockingHelper, processLurker, settingsService)
 {
     this._keyboardHelper = keyboardHelper;
 }
        /// <summary>
        /// Initializes a new instance of the <see cref="OutgoingbarViewModel" /> class.
        /// </summary>
        /// <param name="eventAggregator">The event aggregator.</param>
        /// <param name="clipboardLurker">The clipboard lurker.</param>
        /// <param name="clientLurker">The client lurker.</param>
        /// <param name="processLurker">The process lurker.</param>
        /// <param name="dockingHelper">The docking helper.</param>
        /// <param name="keyboardHelper">The keyboard helper.</param>
        /// <param name="settingsService">The settings service.</param>
        /// <param name="windowManager">The window manager.</param>
        /// <param name="playerService">The player service.</param>
        public OutgoingbarViewModel(IEventAggregator eventAggregator, ClipboardLurker clipboardLurker, ClientLurker clientLurker, ProcessLurker processLurker, DockingHelper dockingHelper, PoeKeyboardHelper keyboardHelper, SettingsService settingsService, IWindowManager windowManager, PlayerService playerService)
            : base(windowManager, dockingHelper, processLurker, settingsService)
        {
            this.Offers           = new ObservableCollection <OutgoingOfferViewModel>();
            this.FilteredOffers   = new ObservableCollection <OutgoingOfferViewModel>();
            this._timer           = new Timer(50);
            this._timer.Elapsed  += this.Timer_Elapsed;
            this._keyboardHelper  = keyboardHelper;
            this._clipboardLurker = clipboardLurker;
            this._eventAggregator = eventAggregator;
            this._clientLurker    = clientLurker;
            this._playerService   = playerService;

            this.Offers.CollectionChanged  += this.Offers_CollectionChanged;
            this._clipboardLurker.NewOffer += this.ClipboardLurker_NewOffer;
        }
Beispiel #10
0
        /// <summary>
        /// Initializes a new instance of the <see cref="ManaBulbViewModel" /> class.
        /// </summary>
        /// <param name="eventAggregator">The event aggregator.</param>
        /// <param name="windowManager">The window manager.</param>
        /// <param name="dockingHelper">The docking helper.</param>
        /// <param name="clientLurker">The client lurker.</param>
        /// <param name="processLurker">The process lurker.</param>
        /// <param name="settingsService">The settings service.</param>
        /// H
        public ManaBulbViewModel(IEventAggregator eventAggregator, IWindowManager windowManager, DockingHelper dockingHelper, ClientLurker clientLurker, ProcessLurker processLurker, SettingsService settingsService)
            : base(windowManager, dockingHelper, processLurker, settingsService, clientLurker)
        {
            this._eventAggregator = eventAggregator;
            this._eventAggregator.Subscribe(this);

            this.ClientLurker.LocationChanged   += this.Lurker_LocationChanged;
            this.ClientLurker.RemainingMonsters += this.Lurker_RemainingMonsters;
            this.SettingsService.OnSave         += this.SettingsService_OnSave;
        }
Beispiel #11
0
        /// <summary>
        /// Cleans up.
        /// </summary>
        private void CleanUp()
        {
            this.ActivePlayer = null;
            this._container.UnregisterHandler <ClientLurker>();
            this._container.UnregisterHandler <PlayerService>();
            this._container.UnregisterHandler <ProcessLurker>();
            this._container.UnregisterHandler <DockingHelper>();
            this._container.UnregisterHandler <PoeKeyboardHelper>();
            this._container.UnregisterHandler <ClipboardLurker>();
            this._container.UnregisterHandler <MouseLurker>();
            this._container.UnregisterHandler <KeyboardLurker>();

            if (this._clipboardLurker != null)
            {
                this._clipboardLurker.Dispose();
                this._clipboardLurker = null;
            }

            if (this._currentLurker != null)
            {
                this._currentLurker.AdminRequested -= this.CurrentLurker_AdminRequested;
                this._currentLurker.Dispose();
                this._currentLurker = null;
            }

            if (this._currentCharacterService != null)
            {
                this._currentCharacterService.Dispose();
            }

            if (this._processLurker != null)
            {
                this._processLurker.ProcessClosed -= this.PoeClosed;
                this._processLurker.Dispose();
                this._processLurker = null;
            }

            if (this._currentDockingHelper != null)
            {
                this._currentDockingHelper.Dispose();
                this._currentDockingHelper = null;
            }

            if (this._afkService != null)
            {
                this._afkService.Dispose();
                this._afkService = null;
            }

            if (this._mouseLurker != null)
            {
                this._mouseLurker.ItemDetails    -= this.ShowItemDetails;
                this._mouseLurker.ItemIdentified -= this.ShowMap;
                this._mouseLurker.Dispose();
                this._mouseLurker = null;
            }

            if (this._keyboardLurker != null)
            {
                this._keyboardLurker.OpenWikiPressed -= this.KeyboardLurker_OpenWikiPressed;
                this._keyboardLurker.BuildToggled    -= this.KeyboardLurker_BuildToggled;
                this._keyboardLurker.Dispose();
            }
        }
Beispiel #12
0
 /// <summary>
 /// Initializes a new instance of the <see cref="HideoutViewModel" /> class.
 /// </summary>
 /// <param name="windowManager">The window manager.</param>
 /// <param name="dockingHelper">The docking helper.</param>
 /// <param name="processLurker">The process lurker.</param>
 /// <param name="settingsService">The settings service.</param>
 /// <param name="keyboardHelper">The keyboard helper.</param>
 /// <param name="clientLurker">The client lurker.</param>
 public HideoutViewModel(IWindowManager windowManager, DockingHelper dockingHelper, ProcessLurker processLurker, SettingsService settingsService, PoeKeyboardHelper keyboardHelper, ClientLurker clientLurker)
     : base(windowManager, dockingHelper, processLurker, settingsService)
 {
     this._keyboardHelper = keyboardHelper;
     this._clientLurker   = clientLurker;
     this.IsVisible       = true;
 }
Beispiel #13
0
        /// <summary>
        /// Initializes a new instance of the <see cref="BuildViewModel"/> class.
        /// </summary>
        /// <param name="windowManager">The window manager.</param>
        /// <param name="dockingHelper">The docking helper.</param>
        /// <param name="processLurker">The process lurker.</param>
        /// <param name="settingsService">The settings service.</param>
        public BuildViewModel(IWindowManager windowManager, DockingHelper dockingHelper, ProcessLurker processLurker, SettingsService settingsService)
            : base(windowManager, dockingHelper, processLurker, settingsService)
        {
            if (AssetService.Exists(FileName))
            {
                this._currentTask = this.Initialize(File.ReadAllText(AssetService.GetFilePath(FileName)));
            }
            else
            {
                this._hasNoBuild = true;
            }

            this.IsVisible = true;
        }
Beispiel #14
0
        /// <summary>
        /// Initializes a new instance of the <see cref="TradebarViewModel" /> class.
        /// </summary>
        /// <param name="eventAggregator">The event aggregator.</param>
        /// <param name="clientLurker">The client lurker.</param>
        /// <param name="processLurker">The process lurker.</param>
        /// <param name="dockingHelper">The docking helper.</param>
        /// <param name="keyboardHelper">The keyboard helper.</param>
        /// <param name="settingsService">The settings service.</param>
        /// <param name="windowManager">The window manager.</param>
        /// <param name="soundService">The sound service.</param>
        public TradebarViewModel(IEventAggregator eventAggregator, ClientLurker clientLurker, ProcessLurker processLurker, DockingHelper dockingHelper, PoeKeyboardHelper keyboardHelper, SettingsService settingsService, IWindowManager windowManager, SoundService soundService)
            : base(windowManager, dockingHelper, processLurker, settingsService)
        {
            this._eventAggregator = eventAggregator;
            this._keyboardHelper  = keyboardHelper;
            this._soundService    = soundService;
            this._clientLurker    = clientLurker;
            this.TradeOffers      = new ObservableCollection <OfferViewModel>();
            this._lastOffers      = new List <TradeEvent>();

            this._clientLurker.IncomingOffer += this.Lurker_IncomingOffer;
            this._clientLurker.TradeAccepted += this.Lurker_TradeAccepted;
            this._clientLurker.PlayerJoined  += this.Lurker_PlayerJoined;
            this._clientLurker.PlayerLeft    += this.Lurker_PlayerLeft;

            this._context                = new TradebarContext(this.RemoveOffer, this.AddActiveOffer, this.SetActiveOffer);
            this.DisplayName             = "Poe Lurker";
            this.SettingsService.OnSave += this.SettingsService_OnSave;
        }
Beispiel #15
0
 /// <summary>
 /// Initializes a new instance of the <see cref="WikiViewModel" /> class.
 /// </summary>
 /// <param name="windowManager">The window manager.</param>
 /// <param name="dockingHelper">The docking helper.</param>
 /// <param name="processLurker">The process lurker.</param>
 /// <param name="settingsService">The settings service.</param>
 /// <param name="githubService">The github service.</param>
 /// <param name="mouseLurker">The mouse lurker.</param>
 /// <param name="ninjaService">The ninja service.</param>
 public WikiViewModel(IWindowManager windowManager, DockingHelper dockingHelper, ProcessLurker processLurker, SettingsService settingsService, GithubService githubService, MouseLurker mouseLurker, PoeNinjaService ninjaService)
     : base(windowManager, dockingHelper, processLurker, settingsService)
 {
     this._githubService = githubService;
     this._mouseLurker   = mouseLurker;
     this._ninjaService  = ninjaService;
     this.Items          = new ObservableCollection <WikiItemBaseViewModel>();
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="HideoutViewModel" /> class.
 /// </summary>
 /// <param name="windowManager">The window manager.</param>
 /// <param name="dockingHelper">The docking helper.</param>
 /// <param name="processLurker">The process lurker.</param>
 /// <param name="settingsService">The settings service.</param>
 /// <param name="keyboardHelper">The keyboard helper.</param>
 /// <param name="clientLurker">The client lurker.</param>
 public HideoutViewModel(IWindowManager windowManager, DockingHelper dockingHelper, ProcessLurker processLurker, SettingsService settingsService, PoeKeyboardHelper keyboardHelper, ClientLurker clientLurker)
     : base(windowManager, dockingHelper, processLurker, settingsService)
 {
     this._keyboardHelper = keyboardHelper;
     this._clientLurker   = clientLurker;
     this._clientLurker.LocationChanged += this.ClientLurker_LocationChanged;
 }
Beispiel #17
0
 /// <summary>
 /// Initializes a new instance of the <see cref="HelpViewModel"/> class.
 /// </summary>
 /// <param name="windowManager">The window manager.</param>
 /// <param name="dockingHelper">The docking helper.</param>
 /// <param name="processLurker">The process lurker.</param>
 /// <param name="settingsService">The settings service.</param>
 public HelpViewModel(IWindowManager windowManager, DockingHelper dockingHelper, ProcessLurker processLurker, SettingsService settingsService)
     : base(windowManager, dockingHelper, processLurker, settingsService)
 {
     this._windowManager = windowManager;
 }
        /// <summary>
        /// Initializes a new instance of the <see cref="OutgoingbarViewModel" /> class.
        /// </summary>
        /// <param name="eventAggregator">The event aggregator.</param>
        /// <param name="clipboardLurker">The clipboard lurker.</param>
        /// <param name="clientLurker">The client lurker.</param>
        /// <param name="processLurker">The process lurker.</param>
        /// <param name="dockingHelper">The docking helper.</param>
        /// <param name="keyboardHelper">The keyboard helper.</param>
        /// <param name="settingsService">The settings service.</param>
        /// <param name="windowManager">The window manager.</param>
        public OutgoingbarViewModel(IEventAggregator eventAggregator, ClipboardLurker clipboardLurker, ClientLurker clientLurker, ProcessLurker processLurker, DockingHelper dockingHelper, PoeKeyboardHelper keyboardHelper, SettingsService settingsService, IWindowManager windowManager)
            : base(windowManager, dockingHelper, processLurker, settingsService)
        {
            this.Offers           = new ObservableCollection <OutgoingOfferViewModel>();
            this.FilteredOffers   = new ObservableCollection <OutgoingOfferViewModel>();
            this._timer           = new Timer(50);
            this._timer.Elapsed  += this.Timer_Elapsed;
            this._keyboardHelper  = keyboardHelper;
            this._clipboardLurker = clipboardLurker;
            this._eventAggregator = eventAggregator;
            this._clientLurker    = clientLurker;

            this._clipboardLurker.NewOffer   += this.ClipboardLurker_NewOffer;
            this._clientLurker.OutgoingOffer += this.Lurker_OutgoingOffer;
            this._clientLurker.TradeAccepted += this.Lurker_TradeAccepted;
            this.Offers.CollectionChanged    += this.Offers_CollectionChanged;
            this._context = new OutgoingbarContext(this.RemoveOffer, this.SetActiveOffer);
        }
Beispiel #19
0
 /// <summary>
 /// Initializes a new instance of the <see cref="BulbViewModelBase" /> class.
 /// </summary>
 /// <param name="windowManager">The window manager.</param>
 /// <param name="dockingHelper">The docking helper.</param>
 /// <param name="processLurker">The Processs lurker.</param>
 /// <param name="settingsService">The settings serivce.</param>
 /// <param name="clientLurker">The client lurker.</param>
 public BulbViewModelBase(IWindowManager windowManager, DockingHelper dockingHelper, ProcessLurker processLurker, SettingsService settingsService, ClientLurker clientLurker)
     : base(windowManager, dockingHelper, processLurker, settingsService)
 {
     this.ClientLurker = clientLurker;
     this.SetDefaultAction();
 }
Beispiel #20
0
        /// <summary>
        /// Initializes a new instance of the <see cref="BuildViewModel" /> class.
        /// </summary>
        /// <param name="windowManager">The window manager.</param>
        /// <param name="dockingHelper">The docking helper.</param>
        /// <param name="processLurker">The process lurker.</param>
        /// <param name="settingsService">The settings service.</param>
        /// <param name="playerService">The player service.</param>
        public BuildViewModel(IWindowManager windowManager, DockingHelper dockingHelper, ProcessLurker processLurker, SettingsService settingsService, PlayerService playerService)
            : base(windowManager, dockingHelper, processLurker, settingsService)
        {
            this._activePlayer = playerService.FirstPlayer;
            if (this._activePlayer != null && !string.IsNullOrEmpty(this._activePlayer.Build.Value))
            {
                this._currentTask = this.Initialize(this._activePlayer.Build.Value, false);
            }
            else
            {
                this._hasNoBuild = true;
            }

            this.IsVisible             = true;
            this._eventAggregator      = IoC.Get <IEventAggregator>();
            this.Skills                = new ObservableCollection <SkillViewModel>();
            this._skillTimelineEnabled = this.SettingsService.TimelineEnabled;
            this._playerService        = playerService;
            this.UniqueItems           = new ObservableCollection <UniqueItemViewModel>();

            this.ActivePlayer = new PlayerViewModel(playerService);
            this._playerService.PlayerChanged += this.PlayerService_PlayerChanged;
        }