| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677 |
- // package frm_mine -- фрейм шахты
- package frm_mine
- import (
- "time"
- . "gitp78su.ipnodns.ru/svi/kern"
- . "gitp78su.ipnodns.ru/svi/kern/krn/ktypes"
- tk "modernc.org/tk9.0"
- . "wartank/app/lev0/types"
- // "wartank/desktop/win_add_bot"
- // "wartank/desktop/win_main/frm_status"
- )
- type FrmMine struct {
- ctx IKernelCtx
- лблУровень *tk.TLabelWidget
- лблРабота *tk.TLabelWidget
- }
- func NewFrmMine(frmStateBot *tk.TFrameWidget) *FrmMine {
- sf := &FrmMine{
- ctx: GetKernelCtx(),
- }
- frmMine := frmStateBot.TFrame((tk.Border(1)), tk.Relief(tk.SUNKEN))
- tk.Pack(frmMine, tk.Side(tk.LEFT), tk.Fill(tk.FILL_Y))
- лблПараметрыШахта := frmMine.Label(tk.Txt("Шахта"),
- tk.Background("#888"),
- tk.Border(1),
- tk.Relief(tk.GROOVE),
- )
- tk.Pack(лблПараметрыШахта, tk.Side(tk.TOP), tk.Fill(tk.FILL_X))
- sf.лблУровень = frmMine.TLabel(tk.Txt("Уровень"),
- tk.Border(1),
- tk.Relief(tk.GROOVE),
- )
- tk.Pack(sf.лблУровень, tk.Side(tk.TOP), tk.Fill(tk.FILL_X))
- sf.лблРабота = frmMine.TLabel(tk.Txt("Работа"),
- tk.Border(1),
- tk.Relief(tk.GROOVE),
- )
- tk.Pack(sf.лблРабота, tk.Side(tk.TOP), tk.Fill(tk.FILL_X))
- sf.update()
- return sf
- }
- func (sf *FrmMine) update() {
- select {
- case <-sf.ctx.Ctx().Done():
- return
- default:
- farm := sf.ctx.Get("ботоФерма").Val().(ИБотоФерма)
- lstBot := farm.ListBot()
- if len(lstBot) > 0 {
- bot := lstBot[0]
- ботСеть := bot.КонтБот()
- шахта := ботСеть.Get("шахта").Val().(ИАренаШахта)
- { // Стата if[ns]
- стрУровень := шахта.Уровень().ЗначСтр()
- sf.лблУровень.Configure(tk.Txt("Уровень: " + стрУровень))
- стрРабота := шахта.ПродуктСейчас().ЗначСтр()
- sf.лблРабота.Configure(tk.Txt("Работа: " + стрРабота))
- // стрВремяОстат := bank.ВремяОстат().String()
- // sf.лблВремяОстат.Configure(tk.Txt("Работа: " + стрВремяОстат))
- // стрСереброБот := bank.СереброБот().ЗначСтр()
- // sf.лблСереброБот.Configure(tk.Txt("СереброБот: " + стрСереброБот))
- }
- }
- }
- tk.TclAfter(time.Millisecond*250, sf.update)
- }
|