44from flet import (
55 Checkbox ,
66 Column ,
7- ElevatedButton ,
87 FloatingActionButton ,
98 IconButton ,
109 OutlinedButton ,
@@ -37,12 +36,12 @@ def __init__(self, app, name):
3736 controls = [
3837 IconButton (
3938 icon = icons .EDIT ,
40- tooltip = "Edit todo " ,
39+ tooltip = "Edit To-Do " ,
4140 on_click = self .edit_clicked ,
4241 ),
4342 IconButton (
4443 icons .DELETE ,
45- tooltip = "Delete todo " ,
44+ tooltip = "Delete To-Do " ,
4645 on_click = self .delete_clicked ,
4746 ),
4847 ],
@@ -51,11 +50,11 @@ def __init__(self, app, name):
5150 )
5251 self .edit_view = Row (
5352 visible = False ,
54- alignment = "spaceBetween" ,
55- vertical_alignment = "center" ,
5653 controls = [
5754 self .edit_name ,
58- ElevatedButton (text = "Save" , on_click = self .save_clicked ),
55+ IconButton (
56+ icon = icons .DONE , tooltip = "Update To-Do" , on_click = self .save_clicked
57+ ),
5958 ],
6059 )
6160 self .view = Column (controls = [self .display_view , self .edit_view ])
@@ -67,9 +66,13 @@ def edit_clicked(self, e):
6766 self .view .update ()
6867
6968 def save_clicked (self , e ):
70- self .display_task .label = self .edit_name .value
71- self .display_view .visible = True
72- self .edit_view .visible = False
69+ if self .edit_name .value != "" :
70+ self .edit_name .error_text = ""
71+ self .display_task .label = self .edit_name .value
72+ self .display_view .visible = True
73+ self .edit_view .visible = False
74+ else :
75+ self .edit_name .error_text = "To-Do cannot be blank"
7376 self .view .update ()
7477
7578 def delete_clicked (self , e ):
@@ -133,14 +136,17 @@ def update(self):
133136 if task .display_task .value == False :
134137 count += 1
135138 self .items_left .value = f"{ count } active item(s) left"
136- print ("add before update111" )
137139 self .view .update ()
138140
139141 def add_clicked (self , e ):
140- task = Task (self , self .new_task .value )
141- self .tasks .append (task )
142- self .tasks_view .controls .append (task .view )
143- self .new_task .value = ""
142+ self .new_task .error_text = ""
143+ if self .new_task .value != "" :
144+ task = Task (self , self .new_task .value )
145+ self .tasks .append (task )
146+ self .tasks_view .controls .append (task .view )
147+ self .new_task .value = ""
148+ else :
149+ self .new_task .error_text = "Please enter To-Do text"
144150 self .update ()
145151
146152 def delete_task (self , task ):
@@ -161,9 +167,10 @@ def main(page: Page):
161167 page .title = "ToDo App"
162168 page .horizontal_alignment = "center"
163169 page .scroll = "adaptive"
170+ page .theme_mode = "light"
164171 page .update ()
165172 app = TodoApp ()
166173 page .add (app .view )
167174
168175
169- flet .app (name = "test1" , port = 8550 , target = main , view = flet .WEB_BROWSER )
176+ flet .app (name = "test1" , port = 8550 , target = main , view = flet .FLET_APP )
0 commit comments