Эх сурвалжийг харах

d02 Добавение статистики базы

SVI 2 жил өмнө
parent
commit
f790d950ee

+ 31 - 10
server/gui/win_main/win_main.go

@@ -46,6 +46,9 @@ type WinMain struct {
 	lblPower       *widget.Label      // Всего очков танка
 	lblForce       *widget.Label      // Что усилено
 	lblPolygonTime *widget.Label      // Время до окончания плигона
+	lblPolygonMode *widget.Label      // Режим работы полигона
+	lblMineTime    *widget.Label      // Время до окончания работы шахты
+	lblMineMode    *widget.Label      // Режим работы шахты
 }
 
 // NewWinMain -- возвращает новое главное окно
@@ -118,15 +121,23 @@ func NewWinMain(serv types.IServer) (*WinMain, error) {
 	hStat := container.NewHBox(sf.frmStatLeft, sf.frmStatRight)
 	tabStat := container.NewTabItem("Статистика", hStat)
 
-	// Вкладка базы
-	itemPolygon := widget.NewFormItem("Полигон", nil)
-	sf.lblPolygonTime = widget.NewLabel("00:00:00")
-	itemPolygonTime := widget.NewFormItem("Время", sf.lblPolygonTime)
-	frmPolygon := widget.NewForm(itemPolygon, itemPolygonTime)
+	lblEmpty := widget.NewLabel("")
+	itemPolygon := widget.NewFormItem("Полигон", lblEmpty)
+	sf.lblPolygonTime = widget.NewLabel("Время: 00:00:00")
+	sf.lblPolygonMode = widget.NewLabel("Режим: None")
+	hBoxPolygon := container.NewHBox(sf.lblPolygonTime, sf.lblPolygonMode)
+	itemPolygonWork := widget.NewFormItem("Режим", hBoxPolygon)
+	frmPolygon := widget.NewForm(itemPolygon, itemPolygonWork)
 
-	vBase`
-	` := container.NewVBox(frmPolygon)
-	tabBase := container.NewTabItem("База", vBase)
+	itemMine := widget.NewFormItem("Шахта", lblEmpty)
+	sf.lblMineTime = widget.NewLabel("Время: 00:00:00")
+	sf.lblMineMode = widget.NewLabel("Режим: None")
+	hBoxMine := container.NewHBox(sf.lblMineTime, sf.lblMineMode)
+	itemMineWork := widget.NewFormItem("Режим", hBoxMine)
+	frmMine := widget.NewForm(itemMine, itemMineWork)
+
+	hBase := container.NewVBox(frmPolygon, frmMine)
+	tabBase := container.NewTabItem("База", hBase)
 	sf.tabBot = container.NewAppTabs(tabLogin, tabStat, tabBase)
 
 	sf.boxLeft = container.NewVBox(text1)
@@ -169,7 +180,10 @@ func (sf *WinMain) resetStat() {
 		sf.lblForce.SetText("None")
 	}
 	{ // Вкладка базы
-		sf.lblPolygonTime.SetText("00:00:00")
+		sf.lblPolygonTime.SetText("Время: 00:00:00")
+		sf.lblPolygonMode.SetText("Режим: None")
+		sf.lblMineTime.SetText("Время: 00:00:00")
+		sf.lblMineMode.SetText("Режим: None")
 	}
 }
 
@@ -237,7 +251,14 @@ func (sf *WinMain) showStat() {
 				continue
 			}
 			polyTime := bot.Angar().Base().Polygon().CountDown().String()
-			sf.lblPolygonTime.SetText(polyTime)
+			sf.lblPolygonTime.SetText("Время: " + polyTime)
+			polyMode := bot.Angar().Base().Polygon().ModeCurrent().Work()
+			sf.lblPolygonMode.SetText("Режим: " + polyMode)
+
+			mineTime := bot.Angar().Base().Mine().CountDown().String()
+			sf.lblMineTime.SetText("Время: " + mineTime)
+			mineMode := bot.Angar().Base().Mine().ModeCurrent().Work()
+			sf.lblMineMode.SetText("Режим: " + mineMode)
 		}
 	}
 }