#define DEFAULT_WINDOW_TITLE "Select a file"
static const char SIG_FILE_CHOSEN[] = "file,chosen";
+static const char SIG_LANG_CHANGED[] = "language,changed";
+
static const Evas_Smart_Cb_Description _smart_callbacks[] = {
{SIG_FILE_CHOSEN, "s"},
+ {SIG_LANG_CHANGED, ""},
{NULL, NULL}
};
elm_button_smart_class_get, _smart_callbacks);
static Eina_Bool
+_elm_fileselector_button_smart_translate(Evas_Object *obj)
+{
+ evas_object_smart_callback_call(obj, SIG_LANG_CHANGED, NULL);
+ return EINA_TRUE;
+}
+
+static Eina_Bool
_elm_fileselector_button_smart_theme(Evas_Object *obj)
{
char buf[4096];
ELM_WIDGET_CLASS(sc)->base.del = _elm_fileselector_button_smart_del;
ELM_WIDGET_CLASS(sc)->theme = _elm_fileselector_button_smart_theme;
+ ELM_WIDGET_CLASS(sc)->translate = _elm_fileselector_button_smart_translate;
ELM_BUTTON_CLASS(sc)->admits_autorepeat = EINA_FALSE;
}
* - @c "file,chosen" - the user has selected a path, whose string
* pointer comes as the @c event_info data (a stringshared
* string)
+ * - @c "language,changed" - the program's language changed
*
* Default text parts of the fileselector_button widget that you can use for
* are:
static const char SIG_SELECTION_CUT[] = "selection,cut";
static const char SIG_UNPRESSED[] = "unpressed";
static const char SIG_FILE_CHOSEN[] = "file,chosen";
+static const char SIG_LANG_CHANGED[] = "language,changed";
+
static const Evas_Smart_Cb_Description _smart_callbacks[] =
{
{SIG_CHANGED, ""},
{SIG_SELECTION_CUT, ""},
{SIG_UNPRESSED, ""},
{SIG_FILE_CHOSEN, "s"},
+ {SIG_LANG_CHANGED, ""},
{NULL, NULL}
};
evas_object_smart_callback_call(data, SIG_ACTIVATED, event_info);
}
+static Eina_Bool
+_elm_fileselector_entry_smart_translate(Evas_Object *obj)
+{
+ evas_object_smart_callback_call(obj, SIG_LANG_CHANGED, NULL);
+ return EINA_TRUE;
+}
+
static void
_elm_fileselector_entry_smart_sizing_eval(Evas_Object *obj)
{
ELM_WIDGET_CLASS(sc)->disable = _elm_fileselector_entry_smart_disable;
ELM_WIDGET_CLASS(sc)->theme = _elm_fileselector_entry_smart_theme;
+ ELM_WIDGET_CLASS(sc)->translate = _elm_fileselector_entry_smart_translate;
ELM_WIDGET_CLASS(sc)->focus_next = _elm_fileselector_entry_smart_focus_next;
ELM_WIDGET_CLASS(sc)->focus_direction = NULL;
* - @c "file,chosen" - The user has selected a path via the file
* selector entry's internal file selector, whose string pointer
* comes as the @c event_info data (a stringshared string)
+ * - @c "language,changed" - the program's language changed
*
* Default text parts of the fileselector_button widget that you can use for
* are:
static const char SIG_CHANGED[] = "changed";
static const char SIG_DELAY_CHANGED[] = "delay,changed";
+static const char SIG_LANG_CHANGED[] = "language,changed";
+
static const Evas_Smart_Cb_Description _smart_callbacks[] = {
{SIG_CHANGED, ""},
{SIG_DELAY_CHANGED, ""},
+ {SIG_LANG_CHANGED, ""},
{NULL, NULL}
};
(ELM_SPINNER_SMART_NAME, _elm_spinner, Elm_Spinner_Smart_Class,
Elm_Layout_Smart_Class, elm_layout_smart_class_get, _smart_callbacks);
+static Eina_Bool
+_elm_spinner_smart_translate(Evas_Object *obj)
+{
+ evas_object_smart_callback_call(obj, SIG_LANG_CHANGED, NULL);
+ return EINA_TRUE;
+}
+
static void
_entry_show(Elm_Spinner_Smart_Data *sd)
{
ELM_LAYOUT_CLASS(sc)->sizing_eval = _elm_spinner_smart_sizing_eval;
ELM_WIDGET_CLASS(sc)->theme = _elm_spinner_smart_theme;
+ ELM_WIDGET_CLASS(sc)->translate = _elm_spinner_smart_translate;
/* access */
if (_elm_config->access_mode)
* the user. This will be called only when the user stops dragging
* for a very short period or when they release their finger/mouse,
* so it avoids possibly expensive reactions to the value change.
+ * - @c "language,changed" - the program's language changed
*
* Available styles for it:
* - @c "default";