updated with main screen
This commit is contained in:
44
main.py
44
main.py
@@ -148,8 +148,8 @@ class SettingsScreen(Screen):
|
||||
self.ids.result_label.text = f"Failed to save settings: {str(e)}"
|
||||
|
||||
|
||||
# Home Screen
|
||||
class HomeScreen(Screen):
|
||||
# Get Trip From Server Screen
|
||||
class GetTripFromServer(Screen): # Renamed from HomeScreen
|
||||
server_info_text = StringProperty("LOADING DATA...") # Default text for the label
|
||||
server_box_color = ListProperty([0.984, 0.553, 0.078, 1]) # Default yellow color (#FB8D14)
|
||||
device_mapping = {} # Store the mapping of device names to IDs
|
||||
@@ -255,8 +255,6 @@ class HomeScreen(Screen):
|
||||
popup = Popup(title="Select a Date", content=layout, size_hint=(0.8, 0.8))
|
||||
popup.open()
|
||||
|
||||
|
||||
|
||||
def get_trip_server_data(self):
|
||||
"""Handle the Get trip server data button press."""
|
||||
selected_device = self.ids.devices_spinner.text
|
||||
@@ -331,6 +329,43 @@ class RegisterScreen(Screen):
|
||||
except Exception as e:
|
||||
self.ids.result_label.text = f"Error checking user: {str(e)}"
|
||||
return False
|
||||
|
||||
|
||||
# Home Screen
|
||||
class HomeScreen(Screen):
|
||||
def on_pre_enter(self):
|
||||
"""Load existing projects/trips when the screen is entered."""
|
||||
self.load_existing_projects()
|
||||
|
||||
def load_existing_projects(self):
|
||||
"""Load the list of existing projects/trips."""
|
||||
projects_folder = os.path.join(RESOURCES_FOLDER, "projects")
|
||||
if not os.path.exists(projects_folder):
|
||||
os.makedirs(projects_folder)
|
||||
|
||||
# Clear the list area
|
||||
self.ids.projects_list.clear_widgets()
|
||||
|
||||
# Populate the list with existing projects/trips
|
||||
for project in os.listdir(projects_folder):
|
||||
project_button = Button(
|
||||
text=project,
|
||||
size_hint_y=None,
|
||||
height=40,
|
||||
on_press=lambda instance: self.open_project(instance.text)
|
||||
)
|
||||
self.ids.projects_list.add_widget(project_button)
|
||||
|
||||
def open_project(self, project_name):
|
||||
"""Handle opening an existing project/trip."""
|
||||
print(f"Opening project: {project_name}")
|
||||
self.ids.result_label.text = f"Opened project: {project_name}"
|
||||
|
||||
def create_new_project(self):
|
||||
"""Navigate to the GetTripFromServer screen to create a new project/trip."""
|
||||
self.manager.current = "get_trip_from_server"
|
||||
|
||||
|
||||
# Main App
|
||||
class TraccarApp(App):
|
||||
def build(self):
|
||||
@@ -345,6 +380,7 @@ class TraccarApp(App):
|
||||
sm = ScreenManager()
|
||||
sm.add_widget(LoginScreen(name="login"))
|
||||
sm.add_widget(HomeScreen(name="home")) # Add the HomeScreen
|
||||
sm.add_widget(GetTripFromServer(name="get_trip_from_server")) # Updated reference
|
||||
sm.add_widget(SettingsScreen(name="settings")) # Add the renamed SettingsScreen
|
||||
sm.add_widget(RegisterScreen(name="register")) # Add the RegisterScreen
|
||||
|
||||
|
||||
Reference in New Issue
Block a user