def flip_clicked(obj, item=None): win = StandardWindow("flip", "Flip", autodel=True, size=(320, 320)) box = Box(win, size_hint_weight=EXPAND_BOTH) win.resize_object_add(box) box.show() fl = Flip(win, size_hint_weight=EXPAND_BOTH, size_hint_align=FILL_BOTH) fl.callback_animate_begin_add(my_flip_animate_begin) fl.callback_animate_done_add(my_flip_animate_done) box.pack_end(fl) fl.show() # flip front content o = Background(win, size_hint_weight=EXPAND_BOTH, file=os.path.join(img_path, "sky_01.jpg")) fl.part_content_set("front", o) o.show() # flip back content ly = Layout(win, file=(os.path.join(script_path, "test.edj"), "layout"), size_hint_weight=EXPAND_BOTH) fl.part_content_set("back", ly) ly.show() bt = Button(win, text="Button 1") ly.part_content_set("element1", bt) bt.show() bt = Button(win, text="Button 2") ly.part_content_set("element2", bt) bt.show() bt = Button(win, text="Button 3") ly.part_content_set("element3", bt) bt.show() # flip buttons (first row) hbox = Box(win, size_hint_weight=EXPAND_HORIZ, size_hint_align=(EVAS_HINT_FILL, 0.0), horizontal=True) hbox.show() box.pack_end(hbox) count = 1 for mode in [ELM_FLIP_ROTATE_X_CENTER_AXIS, ELM_FLIP_ROTATE_Y_CENTER_AXIS, ELM_FLIP_ROTATE_XZ_CENTER_AXIS, ELM_FLIP_ROTATE_YZ_CENTER_AXIS]: bt = Button(win, size_hint_weight=EXPAND_BOTH, size_hint_align=FILL_BOTH, text=str(count)) bt.callback_clicked_add(my_flip_go, fl, mode) hbox.pack_end(bt) bt.show() count += 1 # flip buttons (second row) hbox = Box(win, size_hint_weight=EXPAND_HORIZ, size_hint_align=(EVAS_HINT_FILL, 0.0), horizontal=True) hbox.show() box.pack_end(hbox) for mode in [ELM_FLIP_CUBE_LEFT, ELM_FLIP_CUBE_RIGHT, ELM_FLIP_CUBE_UP, ELM_FLIP_CUBE_DOWN]: bt = Button(win, size_hint_weight=EXPAND_BOTH, size_hint_align=FILL_BOTH, text=str(count)) bt.callback_clicked_add(my_flip_go, fl, mode) hbox.pack_end(bt) bt.show() count += 1 # flip buttons (third row) hbox = Box(win, size_hint_weight=EXPAND_HORIZ, size_hint_align=(EVAS_HINT_FILL, 0.0), horizontal=True) hbox.show() box.pack_end(hbox) for mode in [ELM_FLIP_PAGE_LEFT, ELM_FLIP_PAGE_RIGHT, ELM_FLIP_PAGE_UP, ELM_FLIP_PAGE_DOWN]: bt = Button(win, size_hint_weight=EXPAND_BOTH, size_hint_align=FILL_BOTH, text=str(count)) bt.callback_clicked_add(my_flip_go, fl, mode) hbox.pack_end(bt) bt.show() count += 1 win.show()
def flip_interactive_clicked(obj, item=None): win = StandardWindow("flip", "Flip", autodel=True, size=(320, 320)) box = Box(win, size_hint_weight=EXPAND_BOTH) win.resize_object_add(box) box.show() # flip object fl = Flip(win, size_hint_weight=EXPAND_BOTH, size_hint_align=FILL_BOTH, interaction=ELM_FLIP_INTERACTION_NONE) fl.interaction_direction_enabled_set(ELM_FLIP_DIRECTION_UP, True) fl.interaction_direction_enabled_set(ELM_FLIP_DIRECTION_DOWN, True) fl.interaction_direction_enabled_set(ELM_FLIP_DIRECTION_LEFT, True) fl.interaction_direction_enabled_set(ELM_FLIP_DIRECTION_RIGHT, True) fl.interaction_direction_hitsize_set(ELM_FLIP_DIRECTION_UP, 0.25) fl.interaction_direction_hitsize_set(ELM_FLIP_DIRECTION_DOWN, 0.25) fl.interaction_direction_hitsize_set(ELM_FLIP_DIRECTION_LEFT, 0.25) fl.interaction_direction_hitsize_set(ELM_FLIP_DIRECTION_RIGHT, 0.25) fl.callback_animate_begin_add(my_flip_animate_begin) fl.callback_animate_done_add(my_flip_animate_done) box.pack_end(fl) fl.show() # front content (image) o = Background(win, size_hint_weight=EXPAND_BOTH, file=os.path.join(img_path, "sky_01.jpg")) fl.part_content_set("front", o) o.show() # back content (layout) ly = Layout(win, size_hint_weight=EXPAND_BOTH, file=(os.path.join(script_path, "test.edj"), "layout")) fl.part_content_set("back", ly) ly.show() bt = Button(win, text="Button 1") ly.part_content_set("element1", bt) bt.show() bt = Button(win, text="Button 2") ly.part_content_set("element2", bt) bt.show() bt = Button(win, text="Button 3") ly.part_content_set("element3", bt) bt.show() # radio buttons rd = Radio(win, state_value=ELM_FLIP_INTERACTION_NONE, text="None") rd.callback_changed_add(my_cb_radios, fl) box.pack_end(rd) rd.show() rdg = rd rd = Radio(win, state_value=ELM_FLIP_INTERACTION_ROTATE, text="Rotate") rd.callback_changed_add(my_cb_radios, fl) rd.group_add(rdg) box.pack_end(rd) rd.show() rd = Radio(win, state_value=ELM_FLIP_INTERACTION_CUBE, text="Cube") rd.callback_changed_add(my_cb_radios, fl) rd.group_add(rdg) box.pack_end(rd) rd.show() rd = Radio(win, state_value=ELM_FLIP_INTERACTION_PAGE, text="Page") rd.callback_changed_add(my_cb_radios, fl) rd.group_add(rdg) box.pack_end(rd) rd.show() # window show win.show()