├── .gitignore ├── .pylintrc ├── AUTHORS ├── CODING ├── COPYING ├── COPYING.LESSER ├── ChangeLog ├── INSTALL ├── MANIFEST.in ├── Makefile ├── README.md ├── api_coverage.py ├── doc ├── conf.py ├── dbus │ └── dbus.rst ├── ecore │ ├── class-animator.rst │ ├── class-animator_timeline.rst │ ├── class-exe.rst │ ├── class-fdhandler.rst │ ├── class-filedownload.rst │ ├── class-filemonitor.rst │ ├── class-idleenterer.rst │ ├── class-idleexiter.rst │ ├── class-idler.rst │ ├── class-lookup.rst │ ├── class-poller.rst │ ├── class-timer.rst │ ├── class-url.rst │ ├── ecore.rst │ ├── module-ecore.rst │ ├── module-ecore_con.rst │ └── module-ecore_input.rst ├── edje │ ├── class-edje.rst │ ├── edje.rst │ └── module-edje.rst ├── efl.rst ├── elementary │ ├── actionslider.rst │ ├── background.rst │ ├── box.rst │ ├── bubble.rst │ ├── button.rst │ ├── calendar.rst │ ├── check.rst │ ├── clock.rst │ ├── colorselector.rst │ ├── combobox.rst │ ├── configuration.rst │ ├── conformant.rst │ ├── ctxpopup.rst │ ├── datetime.rst │ ├── dayselector.rst │ ├── diskselector.rst │ ├── elementary.rst │ ├── entry.rst │ ├── fileselector.rst │ ├── fileselector_button.rst │ ├── fileselector_entry.rst │ ├── flip.rst │ ├── flipselector.rst │ ├── frame.rst │ ├── gengrid.rst │ ├── genlist.rst │ ├── gesture_layer.rst │ ├── grid.rst │ ├── hover.rst │ ├── hoversel.rst │ ├── icon.rst │ ├── image.rst │ ├── index.rst │ ├── innerwindow.rst │ ├── label.rst │ ├── layout.rst │ ├── list.rst │ ├── map.rst │ ├── mapbuf.rst │ ├── menu.rst │ ├── multibuttonentry.rst │ ├── naviframe.rst │ ├── need.rst │ ├── notify.rst │ ├── object.rst │ ├── object_item.rst │ ├── panel.rst │ ├── panes.rst │ ├── photo.rst │ ├── photocam.rst │ ├── plug.rst │ ├── popup.rst │ ├── progressbar.rst │ ├── radio.rst │ ├── scroller.rst │ ├── segment_control.rst │ ├── separator.rst │ ├── slider.rst │ ├── slideshow.rst │ ├── spinner.rst │ ├── table.rst │ ├── theme.rst │ ├── thumb.rst │ ├── toolbar.rst │ ├── transit.rst │ ├── video.rst │ ├── web.rst │ └── window.rst ├── emotion │ ├── class-emotion.rst │ ├── emotion.rst │ └── module-emotion.rst ├── eo │ ├── class-eo.rst │ ├── eo.rst │ └── module-eo.rst ├── ethumb │ ├── class-ethumb.rst │ ├── class-ethumb_client.rst │ ├── ethumb.rst │ ├── module-ethumb.rst │ └── module-ethumb_client.rst ├── evas │ ├── class-box.rst │ ├── class-canvas.rst │ ├── class-grid.rst │ ├── class-image.rst │ ├── class-line.rst │ ├── class-map.rst │ ├── class-object.rst │ ├── class-polygon.rst │ ├── class-rect.rst │ ├── class-rectangle.rst │ ├── class-smart.rst │ ├── class-table.rst │ ├── class-text.rst │ ├── class-textblock.rst │ ├── class-textgrid.rst │ ├── evas.rst │ └── module-evas.rst ├── images │ ├── actionslider-preview.png │ ├── background-preview.png │ ├── box-preview.png │ ├── bubble-preview.png │ ├── button-preview.png │ ├── calendar-preview.png │ ├── check-preview.png │ ├── check-toggle-preview.png │ ├── clock-preview.png │ ├── colorselector-preview.png │ ├── combobox-preview.png │ ├── conformant-preview.png │ ├── ctxpopup-preview.png │ ├── dayselector-preview.png │ ├── diskselector-preview.png │ ├── entry-preview.png │ ├── fileselector-button-preview.png │ ├── fileselector-entry-preview.png │ ├── fileselector-preview.png │ ├── flip-preview.png │ ├── flipselector-preview.png │ ├── frame-preview.png │ ├── gengrid-preview.png │ ├── genlist-preview.png │ ├── gesturelayer-preview.png │ ├── grid-preview.png │ ├── hover-preview.png │ ├── hoversel-preview.png │ ├── icon-preview.png │ ├── image-preview.png │ ├── index-preview.png │ ├── innerwindow-preview.png │ ├── label-preview.png │ ├── layout-preview.png │ ├── list-preview.png │ ├── logo.ico │ ├── logo.png │ ├── logo_plain.png │ ├── map-preview.png │ ├── mapbuf-preview.png │ ├── menu-preview.png │ ├── multibuttonentry-preview.png │ ├── naviframe-preview.png │ ├── notify-preview.png │ ├── panel-preview.png │ ├── panes-preview.png │ ├── photo-preview.png │ ├── popup-preview.png │ ├── progressbar-preview.png │ ├── radio-preview.png │ ├── scroller-preview.png │ ├── segmentcontrol-preview.png │ ├── separator-preview.png │ ├── slider-preview.png │ ├── slideshow-preview.png │ ├── spinner-preview.png │ ├── table-preview.png │ ├── thumb-preview.png │ └── toolbar-preview.png ├── index.rst ├── themes │ ├── efldoc │ │ ├── layout.html │ │ ├── static │ │ │ ├── efl.css │ │ │ ├── footer_background.png │ │ │ ├── header_logo.png │ │ │ ├── header_menu_background.png │ │ │ ├── header_menu_background_last.png │ │ │ ├── header_menu_current_background.png │ │ │ ├── headerbg.png │ │ │ ├── hilight_background.png │ │ │ ├── listitem.png │ │ │ ├── rel_background.png │ │ │ └── sphinxheader.png │ │ └── theme.conf │ └── sphinx13 │ │ ├── layout.html │ │ ├── static │ │ ├── bodybg.png │ │ ├── footerbg.png │ │ ├── headerbg.png │ │ ├── listitem.png │ │ ├── relbg.png │ │ ├── sphinx13.css │ │ └── sphinxheader.png │ │ └── theme.conf └── tutorials │ ├── 01-window.rst │ └── 02-sizehints.rst ├── efl ├── __init__.py ├── dbus_mainloop │ ├── e_dbus.c │ ├── e_dbus.h │ ├── efl.dbus_mainloop.pxd │ └── efl.dbus_mainloop.pyx ├── ecore │ ├── efl.ecore.pyx │ ├── efl.ecore_animator.pxi │ ├── efl.ecore_events.pxi │ ├── efl.ecore_exe.pxi │ ├── efl.ecore_fd_handler.pxi │ ├── efl.ecore_file_download.pxi │ ├── efl.ecore_file_monitor.pxi │ ├── efl.ecore_idler.pxi │ ├── efl.ecore_poller.pxi │ └── efl.ecore_timer.pxi ├── ecore_con │ ├── efl.ecore_con.pyx │ ├── efl.ecore_con_lookup.pxi │ └── efl.ecore_con_url.pxi ├── ecore_input │ ├── efl.ecore_input.pyx │ └── efl.ecore_input_events.pxi ├── ecore_x │ ├── efl.ecore_x.pyx │ ├── efl.ecore_x_events.pxi │ └── efl.ecore_x_window.pxi ├── edje │ ├── efl.edje.pyx │ ├── efl.edje_external.pxi │ ├── efl.edje_message.pxi │ └── efl.edje_object.pxi ├── edje_edit │ ├── efl.edje_edit.pyx │ ├── efl.edje_edit_group.pxi │ ├── efl.edje_edit_part.pxi │ ├── efl.edje_edit_part_state.pxi │ └── efl.edje_edit_program.pxi ├── elementary │ ├── __init__.py │ ├── __init__.pyx │ ├── access.pxd │ ├── access.pyx │ ├── actionslider.pxi │ ├── actionslider.py │ ├── actionslider_cdef.pxi │ ├── background.pxi │ ├── background.py │ ├── background_cdef.pxi │ ├── box.pxi │ ├── box.py │ ├── box_cdef.pxi │ ├── bubble.pxi │ ├── bubble.py │ ├── bubble_cdef.pxi │ ├── button.pxi │ ├── button.py │ ├── button_cdef.pxi │ ├── calendar.pxi │ ├── calendar_cdef.pxi │ ├── calendar_elm.py │ ├── check.pxi │ ├── check.py │ ├── check_cdef.pxi │ ├── clock.pxi │ ├── clock.py │ ├── clock_cdef.pxi │ ├── cnp_callbacks.pxi │ ├── colorselector.pxi │ ├── colorselector.py │ ├── colorselector_cdef.pxi │ ├── combobox.pxi │ ├── combobox_cdef.pxi │ ├── configuration.pxi │ ├── configuration.py │ ├── configuration_cdef.pxi │ ├── conformant.pxi │ ├── conformant.py │ ├── conformant_cdef.pxi │ ├── ctxpopup.pxi │ ├── ctxpopup.py │ ├── ctxpopup_cdef.pxi │ ├── datetime.pxi │ ├── datetime_cdef.pxi │ ├── datetime_elm.py │ ├── dayselector.pxi │ ├── dayselector.py │ ├── dayselector_cdef.pxi │ ├── diskselector.pxi │ ├── diskselector.py │ ├── diskselector_cdef.pxi │ ├── elementary_cdef.pxi │ ├── entry.pxi │ ├── entry.py │ ├── entry_cdef.pxi │ ├── fileselector.pxi │ ├── fileselector.py │ ├── fileselector_button.pxi │ ├── fileselector_button.py │ ├── fileselector_button_cdef.pxi │ ├── fileselector_cdef.pxi │ ├── fileselector_entry.pxi │ ├── fileselector_entry.py │ ├── fileselector_entry_cdef.pxi │ ├── flip.pxi │ ├── flip.py │ ├── flip_cdef.pxi │ ├── flipselector.pxi │ ├── flipselector.py │ ├── flipselector_cdef.pxi │ ├── frame.pxi │ ├── frame.py │ ├── frame_cdef.pxi │ ├── general.py │ ├── gengrid.pxi │ ├── gengrid.py │ ├── gengrid_cdef.pxi │ ├── gengrid_item.pxi │ ├── gengrid_item_class.pxi │ ├── gengrid_widget.pxi │ ├── genlist.pxi │ ├── genlist.py │ ├── genlist_cdef.pxi │ ├── genlist_item.pxi │ ├── genlist_item_class.pxi │ ├── genlist_widget.pxi │ ├── gesture_layer.pxi │ ├── gesture_layer.py │ ├── gesture_layer_cdef.pxi │ ├── glview.pxd │ ├── glview.pyx │ ├── grid.pxi │ ├── grid.py │ ├── grid_cdef.pxi │ ├── hover.pxi │ ├── hover.py │ ├── hover_cdef.pxi │ ├── hoversel.pxi │ ├── hoversel.py │ ├── hoversel_cdef.pxi │ ├── icon.pxi │ ├── icon.py │ ├── icon_cdef.pxi │ ├── image.pxi │ ├── image.py │ ├── image_cdef.pxi │ ├── index.pxi │ ├── index.py │ ├── index_cdef.pxi │ ├── innerwindow.pxi │ ├── innerwindow.py │ ├── innerwindow_cdef.pxi │ ├── label.pxi │ ├── label.py │ ├── label_cdef.pxi │ ├── layout.pxi │ ├── layout.py │ ├── layout_cdef.pxi │ ├── list.pxi │ ├── list.py │ ├── list_cdef.pxi │ ├── map.pxi │ ├── map.py │ ├── map_cdef.pxi │ ├── mapbuf.pxi │ ├── mapbuf.py │ ├── mapbuf_cdef.pxi │ ├── menu.pxi │ ├── menu.py │ ├── menu_cdef.pxi │ ├── multibuttonentry.pxi │ ├── multibuttonentry.py │ ├── multibuttonentry_cdef.pxi │ ├── naviframe.pxi │ ├── naviframe.py │ ├── naviframe_cdef.pxi │ ├── need.pxi │ ├── need.py │ ├── need_cdef.pxi │ ├── notify.pxi │ ├── notify.py │ ├── notify_cdef.pxi │ ├── object.pxi │ ├── object.py │ ├── object_cdef.pxi │ ├── object_item.pxi │ ├── object_item_cdef.pxi │ ├── panel.pxi │ ├── panel.py │ ├── panel_cdef.pxi │ ├── panes.pxi │ ├── panes.py │ ├── panes_cdef.pxi │ ├── photo.pxi │ ├── photo.py │ ├── photo_cdef.pxi │ ├── photocam.pxi │ ├── photocam.py │ ├── photocam_cdef.pxi │ ├── plug.pxi │ ├── plug.py │ ├── plug_cdef.pxi │ ├── popup.pxi │ ├── popup.py │ ├── popup_cdef.pxi │ ├── progressbar.pxi │ ├── progressbar.py │ ├── progressbar_cdef.pxi │ ├── radio.pxi │ ├── radio.py │ ├── radio_cdef.pxi │ ├── scroller.pxi │ ├── scroller.py │ ├── scroller_cdef.pxi │ ├── segment_control.pxi │ ├── segment_control.py │ ├── segment_control_cdef.pxi │ ├── separator.pxi │ ├── separator.py │ ├── separator_cdef.pxi │ ├── slider.pxi │ ├── slider.py │ ├── slider_cdef.pxi │ ├── slideshow.pxi │ ├── slideshow.py │ ├── slideshow_cdef.pxi │ ├── spinner.pxi │ ├── spinner.py │ ├── spinner_cdef.pxi │ ├── store.pxd │ ├── store.pyx │ ├── store_item_mapping.pxi │ ├── table.pxi │ ├── table.py │ ├── table_cdef.pxi │ ├── theme.pxi │ ├── theme.py │ ├── theme_cdef.pxi │ ├── thumb.pxi │ ├── thumb.py │ ├── thumb_cdef.pxi │ ├── toolbar.pxi │ ├── toolbar.py │ ├── toolbar_cdef.pxi │ ├── transit.pxi │ ├── transit.py │ ├── transit_cdef.pxi │ ├── video.pxi │ ├── video.py │ ├── video_cdef.pxi │ ├── web.pxi │ ├── web.py │ ├── web_cdef.pxi │ ├── window.pxi │ ├── window.py │ └── window_cdef.pxi ├── emotion │ └── efl.emotion.pyx ├── eo │ └── efl.eo.pyx ├── ethumb │ ├── efl.ethumb.pyx │ └── efl.ethumb_client.pyx ├── evas │ ├── efl.evas.pyx │ ├── efl.evas_canvas.pxi │ ├── efl.evas_canvas_callbacks.pxi │ ├── efl.evas_map.pxi │ ├── efl.evas_object.pxi │ ├── efl.evas_object_box.pxi │ ├── efl.evas_object_callbacks.pxi │ ├── efl.evas_object_events.pxi │ ├── efl.evas_object_grid.pxi │ ├── efl.evas_object_image.pxi │ ├── efl.evas_object_line.pxi │ ├── efl.evas_object_polygon.pxi │ ├── efl.evas_object_rectangle.pxi │ ├── efl.evas_object_smart.pxi │ ├── efl.evas_object_table.pxi │ ├── efl.evas_object_text.pxi │ ├── efl.evas_object_textblock.pxi │ ├── efl.evas_object_textgrid.pxi │ └── efl.evas_rect.pxi └── utils │ ├── __init__.py │ ├── conversions.pyx │ ├── deprecated.pyx │ ├── logger.pyx │ └── setup.py ├── examples ├── dbus │ ├── test_bt_list_handles.py │ ├── test_bt_search_devices.py │ ├── test_dbus_spy.py │ ├── test_signal_emitter.py │ ├── test_signal_recipient.py │ └── test_signal_simple.py ├── ecore │ ├── con │ │ ├── lookup.py │ │ └── url.py │ ├── input │ │ └── events.py │ └── x │ │ ├── mplayer_embed.py │ │ └── window_creation.py ├── elementary │ ├── cursors.edj │ ├── images │ │ ├── bubble.png │ │ ├── button_clicked_blue.png │ │ ├── button_clicked_red.png │ │ ├── button_normal_blue.png │ │ ├── button_normal_red.png │ │ ├── clo.png │ │ ├── icon_00.png │ │ ├── icon_01.png │ │ ├── icon_02.png │ │ ├── icon_03.png │ │ ├── icon_04.png │ │ ├── icon_05.png │ │ ├── icon_06.png │ │ ├── icon_07.png │ │ ├── icon_08.png │ │ ├── icon_09.png │ │ ├── icon_10.png │ │ ├── icon_11.png │ │ ├── icon_12.png │ │ ├── icon_13.png │ │ ├── icon_14.png │ │ ├── icon_15.png │ │ ├── icon_16.png │ │ ├── icon_17.png │ │ ├── icon_18.png │ │ ├── icon_19.png │ │ ├── icon_20.png │ │ ├── icon_21.png │ │ ├── icon_22.png │ │ ├── icon_23.png │ │ ├── icon_right_arrow.png │ │ ├── insanely_huge_test_image.jpg │ │ ├── logo.png │ │ ├── logo_small.png │ │ ├── mystrale.jpg │ │ ├── mystrale_2.jpg │ │ ├── panel_01.jpg │ │ ├── plant_01.jpg │ │ ├── pol_shadow.png │ │ ├── pol_sky.png │ │ ├── pol_twofish.png │ │ ├── rock_01.jpg │ │ ├── rock_02.jpg │ │ ├── sky.jpg │ │ ├── sky_01.jpg │ │ ├── sky_02.jpg │ │ ├── sky_03.jpg │ │ ├── sky_04.jpg │ │ ├── under.png │ │ └── wood_01.jpg │ ├── postit_ent.edc │ ├── postit_ent.edj │ ├── test.edj │ ├── test.py │ ├── test_3d.py │ ├── test_access.py │ ├── test_actionslider.py │ ├── test_bg.py │ ├── test_box.py │ ├── test_bubble.py │ ├── test_button.py │ ├── test_calendar.py │ ├── test_check.py │ ├── test_clock.py │ ├── test_cnp.py │ ├── test_colorselector.py │ ├── test_combobox.py │ ├── test_config.py │ ├── test_conform.py │ ├── test_core_ecore_events_in_elm.py │ ├── test_core_evas_canvas_callbacks.py │ ├── test_core_evas_object_callbacks.py │ ├── test_core_evas_objects.py │ ├── test_core_evas_smart.py │ ├── test_ctxpopup.py │ ├── test_cursor.py │ ├── test_datetime.py │ ├── test_dayselector.py │ ├── test_diskselector.py │ ├── test_dnd.py │ ├── test_entry.py │ ├── test_evas_textgrid.py │ ├── test_external.edc │ ├── test_external.edj │ ├── test_external.py │ ├── test_fileselector.py │ ├── test_fileselector_button.py │ ├── test_fileselector_entry.py │ ├── test_flip.py │ ├── test_flipselector.py │ ├── test_floating.py │ ├── test_focus.py │ ├── test_focus_custom.edc │ ├── test_focus_custom.edj │ ├── test_frame.py │ ├── test_gengrid.py │ ├── test_genlist_1.py │ ├── test_genlist_2.py │ ├── test_genlist_decorate.py │ ├── test_genlist_decorate_all.py │ ├── test_genlist_filter.py │ ├── test_genlist_group.py │ ├── test_genlist_iteration.py │ ├── test_genlist_multiselect.py │ ├── test_genlist_reorder.py │ ├── test_genlist_reusable.py │ ├── test_genlist_search.py │ ├── test_genlist_sorted.py │ ├── test_genlist_tree.py │ ├── test_gesture_layer.py │ ├── test_grid.py │ ├── test_hover.py │ ├── test_hoversel.py │ ├── test_icon.py │ ├── test_image.py │ ├── test_image_async.py │ ├── test_image_memfile.py │ ├── test_import_all_modules.py │ ├── test_index.py │ ├── test_input_events.py │ ├── test_inwin.py │ ├── test_label.py │ ├── test_layout.py │ ├── test_list.py │ ├── test_main_menu.py │ ├── test_map.py │ ├── test_mapbuf.py │ ├── test_menu.py │ ├── test_multibuttonentry.py │ ├── test_naviframe.py │ ├── test_notify.py │ ├── test_panel.py │ ├── test_panel_scroll.py │ ├── test_panes.py │ ├── test_photo.py │ ├── test_photocam.py │ ├── test_popup.py │ ├── test_progressbar.py │ ├── test_radio.py │ ├── test_scroller.py │ ├── test_segment_control.py │ ├── test_separator.py │ ├── test_slider.py │ ├── test_slideshow.py │ ├── test_spinner.py │ ├── test_store.py │ ├── test_sys_notify.py │ ├── test_table.py │ ├── test_theme.edc │ ├── test_theme.edj │ ├── test_theme.py │ ├── test_thumb.py │ ├── test_toolbar.py │ ├── test_tooltip.py │ ├── test_transit.py │ ├── test_transit_bezier.py │ ├── test_video.py │ ├── test_web.py │ ├── test_win.py │ └── test_win_dialog.py ├── emotion │ ├── test_emotion.py │ └── theme.edj └── ethumb │ ├── ethumb.py │ └── ethumb_client.py ├── include ├── efl.c_eo.pxd ├── efl.c_ethumb.pxd ├── efl.ecore.enums.pxd ├── efl.ecore.pxd ├── efl.ecore_con.enums.pxd ├── efl.ecore_con.pxd ├── efl.ecore_input.enums.pxd ├── efl.ecore_input.pxd ├── efl.ecore_x.pxd ├── efl.edje.enums.pxd ├── efl.edje.pxd ├── efl.edje_edit.enums.pxd ├── efl.edje_edit.pxd ├── efl.eina.pxd ├── efl.elementary.enums.pxd ├── efl.elementary.pxd ├── efl.emotion.enums.pxd ├── efl.emotion.pxd ├── efl.eo.pxd ├── efl.ethumb.enums.pxd ├── efl.ethumb.pxd ├── efl.ethumb_client.pxd ├── efl.evas.enums.pxd ├── efl.evas.pxd ├── efl.utils.conversions.pxd ├── efl.utils.deprecated.pxd └── efl.utils.logger.pxd ├── pyproject.toml ├── setup.cfg ├── setup.py └── tests ├── 00_run_all_tests.py ├── dbus ├── 00_run_all_tests.py └── test_01_basics.py ├── ecore ├── 00_run_all_tests.py ├── __init__.py ├── exe_helper.sh ├── test_01_timer.py ├── test_02_animator.py ├── test_03_poller.py ├── test_04_idler.py ├── test_05_idle_enterer.py ├── test_06_idle_exiter.py ├── test_07_fd_handler.py ├── test_08_exe.py ├── test_09_file_download.py ├── test_10_file_monitor.py └── test_11_con.py ├── edje ├── 00_run_all_tests.py ├── TODO-edit │ ├── 01-edje.py │ ├── 02-group.py │ ├── 03-parts.py │ ├── 04-states.py │ ├── groups.edc │ └── theme.edc ├── __init__.py ├── test_01_basics.py ├── test_02_object.py ├── test_04_edit.py ├── test_05_decorators.py ├── theme.edc └── theme.edj ├── elementary ├── 00_run_all_tests.py ├── __init__.py ├── icon.png ├── test_01_basics.py ├── test_02_image_icon.py ├── test_03_entry.py ├── test_04_external.py ├── theme.edc └── theme.edj ├── eo ├── 00_run_all_tests.py ├── __init__.py ├── test_01_basics.py └── test_02_class_names.py └── evas ├── 00_run_all_tests.py ├── __init__.py ├── icon.png ├── test_01_rect.py ├── test_02_canvas.py ├── test_03_object.py ├── test_04_object_box.py ├── test_05_object_image.py ├── test_06_object_smart.py ├── test_07_object_line.py ├── test_08_object_polygon.py ├── test_09_object_text.py ├── test_10_object_textblock.py └── test_11_object_textgrid.py /.gitignore: -------------------------------------------------------------------------------- 1 | *.py[co] 2 | MANIFEST 3 | installed_files-*.txt 4 | 5 | # Packages 6 | *.egg 7 | *.egg-info 8 | dist 9 | build 10 | eggs 11 | parts 12 | bin 13 | var 14 | sdist 15 | develop-eggs 16 | .installed.cfg 17 | 18 | # Installer logs 19 | pip-log.txt 20 | 21 | # Unit test / coverage reports 22 | .coverage 23 | .tox 24 | 25 | # Translations 26 | *.mo 27 | 28 | # Cython generated files 29 | efl/*/*.c 30 | efl/*/*.h 31 | !efl/dbus_mainloop/e_dbus.* 32 | efl/*/*.html 33 | 34 | # Various editors trash 35 | .idea/ 36 | .vscode/ 37 | -------------------------------------------------------------------------------- /.pylintrc: -------------------------------------------------------------------------------- 1 | [MESSAGES CONTROL] 2 | 3 | #enable= 4 | 5 | disable=consider-using-f-string, # for older python we still support 6 | redundant-u-string-prefix, # for older python we still support 7 | invalid-name, # seems too pedantic to me 8 | missing-function-docstring, 9 | missing-class-docstring, 10 | missing-module-docstring, 11 | -------------------------------------------------------------------------------- /AUTHORS: -------------------------------------------------------------------------------- 1 | Gustavo Sverzut Barbieri 2 | Ulisses Furquim 3 | Davide Andreoli 4 | Fabiano Fidêncio 5 | Tiago Falcão 6 | Simon Busch 7 | Boris 'billiob' Faure 8 | Bruno Dilly 9 | Joost Albers 10 | Kai Huuhko 11 | -------------------------------------------------------------------------------- /MANIFEST.in: -------------------------------------------------------------------------------- 1 | include README INSTALL COPYING COPYING.LESSER AUTHORS ChangeLog 2 | recursive-include efl *.c *.h *.pyx *.pxi *.pxd 3 | graft include 4 | graft tests 5 | recursive-exclude tests *.pyc 6 | graft examples 7 | recursive-exclude examples *.pyc 8 | graft doc 9 | -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- 1 | # 2 | # A simple and stupid Makefile for python-efl. 3 | # 4 | # This is mainly targeted at lazy devlopers (like me) that 5 | # want to type less or do not want to learn the python 6 | # setup syntax. 7 | # 8 | # NOTE: This file is also used to discriminate when we are building from 9 | # stable tarballs (in this case we disable cython by default) or from git 10 | # sources as the Makefile is not distributed. 11 | # 12 | # Usage: 13 | # 14 | # make to build using the default python interpreter 15 | # make PY=pythonX to build using the specified python interpreter 16 | # 17 | 18 | 19 | PY = python3 20 | 21 | 22 | .PHONY: build 23 | build: 24 | $(PY) setup.py build 25 | 26 | 27 | .PHONY: install 28 | install: 29 | $(PY) setup.py install 30 | 31 | 32 | .PHONY: uninstall 33 | uninstall: 34 | $(PY) setup.py uninstall 35 | 36 | 37 | .PHONY: doc 38 | doc: 39 | $(PY) setup.py build build_doc 40 | 41 | 42 | .PHONY: test 43 | test: 44 | $(PY) setup.py test 45 | 46 | 47 | .PHONY: clean 48 | clean: 49 | $(PY) setup.py clean --all 50 | 51 | 52 | .PHONY: maintainer-clean 53 | maintainer-clean: 54 | $(PY) setup.py clean --all clean_generated_files 55 | rm -rf build/ 56 | rm -rf dist/ 57 | rm -rf python_efl.egg-info/ 58 | rm -f installed_files-*.txt 59 | 60 | 61 | .PHONY: dist 62 | dist: 63 | $(PY) setup.py sdist --formats=gztar,xztar 64 | $(PY) setup.py bdist_wheel 65 | @cd dist/; for f in `ls *.tar.*` ; do \ 66 | echo Generating sha256 for: $$f ; \ 67 | sha256sum $$f > $$f.sha256; \ 68 | done 69 | -------------------------------------------------------------------------------- /doc/ecore/class-animator.rst: -------------------------------------------------------------------------------- 1 | .. currentmodule:: efl.ecore 2 | 3 | :class:`efl.ecore.Animator` Class 4 | ================================= 5 | 6 | .. autoclass:: efl.ecore.Animator 7 | -------------------------------------------------------------------------------- /doc/ecore/class-animator_timeline.rst: -------------------------------------------------------------------------------- 1 | .. currentmodule:: efl.ecore 2 | 3 | :class:`efl.ecore.AnimatorTimeline` Class 4 | ========================================= 5 | 6 | .. autoclass:: efl.ecore.AnimatorTimeline 7 | -------------------------------------------------------------------------------- /doc/ecore/class-exe.rst: -------------------------------------------------------------------------------- 1 | .. currentmodule:: efl.ecore 2 | 3 | :class:`efl.ecore.Exe` Class 4 | ============================== 5 | 6 | .. autoclass:: efl.ecore.Exe 7 | .. autoclass:: efl.ecore.EventExeAdd 8 | .. autoclass:: efl.ecore.EventExeDel 9 | .. autoclass:: efl.ecore.EventExeData 10 | -------------------------------------------------------------------------------- /doc/ecore/class-fdhandler.rst: -------------------------------------------------------------------------------- 1 | .. currentmodule:: efl.ecore 2 | 3 | :class:`efl.ecore.FdHandler` Class 4 | ================================== 5 | 6 | .. autoclass:: efl.ecore.FdHandler 7 | -------------------------------------------------------------------------------- /doc/ecore/class-filedownload.rst: -------------------------------------------------------------------------------- 1 | .. currentmodule:: efl.ecore 2 | 3 | :class:`efl.ecore.FileDownload` Class 4 | ===================================== 5 | 6 | .. autoclass:: efl.ecore.FileDownload 7 | -------------------------------------------------------------------------------- /doc/ecore/class-filemonitor.rst: -------------------------------------------------------------------------------- 1 | .. currentmodule:: efl.ecore 2 | 3 | :class:`efl.ecore.FileMonitor` Class 4 | ===================================== 5 | 6 | .. autoclass:: efl.ecore.FileMonitor 7 | -------------------------------------------------------------------------------- /doc/ecore/class-idleenterer.rst: -------------------------------------------------------------------------------- 1 | .. currentmodule:: efl.ecore 2 | 3 | :class:`efl.ecore.IdleEnterer` Class 4 | ==================================== 5 | 6 | .. autoclass:: efl.ecore.IdleEnterer 7 | -------------------------------------------------------------------------------- /doc/ecore/class-idleexiter.rst: -------------------------------------------------------------------------------- 1 | .. currentmodule:: efl.ecore 2 | 3 | :class:`efl.ecore.IdleExiter` Class 4 | =================================== 5 | 6 | .. autoclass:: efl.ecore.IdleExiter 7 | -------------------------------------------------------------------------------- /doc/ecore/class-idler.rst: -------------------------------------------------------------------------------- 1 | .. currentmodule:: efl.ecore 2 | 3 | :class:`efl.ecore.Idler` Class 4 | ============================== 5 | 6 | .. autoclass:: efl.ecore.Idler 7 | -------------------------------------------------------------------------------- /doc/ecore/class-lookup.rst: -------------------------------------------------------------------------------- 1 | .. currentmodule:: efl.ecore_con 2 | 3 | :class:`efl.ecore_con.Lookup` Class 4 | =================================== 5 | 6 | .. autoclass:: efl.ecore_con.Lookup 7 | -------------------------------------------------------------------------------- /doc/ecore/class-poller.rst: -------------------------------------------------------------------------------- 1 | .. currentmodule:: efl.ecore 2 | 3 | :class:`efl.ecore.Poller` Class 4 | =============================== 5 | 6 | .. autoclass:: efl.ecore.Poller 7 | -------------------------------------------------------------------------------- /doc/ecore/class-timer.rst: -------------------------------------------------------------------------------- 1 | .. currentmodule:: efl.ecore 2 | 3 | :class:`efl.ecore.Timer` Class 4 | ============================== 5 | 6 | .. autoclass:: efl.ecore.Timer 7 | -------------------------------------------------------------------------------- /doc/ecore/class-url.rst: -------------------------------------------------------------------------------- 1 | .. currentmodule:: efl.ecore_con 2 | 3 | :class:`efl.ecore_con.Url` Class 4 | =================================== 5 | 6 | .. autoclass:: efl.ecore_con.Url 7 | .. autoclass:: efl.ecore_con.EventUrlComplete 8 | .. autoclass:: efl.ecore_con.EventUrlProgress 9 | .. autoclass:: efl.ecore_con.EventUrlData 10 | -------------------------------------------------------------------------------- /doc/ecore/module-ecore.rst: -------------------------------------------------------------------------------- 1 | 2 | .. automodule:: efl.ecore 3 | :exclude-members: Animator, AnimatorTimeline, Exe, FdHandler, FileDownload, 4 | FileMonitor, IdleEnterer, IdleExiter, Idler, Poller, 5 | Timer, EventExeAdd, EventExeData, EventExeDel 6 | -------------------------------------------------------------------------------- /doc/ecore/module-ecore_con.rst: -------------------------------------------------------------------------------- 1 | 2 | .. automodule:: efl.ecore_con 3 | :exclude-members: Url, EventUrlComplete, EventUrlProgress, EventUrlData, 4 | Lookup, ConEventFilter 5 | 6 | -------------------------------------------------------------------------------- /doc/ecore/module-ecore_input.rst: -------------------------------------------------------------------------------- 1 | 2 | .. automodule:: efl.ecore_input 3 | 4 | -------------------------------------------------------------------------------- /doc/edje/class-edje.rst: -------------------------------------------------------------------------------- 1 | .. currentmodule:: efl.edje 2 | 3 | :class:`efl.edje.Edje` Class 4 | ============================ 5 | 6 | .. autoclass:: efl.edje.Edje 7 | -------------------------------------------------------------------------------- /doc/edje/module-edje.rst: -------------------------------------------------------------------------------- 1 | 2 | .. automodule:: efl.edje 3 | :exclude-members: Edje 4 | -------------------------------------------------------------------------------- /doc/elementary/background.rst: -------------------------------------------------------------------------------- 1 | .. currentmodule:: efl.elementary 2 | 3 | Background 4 | ########## 5 | 6 | .. image:: /images/background-preview.png 7 | 8 | 9 | Widget description 10 | ================== 11 | 12 | The background widget is used for setting a solid color, image or Edje group 13 | as a background to a window (unless it has transparency enabled) or any 14 | container object. 15 | 16 | It works just like an image, but has some properties useful to a 17 | background, like setting it to tiled, centered, scaled or stretched. 18 | 19 | 20 | Layout content parts 21 | ==================== 22 | 23 | - ``overlay`` - overlay of the bg 24 | 25 | 26 | Enumerations 27 | ============ 28 | 29 | .. _Elm_Bg_Option: 30 | 31 | Background display modes 32 | ------------------------ 33 | 34 | .. data:: ELM_BG_OPTION_CENTER 35 | 36 | Center 37 | 38 | .. data:: ELM_BG_OPTION_SCALE 39 | 40 | Scale 41 | 42 | .. data:: ELM_BG_OPTION_STRETCH 43 | 44 | Stretch 45 | 46 | .. data:: ELM_BG_OPTION_TILE 47 | 48 | Tile 49 | 50 | 51 | Inheritance diagram 52 | =================== 53 | 54 | .. inheritance-diagram:: Background 55 | :parts: 2 56 | 57 | 58 | .. autoclass:: Background 59 | -------------------------------------------------------------------------------- /doc/elementary/button.rst: -------------------------------------------------------------------------------- 1 | .. currentmodule:: efl.elementary 2 | 3 | Button 4 | ###### 5 | 6 | .. image:: /images/button-preview.png 7 | 8 | 9 | Widget description 10 | ================== 11 | 12 | This is a push-button. Press it and run some function. It can contain 13 | a simple label and icon object and it also has an autorepeat feature. 14 | 15 | 16 | Available styles 17 | ================ 18 | 19 | - ``default`` a normal button. 20 | - ``anchor`` Like default, but the button fades away when the mouse is not 21 | over it, leaving only the text or icon. 22 | - ``hoversel_vertical`` Internally used by 23 | :py:class:`~efl.elementary.hoversel.Hoversel` to give a continuous look 24 | across its options. 25 | - ``hoversel_vertical_entry`` Another internal for 26 | :py:class:`~efl.elementary.hoversel.Hoversel`. 27 | - ``naviframe`` Internally used by 28 | :py:class:`~efl.elementary.naviframe.Naviframe` for its back button. 29 | - ``colorselector`` Internally used by 30 | :py:class:`~efl.elementary.colorselector.Colorselector` for its left and 31 | right buttons. 32 | 33 | 34 | Layout content parts 35 | ==================== 36 | 37 | - ``icon`` - An icon of the button 38 | 39 | 40 | Layout text parts 41 | ================= 42 | 43 | - ``default`` - Label of the button 44 | 45 | 46 | Emitted signals 47 | =============== 48 | 49 | - ``clicked``: the user clicked the button (press/release). 50 | - ``repeated``: the user pressed the button without releasing it. 51 | - ``pressed``: button was pressed. 52 | - ``unpressed``: button was released after being pressed. 53 | 54 | 55 | Inheritance diagram 56 | =================== 57 | 58 | .. inheritance-diagram:: Button 59 | :parts: 2 60 | 61 | 62 | .. autoclass:: Button 63 | 64 | -------------------------------------------------------------------------------- /doc/elementary/check.rst: -------------------------------------------------------------------------------- 1 | .. currentmodule:: efl.elementary 2 | 3 | Check 4 | ##### 5 | 6 | .. image:: /images/check-preview.png 7 | 8 | 9 | Widget description 10 | ================== 11 | 12 | The check widget allows for toggling a value between true and false. 13 | 14 | Check objects are a lot like radio objects in layout and functionality, 15 | except they do not work as a group, but independently, and only toggle 16 | the value of a boolean :py:attr:`~Check.state` between false and true. 17 | 18 | 19 | Emitted signals 20 | =============== 21 | 22 | - ``changed`` - This is called whenever the user changes the state of 23 | the check objects. 24 | 25 | 26 | Layout content parts 27 | ==================== 28 | 29 | - ``icon`` - An icon of the check 30 | 31 | 32 | Layout text parts 33 | ================= 34 | 35 | - ``default`` - A label of the check 36 | - ``on`` - On state label of the check 37 | - ``off`` - Off state label of the check 38 | 39 | 40 | Inheritance diagram 41 | =================== 42 | 43 | .. inheritance-diagram:: Check 44 | :parts: 2 45 | 46 | 47 | .. autoclass:: Check 48 | -------------------------------------------------------------------------------- /doc/elementary/colorselector.rst: -------------------------------------------------------------------------------- 1 | .. currentmodule:: efl.elementary 2 | 3 | Colorselector 4 | ############# 5 | 6 | .. image:: /images/colorselector-preview.png 7 | 8 | 9 | Widget description 10 | ================== 11 | 12 | A Colorselector is a color selection widget. 13 | 14 | It allows application to set a series of colors. It also allows to 15 | load/save colors from/to config with a unique identifier, by default, 16 | the colors are loaded/saved from/to config using "default" identifier. 17 | The colors can be picked by user from the color set by clicking on 18 | individual color item on the palette or by selecting it from selector. 19 | 20 | 21 | Emitted signals 22 | =============== 23 | 24 | - ``"changed"`` - When the color value changes on selector 25 | - ``"color,item,selected"`` - When user clicks on color item. 26 | The event_info parameter of the callback will be the selected 27 | color item. 28 | - ``"color,item,longpressed"`` - When user long presses on color item. 29 | The event_info parameter of the callback will be the selected 30 | color item. 31 | 32 | 33 | Enumerations 34 | ============ 35 | 36 | .. _Elm_Colorselector_Mode: 37 | 38 | Colorselector modes 39 | ------------------- 40 | 41 | .. data:: ELM_COLORSELECTOR_PALETTE 42 | 43 | Show palette 44 | 45 | .. data:: ELM_COLORSELECTOR_COMPONENTS 46 | 47 | Show components 48 | 49 | .. data:: ELM_COLORSELECTOR_BOTH 50 | 51 | Show palette and components 52 | 53 | 54 | Inheritance diagram 55 | =================== 56 | 57 | .. inheritance-diagram:: 58 | Colorselector 59 | ColorselectorPaletteItem 60 | :parts: 2 61 | 62 | 63 | .. autoclass:: Colorselector 64 | .. autoclass:: ColorselectorPaletteItem 65 | -------------------------------------------------------------------------------- /doc/elementary/combobox.rst: -------------------------------------------------------------------------------- 1 | .. currentmodule:: efl.elementary 2 | 3 | Combobox 4 | ######## 5 | 6 | .. warning:: 7 | **THE COMBOBOX IS BROKEN AND DEPRECATED, DO NOT USE IN ANY CASE !!** 8 | 9 | The behaviour and the API of the Combobox will change in future release. 10 | 11 | If you are already using this we really encourage you to switch 12 | to other widgets. 13 | 14 | We are really sorry about this breakage, but there is nothing we can do 15 | to avoid this :( 16 | 17 | .. image:: /images/combobox-preview.png 18 | 19 | Widget description 20 | ================== 21 | 22 | This is a the classic combobox widget, it is the composition of a 23 | :class:`Button`, an :class:`Entry`, a :class:`Genlist` and an :class:`Hover`. 24 | Thus you can use all the functionality of the base classes on the 25 | :class:`Combobox` itself. 26 | 27 | 28 | Available styles 29 | ================ 30 | 31 | - ``default`` a normal combobox. 32 | 33 | 34 | Emitted signals 35 | =============== 36 | 37 | - ``dismissed``: The combobox hover has been dismissed. 38 | - ``expanded``: The combobox hover has been expanded. 39 | - ``clicked``: The combobox button has been clicked. 40 | - ``item,selected``: An item has been selected (highlighted). 41 | - ``item,pressed``: An item has been pressed (clicked). 42 | - ``filter,done``: Item filtering on genlist is completed. 43 | 44 | 45 | Inheritance diagram 46 | =================== 47 | 48 | .. inheritance-diagram:: Combobox 49 | :parts: 2 50 | 51 | 52 | .. autoclass:: _Combobox 53 | .. autoclass:: Combobox 54 | 55 | -------------------------------------------------------------------------------- /doc/elementary/conformant.rst: -------------------------------------------------------------------------------- 1 | .. currentmodule:: efl.elementary 2 | 3 | Conformant 4 | ########## 5 | 6 | .. image:: /images/conformant-preview.png 7 | 8 | 9 | Widget description 10 | ================== 11 | 12 | The aim is to provide a widget that can be used in elementary apps to 13 | account for space taken up by the indicator, virtual keypad & softkey 14 | windows when running the illume2 module of E17. 15 | 16 | So conformant content will be sized and positioned considering the 17 | space required for such stuff, and when they popup, as a keyboard 18 | shows when an entry is selected, conformant content won't change. 19 | 20 | 21 | Emitted signals 22 | =============== 23 | 24 | - ``virtualkeypad,state,on``: if virtualkeypad state is switched to ``on``. 25 | - ``virtualkeypad,state,off``: if virtualkeypad state is switched to ``off``. 26 | - ``clipboard,state,on``: if clipboard state is switched to ``on``. 27 | - ``clipboard,state,off``: if clipboard state is switched to ``off``. 28 | 29 | 30 | Layout content parts 31 | ==================== 32 | 33 | - ``default`` - A content of the conformant 34 | 35 | 36 | Inheritance diagram 37 | =================== 38 | 39 | .. inheritance-diagram:: Conformant 40 | :parts: 2 41 | 42 | 43 | .. autoclass:: Conformant 44 | -------------------------------------------------------------------------------- /doc/elementary/flipselector.rst: -------------------------------------------------------------------------------- 1 | .. currentmodule:: efl.elementary 2 | 3 | Flipselector 4 | ############ 5 | 6 | .. image:: /images/flipselector-preview.png 7 | 8 | 9 | Widget description 10 | ================== 11 | 12 | A flip selector is a widget to show a set of *text* items, one at a time, with 13 | the same sheet switching style as the :py:class:`~efl.elementary.clock.Clock` 14 | widget, when one changes the current displaying sheet (thus, the "flip" in the 15 | name). 16 | 17 | User clicks to flip sheets which are *held* for some time will 18 | make the flip selector to flip continuously and automatically for 19 | the user. The interval between flips will keep growing in time, 20 | so that it helps the user to reach an item which is distant from 21 | the current selection. 22 | 23 | 24 | Emitted signals 25 | =============== 26 | 27 | - ``selected`` - when the widget's selected text item is changed 28 | - ``overflowed`` - when the widget's current selection is changed 29 | from the first item in its list to the last 30 | - ``underflowed`` - when the widget's current selection is changed 31 | from the last item in its list to the first 32 | 33 | 34 | Layout text parts 35 | ================= 36 | 37 | - ``default`` - label of the flipselector item 38 | 39 | 40 | Inheritance diagram 41 | =================== 42 | 43 | .. inheritance-diagram:: 44 | FlipSelector 45 | FlipSelectorItem 46 | :parts: 2 47 | 48 | 49 | .. autoclass:: FlipSelector 50 | .. autoclass:: FlipSelectorItem 51 | -------------------------------------------------------------------------------- /doc/elementary/frame.rst: -------------------------------------------------------------------------------- 1 | .. currentmodule:: efl.elementary 2 | 3 | Frame 4 | ##### 5 | 6 | .. image:: /images/frame-preview.png 7 | 8 | 9 | Widget description 10 | ================== 11 | 12 | Frame is a widget that holds some content and has a title. 13 | 14 | 15 | Available styles 16 | ================ 17 | 18 | - default 19 | - pad_small 20 | - pad_medium 21 | - pad_large 22 | - pad_huge 23 | - outdent_top 24 | - outdent_bottom 25 | 26 | Out of all these styles only default shows the title. 27 | 28 | 29 | Emitted signals 30 | =============== 31 | 32 | - ``clicked`` - The user has clicked the frame's label 33 | 34 | 35 | Layout content parts 36 | ==================== 37 | 38 | - ``default`` - A content of the frame 39 | 40 | 41 | Layout text parts 42 | ================= 43 | 44 | - ``default`` - Label of the frame 45 | 46 | 47 | Inheritance diagram 48 | =================== 49 | 50 | .. inheritance-diagram:: Frame 51 | :parts: 2 52 | 53 | 54 | .. autoclass:: Frame 55 | -------------------------------------------------------------------------------- /doc/elementary/grid.rst: -------------------------------------------------------------------------------- 1 | .. currentmodule:: efl.elementary 2 | 3 | Grid 4 | #### 5 | 6 | .. image:: /images/grid-preview.png 7 | 8 | 9 | Widget description 10 | ================== 11 | 12 | A grid layout widget. 13 | 14 | The grid is a grid layout widget that lays out a series of children as a 15 | fixed "grid" of widgets using a given percentage of the grid width and 16 | height each using the child object. 17 | 18 | The Grid uses a "Virtual resolution" that is stretched to fill the grid 19 | widgets size itself. The default is 100 x 100, so that means the 20 | position and sizes of children will effectively be percentages (0 to 100) 21 | of the width or height of the grid widget. 22 | 23 | 24 | Inheritance diagram 25 | =================== 26 | 27 | .. inheritance-diagram:: Grid 28 | :parts: 2 29 | 30 | 31 | .. autoclass:: Grid 32 | .. autofunction:: grid_pack_set 33 | .. autofunction:: grid_pack_get 34 | -------------------------------------------------------------------------------- /doc/elementary/hoversel.rst: -------------------------------------------------------------------------------- 1 | .. currentmodule:: efl.elementary 2 | 3 | Hoversel 4 | ######## 5 | 6 | .. image:: /images/hoversel-preview.png 7 | 8 | 9 | Widget description 10 | ================== 11 | 12 | A hoversel is a button that pops up a list of items (automatically 13 | choosing the direction to display) that have a label and, optionally, an 14 | icon to select from. 15 | 16 | It is a convenience widget to avoid the need to do all the piecing 17 | together yourself. It is intended for a small number of items in the 18 | hoversel menu (no more than 8), though is capable of many more. 19 | 20 | 21 | Emitted signals 22 | =============== 23 | 24 | - ``clicked`` - the user clicked the hoversel button and popped up 25 | the sel 26 | - ``selected`` - an item in the hoversel list is selected. event_info 27 | is the item 28 | - ``dismissed`` - the hover is dismissed 29 | - ``expanded`` - the hover is expanded (since 1.9) 30 | - ``item,focused`` - the hoversel item has received focus. (since 1.10) 31 | - ``item,unfocused`` - the hoversel item has lost focus. (since 1.10) 32 | 33 | 34 | Layout content parts 35 | ==================== 36 | 37 | - ``icon`` - An icon of the hoversel 38 | 39 | 40 | Layout text parts 41 | ================= 42 | 43 | - ``default`` - Label of the hoversel 44 | 45 | 46 | Inheritance diagram 47 | =================== 48 | 49 | .. inheritance-diagram:: 50 | Hoversel 51 | HoverselItem 52 | :parts: 2 53 | 54 | 55 | .. autoclass:: Hoversel 56 | .. autoclass:: HoverselItem 57 | -------------------------------------------------------------------------------- /doc/elementary/innerwindow.rst: -------------------------------------------------------------------------------- 1 | .. currentmodule:: efl.elementary 2 | 3 | Innerwindow 4 | ########### 5 | 6 | .. image:: /images/innerwindow-preview.png 7 | 8 | 9 | Widget description 10 | ================== 11 | 12 | An inwin is a window inside a window that is useful for a quick popup. 13 | It does not hover. 14 | 15 | It works by creating an object that will occupy the entire window, so it must be 16 | created using an :py:class:`~efl.elementary.window.Window` as parent only. The 17 | inwin object can be hidden or restacked below every other object if it's needed 18 | to show what's behind it without destroying it. If this is done, the 19 | :py:meth:`~InnerWindow.activate` function can be used to bring it back to full 20 | visibility again. 21 | 22 | 23 | Available styles 24 | ================ 25 | 26 | - ``default`` The inwin is sized to take over most of the window it's 27 | placed in. 28 | - ``minimal`` The size of the inwin will be the minimum necessary to show 29 | its contents. 30 | - ``minimal_vertical`` Horizontally, the inwin takes as much space as 31 | possible, but it's sized vertically the most it needs to fit its 32 | contents. 33 | 34 | 35 | Inheritance diagram 36 | =================== 37 | 38 | .. inheritance-diagram:: InnerWindow 39 | :parts: 2 40 | 41 | 42 | .. autoclass:: InnerWindow 43 | -------------------------------------------------------------------------------- /doc/elementary/mapbuf.rst: -------------------------------------------------------------------------------- 1 | .. currentmodule:: efl.elementary 2 | 3 | Mapbuf 4 | ###### 5 | 6 | .. image:: /images/mapbuf-preview.png 7 | 8 | 9 | Widget description 10 | ================== 11 | 12 | This holds one content object and uses an Evas Map of transformation 13 | points to be later used with this content. So the content will be 14 | moved, resized, etc as a single image. So it will improve performance 15 | when you have a complex interface, with a lot of elements, and will 16 | need to resize or move it frequently (the content object and its 17 | children). 18 | 19 | 20 | Layout content parts 21 | ==================== 22 | 23 | - ``default`` - The main content of the mapbuf 24 | 25 | 26 | Inheritance diagram 27 | =================== 28 | 29 | .. inheritance-diagram:: Mapbuf 30 | :parts: 2 31 | 32 | 33 | .. autoclass:: Mapbuf 34 | -------------------------------------------------------------------------------- /doc/elementary/menu.rst: -------------------------------------------------------------------------------- 1 | .. currentmodule:: efl.elementary 2 | 3 | Menu 4 | #### 5 | 6 | .. image:: /images/menu-preview.png 7 | 8 | 9 | Widget description 10 | ================== 11 | 12 | A menu is a list of items displayed above its parent. 13 | 14 | When the menu is showing its parent is darkened. Each item can have a 15 | sub-menu. The menu object can be used to display a menu on a right click 16 | event, in a toolbar, anywhere. 17 | 18 | 19 | Emitted signals 20 | =============== 21 | 22 | - ``clicked`` - the user clicked the empty space in the menu to dismiss. 23 | - ``dismissed`` - the user clicked the empty space in the menu to dismiss (since 1.8) 24 | 25 | 26 | Layout content parts 27 | ==================== 28 | 29 | - ``default`` - A main content of the menu item 30 | 31 | 32 | Layout text parts 33 | ================= 34 | 35 | - ``default`` - label in the menu item 36 | 37 | 38 | Inheritance diagram 39 | =================== 40 | 41 | .. inheritance-diagram:: 42 | Menu 43 | MenuItem 44 | :parts: 2 45 | 46 | 47 | .. autoclass:: Menu 48 | .. autoclass:: MenuItem 49 | -------------------------------------------------------------------------------- /doc/elementary/need.rst: -------------------------------------------------------------------------------- 1 | .. currentmodule:: efl.elementary 2 | 3 | Need 4 | #### 5 | 6 | Description 7 | =========== 8 | 9 | These functions are used for requesting use of optional Elementary modules. 10 | Check their return value for whether the feature is actually supported. 11 | 12 | 13 | .. autofunction:: efl.elementary.need_efreet 14 | .. autofunction:: efl.elementary.need_systray 15 | .. autofunction:: efl.elementary.need_sys_notify 16 | .. autofunction:: efl.elementary.need_e_dbus 17 | .. autofunction:: efl.elementary.need_eldbus 18 | .. autofunction:: efl.elementary.need_elocation 19 | .. autofunction:: efl.elementary.need_ethumb 20 | .. autofunction:: efl.elementary.need_web 21 | -------------------------------------------------------------------------------- /doc/elementary/notify.rst: -------------------------------------------------------------------------------- 1 | .. currentmodule:: efl.elementary 2 | 3 | Notify 4 | ###### 5 | 6 | .. image:: /images/notify-preview.png 7 | 8 | 9 | Widget description 10 | ================== 11 | 12 | Display a container in a particular region of the parent. 13 | 14 | A timeout can be set to automatically hide the notify. This is so that, after 15 | an :py:meth:`~efl.evas.Object.show` on a notify object, if a timeout was set on 16 | it, it will **automatically** get hidden after that time. 17 | 18 | 19 | Emitted signals 20 | =============== 21 | 22 | - ``timeout`` - when timeout happens on notify and it's hidden 23 | - ``block,clicked`` - when a click outside of the notify happens 24 | - ``dismissed`` - When notify is closed as a result of a dismiss (since 1.17) 25 | 26 | 27 | Layout content parts 28 | ==================== 29 | 30 | - ``default`` - The main content of the notify 31 | 32 | 33 | Enumerations 34 | ============ 35 | 36 | .. _ELM_NOTIFY_ALIGN_FILL: 37 | 38 | ELM_NOTIFY_ALIGN_FILL 39 | --------------------- 40 | 41 | .. data:: ELM_NOTIFY_ALIGN_FILL 42 | 43 | Use with :py:attr:`Notify.align` 44 | 45 | .. versionadded:: 1.8 46 | 47 | 48 | Inheritance diagram 49 | =================== 50 | 51 | .. inheritance-diagram:: Notify 52 | :parts: 2 53 | 54 | 55 | .. autoclass:: Notify 56 | -------------------------------------------------------------------------------- /doc/elementary/object_item.rst: -------------------------------------------------------------------------------- 1 | .. currentmodule:: efl.elementary 2 | 3 | Object Item 4 | ########### 5 | 6 | Inheritance diagram 7 | =================== 8 | 9 | .. inheritance-diagram:: ObjectItem 10 | :parts: 2 11 | 12 | 13 | .. autoclass:: ObjectItem 14 | -------------------------------------------------------------------------------- /doc/elementary/panel.rst: -------------------------------------------------------------------------------- 1 | .. currentmodule:: efl.elementary 2 | 3 | Panel 4 | ##### 5 | 6 | .. image:: /images/panel-preview.png 7 | 8 | 9 | Widget description 10 | ================== 11 | 12 | A panel is a type of animated container that contains subobjects. 13 | 14 | It can be expanded or contracted by clicking the button on it's edge. 15 | 16 | 17 | Emitted signals 18 | =============== 19 | 20 | - ``toggled`` - Emitted when the panel has been toggled. (since 1.19) 21 | 22 | 23 | Layout content parts 24 | ==================== 25 | 26 | - ``default`` - A content of the panel 27 | 28 | 29 | Enumerations 30 | ============ 31 | 32 | .. _Elm_Panel_Orient: 33 | 34 | Panel orientation types 35 | ----------------------- 36 | 37 | .. data:: ELM_PANEL_ORIENT_TOP 38 | 39 | Panel (dis)appears from the top 40 | 41 | .. data:: ELM_PANEL_ORIENT_BOTTOM 42 | 43 | Panel (dis)appears from the bottom 44 | 45 | .. data:: ELM_PANEL_ORIENT_LEFT 46 | 47 | Panel (dis)appears from the left 48 | 49 | .. data:: ELM_PANEL_ORIENT_RIGHT 50 | 51 | Panel (dis)appears from the right 52 | 53 | 54 | Inheritance diagram 55 | =================== 56 | 57 | .. inheritance-diagram:: Panel 58 | :parts: 2 59 | 60 | 61 | .. autoclass:: Panel 62 | -------------------------------------------------------------------------------- /doc/elementary/panes.rst: -------------------------------------------------------------------------------- 1 | .. currentmodule:: efl.elementary 2 | 3 | Panes 4 | ##### 5 | 6 | .. image:: /images/panes-preview.png 7 | 8 | 9 | Widget description 10 | ================== 11 | 12 | The panes widget adds a draggable bar between two contents. When 13 | dragged this bar will resize contents' size. 14 | 15 | Panes can be displayed vertically or horizontally, and contents size 16 | proportion can be customized (homogeneous by default). 17 | 18 | 19 | Emitted signals 20 | =============== 21 | 22 | - ``press`` - The panes has been pressed (button wasn't released yet). 23 | - ``unpressed`` - The panes was released after being pressed. 24 | - ``clicked`` - The panes has been clicked. 25 | - ``clicked,double`` - The panes has been double clicked. 26 | 27 | 28 | Layout content parts 29 | ==================== 30 | 31 | - ``left`` - A leftside content of the panes 32 | - ``right`` - A rightside content of the panes 33 | - ``top`` - A top content of the vertical panes 34 | - ``bottom`` - A bottom content of the vertical panes 35 | 36 | If panes are displayed vertically, left content will be displayed on top. 37 | 38 | 39 | Inheritance diagram 40 | =================== 41 | 42 | .. inheritance-diagram:: Panes 43 | :parts: 2 44 | 45 | 46 | .. autoclass:: Panes 47 | -------------------------------------------------------------------------------- /doc/elementary/photo.rst: -------------------------------------------------------------------------------- 1 | .. currentmodule:: efl.elementary 2 | 3 | Photo 4 | ##### 5 | 6 | .. image:: /images/photo-preview.png 7 | 8 | 9 | Widget description 10 | ================== 11 | 12 | An Elementary photo widget is intended for displaying a photo, for 13 | ex., a person's image (contact). 14 | 15 | Simple, yet with a very specific purpose. It has a decorative frame 16 | around the inner image itself, on the default theme. 17 | 18 | This widget relies on an internal :py:class:`~efl.elementary.icon.Icon`, so 19 | that the APIs of these two widgets are similar (drag and drop is also possible 20 | here, for example). 21 | 22 | 23 | Emitted signals 24 | =============== 25 | 26 | - ``clicked`` - This is called when a user has clicked the photo 27 | - ``drag,start`` - One has started dragging the inner image out of the photo's 28 | frame 29 | - ``drag,end`` - One has dropped the dragged image somewhere 30 | 31 | 32 | Inheritance diagram 33 | =================== 34 | 35 | .. inheritance-diagram:: Photo 36 | :parts: 2 37 | 38 | 39 | .. autoclass:: Photo 40 | -------------------------------------------------------------------------------- /doc/elementary/plug.rst: -------------------------------------------------------------------------------- 1 | .. currentmodule:: efl.elementary 2 | 3 | Plug 4 | #### 5 | 6 | 7 | Widget Description 8 | ================== 9 | 10 | An object that allows one to show an image which other process created. 11 | It can be used anywhere like any other elementary widget. 12 | 13 | 14 | Emitted signals 15 | =============== 16 | 17 | - ``clicked`` - the user clicked the image (press/release). 18 | - ``image,deleted`` - the server side was deleted. 19 | - ``image,resized`` - the server side was resized. The ``event_info`` parameter 20 | of the callback will be ``Evas_Coord_Size`` (two integers). 21 | 22 | .. note:: 23 | the event "image,resized" will be sent whenever the server 24 | resized its image and this **always** happen on the first 25 | time. Then it can be used to track when the server-side image 26 | is fully known (client connected to server, retrieved its 27 | image buffer through shared memory and resized the evas 28 | object). 29 | 30 | 31 | Inheritance diagram 32 | =================== 33 | 34 | .. inheritance-diagram:: Plug 35 | :parts: 2 36 | 37 | 38 | .. autoclass:: Plug 39 | -------------------------------------------------------------------------------- /doc/elementary/segment_control.rst: -------------------------------------------------------------------------------- 1 | .. currentmodule:: efl.elementary 2 | 3 | Segment Control 4 | ############### 5 | 6 | .. image:: /images/segmentcontrol-preview.png 7 | 8 | 9 | Widget description 10 | ================== 11 | 12 | Segment control widget is a horizontal control made of multiple 13 | segment items, each segment item functioning similar to discrete two 14 | state button. A segment control groups the items together and provides 15 | compact single button with multiple equal size segments. 16 | 17 | Segment item size is determined by base widget size and the number of 18 | items added. Only one segment item can be at selected state. A segment 19 | item can display combination of Text and any Evas_Object like Images or 20 | other widget. 21 | 22 | 23 | Emitted signals 24 | =============== 25 | 26 | - ``changed`` - When the user clicks on a segment item which is not 27 | previously selected and get selected. The event_info parameter is the 28 | segment item. 29 | 30 | 31 | Layout content parts 32 | ==================== 33 | 34 | - ``icon`` - An icon in a segment control item 35 | 36 | 37 | Layout text parts 38 | ================= 39 | 40 | - ``default`` - Title label in a segment control item 41 | 42 | 43 | Inheritance diagram 44 | =================== 45 | 46 | .. inheritance-diagram:: SegmentControl 47 | :parts: 2 48 | 49 | 50 | .. autoclass:: SegmentControl 51 | .. autoclass:: SegmentControlItem 52 | -------------------------------------------------------------------------------- /doc/elementary/separator.rst: -------------------------------------------------------------------------------- 1 | .. currentmodule:: efl.elementary 2 | 3 | Separator 4 | ######### 5 | 6 | .. image:: /images/separator-preview.png 7 | 8 | 9 | Widget description 10 | ================== 11 | 12 | Separator is a very thin object used to separate other objects. 13 | 14 | A separator can be vertical or horizontal. 15 | 16 | 17 | Inheritance diagram 18 | =================== 19 | 20 | .. inheritance-diagram:: Separator 21 | :parts: 2 22 | 23 | 24 | .. autoclass:: Separator 25 | -------------------------------------------------------------------------------- /doc/elementary/spinner.rst: -------------------------------------------------------------------------------- 1 | .. currentmodule:: efl.elementary 2 | 3 | Spinner 4 | ####### 5 | 6 | .. image:: /images/spinner-preview.png 7 | 8 | 9 | Widget description 10 | ================== 11 | 12 | A spinner is a widget which allows the user to increase or decrease 13 | numeric values using arrow buttons, or edit values directly, clicking 14 | over it and typing the new value. 15 | 16 | By default the spinner will not wrap and has a label 17 | of ``"%.0f"`` (just showing the integer value of the double). 18 | 19 | A spinner has a label that is formatted with floating 20 | point values and thus accepts a printf-style format string, like 21 | ``"%1.2f units"``. 22 | 23 | It also allows specific values to be replaced by pre-defined labels. 24 | 25 | 26 | Emitted signals 27 | =============== 28 | 29 | - ``changed`` - Whenever the spinner value is changed. 30 | - ``delay,changed`` - A short time after the value is changed by 31 | the user. This will be called only when the user stops dragging 32 | for a very short period or when they release their finger/mouse, 33 | so it avoids possibly expensive reactions to the value change. 34 | - ``spinner,drag,start`` - When dragging has started. 35 | - ``spinner,drag,stop`` - When dragging has stopped. 36 | - ``min,reached`` - Called when spinner value reached min (since 1.20) 37 | - ``max,reached`` - Called when spinner value reached max (since 1.20) 38 | 39 | 40 | Available styles 41 | ================ 42 | 43 | - ``default``: Default style 44 | - ``vertical``: up/down buttons at the right side and text left aligned. 45 | 46 | 47 | Inheritance diagram 48 | =================== 49 | 50 | .. inheritance-diagram:: Spinner 51 | :parts: 2 52 | 53 | 54 | .. autoclass:: Spinner 55 | -------------------------------------------------------------------------------- /doc/elementary/table.rst: -------------------------------------------------------------------------------- 1 | .. currentmodule:: efl.elementary 2 | 3 | Table 4 | ##### 5 | 6 | .. image:: /images/table-preview.png 7 | 8 | 9 | Widget description 10 | ================== 11 | 12 | A container widget to arrange other widgets in a table where items can 13 | span multiple columns or rows - even overlap (and then be raised or 14 | lowered accordingly to adjust stacking if they do overlap). 15 | 16 | The row and column count is not fixed. The table widget adjusts itself 17 | when subobjects are added to it dynamically. 18 | 19 | The most common way to use a table is:: 20 | 21 | table = Table(win) 22 | table.show() 23 | table.padding = (space_between_columns, space_between_rows) 24 | table.pack(table_content_object, x_coord, y_coord, colspan, rowspan) 25 | table.pack(table_content_object, x_coord, y_coord, colspan, rowspan) 26 | table.pack(table_content_object, x_coord, y_coord, colspan, rowspan) 27 | 28 | 29 | Inheritance diagram 30 | =================== 31 | 32 | .. inheritance-diagram:: Table 33 | :parts: 2 34 | 35 | 36 | .. autoclass:: Table 37 | .. autofunction:: table_pack_set 38 | .. autofunction:: table_pack_get 39 | -------------------------------------------------------------------------------- /doc/elementary/video.rst: -------------------------------------------------------------------------------- 1 | .. currentmodule:: efl.elementary 2 | 3 | Video 4 | ##### 5 | 6 | 7 | Widget description 8 | ================== 9 | 10 | Display a video by using Emotion. 11 | 12 | It embeds the video inside an Edje object, so you can do some 13 | animation depending on the video state change. It also implements a 14 | resource management policy to remove this burden from the application. 15 | 16 | 17 | Inheritance diagram 18 | =================== 19 | 20 | .. inheritance-diagram:: 21 | Video 22 | Player 23 | :parts: 2 24 | 25 | 26 | .. autoclass:: Video 27 | .. autoclass:: Player 28 | -------------------------------------------------------------------------------- /doc/emotion/class-emotion.rst: -------------------------------------------------------------------------------- 1 | .. currentmodule:: efl.emotion 2 | 3 | :class:`efl.emotion.Emotion` Class 4 | ================================== 5 | 6 | .. autoclass:: efl.emotion.Emotion 7 | -------------------------------------------------------------------------------- /doc/emotion/module-emotion.rst: -------------------------------------------------------------------------------- 1 | 2 | .. automodule:: efl.emotion 3 | :exclude-members: Emotion 4 | -------------------------------------------------------------------------------- /doc/eo/class-eo.rst: -------------------------------------------------------------------------------- 1 | .. currentmodule:: efl.eo 2 | 3 | :class:`efl.eo.Eo` Class 4 | ======================== 5 | 6 | .. autoclass:: efl.eo.Eo 7 | 8 | -------------------------------------------------------------------------------- /doc/eo/eo.rst: -------------------------------------------------------------------------------- 1 | 2 | What is Eo? 3 | -------------- 4 | 5 | Eo is the generic object system of the whole set of libraries. It is 6 | designed to be the base object system for the EFL. 7 | 8 | The :class:`Eo` class is the base for (quite) all the objects in the EFL, in 9 | other words every EFL object inherit from :class:`Eo` and you can use the 10 | methods defined here on every other object. 11 | 12 | In practice you will never directly use the :class:`Eo` class, in fact you 13 | cannot create an instance of the class. As a user you will just use a small 14 | number of methods from derived class, like :meth:`Eo.delete()` or 15 | :meth:`Eo.is_deleted()` 16 | 17 | 18 | API Reference 19 | ------------- 20 | 21 | .. toctree:: 22 | :titlesonly: 23 | 24 | module-eo.rst 25 | -------------------------------------------------------------------------------- /doc/eo/module-eo.rst: -------------------------------------------------------------------------------- 1 | 2 | .. automodule:: efl.eo 3 | :exclude-members: Eo 4 | 5 | -------------------------------------------------------------------------------- /doc/ethumb/class-ethumb.rst: -------------------------------------------------------------------------------- 1 | .. currentmodule:: efl.ethumb 2 | 3 | :class:`efl.ethumb.Ethumb` Class 4 | ================================ 5 | 6 | .. autoclass:: efl.ethumb.Ethumb 7 | -------------------------------------------------------------------------------- /doc/ethumb/class-ethumb_client.rst: -------------------------------------------------------------------------------- 1 | .. currentmodule:: efl.ethumb_client 2 | 3 | :class:`efl.ethumb_client.EthumbClient` Class 4 | ============================================= 5 | 6 | .. autoclass:: efl.ethumb_client.EthumbClient 7 | -------------------------------------------------------------------------------- /doc/ethumb/module-ethumb.rst: -------------------------------------------------------------------------------- 1 | 2 | .. automodule:: efl.ethumb 3 | :exclude-members: Ethumb 4 | -------------------------------------------------------------------------------- /doc/ethumb/module-ethumb_client.rst: -------------------------------------------------------------------------------- 1 | 2 | .. automodule:: efl.ethumb_client 3 | :exclude-members: EthumbClient 4 | -------------------------------------------------------------------------------- /doc/evas/class-box.rst: -------------------------------------------------------------------------------- 1 | .. currentmodule:: efl.evas 2 | 3 | :class:`efl.evas.Box` Class 4 | =========================== 5 | 6 | .. autoclass:: efl.evas.Box 7 | -------------------------------------------------------------------------------- /doc/evas/class-canvas.rst: -------------------------------------------------------------------------------- 1 | .. currentmodule:: efl.evas 2 | 3 | :class:`efl.evas.Canvas` Class 4 | ============================== 5 | 6 | .. autoclass:: efl.evas.Canvas 7 | :inherited-members: 8 | -------------------------------------------------------------------------------- /doc/evas/class-grid.rst: -------------------------------------------------------------------------------- 1 | .. currentmodule:: efl.evas 2 | 3 | :class:`efl.evas.Grid` Class 4 | ============================ 5 | 6 | .. autoclass:: efl.evas.Grid 7 | -------------------------------------------------------------------------------- /doc/evas/class-image.rst: -------------------------------------------------------------------------------- 1 | .. currentmodule:: efl.evas 2 | 3 | :class:`efl.evas.Image` Class 4 | ============================= 5 | 6 | .. autoclass:: efl.evas.Image 7 | 8 | 9 | :class:`efl.evas.FilledImage` Class 10 | =================================== 11 | 12 | .. autoclass:: efl.evas.FilledImage 13 | -------------------------------------------------------------------------------- /doc/evas/class-line.rst: -------------------------------------------------------------------------------- 1 | .. currentmodule:: efl.evas 2 | 3 | :class:`efl.evas.Line` Class 4 | ============================ 5 | 6 | .. autoclass:: efl.evas.Line 7 | -------------------------------------------------------------------------------- /doc/evas/class-map.rst: -------------------------------------------------------------------------------- 1 | .. currentmodule:: efl.evas 2 | 3 | :class:`efl.evas.Map` Class 4 | ============================ 5 | 6 | .. autoclass:: efl.evas.Map 7 | -------------------------------------------------------------------------------- /doc/evas/class-object.rst: -------------------------------------------------------------------------------- 1 | .. currentmodule:: efl.evas 2 | 3 | :class:`efl.evas.Object` Class 4 | ============================== 5 | 6 | .. autoclass:: efl.evas.Object 7 | :inherited-members: 8 | -------------------------------------------------------------------------------- /doc/evas/class-polygon.rst: -------------------------------------------------------------------------------- 1 | .. currentmodule:: efl.evas 2 | 3 | :class:`efl.evas.Polygon` Class 4 | =============================== 5 | 6 | .. autoclass:: efl.evas.Polygon 7 | -------------------------------------------------------------------------------- /doc/evas/class-rect.rst: -------------------------------------------------------------------------------- 1 | .. currentmodule:: efl.evas 2 | 3 | :class:`efl.evas.Rect` Class 4 | ============================ 5 | 6 | .. autoclass:: efl.evas.Rect 7 | -------------------------------------------------------------------------------- /doc/evas/class-rectangle.rst: -------------------------------------------------------------------------------- 1 | .. currentmodule:: efl.evas 2 | 3 | :class:`efl.evas.Rectangle` Class 4 | ================================= 5 | 6 | .. autoclass:: efl.evas.Rectangle 7 | -------------------------------------------------------------------------------- /doc/evas/class-smart.rst: -------------------------------------------------------------------------------- 1 | .. currentmodule:: efl.evas 2 | 3 | :class:`efl.evas.Smart` Class 4 | ========================================== 5 | 6 | .. autoclass:: efl.evas.Smart 7 | 8 | :class:`efl.evas.SmartObject` Class 9 | =================================== 10 | 11 | .. autoclass:: efl.evas.SmartObject 12 | -------------------------------------------------------------------------------- /doc/evas/class-table.rst: -------------------------------------------------------------------------------- 1 | .. currentmodule:: efl.evas 2 | 3 | :class:`efl.evas.Table` Class 4 | ============================= 5 | 6 | .. autoclass:: efl.evas.Table 7 | -------------------------------------------------------------------------------- /doc/evas/class-text.rst: -------------------------------------------------------------------------------- 1 | .. currentmodule:: efl.evas 2 | 3 | :class:`efl.evas.Text` Class 4 | ============================ 5 | 6 | .. autoclass:: efl.evas.Text 7 | -------------------------------------------------------------------------------- /doc/evas/class-textblock.rst: -------------------------------------------------------------------------------- 1 | .. currentmodule:: efl.evas 2 | 3 | :class:`efl.evas.Textblock` Class 4 | ================================= 5 | 6 | .. autoclass:: efl.evas.Textblock 7 | -------------------------------------------------------------------------------- /doc/evas/class-textgrid.rst: -------------------------------------------------------------------------------- 1 | .. currentmodule:: efl.evas 2 | 3 | :class:`efl.evas.Textgrid` Class 4 | ================================ 5 | 6 | .. autoclass:: efl.evas.Textgrid 7 | 8 | .. autoclass:: efl.evas.TextgridCell 9 | -------------------------------------------------------------------------------- /doc/evas/module-evas.rst: -------------------------------------------------------------------------------- 1 | 2 | :mod:`efl.evas` Module 3 | ###################### 4 | 5 | Classes 6 | ======= 7 | 8 | .. toctree:: 9 | 10 | class-canvas.rst 11 | class-object.rst 12 | class-image.rst 13 | class-rectangle.rst 14 | class-line.rst 15 | class-polygon.rst 16 | class-text.rst 17 | class-textblock.rst 18 | class-textgrid.rst 19 | class-box.rst 20 | class-table.rst 21 | class-grid.rst 22 | class-map.rst 23 | class-rect.rst 24 | class-smart.rst 25 | 26 | .. automodule:: efl.evas 27 | :exclude-members: Box, Canvas, FilledImage, Grid, Image, Line, Map, Object, 28 | Polygon, Rect, Rectangle, Table, Text, Textblock, 29 | Textgrid, TextgridCell, SmartObject, Smart 30 | -------------------------------------------------------------------------------- /doc/images/actionslider-preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/images/actionslider-preview.png -------------------------------------------------------------------------------- /doc/images/background-preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/images/background-preview.png -------------------------------------------------------------------------------- /doc/images/box-preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/images/box-preview.png -------------------------------------------------------------------------------- /doc/images/bubble-preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/images/bubble-preview.png -------------------------------------------------------------------------------- /doc/images/button-preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/images/button-preview.png -------------------------------------------------------------------------------- /doc/images/calendar-preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/images/calendar-preview.png -------------------------------------------------------------------------------- /doc/images/check-preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/images/check-preview.png -------------------------------------------------------------------------------- /doc/images/check-toggle-preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/images/check-toggle-preview.png -------------------------------------------------------------------------------- /doc/images/clock-preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/images/clock-preview.png -------------------------------------------------------------------------------- /doc/images/colorselector-preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/images/colorselector-preview.png -------------------------------------------------------------------------------- /doc/images/combobox-preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/images/combobox-preview.png -------------------------------------------------------------------------------- /doc/images/conformant-preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/images/conformant-preview.png -------------------------------------------------------------------------------- /doc/images/ctxpopup-preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/images/ctxpopup-preview.png -------------------------------------------------------------------------------- /doc/images/dayselector-preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/images/dayselector-preview.png -------------------------------------------------------------------------------- /doc/images/diskselector-preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/images/diskselector-preview.png -------------------------------------------------------------------------------- /doc/images/entry-preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/images/entry-preview.png -------------------------------------------------------------------------------- /doc/images/fileselector-button-preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/images/fileselector-button-preview.png -------------------------------------------------------------------------------- /doc/images/fileselector-entry-preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/images/fileselector-entry-preview.png -------------------------------------------------------------------------------- /doc/images/fileselector-preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/images/fileselector-preview.png -------------------------------------------------------------------------------- /doc/images/flip-preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/images/flip-preview.png -------------------------------------------------------------------------------- /doc/images/flipselector-preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/images/flipselector-preview.png -------------------------------------------------------------------------------- /doc/images/frame-preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/images/frame-preview.png -------------------------------------------------------------------------------- /doc/images/gengrid-preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/images/gengrid-preview.png -------------------------------------------------------------------------------- /doc/images/genlist-preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/images/genlist-preview.png -------------------------------------------------------------------------------- /doc/images/gesturelayer-preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/images/gesturelayer-preview.png -------------------------------------------------------------------------------- /doc/images/grid-preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/images/grid-preview.png -------------------------------------------------------------------------------- /doc/images/hover-preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/images/hover-preview.png -------------------------------------------------------------------------------- /doc/images/hoversel-preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/images/hoversel-preview.png -------------------------------------------------------------------------------- /doc/images/icon-preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/images/icon-preview.png -------------------------------------------------------------------------------- /doc/images/image-preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/images/image-preview.png -------------------------------------------------------------------------------- /doc/images/index-preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/images/index-preview.png -------------------------------------------------------------------------------- /doc/images/innerwindow-preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/images/innerwindow-preview.png -------------------------------------------------------------------------------- /doc/images/label-preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/images/label-preview.png -------------------------------------------------------------------------------- /doc/images/layout-preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/images/layout-preview.png -------------------------------------------------------------------------------- /doc/images/list-preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/images/list-preview.png -------------------------------------------------------------------------------- /doc/images/logo.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/images/logo.ico -------------------------------------------------------------------------------- /doc/images/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/images/logo.png -------------------------------------------------------------------------------- /doc/images/logo_plain.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/images/logo_plain.png -------------------------------------------------------------------------------- /doc/images/map-preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/images/map-preview.png -------------------------------------------------------------------------------- /doc/images/mapbuf-preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/images/mapbuf-preview.png -------------------------------------------------------------------------------- /doc/images/menu-preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/images/menu-preview.png -------------------------------------------------------------------------------- /doc/images/multibuttonentry-preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/images/multibuttonentry-preview.png -------------------------------------------------------------------------------- /doc/images/naviframe-preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/images/naviframe-preview.png -------------------------------------------------------------------------------- /doc/images/notify-preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/images/notify-preview.png -------------------------------------------------------------------------------- /doc/images/panel-preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/images/panel-preview.png -------------------------------------------------------------------------------- /doc/images/panes-preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/images/panes-preview.png -------------------------------------------------------------------------------- /doc/images/photo-preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/images/photo-preview.png -------------------------------------------------------------------------------- /doc/images/popup-preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/images/popup-preview.png -------------------------------------------------------------------------------- /doc/images/progressbar-preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/images/progressbar-preview.png -------------------------------------------------------------------------------- /doc/images/radio-preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/images/radio-preview.png -------------------------------------------------------------------------------- /doc/images/scroller-preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/images/scroller-preview.png -------------------------------------------------------------------------------- /doc/images/segmentcontrol-preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/images/segmentcontrol-preview.png -------------------------------------------------------------------------------- /doc/images/separator-preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/images/separator-preview.png -------------------------------------------------------------------------------- /doc/images/slider-preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/images/slider-preview.png -------------------------------------------------------------------------------- /doc/images/slideshow-preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/images/slideshow-preview.png -------------------------------------------------------------------------------- /doc/images/spinner-preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/images/spinner-preview.png -------------------------------------------------------------------------------- /doc/images/table-preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/images/table-preview.png -------------------------------------------------------------------------------- /doc/images/thumb-preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/images/thumb-preview.png -------------------------------------------------------------------------------- /doc/images/toolbar-preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/images/toolbar-preview.png -------------------------------------------------------------------------------- /doc/index.rst: -------------------------------------------------------------------------------- 1 | 2 | Python-EFL 3 | ##################################################################### 4 | 5 | 6 | EFL 7 | === 8 | 9 | .. toctree:: efl.rst 10 | 11 | 12 | EO 13 | == 14 | 15 | .. toctree:: eo/eo.rst 16 | :titlesonly: 17 | 18 | 19 | Ecore 20 | ===== 21 | 22 | .. toctree:: ecore/ecore.rst 23 | :titlesonly: 24 | 25 | Evas 26 | ==== 27 | 28 | .. toctree:: evas/evas.rst 29 | :titlesonly: 30 | 31 | 32 | Ethumb 33 | ====== 34 | 35 | .. toctree:: ethumb/ethumb.rst 36 | :titlesonly: 37 | 38 | 39 | Edje 40 | ==== 41 | 42 | .. toctree:: edje/edje.rst 43 | :titlesonly: 44 | 45 | 46 | Emotion 47 | ======= 48 | 49 | .. toctree:: emotion/emotion.rst 50 | :titlesonly: 51 | 52 | 53 | Elementary 54 | ========== 55 | 56 | .. toctree:: elementary/elementary.rst 57 | :maxdepth: 3 58 | 59 | 60 | DBus integration 61 | ================ 62 | 63 | .. toctree:: dbus/dbus 64 | 65 | 66 | Tutorials 67 | ========= 68 | 69 | .. toctree:: 70 | tutorials/01-window.rst 71 | tutorials/02-sizehints.rst 72 | 73 | 74 | Acknowledgements 75 | ================ 76 | 77 | :Copyright: 78 | 2008-2022 The Python-EFL community (see AUTHORS) 79 | 80 | :License: 81 | Python Bindings for EFL are licensed LGPL-3 (see COPYING) 82 | 83 | :Contact: 84 | `Enlightenment developer mailing list `_ 85 | 86 | 87 | Indices and tables 88 | ================== 89 | 90 | * :ref:`genindex` 91 | * :ref:`modindex` 92 | * :ref:`search` 93 | 94 | -------------------------------------------------------------------------------- /doc/themes/efldoc/static/footer_background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/themes/efldoc/static/footer_background.png -------------------------------------------------------------------------------- /doc/themes/efldoc/static/header_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/themes/efldoc/static/header_logo.png -------------------------------------------------------------------------------- /doc/themes/efldoc/static/header_menu_background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/themes/efldoc/static/header_menu_background.png -------------------------------------------------------------------------------- /doc/themes/efldoc/static/header_menu_background_last.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/themes/efldoc/static/header_menu_background_last.png -------------------------------------------------------------------------------- /doc/themes/efldoc/static/header_menu_current_background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/themes/efldoc/static/header_menu_current_background.png -------------------------------------------------------------------------------- /doc/themes/efldoc/static/headerbg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/themes/efldoc/static/headerbg.png -------------------------------------------------------------------------------- /doc/themes/efldoc/static/hilight_background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/themes/efldoc/static/hilight_background.png -------------------------------------------------------------------------------- /doc/themes/efldoc/static/listitem.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/themes/efldoc/static/listitem.png -------------------------------------------------------------------------------- /doc/themes/efldoc/static/rel_background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/themes/efldoc/static/rel_background.png -------------------------------------------------------------------------------- /doc/themes/efldoc/static/sphinxheader.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/themes/efldoc/static/sphinxheader.png -------------------------------------------------------------------------------- /doc/themes/efldoc/theme.conf: -------------------------------------------------------------------------------- 1 | [theme] 2 | inherit = basic 3 | stylesheet = efl.css 4 | pygments_style = monokai 5 | -------------------------------------------------------------------------------- /doc/themes/sphinx13/static/bodybg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/themes/sphinx13/static/bodybg.png -------------------------------------------------------------------------------- /doc/themes/sphinx13/static/footerbg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/themes/sphinx13/static/footerbg.png -------------------------------------------------------------------------------- /doc/themes/sphinx13/static/headerbg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/themes/sphinx13/static/headerbg.png -------------------------------------------------------------------------------- /doc/themes/sphinx13/static/listitem.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/themes/sphinx13/static/listitem.png -------------------------------------------------------------------------------- /doc/themes/sphinx13/static/relbg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/themes/sphinx13/static/relbg.png -------------------------------------------------------------------------------- /doc/themes/sphinx13/static/sphinxheader.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/doc/themes/sphinx13/static/sphinxheader.png -------------------------------------------------------------------------------- /doc/themes/sphinx13/theme.conf: -------------------------------------------------------------------------------- 1 | [theme] 2 | inherit = basic 3 | stylesheet = sphinx13.css 4 | pygments_style = trac 5 | -------------------------------------------------------------------------------- /doc/tutorials/01-window.rst: -------------------------------------------------------------------------------- 1 | 2 | Tutorial 1 - Window 3 | =================== 4 | 5 | Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent mattis id dui 6 | vitae lobortis. Fusce et tempus ipsum. Nulla non luctus urna. Pellentesque et 7 | luctus diam. Etiam fermentum vestibulum nisi, eget vestibulum turpis aliquet vitae. 8 | Integer interdum enim eu lacus pulvinar malesuada. Ut urna mi, congue non 9 | pellentesque id, varius eget diam. Ut placerat neque sed orci tincidunt consequat. 10 | Cras fermentum fringilla pulvinar. Ut tempor turpis odio. 11 | 12 | Vivamus sed magna tempor orci pharetra dapibus. Phasellus est elit, rhoncus 13 | vitae consequat id, semper at ligula. Sed vitae odio tempor, maximus mi placerat, 14 | faucibus metus. Quisque eget mauris quis ex gravida iaculis finibus vitae arcu. 15 | Morbi non porttitor velit. Nullam pretium ex neque, ac malesuada felis dapibus 16 | sodales. Pellentesque tristique est vel accumsan lobortis. Curabitur viverra 17 | diam sit amet odio tincidunt pellentesque. Vestibulum non eros orci. Aliquam 18 | accumsan convallis ullamcorper. Donec tristique massa nec massa venenatis tempus. 19 | Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos 20 | himenaeos. Aliquam augue nibh, viverra at urna in, lacinia maximus leo. 21 | Nullam vestibulum lobortis elementum. -------------------------------------------------------------------------------- /doc/tutorials/02-sizehints.rst: -------------------------------------------------------------------------------- 1 | 2 | Tutorial 2 - Size Hints 3 | ======================= 4 | 5 | Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent mattis id dui 6 | vitae lobortis. Fusce et tempus ipsum. Nulla non luctus urna. Pellentesque et 7 | luctus diam. Etiam fermentum vestibulum nisi, eget vestibulum turpis aliquet vitae. 8 | Integer interdum enim eu lacus pulvinar malesuada. Ut urna mi, congue non 9 | pellentesque id, varius eget diam. Ut placerat neque sed orci tincidunt consequat. 10 | Cras fermentum fringilla pulvinar. Ut tempor turpis odio. 11 | 12 | Vivamus sed magna tempor orci pharetra dapibus. Phasellus est elit, rhoncus 13 | vitae consequat id, semper at ligula. Sed vitae odio tempor, maximus mi placerat, 14 | faucibus metus. Quisque eget mauris quis ex gravida iaculis finibus vitae arcu. 15 | Morbi non porttitor velit. Nullam pretium ex neque, ac malesuada felis dapibus 16 | sodales. Pellentesque tristique est vel accumsan lobortis. Curabitur viverra 17 | diam sit amet odio tincidunt pellentesque. Vestibulum non eros orci. Aliquam 18 | accumsan convallis ullamcorper. Donec tristique massa nec massa venenatis tempus. 19 | Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos 20 | himenaeos. Aliquam augue nibh, viverra at urna in, lacinia maximus leo. 21 | Nullam vestibulum lobortis elementum. 22 | -------------------------------------------------------------------------------- /efl/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2007-2022 various contributors (see AUTHORS) 2 | # 3 | # This file is part of Python-EFL. 4 | # 5 | # Python-EFL is free software; you can redistribute it and/or 6 | # modify it under the terms of the GNU Lesser General Public 7 | # License as published by the Free Software Foundation; either 8 | # version 3 of the License, or (at your option) any later version. 9 | # 10 | # Python-EFL is distributed in the hope that it will be useful, 11 | # but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 | # Lesser General Public License for more details. 14 | # 15 | # You should have received a copy of the GNU Lesser General Public License 16 | # along with this Python-EFL. If not, see . 17 | 18 | # semver examples: 19 | # development: '1.12.99' ( 1, 12, 99 ) 20 | # pre-release: '1.13.0-beta1' ( 1, 13, 0 ) 21 | # release: '1.13.0' ( 1, 13, 0 ) 22 | 23 | __version__ = '1.26.99' 24 | __version_info__ = (1, 26, 99) 25 | 26 | 27 | __all__ = [ 28 | 'dbus_mainloop', 29 | 'ecore', 30 | 'ecore_con', 31 | 'ecore_input', 32 | 'ecore_x', 33 | 'edje', 34 | 'edje_edit', 35 | 'elementary', 36 | 'emotion', 37 | 'eo', 38 | 'ethumb', 39 | 'evas', 40 | 'utils', 41 | ] 42 | -------------------------------------------------------------------------------- /efl/dbus_mainloop/efl.dbus_mainloop.pxd: -------------------------------------------------------------------------------- 1 | from cpython cimport PyObject 2 | 3 | cdef extern from "dbus/dbus.h": 4 | ctypedef int dbus_bool_t 5 | ctypedef struct DBusConnection 6 | ctypedef struct DBusServer 7 | 8 | cdef extern from "dbus/dbus-python.h": 9 | ctypedef dbus_bool_t (*_dbus_py_conn_setup_func)(DBusConnection *, void *) 10 | ctypedef dbus_bool_t (*_dbus_py_srv_setup_func)(DBusServer *, void *) 11 | ctypedef void (*_dbus_py_free_func)(void *) 12 | PyObject *DBusPyNativeMainLoop_New4(_dbus_py_conn_setup_func conn_func, _dbus_py_srv_setup_func srv_func, _dbus_py_free_func free_func, void *) 13 | int import_dbus_bindings(const char *this_module_name) 14 | 15 | cdef extern from "e_dbus.h": 16 | ctypedef struct E_DBus_Connection 17 | 18 | int e_dbus_init() 19 | int e_dbus_shutdown() 20 | E_DBus_Connection *e_dbus_connection_setup(DBusConnection *conn) 21 | void e_dbus_connection_close(E_DBus_Connection *conn) 22 | 23 | -------------------------------------------------------------------------------- /efl/elementary/access.pxd: -------------------------------------------------------------------------------- 1 | from efl.evas cimport Evas_Object 2 | from object_item cimport Elm_Object_Item 3 | 4 | cdef extern from "Elementary.h": 5 | ctypedef char *(*Elm_Access_Info_Cb)(void *data, Evas_Object *obj) 6 | ctypedef void (*Elm_Access_Activate_Cb)(void *data, Evas_Object *part_obj, Elm_Object_Item *item) 7 | 8 | Evas_Object * elm_access_object_register(Evas_Object *obj, Evas_Object *parent) 9 | void elm_access_info_set(Evas_Object *obj, int type, const char *text) 10 | char * elm_access_info_get(const Evas_Object *obj, int type) 11 | # TODO: void elm_access_info_cb_set(Evas_Object *obj, int type, Elm_Access_Info_Cb func, const void *data) 12 | # TODO: void elm_access_activate_cb_set(Evas_Object *obj, Elm_Access_Activate_Cb func, void *data) 13 | void elm_access_highlight_set(Evas_Object* obj) 14 | 15 | Evas_Object * elm_object_item_access_register(Elm_Object_Item *item) 16 | -------------------------------------------------------------------------------- /efl/elementary/actionslider.py: -------------------------------------------------------------------------------- 1 | from . import Actionslider 2 | 3 | from . import ELM_ACTIONSLIDER_NONE 4 | from . import ELM_ACTIONSLIDER_LEFT 5 | from . import ELM_ACTIONSLIDER_CENTER 6 | from . import ELM_ACTIONSLIDER_RIGHT 7 | from . import ELM_ACTIONSLIDER_ALL 8 | -------------------------------------------------------------------------------- /efl/elementary/actionslider_cdef.pxi: -------------------------------------------------------------------------------- 1 | from efl.elementary.enums cimport Elm_Actionslider_Pos 2 | 3 | cdef extern from "Elementary.h": 4 | Evas_Object *elm_actionslider_add(Evas_Object *parent) 5 | const char *elm_actionslider_selected_label_get(const Evas_Object *obj) 6 | void elm_actionslider_indicator_pos_set(Evas_Object *obj, Elm_Actionslider_Pos pos) 7 | Elm_Actionslider_Pos elm_actionslider_indicator_pos_get(const Evas_Object *obj) 8 | void elm_actionslider_magnet_pos_set(Evas_Object *obj, Elm_Actionslider_Pos pos) 9 | Elm_Actionslider_Pos elm_actionslider_magnet_pos_get(const Evas_Object *obj) 10 | void elm_actionslider_enabled_pos_set(Evas_Object *obj, Elm_Actionslider_Pos pos) 11 | Elm_Actionslider_Pos elm_actionslider_enabled_pos_get(const Evas_Object *obj) 12 | -------------------------------------------------------------------------------- /efl/elementary/background.py: -------------------------------------------------------------------------------- 1 | from . import Background 2 | 3 | from . import ELM_BG_OPTION_CENTER 4 | from . import ELM_BG_OPTION_SCALE 5 | from . import ELM_BG_OPTION_STRETCH 6 | from . import ELM_BG_OPTION_TILE 7 | -------------------------------------------------------------------------------- /efl/elementary/background_cdef.pxi: -------------------------------------------------------------------------------- 1 | from efl.elementary.enums cimport Elm_Bg_Option 2 | 3 | cdef extern from "Elementary.h": 4 | Evas_Object *elm_bg_add(Evas_Object *parent) 5 | Eina_Bool elm_bg_file_set(Evas_Object *obj, const char *file, const char *group) 6 | void elm_bg_file_get(const Evas_Object *obj, const char **file, const char **group) 7 | void elm_bg_option_set(Evas_Object *obj, Elm_Bg_Option option) 8 | Elm_Bg_Option elm_bg_option_get(const Evas_Object *obj) 9 | void elm_bg_color_set(Evas_Object *obj, int r, int g, int b) 10 | void elm_bg_color_get(const Evas_Object *obj, int *r, int *g, int *b) 11 | void elm_bg_load_size_set(Evas_Object *obj, Evas_Coord w, Evas_Coord h) 12 | -------------------------------------------------------------------------------- /efl/elementary/box.py: -------------------------------------------------------------------------------- 1 | from . import Box 2 | 3 | from . import ELM_BOX_LAYOUT_HORIZONTAL 4 | from . import ELM_BOX_LAYOUT_VERTICAL 5 | from . import ELM_BOX_LAYOUT_HOMOGENEOUS_VERTICAL 6 | from . import ELM_BOX_LAYOUT_HOMOGENEOUS_HORIZONTAL 7 | from . import ELM_BOX_LAYOUT_HOMOGENEOUS_MAX_SIZE_HORIZONTAL 8 | from . import ELM_BOX_LAYOUT_HOMOGENEOUS_MAX_SIZE_VERTICAL 9 | from . import ELM_BOX_LAYOUT_FLOW_HORIZONTAL 10 | from . import ELM_BOX_LAYOUT_FLOW_VERTICAL 11 | from . import ELM_BOX_LAYOUT_STACK 12 | -------------------------------------------------------------------------------- /efl/elementary/bubble.py: -------------------------------------------------------------------------------- 1 | from . import Bubble 2 | 3 | from . import ELM_BUBBLE_POS_TOP_LEFT 4 | from . import ELM_BUBBLE_POS_TOP_RIGHT 5 | from . import ELM_BUBBLE_POS_BOTTOM_LEFT 6 | from . import ELM_BUBBLE_POS_BOTTOM_RIGHT 7 | -------------------------------------------------------------------------------- /efl/elementary/bubble_cdef.pxi: -------------------------------------------------------------------------------- 1 | from efl.elementary.enums cimport Elm_Bubble_Pos 2 | 3 | cdef extern from "Elementary.h": 4 | Evas_Object *elm_bubble_add(Evas_Object *parent) 5 | void elm_bubble_pos_set(Evas_Object *obj, Elm_Bubble_Pos pos) 6 | Elm_Bubble_Pos elm_bubble_pos_get(const Evas_Object *obj) 7 | -------------------------------------------------------------------------------- /efl/elementary/button.py: -------------------------------------------------------------------------------- 1 | from . import Button 2 | -------------------------------------------------------------------------------- /efl/elementary/button_cdef.pxi: -------------------------------------------------------------------------------- 1 | cdef extern from "Elementary.h": 2 | 3 | Evas_Object *elm_button_add(Evas_Object *parent) 4 | void elm_button_autorepeat_set(Evas_Object *obj, Eina_Bool on) 5 | Eina_Bool elm_button_autorepeat_get(const Evas_Object *obj) 6 | void elm_button_autorepeat_initial_timeout_set(Evas_Object *obj, double t) 7 | double elm_button_autorepeat_initial_timeout_get(const Evas_Object *obj) 8 | void elm_button_autorepeat_gap_timeout_set(Evas_Object *obj, double t) 9 | double elm_button_autorepeat_gap_timeout_get(const Evas_Object *obj) 10 | -------------------------------------------------------------------------------- /efl/elementary/calendar_elm.py: -------------------------------------------------------------------------------- 1 | from . import Calendar, CalendarMark 2 | 3 | from . import ELM_CALENDAR_UNIQUE 4 | from . import ELM_CALENDAR_DAILY 5 | from . import ELM_CALENDAR_WEEKLY 6 | from . import ELM_CALENDAR_MONTHLY 7 | from . import ELM_CALENDAR_ANNUALLY 8 | from . import ELM_CALENDAR_LAST_DAY_OF_MONTH 9 | from . import ELM_CALENDAR_REVERSE_DAILY 10 | 11 | from . import ELM_CALENDAR_SELECT_MODE_DEFAULT 12 | from . import ELM_CALENDAR_SELECT_MODE_ALWAYS 13 | from . import ELM_CALENDAR_SELECT_MODE_NONE 14 | from . import ELM_CALENDAR_SELECT_MODE_ONDEMAND 15 | 16 | from . import ELM_CALENDAR_SELECTABLE_NONE 17 | from . import ELM_CALENDAR_SELECTABLE_YEAR 18 | from . import ELM_CALENDAR_SELECTABLE_MONTH 19 | from . import ELM_CALENDAR_SELECTABLE_DAY 20 | 21 | from . import ELM_DAY_SUNDAY 22 | from . import ELM_DAY_MONDAY 23 | from . import ELM_DAY_TUESDAY 24 | from . import ELM_DAY_WEDNESDAY 25 | from . import ELM_DAY_THURSDAY 26 | from . import ELM_DAY_FRIDAY 27 | from . import ELM_DAY_SATURDAY 28 | from . import ELM_DAY_LAST 29 | -------------------------------------------------------------------------------- /efl/elementary/check.py: -------------------------------------------------------------------------------- 1 | from . import Check 2 | -------------------------------------------------------------------------------- /efl/elementary/check_cdef.pxi: -------------------------------------------------------------------------------- 1 | cdef extern from "Elementary.h": 2 | Evas_Object *elm_check_add(Evas_Object *parent) 3 | void elm_check_state_set(Evas_Object *obj, Eina_Bool state) 4 | Eina_Bool elm_check_state_get(const Evas_Object *obj) 5 | -------------------------------------------------------------------------------- /efl/elementary/clock.py: -------------------------------------------------------------------------------- 1 | from . import Clock 2 | 3 | from . import ELM_CLOCK_EDIT_DEFAULT 4 | from . import ELM_CLOCK_EDIT_HOUR_DECIMAL 5 | from . import ELM_CLOCK_EDIT_HOUR_UNIT 6 | from . import ELM_CLOCK_EDIT_MIN_DECIMAL 7 | from . import ELM_CLOCK_EDIT_MIN_UNIT 8 | from . import ELM_CLOCK_EDIT_SEC_DECIMAL 9 | from . import ELM_CLOCK_EDIT_SEC_UNIT 10 | from . import ELM_CLOCK_EDIT_ALL 11 | -------------------------------------------------------------------------------- /efl/elementary/clock_cdef.pxi: -------------------------------------------------------------------------------- 1 | from efl.elementary.enums cimport Elm_Clock_Edit_Mode 2 | 3 | cdef extern from "Elementary.h": 4 | Evas_Object *elm_clock_add(Evas_Object *parent) 5 | void elm_clock_time_set(Evas_Object *obj, int hrs, int min, int sec) 6 | void elm_clock_time_get(const Evas_Object *obj, int *hrs, int *min, int *sec) 7 | void elm_clock_edit_set(Evas_Object *obj, Eina_Bool edit) 8 | Eina_Bool elm_clock_edit_get(const Evas_Object *obj) 9 | void elm_clock_edit_mode_set(Evas_Object *obj, Elm_Clock_Edit_Mode mode) 10 | Elm_Clock_Edit_Mode elm_clock_edit_mode_get(const Evas_Object *obj) 11 | void elm_clock_show_am_pm_set(Evas_Object *obj, Eina_Bool am_pm) 12 | Eina_Bool elm_clock_show_am_pm_get(const Evas_Object *obj) 13 | void elm_clock_show_seconds_set(Evas_Object *obj, Eina_Bool seconds) 14 | Eina_Bool elm_clock_show_seconds_get(const Evas_Object *obj) 15 | void elm_clock_first_interval_set(Evas_Object *obj, double interval) 16 | double elm_clock_first_interval_get(const Evas_Object *obj) 17 | Eina_Bool elm_clock_pause_get(const Evas_Object *obj) 18 | void elm_clock_pause_set(Evas_Object *obj, Eina_Bool pause) 19 | -------------------------------------------------------------------------------- /efl/elementary/colorselector.py: -------------------------------------------------------------------------------- 1 | from . import Colorselector, ColorselectorPaletteItem 2 | 3 | from . import ELM_COLORSELECTOR_PALETTE 4 | from . import ELM_COLORSELECTOR_COMPONENTS 5 | from . import ELM_COLORSELECTOR_BOTH 6 | -------------------------------------------------------------------------------- /efl/elementary/colorselector_cdef.pxi: -------------------------------------------------------------------------------- 1 | from efl.elementary.enums cimport Elm_Colorselector_Mode 2 | 3 | cdef extern from "Elementary.h": 4 | Evas_Object * elm_colorselector_add(Evas_Object *parent) 5 | void elm_colorselector_color_set(Evas_Object *obj, int r, int g, int b, int a) 6 | void elm_colorselector_color_get(const Evas_Object *obj, int *r, int *g, int *b, int *a) 7 | void elm_colorselector_mode_set(Evas_Object *obj, Elm_Colorselector_Mode mode) 8 | Elm_Colorselector_Mode elm_colorselector_mode_get(const Evas_Object *obj) 9 | void elm_colorselector_palette_item_color_get(const Elm_Object_Item *it, int *r, int *g, int *b, int *a) 10 | void elm_colorselector_palette_item_color_set(Elm_Object_Item *it, int r, int g, int b, int a) 11 | Elm_Object_Item * elm_colorselector_palette_color_add(Evas_Object *obj, int r, int g, int b, int a) 12 | void elm_colorselector_palette_clear(Evas_Object *obj) 13 | void elm_colorselector_palette_name_set(Evas_Object *obj, const char *palette_name) 14 | const char * elm_colorselector_palette_name_get(const Evas_Object *obj) 15 | const Eina_List * elm_colorselector_palette_items_get(const Evas_Object *obj) 16 | Eina_Bool elm_colorselector_palette_item_selected_get(const Elm_Object_Item *it) 17 | void elm_colorselector_palette_item_selected_set(Elm_Object_Item *it, Eina_Bool selected) 18 | Elm_Object_Item * elm_colorselector_palette_selected_item_get(const Evas_Object *obj) 19 | -------------------------------------------------------------------------------- /efl/elementary/combobox_cdef.pxi: -------------------------------------------------------------------------------- 1 | cdef extern from "Elementary.h": 2 | 3 | ctypedef cEo Elm_Combobox 4 | 5 | Evas_Object * elm_combobox_add(Evas_Object *parent) 6 | Eina_Bool elm_combobox_expanded_get(const Elm_Combobox *obj) 7 | void elm_combobox_hover_begin(Elm_Combobox *obj) 8 | void elm_combobox_hover_end(Elm_Combobox *obj) 9 | 10 | -------------------------------------------------------------------------------- /efl/elementary/conformant.py: -------------------------------------------------------------------------------- 1 | from . import Conformant 2 | -------------------------------------------------------------------------------- /efl/elementary/conformant_cdef.pxi: -------------------------------------------------------------------------------- 1 | cdef extern from "Elementary.h": 2 | Evas_Object *elm_conformant_add(Evas_Object *parent) 3 | -------------------------------------------------------------------------------- /efl/elementary/ctxpopup.py: -------------------------------------------------------------------------------- 1 | from . import Ctxpopup, CtxpopupItem 2 | 3 | from . import ELM_CTXPOPUP_DIRECTION_DOWN 4 | from . import ELM_CTXPOPUP_DIRECTION_RIGHT 5 | from . import ELM_CTXPOPUP_DIRECTION_LEFT 6 | from . import ELM_CTXPOPUP_DIRECTION_UP 7 | from . import ELM_CTXPOPUP_DIRECTION_UNKNOWN 8 | -------------------------------------------------------------------------------- /efl/elementary/datetime_cdef.pxi: -------------------------------------------------------------------------------- 1 | from efl.elementary.enums cimport Elm_Datetime_Field_Type 2 | 3 | cdef extern from "Elementary.h": 4 | Evas_Object * elm_datetime_add(Evas_Object *parent) 5 | const char * elm_datetime_format_get(const Evas_Object *obj) 6 | void elm_datetime_format_set(Evas_Object *obj, const char *fmt) 7 | Eina_Bool elm_datetime_value_max_get(const Evas_Object *obj, tm *maxtime) 8 | Eina_Bool elm_datetime_value_max_set(Evas_Object *obj, tm *maxtime) 9 | Eina_Bool elm_datetime_value_min_get(const Evas_Object *obj, tm *mintime) 10 | Eina_Bool elm_datetime_value_min_set(Evas_Object *obj, tm *mintime) 11 | void elm_datetime_field_limit_get(const Evas_Object *obj, Elm_Datetime_Field_Type fieldtype, int *min, int *max) 12 | void elm_datetime_field_limit_set(Evas_Object *obj, Elm_Datetime_Field_Type fieldtype, int min, int max) 13 | Eina_Bool elm_datetime_value_get(const Evas_Object *obj, tm *currtime) 14 | Eina_Bool elm_datetime_value_set(Evas_Object *obj, tm *newtime) 15 | Eina_Bool elm_datetime_field_visible_get(const Evas_Object *obj, Elm_Datetime_Field_Type fieldtype) 16 | void elm_datetime_field_visible_set(Evas_Object *obj, Elm_Datetime_Field_Type fieldtype, Eina_Bool visible) 17 | -------------------------------------------------------------------------------- /efl/elementary/datetime_elm.py: -------------------------------------------------------------------------------- 1 | from . import Datetime 2 | 3 | from . import ELM_DATETIME_YEAR 4 | from . import ELM_DATETIME_MONTH 5 | from . import ELM_DATETIME_DATE 6 | from . import ELM_DATETIME_HOUR 7 | from . import ELM_DATETIME_MINUTE 8 | from . import ELM_DATETIME_AMPM 9 | -------------------------------------------------------------------------------- /efl/elementary/dayselector.py: -------------------------------------------------------------------------------- 1 | from . import Dayselector 2 | 3 | from . import ELM_DAYSELECTOR_SUN 4 | from . import ELM_DAYSELECTOR_MON 5 | from . import ELM_DAYSELECTOR_TUE 6 | from . import ELM_DAYSELECTOR_WED 7 | from . import ELM_DAYSELECTOR_THU 8 | from . import ELM_DAYSELECTOR_FRI 9 | from . import ELM_DAYSELECTOR_SAT 10 | from . import ELM_DAYSELECTOR_MAX 11 | -------------------------------------------------------------------------------- /efl/elementary/dayselector_cdef.pxi: -------------------------------------------------------------------------------- 1 | from efl.elementary.enums cimport Elm_Dayselector_Day 2 | 3 | cdef extern from "Elementary.h": 4 | Evas_Object *elm_dayselector_add(Evas_Object *parent) 5 | void elm_dayselector_day_selected_set(Evas_Object *obj, Elm_Dayselector_Day day, Eina_Bool selected) 6 | Eina_Bool elm_dayselector_day_selected_get(const Evas_Object *obj, Elm_Dayselector_Day day) 7 | void elm_dayselector_week_start_set(Evas_Object *obj, Elm_Dayselector_Day day) 8 | Elm_Dayselector_Day elm_dayselector_week_start_get(const Evas_Object *obj) 9 | void elm_dayselector_weekend_start_set(Evas_Object *obj, Elm_Dayselector_Day day) 10 | Elm_Dayselector_Day elm_dayselector_weekend_start_get(const Evas_Object *obj) 11 | void elm_dayselector_weekend_length_set(Evas_Object *obj, unsigned int length) 12 | unsigned int elm_dayselector_weekend_length_get(const Evas_Object *obj) 13 | void elm_dayselector_weekdays_names_set(Evas_Object *obj, const char *weekdays[]) 14 | Eina_List *elm_dayselector_weekdays_names_get(const Evas_Object *obj) 15 | -------------------------------------------------------------------------------- /efl/elementary/diskselector.py: -------------------------------------------------------------------------------- 1 | from . import Diskselector, DiskselectorItem 2 | -------------------------------------------------------------------------------- /efl/elementary/diskselector_cdef.pxi: -------------------------------------------------------------------------------- 1 | cdef extern from "Elementary.h": 2 | Evas_Object *elm_diskselector_add(Evas_Object *parent) 3 | void elm_diskselector_round_enabled_set(Evas_Object *obj, Eina_Bool enabled) 4 | Eina_Bool elm_diskselector_round_enabled_get(const Evas_Object *obj) 5 | int elm_diskselector_side_text_max_length_get(const Evas_Object *obj) 6 | void elm_diskselector_side_text_max_length_set(Evas_Object *obj, int len) 7 | void elm_diskselector_display_item_num_set(Evas_Object *obj, int num) 8 | int elm_diskselector_display_item_num_get(const Evas_Object *obj) 9 | void elm_diskselector_clear(Evas_Object *obj) 10 | const Eina_List *elm_diskselector_items_get(const Evas_Object *obj) 11 | Elm_Object_Item *elm_diskselector_item_append(Evas_Object *obj, const char *label, Evas_Object *icon, Evas_Smart_Cb func, void *data) 12 | Elm_Object_Item *elm_diskselector_selected_item_get(const Evas_Object *obj) 13 | void elm_diskselector_item_selected_set(Elm_Object_Item *it, Eina_Bool selected) 14 | Eina_Bool elm_diskselector_item_selected_get(const Elm_Object_Item *it) 15 | Elm_Object_Item *elm_diskselector_first_item_get(const Evas_Object *obj) 16 | Elm_Object_Item *elm_diskselector_last_item_get(const Evas_Object *obj) 17 | Elm_Object_Item *elm_diskselector_item_prev_get(const Elm_Object_Item *it) 18 | Elm_Object_Item *elm_diskselector_item_next_get(const Elm_Object_Item *it) 19 | 20 | -------------------------------------------------------------------------------- /efl/elementary/fileselector.py: -------------------------------------------------------------------------------- 1 | from . import Fileselector 2 | 3 | from . import ELM_FILESELECTOR_LIST 4 | from . import ELM_FILESELECTOR_GRID 5 | 6 | from . import ELM_FILESELECTOR_SORT_BY_FILENAME_ASC 7 | from . import ELM_FILESELECTOR_SORT_BY_FILENAME_DESC 8 | from . import ELM_FILESELECTOR_SORT_BY_TYPE_ASC 9 | from . import ELM_FILESELECTOR_SORT_BY_TYPE_DESC 10 | from . import ELM_FILESELECTOR_SORT_BY_SIZE_ASC 11 | from . import ELM_FILESELECTOR_SORT_BY_SIZE_DESC 12 | from . import ELM_FILESELECTOR_SORT_BY_MODIFIED_ASC 13 | from . import ELM_FILESELECTOR_SORT_BY_MODIFIED_DESC 14 | from . import ELM_FILESELECTOR_SORT_LAST 15 | -------------------------------------------------------------------------------- /efl/elementary/fileselector_button.py: -------------------------------------------------------------------------------- 1 | from . import FileselectorButton 2 | -------------------------------------------------------------------------------- /efl/elementary/fileselector_button_cdef.pxi: -------------------------------------------------------------------------------- 1 | cdef extern from "Elementary.h": 2 | Evas_Object * elm_fileselector_button_add(Evas_Object *parent) 3 | void elm_fileselector_button_window_title_set(Evas_Object *obj, const char *title) 4 | const char * elm_fileselector_button_window_title_get(const Evas_Object *obj) 5 | void elm_fileselector_button_window_size_set(Evas_Object *obj, Evas_Coord width, Evas_Coord height) 6 | void elm_fileselector_button_window_size_get(const Evas_Object *obj, Evas_Coord *width, Evas_Coord *height) 7 | void elm_fileselector_button_inwin_mode_set(Evas_Object *obj, Eina_Bool value) 8 | Eina_Bool elm_fileselector_button_inwin_mode_get(const Evas_Object *obj) 9 | -------------------------------------------------------------------------------- /efl/elementary/fileselector_entry.py: -------------------------------------------------------------------------------- 1 | from . import FileselectorEntry 2 | -------------------------------------------------------------------------------- /efl/elementary/fileselector_entry_cdef.pxi: -------------------------------------------------------------------------------- 1 | cdef extern from "Elementary.h": 2 | Evas_Object * elm_fileselector_entry_add(Evas_Object *parent) 3 | void elm_fileselector_entry_window_title_set(Evas_Object *obj, const char *title) 4 | const char * elm_fileselector_entry_window_title_get(const Evas_Object *obj) 5 | void elm_fileselector_entry_window_size_set(Evas_Object *obj, Evas_Coord width, Evas_Coord height) 6 | void elm_fileselector_entry_window_size_get(const Evas_Object *obj, Evas_Coord *width, Evas_Coord *height) 7 | void elm_fileselector_entry_inwin_mode_set(Evas_Object *obj, Eina_Bool value) 8 | Eina_Bool elm_fileselector_entry_inwin_mode_get(const Evas_Object *obj) 9 | -------------------------------------------------------------------------------- /efl/elementary/flip.py: -------------------------------------------------------------------------------- 1 | from . import Flip 2 | 3 | from . import ELM_FLIP_DIRECTION_UP 4 | from . import ELM_FLIP_DIRECTION_DOWN 5 | from . import ELM_FLIP_DIRECTION_LEFT 6 | from . import ELM_FLIP_DIRECTION_RIGHT 7 | 8 | from . import ELM_FLIP_INTERACTION_NONE 9 | from . import ELM_FLIP_INTERACTION_ROTATE 10 | from . import ELM_FLIP_INTERACTION_CUBE 11 | from . import ELM_FLIP_INTERACTION_PAGE 12 | 13 | from . import ELM_FLIP_ROTATE_Y_CENTER_AXIS 14 | from . import ELM_FLIP_ROTATE_X_CENTER_AXIS 15 | from . import ELM_FLIP_ROTATE_XZ_CENTER_AXIS 16 | from . import ELM_FLIP_ROTATE_YZ_CENTER_AXIS 17 | from . import ELM_FLIP_CUBE_LEFT 18 | from . import ELM_FLIP_CUBE_RIGHT 19 | from . import ELM_FLIP_CUBE_UP 20 | from . import ELM_FLIP_CUBE_DOWN 21 | from . import ELM_FLIP_PAGE_LEFT 22 | from . import ELM_FLIP_PAGE_RIGHT 23 | from . import ELM_FLIP_PAGE_UP 24 | from . import ELM_FLIP_PAGE_DOWN 25 | -------------------------------------------------------------------------------- /efl/elementary/flip_cdef.pxi: -------------------------------------------------------------------------------- 1 | from efl.elementary.enums cimport Elm_Flip_Direction, Elm_Flip_Interaction, \ 2 | Elm_Flip_Mode 3 | 4 | cdef extern from "Elementary.h": 5 | Evas_Object *elm_flip_add(Evas_Object *parent) 6 | Eina_Bool elm_flip_front_visible_get(const Evas_Object *obj) 7 | void elm_flip_perspective_set(Evas_Object *obj, Evas_Coord foc, Evas_Coord x, Evas_Coord y) 8 | void elm_flip_go(Evas_Object *obj, Elm_Flip_Mode mode) 9 | void elm_flip_go_to(Evas_Object *obj, Eina_Bool front, Elm_Flip_Mode mode) 10 | void elm_flip_interaction_set(Evas_Object *obj, Elm_Flip_Interaction mode) 11 | Elm_Flip_Interaction elm_flip_interaction_get(const Evas_Object *obj) 12 | void elm_flip_interaction_direction_enabled_set(Evas_Object *obj, Elm_Flip_Direction dir, Eina_Bool enabled) 13 | Eina_Bool elm_flip_interaction_direction_enabled_get(const Evas_Object *obj, Elm_Flip_Direction dir) 14 | void elm_flip_interaction_direction_hitsize_set(Evas_Object *obj, Elm_Flip_Direction dir, double hitsize) 15 | double elm_flip_interaction_direction_hitsize_get(const Evas_Object *obj, Elm_Flip_Direction dir) 16 | -------------------------------------------------------------------------------- /efl/elementary/flipselector.py: -------------------------------------------------------------------------------- 1 | from . import FlipSelector, FlipSelectorItem 2 | -------------------------------------------------------------------------------- /efl/elementary/flipselector_cdef.pxi: -------------------------------------------------------------------------------- 1 | cdef extern from "Elementary.h": 2 | Evas_Object *elm_flipselector_add(Evas_Object *parent) 3 | void elm_flipselector_flip_next(Evas_Object *obj) 4 | void elm_flipselector_flip_prev(Evas_Object *obj) 5 | Elm_Object_Item *elm_flipselector_item_append(Evas_Object *obj, const char *label, Evas_Smart_Cb func, void *data) 6 | Elm_Object_Item *elm_flipselector_item_prepend(Evas_Object *obj, const char *label, Evas_Smart_Cb func, void *data) 7 | const Eina_List *elm_flipselector_items_get(const Evas_Object *obj) 8 | Elm_Object_Item *elm_flipselector_first_item_get(const Evas_Object *obj) 9 | Elm_Object_Item *elm_flipselector_last_item_get(const Evas_Object *obj) 10 | Elm_Object_Item *elm_flipselector_selected_item_get(const Evas_Object *obj) 11 | void elm_flipselector_item_selected_set(Elm_Object_Item *it, Eina_Bool selected) 12 | Eina_Bool elm_flipselector_item_selected_get(const Elm_Object_Item *it) 13 | Elm_Object_Item *elm_flipselector_item_prev_get(const Elm_Object_Item *it) 14 | Elm_Object_Item *elm_flipselector_item_next_get(const Elm_Object_Item *it) 15 | void elm_flipselector_first_interval_set(Evas_Object *obj, double interval) 16 | double elm_flipselector_first_interval_get(const Evas_Object *obj) 17 | 18 | -------------------------------------------------------------------------------- /efl/elementary/frame.py: -------------------------------------------------------------------------------- 1 | from . import Frame 2 | -------------------------------------------------------------------------------- /efl/elementary/frame_cdef.pxi: -------------------------------------------------------------------------------- 1 | cdef extern from "Elementary.h": 2 | Evas_Object *elm_frame_add(Evas_Object *parent) 3 | void elm_frame_autocollapse_set(Evas_Object *obj, Eina_Bool autocollapse) 4 | Eina_Bool elm_frame_autocollapse_get(const Evas_Object *obj) 5 | void elm_frame_collapse_set(Evas_Object *obj, Eina_Bool collapse) 6 | Eina_Bool elm_frame_collapse_get(const Evas_Object *obj) 7 | void elm_frame_collapse_go(Evas_Object *obj, Eina_Bool collapse) 8 | -------------------------------------------------------------------------------- /efl/elementary/gengrid.py: -------------------------------------------------------------------------------- 1 | from . import Gengrid, GengridItem, GengridItemClass 2 | 3 | # deprecated 4 | from . import ELM_GENLIST_ITEM_SCROLLTO_NONE 5 | from . import ELM_GENLIST_ITEM_SCROLLTO_IN 6 | from . import ELM_GENLIST_ITEM_SCROLLTO_TOP 7 | from . import ELM_GENLIST_ITEM_SCROLLTO_MIDDLE 8 | # 9 | 10 | from . import ELM_GENGRID_ITEM_SCROLLTO_NONE 11 | from . import ELM_GENGRID_ITEM_SCROLLTO_IN 12 | from . import ELM_GENGRID_ITEM_SCROLLTO_TOP 13 | from . import ELM_GENGRID_ITEM_SCROLLTO_MIDDLE 14 | from . import ELM_GENGRID_ITEM_SCROLLTO_BOTTOM 15 | 16 | from . import ELM_OBJECT_SELECT_MODE_DEFAULT 17 | from . import ELM_OBJECT_SELECT_MODE_ALWAYS 18 | from . import ELM_OBJECT_SELECT_MODE_NONE 19 | from . import ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY 20 | from . import ELM_OBJECT_SELECT_MODE_MAX 21 | 22 | from . import ELM_OBJECT_MULTI_SELECT_MODE_DEFAULT 23 | from . import ELM_OBJECT_MULTI_SELECT_MODE_WITH_CONTROL 24 | from . import ELM_OBJECT_MULTI_SELECT_MODE_MAX 25 | 26 | from . import ELM_GENGRID_REORDER_TYPE_NORMAL 27 | from . import ELM_GENGRID_REORDER_TYPE_SWAP 28 | -------------------------------------------------------------------------------- /efl/elementary/genlist.py: -------------------------------------------------------------------------------- 1 | from . import Genlist, GenlistItem, GenlistItemClass 2 | 3 | from . import ELM_GENLIST_ITEM_NONE 4 | from . import ELM_GENLIST_ITEM_TREE 5 | from . import ELM_GENLIST_ITEM_GROUP 6 | from . import ELM_GENLIST_ITEM_MAX 7 | 8 | from . import ELM_GENLIST_ITEM_FIELD_ALL 9 | from . import ELM_GENLIST_ITEM_FIELD_TEXT 10 | from . import ELM_GENLIST_ITEM_FIELD_CONTENT 11 | from . import ELM_GENLIST_ITEM_FIELD_STATE 12 | 13 | from . import ELM_GENLIST_ITEM_SCROLLTO_NONE 14 | from . import ELM_GENLIST_ITEM_SCROLLTO_IN 15 | from . import ELM_GENLIST_ITEM_SCROLLTO_TOP 16 | from . import ELM_GENLIST_ITEM_SCROLLTO_MIDDLE 17 | from . import ELM_GENLIST_ITEM_SCROLLTO_BOTTOM 18 | 19 | from . import ELM_LIST_COMPRESS 20 | from . import ELM_LIST_SCROLL 21 | from . import ELM_LIST_LIMIT 22 | from . import ELM_LIST_EXPAND 23 | 24 | from . import ELM_OBJECT_SELECT_MODE_DEFAULT 25 | from . import ELM_OBJECT_SELECT_MODE_ALWAYS 26 | from . import ELM_OBJECT_SELECT_MODE_NONE 27 | from . import ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY 28 | from . import ELM_OBJECT_SELECT_MODE_MAX 29 | 30 | from . import ELM_SEL_FORMAT_TARGETS 31 | from . import ELM_SEL_FORMAT_NONE 32 | from . import ELM_SEL_FORMAT_TEXT 33 | from . import ELM_SEL_FORMAT_MARKUP 34 | from . import ELM_SEL_FORMAT_IMAGE 35 | from . import ELM_SEL_FORMAT_VCARD 36 | from . import ELM_SEL_FORMAT_HTML 37 | 38 | from . import ELM_SEL_TYPE_PRIMARY 39 | from . import ELM_SEL_TYPE_SECONDARY 40 | from . import ELM_SEL_TYPE_XDND 41 | from . import ELM_SEL_TYPE_CLIPBOARD 42 | -------------------------------------------------------------------------------- /efl/elementary/gesture_layer.py: -------------------------------------------------------------------------------- 1 | from . import GestureLayer 2 | 3 | from . import ELM_GESTURE_STATE_UNDEFINED 4 | from . import ELM_GESTURE_STATE_START 5 | from . import ELM_GESTURE_STATE_MOVE 6 | from . import ELM_GESTURE_STATE_END 7 | from . import ELM_GESTURE_STATE_ABORT 8 | 9 | from . import ELM_GESTURE_FIRST 10 | from . import ELM_GESTURE_N_TAPS 11 | from . import ELM_GESTURE_N_LONG_TAPS 12 | from . import ELM_GESTURE_N_DOUBLE_TAPS 13 | from . import ELM_GESTURE_N_TRIPLE_TAPS 14 | from . import ELM_GESTURE_MOMENTUM 15 | from . import ELM_GESTURE_N_LINES 16 | from . import ELM_GESTURE_N_FLICKS 17 | from . import ELM_GESTURE_ZOOM 18 | from . import ELM_GESTURE_ROTATE 19 | from . import ELM_GESTURE_LAST 20 | -------------------------------------------------------------------------------- /efl/elementary/grid.py: -------------------------------------------------------------------------------- 1 | from . import Grid, grid_pack_set, grid_pack_get 2 | -------------------------------------------------------------------------------- /efl/elementary/grid_cdef.pxi: -------------------------------------------------------------------------------- 1 | cdef extern from "Elementary.h": 2 | Evas_Object *elm_grid_add(Evas_Object *parent) 3 | void elm_grid_size_set(Evas_Object *obj, Evas_Coord w, Evas_Coord h) 4 | void elm_grid_size_get(const Evas_Object *obj, Evas_Coord *w, Evas_Coord *h) 5 | void elm_grid_pack(Evas_Object *obj, Evas_Object *subobj, Evas_Coord x, Evas_Coord y, Evas_Coord w, Evas_Coord h) 6 | void elm_grid_unpack(Evas_Object *obj, Evas_Object *subobj) 7 | void elm_grid_clear(Evas_Object *obj, Eina_Bool clear) 8 | void elm_grid_pack_set(Evas_Object *subobj, Evas_Coord x, Evas_Coord y, Evas_Coord w, Evas_Coord h) 9 | void elm_grid_pack_get(const Evas_Object *subobj, Evas_Coord *x, Evas_Coord *y, Evas_Coord *w, Evas_Coord *h) 10 | Eina_List *elm_grid_children_get(const Evas_Object *obj) 11 | -------------------------------------------------------------------------------- /efl/elementary/hover.py: -------------------------------------------------------------------------------- 1 | from . import Hover 2 | 3 | from . import ELM_HOVER_AXIS_NONE 4 | from . import ELM_HOVER_AXIS_HORIZONTAL 5 | from . import ELM_HOVER_AXIS_VERTICAL 6 | from . import ELM_HOVER_AXIS_BOTH 7 | -------------------------------------------------------------------------------- /efl/elementary/hover_cdef.pxi: -------------------------------------------------------------------------------- 1 | from efl.elementary.enums cimport Elm_Hover_Axis 2 | 3 | cdef extern from "Elementary.h": 4 | Evas_Object *elm_hover_add(Evas_Object *parent) 5 | void elm_hover_target_set(Evas_Object *obj, Evas_Object *target) 6 | Evas_Object *elm_hover_target_get(const Evas_Object *obj) 7 | void elm_hover_parent_set(Evas_Object *obj, Evas_Object *parent) 8 | Evas_Object *elm_hover_parent_get(const Evas_Object *obj) 9 | char *elm_hover_best_content_location_get(const Evas_Object *obj, Elm_Hover_Axis pref_axis) 10 | void elm_hover_dismiss(Evas_Object *obj) 11 | -------------------------------------------------------------------------------- /efl/elementary/hoversel.py: -------------------------------------------------------------------------------- 1 | from . import Hoversel, HoverselItem 2 | 3 | from . import ELM_ICON_NONE 4 | from . import ELM_ICON_FILE 5 | from . import ELM_ICON_STANDARD 6 | -------------------------------------------------------------------------------- /efl/elementary/hoversel_cdef.pxi: -------------------------------------------------------------------------------- 1 | cdef extern from "Elementary.h": 2 | Evas_Object *elm_hoversel_add(Evas_Object *parent) 3 | void elm_hoversel_horizontal_set(Evas_Object *obj, Eina_Bool horizontal) 4 | Eina_Bool elm_hoversel_horizontal_get(const Evas_Object *obj) 5 | void elm_hoversel_hover_parent_set(Evas_Object *obj, Evas_Object *parent) 6 | Evas_Object *elm_hoversel_hover_parent_get(const Evas_Object *obj) 7 | void elm_hoversel_hover_begin(Evas_Object *obj) 8 | void elm_hoversel_hover_end(Evas_Object *obj) 9 | Eina_Bool elm_hoversel_expanded_get(const Evas_Object *obj) 10 | void elm_hoversel_clear(Evas_Object *obj) 11 | Eina_List *elm_hoversel_items_get(const Evas_Object *obj) 12 | Elm_Object_Item *elm_hoversel_item_add(Evas_Object *obj, const char *label, const char *icon_file, Elm_Icon_Type icon_type, Evas_Smart_Cb func, void *data) 13 | void elm_hoversel_item_icon_set(Elm_Object_Item *it, const char *icon_file, const char *icon_group, Elm_Icon_Type icon_type) 14 | void elm_hoversel_item_icon_get(const Elm_Object_Item *it, const char **icon_file, const char **icon_group, Elm_Icon_Type *icon_type) 15 | void elm_hoversel_auto_update_set(Evas_Object *obj, Eina_Bool enable) 16 | Eina_Bool elm_hoversel_auto_update_get(Evas_Object *obj) 17 | -------------------------------------------------------------------------------- /efl/elementary/icon.py: -------------------------------------------------------------------------------- 1 | from . import Icon 2 | 3 | from . import ELM_ICON_LOOKUP_FDO_THEME 4 | from . import ELM_ICON_LOOKUP_THEME_FDO 5 | from . import ELM_ICON_LOOKUP_FDO 6 | from . import ELM_ICON_LOOKUP_THEME 7 | 8 | from . import ELM_ICON_NONE 9 | from . import ELM_ICON_FILE 10 | from . import ELM_ICON_STANDARD 11 | -------------------------------------------------------------------------------- /efl/elementary/icon_cdef.pxi: -------------------------------------------------------------------------------- 1 | from efl.elementary.enums cimport Elm_Icon_Lookup_Order 2 | 3 | cdef extern from "Elementary.h": 4 | Evas_Object * elm_icon_add(Evas_Object *parent) 5 | void elm_icon_thumb_set(Evas_Object *obj, const char *file, const char *group) 6 | Eina_Bool elm_icon_standard_set(Evas_Object *obj, const char *name) 7 | const char * elm_icon_standard_get(const Evas_Object *obj) 8 | void elm_icon_order_lookup_set(Evas_Object *obj, Elm_Icon_Lookup_Order order) 9 | Elm_Icon_Lookup_Order elm_icon_order_lookup_get(const Evas_Object *obj) 10 | -------------------------------------------------------------------------------- /efl/elementary/image.py: -------------------------------------------------------------------------------- 1 | from . import Image 2 | 3 | from . import ELM_IMAGE_ORIENT_NONE 4 | from . import ELM_IMAGE_ORIENT_0 5 | from . import ELM_IMAGE_ROTATE_90 6 | from . import ELM_IMAGE_ROTATE_180 7 | from . import ELM_IMAGE_ROTATE_270 8 | from . import ELM_IMAGE_FLIP_HORIZONTAL 9 | from . import ELM_IMAGE_FLIP_VERTICAL 10 | from . import ELM_IMAGE_FLIP_TRANSPOSE 11 | from . import ELM_IMAGE_FLIP_TRANSVERSE 12 | -------------------------------------------------------------------------------- /efl/elementary/index.py: -------------------------------------------------------------------------------- 1 | from . import Index, IndexItem 2 | -------------------------------------------------------------------------------- /efl/elementary/innerwindow.py: -------------------------------------------------------------------------------- 1 | from . import InnerWindow 2 | -------------------------------------------------------------------------------- /efl/elementary/innerwindow_cdef.pxi: -------------------------------------------------------------------------------- 1 | cdef extern from "Elementary.h": 2 | Evas_Object *elm_win_inwin_add(Evas_Object *obj) 3 | void elm_win_inwin_activate(Evas_Object *obj) 4 | void elm_win_inwin_content_set(Evas_Object *obj, Evas_Object *content) 5 | Evas_Object *elm_win_inwin_content_get(const Evas_Object *obj) 6 | Evas_Object *elm_win_inwin_content_unset(Evas_Object *obj) 7 | -------------------------------------------------------------------------------- /efl/elementary/label.py: -------------------------------------------------------------------------------- 1 | from . import Label 2 | 3 | from . import ELM_WRAP_NONE 4 | from . import ELM_WRAP_CHAR 5 | from . import ELM_WRAP_WORD 6 | from . import ELM_WRAP_MIXED 7 | 8 | from . import ELM_LABEL_SLIDE_MODE_NONE 9 | from . import ELM_LABEL_SLIDE_MODE_AUTO 10 | from . import ELM_LABEL_SLIDE_MODE_ALWAYS 11 | -------------------------------------------------------------------------------- /efl/elementary/label_cdef.pxi: -------------------------------------------------------------------------------- 1 | from efl.elementary.enums cimport Elm_Wrap_Type, Elm_Label_Slide_Mode 2 | 3 | cdef extern from "Elementary.h": 4 | Evas_Object *elm_label_add(Evas_Object *parent) 5 | void elm_label_line_wrap_set(Evas_Object *obj, Elm_Wrap_Type wrap) 6 | Elm_Wrap_Type elm_label_line_wrap_get(const Evas_Object *obj) 7 | void elm_label_wrap_width_set(Evas_Object *obj, Evas_Coord w) 8 | Evas_Coord elm_label_wrap_width_get(const Evas_Object *obj) 9 | void elm_label_ellipsis_set(Evas_Object *obj, Eina_Bool ellipsis) 10 | Eina_Bool elm_label_ellipsis_get(const Evas_Object *obj) 11 | void elm_label_slide_duration_set(Evas_Object *obj, double duration) 12 | double elm_label_slide_duration_get(const Evas_Object *obj) 13 | void elm_label_slide_speed_set(Evas_Object *obj, double speed) 14 | double elm_label_slide_speed_get(const Evas_Object *obj) 15 | # TODO: void elm_label_slide_area_limit_set(Evas_Object *obj, Eina_Bool limit) 16 | void elm_label_slide_mode_set(Evas_Object *obj, Elm_Label_Slide_Mode mode) 17 | Elm_Label_Slide_Mode elm_label_slide_mode_get(const Evas_Object *obj) 18 | void elm_label_slide_go(Evas_Object *obj) 19 | -------------------------------------------------------------------------------- /efl/elementary/layout.py: -------------------------------------------------------------------------------- 1 | from . import Layout 2 | -------------------------------------------------------------------------------- /efl/elementary/list.py: -------------------------------------------------------------------------------- 1 | from . import List, ListItem 2 | 3 | from . import ELM_LIST_COMPRESS 4 | from . import ELM_LIST_SCROLL 5 | from . import ELM_LIST_LIMIT 6 | from . import ELM_LIST_EXPAND 7 | 8 | from . import ELM_OBJECT_SELECT_MODE_DEFAULT 9 | from . import ELM_OBJECT_SELECT_MODE_ALWAYS 10 | from . import ELM_OBJECT_SELECT_MODE_NONE 11 | from . import ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY 12 | from . import ELM_OBJECT_SELECT_MODE_MAX 13 | 14 | from . import ELM_SCROLLER_POLICY_AUTO 15 | from . import ELM_SCROLLER_POLICY_ON 16 | from . import ELM_SCROLLER_POLICY_OFF 17 | -------------------------------------------------------------------------------- /efl/elementary/map.py: -------------------------------------------------------------------------------- 1 | from . import Map, MapRoute, MapName, MapOverlay, MapOverlayClass, \ 2 | MapOverlayBubble, MapOverlayLine, MapOverlayPolygon, MapOverlayCircle, \ 3 | MapOverlayScale, MapOverlayRoute 4 | 5 | from . import ELM_MAP_OVERLAY_TYPE_NONE 6 | from . import ELM_MAP_OVERLAY_TYPE_DEFAULT 7 | from . import ELM_MAP_OVERLAY_TYPE_CLASS 8 | from . import ELM_MAP_OVERLAY_TYPE_GROUP 9 | from . import ELM_MAP_OVERLAY_TYPE_BUBBLE 10 | from . import ELM_MAP_OVERLAY_TYPE_ROUTE 11 | from . import ELM_MAP_OVERLAY_TYPE_LINE 12 | from . import ELM_MAP_OVERLAY_TYPE_POLYGON 13 | from . import ELM_MAP_OVERLAY_TYPE_CIRCLE 14 | from . import ELM_MAP_OVERLAY_TYPE_SCALE 15 | 16 | from . import ELM_MAP_ROUTE_METHOD_FASTEST 17 | from . import ELM_MAP_ROUTE_METHOD_SHORTEST 18 | 19 | from . import ELM_MAP_ROUTE_TYPE_MOTOCAR 20 | from . import ELM_MAP_ROUTE_TYPE_BICYCLE 21 | from . import ELM_MAP_ROUTE_TYPE_FOOT 22 | 23 | from . import ELM_MAP_SOURCE_TYPE_TILE 24 | from . import ELM_MAP_SOURCE_TYPE_ROUTE 25 | from . import ELM_MAP_SOURCE_TYPE_NAME 26 | 27 | from . import ELM_MAP_ZOOM_MODE_MANUAL 28 | from . import ELM_MAP_ZOOM_MODE_AUTO_FIT 29 | from . import ELM_MAP_ZOOM_MODE_AUTO_FILL 30 | -------------------------------------------------------------------------------- /efl/elementary/mapbuf.py: -------------------------------------------------------------------------------- 1 | from . import Mapbuf 2 | -------------------------------------------------------------------------------- /efl/elementary/mapbuf_cdef.pxi: -------------------------------------------------------------------------------- 1 | cdef extern from "Elementary.h": 2 | Evas_Object *elm_mapbuf_add(Evas_Object *parent) 3 | void elm_mapbuf_enabled_set(Evas_Object *obj, Eina_Bool enabled) 4 | Eina_Bool elm_mapbuf_enabled_get(const Evas_Object *obj) 5 | void elm_mapbuf_smooth_set(Evas_Object *obj, Eina_Bool smooth) 6 | Eina_Bool elm_mapbuf_smooth_get(const Evas_Object *obj) 7 | void elm_mapbuf_alpha_set(Evas_Object *obj, Eina_Bool alpha) 8 | Eina_Bool elm_mapbuf_alpha_get(const Evas_Object *obj) 9 | void elm_mapbuf_auto_set(Evas_Object *obj, Eina_Bool on) 10 | Eina_Bool elm_mapbuf_auto_get(const Evas_Object *obj) 11 | void elm_mapbuf_point_color_get(const Evas_Object *obj, int idx, int *r, int *g, int *b, int *a) 12 | void elm_mapbuf_point_color_set(Evas_Object *obj, int idx, int r, int g, int b, int a) 13 | -------------------------------------------------------------------------------- /efl/elementary/menu.py: -------------------------------------------------------------------------------- 1 | from . import Menu, MenuItem, MenuSeparatorItem 2 | -------------------------------------------------------------------------------- /efl/elementary/multibuttonentry.py: -------------------------------------------------------------------------------- 1 | from . import MultiButtonEntry, MultiButtonEntryItem 2 | -------------------------------------------------------------------------------- /efl/elementary/naviframe.py: -------------------------------------------------------------------------------- 1 | from . import Naviframe, NaviframeItem 2 | -------------------------------------------------------------------------------- /efl/elementary/need.py: -------------------------------------------------------------------------------- 1 | from . import need_efreet 2 | from . import need_systray 3 | from . import need_sys_notify 4 | from . import need_eldbus 5 | from . import need_elocation 6 | from . import need_ethumb 7 | from . import need_web 8 | -------------------------------------------------------------------------------- /efl/elementary/need_cdef.pxi: -------------------------------------------------------------------------------- 1 | from efl.elementary.enums cimport Elm_Sys_Notify_Closed_Reason 2 | 3 | cdef extern from "Elementary.h": 4 | ctypedef struct Elm_Sys_Notify_Notification_Closed: 5 | unsigned int id # ID of the notification. 6 | Elm_Sys_Notify_Closed_Reason reason # The Reason the notification was closed. 7 | 8 | ctypedef struct Elm_Sys_Notify_Action_Invoked: 9 | unsigned int id # ID of the notification. 10 | char *action_key # The key of the action invoked. These match the keys sent over in the list of actions. 11 | 12 | Eina_Bool elm_need_efreet() 13 | Eina_Bool elm_need_systray() 14 | Eina_Bool elm_need_sys_notify() 15 | Eina_Bool elm_need_eldbus() 16 | Eina_Bool elm_need_elocation() 17 | Eina_Bool elm_need_ethumb() 18 | Eina_Bool elm_need_web() 19 | -------------------------------------------------------------------------------- /efl/elementary/notify.py: -------------------------------------------------------------------------------- 1 | from . import Notify 2 | 3 | from . import ELM_NOTIFY_ALIGN_FILL 4 | 5 | from . import ELM_NOTIFY_ORIENT_TOP 6 | from . import ELM_NOTIFY_ORIENT_CENTER 7 | from . import ELM_NOTIFY_ORIENT_BOTTOM 8 | from . import ELM_NOTIFY_ORIENT_LEFT 9 | from . import ELM_NOTIFY_ORIENT_RIGHT 10 | from . import ELM_NOTIFY_ORIENT_TOP_LEFT 11 | from . import ELM_NOTIFY_ORIENT_TOP_RIGHT 12 | from . import ELM_NOTIFY_ORIENT_BOTTOM_LEFT 13 | from . import ELM_NOTIFY_ORIENT_BOTTOM_RIGHT 14 | from . import ELM_NOTIFY_ORIENT_LAST 15 | -------------------------------------------------------------------------------- /efl/elementary/notify_cdef.pxi: -------------------------------------------------------------------------------- 1 | cdef extern from "Elementary.h": 2 | Evas_Object *elm_notify_add(Evas_Object *parent) 3 | void elm_notify_parent_set(Evas_Object *obj, Evas_Object *parent) 4 | Evas_Object *elm_notify_parent_get(const Evas_Object *obj) 5 | void elm_notify_orient_set(Evas_Object *obj, int orient) 6 | int elm_notify_orient_get(const Evas_Object *obj) 7 | void elm_notify_timeout_set(Evas_Object *obj, double timeout) 8 | double elm_notify_timeout_get(const Evas_Object *obj) 9 | void elm_notify_allow_events_set(Evas_Object *obj, Eina_Bool repeat) 10 | Eina_Bool elm_notify_allow_events_get(const Evas_Object *obj) 11 | void elm_notify_align_set(Evas_Object *obj, double horizontal, double vertical) 12 | void elm_notify_align_get(const Evas_Object *obj, double *horizontal, double *vertical) 13 | void elm_notify_dismiss(const Evas_Object *obj) 14 | -------------------------------------------------------------------------------- /efl/elementary/object.py: -------------------------------------------------------------------------------- 1 | from . import ELM_FOCUS_PREVIOUS 2 | from . import ELM_FOCUS_NEXT 3 | from . import ELM_FOCUS_UP 4 | from . import ELM_FOCUS_DOWN 5 | from . import ELM_FOCUS_RIGHT 6 | from . import ELM_FOCUS_LEFT 7 | 8 | from . import ELM_FOCUS_MOVE_POLICY_CLICK 9 | from . import ELM_FOCUS_MOVE_POLICY_IN 10 | from . import ELM_FOCUS_MOVE_POLICY_KEY_ONLY 11 | 12 | from . import ELM_FOCUS_AUTOSCROLL_MODE_SHOW 13 | from . import ELM_FOCUS_AUTOSCROLL_MODE_NONE 14 | from . import ELM_FOCUS_AUTOSCROLL_MODE_BRING_IN 15 | 16 | from . import ELM_SEL_TYPE_PRIMARY 17 | from . import ELM_SEL_TYPE_SECONDARY 18 | from . import ELM_SEL_TYPE_XDND 19 | from . import ELM_SEL_TYPE_CLIPBOARD 20 | 21 | from . import ELM_SEL_FORMAT_TARGETS 22 | from . import ELM_SEL_FORMAT_NONE 23 | from . import ELM_SEL_FORMAT_TEXT 24 | from . import ELM_SEL_FORMAT_MARKUP 25 | from . import ELM_SEL_FORMAT_IMAGE 26 | from . import ELM_SEL_FORMAT_VCARD 27 | from . import ELM_SEL_FORMAT_HTML 28 | 29 | from . import ELM_XDND_ACTION_UNKNOWN 30 | from . import ELM_XDND_ACTION_COPY 31 | from . import ELM_XDND_ACTION_MOVE 32 | from . import ELM_XDND_ACTION_PRIVATE 33 | from . import ELM_XDND_ACTION_ASK 34 | from . import ELM_XDND_ACTION_LIST 35 | from . import ELM_XDND_ACTION_LINK 36 | from . import ELM_XDND_ACTION_DESCRIPTION 37 | 38 | from . import ELM_TOOLTIP_ORIENT_NONE 39 | from . import ELM_TOOLTIP_ORIENT_TOP_LEFT 40 | from . import ELM_TOOLTIP_ORIENT_TOP 41 | from . import ELM_TOOLTIP_ORIENT_TOP_RIGHT 42 | from . import ELM_TOOLTIP_ORIENT_LEFT 43 | from . import ELM_TOOLTIP_ORIENT_CENTER 44 | from . import ELM_TOOLTIP_ORIENT_RIGHT 45 | from . import ELM_TOOLTIP_ORIENT_BOTTOM_LEFT 46 | from . import ELM_TOOLTIP_ORIENT_BOTTOM 47 | from . import ELM_TOOLTIP_ORIENT_BOTTOM_RIGHT 48 | from . import ELM_TOOLTIP_ORIENT_LAST 49 | -------------------------------------------------------------------------------- /efl/elementary/panel.py: -------------------------------------------------------------------------------- 1 | from . import Panel 2 | 3 | from . import ELM_PANEL_ORIENT_TOP 4 | from . import ELM_PANEL_ORIENT_BOTTOM 5 | from . import ELM_PANEL_ORIENT_LEFT 6 | from . import ELM_PANEL_ORIENT_RIGHT 7 | -------------------------------------------------------------------------------- /efl/elementary/panel_cdef.pxi: -------------------------------------------------------------------------------- 1 | from efl.elementary.enums cimport Elm_Panel_Orient 2 | 3 | cdef extern from "Elementary.h": 4 | Evas_Object *elm_panel_add(Evas_Object *parent) 5 | void elm_panel_orient_set(Evas_Object *obj, Elm_Panel_Orient orient) 6 | Elm_Panel_Orient elm_panel_orient_get(const Evas_Object *obj) 7 | void elm_panel_hidden_set(Evas_Object *obj, Eina_Bool hidden) 8 | Eina_Bool elm_panel_hidden_get(const Evas_Object *obj) 9 | void elm_panel_toggle(Evas_Object *obj) 10 | void elm_panel_scrollable_set(Evas_Object *obj, Eina_Bool scrollable) 11 | Eina_Bool elm_panel_scrollable_get(const Evas_Object *obj) 12 | void elm_panel_scrollable_content_size_set(Evas_Object *obj, double ratio) 13 | void elm_panel_scrollable_content_size_set(Evas_Object *obj, double ratio) 14 | double elm_panel_scrollable_content_size_get(Evas_Object *obj) 15 | -------------------------------------------------------------------------------- /efl/elementary/panes.py: -------------------------------------------------------------------------------- 1 | from . import Panes 2 | -------------------------------------------------------------------------------- /efl/elementary/panes_cdef.pxi: -------------------------------------------------------------------------------- 1 | cdef extern from "Elementary.h": 2 | Evas_Object *elm_panes_add(Evas_Object *parent) 3 | void elm_panes_fixed_set(Evas_Object *obj, Eina_Bool fixed) 4 | Eina_Bool elm_panes_fixed_get(const Evas_Object *obj) 5 | double elm_panes_content_left_size_get(const Evas_Object *obj) 6 | void elm_panes_content_left_size_set(Evas_Object *obj, double size) 7 | double elm_panes_content_right_size_get(const Evas_Object *obj) 8 | void elm_panes_content_right_size_set(Evas_Object *obj, double size) 9 | void elm_panes_content_left_min_relative_size_set(Evas_Object *obj, double size) 10 | double elm_panes_content_left_min_relative_size_get(const Evas_Object *obj) 11 | void elm_panes_content_right_min_relative_size_set(Evas_Object *obj, double size) 12 | double elm_panes_content_right_min_relative_size_get(const Evas_Object *obj) 13 | void elm_panes_content_left_min_size_set(Evas_Object *obj, Evas_Coord size) 14 | Evas_Coord elm_panes_content_left_min_size_get(const Evas_Object *obj) 15 | void elm_panes_content_right_min_size_set(Evas_Object *obj, Evas_Coord size) 16 | Evas_Coord elm_panes_content_right_min_size_get(const Evas_Object *obj) 17 | void elm_panes_horizontal_set(Evas_Object *obj, Eina_Bool horizontal) 18 | Eina_Bool elm_panes_horizontal_get(const Evas_Object *obj) 19 | -------------------------------------------------------------------------------- /efl/elementary/photo.py: -------------------------------------------------------------------------------- 1 | from . import Photo 2 | -------------------------------------------------------------------------------- /efl/elementary/photo_cdef.pxi: -------------------------------------------------------------------------------- 1 | cdef extern from "Elementary.h": 2 | Evas_Object *elm_photo_add(Evas_Object *parent) 3 | Eina_Bool elm_photo_file_set(Evas_Object *obj, const char *file) 4 | void elm_photo_thumb_set(Evas_Object *obj, const char *file, const char *group) 5 | int elm_photo_size_get(const Evas_Object *obj) 6 | void elm_photo_size_set(Evas_Object *obj, int size) 7 | Eina_Bool elm_photo_fill_inside_get(const Evas_Object *obj) 8 | void elm_photo_fill_inside_set(Evas_Object *obj, Eina_Bool fill) 9 | Eina_Bool elm_photo_editable_get(const Evas_Object *obj) 10 | void elm_photo_editable_set(Evas_Object *obj, Eina_Bool editable) 11 | void elm_photo_aspect_fixed_set(Evas_Object *obj, Eina_Bool fixed) 12 | Eina_Bool elm_photo_aspect_fixed_get(const Evas_Object *obj) 13 | -------------------------------------------------------------------------------- /efl/elementary/photocam.py: -------------------------------------------------------------------------------- 1 | from . import Photocam 2 | 3 | from . import ELM_PHOTOCAM_ZOOM_MODE_MANUAL 4 | from . import ELM_PHOTOCAM_ZOOM_MODE_AUTO_FIT 5 | from . import ELM_PHOTOCAM_ZOOM_MODE_AUTO_FILL 6 | from . import ELM_PHOTOCAM_ZOOM_MODE_AUTO_FIT_IN 7 | from . import ELM_PHOTOCAM_ZOOM_MODE_LAST 8 | -------------------------------------------------------------------------------- /efl/elementary/plug.py: -------------------------------------------------------------------------------- 1 | from . import Plug 2 | -------------------------------------------------------------------------------- /efl/elementary/plug_cdef.pxi: -------------------------------------------------------------------------------- 1 | cdef extern from "Elementary.h": 2 | Evas_Object *elm_plug_add(Evas_Object *parent) 3 | Eina_Bool elm_plug_connect(Evas_Object *obj, const char *svcname, int svcnum, Eina_Bool svcsys) 4 | Evas_Object *elm_plug_image_object_get(const Evas_Object *obj) 5 | -------------------------------------------------------------------------------- /efl/elementary/popup.py: -------------------------------------------------------------------------------- 1 | from . import Popup, PopupItem 2 | 3 | from . import ELM_POPUP_ORIENT_TOP 4 | from . import ELM_POPUP_ORIENT_CENTER 5 | from . import ELM_POPUP_ORIENT_BOTTOM 6 | from . import ELM_POPUP_ORIENT_LEFT 7 | from . import ELM_POPUP_ORIENT_RIGHT 8 | from . import ELM_POPUP_ORIENT_TOP_LEFT 9 | from . import ELM_POPUP_ORIENT_TOP_RIGHT 10 | from . import ELM_POPUP_ORIENT_BOTTOM_LEFT 11 | from . import ELM_POPUP_ORIENT_BOTTOM_RIGHT 12 | from . import ELM_POPUP_ORIENT_LAST 13 | 14 | from . import ELM_WRAP_NONE 15 | from . import ELM_WRAP_CHAR 16 | from . import ELM_WRAP_WORD 17 | from . import ELM_WRAP_MIXED 18 | -------------------------------------------------------------------------------- /efl/elementary/popup_cdef.pxi: -------------------------------------------------------------------------------- 1 | from efl.elementary.enums cimport Elm_Popup_Orient, Elm_Wrap_Type 2 | 3 | cdef extern from "Elementary.h": 4 | Evas_Object *elm_popup_add(Evas_Object *parent) 5 | void elm_popup_align_set(Evas_Object *obj, double horizontal, double vertical) 6 | void elm_popup_align_get(const Evas_Object *obj, double *horizontal, double *vertical) 7 | Elm_Object_Item *elm_popup_item_append(Evas_Object *obj, const char *label, Evas_Object *icon, Evas_Smart_Cb func, void *data) 8 | void elm_popup_content_text_wrap_type_set(Evas_Object *obj, Elm_Wrap_Type wrap) 9 | Elm_Wrap_Type elm_popup_content_text_wrap_type_get(const Evas_Object *obj) 10 | void elm_popup_orient_set(Evas_Object *obj, Elm_Popup_Orient orient) 11 | Elm_Popup_Orient elm_popup_orient_get(const Evas_Object *obj) 12 | void elm_popup_timeout_set(Evas_Object *obj, double timeout) 13 | double elm_popup_timeout_get(const Evas_Object *obj) 14 | void elm_popup_allow_events_set(Evas_Object *obj, Eina_Bool allow) 15 | Eina_Bool elm_popup_allow_events_get(const Evas_Object *obj) 16 | void elm_popup_dismiss(const Evas_Object *obj) 17 | void elm_popup_scrollable_set(Evas_Object *obj, Eina_Bool scroll) 18 | Eina_Bool elm_popup_scrollable_get(const Evas_Object *obj) 19 | -------------------------------------------------------------------------------- /efl/elementary/progressbar.py: -------------------------------------------------------------------------------- 1 | from . import Progressbar 2 | -------------------------------------------------------------------------------- /efl/elementary/progressbar_cdef.pxi: -------------------------------------------------------------------------------- 1 | cdef extern from "Elementary.h": 2 | Evas_Object *elm_progressbar_add(Evas_Object *parent) 3 | void elm_progressbar_pulse_set(Evas_Object *obj, Eina_Bool pulse) 4 | Eina_Bool elm_progressbar_pulse_get(const Evas_Object *obj) 5 | void elm_progressbar_pulse(Evas_Object *obj, Eina_Bool state) 6 | void elm_progressbar_value_set(Evas_Object *obj, double val) 7 | double elm_progressbar_value_get(const Evas_Object *obj) 8 | void elm_progressbar_part_value_set(Evas_Object *obj, const char *part, double val) 9 | double elm_progressbar_part_value_get(const Evas_Object *obj, const char *part) 10 | void elm_progressbar_span_size_set(Evas_Object *obj, Evas_Coord size) 11 | Evas_Coord elm_progressbar_span_size_get(const Evas_Object *obj) 12 | void elm_progressbar_unit_format_set(Evas_Object *obj, const char *format) 13 | const char * elm_progressbar_unit_format_get(const Evas_Object *obj) 14 | void elm_progressbar_horizontal_set(Evas_Object *obj, Eina_Bool horizontal) 15 | Eina_Bool elm_progressbar_horizontal_get(const Evas_Object *obj) 16 | void elm_progressbar_inverted_set(Evas_Object *obj, Eina_Bool inverted) 17 | Eina_Bool elm_progressbar_inverted_get(const Evas_Object *obj) 18 | Eina_Bool elm_progressbar_is_pulsing_get(const Evas_Object *obj) 19 | -------------------------------------------------------------------------------- /efl/elementary/radio.py: -------------------------------------------------------------------------------- 1 | from . import Radio 2 | -------------------------------------------------------------------------------- /efl/elementary/radio_cdef.pxi: -------------------------------------------------------------------------------- 1 | cdef extern from "Elementary.h": 2 | Evas_Object *elm_radio_add(Evas_Object *parent) 3 | void elm_radio_group_add(Evas_Object *obj, Evas_Object *group) 4 | void elm_radio_state_value_set(Evas_Object *obj, int value) 5 | int elm_radio_state_value_get(const Evas_Object *obj) 6 | void elm_radio_value_set(Evas_Object *obj, int value) 7 | int elm_radio_value_get(const Evas_Object *obj) 8 | void elm_radio_value_pointer_set(Evas_Object *obj, int *valuep) 9 | Evas_Object *elm_radio_selected_object_get(const Evas_Object *obj) 10 | -------------------------------------------------------------------------------- /efl/elementary/scroller.py: -------------------------------------------------------------------------------- 1 | from . import Scrollable, Scroller 2 | 3 | from . import ELM_SCROLLER_POLICY_AUTO 4 | from . import ELM_SCROLLER_POLICY_ON 5 | from . import ELM_SCROLLER_POLICY_OFF 6 | 7 | from . import ELM_SCROLLER_SINGLE_DIRECTION_NONE 8 | from . import ELM_SCROLLER_SINGLE_DIRECTION_SOFT 9 | from . import ELM_SCROLLER_SINGLE_DIRECTION_HARD 10 | from . import ELM_SCROLLER_SINGLE_DIRECTION_LAST 11 | 12 | from . import ELM_SCROLLER_MOVEMENT_NO_BLOCK 13 | from . import ELM_SCROLLER_MOVEMENT_BLOCK_VERTICAL 14 | from . import ELM_SCROLLER_MOVEMENT_BLOCK_HORIZONTAL 15 | -------------------------------------------------------------------------------- /efl/elementary/segment_control.py: -------------------------------------------------------------------------------- 1 | from . import SegmentControl, SegmentControlItem 2 | -------------------------------------------------------------------------------- /efl/elementary/segment_control_cdef.pxi: -------------------------------------------------------------------------------- 1 | cdef extern from "Elementary.h": 2 | Evas_Object *elm_segment_control_add(Evas_Object *parent) 3 | Elm_Object_Item *elm_segment_control_item_add(Evas_Object *obj, Evas_Object *icon, const char *label) 4 | Elm_Object_Item *elm_segment_control_item_insert_at(Evas_Object *obj, Evas_Object *icon, const char *label, int index) 5 | void elm_segment_control_item_del_at(Evas_Object *obj, int index) 6 | int elm_segment_control_item_count_get(const Evas_Object *obj) 7 | Elm_Object_Item *elm_segment_control_item_get(const Evas_Object *obj, int index) 8 | const char * elm_segment_control_item_label_get(const Evas_Object *obj, int index) 9 | Evas_Object *elm_segment_control_item_icon_get(const Evas_Object *obj, int index) 10 | int elm_segment_control_item_index_get(const Elm_Object_Item *it) 11 | Evas_Object *elm_segment_control_item_object_get(const Elm_Object_Item *it) 12 | Elm_Object_Item *elm_segment_control_item_selected_get(const Evas_Object *obj) 13 | void elm_segment_control_item_selected_set(Elm_Object_Item *it, Eina_Bool select) 14 | -------------------------------------------------------------------------------- /efl/elementary/separator.py: -------------------------------------------------------------------------------- 1 | from . import Separator 2 | -------------------------------------------------------------------------------- /efl/elementary/separator_cdef.pxi: -------------------------------------------------------------------------------- 1 | cdef extern from "Elementary.h": 2 | Evas_Object *elm_separator_add(Evas_Object *parent) 3 | void elm_separator_horizontal_set(Evas_Object *obj, Eina_Bool horizontal) 4 | Eina_Bool elm_separator_horizontal_get(const Evas_Object *obj) 5 | -------------------------------------------------------------------------------- /efl/elementary/slider.py: -------------------------------------------------------------------------------- 1 | from . import Slider 2 | 3 | from . import ELM_SLIDER_INDICATOR_VISIBLE_MODE_DEFAULT 4 | from . import ELM_SLIDER_INDICATOR_VISIBLE_MODE_ALWAYS 5 | from . import ELM_SLIDER_INDICATOR_VISIBLE_MODE_ON_FOCUS 6 | from . import ELM_SLIDER_INDICATOR_VISIBLE_MODE_NONE 7 | -------------------------------------------------------------------------------- /efl/elementary/slideshow.py: -------------------------------------------------------------------------------- 1 | from . import Slideshow, SlideshowItem, SlideshowItemClass 2 | -------------------------------------------------------------------------------- /efl/elementary/spinner.py: -------------------------------------------------------------------------------- 1 | from . import Spinner 2 | -------------------------------------------------------------------------------- /efl/elementary/table.py: -------------------------------------------------------------------------------- 1 | from . import Table, table_pack_set, table_pack_get 2 | -------------------------------------------------------------------------------- /efl/elementary/table_cdef.pxi: -------------------------------------------------------------------------------- 1 | cdef extern from "Elementary.h": 2 | Evas_Object *elm_table_add(Evas_Object *parent) 3 | void elm_table_homogeneous_set(Evas_Object *obj, Eina_Bool homogeneous) 4 | Eina_Bool elm_table_homogeneous_get(const Evas_Object *obj) 5 | void elm_table_padding_set(Evas_Object *obj, Evas_Coord horizontal, Evas_Coord vertical) 6 | void elm_table_padding_get(const Evas_Object *obj, Evas_Coord *horizontal, Evas_Coord *vertical) 7 | void elm_table_align_set(Evas_Object *obj, double horizontal, double vertical) 8 | void elm_table_align_get(const Evas_Object *obj, double *horizontal, double *vertical) 9 | void elm_table_pack(Evas_Object *obj, Evas_Object *subobj, int x, int y, int w, int h) 10 | void elm_table_unpack(Evas_Object *obj, Evas_Object *subobj) 11 | void elm_table_clear(Evas_Object *obj, Eina_Bool clear) 12 | void elm_table_pack_set(Evas_Object *subobj, int x, int y, int w, int h) 13 | void elm_table_pack_get(const Evas_Object *subobj, int *x, int *y, int *w, int *h) 14 | Evas_Object *elm_table_child_get(const Evas_Object *obj, int col, int row) 15 | -------------------------------------------------------------------------------- /efl/elementary/theme.py: -------------------------------------------------------------------------------- 1 | from . import Theme, theme_list_item_path_get, theme_full_flush, \ 2 | theme_name_available_list, theme_overlay_add, theme_extension_add 3 | -------------------------------------------------------------------------------- /efl/elementary/theme_cdef.pxi: -------------------------------------------------------------------------------- 1 | cdef extern from "Elementary.h": 2 | 3 | ctypedef struct Elm_Theme 4 | 5 | Elm_Theme *elm_theme_new() 6 | void elm_theme_free(Elm_Theme *th) 7 | void elm_theme_copy(Elm_Theme *th, Elm_Theme *thdst) 8 | void elm_theme_ref_set(Elm_Theme *th, Elm_Theme *thref) 9 | Elm_Theme *elm_theme_ref_get(Elm_Theme *th) 10 | Elm_Theme *elm_theme_default_get() 11 | void elm_theme_overlay_add(Elm_Theme *th, const char *item) 12 | void elm_theme_overlay_del(Elm_Theme *th, const char *item) 13 | Eina_List *elm_theme_overlay_list_get(Elm_Theme *th) 14 | void elm_theme_extension_add(Elm_Theme *th, const char *item) 15 | void elm_theme_extension_del(Elm_Theme *th, const char *item) 16 | Eina_List *elm_theme_extension_list_get(Elm_Theme *th) 17 | void elm_theme_set(Elm_Theme *th, const char *theme) 18 | char *elm_theme_get(Elm_Theme *th) 19 | Eina_List *elm_theme_list_get(Elm_Theme *th) 20 | char *elm_theme_list_item_path_get(const char *f, Eina_Bool *in_search_path) 21 | void elm_theme_flush(Elm_Theme *th) 22 | void elm_theme_full_flush() 23 | Eina_List *elm_theme_name_available_list_new() 24 | void elm_theme_name_available_list_free(Eina_List *list) 25 | char *elm_theme_data_get(Elm_Theme *th, const char *key) 26 | Eina_List *elm_theme_group_base_list(Elm_Theme *th, const char *base) 27 | -------------------------------------------------------------------------------- /efl/elementary/thumb.py: -------------------------------------------------------------------------------- 1 | from . import Thumb 2 | 3 | from . import ELM_THUMB_ANIMATION_START 4 | from . import ELM_THUMB_ANIMATION_LOOP 5 | from . import ELM_THUMB_ANIMATION_STOP 6 | 7 | from . import ETHUMB_THUMB_NORMAL 8 | from . import ETHUMB_THUMB_LARGE 9 | 10 | from . import ETHUMB_THUMB_FDO 11 | from . import ETHUMB_THUMB_JPEG 12 | from . import ETHUMB_THUMB_EET 13 | 14 | from . import ETHUMB_THUMB_KEEP_ASPECT 15 | from . import ETHUMB_THUMB_IGNORE_ASPECT 16 | from . import ETHUMB_THUMB_CROP 17 | 18 | from . import ETHUMB_THUMB_ORIENT_NONE 19 | from . import ETHUMB_THUMB_ROTATE_90_CW 20 | from . import ETHUMB_THUMB_ROTATE_180 21 | from . import ETHUMB_THUMB_ROTATE_90_CCW 22 | from . import ETHUMB_THUMB_FLIP_HORIZONTAL 23 | from . import ETHUMB_THUMB_FLIP_VERTICAL 24 | from . import ETHUMB_THUMB_FLIP_TRANSPOSE 25 | from . import ETHUMB_THUMB_FLIP_TRANSVERSE 26 | from . import ETHUMB_THUMB_ORIENT_ORIGINAL 27 | -------------------------------------------------------------------------------- /efl/elementary/toolbar.py: -------------------------------------------------------------------------------- 1 | from . import Toolbar, ToolbarItem, ToolbarItemState 2 | 3 | from . import ELM_ICON_LOOKUP_FDO_THEME 4 | from . import ELM_ICON_LOOKUP_THEME_FDO 5 | from . import ELM_ICON_LOOKUP_FDO 6 | from . import ELM_ICON_LOOKUP_THEME 7 | 8 | from . import ELM_OBJECT_SELECT_MODE_DEFAULT 9 | from . import ELM_OBJECT_SELECT_MODE_ALWAYS 10 | from . import ELM_OBJECT_SELECT_MODE_NONE 11 | from . import ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY 12 | from . import ELM_OBJECT_SELECT_MODE_MAX 13 | 14 | from . import ELM_TOOLBAR_ITEM_SCROLLTO_NONE 15 | from . import ELM_TOOLBAR_ITEM_SCROLLTO_IN 16 | from . import ELM_TOOLBAR_ITEM_SCROLLTO_FIRST 17 | from . import ELM_TOOLBAR_ITEM_SCROLLTO_MIDDLE 18 | from . import ELM_TOOLBAR_ITEM_SCROLLTO_LAST 19 | 20 | from . import ELM_TOOLBAR_SHRINK_NONE 21 | from . import ELM_TOOLBAR_SHRINK_HIDE 22 | from . import ELM_TOOLBAR_SHRINK_SCROLL 23 | from . import ELM_TOOLBAR_SHRINK_MENU 24 | from . import ELM_TOOLBAR_SHRINK_EXPAND 25 | from . import ELM_TOOLBAR_SHRINK_LAST 26 | -------------------------------------------------------------------------------- /efl/elementary/transit.py: -------------------------------------------------------------------------------- 1 | from . import Transit, TransitCustomEffect 2 | 3 | from . import ELM_TRANSIT_EFFECT_FLIP_AXIS_X 4 | from . import ELM_TRANSIT_EFFECT_FLIP_AXIS_Y 5 | 6 | from . import ELM_TRANSIT_EFFECT_WIPE_DIR_LEFT 7 | from . import ELM_TRANSIT_EFFECT_WIPE_DIR_RIGHT 8 | from . import ELM_TRANSIT_EFFECT_WIPE_DIR_UP 9 | from . import ELM_TRANSIT_EFFECT_WIPE_DIR_DOWN 10 | 11 | from . import ELM_TRANSIT_EFFECT_WIPE_TYPE_HIDE 12 | from . import ELM_TRANSIT_EFFECT_WIPE_TYPE_SHOW 13 | 14 | from . import ELM_TRANSIT_TWEEN_MODE_LINEAR 15 | from . import ELM_TRANSIT_TWEEN_MODE_SINUSOIDAL 16 | from . import ELM_TRANSIT_TWEEN_MODE_DECELERATE 17 | from . import ELM_TRANSIT_TWEEN_MODE_ACCELERATE 18 | from . import ELM_TRANSIT_TWEEN_MODE_DIVISOR_INTERP 19 | from . import ELM_TRANSIT_TWEEN_MODE_BOUNCE 20 | from . import ELM_TRANSIT_TWEEN_MODE_SPRING 21 | from . import ELM_TRANSIT_TWEEN_MODE_BEZIER_CURVE 22 | -------------------------------------------------------------------------------- /efl/elementary/video.py: -------------------------------------------------------------------------------- 1 | from . import Video, Player 2 | -------------------------------------------------------------------------------- /efl/elementary/video_cdef.pxi: -------------------------------------------------------------------------------- 1 | cdef extern from "Elementary.h": 2 | Evas_Object *elm_player_add(Evas_Object *parent) 3 | Evas_Object *elm_video_add(Evas_Object *parent) 4 | Eina_Bool elm_video_file_set(Evas_Object *video, const char *filename) 5 | void elm_video_file_get(Evas_Object *video, const char **filename) 6 | Evas_Object *elm_video_emotion_get(const Evas_Object *video) 7 | void elm_video_play(Evas_Object *video) 8 | void elm_video_pause(Evas_Object *video) 9 | void elm_video_stop(Evas_Object *video) 10 | Eina_Bool elm_video_is_playing_get(const Evas_Object *video) 11 | Eina_Bool elm_video_is_seekable_get(const Evas_Object *video) 12 | Eina_Bool elm_video_audio_mute_get(const Evas_Object *video) 13 | void elm_video_audio_mute_set(Evas_Object *video, Eina_Bool mute) 14 | double elm_video_audio_level_get(const Evas_Object *video) 15 | void elm_video_audio_level_set(Evas_Object *video, double volume) 16 | double elm_video_play_position_get(const Evas_Object *video) 17 | void elm_video_play_position_set(Evas_Object *video, double position) 18 | double elm_video_play_length_get(const Evas_Object *video) 19 | void elm_video_remember_position_set(Evas_Object *video, Eina_Bool remember) 20 | Eina_Bool elm_video_remember_position_get(const Evas_Object *video) 21 | const char * elm_video_title_get(const Evas_Object *video) 22 | -------------------------------------------------------------------------------- /efl/elementary/web.py: -------------------------------------------------------------------------------- 1 | from . import Web 2 | 3 | from . import ELM_WEB_WINDOW_FEATURE_TOOLBAR 4 | from . import ELM_WEB_WINDOW_FEATURE_STATUSBAR 5 | from . import ELM_WEB_WINDOW_FEATURE_SCROLLBARS 6 | from . import ELM_WEB_WINDOW_FEATURE_MENUBAR 7 | from . import ELM_WEB_WINDOW_FEATURE_LOCATIONBAR 8 | from . import ELM_WEB_WINDOW_FEATURE_FULLSCREEN 9 | 10 | from . import ELM_WEB_ZOOM_MODE_MANUAL 11 | from . import ELM_WEB_ZOOM_MODE_AUTO_FIT 12 | from . import ELM_WEB_ZOOM_MODE_AUTO_FILL 13 | -------------------------------------------------------------------------------- /efl/utils/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/efl/utils/__init__.py -------------------------------------------------------------------------------- /examples/dbus/test_bt_list_handles.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | 3 | import sys 4 | import dbus 5 | from efl import dbus_mainloop 6 | from efl import ecore 7 | 8 | 9 | def print_remote_handles(adapter, bdaddr): 10 | handles = [hex(int(h)) \ 11 | for h in list(adapter.GetRemoteServiceHandles(bdaddr, ""))] 12 | print("Handles:", handles) 13 | ecore.idler_add(ecore.main_loop_quit) 14 | return False 15 | 16 | 17 | if len(sys.argv) != 2: 18 | print("USAGE: %s " % sys.argv[0]) 19 | sys.exit(1) 20 | 21 | dbus_ml = dbus_mainloop.DBusEcoreMainLoop() 22 | bus = dbus.SystemBus(mainloop=dbus_ml) 23 | 24 | obj = bus.get_object("org.bluez", "/org/bluez/hci0") 25 | adapter = dbus.Interface(obj, "org.bluez.Adapter") 26 | 27 | ecore.idler_add(print_remote_handles, adapter, sys.argv[1]) 28 | ecore.main_loop_begin() 29 | -------------------------------------------------------------------------------- /examples/dbus/test_signal_emitter.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | 3 | import dbus 4 | import dbus.service 5 | from efl import dbus_mainloop 6 | from efl import ecore 7 | 8 | 9 | class TestObject(dbus.service.Object): 10 | def __init__(self, conn, object_path="/com/example/TestService/object"): 11 | dbus.service.Object.__init__(self, conn, object_path) 12 | 13 | @dbus.service.signal("com.example.TestService") 14 | def HelloSignal(self, message): 15 | # The signal is emitted when this method exits 16 | # You can have code here if you wish 17 | pass 18 | 19 | @dbus.service.method("com.example.TestService") 20 | def emitHelloSignal(self): 21 | #you emit signals by calling the signal"s skeleton method 22 | self.HelloSignal("Hello") 23 | return "Signal emitted" 24 | 25 | @dbus.service.method("com.example.TestService", 26 | in_signature="", out_signature="") 27 | def Exit(self): 28 | ecore.idler_add(ecore.main_loop_quit) 29 | 30 | 31 | dbus_ml = dbus_mainloop.DBusEcoreMainLoop() 32 | session_bus = dbus.SessionBus(mainloop=dbus_ml) 33 | 34 | name = dbus.service.BusName("com.example.TestService", session_bus) 35 | obj = TestObject(session_bus) 36 | 37 | ecore.main_loop_begin() 38 | -------------------------------------------------------------------------------- /examples/dbus/test_signal_recipient.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | 3 | import dbus 4 | from efl import dbus_mainloop 5 | from efl import ecore 6 | 7 | 8 | def emit_signal(obj): 9 | obj.emitHelloSignal(dbus_interface="com.example.TestService") 10 | obj.Exit(dbus_interface="com.example.TestService") 11 | 12 | ecore.idler_add(ecore.main_loop_quit) 13 | return False 14 | 15 | 16 | def hello_signal_handler(hello_string): 17 | print("Received signal (by connecting using remote " 18 | "object) and it says: %s" % hello_string) 19 | 20 | 21 | def catchall_hello_signals_handler(hello_string): 22 | print("Received a hello signal and it says: %s" % hello_string) 23 | 24 | 25 | def catchall_testservice_interface_handler(hello_string, dbus_message): 26 | print("com.example.TestService interface says %s " 27 | "when it sent signal %s" % (hello_string, dbus_message.get_member())) 28 | 29 | 30 | dbus_ml = dbus_mainloop.DBusEcoreMainLoop() 31 | bus = dbus.SessionBus(mainloop=dbus_ml) 32 | 33 | obj = bus.get_object("com.example.TestService", 34 | "/com/example/TestService/object") 35 | obj.connect_to_signal("HelloSignal", 36 | hello_signal_handler, 37 | dbus_interface="com.example.TestService", 38 | arg0="Hello") 39 | 40 | bus.add_signal_receiver(catchall_hello_signals_handler, 41 | dbus_interface = "com.example.TestService", 42 | signal_name = "HelloSignal") 43 | bus.add_signal_receiver(catchall_testservice_interface_handler, 44 | dbus_interface = "com.example.TestService", 45 | message_keyword="dbus_message") 46 | 47 | ecore.timer_add(1.0, emit_signal, obj) 48 | ecore.main_loop_begin() 49 | -------------------------------------------------------------------------------- /examples/dbus/test_signal_simple.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | 3 | import dbus 4 | from efl import dbus_mainloop 5 | from efl import ecore 6 | 7 | 8 | def print_name_owner_changed(obj, old, new): 9 | print("Obj = '%s', Old = '%s', New = '%s'" % (obj, old, new)) 10 | 11 | 12 | dbus_ml = dbus_mainloop.DBusEcoreMainLoop() 13 | bus = dbus.SystemBus(mainloop=dbus_ml) 14 | 15 | bus.add_signal_receiver(print_name_owner_changed, "NameOwnerChanged") 16 | ecore.main_loop_begin() 17 | -------------------------------------------------------------------------------- /examples/ecore/con/lookup.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | # encoding: utf-8 3 | 4 | 5 | from efl import ecore 6 | from efl import ecore_con 7 | 8 | 9 | def on_complete(canonname, ip): 10 | print('Lookup completed') 11 | print('Canonname: %s' % canonname) 12 | print('Ip: %s' % ip) 13 | 14 | ecore.main_loop_quit() 15 | 16 | ecore_con.Lookup('example.com', on_complete) 17 | 18 | ecore.main_loop_begin() 19 | -------------------------------------------------------------------------------- /examples/ecore/con/url.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | # encoding: utf-8 3 | 4 | 5 | from efl import ecore 6 | from efl import ecore_con 7 | 8 | def on_data(event): 9 | print("data: " + str(event.data)) 10 | # do something here with the received data 11 | 12 | def on_progress(event): 13 | # print(event) 14 | print("received %d on a total of %d bytes" % ( 15 | event.down_now, event.down_total)) 16 | 17 | def on_complete(event): 18 | # print(event) 19 | print("http result: %d" % event.status) 20 | print("Total received bytes: %d" % event.url.received_bytes) 21 | 22 | u.delete() # don't forget to delete !! 23 | ecore.main_loop_quit() 24 | 25 | u = ecore_con.Url('http://www.example.com', verbose=False) 26 | u.on_data_event_add(on_data) 27 | u.on_progress_event_add(on_progress) 28 | u.on_complete_event_add(on_complete) 29 | u.get() 30 | 31 | ecore.main_loop_begin() 32 | -------------------------------------------------------------------------------- /examples/ecore/x/mplayer_embed.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | 3 | import sys 4 | import efl.ecore 5 | from efl.ecore_x import Window, on_window_configure_add 6 | from subprocess import Popen, PIPE 7 | 8 | 9 | try: 10 | filename = sys.argv[1] 11 | except IndexError: 12 | raise SystemExit("Usage: %s " % sys.argv[0]) 13 | 14 | main_window = Window(w=800, h=600) 15 | main_window.background_color_set(0xffff, 0, 0) 16 | main_window.show() 17 | 18 | sub_window = Window(main_window, 10, 10, 780, 580) 19 | sub_window.background_color_set(0, 0, 0xffff) 20 | sub_window.show() 21 | 22 | cmd = ["/usr/bin/mplayer", "-slave", "-nomouseinput", "-quiet", 23 | "-wid", str(sub_window.xid), filename] 24 | p = Popen(cmd, stdin=PIPE, stdout=PIPE, close_fds=True) 25 | 26 | 27 | def handle_read(fd_handler, file): 28 | line = file.read(1) 29 | r = bool(line and not fd_handler.has_error()) 30 | if not r: 31 | efl.ecore.main_loop_quit() 32 | return r 33 | 34 | 35 | def on_configure(event, main_window, sub_window): 36 | if event.win == main_window: 37 | sub_window.resize(event.w - 20, event.h - 20) 38 | return True 39 | on_window_configure_add(on_configure, main_window, sub_window) 40 | 41 | efl.ecore.fd_handler_add( 42 | p.stdout, efl.ecore_x.ECORE_FD_ALL, handle_read, p.stdout) 43 | efl.ecore.main_loop_begin() 44 | -------------------------------------------------------------------------------- /examples/ecore/x/window_creation.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | 3 | import efl.ecore 4 | from efl.ecore_x import Window, on_window_configure_add 5 | 6 | 7 | # method 1 8 | main_window = Window(w=800, h=600) 9 | main_window.background_color_set(0xffff, 0, 0) 10 | main_window.show() 11 | 12 | sub_window = Window(main_window, 10, 10, 780, 580) 13 | sub_window.background_color_set(0, 0, 0xffff) 14 | sub_window.show() 15 | 16 | 17 | def cb_on_configure(event, main_window, sub_window): 18 | if event.win == main_window: 19 | sub_window.resize(event.w - 20, event.h - 20) 20 | return True 21 | on_window_configure_add(cb_on_configure, main_window, sub_window) 22 | 23 | 24 | # method 2: inheritance 25 | class MyWindow(Window): 26 | def __init__(self, w, h): 27 | Window.__init__(self, w=w, h=h) 28 | self.background_color_set(0xffff, 0, 0) 29 | self.sub_window = Window(self, 10, 10, w - 20, h - 20) 30 | self.sub_window.background_color_set(0, 0, 0xffff) 31 | self.sub_window.show() 32 | on_window_configure_add(self._cb_on_configure) 33 | 34 | def _cb_on_configure(self, event): 35 | if event.win == self: 36 | self.sub_window.resize(event.w - 20, event.h - 20) 37 | return True 38 | 39 | other_window = MyWindow(400, 300) 40 | other_window.show() 41 | 42 | efl.ecore.main_loop_begin() 43 | -------------------------------------------------------------------------------- /examples/elementary/cursors.edj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/examples/elementary/cursors.edj -------------------------------------------------------------------------------- /examples/elementary/images/bubble.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/examples/elementary/images/bubble.png -------------------------------------------------------------------------------- /examples/elementary/images/button_clicked_blue.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/examples/elementary/images/button_clicked_blue.png -------------------------------------------------------------------------------- /examples/elementary/images/button_clicked_red.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/examples/elementary/images/button_clicked_red.png -------------------------------------------------------------------------------- /examples/elementary/images/button_normal_blue.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/examples/elementary/images/button_normal_blue.png -------------------------------------------------------------------------------- /examples/elementary/images/button_normal_red.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/examples/elementary/images/button_normal_red.png -------------------------------------------------------------------------------- /examples/elementary/images/clo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/examples/elementary/images/clo.png -------------------------------------------------------------------------------- /examples/elementary/images/icon_00.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/examples/elementary/images/icon_00.png -------------------------------------------------------------------------------- /examples/elementary/images/icon_01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/examples/elementary/images/icon_01.png -------------------------------------------------------------------------------- /examples/elementary/images/icon_02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/examples/elementary/images/icon_02.png -------------------------------------------------------------------------------- /examples/elementary/images/icon_03.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/examples/elementary/images/icon_03.png -------------------------------------------------------------------------------- /examples/elementary/images/icon_04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/examples/elementary/images/icon_04.png -------------------------------------------------------------------------------- /examples/elementary/images/icon_05.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/examples/elementary/images/icon_05.png -------------------------------------------------------------------------------- /examples/elementary/images/icon_06.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/examples/elementary/images/icon_06.png -------------------------------------------------------------------------------- /examples/elementary/images/icon_07.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/examples/elementary/images/icon_07.png -------------------------------------------------------------------------------- /examples/elementary/images/icon_08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/examples/elementary/images/icon_08.png -------------------------------------------------------------------------------- /examples/elementary/images/icon_09.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/examples/elementary/images/icon_09.png -------------------------------------------------------------------------------- /examples/elementary/images/icon_10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/examples/elementary/images/icon_10.png -------------------------------------------------------------------------------- /examples/elementary/images/icon_11.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/examples/elementary/images/icon_11.png -------------------------------------------------------------------------------- /examples/elementary/images/icon_12.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/examples/elementary/images/icon_12.png -------------------------------------------------------------------------------- /examples/elementary/images/icon_13.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/examples/elementary/images/icon_13.png -------------------------------------------------------------------------------- /examples/elementary/images/icon_14.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/examples/elementary/images/icon_14.png -------------------------------------------------------------------------------- /examples/elementary/images/icon_15.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/examples/elementary/images/icon_15.png -------------------------------------------------------------------------------- /examples/elementary/images/icon_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/examples/elementary/images/icon_16.png -------------------------------------------------------------------------------- /examples/elementary/images/icon_17.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/examples/elementary/images/icon_17.png -------------------------------------------------------------------------------- /examples/elementary/images/icon_18.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/examples/elementary/images/icon_18.png -------------------------------------------------------------------------------- /examples/elementary/images/icon_19.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/examples/elementary/images/icon_19.png -------------------------------------------------------------------------------- /examples/elementary/images/icon_20.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/examples/elementary/images/icon_20.png -------------------------------------------------------------------------------- /examples/elementary/images/icon_21.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/examples/elementary/images/icon_21.png -------------------------------------------------------------------------------- /examples/elementary/images/icon_22.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/examples/elementary/images/icon_22.png -------------------------------------------------------------------------------- /examples/elementary/images/icon_23.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/examples/elementary/images/icon_23.png -------------------------------------------------------------------------------- /examples/elementary/images/icon_right_arrow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/examples/elementary/images/icon_right_arrow.png -------------------------------------------------------------------------------- /examples/elementary/images/insanely_huge_test_image.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/examples/elementary/images/insanely_huge_test_image.jpg -------------------------------------------------------------------------------- /examples/elementary/images/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/examples/elementary/images/logo.png -------------------------------------------------------------------------------- /examples/elementary/images/logo_small.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/examples/elementary/images/logo_small.png -------------------------------------------------------------------------------- /examples/elementary/images/mystrale.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/examples/elementary/images/mystrale.jpg -------------------------------------------------------------------------------- /examples/elementary/images/mystrale_2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/examples/elementary/images/mystrale_2.jpg -------------------------------------------------------------------------------- /examples/elementary/images/panel_01.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/examples/elementary/images/panel_01.jpg -------------------------------------------------------------------------------- /examples/elementary/images/plant_01.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/examples/elementary/images/plant_01.jpg -------------------------------------------------------------------------------- /examples/elementary/images/pol_shadow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/examples/elementary/images/pol_shadow.png -------------------------------------------------------------------------------- /examples/elementary/images/pol_sky.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/examples/elementary/images/pol_sky.png -------------------------------------------------------------------------------- /examples/elementary/images/pol_twofish.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/examples/elementary/images/pol_twofish.png -------------------------------------------------------------------------------- /examples/elementary/images/rock_01.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/examples/elementary/images/rock_01.jpg -------------------------------------------------------------------------------- /examples/elementary/images/rock_02.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/examples/elementary/images/rock_02.jpg -------------------------------------------------------------------------------- /examples/elementary/images/sky.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/examples/elementary/images/sky.jpg -------------------------------------------------------------------------------- /examples/elementary/images/sky_01.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/examples/elementary/images/sky_01.jpg -------------------------------------------------------------------------------- /examples/elementary/images/sky_02.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/examples/elementary/images/sky_02.jpg -------------------------------------------------------------------------------- /examples/elementary/images/sky_03.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/examples/elementary/images/sky_03.jpg -------------------------------------------------------------------------------- /examples/elementary/images/sky_04.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/examples/elementary/images/sky_04.jpg -------------------------------------------------------------------------------- /examples/elementary/images/under.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/examples/elementary/images/under.png -------------------------------------------------------------------------------- /examples/elementary/images/wood_01.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/examples/elementary/images/wood_01.jpg -------------------------------------------------------------------------------- /examples/elementary/postit_ent.edc: -------------------------------------------------------------------------------- 1 | collections { 2 | group { 3 | name: "main"; 4 | images { 5 | // image: "1.png" COMP; 6 | } 7 | parts { 8 | part { 9 | name: "bg"; 10 | type: RECT; 11 | description { 12 | state: "default" 0.0; 13 | color: 247 239 132 255; 14 | } 15 | } 16 | part { 17 | name: "ent"; 18 | type: SWALLOW; 19 | description { 20 | state: "default" 0.0; 21 | } 22 | } 23 | } 24 | } 25 | } 26 | 27 | -------------------------------------------------------------------------------- /examples/elementary/postit_ent.edj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/examples/elementary/postit_ent.edj -------------------------------------------------------------------------------- /examples/elementary/test.edj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/examples/elementary/test.edj -------------------------------------------------------------------------------- /examples/elementary/test_button.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | # encoding: utf-8 3 | 4 | import os 5 | 6 | from efl.evas import EVAS_HINT_EXPAND, EXPAND_BOTH,EVAS_ASPECT_CONTROL_VERTICAL 7 | from efl import elementary 8 | from efl.elementary.window import StandardWindow 9 | from efl.elementary.box import Box 10 | from efl.elementary.frame import Frame 11 | from efl.elementary.icon import Icon 12 | from efl.elementary.button import Button 13 | 14 | 15 | img_path = os.path.join(os.path.dirname(os.path.abspath(__file__)), "images") 16 | ic_file = os.path.join(img_path, "logo_small.png") 17 | 18 | def buttons_clicked(obj): 19 | win = StandardWindow("buttons", "Buttons", focus_highlight_enabled=True, 20 | autodel=True) 21 | if obj is None: 22 | win.callback_delete_request_add(lambda o: elementary.exit()) 23 | 24 | bx = Box(win, size_hint_weight=EXPAND_BOTH) 25 | win.resize_object_add(bx) 26 | bx.show() 27 | 28 | ic = Icon(win, file=ic_file, 29 | size_hint_aspect=(EVAS_ASPECT_CONTROL_VERTICAL, 1, 1)) 30 | ic.show() 31 | bt = Button(win, text="Icon sized to button", content=ic) 32 | bx.pack_end(bt) 33 | bt.show() 34 | 35 | ic = Icon(win, file=ic_file, resizable=(False, False)) 36 | ic.show() 37 | bt = Button(win, text="Icon no scale", content=ic) 38 | bx.pack_end(bt) 39 | bt.show() 40 | 41 | bt = Button(win, text="No icon") 42 | bx.pack_end(bt) 43 | bt.show() 44 | 45 | ic = Icon(win, file=ic_file, resizable=(False, False)) 46 | bt = Button(win, content=ic) 47 | bx.pack_end(bt) 48 | bt.show() 49 | ic.show() 50 | 51 | win.show() 52 | 53 | 54 | if __name__ == "__main__": 55 | 56 | buttons_clicked(None) 57 | 58 | elementary.run() 59 | 60 | -------------------------------------------------------------------------------- /examples/elementary/test_core_evas_objects.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | # encoding: utf-8 3 | 4 | import os 5 | from efl.evas import Rectangle, Line, Text, Polygon, FilledImage, \ 6 | EVAS_IMAGE_ORIENT_180 7 | from efl import elementary 8 | from efl.elementary.window import StandardWindow 9 | 10 | img_path = os.path.join(os.path.dirname(os.path.abspath(__file__)), "images") 11 | ic_file = os.path.join(img_path, "logo.png") 12 | 13 | def events_cb1(rect, event_name): 14 | print(event_name + " No data for event") 15 | 16 | def events_cb2(rect, evtinfo, event_name): 17 | print(event_name + " " + str(evtinfo)) 18 | 19 | def core_evas_objects_clicked(obj, item=None): 20 | win = StandardWindow("evasobjects", "Evas Objects Test", autodel=True) 21 | if obj is None: 22 | win.callback_delete_request_add(lambda o: elementary.exit()) 23 | 24 | rect = Rectangle(win.evas, size=(120,70), color=(0,100,0,100), pos=(70,70)) 25 | rect.show() 26 | 27 | line = Line(win.evas, start=(20,40), end=(200,100), color=(255,0,0,255)) 28 | line.show() 29 | 30 | text = Text(win.evas, text="Evas Text Object", size=(300, 30), color=(0,0,0,255)) 31 | text.font_set("Sans", 16) 32 | text.pos = (40, 20) 33 | text.show() 34 | 35 | poly = Polygon(win.evas, color=(200, 0, 200, 200)) 36 | poly.point_add(10,100) 37 | poly.point_add(100,120) 38 | poly.point_add(20,30) 39 | poly.show() 40 | 41 | image = FilledImage(win.evas, file=ic_file, size=(50,70), pos=(120,70)) 42 | image.orient = EVAS_IMAGE_ORIENT_180 43 | image.show() 44 | 45 | win.resize(320, 320) 46 | win.show() 47 | 48 | 49 | if __name__ == "__main__": 50 | 51 | core_evas_objects_clicked(None) 52 | 53 | elementary.run() 54 | 55 | -------------------------------------------------------------------------------- /examples/elementary/test_evas_textgrid.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | # encoding: utf-8 3 | 4 | from efl import evas 5 | from efl.evas import Textgrid, EVAS_TEXTGRID_PALETTE_STANDARD 6 | from efl import elementary 7 | from efl.elementary.window import StandardWindow 8 | 9 | if "unichr" not in dir(__builtins__): 10 | unichr = chr 11 | 12 | 13 | def evas_textgrid_clicked(obj, item=None): 14 | win = StandardWindow( 15 | "evastextgrid", "Evas Textgrid Test", autodel=True) 16 | if obj is None: 17 | win.callback_delete_request_add(lambda o: elementary.exit()) 18 | 19 | W = 80 20 | H = 26 21 | 22 | tg = Textgrid( 23 | win.evas, size_hint_weight=(1.0, 1.0), size=(W, H), 24 | font=("monospace", 14)) 25 | win.resize_object_add(tg) 26 | tg.palette_set(EVAS_TEXTGRID_PALETTE_STANDARD, 0, 0, 0, 0, 255) 27 | 28 | win.size_step = tg.cell_size 29 | 30 | # XXX: Add 1 to size, else the last row/col won't fit. Unknown reason. 31 | win.size = (W * tg.cell_size[0] + 1, H * tg.cell_size[1] + 1) 32 | 33 | for i in range(H): 34 | ci = i + 1 35 | cv = ci * 9 36 | tg.palette_set( 37 | EVAS_TEXTGRID_PALETTE_STANDARD, ci, cv, cv, cv, 255) 38 | row = tg.cellrow_get(i) 39 | if row is not None: 40 | for cell in row: 41 | cell.codepoint = unichr(1000 + i) 42 | cell.bg = 0 43 | cell.fg = ci 44 | tg.cellrow_set(i, row) 45 | 46 | tg.show() 47 | tg.update_add(0, 0, 80, 26) 48 | 49 | win.show() 50 | 51 | 52 | if __name__ == "__main__": 53 | evas.init() 54 | 55 | evas_textgrid_clicked(None) 56 | 57 | elementary.run() 58 | evas.shutdown() 59 | -------------------------------------------------------------------------------- /examples/elementary/test_external.edj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/examples/elementary/test_external.edj -------------------------------------------------------------------------------- /examples/elementary/test_focus_custom.edj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/examples/elementary/test_focus_custom.edj -------------------------------------------------------------------------------- /examples/elementary/test_image_memfile.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | # encoding: utf-8 3 | 4 | import os 5 | 6 | from efl import elementary as elm 7 | from efl.elementary import StandardWindow, Box, Image 8 | from efl.evas import EXPAND_BOTH, FILL_BOTH 9 | 10 | 11 | script_path = os.path.dirname(os.path.abspath(__file__)) 12 | img_path = os.path.join(script_path, "images") 13 | 14 | 15 | def test_image_memfile(obj, it=None): 16 | win = StandardWindow("image", "Image test", autodel=True, size=(320, 480)) 17 | if obj is None: 18 | win.callback_delete_request_add(lambda o: elm.exit()) 19 | 20 | box = Box(win, size_hint_weight=EXPAND_BOTH, size_hint_align=FILL_BOTH) 21 | win.resize_object_add(box) 22 | box.show() 23 | 24 | im = Image(win, size_hint_weight=EXPAND_BOTH, size_hint_align=FILL_BOTH) 25 | 26 | with open(os.path.join(img_path, "logo.png"), "rb") as fp: 27 | image_data = fp.read() 28 | im.memfile_set(image_data, len(image_data)) 29 | box.pack_end(im) 30 | im.show() 31 | 32 | win.show() 33 | 34 | 35 | if __name__ == "__main__": 36 | elm.policy_set(elm.ELM_POLICY_QUIT, elm.ELM_POLICY_QUIT_LAST_WINDOW_CLOSED) 37 | test_image_memfile(None) 38 | elm.run() 39 | -------------------------------------------------------------------------------- /examples/elementary/test_inwin.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | # encoding: utf-8 3 | 4 | from efl import evas 5 | from efl import elementary 6 | from efl.elementary.window import StandardWindow 7 | from efl.elementary.label import Label 8 | from efl.elementary.innerwindow import InnerWindow 9 | 10 | 11 | def inner_window_clicked(obj): 12 | win = StandardWindow("inner-window", "InnerWindow test", autodel=True, 13 | size=(320, 320)) 14 | if obj is None: 15 | win.callback_delete_request_add(lambda o: elementary.exit()) 16 | 17 | lb = Label(win) 18 | lb.text_set("This is an \"inwin\" - a window in a
" 19 | "window. This is handy for quick popups
" 20 | "you want centered, taking over the window
" 21 | "until dismissed somehow. Unlike hovers they
" 22 | "don't hover over their target.") 23 | 24 | iw = InnerWindow(win, content=lb) 25 | iw.show() 26 | 27 | win.resize(320, 320) 28 | win.show() 29 | 30 | 31 | if __name__ == "__main__": 32 | 33 | inner_window_clicked(None) 34 | 35 | elementary.run() 36 | -------------------------------------------------------------------------------- /examples/elementary/test_layout.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | # encoding: utf-8 3 | 4 | import os 5 | 6 | from efl.evas import EVAS_HINT_EXPAND, EXPAND_BOTH 7 | from efl import elementary 8 | from efl.elementary.window import StandardWindow 9 | from efl.elementary.button import Button 10 | from efl.elementary.layout import Layout 11 | 12 | 13 | script_path = os.path.dirname(os.path.abspath(__file__)) 14 | 15 | def _event(*args, **kargs): 16 | print((args, kargs)) 17 | 18 | def layout_clicked(obj): 19 | win = StandardWindow("layout", "Layout", autodel=True) 20 | win.elm_event_callback_add(_event) 21 | if obj is None: 22 | win.callback_delete_request_add(lambda o: elementary.exit()) 23 | 24 | ly = Layout(win, file=(os.path.join(script_path, "test.edj"), "layout"), 25 | size_hint_weight=EXPAND_BOTH) 26 | win.resize_object_add(ly) 27 | ly.show() 28 | print(ly.file) 29 | print(ly.file_get()) 30 | 31 | bt = Button(win, text="Button 1") 32 | ly.part_content_set("element1", bt) 33 | bt.elm_event_callback_add(_event) 34 | bt.elm_event_callback_del(_event) 35 | bt.show() 36 | 37 | bt = Button(win, text="Button 2") 38 | ly.part_content_set("element2", bt) 39 | bt.show() 40 | 41 | bt = Button(win, text="Button 3") 42 | ly.part_content_set("element3", bt) 43 | bt.show() 44 | 45 | for o in ly.content_swallow_list_get(): 46 | print("Swallowed: " + str(o)) 47 | 48 | win.show() 49 | 50 | 51 | if __name__ == "__main__": 52 | 53 | layout_clicked(None) 54 | 55 | elementary.run() 56 | -------------------------------------------------------------------------------- /examples/elementary/test_separator.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | # encoding: utf-8 3 | 4 | from efl.evas import EVAS_HINT_EXPAND, EVAS_HINT_FILL, EXPAND_BOTH, FILL_BOTH 5 | from efl import elementary 6 | from efl.elementary.window import StandardWindow 7 | from efl.elementary.box import Box 8 | from efl.elementary.button import Button 9 | from efl.elementary.separator import Separator 10 | 11 | 12 | def separator_clicked(obj): 13 | win = StandardWindow("separators", "Separators", autodel=True) 14 | if obj is None: 15 | win.callback_delete_request_add(lambda o: elementary.exit()) 16 | 17 | bx0 = Box(win, size_hint_weight=EXPAND_BOTH, horizontal=True) 18 | win.resize_object_add(bx0) 19 | bx0.show() 20 | 21 | bx = Box(win, size_hint_weight=EXPAND_BOTH) 22 | bx0.pack_end(bx) 23 | bx.show() 24 | 25 | bt = Button(win, text="Left upper corner") 26 | bx.pack_end(bt) 27 | bt.show() 28 | 29 | sp = Separator(win, horizontal=True) 30 | bx.pack_end(sp) 31 | sp.show() 32 | 33 | bt = Button(win, text="Left lower corner", disabled=True) 34 | bx.pack_end(bt) 35 | bt.show() 36 | 37 | sp = Separator(win) 38 | bx0.pack_end(sp) 39 | sp.show() 40 | 41 | bx = Box(win, size_hint_weight=EXPAND_BOTH) 42 | bx0.pack_end(bx) 43 | bx.show() 44 | 45 | bt = Button(win, text="Right upper corner", disabled=True) 46 | bx.pack_end(bt) 47 | bt.show() 48 | 49 | sp = Separator(win, horizontal=True) 50 | bx.pack_end(sp) 51 | sp.show() 52 | 53 | bt = Button(win, text="Right lower corner") 54 | bx.pack_end(bt) 55 | bt.show() 56 | 57 | win.show() 58 | 59 | 60 | if __name__ == "__main__": 61 | 62 | separator_clicked(None) 63 | 64 | elementary.run() 65 | -------------------------------------------------------------------------------- /examples/elementary/test_theme.edj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/examples/elementary/test_theme.edj -------------------------------------------------------------------------------- /examples/elementary/test_video.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | # encoding: utf-8 3 | 4 | from efl.evas import EVAS_HINT_EXPAND, EVAS_HINT_FILL, EXPAND_BOTH, FILL_BOTH 5 | from efl import elementary 6 | from efl.elementary.window import StandardWindow 7 | from efl.elementary.box import Box 8 | from efl.elementary.button import Button 9 | from efl.elementary.fileselector_button import FileselectorButton 10 | from efl.elementary.table import Table 11 | from efl.elementary.video import Video, Player 12 | 13 | 14 | def my_bt_open(bt, vfile, video): 15 | if (vfile and video): 16 | video.file_set(vfile) 17 | video.play() 18 | print(video.file) 19 | print(video.file_get()) 20 | 21 | def video_clicked(obj): 22 | win = StandardWindow("video", "video", autodel=True, size=(800, 600)) 23 | win.alpha = True # Needed to turn video fast path on 24 | 25 | video = Video(win, size_hint_weight=EXPAND_BOTH) 26 | 27 | player = Player(win, content=video, size_hint_weight=EXPAND_BOTH) 28 | win.resize_object_add(player) 29 | player.show() 30 | 31 | tb = Table(win, size_hint_weight=EXPAND_BOTH) 32 | win.resize_object_add(tb) 33 | tb.show() 34 | 35 | bt = FileselectorButton(win, text="Select Video", 36 | size_hint_weight=EXPAND_BOTH, 37 | size_hint_align=(0.5, 0.1)) 38 | bt.callback_file_chosen_add(my_bt_open, video) 39 | tb.pack(bt, 0, 0, 1, 1) 40 | bt.show() 41 | 42 | win.show() 43 | 44 | 45 | if __name__ == "__main__": 46 | 47 | video_clicked(None) 48 | 49 | elementary.run() 50 | -------------------------------------------------------------------------------- /examples/elementary/test_win_dialog.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | # encoding: utf-8 3 | 4 | from efl.evas import EVAS_HINT_EXPAND, EVAS_HINT_FILL, EXPAND_BOTH 5 | from efl import elementary 6 | from efl.elementary.window import StandardWindow, DialogWindow 7 | from efl.elementary.box import Box 8 | from efl.elementary.button import Button 9 | from efl.elementary.label import Label 10 | 11 | 12 | def clicked_cb(btn, parent): 13 | dia = DialogWindow(parent, "window-dia", "DialogWindow", 14 | size=(200,150), autodel=True) 15 | 16 | lb = Label(dia, text="This is a DialogWindow", 17 | size_hint_weight=EXPAND_BOTH) 18 | dia.resize_object_add(lb) 19 | lb.show() 20 | 21 | dia.show() 22 | 23 | def window_dialog_clicked(obj): 24 | win = StandardWindow("window-states", "This is a StandardWindow", 25 | autodel=True, size=(400, 400)) 26 | if obj is None: 27 | win.callback_delete_request_add(lambda o: elementary.exit()) 28 | 29 | box = Box(win, size_hint_weight=EXPAND_BOTH) 30 | win.resize_object_add(box) 31 | box.show() 32 | 33 | bt = Button(win, text="Create a new dialog") 34 | bt.callback_clicked_add(clicked_cb, win) 35 | box.pack_end(bt) 36 | bt.show() 37 | 38 | win.show() 39 | 40 | 41 | if __name__ == "__main__": 42 | 43 | window_dialog_clicked(None) 44 | 45 | elementary.run() 46 | 47 | -------------------------------------------------------------------------------- /examples/emotion/theme.edj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/examples/emotion/theme.edj -------------------------------------------------------------------------------- /include/efl.ecore_con.enums.pxd: -------------------------------------------------------------------------------- 1 | cdef extern from "Ecore_Con.h": 2 | # enums 3 | ctypedef enum Ecore_Con_Type: 4 | ECORE_CON_LOCAL_USER 5 | ECORE_CON_LOCAL_SYSTEM 6 | ECORE_CON_LOCAL_ABSTRACT 7 | ECORE_CON_REMOTE_TCP 8 | ECORE_CON_REMOTE_MCAST 9 | ECORE_CON_REMOTE_UDP 10 | ECORE_CON_REMOTE_BROADCAST 11 | ECORE_CON_REMOTE_NODELAY 12 | ECORE_CON_REMOTE_CORK 13 | ECORE_CON_USE_SSL2 14 | ECORE_CON_USE_SSL3 15 | ECORE_CON_USE_TLS 16 | ECORE_CON_USE_MIXED 17 | ECORE_CON_LOAD_CERT 18 | ECORE_CON_NO_PROXY 19 | ECORE_CON_SOCKET_ACTIVATE 20 | 21 | ctypedef enum Ecore_Con_Url_Time: 22 | ECORE_CON_URL_TIME_NONE 23 | ECORE_CON_URL_TIME_IFMODSINCE 24 | ECORE_CON_URL_TIME_IFUNMODSINCE 25 | 26 | ctypedef enum Ecore_Con_Url_Http_Version: 27 | ECORE_CON_URL_HTTP_VERSION_1_0 28 | ECORE_CON_URL_HTTP_VERSION_1_1 29 | -------------------------------------------------------------------------------- /include/efl.ecore_input.enums.pxd: -------------------------------------------------------------------------------- 1 | cdef extern from "Ecore_Input.h": 2 | #################################################################### 3 | # Enums 4 | # 5 | ctypedef enum Ecore_Event_Modifier: # this is not really an enum 6 | ECORE_EVENT_MODIFIER_SHIFT 7 | ECORE_EVENT_MODIFIER_CTRL 8 | ECORE_EVENT_MODIFIER_ALT 9 | ECORE_EVENT_MODIFIER_WIN 10 | ECORE_EVENT_MODIFIER_SCROLL 11 | ECORE_EVENT_MODIFIER_NUM 12 | ECORE_EVENT_MODIFIER_CAPS 13 | ECORE_EVENT_LOCK_SCROLL 14 | ECORE_EVENT_LOCK_NUM 15 | ECORE_EVENT_LOCK_CAPS 16 | ECORE_EVENT_LOCK_SHIFT 17 | ECORE_EVENT_MODIFIER_ALTGR 18 | -------------------------------------------------------------------------------- /include/efl.edje_edit.enums.pxd: -------------------------------------------------------------------------------- 1 | cdef extern from "Edje_Edit.h": 2 | #################################################################### 3 | # Enums 4 | # 5 | ctypedef enum Edje_Edit_Image_Comp: 6 | EDJE_EDIT_IMAGE_COMP_RAW 7 | EDJE_EDIT_IMAGE_COMP_USER 8 | EDJE_EDIT_IMAGE_COMP_COMP 9 | EDJE_EDIT_IMAGE_COMP_LOSSY 10 | -------------------------------------------------------------------------------- /include/efl.elementary.pxd: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2007-2022 various contributors (see AUTHORS) 2 | # 3 | # This file is part of Python-EFL. 4 | # 5 | # Python-EFL is free software; you can redistribute it and/or 6 | # modify it under the terms of the GNU Lesser General Public 7 | # License as published by the Free Software Foundation; either 8 | # version 3 of the License, or (at your option) any later version. 9 | # 10 | # Python-EFL is distributed in the hope that it will be useful, 11 | # but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 | # Lesser General Public License for more details. 14 | # 15 | # You should have received a copy of the GNU Lesser General Public License 16 | # along with this Python-EFL. If not, see . 17 | # 18 | 19 | 20 | cdef int PY_EFL_ELM_LOG_DOMAIN 21 | -------------------------------------------------------------------------------- /include/efl.ethumb.enums.pxd: -------------------------------------------------------------------------------- 1 | cdef extern from "Ethumb.h": 2 | #################################################################### 3 | # Enums 4 | # 5 | 6 | ctypedef enum Ethumb_Thumb_Orientation: 7 | ETHUMB_THUMB_ORIENT_NONE 8 | ETHUMB_THUMB_ROTATE_90_CW 9 | ETHUMB_THUMB_ROTATE_180 10 | ETHUMB_THUMB_ROTATE_90_CCW 11 | ETHUMB_THUMB_FLIP_HORIZONTAL 12 | ETHUMB_THUMB_FLIP_VERTICAL 13 | ETHUMB_THUMB_FLIP_TRANSPOSE 14 | ETHUMB_THUMB_FLIP_TRANSVERSE 15 | ETHUMB_THUMB_ORIENT_ORIGINAL 16 | 17 | ctypedef enum Ethumb_Thumb_FDO_Size: 18 | ETHUMB_THUMB_NORMAL 19 | ETHUMB_THUMB_LARGE 20 | 21 | ctypedef enum Ethumb_Thumb_Format: 22 | ETHUMB_THUMB_FDO 23 | ETHUMB_THUMB_JPEG 24 | ETHUMB_THUMB_EET 25 | 26 | ctypedef enum Ethumb_Thumb_Aspect: 27 | ETHUMB_THUMB_KEEP_ASPECT 28 | ETHUMB_THUMB_IGNORE_ASPECT 29 | ETHUMB_THUMB_CROP 30 | -------------------------------------------------------------------------------- /include/efl.ethumb.pxd: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2007-2022 various contributors (see AUTHORS) 2 | # 3 | # This file is part of Python-EFL. 4 | # 5 | # Python-EFL is free software; you can redistribute it and/or 6 | # modify it under the terms of the GNU Lesser General Public 7 | # License as published by the Free Software Foundation; either 8 | # version 3 of the License, or (at your option) any later version. 9 | # 10 | # Python-EFL is distributed in the hope that it will be useful, 11 | # but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 | # Lesser General Public License for more details. 14 | # 15 | # You should have received a copy of the GNU Lesser General Public License 16 | # along with this Python-EFL. If not, see . 17 | 18 | 19 | from efl.c_ethumb cimport Ethumb as cEthumb 20 | 21 | cdef class Ethumb: 22 | cdef cEthumb *obj 23 | -------------------------------------------------------------------------------- /include/efl.utils.conversions.pxd: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2007-2022 various contributors (see AUTHORS) 2 | # 3 | # This file is part of Python-EFL. 4 | # 5 | # Python-EFL is free software; you can redistribute it and/or 6 | # modify it under the terms of the GNU Lesser General Public 7 | # License as published by the Free Software Foundation; either 8 | # version 3 of the License, or (at your option) any later version. 9 | # 10 | # Python-EFL is distributed in the hope that it will be useful, 11 | # but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 | # Lesser General Public License for more details. 14 | # 15 | # You should have received a copy of the GNU Lesser General Public License 16 | # along with this Python-EFL. If not, see . 17 | 18 | from efl.eina cimport Eina_List 19 | 20 | cdef unicode _touni(char* s) 21 | cdef unicode _ctouni(const char *s) 22 | 23 | cdef list array_of_strings_to_python_list(char **array, int array_length) 24 | cdef const char ** python_list_strings_to_array_of_strings(list strings) except NULL 25 | cdef list eina_list_strings_to_python_list(const Eina_List *lst) 26 | cdef Eina_List * python_list_strings_to_eina_list(list strings) 27 | cdef list eina_list_objects_to_python_list(const Eina_List *lst) 28 | cdef Eina_List *python_list_objects_to_eina_list(list objects) 29 | cdef int * python_list_ints_to_array_of_ints(list ints) except NULL 30 | cdef list array_of_ints_to_python_list(int *array, int array_length) 31 | cdef double * python_list_doubles_to_array_of_doubles(list doubles) except NULL 32 | -------------------------------------------------------------------------------- /include/efl.utils.deprecated.pxd: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2007-2022 various contributors (see AUTHORS) 2 | # 3 | # This file is part of Python-EFL. 4 | # 5 | # Python-EFL is free software; you can redistribute it and/or 6 | # modify it under the terms of the GNU Lesser General Public 7 | # License as published by the Free Software Foundation; either 8 | # version 3 of the License, or (at your option) any later version. 9 | # 10 | # Python-EFL is distributed in the hope that it will be useful, 11 | # but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 | # Lesser General Public License for more details. 14 | # 15 | # You should have received a copy of the GNU Lesser General Public License 16 | # along with this Python-EFL. If not, see . 17 | 18 | # 1.19: Converted to pure python implementation 19 | 20 | # cdef: 21 | # class DEPRECATED(object): 22 | # cdef: 23 | # str version, message 24 | -------------------------------------------------------------------------------- /include/efl.utils.logger.pxd: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2007-2022 various contributors (see AUTHORS) 2 | # 3 | # This file is part of Python-EFL. 4 | # 5 | # Python-EFL is free software; you can redistribute it and/or 6 | # modify it under the terms of the GNU Lesser General Public 7 | # License as published by the Free Software Foundation; either 8 | # version 3 of the License, or (at your option) any later version. 9 | # 10 | # Python-EFL is distributed in the hope that it will be useful, 11 | # but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 | # Lesser General Public License for more details. 14 | # 15 | # You should have received a copy of the GNU Lesser General Public License 16 | # along with this Python-EFL. If not, see . 17 | 18 | cdef: 19 | object add_logger(object name) 20 | int PY_EFL_LOG_DOMAIN 21 | -------------------------------------------------------------------------------- /pyproject.toml: -------------------------------------------------------------------------------- 1 | [build-system] 2 | requires = ['setuptools', 'wheel', 'packaging'] 3 | build-backend = 'setuptools.build_meta' -------------------------------------------------------------------------------- /setup.cfg: -------------------------------------------------------------------------------- 1 | [build_ext] 2 | # Uncomment this to disable assertions 3 | #define=CYTHON_WITHOUT_ASSERTIONS 4 | # Debug info 5 | #cython_gdb=1 6 | # Cython compiler directives 7 | # (http://docs.cython.org/src/reference/compilation.html#compiler-directives) 8 | #cython_directives= 9 | 10 | [build_doc] 11 | # Options for builder: html, latex, texinfo, epub, coverage 12 | #builder=html 13 | # Outputs txt files with coverage info 14 | #builder=coverage 15 | -------------------------------------------------------------------------------- /tests/00_run_all_tests.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | 3 | import unittest 4 | 5 | 6 | loader = unittest.TestLoader() 7 | suite = loader.discover('.') 8 | runner = unittest.TextTestRunner(verbosity=1, buffer=True) 9 | result = runner.run(suite) 10 | -------------------------------------------------------------------------------- /tests/dbus/00_run_all_tests.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | 3 | import unittest 4 | import logging 5 | 6 | formatter = logging.Formatter("[%(levelname)s] %(name)s (%(filename)s: %(lineno)d) --- %(message)s") 7 | handler = logging.StreamHandler() 8 | handler.setFormatter(formatter) 9 | efllog = logging.getLogger("efl") 10 | efllog.addHandler(handler) 11 | efllog.setLevel(logging.DEBUG) 12 | 13 | loader = unittest.TestLoader() 14 | suite = loader.discover('.') 15 | runner = unittest.TextTestRunner(verbosity=2) 16 | result = runner.run(suite) 17 | -------------------------------------------------------------------------------- /tests/dbus/test_01_basics.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | 3 | import dbus 4 | import dbus.service 5 | from efl.dbus_mainloop import DBusEcoreMainLoop 6 | from efl import ecore 7 | import unittest 8 | import logging 9 | 10 | 11 | class TestDBusBasics(unittest.TestCase): 12 | def setUp(self): 13 | self.bus = dbus.SessionBus(mainloop=DBusEcoreMainLoop()) 14 | 15 | def tearDown(self): 16 | pass 17 | 18 | def testSignalReceiver(self): 19 | self.received = False 20 | 21 | def name_owner_changed_cb(name, old_owner, new_owner): 22 | if name == "org.efl.TestService": 23 | # name received...good, quit the test now! 24 | self.received = True 25 | ecore.main_loop_quit() 26 | 27 | # receive notification on name changes 28 | self.bus.add_signal_receiver(name_owner_changed_cb, 29 | signal_name="NameOwnerChanged") 30 | 31 | # claim the name 'org.efl.TestService' 32 | self.name = dbus.service.BusName("org.efl.TestService", self.bus) 33 | 34 | # start the ecore mainloop and wait at max 1.5 seconds 35 | ecore.Timer(1.5, lambda: ecore.main_loop_quit()) 36 | ecore.main_loop_begin() 37 | 38 | # did we received the signal ? 39 | self.assertTrue(self.received) 40 | 41 | 42 | if __name__ == '__main__': 43 | formatter = logging.Formatter("[%(levelname)s] %(name)s (%(filename)s: %(lineno)d) --- %(message)s") 44 | handler = logging.StreamHandler() 45 | handler.setFormatter(formatter) 46 | efllog = logging.getLogger("efl") 47 | efllog.addHandler(handler) 48 | efllog.setLevel(logging.DEBUG) 49 | unittest.main(verbosity=2) 50 | -------------------------------------------------------------------------------- /tests/ecore/00_run_all_tests.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | 3 | import unittest 4 | import logging 5 | 6 | 7 | formatter = logging.Formatter("[%(levelname)s] %(name)s (%(filename)s: %(lineno)d) --- %(message)s") 8 | handler = logging.StreamHandler() 9 | handler.setFormatter(formatter) 10 | efllog = logging.getLogger("efl") 11 | efllog.addHandler(handler) 12 | efllog.setLevel(logging.DEBUG) 13 | 14 | loader = unittest.TestLoader() 15 | suite = loader.discover('.') 16 | runner = unittest.TextTestRunner(verbosity=2) 17 | result = runner.run(suite) 18 | -------------------------------------------------------------------------------- /tests/ecore/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/tests/ecore/__init__.py -------------------------------------------------------------------------------- /tests/ecore/exe_helper.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | 3 | import time 4 | import sys 5 | 6 | delay = float(sys.argv[1]) 7 | 8 | for i in range(1000): 9 | print(i) 10 | sys.stdout.flush() 11 | time.sleep(delay) 12 | 13 | exit(0) 14 | 15 | -------------------------------------------------------------------------------- /tests/edje/00_run_all_tests.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | 3 | import unittest 4 | import logging 5 | 6 | formatter = logging.Formatter("[%(levelname)s] %(name)s (%(filename)s: %(lineno)d) --- %(message)s") 7 | handler = logging.StreamHandler() 8 | handler.setFormatter(formatter) 9 | efllog = logging.getLogger("efl") 10 | efllog.addHandler(handler) 11 | efllog.setLevel(logging.DEBUG) 12 | 13 | loader = unittest.TestLoader() 14 | suite = loader.discover('.') 15 | runner = unittest.TextTestRunner(verbosity=2) 16 | result = runner.run(suite) 17 | -------------------------------------------------------------------------------- /tests/edje/TODO-edit/groups.edc: -------------------------------------------------------------------------------- 1 | group { 2 | name: "g1"; 3 | data { 4 | item: "pref_size" "10x10"; 5 | } 6 | parts { 7 | part { 8 | name: "g1_p1"; 9 | type: RECT; 10 | mouse_events: 0; 11 | description { 12 | state: "default" 0.0; 13 | } 14 | } 15 | } 16 | } 17 | 18 | group { 19 | name: "g2"; 20 | parts { 21 | part { 22 | name: "g2_p1"; 23 | type: RECT; 24 | mouse_events: 0; 25 | description { 26 | state: "default" 0.0; 27 | } 28 | } 29 | } 30 | } 31 | 32 | group { 33 | name: "g3"; 34 | parts { 35 | part { 36 | name: "g3_p1"; 37 | type: RECT; 38 | mouse_events: 0; 39 | description { 40 | state: "default" 0.0; 41 | } 42 | } 43 | } 44 | } 45 | -------------------------------------------------------------------------------- /tests/edje/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/tests/edje/__init__.py -------------------------------------------------------------------------------- /tests/edje/theme.edj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/tests/edje/theme.edj -------------------------------------------------------------------------------- /tests/elementary/00_run_all_tests.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | 3 | import unittest 4 | import logging 5 | 6 | formatter = logging.Formatter("[%(levelname)s] %(name)s (%(filename)s: %(lineno)d) --- %(message)s") 7 | handler = logging.StreamHandler() 8 | handler.setFormatter(formatter) 9 | efllog = logging.getLogger("efl") 10 | efllog.addHandler(handler) 11 | efllog.setLevel(logging.DEBUG) 12 | 13 | loader = unittest.TestLoader() 14 | suite = loader.discover('.') 15 | runner = unittest.TextTestRunner(verbosity=2) 16 | result = runner.run(suite) 17 | -------------------------------------------------------------------------------- /tests/elementary/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/tests/elementary/__init__.py -------------------------------------------------------------------------------- /tests/elementary/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/tests/elementary/icon.png -------------------------------------------------------------------------------- /tests/elementary/test_03_entry.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | # encoding: utf-8 3 | 4 | import os 5 | os.environ["ELM_ENGINE"] = "buffer" 6 | 7 | import unittest 8 | import logging 9 | 10 | from efl.eo import Eo 11 | from efl import elementary as elm 12 | 13 | 14 | class TestElmBasics(unittest.TestCase): 15 | 16 | def setUp(self): 17 | self.o = elm.Window("t", elm.ELM_WIN_BASIC) 18 | 19 | def tearDown(self): 20 | self.o.delete() 21 | 22 | def testEntryUnicode(self): 23 | o = elm.Entry(self.o) 24 | t = u"aöäöäa" 25 | o.text = t 26 | self.assertEqual(o.text, t) 27 | o.delete() 28 | 29 | if __name__ == '__main__': 30 | formatter = logging.Formatter("[%(levelname)s] %(name)s (%(filename)s: %(lineno)d) --- %(message)s") 31 | handler = logging.StreamHandler() 32 | handler.setFormatter(formatter) 33 | efllog = logging.getLogger("efl") 34 | efllog.addHandler(handler) 35 | efllog.setLevel(logging.DEBUG) 36 | unittest.main(verbosity=2) 37 | -------------------------------------------------------------------------------- /tests/elementary/theme.edj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/tests/elementary/theme.edj -------------------------------------------------------------------------------- /tests/eo/00_run_all_tests.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | 3 | import unittest 4 | import logging 5 | 6 | formatter = logging.Formatter("[%(levelname)s] %(name)s (%(filename)s: %(lineno)d) --- %(message)s") 7 | handler = logging.StreamHandler() 8 | handler.setFormatter(formatter) 9 | efllog = logging.getLogger("efl") 10 | efllog.addHandler(handler) 11 | efllog.setLevel(logging.DEBUG) 12 | 13 | loader = unittest.TestLoader() 14 | suite = loader.discover('.') 15 | runner = unittest.TextTestRunner(verbosity=2) 16 | result = runner.run(suite) 17 | -------------------------------------------------------------------------------- /tests/eo/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/tests/eo/__init__.py -------------------------------------------------------------------------------- /tests/eo/test_01_basics.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | 3 | import efl.eo as eo 4 | from efl.eo import Eo 5 | 6 | import unittest 7 | import logging 8 | 9 | 10 | class TestBasics(unittest.TestCase): 11 | 12 | def setUp(self): 13 | self.o = Eo.__new__(Eo) 14 | 15 | def tearDown(self): 16 | self.o.delete() 17 | 18 | def testEoConstructor(self): 19 | self.assertRaises(TypeError, self.o.__init__) 20 | 21 | def testRepr(self): 22 | self.assertIsNotNone(repr(self.o)) 23 | 24 | 25 | if __name__ == '__main__': 26 | formatter = logging.Formatter("[%(levelname)s] %(name)s (%(filename)s: %(lineno)d) --- %(message)s") 27 | handler = logging.StreamHandler() 28 | handler.setFormatter(formatter) 29 | efllog = logging.getLogger("efl") 30 | efllog.addHandler(handler) 31 | efllog.setLevel(logging.DEBUG) 32 | unittest.main(verbosity=2) 33 | -------------------------------------------------------------------------------- /tests/evas/00_run_all_tests.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | 3 | import unittest 4 | import logging 5 | 6 | formatter = logging.Formatter("[%(levelname)s] %(name)s (%(filename)s: %(lineno)d) --- %(message)s") 7 | handler = logging.StreamHandler() 8 | handler.setFormatter(formatter) 9 | efllog = logging.getLogger("efl") 10 | efllog.addHandler(handler) 11 | efllog.setLevel(logging.DEBUG) 12 | 13 | loader = unittest.TestLoader() 14 | suite = loader.discover('.') 15 | runner = unittest.TextTestRunner(verbosity=2) 16 | result = runner.run(suite) 17 | -------------------------------------------------------------------------------- /tests/evas/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/tests/evas/__init__.py -------------------------------------------------------------------------------- /tests/evas/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DaveMDS/python-efl/c8d7bddb47ff8ab2c56e8540f5188b584aeef2b6/tests/evas/icon.png -------------------------------------------------------------------------------- /tests/evas/test_05_object_image.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | 3 | from efl import evas 4 | import os, unittest 5 | import logging 6 | 7 | 8 | icon_file = os.path.join(os.path.dirname(__file__), "icon.png") 9 | 10 | 11 | class TestImageBasics(unittest.TestCase): 12 | def setUp(self): 13 | self.canvas = evas.Canvas(method="buffer", 14 | size=(400, 500), 15 | viewport=(0, 0, 400, 500)) 16 | self.canvas.engine_info_set(self.canvas.engine_info_get()) 17 | 18 | def tearDown(self): 19 | self.canvas.delete() 20 | del self.canvas 21 | 22 | def testConstructor(self): 23 | o = evas.Image(self.canvas, file=icon_file, geometry=(10, 20, 30, 40)) 24 | self.assertEqual(type(o), evas.Image) 25 | self.assertEqual(o.geometry_get(), (10, 20, 30, 40)) 26 | self.assertEqual(o.file_get(), (icon_file, None)) 27 | 28 | 29 | if __name__ == '__main__': 30 | formatter = logging.Formatter("[%(levelname)s] %(name)s (%(filename)s: %(lineno)d) --- %(message)s") 31 | handler = logging.StreamHandler() 32 | handler.setFormatter(formatter) 33 | efllog = logging.getLogger("efl") 34 | efllog.addHandler(handler) 35 | efllog.setLevel(logging.DEBUG) 36 | unittest.main(verbosity=2) 37 | -------------------------------------------------------------------------------- /tests/evas/test_07_object_line.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | 3 | from efl import evas 4 | import unittest 5 | import logging 6 | 7 | 8 | class TestLineBasics(unittest.TestCase): 9 | def setUp(self): 10 | self.canvas = evas.Canvas(method="buffer", 11 | size=(400, 500), 12 | viewport=(0, 0, 400, 500)) 13 | self.canvas.engine_info_set(self.canvas.engine_info_get()) 14 | 15 | def tearDown(self): 16 | self.canvas.delete() 17 | del self.canvas 18 | 19 | def testConstructor(self): 20 | o = evas.Line(self.canvas, start=(10, 20), end=(30, 40)) 21 | self.assertEqual(type(o), evas.Line) 22 | self.assertEqual(o.start_get(), (10, 20)) 23 | self.assertEqual(o.end_get(), (30, 40)) 24 | 25 | 26 | if __name__ == '__main__': 27 | formatter = logging.Formatter("[%(levelname)s] %(name)s (%(filename)s: %(lineno)d) --- %(message)s") 28 | handler = logging.StreamHandler() 29 | handler.setFormatter(formatter) 30 | efllog = logging.getLogger("efl") 31 | efllog.addHandler(handler) 32 | efllog.setLevel(logging.DEBUG) 33 | unittest.main(verbosity=2) 34 | -------------------------------------------------------------------------------- /tests/evas/test_08_object_polygon.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | 3 | from efl import evas 4 | import unittest 5 | import logging 6 | 7 | 8 | class TestPolygonBasics(unittest.TestCase): 9 | def setUp(self): 10 | self.canvas = evas.Canvas(method="buffer", 11 | size=(400, 500), 12 | viewport=(0, 0, 400, 500)) 13 | self.canvas.engine_info_set(self.canvas.engine_info_get()) 14 | 15 | def tearDown(self): 16 | self.canvas.delete() 17 | del self.canvas 18 | 19 | def testConstructor(self): 20 | o = evas.Polygon(self.canvas, geometry=(10, 20, 30, 40)) 21 | self.assertEqual(type(o), evas.Polygon) 22 | self.assertEqual(o.geometry_get(), (10, 20, 30, 40)) 23 | 24 | 25 | if __name__ == '__main__': 26 | formatter = logging.Formatter("[%(levelname)s] %(name)s (%(filename)s: %(lineno)d) --- %(message)s") 27 | handler = logging.StreamHandler() 28 | handler.setFormatter(formatter) 29 | efllog = logging.getLogger("efl") 30 | efllog.addHandler(handler) 31 | efllog.setLevel(logging.DEBUG) 32 | unittest.main(verbosity=2) 33 | -------------------------------------------------------------------------------- /tests/evas/test_09_object_text.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | 3 | from efl import evas 4 | import unittest 5 | import logging 6 | 7 | 8 | class TestTextBasics(unittest.TestCase): 9 | def setUp(self): 10 | self.canvas = evas.Canvas(method="buffer", 11 | size=(400, 500), 12 | viewport=(0, 0, 400, 500)) 13 | self.canvas.engine_info_set(self.canvas.engine_info_get()) 14 | 15 | def tearDown(self): 16 | self.canvas.delete() 17 | del self.canvas 18 | 19 | def testConstructor(self): 20 | o = evas.Text(self.canvas, text="MyText") 21 | self.assertEqual(type(o), evas.Text) 22 | self.assertEqual(o.text_get(), "MyText") 23 | 24 | 25 | if __name__ == '__main__': 26 | formatter = logging.Formatter("[%(levelname)s] %(name)s (%(filename)s: %(lineno)d) --- %(message)s") 27 | handler = logging.StreamHandler() 28 | handler.setFormatter(formatter) 29 | efllog = logging.getLogger("efl") 30 | efllog.addHandler(handler) 31 | efllog.setLevel(logging.DEBUG) 32 | unittest.main(verbosity=2) 33 | -------------------------------------------------------------------------------- /tests/evas/test_10_object_textblock.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | 3 | from efl import evas 4 | import unittest 5 | import logging 6 | 7 | 8 | class TestTextblockBasics(unittest.TestCase): 9 | def setUp(self): 10 | self.canvas = evas.Canvas(method="buffer", 11 | size=(400, 500), 12 | viewport=(0, 0, 400, 500)) 13 | self.canvas.engine_info_set(self.canvas.engine_info_get()) 14 | 15 | def tearDown(self): 16 | self.canvas.delete() 17 | del self.canvas 18 | 19 | def testConstructor(self): 20 | o = evas.Textblock(self.canvas, text_markup="MyTextblock") 21 | self.assertEqual(type(o), evas.Textblock) 22 | self.assertEqual(o.text_markup_get(), "MyTextblock") 23 | 24 | 25 | if __name__ == '__main__': 26 | formatter = logging.Formatter("[%(levelname)s] %(name)s (%(filename)s: %(lineno)d) --- %(message)s") 27 | handler = logging.StreamHandler() 28 | handler.setFormatter(formatter) 29 | efllog = logging.getLogger("efl") 30 | efllog.addHandler(handler) 31 | efllog.setLevel(logging.DEBUG) 32 | unittest.main(verbosity=2) 33 | -------------------------------------------------------------------------------- /tests/evas/test_11_object_textgrid.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | #coding=UTF-8 3 | 4 | from efl.evas import Canvas, Textgrid, TextgridCell 5 | import unittest 6 | import logging 7 | 8 | 9 | class TestTextgridBasics(unittest.TestCase): 10 | def setUp(self): 11 | self.canvas = Canvas( 12 | method="buffer", 13 | size=(400, 500), 14 | viewport=(0, 0, 400, 500) 15 | ) 16 | self.canvas.engine_info_set(self.canvas.engine_info_get()) 17 | 18 | def tearDown(self): 19 | self.canvas.delete() 20 | del self.canvas 21 | 22 | def testTextgridConstructor(self): 23 | tg = Textgrid(self.canvas) 24 | self.assertEqual(type(tg), Textgrid) 25 | 26 | def testTextgrid(self): 27 | tg = Textgrid(self.canvas) 28 | tg.size = 10, 10 29 | row = tg.cellrow_get(0) 30 | for cell in row: 31 | cell.codepoint = "ö" 32 | cell.bold = True 33 | tg.cellrow_set(0, row) 34 | tg.update_add(0, 0, 10, 1) 35 | rowback = tg.cellrow_get(0) 36 | print(tg.cell_size) 37 | self.assertEqual(row[0].codepoint, rowback[0].codepoint) 38 | 39 | 40 | if __name__ == '__main__': 41 | formatter = logging.Formatter("[%(levelname)s] %(name)s (%(filename)s: %(lineno)d) --- %(message)s") 42 | handler = logging.StreamHandler() 43 | handler.setFormatter(formatter) 44 | efllog = logging.getLogger("efl") 45 | efllog.addHandler(handler) 46 | efllog.setLevel(logging.DEBUG) 47 | unittest.main(verbosity=2) 48 | --------------------------------------------------------------------------------