__author__ = "afx" __version__ = "0.2" # Import system modules from multiprocessing import Process, Queue import random import sqlite3 # Import Kivy modules from kivymd.app import MDApp from kivy.lang import Builder from kivy.uix.screenmanager import Screen, ScreenManager from kivy.uix.boxlayout import BoxLayout from kivy.uix.label import Label from kivy.core.window import Window from kivy.graphics import Rectangle # Import local modules from forestmapview import ForestMapView #from searchpopupmenu import SearchPopupMenu from gpshelper import GpsHelper from settings import SampleBoxLayout from game import GameWidget from cncbot import CnCApp # Welcome message MOTD = """] ] GlobalForest {} by afx""".format(__version__) Builder.load_string(""" : BoxLayout: Button: text: "Go to Screen 2" on_press: root.manager.transition.direction = "left" root.manager.transition.duration = 1 root.manager.current = "screen_two" : BoxLayout: Button: text: "Go to Screen 1" on_press: root.manager.transition.direction = "right" root.manager.transition.duration = 1 root.manager.current = "screen_one" """) class ScreenOne(Screen): pass class ScreenTwo(Screen): pass class MainApp(MDApp): connection = None cursor = None search_menu = None def build(self): pass #Window.clearcolor = (0, 0, 0, 0) #return SampleBoxLayout() def on_start(self): # Welcome print(MOTD) self.logqueue.put('] Framework started.') self.theme_cls.primary_palette = 'BlueGray' # Initialize GPS GpsHelper().run() # Connect to database self.connection = sqlite3.connect("databases/fountains.db") self.cursor = self.connection.cursor() # Instantiate SearchPopupMenu #self.search_menu = SearchPopupMenu() if __name__ == '__main__': # Start the Command and Control bot. Mainly for reporting. logqueue = Queue() cnc = Process(target=CnCApp, args=((logqueue),)) cnc.start() # Start the Kivy Framework main loop kivyapp = MainApp() kivyapp.logqueue = logqueue kivyapp.run() # Cleanup subprocesses print('] Framework terminated.') cnc.kill()