bms-can-ui/VoltageView.py

115 lines
4.3 KiB
Python

#!/usr/bin/env python
# -*- coding: UTF-8 -*-
#
# generated by wxGlade 0.9.6 on Sun Nov 29 07:00:24 2020
#
import wx
import wx.grid
# begin wxGlade: dependencies
import gettext
# end wxGlade
# begin wxGlade: extracode
# end wxGlade
class BmsMonitorFrame(wx.Frame):
def __init__(self, *args, **kwds):
# begin wxGlade: BmsMonitorFrame.__init__
kwds["style"] = kwds.get("style", 0) | wx.CAPTION | wx.CLIP_CHILDREN | wx.CLOSE_BOX | wx.MAXIMIZE_BOX | wx.MINIMIZE_BOX | wx.SYSTEM_MENU
wx.Frame.__init__(self, *args, **kwds)
self.SetSize((338, 393))
self.button_1 = wx.ToggleButton(self, wx.ID_ANY, _("Start"))
self.text_ctrl_1 = wx.TextCtrl(self, wx.ID_ANY, _("prefix"))
self.timestamp_1 = wx.TextCtrl(self, wx.ID_ANY, "", style=wx.TE_READONLY)
self.timestamp_2 = wx.TextCtrl(self, wx.ID_ANY, "", style=wx.TE_READONLY)
self.timestamp_3 = wx.TextCtrl(self, wx.ID_ANY, "", style=wx.TE_READONLY)
self.grid_1 = wx.grid.Grid(self, wx.ID_ANY, size=(1, 1))
self.__set_properties()
self.__do_layout()
self.Bind(wx.EVT_TOGGLEBUTTON, self.OnToggle, self.button_1)
# end wxGlade
def __set_properties(self):
# begin wxGlade: BmsMonitorFrame.__set_properties
self.SetTitle(_("BMS Monitor"))
_icon = wx.NullIcon
_icon.CopyFromBitmap(wx.Bitmap("res\\repurpose-energy-ci-icon.ico", wx.BITMAP_TYPE_ANY))
self.SetIcon(_icon)
self.grid_1.CreateGrid(12, 3)
self.grid_1.EnableEditing(0)
self.grid_1.EnableDragColSize(0)
self.grid_1.EnableDragRowSize(0)
self.grid_1.EnableDragGridSize(0)
self.grid_1.SetColLabelValue(0, _("Slave 1 (V)"))
self.grid_1.SetColLabelValue(1, _("Slave 2 (V)"))
self.grid_1.SetColLabelValue(2, _("Slave 3 (V)"))
self.grid_1.SetRowLabelValue(0, _("Cell 1"))
self.grid_1.SetRowLabelValue(1, _("Cell 2"))
self.grid_1.SetRowLabelValue(2, _("Cell 3"))
self.grid_1.SetRowLabelValue(3, _("Cell 4"))
self.grid_1.SetRowLabelValue(4, _("Cell 5"))
self.grid_1.SetRowLabelValue(5, _("Cell 6"))
self.grid_1.SetRowSize(5, 18)
self.grid_1.SetRowLabelValue(6, _("Cell 7"))
self.grid_1.SetRowLabelValue(7, _("Cell 8"))
self.grid_1.SetRowLabelValue(8, _("Cell 9"))
self.grid_1.SetRowLabelValue(9, _("Cell 10"))
self.grid_1.SetRowLabelValue(10, _("Cell 11"))
self.grid_1.SetRowLabelValue(11, _("Cell 12"))
# end wxGlade
def __do_layout(self):
# begin wxGlade: BmsMonitorFrame.__do_layout
sizer_1 = wx.BoxSizer(wx.VERTICAL)
sizer_4 = wx.BoxSizer(wx.HORIZONTAL)
sizer_3 = wx.BoxSizer(wx.HORIZONTAL)
sizer_2 = wx.BoxSizer(wx.HORIZONTAL)
sizer_6 = wx.BoxSizer(wx.HORIZONTAL)
sizer_6.Add(self.button_1, 0, 0, 0)
sizer_6.Add((20, 20), 0, 0, 0)
label_4 = wx.StaticText(self, wx.ID_ANY, _("Output: "))
sizer_6.Add(label_4, 0, 0, 0)
sizer_6.Add(self.text_ctrl_1, 0, 0, 0)
sizer_1.Add(sizer_6, 0, wx.EXPAND, 0)
label_1 = wx.StaticText(self, wx.ID_ANY, _("Slave 1 Update "))
sizer_2.Add(label_1, 0, 0, 0)
sizer_2.Add(self.timestamp_1, 1, 0, 0)
sizer_1.Add(sizer_2, 0, wx.EXPAND, 0)
label_2 = wx.StaticText(self, wx.ID_ANY, _("Slave 2 Update "))
sizer_3.Add(label_2, 0, 0, 0)
sizer_3.Add(self.timestamp_2, 1, wx.EXPAND, 0)
sizer_1.Add(sizer_3, 0, wx.EXPAND, 0)
label_3 = wx.StaticText(self, wx.ID_ANY, _("Slave 3 Update "))
sizer_4.Add(label_3, 0, 0, 0)
sizer_4.Add(self.timestamp_3, 2, wx.EXPAND, 0)
sizer_1.Add(sizer_4, 0, wx.EXPAND, 0)
sizer_1.Add(self.grid_1, 1, wx.EXPAND, 0)
self.SetSizer(sizer_1)
self.Layout()
# end wxGlade
def OnToggle(self, event): # wxGlade: BmsMonitorFrame.<event_handler>
print("Event handler 'OnToggle' not implemented!")
event.Skip()
# end of class BmsMonitorFrame
class BmsApp(wx.App):
def OnInit(self):
self.frame = BmsMonitorFrame(None, wx.ID_ANY, "")
self.SetTopWindow(self.frame)
self.frame.Show()
return True
# end of class BmsApp
if __name__ == "__main__":
gettext.install("app") # replace with the appropriate catalog name
app = BmsApp(0)
app.MainLoop()