Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
59 changes: 59 additions & 0 deletions Menu/GameShell/10_Settings/LauncherGodot/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
# -*- coding: utf-8 -*-
import os
import pygame
#import math
#mport subprocess
#from beeprint import pp
from libs.roundrects import aa_round_rect

## local UI import
from UI.keys_def import CurKeys, IsKeyStartOrA, IsKeyMenuOrB
from UI.util_funcs import ArmSystem
from UI.lang_manager import MyLangManager
from UI.confirm_page import ConfirmPage

class SwitchToLauncherGoConfirmPage(ConfirmPage):

def KeyDown(self,event):

if IsKeyMenuOrB(event.key):
self.ReturnToUpLevelPage()
self._Screen.Draw()
self._Screen.SwapAndShow()

if IsKeyStartOrA(event.key):
# TODO - we could git clone if godot-launcher is not installed
# TODO - check connected to internet
#self._Screen._MsgBox.SetText("Installing LauncherGodot")
#ArmSystem("git clone https://github.com/samdze/godot-launcher.git")
self._Screen._MsgBox.SetText("Rebooting to LauncherGodot")
self._Screen._MsgBox.Draw()
self._Screen.SwapAndShow()
pygame.time.delay(300)
ArmSystem("sed -i s/launcher/godot-launcher/g /home/cpi/.bashrc" )
ArmSystem("sudo reboot")


class APIOBJ(object):

_Page = None

def __init__(self):
pass
def Init(self,main_screen):
self._Page = SwitchToLauncherGoConfirmPage()
self._Page._Screen = main_screen
self._Page._Name ="Switch To LauncherGodot"
self._Page.Init()

def API(self,main_screen):
if main_screen !=None:
main_screen.PushPage(self._Page)
main_screen.Draw()
main_screen.SwapAndShow()

OBJ = APIOBJ()
def Init(main_screen):
OBJ.Init(main_screen)
def API(main_screen):
OBJ.API(main_screen)
31 changes: 16 additions & 15 deletions Menu/GameShell/10_Settings/list_page.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# -*- coding: utf-8 -*-
# -*- coding: utf-8 -*-

import pygame
import sys
Expand All @@ -24,19 +24,19 @@ class ListPage(Page):

_Icons = {}
_Selector=None

_FootMsg = ["Nav","","","Back","Enter"]
_MyList = []
_ListFontObj = MyLangManager.TrFont("varela15")

_Scroller = None

def __init__(self):
Page.__init__(self)
self._Icons = {}
self._CanvasHWND = None
self._MyList = []

def Init(self):
self._PosX = self._Index * self._Screen._Width
self._Width = self._Screen._Width
Expand Down Expand Up @@ -68,13 +68,14 @@ def Init(self):
["","ButtonsLayout","Buttons Layout"],
["","Skins","Theme Manager"],
["","LauncherGo","Switch to LauncherGo"],
["","LauncherGodot","Switch to LauncherGodot"],
["","Lima","GPU Driver Switch"],
["","GateWay","Network gateway switch"]]

start_x = 0
start_y = 0


sys.path.append(myvars.basepath)# add self as import path
for i,v in enumerate(alist):
li = ListItem()
Expand All @@ -88,15 +89,15 @@ def Init(self):
li.Init(v[2])
else:
li.Init(v[1])

#if v[1] == "Wifi" or v[1] == "Sound" or v[1] == "Brightness" or v[1] == "Storage" or v[1] == "Update" or v[1] == "About" or v[1] == "PowerOFF" or v[1] == "HelloWorld":
if FileExists(myvars.basepath+"/"+ v[1]):
li._LinkObj = __import__(v[1])
init_cb = getattr(li._LinkObj,"Init",None)
if init_cb != None:
if callable(init_cb):
li._LinkObj.Init(self._Screen)

self._MyList.append(li)

self._Scroller = ListScroller()
Expand All @@ -113,13 +114,13 @@ def Click(self):
if callable(api_cb):
cur_li._LinkObj.API(self._Screen)


def KeyDown(self,event):
if IsKeyMenuOrB(event.key):
self.ReturnToUpLevelPage()
self._Screen.Draw()
self._Screen.SwapAndShow()

if event.key == CurKeys["Up"]:
self.ScrollUp()
self._Screen.Draw()
Expand All @@ -128,22 +129,22 @@ def KeyDown(self,event):
self.ScrollDown()
self._Screen.Draw()
self._Screen.SwapAndShow()


if IsKeyStartOrA(event.key):
self.Click()

def Draw(self):
self.ClearCanvas()

if len(self._MyList) * ListItem._Height > self._Height:
self._Ps._Width = self._Width - 11

self._Ps.Draw()

for i in self._MyList:
i.Draw()

self._Scroller.UpdateSize( len(self._MyList)*ListItem._Height, self._PsIndex*ListItem._Height)
self._Scroller.Draw()
else:
Expand All @@ -152,4 +153,4 @@ def Draw(self):
for i in self._MyList:
i.Draw()