mirror of
https://github.com/clockworkpi/LauncherGoDev.git
synced 2026-03-19 10:22:41 +01:00
@@ -71,6 +71,7 @@ func (self *MyEmulator) Run(main_screen *UI.MainScreen) {
|
||||
if main_screen != nil {
|
||||
main_screen.PushCurPage()
|
||||
main_screen.SetCurPage(self.RomPage)
|
||||
main_screen.Refresh()
|
||||
main_screen.Draw()
|
||||
main_screen.SwapAndShow()
|
||||
}
|
||||
}
|
||||
|
||||
@@ -68,24 +68,24 @@ func Init() {
|
||||
|
||||
for i := 10; i < 41; i++ {
|
||||
keyname := fmt.Sprintf("varela%d", i)
|
||||
Fonts[keyname] = font.FontRW(fonts_path["varela"], i)
|
||||
Fonts[keyname] = font.Font(fonts_path["varela"], i)
|
||||
}
|
||||
|
||||
Fonts["varela120"] = font.FontRW(fonts_path["varela"], 120)
|
||||
Fonts["varela120"] = font.Font(fonts_path["varela"], 120)
|
||||
|
||||
for i := 10; i < 26; i++ {
|
||||
keyname := fmt.Sprintf("veramono%d", i)
|
||||
Fonts[keyname] = font.FontRW(fonts_path["veramono"], i)
|
||||
Fonts[keyname] = font.Font(fonts_path["veramono"], i)
|
||||
}
|
||||
|
||||
for i := 10; i < 28; i++ {
|
||||
keyname := fmt.Sprintf("notosansmono%d", i)
|
||||
Fonts[keyname] = font.FontRW(fonts_path["noto"], i)
|
||||
Fonts[keyname] = font.Font(fonts_path["noto"], i)
|
||||
}
|
||||
|
||||
for i := 10; i < 28; i++ {
|
||||
keyname := fmt.Sprintf("notosanscjk%d", i)
|
||||
Fonts[keyname] = font.FontRW(fonts_path["notocjk"], i)
|
||||
Fonts[keyname] = font.Font(fonts_path["notocjk"], i)
|
||||
}
|
||||
|
||||
//
|
||||
|
||||
@@ -26,7 +26,7 @@ func (self *FullScreen) SwapAndShow() {
|
||||
if self.HWND != nil {
|
||||
rect_ := rect.Rect(self.PosX, self.PosY, self.Width, self.Height)
|
||||
surface.Blit(self.HWND, self.CanvasHWND, &rect_, nil)
|
||||
DisplayFlip()
|
||||
SwapAndShow()
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -281,6 +281,7 @@ func (self *MainScreen) SwapAndShow() {
|
||||
surface.Blit(self.HWND, self.CanvasHWND, &rect_, nil)
|
||||
}
|
||||
|
||||
|
||||
display.Flip()
|
||||
}
|
||||
|
||||
@@ -427,7 +428,8 @@ func (self *MainScreen) ShowMsg(content string, blocktime int) {
|
||||
|
||||
if blocktime > 0 {
|
||||
time.BlockDelay(blocktime)
|
||||
self.Refresh()
|
||||
self.CurrentPage.Draw()
|
||||
self.SwapAndShow()
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -110,8 +110,6 @@ type TitleBar struct {
|
||||
|
||||
TitleFont *ttf.Font
|
||||
TimeFont *ttf.Font
|
||||
|
||||
updateScreen chan bool
|
||||
}
|
||||
|
||||
func NewTitleBar() *TitleBar {
|
||||
@@ -138,16 +136,13 @@ func NewTitleBar() *TitleBar {
|
||||
t.TimeFont = Fonts["varela12"]
|
||||
|
||||
t.InLowBackLight = -1
|
||||
|
||||
t.updateScreen = make(chan bool,1)
|
||||
|
||||
return t
|
||||
|
||||
}
|
||||
|
||||
func (self *TitleBar) Redraw() {
|
||||
self.UpdateDownloadStatus()
|
||||
DisplayFlip()
|
||||
SwapAndShow()
|
||||
}
|
||||
|
||||
func (self *TitleBar) UpdateDownloadStatus() {
|
||||
@@ -181,7 +176,7 @@ func (self *TitleBar) RoundRobinCheck() {
|
||||
self.CheckBluetooth()
|
||||
self.UpdateWifiStrength()
|
||||
self.UpdateDownloadStatus()
|
||||
self.Refresh()
|
||||
SwapAndShow()
|
||||
|
||||
} else if self.InLowBackLight >= 0 {
|
||||
self.InLowBackLight += 1
|
||||
@@ -192,7 +187,6 @@ func (self *TitleBar) RoundRobinCheck() {
|
||||
self.UpdateWifiStrength()
|
||||
self.UpdateDownloadStatus()
|
||||
self.InLowBackLight = 0 // reset
|
||||
self.Refresh()
|
||||
}
|
||||
|
||||
}
|
||||
@@ -299,6 +293,8 @@ func (self *TitleBar) SetSoundVolume(vol int) {
|
||||
func (self *TitleBar) CheckBatteryStat() {
|
||||
bat_segs := [][]int{[]int{0, 6}, []int{7, 15}, []int{16, 20}, []int{21, 30}, []int{31, 50}, []int{51, 60}, []int{61, 80}, []int{81, 90}, []int{91, 100}}
|
||||
|
||||
self.Icons["battery"] = self.Icons["battery_unknown"]
|
||||
|
||||
if FileExists(sysgo.Battery) == false {
|
||||
return
|
||||
}
|
||||
@@ -341,11 +337,14 @@ func (self *TitleBar) CheckBatteryStat() {
|
||||
break
|
||||
}
|
||||
}
|
||||
|
||||
if val, ok := bat_uevent["POWER_SUPPLY_STATUS"]; ok {
|
||||
if val == "Charging" {
|
||||
self.Icons["battery"].SetIconIndex(1+cap_ge)
|
||||
self.Icons["battery_charging"].SetIconIndex(cap_ge)
|
||||
self.Icons["battery"] = self.Icons["battery_charging"]
|
||||
} else {
|
||||
self.Icons["battery"].SetIconIndex(1+9+cap_ge)
|
||||
self.Icons["battery_discharging"].SetIconIndex(cap_ge)
|
||||
self.Icons["battery"] = self.Icons["battery_discharging"]
|
||||
}
|
||||
}
|
||||
|
||||
@@ -393,13 +392,29 @@ func (self *TitleBar) Init(main_screen *MainScreen) {
|
||||
|
||||
self.Icons["wifistatus"] = icon_wifi_status
|
||||
|
||||
battery_charging := NewTitleBarIconItem()
|
||||
battery_charging.MyType = ICON_TYPES["STAT"]
|
||||
battery_charging.Parent = self
|
||||
battery_charging.ImageName = self.icon_base_path + "withcharging.png"
|
||||
battery_charging.Adjust(start_x+self.IconWidth+self.IconWidth+8, self.IconHeight/2+(self.BarHeight-self.IconHeight)/2, self.IconWidth, self.IconHeight, 0)
|
||||
|
||||
self.Icons["battery_charging"] = battery_charging
|
||||
|
||||
battery_discharging := NewTitleBarIconItem()
|
||||
battery_discharging.MyType = ICON_TYPES["STAT"]
|
||||
battery_discharging.Parent = self
|
||||
battery_discharging.ImageName = self.icon_base_path + "without_charging.png"
|
||||
battery_discharging.Adjust(start_x+self.IconWidth+self.IconWidth+8, self.IconHeight/2+(self.BarHeight-self.IconHeight)/2, self.IconWidth, self.IconHeight, 0)
|
||||
|
||||
self.Icons["battery_discharging"] = battery_discharging
|
||||
|
||||
battery_unknown := NewTitleBarIconItem()
|
||||
battery_unknown.MyType = ICON_TYPES["STAT"]
|
||||
battery_unknown.Parent = self
|
||||
battery_unknown.ImageName = self.icon_base_path + "battery.png"
|
||||
battery_unknown.ImageName = self.icon_base_path + "battery_unknown.png"
|
||||
battery_unknown.Adjust(start_x+self.IconWidth+self.IconWidth+8, self.IconHeight/2+(self.BarHeight-self.IconHeight)/2, self.IconWidth, self.IconHeight, 0)
|
||||
|
||||
self.Icons["battery"] = battery_unknown
|
||||
self.Icons["battery_unknown"] = battery_unknown
|
||||
|
||||
self.CheckBatteryStat()
|
||||
|
||||
@@ -478,12 +493,6 @@ func (self *TitleBar) ClearCanvas() {
|
||||
self.Icons["round_corners"].SetIconIndex(1)
|
||||
self.Icons["round_corners"].Draw()
|
||||
|
||||
go func() {
|
||||
sdl.Do(func() {
|
||||
self.RefreshLoop()
|
||||
})
|
||||
}()
|
||||
|
||||
}
|
||||
|
||||
func (self *TitleBar) UpdateTimeLocation() {
|
||||
@@ -567,22 +576,3 @@ func (self *TitleBar) Draw(title string) {
|
||||
title_text_surf.Free()
|
||||
time_text_surf.Free()
|
||||
}
|
||||
|
||||
func (self *TitleBar) Refresh() {
|
||||
self.updateScreen <- true
|
||||
}
|
||||
|
||||
func (self *TitleBar) RefreshLoop() {
|
||||
L:
|
||||
for {
|
||||
select {
|
||||
case v:= <- self.updateScreen:
|
||||
if v == true {
|
||||
DisplayFlip()
|
||||
}
|
||||
if v== false {
|
||||
break L
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -128,15 +128,10 @@ func ReplaceSuffix(orig_file_str string, new_ext string) string {
|
||||
return orig_file_str // failed just return back where it came
|
||||
}
|
||||
|
||||
func DisplayFlip() {
|
||||
func SwapAndShow() {
|
||||
display.Flip()
|
||||
}
|
||||
|
||||
func AsyncDisplayFlip() {
|
||||
display.ASync(func() {
|
||||
display.Flip()
|
||||
})
|
||||
}
|
||||
func ReadLines(path string) (lines []string, err error) {
|
||||
var (
|
||||
file *os.File
|
||||
|
||||
Reference in New Issue
Block a user