예제 #1
0
        public CombatResultsForm(ICombatDataSource combatDataSource, FeatureSettings featureSettings,
                                 IProcessStarter processStarter, ILogger logger)
        {
            if (combatDataSource == null)
            {
                throw new ArgumentNullException("combatDataSource");
            }
            if (featureSettings == null)
            {
                throw new ArgumentNullException("featureSettings");
            }
            if (processStarter == null)
            {
                throw new ArgumentNullException("processStarter");
            }
            if (logger == null)
            {
                throw new ArgumentNullException("logger");
            }
            this.combatDataSource = combatDataSource;
            this.featureSettings  = featureSettings;
            this.processStarter   = processStarter;
            this.logger           = logger;
            InitializeComponent();

            combatDataSource.DataChanged += CombatResultsOnDataChanged;

            filter = new TextMatchFilter(objectListView1,
                                         "",
                                         StringComparison.InvariantCultureIgnoreCase);
            filter.Columns = new[] { olvColumn0 };

            defaultFilter      = objectListView1.ModelFilter;
            rowHeightNup.Value = objectListView1.RowHeight.ConstrainToRange(1, 10000);

            if (featureSettings.CombatResultViewState.Any())
            {
                objectListView1.RestoreState(featureSettings.CombatResultViewState);
            }

            initialOlvState = objectListView1.SaveState();

            RefreshData();
        }
예제 #2
0
        public CombatWidgetForm(ICombatDataSource combatData)
        {
            if (combatData == null)
            {
                throw new ArgumentNullException("combatData");
            }
            this.combatData = combatData;
            InitializeComponent();

            currentAttackersLbl.Text = string.Empty;
            currentFocusLbl.Text     = string.Empty;

            widgetModeManager = new WidgetModeManager(this);
            widgetModeManager.Set(true);
            widgetModeManager.WidgetModeChanging += (sender, args) =>
            {
                widgetHelpLbl.Visible = !args.WidgetMode;
            };
        }