Beispiel #1
0
/**
 * @internal
 * @brief Gets the type of an Etk_Cairo
 * @return Returns the type of an Etk_Cairo
 */
Etk_Type *etk_cairo_type_get(void)
{
  static Etk_Type *cairo_type = NULL;

  if (!cairo_type)
  {
    const Etk_Signal_Description signals[] = {
      ETK_SIGNAL_DESC_HANDLER(ETK_CAIRO_REDRAW_REQUIRED_SIGNAL,
        "redraw-required", Etk_Cairo, redraw_required_handler,
        etk_marshaller_VOID),
      ETK_SIGNAL_DESCRIPTION_SENTINEL
    };

    cairo_type = etk_type_new("Etk_Cairo", ETK_WIDGET_TYPE, sizeof(Etk_Cairo),
      ETK_CONSTRUCTOR(_etk_cairo_constructor), ETK_DESTRUCTOR(_etk_cairo_destructor), signals);

    etk_type_property_add(cairo_type, "min-width", ETK_CAIRO_MIN_WIDTH_PROPERTY,
      ETK_PROPERTY_INT, ETK_PROPERTY_READABLE_WRITABLE, etk_property_value_int(0));
    etk_type_property_add(cairo_type, "min-height", ETK_CAIRO_MIN_HEIGHT_PROPERTY,
      ETK_PROPERTY_INT, ETK_PROPERTY_READABLE_WRITABLE, etk_property_value_int(0));

    cairo_type->property_set = _etk_cairo_property_set;
    cairo_type->property_get = _etk_cairo_property_get;
  }

  return cairo_type;
}
Beispiel #2
0
/**
 * @internal
 * @brief Gets the type of an Etk_Dialog
 * @return Returns the type of an Etk_Dialog
 */
Etk_Type *etk_dialog_type_get(void)
{
   static Etk_Type *dialog_type = NULL;

   if (!dialog_type)
   {
      const Etk_Signal_Description signals[] = {
         ETK_SIGNAL_DESC_NO_HANDLER(ETK_DIALOG_RESPONSE_SIGNAL,
            "response", etk_marshaller_INT),
         ETK_SIGNAL_DESCRIPTION_SENTINEL
      };

      dialog_type = etk_type_new("Etk_Dialog", ETK_WINDOW_TYPE,
         sizeof(Etk_Dialog), ETK_CONSTRUCTOR(_etk_dialog_constructor),
         NULL, signals);

      etk_type_property_add(dialog_type, "has-separator", ETK_DIALOG_HAS_SEPARATOR_PROPERTY,
            ETK_PROPERTY_BOOL, ETK_PROPERTY_READABLE_WRITABLE, etk_property_value_bool(ETK_TRUE));
      etk_type_property_add(dialog_type, "action-area-homogeneous", ETK_DIALOG_ACTION_AREA_HOMOGENEOUS_PROPERTY,
            ETK_PROPERTY_BOOL, ETK_PROPERTY_READABLE_WRITABLE, etk_property_value_bool(ETK_TRUE));
      etk_type_property_add(dialog_type, "action-area-align", ETK_DIALOG_ACTION_AREA_ALIGN_PROPERTY,
            ETK_PROPERTY_FLOAT, ETK_PROPERTY_READABLE_WRITABLE, etk_property_value_float(0.5));

      dialog_type->property_set = _etk_dialog_property_set;
      dialog_type->property_get = _etk_dialog_property_get;
   }

   return dialog_type;
}
Beispiel #3
0
/**
 * @internal
 * @brief Gets the type of an Etk_Menu_Item
 * @return Returns the type of an Etk_Menu_Item
 */
Etk_Type *etk_menu_item_type_get(void)
{
   static Etk_Type *menu_item_type = NULL;

   if (!menu_item_type)
   {
      const Etk_Signal_Description signals[] = {
         ETK_SIGNAL_DESC_HANDLER(ETK_MENU_ITEM_SELECTED_SIGNAL,
            "selected", Etk_Menu_Item, selected_handler,
            etk_marshaller_VOID),
         ETK_SIGNAL_DESC_HANDLER(ETK_MENU_ITEM_UNSELECTED_SIGNAL,
            "unselected", Etk_Menu_Item, unselected_handler,
            etk_marshaller_VOID),
         ETK_SIGNAL_DESC_HANDLER(ETK_MENU_ITEM_ACTIVATED_SIGNAL,
            "activated", Etk_Menu_Item, activated_handler,
            etk_marshaller_VOID),
         ETK_SIGNAL_DESCRIPTION_SENTINEL
      };

      menu_item_type = etk_type_new("Etk_Menu_Item", ETK_WIDGET_TYPE,
         sizeof(Etk_Menu_Item), ETK_CONSTRUCTOR(_etk_menu_item_constructor),
         ETK_DESTRUCTOR(_etk_menu_item_destructor), signals);

      etk_type_property_add(menu_item_type, "label", ETK_MENU_ITEM_LABEL_PROPERTY,
         ETK_PROPERTY_STRING, ETK_PROPERTY_READABLE_WRITABLE, etk_property_value_string(NULL));
      etk_type_property_add(menu_item_type, "submenu", ETK_MENU_ITEM_SUBMENU_PROPERTY,
         ETK_PROPERTY_OBJECT, ETK_PROPERTY_READABLE_WRITABLE, etk_property_value_object(NULL));

      menu_item_type->property_set = _etk_menu_item_property_set;
      menu_item_type->property_get = _etk_menu_item_property_get;
   }

   return menu_item_type;
}
Beispiel #4
0
/**
 * @internal
 * @brief Gets the type of an Etk_Menu_Item_Check
 * @return Returns the type of an Etk_Menu_Item_Check
 */
Etk_Type *etk_menu_item_check_type_get(void)
{
   static Etk_Type *menu_item_check_type = NULL;

   if (!menu_item_check_type)
   {
      const Etk_Signal_Description signals[] = {
         ETK_SIGNAL_DESC_HANDLER(ETK_MENU_ITEM_CHECK_TOGGLED_SIGNAL,
            "toggled", Etk_Menu_Item_Check, toggled_handler,
            etk_marshaller_VOID),
         ETK_SIGNAL_DESCRIPTION_SENTINEL
      };

      menu_item_check_type = etk_type_new("Etk_Menu_Item_Check",
         ETK_MENU_ITEM_TYPE, sizeof(Etk_Menu_Item_Check),
         ETK_CONSTRUCTOR(_etk_menu_item_check_constructor), NULL, signals);

      etk_type_property_add(menu_item_check_type, "active", ETK_MENU_ITEM_ACTIVE_PROPERTY,
         ETK_PROPERTY_BOOL, ETK_PROPERTY_READABLE_WRITABLE, etk_property_value_bool(ETK_FALSE));

      menu_item_check_type->property_set = _etk_menu_item_check_property_set;
      menu_item_check_type->property_get = _etk_menu_item_check_property_get;
   }

   return menu_item_check_type;
}
Beispiel #5
0
/**
 * @internal
 * @brief Gets the type of an Etk_HSeparator
 * @return Returns the type of an Etk_HSeparator
 */
Etk_Type *etk_hseparator_type_get(void)
{
   static Etk_Type *hseparator_type = NULL;

   if (!hseparator_type)
      hseparator_type = etk_type_new("Etk_HSeparator", ETK_SEPARATOR_TYPE,
         sizeof(Etk_HSeparator), NULL, NULL, NULL);

   return hseparator_type;
}
Beispiel #6
0
/**
 * @internal
 * @brief Gets the type of an Etk_VSeparator
 * @return Returns the type of an Etk_VSeparator
 */
Etk_Type *etk_vseparator_type_get(void)
{
   static Etk_Type *vseparator_type = NULL;

   if (!vseparator_type)
      vseparator_type = etk_type_new("Etk_VSeparator", ETK_SEPARATOR_TYPE,
         sizeof(Etk_VSeparator), NULL, NULL, NULL);

   return vseparator_type;
}
Beispiel #7
0
/**
 * @internal
 * @brief Gets the type of an Etk_Separator
 * @return Returns the type of an Etk_Separator
 */
Etk_Type *etk_separator_type_get(void)
{
   static Etk_Type *separator_type = NULL;

   if (!separator_type)
      separator_type = etk_type_new("Etk_Separator", ETK_WIDGET_TYPE,
         sizeof(Etk_Separator), NULL, NULL, NULL);

   return separator_type;
}
Beispiel #8
0
/**
 * @internal
 * @brief Gets the type of an Etk_VBox
 * @return Returns the type of an Etk_VBox
 */
Etk_Type *etk_vbox_type_get(void)
{
   static Etk_Type *vbox_type = NULL;

   if (!vbox_type)
   {
      vbox_type = etk_type_new("Etk_VBox", ETK_BOX_TYPE, sizeof(Etk_VBox),
         ETK_CONSTRUCTOR(_etk_vbox_constructor), NULL, NULL);
   }

   return vbox_type;
}
Beispiel #9
0
/**
 * @internal
 * @brief Gets the type of an Etk_Drag
 * @return Returns the type on an Etk_Drag
 */
Etk_Type *etk_drag_type_get(void)
{
   static Etk_Type *drag_type = NULL;

   if(!drag_type)
   {
      drag_type = etk_type_new("Etk_Drag", ETK_WINDOW_TYPE, sizeof(Etk_Drag),
         NULL, NULL, NULL);
   }

   return drag_type;
}
Beispiel #10
0
/**
 * @internal
 * @brief Gets the type of an Etk_Menu_Item_Separator
 * @return Returns the type of an Etk_Menu_Item_Separator
 */
Etk_Type *etk_menu_item_separator_type_get(void)
{
   static Etk_Type *menu_item_separator_type = NULL;

   if (!menu_item_separator_type)
   {
      menu_item_separator_type = etk_type_new("Etk_Menu_Item_Separator",
         ETK_MENU_ITEM_TYPE, sizeof(Etk_Menu_Item_Separator),
         NULL, NULL, NULL);
   }

   return menu_item_separator_type;
}
Beispiel #11
0
/**
 * @internal
 * @brief Gets the type of an Etk_String
 * @return Returns the type of an Etk_String
 */
Etk_Type *etk_string_type_get(void)
{
   static Etk_Type *string_type = NULL;

   if (!string_type)
   {
      string_type = etk_type_new("Etk_String", ETK_OBJECT_TYPE, sizeof(Etk_String),
            ETK_CONSTRUCTOR(_etk_string_constructor), ETK_DESTRUCTOR(_etk_string_destructor), NULL);
      etk_type_property_add(string_type, "string", ETK_STRING_STRING_PROPERTY,
            ETK_PROPERTY_STRING, ETK_PROPERTY_READABLE_WRITABLE, etk_property_value_string(NULL));
      
      string_type->property_set = _etk_string_property_set;
      string_type->property_get = _etk_string_property_get;
   }

   return string_type;
}
Beispiel #12
0
/**
 * @internal
 * @brief Gets the type of an Etk_Menu_Item_Radio
 * @return Returns the type of an Etk_Menu_Item_Radio
 */
Etk_Type *etk_menu_item_radio_type_get(void)
{
   static Etk_Type *menu_item_radio_type = NULL;

   if (!menu_item_radio_type)
   {
      menu_item_radio_type = etk_type_new("Etk_Menu_Item_Radio", ETK_MENU_ITEM_CHECK_TYPE, sizeof(Etk_Menu_Item_Radio),
         ETK_CONSTRUCTOR(_etk_menu_item_radio_constructor), ETK_DESTRUCTOR(_etk_menu_item_radio_destructor), NULL);

      etk_type_property_add(menu_item_radio_type, "group", ETK_MENU_ITEM_GROUP_PROPERTY,
         ETK_PROPERTY_POINTER, ETK_PROPERTY_READABLE_WRITABLE,  etk_property_value_pointer(NULL));

      menu_item_radio_type->property_set = _etk_menu_item_radio_property_set;
      menu_item_radio_type->property_get = _etk_menu_item_radio_property_get;
   }

   return menu_item_radio_type;
}
Beispiel #13
0
/**
 * @internal
 * @brief Gets the type of an Etk_Menu_Item_Image
 * @return Returns the type of an Etk_Menu_Item_Image
 */
Etk_Type *etk_menu_item_image_type_get(void)
{
   static Etk_Type *menu_item_image_type = NULL;

   if (!menu_item_image_type)
   {
      menu_item_image_type = etk_type_new("Etk_Menu_Item_Image",
         ETK_MENU_ITEM_TYPE, sizeof(Etk_Menu_Item_Image),
         NULL, NULL, NULL);

      etk_type_property_add(menu_item_image_type, "image", ETK_MENU_ITEM_IMAGE_PROPERTY,
         ETK_PROPERTY_OBJECT, ETK_PROPERTY_READABLE_WRITABLE, etk_property_value_object(NULL));

      menu_item_image_type->property_set = _etk_menu_item_image_property_set;
      menu_item_image_type->property_get = _etk_menu_item_image_property_get;
   }

   return menu_item_image_type;
}
Beispiel #14
0
/**
 * @internal
 * @brief Gets the type of an Etk_Frame
 * @return Returns the type of an Etk_Frame
 */
Etk_Type *etk_frame_type_get(void)
{
   static Etk_Type *frame_type = NULL;

   if (!frame_type)
   {
      frame_type = etk_type_new("Etk_Frame", ETK_BIN_TYPE, sizeof(Etk_Frame),
         ETK_CONSTRUCTOR(_etk_frame_constructor),
         ETK_DESTRUCTOR(_etk_frame_destructor), NULL);

      etk_type_property_add(frame_type, "label", ETK_FRAME_LABEL_PROPERTY,
         ETK_PROPERTY_STRING, ETK_PROPERTY_READABLE_WRITABLE, etk_property_value_string(NULL));

      frame_type->property_set = _etk_frame_property_set;
      frame_type->property_get = _etk_frame_property_get;
   }

   return frame_type;
}
Beispiel #15
0
/**
 * @internal
 * @brief Gets the type of an Etk_Statusbar
 * @return Returns the type of an Etk_Statusbar
 */
Etk_Type *etk_statusbar_type_get(void)
{
   static Etk_Type *statusbar_type = NULL;

   if (!statusbar_type)
   {
      statusbar_type = etk_type_new("Etk_Statusbar", ETK_WIDGET_TYPE, sizeof(Etk_Statusbar),
         ETK_CONSTRUCTOR(_etk_statusbar_constructor), ETK_DESTRUCTOR(_etk_statusbar_destructor), NULL);

      etk_type_property_add(statusbar_type, "current-message", ETK_STATUSBAR_CURRENT_MESSAGE_PROPERTY,
         ETK_PROPERTY_STRING, ETK_PROPERTY_READABLE, NULL);
      etk_type_property_add(statusbar_type, "has-resize-grip", ETK_STATUSBAR_HAS_RESIZE_GRIP_PROPERTY,
         ETK_PROPERTY_BOOL, ETK_PROPERTY_READABLE_WRITABLE, etk_property_value_bool(ETK_TRUE));

      statusbar_type->property_set = _etk_statusbar_property_set;
      statusbar_type->property_get = _etk_statusbar_property_get;
   }

   return statusbar_type;
}
Beispiel #16
0
/**
 * @internal
 * @brief Gets the type of an Etk_Radio_Button
 * @return Returns the type of an Etk_Radio_Button
 */
Etk_Type *etk_radio_button_type_get(void)
{
   static Etk_Type *radio_button_type = NULL;

   if (!radio_button_type)
   {
      radio_button_type = etk_type_new("Etk_Radio_Button", ETK_TOGGLE_BUTTON_TYPE,
         sizeof(Etk_Radio_Button),
         ETK_CONSTRUCTOR(_etk_radio_button_constructor),
         ETK_DESTRUCTOR(_etk_radio_button_destructor), NULL);

      etk_type_property_add(radio_button_type, "group", ETK_RADIO_BUTTON_GROUP_PROPERTY,
            ETK_PROPERTY_POINTER, ETK_PROPERTY_READABLE_WRITABLE,  etk_property_value_pointer(NULL));

      radio_button_type->property_set = _etk_radio_button_property_set;
      radio_button_type->property_get = _etk_radio_button_property_get;
   }

   return radio_button_type;
}
Beispiel #17
0
/**
 * @internal
 * @brief Gets the type of an Etk_Box
 * @return Returns the type of an Etk_Box
 */
Etk_Type *etk_box_type_get(void)
{
   static Etk_Type *box_type = NULL;

   if (!box_type)
   {
      box_type = etk_type_new("Etk_Box", ETK_CONTAINER_TYPE, sizeof(Etk_Box),
         ETK_CONSTRUCTOR(_etk_box_constructor),
         ETK_DESTRUCTOR(_etk_box_destructor), NULL);

      etk_type_property_add(box_type, "spacing", ETK_BOX_SPACING_PROPERTY,
            ETK_PROPERTY_INT, ETK_PROPERTY_READABLE_WRITABLE, etk_property_value_int(0));
      etk_type_property_add(box_type, "homogeneous", ETK_BOX_HOMOGENEOUS_PROPERTY,
            ETK_PROPERTY_BOOL, ETK_PROPERTY_READABLE_WRITABLE, etk_property_value_bool(ETK_FALSE));

      box_type->property_set = _etk_box_property_set;
      box_type->property_get = _etk_box_property_get;
   }

   return box_type;
}
Beispiel #18
0
/**
 * @internal
 * @brief Gets the type of an Etk_Spinner
 * @return Returns the type of an Etk_Spinner
 */
Etk_Type *etk_spinner_type_get(void)
{
   static Etk_Type *spinner_type = NULL;

   if (!spinner_type)
   {
      spinner_type = etk_type_new("Etk_Spinner", ETK_RANGE_TYPE, sizeof(Etk_Spinner),
         ETK_CONSTRUCTOR(_etk_spinner_constructor), NULL, NULL);

      etk_type_property_add(spinner_type, "digits", ETK_SPINNER_DIGITS_PROPERTY,
         ETK_PROPERTY_INT, ETK_PROPERTY_READABLE_WRITABLE,  etk_property_value_int(0));
      etk_type_property_add(spinner_type, "snap-to-ticks", ETK_SPINNER_SNAP_TO_TICKS_PROPERTY,
         ETK_PROPERTY_BOOL, ETK_PROPERTY_READABLE_WRITABLE,  etk_property_value_bool(ETK_FALSE));
      etk_type_property_add(spinner_type, "wrap", ETK_SPINNER_WRAP_PROPERTY,
         ETK_PROPERTY_BOOL, ETK_PROPERTY_READABLE_WRITABLE,  etk_property_value_bool(ETK_FALSE));

      spinner_type->property_set = _etk_spinner_property_set;
      spinner_type->property_get = _etk_spinner_property_get;
   }

   return spinner_type;
}
Beispiel #19
0
/**
 * @brief Gets the type of an Etk_Toolbar
 * @return Returns the type of an Etk_Toolbar
 */
Etk_Type *etk_toolbar_type_get(void)
{
   static Etk_Type *toolbar_type = NULL;

   if (!toolbar_type)
   {
      toolbar_type = etk_type_new("Etk_Toolbar", ETK_CONTAINER_TYPE, sizeof(Etk_Toolbar),
         ETK_CONSTRUCTOR(_etk_toolbar_constructor), NULL, NULL);

      etk_type_property_add(toolbar_type, "orientation", ETK_TOOLBAR_ORIENTATION_PROPERTY,
         ETK_PROPERTY_INT, ETK_PROPERTY_READABLE_WRITABLE, etk_property_value_int(ETK_TOOLBAR_HORIZ));
      etk_type_property_add(toolbar_type, "style", ETK_TOOLBAR_STYLE_PROPERTY,
         ETK_PROPERTY_INT, ETK_PROPERTY_READABLE_WRITABLE, etk_property_value_int(ETK_TOOLBAR_BOTH_VERT));
      etk_type_property_add(toolbar_type, "stock-size", ETK_TOOLBAR_STOCK_SIZE_PROPERTY,
         ETK_PROPERTY_INT, ETK_PROPERTY_READABLE_WRITABLE, etk_property_value_int(ETK_STOCK_MEDIUM));

      toolbar_type->property_set = _etk_toolbar_property_set;
      toolbar_type->property_get = _etk_toolbar_property_get;
   }

   return toolbar_type;
}
Beispiel #20
0
/**
 * @internal
 * @brief Gets the type of an Etk_Table
 * @return Returns the type of an Etk_Table
 */
Etk_Type *etk_table_type_get(void)
{
   static Etk_Type *table_type = NULL;

   if (!table_type)
   {
      table_type = etk_type_new("Etk_Table", ETK_CONTAINER_TYPE, sizeof(Etk_Table),
            ETK_CONSTRUCTOR(_etk_table_constructor), ETK_DESTRUCTOR(_etk_table_destructor), NULL);

      etk_type_property_add(table_type, "num-cols", ETK_TABLE_NUM_COLS_PROPERTY,
            ETK_PROPERTY_INT, ETK_PROPERTY_READABLE_WRITABLE,  etk_property_value_int(0));
      etk_type_property_add(table_type, "num-rows", ETK_TABLE_NUM_ROWS_PROPERTY,
            ETK_PROPERTY_INT, ETK_PROPERTY_READABLE_WRITABLE,  etk_property_value_int(0));
      etk_type_property_add(table_type, "homogeneous", ETK_TABLE_HOMOGENEOUS_PROPERTY,
            ETK_PROPERTY_INT, ETK_PROPERTY_READABLE_WRITABLE,  etk_property_value_int(ETK_TABLE_NOT_HOMOGENEOUS));

      table_type->property_set = _etk_table_property_set;
      table_type->property_get = _etk_table_property_get;
   }

   return table_type;
}