Exemple #1
0
 public void RemoveRow(TemtemDataRow row)
 {
     lock (saveLock)
     {
         //Remove UI element from UI
         trackerUI.RemoveRowFromTable(UIElements[row].Item1);
         //Close individual window
         UIElements[row].Item2.Close();
         //Remove UI <-> data binding from hash map
         UIElements.Remove(row);
         //Remove row info from total
         dataTable.total.encountered -= row.encountered;
         dataTable.total.lumaChance   = lumaCalculator.CalculateChance(dataTable.total.encountered, "");
         dataTable.total.timeToLuma   = lumaCalculator.GetTimeToLuma(dataTable.total.encountered, dataTable.timer.durationTime, "");
         trackerUI.UpdateTotal();
         //Remove data from dataTable
         dataTable.rows.Remove(row);
         //Recalculate encountered %
         foreach (KeyValuePair <TemtemDataRow, Tuple <TemtemTableRowUI, IndividualTrackerWindow> > entry in UIElements)
         {
             entry.Key.encounteredPercent = entry.Key.encountered / (double)dataTable.total.encountered;
             entry.Value.Item1.UpdateRow();
             entry.Value.Item2.UpdateWindow();
         }
         UpdateTemtemH();
         SetLastChangeTime();
     }
 }
 public TemtemTableRowUI(TemtemDataRow row, TemtemTableController controller)
 {
     InitializeComponent();
     this.row        = row;
     this.controller = controller;
     UpdateRow();
     this.Dock = DockStyle.Top;
     //Set delete button hover
 }
Exemple #3
0
 public IndividualTrackerWindow(TemtemDataRow temtemRow, SettingsController settingsController)
 {
     InitializeComponent();
     this.temtemRow = temtemRow;
     UpdateWindow();
     this.settingsController                      = settingsController;
     settingsController.StyleChanged             += SetWindowStyle;
     settingsController.MainWindowOpacityChanged += OpacityChanged;
     settingsController.TimerPausedToggled       += TimerToggled;
     SetWindowStyle(null, settingsController.GetWindowStyle());
     OpacityChanged(null, settingsController.GetUserSettings().mainWindowOpacity);
 }
Exemple #4
0
 public void AddTemtem(string temtemName)
 {
     lock (saveLock)
     {
         TemtemDataRow targetRow = null;
         foreach (TemtemDataRow row in dataTable.rows)
         {
             if (string.Compare(row.name, temtemName) == 0)
             {
                 targetRow = row;
                 break;
             }
         }
         if (targetRow == null)
         {
             //We didn't find the row, set up a new one
             targetRow = new TemtemDataRow
             {
                 name        = temtemName,
                 encountered = 0
             };
             dataTable.rows.Add(targetRow);
             UIElements[targetRow] = new Tuple <TemtemTableRowUI, IndividualTrackerWindow>(new TemtemTableRowUI(targetRow, this), new IndividualTrackerWindow(targetRow, settingsController, dataTable.timer.durationTime));
             trackerUI.AddRowToTable(UIElements[targetRow].Item1);
         }
         //Calculate stuff
         dataTable.total.encountered++;
         dataTable.total.lumaChance = lumaCalculator.CalculateChance(dataTable.total.encountered, dataTable.total.name);
         dataTable.total.timeToLuma = lumaCalculator.GetTimeToLuma(dataTable.total.encountered, dataTable.timer.durationTime, dataTable.total.name);
         targetRow.encountered++;
         targetRow.lumaChance         = lumaCalculator.CalculateChance(targetRow.encountered, targetRow.name);
         targetRow.timeToLuma         = lumaCalculator.GetTimeToLuma(targetRow.encountered, dataTable.timer.durationTime, targetRow.name);
         targetRow.encounteredPercent = targetRow.encountered / (double)dataTable.total.encountered;
         UIElements[targetRow].Item1.UpdateRow();
         UIElements[targetRow].Item2.UpdateWindow();
         trackerUI.UpdateTotal();
         //Recalculate encountered %
         foreach (KeyValuePair <TemtemDataRow, Tuple <TemtemTableRowUI, IndividualTrackerWindow> > entry in UIElements)
         {
             entry.Key.encounteredPercent = entry.Key.encountered / (double)dataTable.total.encountered;
             entry.Value.Item1.UpdateRow();
             entry.Value.Item2.UpdateWindow();
         }
         UpdateTemtemH();
         SetLastChangeTime();
     }
 }
Exemple #5
0
 public void ShowIndividualWindow(TemtemDataRow row)
 {
     UIElements[row].Item2.Show();
 }
Exemple #6
0
 public void SetTotal(TemtemDataRow totalRow)
 {
     temtemTableTotalUI.SetTotal(totalRow);
 }
 public void SetTotal(TemtemDataRow row)
 {
     this.row = row;
     UpdateRow();
 }