46 lines
1.9 KiB
Plaintext
46 lines
1.9 KiB
Plaintext
|
|
class CreateAnimationScreen(Screen):
|
|
project_name = StringProperty("")
|
|
preview_html_path = StringProperty("") # Path to the HTML file for preview
|
|
preview_image_path = StringProperty("") # Add this line
|
|
|
|
def on_pre_enter(self):
|
|
# Update the route entries label with the actual number of entries
|
|
project_folder = os.path.join(RESOURCES_FOLDER, "projects", self.project_name)
|
|
positions_path = os.path.join(project_folder, "positions.json")
|
|
count = 0
|
|
if os.path.exists(positions_path):
|
|
with open(positions_path, "r") as f:
|
|
try:
|
|
positions = json.load(f)
|
|
count = len(positions)
|
|
except Exception:
|
|
count = 0
|
|
self.ids.route_entries_label.text = f"Your route has {count} entries,"
|
|
|
|
def open_rename_popup(self):
|
|
from kivy.uix.popup import Popup
|
|
from kivy.uix.boxlayout import BoxLayout
|
|
from kivy.uix.button import Button
|
|
from kivy.uix.textinput import TextInput
|
|
from kivy.uix.label import Label
|
|
|
|
layout = BoxLayout(orientation='vertical', spacing=10, padding=10)
|
|
label = Label(text="Enter new project name:")
|
|
input_field = TextInput(text=self.project_name, multiline=False)
|
|
btn_save = Button(text="Save", background_color=(0.008, 0.525, 0.290, 1))
|
|
btn_cancel = Button(text="Cancel")
|
|
|
|
layout.add_widget(label)
|
|
layout.add_widget(input_field)
|
|
layout.add_widget(btn_save)
|
|
layout.add_widget(btn_cancel)
|
|
|
|
popup = Popup(title="Rename Project", content=layout, size_hint=(None, None), size=(350, 260), auto_dismiss=False)
|
|
|
|
def do_rename(instance):
|
|
new_name = input_field.text.strip()
|
|
if new_name and new_name != self.project_name:
|
|
if self.rename_project_folder(self.project_name, new_name):
|
|
self.project_name = new_name
|
|
popup.dismiss() |