[vlc-devel] commit: Support for custom text domain in module strings ( Rémi Denis-Courmont )
git version control
git at videolan.org
Thu Jun 5 18:59:07 CEST 2008
vlc | branch: master | Rémi Denis-Courmont <rdenis at simphalempin.com> | Thu Jun 5 19:16:05 2008 +0300| [64ae2cbffa7639c04869e6588f80f5c1a7d05221]
Support for custom text domain in module strings
> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=64ae2cbffa7639c04869e6588f80f5c1a7d05221
---
include/vlc_plugin.h | 20 +++++++++++-------
src/modules/entry.c | 52 ++++++++++++++++++++++++++++++++++++++++++-------
2 files changed, 56 insertions(+), 16 deletions(-)
diff --git a/include/vlc_plugin.h b/include/vlc_plugin.h
index c2ae1a2..77b6c49 100644
--- a/include/vlc_plugin.h
+++ b/include/vlc_plugin.h
@@ -122,17 +122,18 @@ E_(vlc_entry) ( module_t *p_module );
goto error;
#define set_shortname( shortname ) \
- if (vlc_module_set (p_submodule, VLC_MODULE_SHORTNAME, \
- (const char *)(shortname))) \
+ if (vlc_module_set (p_submodule, VLC_MODULE_SHORTNAME, domain, \
+ (const char *)(shortname))) \
goto error;
#define set_description( desc ) \
- if (vlc_module_set (p_submodule, VLC_MODULE_DESCRIPTION, \
+ if (vlc_module_set (p_submodule, VLC_MODULE_DESCRIPTION, domain, \
(const char *)(desc))) \
goto error;
#define set_help( help ) \
- if (vlc_module_set (p_submodule, VLC_MODULE_HELP, (const char *)(help))) \
+ if (vlc_module_set (p_submodule, VLC_MODULE_HELP, domain, \
+ (const char *)(help))) \
goto error;
#define set_capability( cap, score ) \
@@ -162,16 +163,19 @@ enum vlc_module_properties
* Append new items at the end ONLY. */
VLC_MODULE_CPU_REQUIREMENT,
VLC_MODULE_SHORTCUT,
- VLC_MODULE_SHORTNAME,
- VLC_MODULE_DESCRIPTION,
- VLC_MODULE_HELP,
+ VLC_MODULE_SHORTNAME_NODOMAIN,
+ VLC_MODULE_DESCRIPTION_NODOMAIN,
+ VLC_MODULE_HELP_NODOMAIN,
VLC_MODULE_CAPABILITY,
VLC_MODULE_SCORE,
- VLC_MODULE_PROGRAM,
+ VLC_MODULE_PROGRAM, /* obsoleted */
VLC_MODULE_CB_OPEN,
VLC_MODULE_CB_CLOSE,
VLC_MODULE_NO_UNLOAD,
VLC_MODULE_NAME,
+ VLC_MODULE_SHORTNAME,
+ VLC_MODULE_DESCRIPTION,
+ VLC_MODULE_HELP,
};
enum vlc_config_properties
diff --git a/src/modules/entry.c b/src/modules/entry.c
index cf3d0f3..909d401 100644
--- a/src/modules/entry.c
+++ b/src/modules/entry.c
@@ -108,17 +108,26 @@ int vlc_module_set (module_t *module, int propid, ...)
break;
}
- case VLC_MODULE_SHORTNAME:
- module->psz_shortname = dgettext (PACKAGE, va_arg (ap, char *));
+ case VLC_MODULE_SHORTNAME_NODOMAIN:
+ {
+ const char *name = va_arg (ap, char *);
+ ret = vlc_module_set (module, VLC_MODULE_SHORTNAME, NULL, name);
break;
+ }
- case VLC_MODULE_DESCRIPTION:
- module->psz_longname = dgettext (PACKAGE, va_arg (ap, char *));
+ case VLC_MODULE_DESCRIPTION_NODOMAIN:
+ {
+ const char *desc = va_arg (ap, char *);
+ ret = vlc_module_set (module, VLC_MODULE_DESCRIPTION, NULL, desc);
break;
+ }
- case VLC_MODULE_HELP:
- module->psz_help = dgettext (PACKAGE, va_arg (ap, char *));
+ case VLC_MODULE_HELP_NODOMAIN:
+ {
+ const char *help = va_arg (ap, char *);
+ ret = vlc_module_set (module, VLC_MODULE_HELP, NULL, help);
break;
+ }
case VLC_MODULE_CAPABILITY:
module->psz_capability = va_arg (ap, char *);
@@ -128,6 +137,10 @@ int vlc_module_set (module_t *module, int propid, ...)
module->i_score = va_arg (ap, int);
break;
+ case VLC_MODULE_PROGRAM:
+ msg_Warn (module, "deprecated module property %d", propid);
+ break;
+
case VLC_MODULE_CB_OPEN:
module->pf_activate = va_arg (ap, int (*) (vlc_object_t *));
break;
@@ -151,9 +164,32 @@ int vlc_module_set (module_t *module, int propid, ...)
break;
}
- case VLC_MODULE_PROGRAM:
- msg_Warn (module, "deprecated module property %d", propid);
+ case VLC_MODULE_SHORTNAME:
+ {
+ const char *domain = va_arg (ap, const char *);
+ if (domain == NULL)
+ domain = PACKAGE;
+ module->psz_shortname = dgettext (domain, va_arg (ap, char *));
+ break;
+ }
+
+ case VLC_MODULE_DESCRIPTION:
+ {
+ const char *domain = va_arg (ap, const char *);
+ if (domain == NULL)
+ domain = PACKAGE;
+ module->psz_longname = dgettext (domain, va_arg (ap, char *));
break;
+ }
+
+ case VLC_MODULE_HELP:
+ {
+ const char *domain = va_arg (ap, const char *);
+ if (domain == NULL)
+ domain = PACKAGE;
+ module->psz_help = dgettext (domain, va_arg (ap, char *));
+ break;
+ }
default:
msg_Err (module, "unknown module property %d", propid);
More information about the vlc-devel
mailing list