def Draw(self,title):
        self.ClearCanvas()
        title = MyLangManager.Tr(title)
        self._Title = title
        
        cur_time =  datetime.now().strftime("%H:%M")
        time_text_font = MySkinManager.GiveFont("varela12")
        time_text_size = time_text_font.size(cur_time)
        title_text_size = MyLangManager.TrFont("varela16").size(title)

        self._CanvasHWND.blit(MyLangManager.TrFont("varela16").render(title,True,self._SkinManager.GiveColor("Text")),midRect(title_text_size[0]/2+self._LOffset,
                                                                    title_text_size[1]/2+(self._BarHeight-title_text_size[1])/2,
                                                                    title_text_size[0],title_text_size[1],Width,Height))
        self._CanvasHWND.blit( time_text_font.render(cur_time,True,self._SkinManager.GiveColor("Text")),midRect(Width-time_text_size[0]/2-self._ROffset,
                                                                        time_text_size[1]/2+(self._BarHeight-time_text_size[1])/2,
                                                                        time_text_size[0],time_text_size[1],Width,Height))

        start_x = Width-time_text_size[0]-self._ROffset-self._icon_width*3 # near by the time_text
        
        self._Icons["bluetooth"].NewCoord(start_x - self._icon_width,self._icon_height/2+(self._BarHeight-self._icon_height)/2)
        
        self._Icons["sound"].NewCoord(start_x, self._icon_height/2+(self._BarHeight-self._icon_height)/2)
        
        #self._Icons["wifi"].NewCoord(start_x+self._icon_width+5,    self._icon_height/2+(self._BarHeight-self._icon_height)/2)
        
        self._Icons["battery"].NewCoord(start_x+self._icon_width+self._icon_width+8,self._icon_height/2+(self._BarHeight-self._icon_height)/2)

        
        if is_wifi_connected_now():
            ge = self.GetWifiStrength(wifi_strength())
            if ge > 0:
                self._Icons["wifistatus"]._IconIndex = ge
                self._Icons["wifistatus"].NewCoord(start_x+self._icon_width+5,self._icon_height/2+(self._BarHeight-self._icon_height)/2)
                self._Icons["wifistatus"].Draw()
            else:
                self._Icons["wifistatus"]._IconIndex = 0
                self._Icons["wifistatus"].Draw()
                print("wifi strength error")
        else:
            if self._InAirPlaneMode == False:
                self._Icons["wifistatus"]._IconIndex = 0
            else:
                self._Icons["wifistatus"]._IconIndex = 5 ## airplane mode icon
            
            self._Icons["wifistatus"].NewCoord(start_x+self._icon_width+5,self._icon_height/2+(self._BarHeight-self._icon_height)/2)
            self._Icons["wifistatus"].Draw()
        
        self._Icons["sound"].Draw()
        
        self._Icons["battery"].Draw()
        
        self._Icons["bluetooth"].Draw()
        
        pygame.draw.line(self._CanvasHWND,self._SkinManager.GiveColor("Line"),(0,self._BarHeight),(self._Width,self._BarHeight),self._BorderWidth)

        if self._HWND != None:
            self._HWND.blit(self._CanvasHWND,(self._PosX,self._PosY,self._Width,self._Height))
예제 #2
0
    def Init(self, screen):

        start_x = 0
        self._CanvasHWND = pygame.Surface((self._Width, self._Height))
        self._HWND = screen

        icon_wifi_status = MultiIconItem()
        icon_wifi_status._MyType = ICON_TYPES["STAT"]
        icon_wifi_status._ImageName = icon_base_path + "wifi.png"
        icon_wifi_status._Parent = self
        icon_wifi_status.Adjust(
            start_x + self._icon_width + 5,
            self._icon_height / 2 + (self._BarHeight - self._icon_height) / 2,
            self._icon_width, self._icon_height, 0)
        self._Icons["wifistatus"] = icon_wifi_status

        battery_charging = MultiIconItem()
        battery_charging._MyType = ICON_TYPES["STAT"]
        battery_charging._Parent = self
        battery_charging._ImageName = icon_base_path + "withcharging.png"
        battery_charging.Adjust(
            start_x + self._icon_width + self._icon_width + 8,
            self._icon_height / 2 + (self._BarHeight - self._icon_height) / 2,
            self._icon_width, self._icon_height, 0)

        self._Icons["battery_charging"] = battery_charging

        battery_discharging = MultiIconItem()
        battery_discharging._MyType = ICON_TYPES["STAT"]
        battery_discharging._Parent = self
        battery_discharging._ImageName = icon_base_path + "without_charging.png"
        battery_discharging.Adjust(
            start_x + self._icon_width + self._icon_width + 8,
            self._icon_height / 2 + (self._BarHeight - self._icon_height) / 2,
            self._icon_width, self._icon_height, 0)

        self._Icons["battery_discharging"] = battery_discharging

        battery_unknown = IconItem()
        battery_unknown._MyType = ICON_TYPES["STAT"]
        battery_unknown._Parent = self
        battery_unknown._ImageName = icon_base_path + "battery_unknown.png"
        battery_unknown.Adjust(
            start_x + self._icon_width + self._icon_width + 8,
            self._icon_height / 2 + (self._BarHeight - self._icon_height) / 2,
            self._icon_width, self._icon_height, 0)

        self._Icons["battery_unknown"] = battery_unknown

        self.CheckBatteryStat()

        sound_volume = MultiIconItem()
        sound_volume._MyType = ICON_TYPES["STAT"]
        sound_volume._Parent = self
        sound_volume._ImageName = icon_base_path + "soundvolume.png"
        sound_volume.Adjust(
            start_x + self._icon_width + self._icon_width + 8,
            self._icon_height / 2 + (self._BarHeight - self._icon_height) / 2,
            self._icon_width, self._icon_height, 0)

        self._Icons["soundvolume"] = sound_volume

        self.SyncSoundVolume()

        bluetooth = MultiIconItem()
        bluetooth._MyType = ICON_TYPES["STAT"]
        bluetooth._Parent = self
        bluetooth._ImageName = icon_base_path + "bluetooth.png"
        bluetooth.Adjust(
            start_x + self._icon_width + self._icon_width + 8,
            self._icon_height / 2 + (self._BarHeight - self._icon_height) / 2,
            self._icon_width, self._icon_height, 0)

        self._Icons["bluetooth"] = bluetooth
        self.CheckBluetooth()

        round_corners = MultiIconItem()
        round_corners._IconWidth = 10
        round_corners._IconHeight = 10

        round_corners._MyType = ICON_TYPES["STAT"]
        round_corners._Parent = self
        round_corners._ImgSurf = MyIconPool.GiveIconSurface("roundcorners")
        round_corners.Adjust(0, 0, 10, 10, 0)

        self._Icons["round_corners"] = round_corners

        dlstatus = MultiIconItem()
        dlstatus._MyType = ICON_TYPES["STAT"]
        dlstatus._Parent = self
        if FileExists(icon_base_path + "dlstatus18.png"):
            dlstatus._ImageName = icon_base_path + "dlstatus18.png"
        dlstatus.Adjust(
            start_x + self._icon_width + self._icon_width + 8,
            self._icon_height / 2 + (self._BarHeight - self._icon_height) / 2,
            self._icon_width, self._icon_height, 0)

        self._Icons["dlstatus"] = dlstatus
        self.UpdateDownloadStatus()

        if is_wifi_connected_now():
            print("wifi is connected")
            print(wifi_strength())
        else:
            out = commands.getstatusoutput(
                'sudo rfkill list | grep yes | cut -d " " -f3')
            if out[1] == "yes":
                self._InAirPlaneMode = True
            else:
                self._InAirPlaneMode = False
예제 #3
0
    def Init(self, screen):

        start_x = 0
        self._CanvasHWND = pygame.Surface((self._Width, self._Height))
        self._HWND = screen

        icon_wifi_status = MultiIconItem()
        icon_wifi_status._MyType = ICON_TYPES["STAT"]
        icon_wifi_status._ImageName = icon_base_path + "wifi.png"
        icon_wifi_status._Parent = self
        icon_wifi_status.Adjust(
            start_x + self._icon_width + 5,
            self._icon_height / 2 + (self._BarHeight - self._icon_height) / 2,
            self._icon_width, self._icon_height, 0)
        self._Icons["wifistatus"] = icon_wifi_status

        battery_charging = MultiIconItem()
        battery_charging._MyType = ICON_TYPES["STAT"]
        battery_charging._Parent = self
        battery_charging._ImageName = icon_base_path + "withcharging.png"
        battery_charging.Adjust(
            start_x + self._icon_width + self._icon_width + 8,
            self._icon_height / 2 + (self._BarHeight - self._icon_height) / 2,
            self._icon_width, self._icon_height, 0)

        self._Icons["battery_charging"] = battery_charging

        battery_discharging = MultiIconItem()
        battery_discharging._MyType = ICON_TYPES["STAT"]
        battery_discharging._Parent = self
        battery_discharging._ImageName = icon_base_path + "without_charging.png"
        battery_discharging.Adjust(
            start_x + self._icon_width + self._icon_width + 8,
            self._icon_height / 2 + (self._BarHeight - self._icon_height) / 2,
            self._icon_width, self._icon_height, 0)

        self._Icons["battery_discharging"] = battery_discharging

        battery_unknown = IconItem()
        battery_unknown._MyType = ICON_TYPES["STAT"]
        battery_unknown._Parent = self
        battery_unknown._ImageName = icon_base_path + "battery_unknown.png"
        battery_unknown.Adjust(
            start_x + self._icon_width + self._icon_width + 8,
            self._icon_height / 2 + (self._BarHeight - self._icon_height) / 2,
            self._icon_width, self._icon_height, 0)

        self._Icons["battery_unknown"] = battery_unknown

        self.CheckBatteryStat()

        sound_volume = MultiIconItem()
        sound_volume._MyType = ICON_TYPES["STAT"]
        sound_volume._Parent = self
        sound_volume._ImageName = icon_base_path + "soundvolume.png"
        sound_volume.Adjust(
            start_x + self._icon_width + self._icon_width + 8,
            self._icon_height / 2 + (self._BarHeight - self._icon_height) / 2,
            self._icon_width, self._icon_height, 0)

        self._Icons["soundvolume"] = sound_volume

        self.SyncSoundVolume()

        round_corners = MultiIconItem()
        round_corners._IconWidth = 10
        round_corners._IconHeight = 10

        round_corners._MyType = ICON_TYPES["STAT"]
        round_corners._Parent = self
        round_corners._ImgSurf = MyIconPool._Icons["roundcorners"]
        round_corners.Adjust(0, 0, 10, 10, 0)

        self._Icons["round_corners"] = round_corners

        if is_wifi_connected_now():
            print("wifi is connected")
            print(wifi_strength())
예제 #4
0
    def Draw(self, title):
        self.ClearCanvas()
        title = MyLangManager.Tr(title)
        self._Title = title

        # get battery percentage, but not for music spectrum(GameShell RTA)
        RTA_title = "GameShell RTA"
        bat_pct = ""
        if title != RTA_title and title != MyLangManager.Tr(RTA_title):
            out = commands.getstatusoutput(
                "upower -i /org/freedesktop/UPower/devices/battery_axp20x_battery | grep percentage | tail -c 5"
            )
            bat_pct = "".join(out[1]).strip() + "  "

        cur_time = datetime.now().strftime("%H:%M")
        cur_time = bat_pct + cur_time
        time_text_font = MySkinManager.GiveFont("Eurostile12")
        time_text_size = time_text_font.size(cur_time)
        title_text_size = MyLangManager.TrFont("Eurostile16").size(title)

        self._CanvasHWND.blit(
            MyLangManager.TrFont("Eurostile16").render(
                title, True, self._SkinManager.GiveColor("Text")),
            midRect(
                title_text_size[0] / 2 + self._LOffset,
                title_text_size[1] / 2 +
                (self._BarHeight - title_text_size[1]) / 2, title_text_size[0],
                title_text_size[1], Width, Height))
        self._CanvasHWND.blit(
            time_text_font.render(cur_time, True,
                                  self._SkinManager.GiveColor("Text")),
            midRect(
                Width - time_text_size[0] / 2 - self._ROffset,
                time_text_size[1] / 2 +
                (self._BarHeight - time_text_size[1]) / 2, time_text_size[0],
                time_text_size[1], Width, Height))

        start_x = Width - time_text_size[
            0] - self._ROffset - self._icon_width * 3  # near by the time_text

        self._Icons["dlstatus"].NewCoord(
            start_x - self._icon_width * 2,
            self._icon_height / 2 + (self._BarHeight - self._icon_height) / 2)

        self._Icons["bluetooth"].NewCoord(
            start_x - self._icon_width,
            self._icon_height / 2 + (self._BarHeight - self._icon_height) / 2)

        self._Icons["sound"].NewCoord(
            start_x,
            self._icon_height / 2 + (self._BarHeight - self._icon_height) / 2)

        #self._Icons["wifi"].NewCoord(start_x+self._icon_width+5,    self._icon_height/2+(self._BarHeight-self._icon_height)/2)

        self._Icons["battery"].NewCoord(
            start_x + self._icon_width + self._icon_width + 8,
            self._icon_height / 2 + (self._BarHeight - self._icon_height) / 2)

        if is_wifi_connected_now():
            ge = self.GetWifiStrength(wifi_strength())
            if ge > 0:
                self._Icons["wifistatus"]._IconIndex = ge
                self._Icons["wifistatus"].NewCoord(
                    start_x + self._icon_width + 5, self._icon_height / 2 +
                    (self._BarHeight - self._icon_height) / 2)
                self._Icons["wifistatus"].Draw()
            else:
                self._Icons["wifistatus"]._IconIndex = 0
                self._Icons["wifistatus"].Draw()
                print("wifi strength error")
        else:
            if self._InAirPlaneMode == False:
                self._Icons["wifistatus"]._IconIndex = 0
            else:
                self._Icons["wifistatus"]._IconIndex = 5  ## airplane mode icon

            self._Icons["wifistatus"].NewCoord(
                start_x + self._icon_width + 5, self._icon_height / 2 +
                (self._BarHeight - self._icon_height) / 2)
            self._Icons["wifistatus"].Draw()

        self._Icons["sound"].Draw()

        self._Icons["battery"].Draw()

        self._Icons["bluetooth"].Draw()

        #self._Icons["dlstatus"].Draw()

        pygame.draw.line(self._CanvasHWND, self._SkinManager.GiveColor("Line"),
                         (0, self._BarHeight), (self._Width, self._BarHeight),
                         self._BorderWidth)

        if self._HWND != None:
            self._HWND.blit(
                self._CanvasHWND,
                (self._PosX, self._PosY, self._Width, self._Height))
예제 #5
0
    def Draw(self, title):
        self.ClearCanvas()
        title = MyLangManager.Tr(title)

        # Couldn't see where to change this anywhere, so let's be super explicit
        if title == "GameShell":
            title = "PocketCHIP"
        self._Title = title
        title_text_size = MyLangManager.TrFont("varela16").size(title)
        self._CanvasHWND.blit(
            MyLangManager.TrFont("varela16").render(
                title, True, self._SkinManager.GiveColor("Text")),
            # x,y,width,height,canWidth,canHeight
            midRect(
                title_text_size[0] / 2 + self._LOffset,
                title_text_size[1] / 2 +
                (self._BarHeight - title_text_size[1]) / 2, title_text_size[0],
                title_text_size[1], Width, Height))

        cur_time = datetime.now().strftime("%H:%M")
        time_text_font = MySkinManager.GiveFont("varela12")
        time_text_size = time_text_font.size(cur_time)
        self._CanvasHWND.blit(
            time_text_font.render(cur_time, True,
                                  self._SkinManager.GiveColor("Text")),
            # x,y,width,height,canWidth,canHeight
            midRect(
                Width - time_text_size[0] / 2 - self._ROffset,
                time_text_size[1] / 2 +
                (self._BarHeight - time_text_size[1]) / 2, time_text_size[0],
                time_text_size[1], Width, Height))

        #### Debug: Output the battery value as text...
        # cur_batt =  "Batt: %s, %s" % (str(BatteryAbstraction.AsPercentage()), str(BatteryAbstraction.IsCharging()))
        # batt_text_font = MySkinManager.GiveFont("varela12")
        # batt_text_size = batt_text_font.size(cur_batt)
        # self._CanvasHWND.blit(batt_text_font.render(
        #     cur_batt,
        #     True,
        #     self._SkinManager.GiveColor("Text")),
        #     # x,y,width,height,canWidth,canHeight
        #     midRect(
        #         # Width-batt_text_size[0]/2-self._ROffset,
        #         200,
        #         batt_text_size[1]/2+(self._BarHeight-batt_text_size[1])/2,
        #         batt_text_size[0],
        #         batt_text_size[1],
        #         Width,
        #         Height
        #     )
        # )

        start_x = Width - time_text_size[
            0] - self._ROffset - self._icon_width * 3  # near by the time_text

        self._Icons["bluetooth"].NewCoord(
            start_x - self._icon_width,
            self._icon_height / 2 + (self._BarHeight - self._icon_height) / 2)

        self._Icons["sound"].NewCoord(
            start_x,
            self._icon_height / 2 + (self._BarHeight - self._icon_height) / 2)

        #self._Icons["wifi"].NewCoord(start_x+self._icon_width+5,    self._icon_height/2+(self._BarHeight-self._icon_height)/2)

        self._Icons["battery"].NewCoord(
            start_x + self._icon_width + self._icon_width + 8,
            self._icon_height / 2 + (self._BarHeight - self._icon_height) / 2)

        if is_wifi_connected_now():
            ge = self.GetWifiStrength(wifi_strength())
            if ge > 0:
                self._Icons["wifistatus"]._IconIndex = ge
                self._Icons["wifistatus"].NewCoord(
                    start_x + self._icon_width + 5, self._icon_height / 2 +
                    (self._BarHeight - self._icon_height) / 2)
                # self._Icons["wifistatus"].Draw()
            else:
                self._Icons["wifistatus"]._IconIndex = 0
                # self._Icons["wifistatus"].Draw()
                print("wifi strength error")
        else:
            if self._InAirPlaneMode == False:
                self._Icons["wifistatus"]._IconIndex = 0
            else:
                self._Icons["wifistatus"]._IconIndex = 5  ## airplane mode icon

            self._Icons["wifistatus"].NewCoord(
                start_x + self._icon_width + 5, self._icon_height / 2 +
                (self._BarHeight - self._icon_height) / 2)
            # self._Icons["wifistatus"].Draw()

        # Draw the title bar icons
        self._Icons["wifistatus"].Draw()
        self._Icons["sound"].Draw()
        self._Icons["battery"].Draw()
        # self._Icons["bluetooth"].Draw()

        pygame.draw.line(self._CanvasHWND, self._SkinManager.GiveColor("Line"),
                         (0, self._BarHeight), (self._Width, self._BarHeight),
                         self._BorderWidth)

        if self._HWND != None:
            self._HWND.blit(
                self._CanvasHWND,
                (self._PosX, self._PosY, self._Width, self._Height))
예제 #6
0
    def Draw(self, title):
        self.ClearCanvas()

        self._Title = title

        cur_time = datetime.now().strftime("%H:%M")
        time_text_size = fonts["varela12"].size(cur_time)
        title_text_size = fonts["varela16"].size(title)

        self._CanvasHWND.blit(
            fonts["varela16"].render(title, True, self._TxtColor),
            midRect(
                title_text_size[0] / 2 + self._LOffset,
                title_text_size[1] / 2 +
                (self._BarHeight - title_text_size[1]) / 2, title_text_size[0],
                title_text_size[1], Width, Height))
        self._CanvasHWND.blit(
            fonts["varela12"].render(cur_time, True, self._TxtColor),
            midRect(
                Width - time_text_size[0] / 2 - self._ROffset,
                time_text_size[1] / 2 +
                (self._BarHeight - time_text_size[1]) / 2, time_text_size[0],
                time_text_size[1], Width, Height))

        start_x = Width - time_text_size[
            0] - self._ROffset - self._icon_width * 3  # near by the time_text

        self._Icons["sound"].NewCoord(
            start_x,
            self._icon_height / 2 + (self._BarHeight - self._icon_height) / 2)

        #self._Icons["wifi"].NewCoord(start_x+self._icon_width+5,    self._icon_height/2+(self._BarHeight-self._icon_height)/2)

        self._Icons["battery"].NewCoord(
            start_x + self._icon_width + self._icon_width + 8,
            self._icon_height / 2 + (self._BarHeight - self._icon_height) / 2)

        if is_wifi_connected_now():
            ge = self.GetWifiStrength(wifi_strength())
            if ge > 0:
                self._Icons["wifistatus"]._IconIndex = ge
                self._Icons["wifistatus"].NewCoord(
                    start_x + self._icon_width + 5, self._icon_height / 2 +
                    (self._BarHeight - self._icon_height) / 2)
                self._Icons["wifistatus"].Draw()
            else:
                self._Icons["wifistatus"]._IconIndex = 0
                self._Icons["wifistatus"].Draw()
                print("strength error")
        else:
            self._Icons["wifistatus"]._IconIndex = 0
            self._Icons["wifistatus"].NewCoord(
                start_x + self._icon_width + 5, self._icon_height / 2 +
                (self._BarHeight - self._icon_height) / 2)
            self._Icons["wifistatus"].Draw()

        self._Icons["sound"].Draw()

        self._Icons["battery"].Draw()

        pygame.draw.line(self._CanvasHWND, self._BottomLineColor,
                         (0, self._BarHeight), (self._Width, self._BarHeight),
                         self._BorderWidth)

        if self._HWND != None:
            self._HWND.blit(
                self._CanvasHWND,
                (self._PosX, self._PosY, self._Width, self._Height))