tutorial_table_01

- Main Page
- Related Pages
- Modules
- Data Structures
- Files
- Examples

tutorial_table_01

In this example we add four labels to a homogeneous table that has a padding of 5px between cells.

The interesting bits from this example are:

- Where we set the table as homogeneous and the padding:
  elm_table_padding_set(table, 5, 5);
  elm_table_homogeneous_set(table, EINA_TRUE);
  EINA_TRUE
  #define EINA_TRUE
  boolean value TRUE (numerical value 1)
  Definition: eina_types.h:539
  elm_table_homogeneous_set
  void elm_table_homogeneous_set(Elm_Table *obj, Eina_Bool homogeneous)
  Control the homogeneous state in a table.
  Definition: elm_table_eo.legacy.c:3
  elm_table_padding_set
  void elm_table_padding_set(Elm_Table *obj, int horizontal, int vertical)
  Set padding between cells.
  Definition: elm_table_eo.legacy.c:15
- Where we add each label to the table:
  elm_table_pack(table, label, 0, 0, 1, 1);
  elm_table_pack
  void elm_table_pack(Elm_Table *obj, Efl_Canvas_Object *subobj, int column, int row, int colspan, int rowspan)
  Add a subobject on the table with the coordinates passed.
  Definition: elm_table_eo.legacy.c:57
  elm_table_pack(table, label, 1, 0, 1, 1);
  elm_table_pack(table, label, 0, 1, 1, 1);
  elm_table_pack(table, label, 1, 1, 1, 1);
  Here you can see the full source:
  //Compile with:
  //gcc -g table_example_01.c -o table_example_01 `pkg-config --cflags --libs elementary`
  #include <Elementary.h>
  EAPI_MAIN int
  elm_main(int argc EINA_UNUSED, char **argv EINA_UNUSED)
  {
  Evas_Object *win, *label, *table;
  elm_policy_set(ELM_POLICY_QUIT, ELM_POLICY_QUIT_LAST_WINDOW_CLOSED);
  win = elm_win_util_standard_add("table", "Table");
  elm_win_autodel_set(win, EINA_TRUE);
  table = elm_table_add(win);
  elm_win_resize_object_add(win, table);
  evas_object_show(table);
  elm_table_padding_set(table, 5, 5);
  elm_table_homogeneous_set(table, EINA_TRUE);
  label = elm_label_add(win);
  elm_object_text_set(label, "label 0");
  evas_object_show(label);
  elm_table_pack(table, label, 0, 0, 1, 1);
  label = elm_label_add(win);
  elm_object_text_set(label, "label 1");
  evas_object_show(label);
  elm_table_pack(table, label, 1, 0, 1, 1);
  label = elm_label_add(win);
  elm_object_text_set(label, "label 2");
  evas_object_show(label);
  elm_table_pack(table, label, 0, 1, 1, 1);
  label = elm_label_add(win);
  elm_object_text_set(label, "label 3");
  evas_object_show(label);
  elm_table_pack(table, label, 1, 1, 1, 1);
  evas_object_show(win);
  elm_run();
  return 0;
  }
  ELM_MAIN()
  EINA_UNUSED
  #define EINA_UNUSED
  Used to indicate that a function parameter is purposely unused.
  Definition: eina_types.h:339
  ELM_MAIN
  #define ELM_MAIN()
  macro to be used after the elm_main() function
  Definition: elm_general.h:556
  elm_policy_set
  Eina_Bool elm_policy_set(unsigned int policy, int value)
  Set a new policy's value (for a given policy group/identifier).
  Definition: elm_main.c:1380
  elm_run
  void elm_run(void)
  Run Elementary's main loop.
  Definition: elm_main.c:1357
  ELM_POLICY_QUIT_LAST_WINDOW_CLOSED
  @ ELM_POLICY_QUIT_LAST_WINDOW_CLOSED
  quit when the application's last window is closed
  Definition: elm_general.h:248
  ELM_POLICY_QUIT
  @ ELM_POLICY_QUIT
  under which circumstances the application should quit automatically.
  Definition: elm_general.h:227
  elm_label_add
  Evas_Object * elm_label_add(Evas_Object *parent)
  Add a new label to the parent.
  Definition: elm_label.c:421
  elm_table_add
  Evas_Object * elm_table_add(Evas_Object *parent)
  Add a new table to the parent.
  Definition: elm_table.c:134
  elm_win_util_standard_add
  Evas_Object * elm_win_util_standard_add(const char *name, const char *title)
  Adds a window object with standard setup.
  Definition: efl_ui_win.c:9582
  elm_win_resize_object_add
  void elm_win_resize_object_add(Eo *obj, Evas_Object *subobj)
  Add subobj as a resize object of window obj.
  Definition: efl_ui_win.c:8997
  elm_win_autodel_set
  void elm_win_autodel_set(Eo *obj, Eina_Bool autodel)
  Set the window's autodel state.
  Definition: efl_ui_win.c:6194
  evas_object_show
  EVAS_API void evas_object_show(Evas_Object *eo_obj)
  Makes the given Evas object visible.
  Definition: evas_object_main.c:1814
  Evas_Object
  Efl_Canvas_Object Evas_Object
  An Evas Object handle.
  Definition: Evas_Common.h:185

Our example will look like this: