Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- from kivy.properties import StringProperty
- from kivy.lang import Builder
- from kivy.uix.tabbedpanel import TabbedPanel
- from kivymd.app import MDApp
- from kivy.utils import platform
- from plyer import filechooser
- import functions
- if platform == 'android':
- from android.permissions import request_permission, check_permission, Permission
- meals = functions.getMealList()
- meal_list_for_kv_file = functions.getMealsFor_kv_File(meals)
- current_meal_name = ''
- kv_string = '''
- <MyLayout>
- do_default_tab: False
- size_hint: 1, 1
- # ft_top, left_mid, left_bottom, top_left,
- # top_mid, top_right, right_top, right_mid,
- # right_bottom, bottom_left, bottom_mid,
- # bottom_right.
- tab_pos: 'top_mid'
- TabbedPanelItem:
- text: "Meal List"
- ScrollView:
- MDList:
- {0}
- TabbedPanelItem:
- text: "Meal"
- on_release: root.pressedMealTab()
- BoxLayout:
- orientation: 'vertical'
- Label:
- font_size: self.width/30
- text_size: self.size
- halign: 'left'
- valign: 'top'
- id: Label1Tab2_id
- text: root.meal_ingredients
- Label:
- font_size: self.width/40
- text_size: self.size
- halign: 'left'
- valign: 'top'
- id: Label2Tab2_id
- text: root.meal_recipe
- TabbedPanelItem:
- text: "Week"
- on_release: root.pressedWeekTab()
- BoxLayout:
- orientation: 'vertical'
- Label:
- text_size: self.size
- halign: 'left'
- valign: 'middle'
- id: Label1Tab3_id
- text: root.monday_meals
- Label:
- text_size: self.size
- halign: 'left'
- valign: 'middle'
- id: Label2Tab3_id
- text: root.thuesday_meals
- Label:
- text_size: self.size
- halign: 'left'
- valign: 'middle'
- id: Label3Tab3_id
- text: root.wednesday_meals
- Label:
- text_size: self.size
- halign: 'left'
- valign: 'middle'
- id: Label4Tab3_id
- text: root.thursday_meals
- Label:
- text_size: self.size
- halign: 'left'
- valign: 'middle'
- id: Label5Tab3_id
- text: root.friday_meals
- Label:
- text_size: self.size
- halign: 'left'
- valign: 'middle'
- id: Label6Tab3_id
- text: root.saturday_meals
- Label:
- text_size: self.size
- halign: 'left'
- valign: 'middle'
- id: Label7Tab3_id
- text: root.sunday_meals
- '''.format(meal_list_for_kv_file)
- # print(kv_string)
- # Designate Our .kv design file
- Builder.load_string(kv_string)
- class MyLayout(TabbedPanel):
- meal_ingredients = StringProperty()
- meal_recipe = StringProperty()
- monday_meals = StringProperty()
- thuesday_meals = StringProperty()
- wednesday_meals = StringProperty()
- thursday_meals = StringProperty()
- friday_meals = StringProperty()
- saturday_meals = StringProperty()
- sunday_meals = StringProperty()
- def check_permissions(self):
- if platform == 'android':
- if not check_permission(Permission.WRITE_EXTERNAL_STORAGE):
- request_permission(Permission.WRITE_EXTERNAL_STORAGE)
- def on_pre_enter(self, *args):
- self.check_permissions()
- def on_tab_switch(self, instance_tabs, instance_tab, instance_tab_label, tab_text):
- self.check_permissions()
- def pressedMealTab(self):
- global current_meal_name
- try:
- self.ids.Label1Tab2_id.text = functions.getMealIngredientString(current_meal_name)
- self.ids.Label2Tab2_id.text = functions.getMealRecipe(current_meal_name)
- except:
- print("YOU HAVEN'T CHOOSE A MEAL")
- def pressedWeekTab(self):
- try:
- self.ids.Label1Tab3_id.text = functions.getMealsForASingleDay("MONDAY", "weekly_menu1_1")
- self.ids.Label2Tab3_id.text = functions.getMealsForASingleDay("THUESDAY", "weekly_menu1_2")
- self.ids.Label3Tab3_id.text = functions.getMealsForASingleDay("WEDNESDAY", "weekly_menu1_3")
- self.ids.Label4Tab3_id.text = functions.getMealsForASingleDay("THURSDAY", "weekly_menu1_4")
- self.ids.Label5Tab3_id.text = functions.getMealsForASingleDay("FRIDAY", "weekly_menu1_5")
- self.ids.Label6Tab3_id.text = functions.getMealsForASingleDay("SATURDAY", "weekly_menu1_6")
- self.ids.Label7Tab3_id.text = functions.getMealsForASingleDay("SUNDAY", "weekly_menu1_7")
- except:
- print("CAN'T GET WEEKLY MENU")
- class MealPlannerAndroid(MDApp):
- def build(self):
- return MyLayout()
- def pressedMealOnList(self, pressed, list_id):
- pressed.tertiary_text = f"You Pressed {list_id}"
- #print(pressed.tertiary_text)
- global current_meal_name
- current_meal_name = list_id
- if __name__ == '__main__':
- MealPlannerAndroid().run()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement