summaryrefslogtreecommitdiff
path: root/profiles
diff options
context:
space:
mode:
authorStefano Karapetsas <[email protected]>2011-12-11 13:11:15 +0100
committerStefano Karapetsas <[email protected]>2011-12-11 13:11:15 +0100
commit4ee2559eaaf2a94ac26c265517e9604a72729360 (patch)
treef24e3e3294c2b75819755289e592bf2e28e668c4 /profiles
downloadmate-media-4ee2559eaaf2a94ac26c265517e9604a72729360.tar.bz2
mate-media-4ee2559eaaf2a94ac26c265517e9604a72729360.tar.xz
moved from Mate-Extra
Diffstat (limited to 'profiles')
-rw-r--r--profiles/Makefile.am81
-rw-r--r--profiles/Makefile.in1111
-rw-r--r--profiles/README73
-rw-r--r--profiles/audio-profile-choose.c436
-rw-r--r--profiles/audio-profile-choose.h74
-rw-r--r--profiles/audio-profile-edit.c426
-rw-r--r--profiles/audio-profile-edit.h63
-rw-r--r--profiles/audio-profile-private.h54
-rw-r--r--profiles/audio-profile.c1132
-rw-r--r--profiles/audio-profile.h84
-rw-r--r--profiles/audio-profiles-edit.c988
-rw-r--r--profiles/audio-profiles-edit.h67
-rw-r--r--profiles/glade/Makefile.am26
-rw-r--r--profiles/glade/Makefile.in671
-rw-r--r--profiles/glade/mate-media-profiles-catalog.c8
-rw-r--r--profiles/glade/mate-media-profiles.xml29
-rw-r--r--profiles/gmp-conf.h26
-rw-r--r--profiles/gmp-util.c164
-rw-r--r--profiles/gmp-util.h40
-rw-r--r--profiles/help/C/figures/mate-audio-profiles-profile-window.pngbin0 -> 24667 bytes
-rw-r--r--profiles/help/C/figures/mate-audio-profiles-profiles-window.pngbin0 -> 18912 bytes
-rw-r--r--profiles/help/C/legal.xml73
-rw-r--r--profiles/help/C/mate-audio-profiles.xml262
-rw-r--r--profiles/help/ChangeLog4
-rw-r--r--profiles/help/Makefile.am10
-rw-r--r--profiles/help/Makefile.in995
-rw-r--r--profiles/help/da/da.po603
-rw-r--r--profiles/help/de/de.po415
-rw-r--r--profiles/help/de/figures/mate-audio-profiles-profile-window.pngbin0 -> 47134 bytes
-rw-r--r--profiles/help/de/figures/mate-audio-profiles-profiles-window.pngbin0 -> 33638 bytes
-rw-r--r--profiles/help/el/el.po270
-rw-r--r--profiles/help/es/es.po415
-rw-r--r--profiles/help/fr/figures/mate-audio-profiles-profile-window.pngbin0 -> 38715 bytes
-rw-r--r--profiles/help/fr/figures/mate-audio-profiles-profiles-window.pngbin0 -> 26516 bytes
-rw-r--r--profiles/help/fr/fr.po427
-rw-r--r--profiles/help/mate-audio-profiles.omf.in9
-rw-r--r--profiles/help/sv/figures/mate-audio-profiles-profile-window.pngbin0 -> 32967 bytes
-rw-r--r--profiles/help/sv/sv.po260
-rw-r--r--profiles/mate-audio-profile-edit.ui204
-rw-r--r--profiles/mate-audio-profile-new.ui195
-rw-r--r--profiles/mate-audio-profiles-properties.c81
-rw-r--r--profiles/mate-audio-profiles-test.c188
-rw-r--r--profiles/mate-audio-profiles.schemas.in.in612
-rw-r--r--profiles/mate-media-profiles.c72
-rw-r--r--profiles/mate-media-profiles.h27
-rw-r--r--profiles/mate-media-profiles.pc.in13
46 files changed, 10688 insertions, 0 deletions
diff --git a/profiles/Makefile.am b/profiles/Makefile.am
new file mode 100644
index 0000000..4e73ca3
--- /dev/null
+++ b/profiles/Makefile.am
@@ -0,0 +1,81 @@
+bin_PROGRAMS = mate-audio-profiles-properties
+noinst_PROGRAMS =
+
+defines = \
+ -DG_LOG_DOMAIN=\"mate-media-profiles\" \
+ -DDATADIR="\"$(pkgdatadir)\"" \
+ -DGMP_UIDIR=\"$(uidir)\" \
+ -DMATELOCALEDIR=\""$(datadir)/locale"\" \
+ $(DISABLE_DEPRECATED)
+
+if HAVE_GSTREAMER
+noinst_PROGRAMS += mate-audio-profiles-test
+mate_audio_profiles_test_SOURCES = mate-audio-profiles-test.c
+mate_audio_profiles_test_CFLAGS = $(GMP_CFLAGS) $(GSR_CFLAGS) $(defines) -I$(top_srcdir)
+mate_audio_profiles_test_LDADD = libmate-media-profiles.la $(GMP_LIBS) $(GSR_LIBS)
+endif
+
+lib_LTLIBRARIES = libmate-media-profiles.la
+
+@INTLTOOL_DESKTOP_RULE@
+@INTLTOOL_SCHEMAS_RULE@
+
+uidir = $(pkgdatadir)
+ui_DATA = mate-audio-profile-new.ui mate-audio-profile-edit.ui
+
+mate_audio_profiles_properties_SOURCES = mate-audio-profiles-properties.c
+mate_audio_profiles_properties_CFLAGS = $(GMP_CFLAGS) $(defines) -I$(top_srcdir)
+mate_audio_profiles_properties_LDADD = libmate-media-profiles.la $(GMP_LIBS)
+
+libmate_media_profiles_la_SOURCES = \
+ audio-profile.c \
+ audio-profiles-edit.c \
+ audio-profile-edit.c \
+ audio-profile-choose.c \
+ mate-media-profiles.c \
+ gmp-util.c
+
+noinst_HEADERS = \
+ audio-profile-private.h \
+ gmp-conf.h \
+ gmp-util.h
+
+
+gmpincludedir = $(includedir)/mate-media/profiles
+gmpinclude_HEADERS = \
+ audio-profile.h \
+ audio-profile-choose.h \
+ audio-profile-edit.h \
+ audio-profiles-edit.h \
+ mate-media-profiles.h
+
+libmate_media_profiles_la_CFLAGS = $(GMP_CFLAGS) $(defines) -I$(top_srcdir)
+libmate_media_profiles_la_LIBADD = $(GMP_LIBS)
+libmate_media_profiles_la_LDFLAGS = -no-undefined
+
+schemadir = $(MATECONF_SCHEMA_FILE_DIR)
+schema_DATA = mate-audio-profiles.schemas
+
+install-schemas:
+ MATECONF_CONFIG_SOURCE=$(MATECONF_SCHEMA_CONFIG_SOURCE) $(MATECONFTOOL) --makefile-install-rule $(top_builddir)/profiles/$(schema_DATA) || true
+
+if MATECONF_SCHEMAS_INSTALL
+install-data-local: install-schemas
+else
+install-data-local:
+endif
+
+pkgconfigdir = $(libdir)/pkgconfig
+pkgconfig_DATA = mate-media-profiles.pc
+EXTRA_DIST = $(ui_DATA) $(schema_DATA) $(pkgconfig_DATA)
+
+CLEANFILES = $(schema_DATA)
+
+# "." is dirty hack to first build our .la in this dir before moving to glade
+SUBDIRS = . help
+
+if HAVE_GLADEUI
+SUBDIRS += glade
+endif
+
+-include $(top_srcdir)/git.mk
diff --git a/profiles/Makefile.in b/profiles/Makefile.in
new file mode 100644
index 0000000..8400fc8
--- /dev/null
+++ b/profiles/Makefile.in
@@ -0,0 +1,1111 @@
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
+# Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+
+
+
+
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+bin_PROGRAMS = mate-audio-profiles-properties$(EXEEXT)
+noinst_PROGRAMS = $(am__EXEEXT_1)
+@HAVE_GSTREAMER_TRUE@am__append_1 = mate-audio-profiles-test
+@HAVE_GLADEUI_TRUE@am__append_2 = glade
+subdir = profiles
+DIST_COMMON = README $(gmpinclude_HEADERS) $(noinst_HEADERS) \
+ $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
+ $(srcdir)/mate-audio-profiles.schemas.in.in \
+ $(srcdir)/mate-media-profiles.pc.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/as-ac-expand.m4 \
+ $(top_srcdir)/m4/as-compiler-flag.m4 \
+ $(top_srcdir)/m4/as-version.m4 $(top_srcdir)/m4/intltool.m4 \
+ $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \
+ $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \
+ $(top_srcdir)/m4/lt~obsolete.m4 \
+ $(top_srcdir)/m4/mate-doc-utils.m4 $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(SHELL) $(top_srcdir)/build-aux/mkinstalldirs
+CONFIG_HEADER = $(top_builddir)/config.h
+CONFIG_CLEAN_FILES = mate-audio-profiles.schemas.in \
+ mate-media-profiles.pc
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+ *) f=$$p;; \
+ esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+ srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+ for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+ for p in $$list; do echo "$$p $$p"; done | \
+ sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+ $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+ if (++n[$$2] == $(am__install_max)) \
+ { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+ END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+ sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+ sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
+am__installdirs = "$(DESTDIR)$(libdir)" "$(DESTDIR)$(bindir)" \
+ "$(DESTDIR)$(pkgconfigdir)" "$(DESTDIR)$(schemadir)" \
+ "$(DESTDIR)$(uidir)" "$(DESTDIR)$(gmpincludedir)"
+LTLIBRARIES = $(lib_LTLIBRARIES)
+am__DEPENDENCIES_1 =
+libmate_media_profiles_la_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am_libmate_media_profiles_la_OBJECTS = \
+ libmate_media_profiles_la-audio-profile.lo \
+ libmate_media_profiles_la-audio-profiles-edit.lo \
+ libmate_media_profiles_la-audio-profile-edit.lo \
+ libmate_media_profiles_la-audio-profile-choose.lo \
+ libmate_media_profiles_la-mate-media-profiles.lo \
+ libmate_media_profiles_la-gmp-util.lo
+libmate_media_profiles_la_OBJECTS = \
+ $(am_libmate_media_profiles_la_OBJECTS)
+AM_V_lt = $(am__v_lt_$(V))
+am__v_lt_ = $(am__v_lt_$(AM_DEFAULT_VERBOSITY))
+am__v_lt_0 = --silent
+libmate_media_profiles_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \
+ $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \
+ $(libmate_media_profiles_la_CFLAGS) $(CFLAGS) \
+ $(libmate_media_profiles_la_LDFLAGS) $(LDFLAGS) -o $@
+@HAVE_GSTREAMER_TRUE@am__EXEEXT_1 = mate-audio-profiles-test$(EXEEXT)
+PROGRAMS = $(bin_PROGRAMS) $(noinst_PROGRAMS)
+am_mate_audio_profiles_properties_OBJECTS = mate_audio_profiles_properties-mate-audio-profiles-properties.$(OBJEXT)
+mate_audio_profiles_properties_OBJECTS = \
+ $(am_mate_audio_profiles_properties_OBJECTS)
+mate_audio_profiles_properties_DEPENDENCIES = \
+ libmate-media-profiles.la $(am__DEPENDENCIES_1)
+mate_audio_profiles_properties_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \
+ $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \
+ $(mate_audio_profiles_properties_CFLAGS) $(CFLAGS) \
+ $(AM_LDFLAGS) $(LDFLAGS) -o $@
+am__mate_audio_profiles_test_SOURCES_DIST = \
+ mate-audio-profiles-test.c
+@HAVE_GSTREAMER_TRUE@am_mate_audio_profiles_test_OBJECTS = mate_audio_profiles_test-mate-audio-profiles-test.$(OBJEXT)
+mate_audio_profiles_test_OBJECTS = \
+ $(am_mate_audio_profiles_test_OBJECTS)
+@HAVE_GSTREAMER_TRUE@mate_audio_profiles_test_DEPENDENCIES = \
+@HAVE_GSTREAMER_TRUE@ libmate-media-profiles.la \
+@HAVE_GSTREAMER_TRUE@ $(am__DEPENDENCIES_1) \
+@HAVE_GSTREAMER_TRUE@ $(am__DEPENDENCIES_1)
+mate_audio_profiles_test_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \
+ $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \
+ $(mate_audio_profiles_test_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
+ $(LDFLAGS) -o $@
+DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
+depcomp = $(SHELL) $(top_srcdir)/build-aux/depcomp
+am__depfiles_maybe = depfiles
+am__mv = mv -f
+COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
+ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
+ $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \
+ $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
+ $(AM_CFLAGS) $(CFLAGS)
+AM_V_CC = $(am__v_CC_$(V))
+am__v_CC_ = $(am__v_CC_$(AM_DEFAULT_VERBOSITY))
+am__v_CC_0 = @echo " CC " $@;
+AM_V_at = $(am__v_at_$(V))
+am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY))
+am__v_at_0 = @
+CCLD = $(CC)
+LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
+ $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
+ $(AM_LDFLAGS) $(LDFLAGS) -o $@
+AM_V_CCLD = $(am__v_CCLD_$(V))
+am__v_CCLD_ = $(am__v_CCLD_$(AM_DEFAULT_VERBOSITY))
+am__v_CCLD_0 = @echo " CCLD " $@;
+AM_V_GEN = $(am__v_GEN_$(V))
+am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY))
+am__v_GEN_0 = @echo " GEN " $@;
+SOURCES = $(libmate_media_profiles_la_SOURCES) \
+ $(mate_audio_profiles_properties_SOURCES) \
+ $(mate_audio_profiles_test_SOURCES)
+DIST_SOURCES = $(libmate_media_profiles_la_SOURCES) \
+ $(mate_audio_profiles_properties_SOURCES) \
+ $(am__mate_audio_profiles_test_SOURCES_DIST)
+RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
+ html-recursive info-recursive install-data-recursive \
+ install-dvi-recursive install-exec-recursive \
+ install-html-recursive install-info-recursive \
+ install-pdf-recursive install-ps-recursive install-recursive \
+ installcheck-recursive installdirs-recursive pdf-recursive \
+ ps-recursive uninstall-recursive
+DATA = $(pkgconfig_DATA) $(schema_DATA) $(ui_DATA)
+HEADERS = $(gmpinclude_HEADERS) $(noinst_HEADERS)
+RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
+ distclean-recursive maintainer-clean-recursive
+AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
+ $(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
+ distdir
+ETAGS = etags
+CTAGS = ctags
+DIST_SUBDIRS = . help glade
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+am__relativize = \
+ dir0=`pwd`; \
+ sed_first='s,^\([^/]*\)/.*$$,\1,'; \
+ sed_rest='s,^[^/]*/*,,'; \
+ sed_last='s,^.*/\([^/]*\)$$,\1,'; \
+ sed_butlast='s,/*[^/]*$$,,'; \
+ while test -n "$$dir1"; do \
+ first=`echo "$$dir1" | sed -e "$$sed_first"`; \
+ if test "$$first" != "."; then \
+ if test "$$first" = ".."; then \
+ dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
+ dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
+ else \
+ first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
+ if test "$$first2" = "$$first"; then \
+ dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
+ else \
+ dir2="../$$dir2"; \
+ fi; \
+ dir0="$$dir0"/"$$first"; \
+ fi; \
+ fi; \
+ dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
+ done; \
+ reldir="$$dir2"
+ACLOCAL = @ACLOCAL@
+ALL_LINGUAS = @ALL_LINGUAS@
+AMTAR = @AMTAR@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
+AR = @AR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CATALOGS = @CATALOGS@
+CATOBJEXT = @CATOBJEXT@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DATADIRNAME = @DATADIRNAME@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DISABLE_DEPRECATED = @DISABLE_DEPRECATED@
+DISTCHECK_CONFIGURE_FLAGS = @DISTCHECK_CONFIGURE_FLAGS@
+DLLTOOL = @DLLTOOL@
+DOC_USER_FORMATS = @DOC_USER_FORMATS@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+GETTEXT_PACKAGE = @GETTEXT_PACKAGE@
+GLADEUI_CATALOG_DIR = @GLADEUI_CATALOG_DIR@
+GLADEUI_CFLAGS = @GLADEUI_CFLAGS@
+GLADEUI_LIBS = @GLADEUI_LIBS@
+GLADEUI_MODULE_DIR = @GLADEUI_MODULE_DIR@
+GLIB_GENMARSHAL = @GLIB_GENMARSHAL@
+GMOFILES = @GMOFILES@
+GMP_CFLAGS = @GMP_CFLAGS@
+GMP_LIBS = @GMP_LIBS@
+GMSGFMT = @GMSGFMT@
+GREP = @GREP@
+GSR_CFLAGS = @GSR_CFLAGS@
+GSR_LIBS = @GSR_LIBS@
+GSTMIXER_CFLAGS = @GSTMIXER_CFLAGS@
+GSTMIXER_LIBS = @GSTMIXER_LIBS@
+GSTPROPS_CFLAGS = @GSTPROPS_CFLAGS@
+GSTPROPS_LIBS = @GSTPROPS_LIBS@
+GST_MAJORMINOR = @GST_MAJORMINOR@
+HAVE_PULSEAUDIO = @HAVE_PULSEAUDIO@
+HAVE_SOUND_THEME = @HAVE_SOUND_THEME@
+HELP_DIR = @HELP_DIR@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+INSTOBJEXT = @INSTOBJEXT@
+INTLLIBS = @INTLLIBS@
+INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
+INTLTOOL_MERGE = @INTLTOOL_MERGE@
+INTLTOOL_PERL = @INTLTOOL_PERL@
+INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
+LD = @LD@
+LDFLAGS = @LDFLAGS@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAKEINFO = @MAKEINFO@
+MANIFEST_TOOL = @MANIFEST_TOOL@
+MATECC_DESKTOP_DIR = @MATECC_DESKTOP_DIR@
+MATECONFTOOL = @MATECONFTOOL@
+MATECONF_SCHEMA_CONFIG_SOURCE = @MATECONF_SCHEMA_CONFIG_SOURCE@
+MATECONF_SCHEMA_FILE_DIR = @MATECONF_SCHEMA_FILE_DIR@
+MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
+MSGFMT = @MSGFMT@
+MSGFMT_OPTS = @MSGFMT_OPTS@
+MSGMERGE = @MSGMERGE@
+NM = @NM@
+NMEDIT = @NMEDIT@
+OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
+OMF_DIR = @OMF_DIR@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PACKAGE_VERSION_MAJOR = @PACKAGE_VERSION_MAJOR@
+PACKAGE_VERSION_MICRO = @PACKAGE_VERSION_MICRO@
+PACKAGE_VERSION_MINOR = @PACKAGE_VERSION_MINOR@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
+POFILES = @POFILES@
+POSUB = @POSUB@
+PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
+PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@
+PROGRAMS_GSTPROPS = @PROGRAMS_GSTPROPS@
+PULSEAUDIO_CFLAGS = @PULSEAUDIO_CFLAGS@
+PULSEAUDIO_LIBS = @PULSEAUDIO_LIBS@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+SOUNDTHEME_CFLAGS = @SOUNDTHEME_CFLAGS@
+SOUNDTHEME_LIBS = @SOUNDTHEME_LIBS@
+SOUND_THEME_CFLAGS = @SOUND_THEME_CFLAGS@
+SOUND_THEME_LIBS = @SOUND_THEME_LIBS@
+STRIP = @STRIP@
+USE_NLS = @USE_NLS@
+VERSION = @VERSION@
+VOLUME_CONTROL_CFLAGS = @VOLUME_CONTROL_CFLAGS@
+VOLUME_CONTROL_LIBS = @VOLUME_CONTROL_LIBS@
+WARN_CFLAGS = @WARN_CFLAGS@
+WARN_CXXFLAGS = @WARN_CXXFLAGS@
+XGETTEXT = @XGETTEXT@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+builddir = @builddir@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localedir = @localedir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+defines = \
+ -DG_LOG_DOMAIN=\"mate-media-profiles\" \
+ -DDATADIR="\"$(pkgdatadir)\"" \
+ -DGMP_UIDIR=\"$(uidir)\" \
+ -DMATELOCALEDIR=\""$(datadir)/locale"\" \
+ $(DISABLE_DEPRECATED)
+
+@HAVE_GSTREAMER_TRUE@mate_audio_profiles_test_SOURCES = mate-audio-profiles-test.c
+@HAVE_GSTREAMER_TRUE@mate_audio_profiles_test_CFLAGS = $(GMP_CFLAGS) $(GSR_CFLAGS) $(defines) -I$(top_srcdir)
+@HAVE_GSTREAMER_TRUE@mate_audio_profiles_test_LDADD = libmate-media-profiles.la $(GMP_LIBS) $(GSR_LIBS)
+lib_LTLIBRARIES = libmate-media-profiles.la
+uidir = $(pkgdatadir)
+ui_DATA = mate-audio-profile-new.ui mate-audio-profile-edit.ui
+mate_audio_profiles_properties_SOURCES = mate-audio-profiles-properties.c
+mate_audio_profiles_properties_CFLAGS = $(GMP_CFLAGS) $(defines) -I$(top_srcdir)
+mate_audio_profiles_properties_LDADD = libmate-media-profiles.la $(GMP_LIBS)
+libmate_media_profiles_la_SOURCES = \
+ audio-profile.c \
+ audio-profiles-edit.c \
+ audio-profile-edit.c \
+ audio-profile-choose.c \
+ mate-media-profiles.c \
+ gmp-util.c
+
+noinst_HEADERS = \
+ audio-profile-private.h \
+ gmp-conf.h \
+ gmp-util.h
+
+gmpincludedir = $(includedir)/mate-media/profiles
+gmpinclude_HEADERS = \
+ audio-profile.h \
+ audio-profile-choose.h \
+ audio-profile-edit.h \
+ audio-profiles-edit.h \
+ mate-media-profiles.h
+
+libmate_media_profiles_la_CFLAGS = $(GMP_CFLAGS) $(defines) -I$(top_srcdir)
+libmate_media_profiles_la_LIBADD = $(GMP_LIBS)
+libmate_media_profiles_la_LDFLAGS = -no-undefined
+schemadir = $(MATECONF_SCHEMA_FILE_DIR)
+schema_DATA = mate-audio-profiles.schemas
+pkgconfigdir = $(libdir)/pkgconfig
+pkgconfig_DATA = mate-media-profiles.pc
+EXTRA_DIST = $(ui_DATA) $(schema_DATA) $(pkgconfig_DATA)
+CLEANFILES = $(schema_DATA)
+
+# "." is dirty hack to first build our .la in this dir before moving to glade
+SUBDIRS = . help $(am__append_2)
+all: all-recursive
+
+.SUFFIXES:
+.SUFFIXES: .c .lo .o .obj
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+ && { if test -f $@; then exit 0; else break; fi; }; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign profiles/Makefile'; \
+ $(am__cd) $(top_srcdir) && \
+ $(AUTOMAKE) --foreign profiles/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
+mate-audio-profiles.schemas.in: $(top_builddir)/config.status $(srcdir)/mate-audio-profiles.schemas.in.in
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
+mate-media-profiles.pc: $(top_builddir)/config.status $(srcdir)/mate-media-profiles.pc.in
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
+install-libLTLIBRARIES: $(lib_LTLIBRARIES)
+ @$(NORMAL_INSTALL)
+ test -z "$(libdir)" || $(MKDIR_P) "$(DESTDIR)$(libdir)"
+ @list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \
+ list2=; for p in $$list; do \
+ if test -f $$p; then \
+ list2="$$list2 $$p"; \
+ else :; fi; \
+ done; \
+ test -z "$$list2" || { \
+ echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(libdir)'"; \
+ $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(libdir)"; \
+ }
+
+uninstall-libLTLIBRARIES:
+ @$(NORMAL_UNINSTALL)
+ @list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \
+ for p in $$list; do \
+ $(am__strip_dir) \
+ echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(libdir)/$$f'"; \
+ $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(libdir)/$$f"; \
+ done
+
+clean-libLTLIBRARIES:
+ -test -z "$(lib_LTLIBRARIES)" || rm -f $(lib_LTLIBRARIES)
+ @list='$(lib_LTLIBRARIES)'; for p in $$list; do \
+ dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \
+ test "$$dir" != "$$p" || dir=.; \
+ echo "rm -f \"$${dir}/so_locations\""; \
+ rm -f "$${dir}/so_locations"; \
+ done
+libmate-media-profiles.la: $(libmate_media_profiles_la_OBJECTS) $(libmate_media_profiles_la_DEPENDENCIES)
+ $(AM_V_CCLD)$(libmate_media_profiles_la_LINK) -rpath $(libdir) $(libmate_media_profiles_la_OBJECTS) $(libmate_media_profiles_la_LIBADD) $(LIBS)
+install-binPROGRAMS: $(bin_PROGRAMS)
+ @$(NORMAL_INSTALL)
+ test -z "$(bindir)" || $(MKDIR_P) "$(DESTDIR)$(bindir)"
+ @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
+ for p in $$list; do echo "$$p $$p"; done | \
+ sed 's/$(EXEEXT)$$//' | \
+ while read p p1; do if test -f $$p || test -f $$p1; \
+ then echo "$$p"; echo "$$p"; else :; fi; \
+ done | \
+ sed -e 'p;s,.*/,,;n;h' -e 's|.*|.|' \
+ -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \
+ sed 'N;N;N;s,\n, ,g' | \
+ $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \
+ { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+ if ($$2 == $$4) files[d] = files[d] " " $$1; \
+ else { print "f", $$3 "/" $$4, $$1; } } \
+ END { for (d in files) print "f", d, files[d] }' | \
+ while read type dir files; do \
+ if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+ test -z "$$files" || { \
+ echo " $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(bindir)$$dir'"; \
+ $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(bindir)$$dir" || exit $$?; \
+ } \
+ ; done
+
+uninstall-binPROGRAMS:
+ @$(NORMAL_UNINSTALL)
+ @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
+ files=`for p in $$list; do echo "$$p"; done | \
+ sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \
+ -e 's/$$/$(EXEEXT)/' `; \
+ test -n "$$list" || exit 0; \
+ echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \
+ cd "$(DESTDIR)$(bindir)" && rm -f $$files
+
+clean-binPROGRAMS:
+ @list='$(bin_PROGRAMS)'; test -n "$$list" || exit 0; \
+ echo " rm -f" $$list; \
+ rm -f $$list || exit $$?; \
+ test -n "$(EXEEXT)" || exit 0; \
+ list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
+ echo " rm -f" $$list; \
+ rm -f $$list
+
+clean-noinstPROGRAMS:
+ @list='$(noinst_PROGRAMS)'; test -n "$$list" || exit 0; \
+ echo " rm -f" $$list; \
+ rm -f $$list || exit $$?; \
+ test -n "$(EXEEXT)" || exit 0; \
+ list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
+ echo " rm -f" $$list; \
+ rm -f $$list
+mate-audio-profiles-properties$(EXEEXT): $(mate_audio_profiles_properties_OBJECTS) $(mate_audio_profiles_properties_DEPENDENCIES)
+ @rm -f mate-audio-profiles-properties$(EXEEXT)
+ $(AM_V_CCLD)$(mate_audio_profiles_properties_LINK) $(mate_audio_profiles_properties_OBJECTS) $(mate_audio_profiles_properties_LDADD) $(LIBS)
+mate-audio-profiles-test$(EXEEXT): $(mate_audio_profiles_test_OBJECTS) $(mate_audio_profiles_test_DEPENDENCIES)
+ @rm -f mate-audio-profiles-test$(EXEEXT)
+ $(AM_V_CCLD)$(mate_audio_profiles_test_LINK) $(mate_audio_profiles_test_OBJECTS) $(mate_audio_profiles_test_LDADD) $(LIBS)
+
+mostlyclean-compile:
+ -rm -f *.$(OBJEXT)
+
+distclean-compile:
+ -rm -f *.tab.c
+
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmate_media_profiles_la-audio-profile-choose.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmate_media_profiles_la-audio-profile-edit.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmate_media_profiles_la-audio-profile.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmate_media_profiles_la-audio-profiles-edit.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmate_media_profiles_la-gmp-util.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmate_media_profiles_la-mate-media-profiles.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mate_audio_profiles_properties-mate-audio-profiles-properties.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mate_audio_profiles_test-mate-audio-profiles-test.Po@am__quote@
+
+.c.o:
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(COMPILE) -c $<
+
+.c.obj:
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
+
+.c.lo:
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
+@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $<
+
+libmate_media_profiles_la-audio-profile.lo: audio-profile.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmate_media_profiles_la_CFLAGS) $(CFLAGS) -MT libmate_media_profiles_la-audio-profile.lo -MD -MP -MF $(DEPDIR)/libmate_media_profiles_la-audio-profile.Tpo -c -o libmate_media_profiles_la-audio-profile.lo `test -f 'audio-profile.c' || echo '$(srcdir)/'`audio-profile.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmate_media_profiles_la-audio-profile.Tpo $(DEPDIR)/libmate_media_profiles_la-audio-profile.Plo
+@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='audio-profile.c' object='libmate_media_profiles_la-audio-profile.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmate_media_profiles_la_CFLAGS) $(CFLAGS) -c -o libmate_media_profiles_la-audio-profile.lo `test -f 'audio-profile.c' || echo '$(srcdir)/'`audio-profile.c
+
+libmate_media_profiles_la-audio-profiles-edit.lo: audio-profiles-edit.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmate_media_profiles_la_CFLAGS) $(CFLAGS) -MT libmate_media_profiles_la-audio-profiles-edit.lo -MD -MP -MF $(DEPDIR)/libmate_media_profiles_la-audio-profiles-edit.Tpo -c -o libmate_media_profiles_la-audio-profiles-edit.lo `test -f 'audio-profiles-edit.c' || echo '$(srcdir)/'`audio-profiles-edit.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmate_media_profiles_la-audio-profiles-edit.Tpo $(DEPDIR)/libmate_media_profiles_la-audio-profiles-edit.Plo
+@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='audio-profiles-edit.c' object='libmate_media_profiles_la-audio-profiles-edit.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmate_media_profiles_la_CFLAGS) $(CFLAGS) -c -o libmate_media_profiles_la-audio-profiles-edit.lo `test -f 'audio-profiles-edit.c' || echo '$(srcdir)/'`audio-profiles-edit.c
+
+libmate_media_profiles_la-audio-profile-edit.lo: audio-profile-edit.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmate_media_profiles_la_CFLAGS) $(CFLAGS) -MT libmate_media_profiles_la-audio-profile-edit.lo -MD -MP -MF $(DEPDIR)/libmate_media_profiles_la-audio-profile-edit.Tpo -c -o libmate_media_profiles_la-audio-profile-edit.lo `test -f 'audio-profile-edit.c' || echo '$(srcdir)/'`audio-profile-edit.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmate_media_profiles_la-audio-profile-edit.Tpo $(DEPDIR)/libmate_media_profiles_la-audio-profile-edit.Plo
+@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='audio-profile-edit.c' object='libmate_media_profiles_la-audio-profile-edit.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmate_media_profiles_la_CFLAGS) $(CFLAGS) -c -o libmate_media_profiles_la-audio-profile-edit.lo `test -f 'audio-profile-edit.c' || echo '$(srcdir)/'`audio-profile-edit.c
+
+libmate_media_profiles_la-audio-profile-choose.lo: audio-profile-choose.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmate_media_profiles_la_CFLAGS) $(CFLAGS) -MT libmate_media_profiles_la-audio-profile-choose.lo -MD -MP -MF $(DEPDIR)/libmate_media_profiles_la-audio-profile-choose.Tpo -c -o libmate_media_profiles_la-audio-profile-choose.lo `test -f 'audio-profile-choose.c' || echo '$(srcdir)/'`audio-profile-choose.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmate_media_profiles_la-audio-profile-choose.Tpo $(DEPDIR)/libmate_media_profiles_la-audio-profile-choose.Plo
+@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='audio-profile-choose.c' object='libmate_media_profiles_la-audio-profile-choose.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmate_media_profiles_la_CFLAGS) $(CFLAGS) -c -o libmate_media_profiles_la-audio-profile-choose.lo `test -f 'audio-profile-choose.c' || echo '$(srcdir)/'`audio-profile-choose.c
+
+libmate_media_profiles_la-mate-media-profiles.lo: mate-media-profiles.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmate_media_profiles_la_CFLAGS) $(CFLAGS) -MT libmate_media_profiles_la-mate-media-profiles.lo -MD -MP -MF $(DEPDIR)/libmate_media_profiles_la-mate-media-profiles.Tpo -c -o libmate_media_profiles_la-mate-media-profiles.lo `test -f 'mate-media-profiles.c' || echo '$(srcdir)/'`mate-media-profiles.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmate_media_profiles_la-mate-media-profiles.Tpo $(DEPDIR)/libmate_media_profiles_la-mate-media-profiles.Plo
+@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='mate-media-profiles.c' object='libmate_media_profiles_la-mate-media-profiles.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmate_media_profiles_la_CFLAGS) $(CFLAGS) -c -o libmate_media_profiles_la-mate-media-profiles.lo `test -f 'mate-media-profiles.c' || echo '$(srcdir)/'`mate-media-profiles.c
+
+libmate_media_profiles_la-gmp-util.lo: gmp-util.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmate_media_profiles_la_CFLAGS) $(CFLAGS) -MT libmate_media_profiles_la-gmp-util.lo -MD -MP -MF $(DEPDIR)/libmate_media_profiles_la-gmp-util.Tpo -c -o libmate_media_profiles_la-gmp-util.lo `test -f 'gmp-util.c' || echo '$(srcdir)/'`gmp-util.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmate_media_profiles_la-gmp-util.Tpo $(DEPDIR)/libmate_media_profiles_la-gmp-util.Plo
+@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='gmp-util.c' object='libmate_media_profiles_la-gmp-util.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmate_media_profiles_la_CFLAGS) $(CFLAGS) -c -o libmate_media_profiles_la-gmp-util.lo `test -f 'gmp-util.c' || echo '$(srcdir)/'`gmp-util.c
+
+mate_audio_profiles_properties-mate-audio-profiles-properties.o: mate-audio-profiles-properties.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(mate_audio_profiles_properties_CFLAGS) $(CFLAGS) -MT mate_audio_profiles_properties-mate-audio-profiles-properties.o -MD -MP -MF $(DEPDIR)/mate_audio_profiles_properties-mate-audio-profiles-properties.Tpo -c -o mate_audio_profiles_properties-mate-audio-profiles-properties.o `test -f 'mate-audio-profiles-properties.c' || echo '$(srcdir)/'`mate-audio-profiles-properties.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/mate_audio_profiles_properties-mate-audio-profiles-properties.Tpo $(DEPDIR)/mate_audio_profiles_properties-mate-audio-profiles-properties.Po
+@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='mate-audio-profiles-properties.c' object='mate_audio_profiles_properties-mate-audio-profiles-properties.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(mate_audio_profiles_properties_CFLAGS) $(CFLAGS) -c -o mate_audio_profiles_properties-mate-audio-profiles-properties.o `test -f 'mate-audio-profiles-properties.c' || echo '$(srcdir)/'`mate-audio-profiles-properties.c
+
+mate_audio_profiles_properties-mate-audio-profiles-properties.obj: mate-audio-profiles-properties.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(mate_audio_profiles_properties_CFLAGS) $(CFLAGS) -MT mate_audio_profiles_properties-mate-audio-profiles-properties.obj -MD -MP -MF $(DEPDIR)/mate_audio_profiles_properties-mate-audio-profiles-properties.Tpo -c -o mate_audio_profiles_properties-mate-audio-profiles-properties.obj `if test -f 'mate-audio-profiles-properties.c'; then $(CYGPATH_W) 'mate-audio-profiles-properties.c'; else $(CYGPATH_W) '$(srcdir)/mate-audio-profiles-properties.c'; fi`
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/mate_audio_profiles_properties-mate-audio-profiles-properties.Tpo $(DEPDIR)/mate_audio_profiles_properties-mate-audio-profiles-properties.Po
+@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='mate-audio-profiles-properties.c' object='mate_audio_profiles_properties-mate-audio-profiles-properties.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(mate_audio_profiles_properties_CFLAGS) $(CFLAGS) -c -o mate_audio_profiles_properties-mate-audio-profiles-properties.obj `if test -f 'mate-audio-profiles-properties.c'; then $(CYGPATH_W) 'mate-audio-profiles-properties.c'; else $(CYGPATH_W) '$(srcdir)/mate-audio-profiles-properties.c'; fi`
+
+mate_audio_profiles_test-mate-audio-profiles-test.o: mate-audio-profiles-test.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(mate_audio_profiles_test_CFLAGS) $(CFLAGS) -MT mate_audio_profiles_test-mate-audio-profiles-test.o -MD -MP -MF $(DEPDIR)/mate_audio_profiles_test-mate-audio-profiles-test.Tpo -c -o mate_audio_profiles_test-mate-audio-profiles-test.o `test -f 'mate-audio-profiles-test.c' || echo '$(srcdir)/'`mate-audio-profiles-test.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/mate_audio_profiles_test-mate-audio-profiles-test.Tpo $(DEPDIR)/mate_audio_profiles_test-mate-audio-profiles-test.Po
+@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='mate-audio-profiles-test.c' object='mate_audio_profiles_test-mate-audio-profiles-test.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(mate_audio_profiles_test_CFLAGS) $(CFLAGS) -c -o mate_audio_profiles_test-mate-audio-profiles-test.o `test -f 'mate-audio-profiles-test.c' || echo '$(srcdir)/'`mate-audio-profiles-test.c
+
+mate_audio_profiles_test-mate-audio-profiles-test.obj: mate-audio-profiles-test.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(mate_audio_profiles_test_CFLAGS) $(CFLAGS) -MT mate_audio_profiles_test-mate-audio-profiles-test.obj -MD -MP -MF $(DEPDIR)/mate_audio_profiles_test-mate-audio-profiles-test.Tpo -c -o mate_audio_profiles_test-mate-audio-profiles-test.obj `if test -f 'mate-audio-profiles-test.c'; then $(CYGPATH_W) 'mate-audio-profiles-test.c'; else $(CYGPATH_W) '$(srcdir)/mate-audio-profiles-test.c'; fi`
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/mate_audio_profiles_test-mate-audio-profiles-test.Tpo $(DEPDIR)/mate_audio_profiles_test-mate-audio-profiles-test.Po
+@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='mate-audio-profiles-test.c' object='mate_audio_profiles_test-mate-audio-profiles-test.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(mate_audio_profiles_test_CFLAGS) $(CFLAGS) -c -o mate_audio_profiles_test-mate-audio-profiles-test.obj `if test -f 'mate-audio-profiles-test.c'; then $(CYGPATH_W) 'mate-audio-profiles-test.c'; else $(CYGPATH_W) '$(srcdir)/mate-audio-profiles-test.c'; fi`
+
+mostlyclean-libtool:
+ -rm -f *.lo
+
+clean-libtool:
+ -rm -rf .libs _libs
+install-pkgconfigDATA: $(pkgconfig_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(pkgconfigdir)" || $(MKDIR_P) "$(DESTDIR)$(pkgconfigdir)"
+ @list='$(pkgconfig_DATA)'; test -n "$(pkgconfigdir)" || list=; \
+ for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ echo "$$d$$p"; \
+ done | $(am__base_list) | \
+ while read files; do \
+ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(pkgconfigdir)'"; \
+ $(INSTALL_DATA) $$files "$(DESTDIR)$(pkgconfigdir)" || exit $$?; \
+ done
+
+uninstall-pkgconfigDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(pkgconfig_DATA)'; test -n "$(pkgconfigdir)" || list=; \
+ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
+ test -n "$$files" || exit 0; \
+ echo " ( cd '$(DESTDIR)$(pkgconfigdir)' && rm -f" $$files ")"; \
+ cd "$(DESTDIR)$(pkgconfigdir)" && rm -f $$files
+install-schemaDATA: $(schema_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(schemadir)" || $(MKDIR_P) "$(DESTDIR)$(schemadir)"
+ @list='$(schema_DATA)'; test -n "$(schemadir)" || list=; \
+ for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ echo "$$d$$p"; \
+ done | $(am__base_list) | \
+ while read files; do \
+ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(schemadir)'"; \
+ $(INSTALL_DATA) $$files "$(DESTDIR)$(schemadir)" || exit $$?; \
+ done
+
+uninstall-schemaDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(schema_DATA)'; test -n "$(schemadir)" || list=; \
+ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
+ test -n "$$files" || exit 0; \
+ echo " ( cd '$(DESTDIR)$(schemadir)' && rm -f" $$files ")"; \
+ cd "$(DESTDIR)$(schemadir)" && rm -f $$files
+install-uiDATA: $(ui_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(uidir)" || $(MKDIR_P) "$(DESTDIR)$(uidir)"
+ @list='$(ui_DATA)'; test -n "$(uidir)" || list=; \
+ for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ echo "$$d$$p"; \
+ done | $(am__base_list) | \
+ while read files; do \
+ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(uidir)'"; \
+ $(INSTALL_DATA) $$files "$(DESTDIR)$(uidir)" || exit $$?; \
+ done
+
+uninstall-uiDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(ui_DATA)'; test -n "$(uidir)" || list=; \
+ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
+ test -n "$$files" || exit 0; \
+ echo " ( cd '$(DESTDIR)$(uidir)' && rm -f" $$files ")"; \
+ cd "$(DESTDIR)$(uidir)" && rm -f $$files
+install-gmpincludeHEADERS: $(gmpinclude_HEADERS)
+ @$(NORMAL_INSTALL)
+ test -z "$(gmpincludedir)" || $(MKDIR_P) "$(DESTDIR)$(gmpincludedir)"
+ @list='$(gmpinclude_HEADERS)'; test -n "$(gmpincludedir)" || list=; \
+ for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ echo "$$d$$p"; \
+ done | $(am__base_list) | \
+ while read files; do \
+ echo " $(INSTALL_HEADER) $$files '$(DESTDIR)$(gmpincludedir)'"; \
+ $(INSTALL_HEADER) $$files "$(DESTDIR)$(gmpincludedir)" || exit $$?; \
+ done
+
+uninstall-gmpincludeHEADERS:
+ @$(NORMAL_UNINSTALL)
+ @list='$(gmpinclude_HEADERS)'; test -n "$(gmpincludedir)" || list=; \
+ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
+ test -n "$$files" || exit 0; \
+ echo " ( cd '$(DESTDIR)$(gmpincludedir)' && rm -f" $$files ")"; \
+ cd "$(DESTDIR)$(gmpincludedir)" && rm -f $$files
+
+# This directory's subdirectories are mostly independent; you can cd
+# into them and run `make' without going through this Makefile.
+# To change the values of `make' variables: instead of editing Makefiles,
+# (1) if the variable is set in `config.status', edit `config.status'
+# (which will cause the Makefiles to be regenerated when you run `make');
+# (2) otherwise, pass the desired values on the `make' command line.
+$(RECURSIVE_TARGETS):
+ @fail= failcom='exit 1'; \
+ for f in x $$MAKEFLAGS; do \
+ case $$f in \
+ *=* | --[!k]*);; \
+ *k*) failcom='fail=yes';; \
+ esac; \
+ done; \
+ dot_seen=no; \
+ target=`echo $@ | sed s/-recursive//`; \
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ echo "Making $$target in $$subdir"; \
+ if test "$$subdir" = "."; then \
+ dot_seen=yes; \
+ local_target="$$target-am"; \
+ else \
+ local_target="$$target"; \
+ fi; \
+ ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+ || eval $$failcom; \
+ done; \
+ if test "$$dot_seen" = "no"; then \
+ $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
+ fi; test -z "$$fail"
+
+$(RECURSIVE_CLEAN_TARGETS):
+ @fail= failcom='exit 1'; \
+ for f in x $$MAKEFLAGS; do \
+ case $$f in \
+ *=* | --[!k]*);; \
+ *k*) failcom='fail=yes';; \
+ esac; \
+ done; \
+ dot_seen=no; \
+ case "$@" in \
+ distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
+ *) list='$(SUBDIRS)' ;; \
+ esac; \
+ rev=''; for subdir in $$list; do \
+ if test "$$subdir" = "."; then :; else \
+ rev="$$subdir $$rev"; \
+ fi; \
+ done; \
+ rev="$$rev ."; \
+ target=`echo $@ | sed s/-recursive//`; \
+ for subdir in $$rev; do \
+ echo "Making $$target in $$subdir"; \
+ if test "$$subdir" = "."; then \
+ local_target="$$target-am"; \
+ else \
+ local_target="$$target"; \
+ fi; \
+ ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+ || eval $$failcom; \
+ done && test -z "$$fail"
+tags-recursive:
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
+ done
+ctags-recursive:
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
+ done
+
+ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ mkid -fID $$unique
+tags: TAGS
+
+TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ set x; \
+ here=`pwd`; \
+ if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
+ include_option=--etags-include; \
+ empty_fix=.; \
+ else \
+ include_option=--include; \
+ empty_fix=; \
+ fi; \
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ if test "$$subdir" = .; then :; else \
+ test ! -f $$subdir/TAGS || \
+ set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
+ fi; \
+ done; \
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ shift; \
+ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
+ test -n "$$unique" || unique=$$empty_fix; \
+ if test $$# -gt 0; then \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ "$$@" $$unique; \
+ else \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ $$unique; \
+ fi; \
+ fi
+ctags: CTAGS
+CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ test -z "$(CTAGS_ARGS)$$unique" \
+ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
+ $$unique
+
+GTAGS:
+ here=`$(am__cd) $(top_builddir) && pwd` \
+ && $(am__cd) $(top_srcdir) \
+ && gtags -i $(GTAGS_ARGS) "$$here"
+
+distclean-tags:
+ -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
+
+distdir: $(DISTFILES)
+ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ list='$(DISTFILES)'; \
+ dist_files=`for file in $$list; do echo $$file; done | \
+ sed -e "s|^$$srcdirstrip/||;t" \
+ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+ case $$dist_files in \
+ */*) $(MKDIR_P) `echo "$$dist_files" | \
+ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+ sort -u` ;; \
+ esac; \
+ for file in $$dist_files; do \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ if test -d $$d/$$file; then \
+ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test -d "$(distdir)/$$file"; then \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
+ else \
+ test -f "$(distdir)/$$file" \
+ || cp -p $$d/$$file "$(distdir)/$$file" \
+ || exit 1; \
+ fi; \
+ done
+ @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
+ if test "$$subdir" = .; then :; else \
+ test -d "$(distdir)/$$subdir" \
+ || $(MKDIR_P) "$(distdir)/$$subdir" \
+ || exit 1; \
+ fi; \
+ done
+ @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
+ if test "$$subdir" = .; then :; else \
+ dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
+ $(am__relativize); \
+ new_distdir=$$reldir; \
+ dir1=$$subdir; dir2="$(top_distdir)"; \
+ $(am__relativize); \
+ new_top_distdir=$$reldir; \
+ echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
+ echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
+ ($(am__cd) $$subdir && \
+ $(MAKE) $(AM_MAKEFLAGS) \
+ top_distdir="$$new_top_distdir" \
+ distdir="$$new_distdir" \
+ am__remove_distdir=: \
+ am__skip_length_check=: \
+ am__skip_mode_fix=: \
+ distdir) \
+ || exit 1; \
+ fi; \
+ done
+check-am: all-am
+check: check-recursive
+all-am: Makefile $(LTLIBRARIES) $(PROGRAMS) $(DATA) $(HEADERS)
+install-binPROGRAMS: install-libLTLIBRARIES
+
+installdirs: installdirs-recursive
+installdirs-am:
+ for dir in "$(DESTDIR)$(libdir)" "$(DESTDIR)$(bindir)" "$(DESTDIR)$(pkgconfigdir)" "$(DESTDIR)$(schemadir)" "$(DESTDIR)$(uidir)" "$(DESTDIR)$(gmpincludedir)"; do \
+ test -z "$$dir" || $(MKDIR_P) "$$dir"; \
+ done
+install: install-recursive
+install-exec: install-exec-recursive
+install-data: install-data-recursive
+uninstall: uninstall-recursive
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-recursive
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+ -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-recursive
+
+clean-am: clean-binPROGRAMS clean-generic clean-libLTLIBRARIES \
+ clean-libtool clean-noinstPROGRAMS mostlyclean-am
+
+distclean: distclean-recursive
+ -rm -rf ./$(DEPDIR)
+ -rm -f Makefile
+distclean-am: clean-am distclean-compile distclean-generic \
+ distclean-tags
+
+dvi: dvi-recursive
+
+dvi-am:
+
+html: html-recursive
+
+html-am:
+
+info: info-recursive
+
+info-am:
+
+install-data-am: install-data-local install-gmpincludeHEADERS \
+ install-pkgconfigDATA install-schemaDATA install-uiDATA
+
+install-dvi: install-dvi-recursive
+
+install-dvi-am:
+
+install-exec-am: install-binPROGRAMS install-libLTLIBRARIES
+
+install-html: install-html-recursive
+
+install-html-am:
+
+install-info: install-info-recursive
+
+install-info-am:
+
+install-man:
+
+install-pdf: install-pdf-recursive
+
+install-pdf-am:
+
+install-ps: install-ps-recursive
+
+install-ps-am:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-recursive
+ -rm -rf ./$(DEPDIR)
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-recursive
+
+mostlyclean-am: mostlyclean-compile mostlyclean-generic \
+ mostlyclean-libtool
+
+pdf: pdf-recursive
+
+pdf-am:
+
+ps: ps-recursive
+
+ps-am:
+
+uninstall-am: uninstall-binPROGRAMS uninstall-gmpincludeHEADERS \
+ uninstall-libLTLIBRARIES uninstall-pkgconfigDATA \
+ uninstall-schemaDATA uninstall-uiDATA
+
+.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \
+ install-am install-strip tags-recursive
+
+.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
+ all all-am check check-am clean clean-binPROGRAMS \
+ clean-generic clean-libLTLIBRARIES clean-libtool \
+ clean-noinstPROGRAMS ctags ctags-recursive distclean \
+ distclean-compile distclean-generic distclean-libtool \
+ distclean-tags distdir dvi dvi-am html html-am info info-am \
+ install install-am install-binPROGRAMS install-data \
+ install-data-am install-data-local install-dvi install-dvi-am \
+ install-exec install-exec-am install-gmpincludeHEADERS \
+ install-html install-html-am install-info install-info-am \
+ install-libLTLIBRARIES install-man install-pdf install-pdf-am \
+ install-pkgconfigDATA install-ps install-ps-am \
+ install-schemaDATA install-strip install-uiDATA installcheck \
+ installcheck-am installdirs installdirs-am maintainer-clean \
+ maintainer-clean-generic mostlyclean mostlyclean-compile \
+ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
+ tags tags-recursive uninstall uninstall-am \
+ uninstall-binPROGRAMS uninstall-gmpincludeHEADERS \
+ uninstall-libLTLIBRARIES uninstall-pkgconfigDATA \
+ uninstall-schemaDATA uninstall-uiDATA
+
+
+@INTLTOOL_DESKTOP_RULE@
+@INTLTOOL_SCHEMAS_RULE@
+
+install-schemas:
+ MATECONF_CONFIG_SOURCE=$(MATECONF_SCHEMA_CONFIG_SOURCE) $(MATECONFTOOL) --makefile-install-rule $(top_builddir)/profiles/$(schema_DATA) || true
+
+@MATECONF_SCHEMAS_INSTALL_TRUE@install-data-local: install-schemas
+@MATECONF_SCHEMAS_INSTALL_FALSE@install-data-local:
+
+-include $(top_srcdir)/git.mk
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/profiles/README b/profiles/README
new file mode 100644
index 0000000..a3a6eeb
--- /dev/null
+++ b/profiles/README
@@ -0,0 +1,73 @@
+WHAT IT IS
+----------
+
+DESCRIPTION OF FLIES
+--------------------
+Flies are insects notorious for clinging to walls when you don't need them
+to and making an incessant irritating buzzing sound whne you don't want them
+to and wish they would just stick to clinging to walls.
+
+DESCRIPTION OF FILES
+--------------------
+audio-profile.c:
+ AudioProfile GObject implementation
+ AudioProfile contains id, name, description, pipeline and default
+ file extension
+audio-profile.h:
+ AudioProfile private header
+
+audio-profile-manage.c:
+
+audio-profile-edit.c:
+ GapProfileEdit dialog implementation
+ dialog for editing one given audio profile
+audio-profile-edit.h:
+ public API for GapProfileEdit dialog
+ included by mate-media-profiles.h
+
+audio-profiles-edit.c:
+ GapProfilesEdit dialog implementation
+ dialog for editing the list of audio profiles
+
+gmp-util.c:
+ utility code
+
+mate-media-profiles.c:
+ public library functions
+
+mate-audio-profiles-properties.c:
+ property capplet for audio profiles, just shows the ProfilesEdit dialog
+
+WHAT IT PROVIDES
+----------------
+
+This provides:
+
+a) a function to get a dialog to edit audio profiles
+
+GapProfilesEdit *
+gm_audio_profiles_edit_new ()
+
+b) a function to get a dialog to edit a specific audio profile based on its id
+
+GapProfileEdit *
+gm_audio_profile_edit_new (const char *id)
+{
+}
+
+c) functions to manipulate the profiles
+ - get list/count of profiles
+ - get profile specifics
+
+d) a function to get a dialog to choose a profile from
+GtkDialog *
+gm_audio_profile_choose ()
+
+
+TODO
+----
+* make audio-profile.h have public functions, and move rest to .c
+* rename all functions in there to mate_... so they won't clash in the
+ future
+* figure out a way to make the GMAudioSettingsMask private (we can't due
+ to the signal in the parent class)
diff --git a/profiles/audio-profile-choose.c b/profiles/audio-profile-choose.c
new file mode 100644
index 0000000..c2555ed
--- /dev/null
+++ b/profiles/audio-profile-choose.c
@@ -0,0 +1,436 @@
+/* gm_audio-profile-choose.c: combo box to choose a specific profile */
+
+/*
+ * Copyright (C) 2003 Thomas Vander Stichele
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include <string.h>
+#include <glib/gi18n.h>
+#include <gio/gio.h>
+#include <gst/gst.h>
+#include <mateconf/mateconf-client.h>
+
+#include "gmp-util.h"
+#include "audio-profile-choose.h"
+
+/* Private structure */
+struct _GMAudioProfileChoosePrivate
+{
+ GtkTreeModel *model;
+ GMAudioProfile *profile;
+};
+
+enum
+{
+ P_0,
+ P_ACTIVE_PROFILE
+};
+
+enum
+{
+ S_PROFILE_CHANGED,
+ LAST_SIGNAL
+};
+
+enum
+{
+ NAME_COLUMN,
+ ID_COLUMN,
+ PROFILE_COLUMN,
+ N_COLUMNS
+};
+
+static guint signals[LAST_SIGNAL] = { 0 };
+
+/* GObject methods */
+static void gm_audio_profile_choose_set_property (GObject *object,
+ guint prop_id,
+ const GValue *value,
+ GParamSpec *pspec);
+static void gm_audio_profile_choose_get_property (GObject *object,
+ guint prop_id,
+ GValue *value,
+ GParamSpec *pspec);
+static void gm_audio_profile_choose_dispose (GObject *object);
+
+/* GtkComboBox methods */
+static void gm_audio_profile_choose_changed (GtkComboBox *combo);
+
+/* Internal routines */
+static void audio_profile_forgotten (GMAudioProfile *profile,
+ GMAudioProfileChoose *choose);
+
+G_DEFINE_TYPE (GMAudioProfileChoose, gm_audio_profile_choose, GTK_TYPE_COMBO_BOX)
+
+/* Initialization */
+static void
+gm_audio_profile_choose_init (GMAudioProfileChoose *choose)
+{
+ GMAudioProfileChoosePrivate *priv;
+ GtkListStore *store;
+ GList *orig,
+ *profiles;
+ GtkCellRenderer *cell;
+
+ priv = G_TYPE_INSTANCE_GET_PRIVATE (choose,
+ GM_AUDIO_TYPE_PROFILE_CHOOSE,
+ GMAudioProfileChoosePrivate);
+
+ /* Create model */
+ store = gtk_list_store_new (N_COLUMNS, G_TYPE_STRING,
+ G_TYPE_STRING,
+ GM_AUDIO_TYPE_PROFILE);
+ for (orig = profiles = gm_audio_profile_get_active_list ();
+ profiles;
+ profiles = g_list_next (profiles))
+ {
+ GMAudioProfile *profile = profiles->data;
+ gchar *profile_name,
+ *temp_file_name,
+ *mime_type_description;
+ GtkTreeIter iter;
+
+ temp_file_name = g_strdup_printf (".%s", gm_audio_profile_get_extension (profile));
+ mime_type_description = g_content_type_get_description (temp_file_name);
+ g_free (temp_file_name);
+
+ profile_name = g_strdup_printf (gettext ("%s (%s)"),
+ gm_audio_profile_get_name (profile),
+ mime_type_description);
+ g_free (mime_type_description);
+ gtk_list_store_append (store, &iter);
+ gtk_list_store_set (store, &iter,
+ NAME_COLUMN, profile_name,
+ ID_COLUMN, gm_audio_profile_get_id (profile),
+ PROFILE_COLUMN, profile,
+ -1);
+
+ g_signal_connect (profile, "forgotten",
+ G_CALLBACK (audio_profile_forgotten), choose);
+
+ g_free (profile_name);
+ }
+ g_list_free (orig);
+
+ /* Display name in the combo */
+ cell = gtk_cell_renderer_text_new ();
+ gtk_cell_layout_pack_start (GTK_CELL_LAYOUT (choose), cell, TRUE );
+ gtk_cell_layout_add_attribute (GTK_CELL_LAYOUT (choose), cell, "text", NAME_COLUMN);
+ gtk_combo_box_set_model (GTK_COMBO_BOX (choose), GTK_TREE_MODEL (store));
+ g_object_unref (store);
+
+ /* Populate private struct */
+ priv->model = GTK_TREE_MODEL (store);
+ priv->profile = NULL;
+
+ /* cache access to private data */
+ choose->priv = priv;
+}
+
+static void
+gm_audio_profile_choose_class_init (GMAudioProfileChooseClass *klass)
+{
+ GObjectClass *g_class = G_OBJECT_CLASS (klass);
+ GtkComboBoxClass *c_class = GTK_COMBO_BOX_CLASS (klass);
+ GParamSpec *pspec;
+
+ g_class->get_property = gm_audio_profile_choose_get_property;
+ g_class->set_property = gm_audio_profile_choose_set_property;
+ g_class->dispose = gm_audio_profile_choose_dispose;
+
+ c_class->changed = gm_audio_profile_choose_changed;
+
+ /* Signals */
+ /**
+ * GMAudioProfileChoose::profile-changed:
+ * @choose: the object which received the signal
+ *
+ * The profile-changed signal is emitted when the active profile is changed.
+ *
+ * Since: 2.32/3.0
+ */
+ signals[S_PROFILE_CHANGED] =
+ g_signal_new (g_intern_static_string ("profile-changed"),
+ G_OBJECT_CLASS_TYPE (klass),
+ G_SIGNAL_RUN_LAST,
+ G_STRUCT_OFFSET (GMAudioProfileChooseClass, profile_changed),
+ NULL, NULL,
+ g_cclosure_marshal_VOID__OBJECT,
+ G_TYPE_NONE,
+ 1, GM_AUDIO_TYPE_PROFILE);
+
+ /* Properties */
+ /**
+ * GMAudioProfileChoose:active-profile:
+ *
+ * Currently shown #GMAudioProfile.
+ *
+ * Since: 2.32/3.0
+ */
+ pspec = g_param_spec_object ("active-profile",
+ "Active profile",
+ "Currently selected GMAudioProfile",
+ GM_AUDIO_TYPE_PROFILE,
+ G_PARAM_READABLE | G_PARAM_STATIC_STRINGS);
+ g_object_class_install_property (g_class, P_ACTIVE_PROFILE, pspec);
+
+ /* Add private data */
+ g_type_class_add_private (g_class, sizeof (GMAudioProfileChoose));
+}
+
+static void
+gm_audio_profile_choose_set_property (GObject *object,
+ guint prop_id,
+ const GValue *value,
+ GParamSpec *pspec)
+{
+ switch (prop_id)
+ {
+ default:
+ G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
+ break;
+ }
+}
+
+static void
+gm_audio_profile_choose_get_property (GObject *object,
+ guint prop_id,
+ GValue *value,
+ GParamSpec *pspec)
+{
+ GMAudioProfileChoosePrivate *priv = GM_AUDIO_PROFILE_CHOOSE (object)->priv;
+
+ switch (prop_id)
+ {
+ case P_ACTIVE_PROFILE:
+ g_value_set_object (value, priv->profile);
+ break;
+
+ default:
+ G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
+ break;
+ }
+}
+
+static void
+gm_audio_profile_choose_dispose (GObject *object)
+{
+ GMAudioProfileChoosePrivate *priv = GM_AUDIO_PROFILE_CHOOSE (object)->priv;
+
+ if (priv->profile)
+ {
+ g_object_unref (priv->profile);
+ priv->profile = NULL;
+ }
+
+ G_OBJECT_CLASS (gm_audio_profile_choose_parent_class)->dispose (object);
+}
+
+static void
+gm_audio_profile_choose_changed (GtkComboBox *combo)
+{
+ GMAudioProfileChoosePrivate *priv;
+ GtkTreeIter iter;
+ GMAudioProfile *new_profile = NULL;
+
+ priv = GM_AUDIO_PROFILE_CHOOSE (combo)->priv;
+ if (gtk_combo_box_get_active_iter (combo, &iter))
+ gtk_tree_model_get (priv->model, &iter, PROFILE_COLUMN, &new_profile, -1);
+
+ if (priv->profile != new_profile)
+ {
+ if (priv->profile)
+ g_object_unref (priv->profile);
+ priv->profile = new_profile;
+ g_signal_emit (combo, signals[S_PROFILE_CHANGED], 0, new_profile);
+ g_object_notify (G_OBJECT (combo), "active-profile");
+ }
+ else
+ if (new_profile)
+ g_object_unref (new_profile);
+}
+
+static void
+audio_profile_forgotten (GMAudioProfile *profile,
+ GMAudioProfileChoose *choose)
+{
+ GMAudioProfileChoosePrivate *priv;
+ GtkTreeIter iter;
+ GMAudioProfile *tmp;
+
+ priv = choose->priv;
+
+ if (!gtk_tree_model_get_iter_first (priv->model, &iter))
+ return;
+
+ do
+ {
+ gtk_tree_model_get (priv->model, &iter, PROFILE_COLUMN, &tmp, -1);
+ if (tmp == profile)
+ {
+ gtk_list_store_remove (GTK_LIST_STORE (priv->model), &iter);
+ g_object_unref (tmp);
+ return;
+ }
+ g_object_unref (tmp);
+ }
+ while (gtk_tree_model_iter_next (priv->model, &iter));
+}
+
+/* Public API */
+/**
+ * gm_audio_profile_choose_new:
+ *
+ * Creates new #GMAudioProfileChoose, populated with currently active profiles.
+ *
+ * Return value: A new #GMAudioProfileChoose.
+ */
+GtkWidget*
+gm_audio_profile_choose_new (void)
+{
+ return g_object_new (GM_AUDIO_TYPE_PROFILE_CHOOSE, NULL);
+}
+
+/**
+ * gm_audio_profile_choose_get_active_profile:
+ * @choose: #GMAudioProfileChoose widget
+ *
+ * This function retrieves currently selected #GMAudioProfile. Returned object is
+ * owned by #GMAudioProfileChoose and should not be unreferenced.
+ *
+ * Return value: Currently selected #GMAudioProfile or %NULL if none is
+ * selected.
+ *
+ * Since: 2.32/3.0
+ */
+GMAudioProfile *
+gm_audio_profile_choose_get_active_profile (GMAudioProfileChoose *choose)
+{
+ g_return_val_if_fail (GM_AUDIO_IS_PROFILE_CHOOSE (choose), NULL);
+
+ return choose->priv->profile;
+}
+
+/**
+ * gm_audio_profile_choose_set_active_profile:
+ * @choose: #GMAudioProfileChoose widget
+ * @id: A id of #GMAudioProfile that should be selected
+ *
+ * This function sets currently selected #GMAudioProfile. If no profile matches
+ * the @id, first available profile is set as selected and function returns
+ * %FALSE.
+ *
+ * Return value: %TRUE if profile has been successfully set, %FALSE otherwise.
+ *
+ * Since: 2.32/3.0
+ */
+gboolean
+gm_audio_profile_choose_set_active_profile (GMAudioProfileChoose *choose,
+ const gchar *id)
+{
+ GMAudioProfileChoosePrivate *priv;
+ GtkTreeIter iter;
+ gchar *tmp;
+
+ g_return_val_if_fail (GM_AUDIO_IS_PROFILE_CHOOSE (choose), FALSE);
+
+ priv = choose->priv;
+
+ if (!gtk_tree_model_get_iter_first (priv->model, &iter))
+ return FALSE;
+
+ do
+ {
+ gtk_tree_model_get (priv->model, &iter, ID_COLUMN, &tmp, -1);
+ if (!g_strcmp0 (tmp, id))
+ {
+ gtk_combo_box_set_active_iter (GTK_COMBO_BOX (choose), &iter);
+ g_free (tmp);
+ return TRUE;
+ }
+ g_free (tmp);
+ }
+ while (gtk_tree_model_iter_next (priv->model, &iter));
+
+ /* Fallback to first entry */
+ gtk_combo_box_set_active (GTK_COMBO_BOX (choose), 0);
+
+ return FALSE;
+}
+
+/* Deprecated functions */
+/**
+ * gm_audio_profile_choose_get_active:
+ * @choose: A #GMAudioProfileChoose widget
+ *
+ * This function retrieves currently selected #GMAudioProfile. Returned object is
+ * owned by #GMAudioProfileChoose and should not be unreferenced.
+ *
+ * Return value: Currently selected #GMAudioProfile or %NULL if none is
+ * selected.
+ *
+ * Deprecated: 2.32/3.0: Use gm_audio_profile_choose_get_active_profile()
+ * instead.
+ */
+GMAudioProfile*
+gm_audio_profile_choose_get_active (GtkWidget *choose)
+{
+ /* We cannot simply wrap gm_audio_profile_choose_get_active_profile() here,
+ * since this function can be (and in case of sound-juicer is) called from
+ * GtkComboBox::changed signal handler. In this situation, code would return
+ * invalid profile, since we haven't updated the current selection yet. */
+ GMAudioProfileChoosePrivate *priv;
+ GtkTreeIter iter;
+ GMAudioProfile *new_profile = NULL;
+
+ g_return_val_if_fail (GM_AUDIO_IS_PROFILE_CHOOSE (choose), NULL);
+
+ priv = GM_AUDIO_PROFILE_CHOOSE (choose)->priv;
+ if (gtk_combo_box_get_active_iter (GTK_COMBO_BOX (choose), &iter))
+ {
+ gtk_tree_model_get (priv->model, &iter, PROFILE_COLUMN, &new_profile, -1);
+ g_object_unref (new_profile);
+ }
+
+ return new_profile;
+}
+
+/**
+ * gm_audio_profile_choose_set_active:
+ * @choose: #GMAudioProfileChoose widget
+ * @id: A id of #GMAudioProfile that should be selected
+ *
+ * This function sets currently selected #GMAudioProfile. If no profile matches
+ * the @id, first available profile is set as selected and function returns
+ * %FALSE.
+ *
+ * Return value: %TRUE if profile has been successfully set, %FALSE otherwise.
+ *
+ * Deprecated: 2.32/3.0: Use gm_audio_profile_choose_set_active_profile()
+ * instead.
+ */
+gboolean
+gm_audio_profile_choose_set_active (GtkWidget *choose,
+ const char *id)
+{
+ return gm_audio_profile_choose_set_active_profile (GM_AUDIO_PROFILE_CHOOSE (choose), id);
+}
diff --git a/profiles/audio-profile-choose.h b/profiles/audio-profile-choose.h
new file mode 100644
index 0000000..cc4dfcc
--- /dev/null
+++ b/profiles/audio-profile-choose.h
@@ -0,0 +1,74 @@
+/* audio-profile-choose.h: combo box to choose a specific profile */
+
+/*
+ * Copyright (C) 2003 Thomas Vander Stichele
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+#ifndef GM_AUDIO_PROFILE_CHOOSE_H
+#define GM_AUDIO_PROFILE_CHOOSE_H
+
+#include "audio-profile.h"
+#include <gtk/gtk.h>
+
+G_BEGIN_DECLS
+
+/* Standard macros */
+#define GM_AUDIO_TYPE_PROFILE_CHOOSE (gm_audio_profile_choose_get_type ())
+#define GM_AUDIO_PROFILE_CHOOSE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GM_AUDIO_TYPE_PROFILE_CHOOSE, GMAudioProfileChoose))
+#define GM_AUDIO_PROFILE_CHOOSE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GM_AUDIO_TYPE_PROFILE_CHOOSE, GMAudioProfileChooseClass))
+#define GM_AUDIO_IS_PROFILE_CHOOSE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GM_AUDIO_TYPE_PROFILE_CHOOSE))
+#define GM_AUDIO_IS_PROFILE_CHOOSE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GM_AUDIO_TYPE_PROFILE_CHOOSE))
+#define GM_AUDIO_PROFILE_CHOOSE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GM_AUDIO_TYPE_PROFILE_CHOOSE, GMAudioProfileChooseClass))
+
+/* Structs */
+typedef struct _GMAudioProfileChoose GMAudioProfileChoose;
+typedef struct _GMAudioProfileChooseClass GMAudioProfileChooseClass;
+typedef struct _GMAudioProfileChoosePrivate GMAudioProfileChoosePrivate;
+
+struct _GMAudioProfileChoose
+{
+ GtkComboBox parent;
+
+ /*< Private >*/
+ GMAudioProfileChoosePrivate *priv;
+};
+
+struct _GMAudioProfileChooseClass
+{
+ GtkComboBoxClass parent_class;
+
+ /* Signals */
+ void (*profile_changed) (GMAudioProfileChoose *choose,
+ GMAudioProfile *profile);
+};
+
+/* Public API */
+GType gm_audio_profile_choose_get_type (void) G_GNUC_CONST;
+GtkWidget *gm_audio_profile_choose_new (void);
+GMAudioProfile *gm_audio_profile_choose_get_active_profile (GMAudioProfileChoose *choose);
+gboolean gm_audio_profile_choose_set_active_profile (GMAudioProfileChoose *choose,
+ const gchar *id);
+
+/* Deprecated API */
+GMAudioProfile *gm_audio_profile_choose_get_active (GtkWidget *choose);
+gboolean gm_audio_profile_choose_set_active (GtkWidget *choose,
+ const char *id);
+
+G_END_DECLS
+
+#endif /* GM_AUDIO_PROFILE_CHOOSE_H */
diff --git a/profiles/audio-profile-edit.c b/profiles/audio-profile-edit.c
new file mode 100644
index 0000000..69e97ed
--- /dev/null
+++ b/profiles/audio-profile-edit.c
@@ -0,0 +1,426 @@
+/* gm_audio-profile-edit.c: dialog to edit a specific profile */
+
+/*
+ * Copyright (C) 2003 Thomas Vander Stichele
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include <string.h>
+#include <glib/gi18n.h>
+#include <gtk/gtk.h>
+#include <gst/gst.h>
+
+#include "gmp-util.h"
+#include "audio-profile-edit.h"
+#include "audio-profile.h"
+#include "audio-profile-private.h"
+
+struct _GMAudioProfileEditPrivate
+{
+ MateConfClient *conf;
+ GtkBuilder *builder;
+ GMAudioProfile *profile;
+ GtkWidget *content;
+};
+
+static void gm_audio_profile_edit_init (GMAudioProfileEdit *edit);
+static void gm_audio_profile_edit_class_init (GMAudioProfileEditClass *klass);
+static void gm_audio_profile_edit_dispose (GObject *object);
+
+static void gm_audio_profile_edit_response (GtkDialog *dialog,
+ int id);
+static GtkWidget*
+ gm_audio_profile_edit_get_widget (GMAudioProfileEdit *dialog,
+ const char *widget_name);
+static void gm_audio_profile_edit_update_name (GMAudioProfileEdit *dialog,
+ GMAudioProfile *profile);
+static void gm_audio_profile_edit_update_description
+ (GMAudioProfileEdit *dialog,
+ GMAudioProfile *profile);
+static void gm_audio_profile_edit_update_pipeline (GMAudioProfileEdit *dialog,
+ GMAudioProfile *profile);
+static void gm_audio_profile_edit_update_extension (GMAudioProfileEdit *dialog,
+ GMAudioProfile *profile);
+static void gm_audio_profile_edit_update_active (GMAudioProfileEdit *dialog,
+ GMAudioProfile *profile);
+static void on_profile_changed (GMAudioProfile *profile,
+ const GMAudioSettingMask *mask,
+ GMAudioProfileEdit *dialog);
+
+G_DEFINE_TYPE (GMAudioProfileEdit, gm_audio_profile_edit, GTK_TYPE_DIALOG)
+
+/* ui callbacks */
+
+/* initialize a dialog widget from the ui builder file */
+static void
+gm_audio_profile_edit_init (GMAudioProfileEdit *dialog)
+{
+ dialog->priv = G_TYPE_INSTANCE_GET_PRIVATE (dialog, GM_AUDIO_TYPE_PROFILE_EDIT, GMAudioProfileEditPrivate);
+}
+
+static void
+gm_audio_profile_edit_class_init (GMAudioProfileEditClass *klass)
+{
+ GObjectClass *object_class = G_OBJECT_CLASS (klass);
+ GtkDialogClass *dialog_class = GTK_DIALOG_CLASS (klass);
+
+ object_class->dispose = gm_audio_profile_edit_dispose;
+
+ dialog_class->response = gm_audio_profile_edit_response;
+
+ g_type_class_add_private (object_class, sizeof (GMAudioProfileEditPrivate));
+}
+
+#if 0
+static void
+gm_audio_profile_edit_finalize (GObject *object)
+{
+ GMAudioProfileEdit *dialog;
+
+ dialog = GM_AUDIO_PROFILE_EDIT (object);
+
+ G_OBJECT_CLASS (gm_audio_profile_edit_parent_class)->finalize (object);
+}
+#endif
+
+/* ui callbacks */
+static void
+gm_audio_profile_edit_response (GtkDialog *dialog,
+ int id)
+{
+ if (id == GTK_RESPONSE_HELP)
+ {
+ GError *err = NULL;
+
+ gtk_show_uri (gtk_widget_get_screen (GTK_WIDGET (dialog)),
+ "ghelp:mate-audio-profiles?mate-audio-profiles-edit",
+ gtk_get_current_event_time (),
+ &err);
+
+ if (err)
+ {
+ gmp_util_show_error_dialog (GTK_WINDOW (dialog), NULL,
+ _("There was an error displaying help: %s"), err->message);
+ g_error_free (err);
+ }
+
+ return;
+ }
+
+ /* FIXME: hide or destroy ? */
+ gtk_widget_hide (GTK_WIDGET (dialog));
+}
+
+static void
+gm_audio_profile_edit_dispose (GObject *object)
+{
+ GMAudioProfileEdit *dialog = GM_AUDIO_PROFILE_EDIT (object);
+ GMAudioProfileEditPrivate *priv = dialog->priv;
+
+ g_signal_handlers_disconnect_by_func (priv->profile,
+ G_CALLBACK (on_profile_changed),
+ dialog);
+}
+/* profile callbacks */
+
+static void
+on_profile_changed (GMAudioProfile *profile,
+ const GMAudioSettingMask *mask,
+ GMAudioProfileEdit *dialog)
+{
+ if (mask->name)
+ gm_audio_profile_edit_update_name (dialog, profile);
+ if (mask->description)
+ gm_audio_profile_edit_update_description (dialog, profile);
+ if (mask->pipeline)
+ gm_audio_profile_edit_update_pipeline (dialog, profile);
+ if (mask->extension)
+ gm_audio_profile_edit_update_extension (dialog, profile);
+ if (mask->active)
+ gm_audio_profile_edit_update_active (dialog, profile);
+}
+
+/* ui callbacks */
+static void
+on_profile_name_changed (GtkWidget *entry,
+ GMAudioProfile *profile)
+{
+ char *text;
+
+ text = gtk_editable_get_chars (GTK_EDITABLE (entry), 0, -1);
+
+ gm_audio_profile_set_name (profile, text);
+
+ g_free (text);
+}
+
+static void
+on_profile_description_changed (GtkTextBuffer *tb,
+ GMAudioProfile *profile)
+{
+ char *text;
+
+ g_object_get (G_OBJECT (tb), "text", &text, NULL);
+ gm_audio_profile_set_description (profile, text);
+ g_free (text);
+}
+
+static void
+on_profile_pipeline_changed (GtkWidget *entry,
+ GMAudioProfile *profile)
+{
+ char *text;
+
+ text = gtk_editable_get_chars (GTK_EDITABLE (entry), 0, -1);
+
+ gm_audio_profile_set_pipeline (profile, text);
+
+ g_free (text);
+}
+
+static void
+on_profile_extension_changed (GtkWidget *entry,
+ GMAudioProfile *profile)
+{
+ char *text;
+
+ text = gtk_editable_get_chars (GTK_EDITABLE (entry), 0, -1);
+
+ gm_audio_profile_set_extension (profile, text);
+
+ g_free (text);
+}
+
+static void
+on_profile_active_toggled (GtkWidget *button, GMAudioProfile *profile)
+{
+ gm_audio_profile_set_active (profile, gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (button)));
+}
+
+/* create and return a new Profile Edit Dialog
+ * given the MateConf connection and the id of the profile
+ */
+GtkWidget*
+gm_audio_profile_edit_new (MateConfClient *conf, const char *id)
+{
+ GMAudioProfileEdit *dialog;
+ GtkBuilder *builder;
+ GtkWidget *w;
+ GtkTextBuffer *tb;
+ GError *error = NULL;
+
+ /* get the dialog */
+ builder = gmp_util_load_builder_file ("mate-audio-profile-edit.ui", NULL, &error);
+ if (error != NULL) {
+ g_warning ("%s", error->message);
+ g_error_free (error);
+ return NULL;
+ }
+
+ dialog = GM_AUDIO_PROFILE_EDIT (gtk_builder_get_object (builder, "profile-edit-dialog"));
+ g_return_val_if_fail (dialog != NULL, NULL);
+
+ /* make sure we have priv */
+ if (dialog->priv == NULL)
+ {
+ /* we didn't go through _init; this chould happen for example when
+ * we specified profile-edit-dialog as a GtkDialog instead of a
+ * GMAudioProfileEdit for easy glade editing */
+ /* FIXME: to be honest, this smells like I'm casting a created GtkDialog
+ * widget to a GapEditProfile and then doing stuff to it. That doesn't
+ * smell to good to me */
+ dialog->priv = g_new0 (GMAudioProfileEditPrivate, 1);
+ }
+ dialog->priv->builder = builder;
+
+ /* save the MateConf stuff and get the profile belonging to this id */
+ dialog->priv->conf = g_object_ref (conf);
+
+ dialog->priv->profile = gm_audio_profile_lookup (id);
+ g_assert (dialog->priv->profile);
+
+ /* autoconnect doesn't handle data pointers, sadly, so do by hand */
+ w = GTK_WIDGET (gtk_builder_get_object (builder, "profile-name-entry"));
+ gm_audio_profile_edit_update_name (dialog, dialog->priv->profile);
+ g_signal_connect (G_OBJECT (w), "changed",
+ G_CALLBACK (on_profile_name_changed), dialog->priv->profile);
+ w = GTK_WIDGET (gtk_builder_get_object (builder, "profile-description-textview"));
+ gm_audio_profile_edit_update_description (dialog, dialog->priv->profile);
+ tb = gtk_text_view_get_buffer (GTK_TEXT_VIEW (w));
+ g_signal_connect (G_OBJECT (tb), "changed",
+ G_CALLBACK (on_profile_description_changed), dialog->priv->profile);
+ w = GTK_WIDGET (gtk_builder_get_object (builder, "profile-pipeline-entry"));
+ gm_audio_profile_edit_update_pipeline (dialog, dialog->priv->profile);
+ g_signal_connect (G_OBJECT (w), "changed",
+ G_CALLBACK (on_profile_pipeline_changed), dialog->priv->profile);
+ w = GTK_WIDGET (gtk_builder_get_object (builder, "profile-extension-entry"));
+ gm_audio_profile_edit_update_extension (dialog, dialog->priv->profile);
+ g_signal_connect (G_OBJECT (w), "changed",
+ G_CALLBACK (on_profile_extension_changed), dialog->priv->profile);
+ w = GTK_WIDGET (gtk_builder_get_object (builder, "profile-active-button"));
+ gm_audio_profile_edit_update_active (dialog, dialog->priv->profile);
+ g_signal_connect (G_OBJECT (w), "toggled",
+ G_CALLBACK (on_profile_active_toggled), dialog->priv->profile);
+
+
+ gtk_window_set_modal (GTK_WINDOW (dialog), TRUE);
+ gtk_window_set_destroy_with_parent (GTK_WINDOW (dialog), TRUE);
+
+ /* connect to profile changes */
+
+ g_signal_connect (G_OBJECT (dialog->priv->profile),
+ "changed",
+ G_CALLBACK (on_profile_changed),
+ dialog);
+
+ gtk_window_present (GTK_WINDOW (dialog));
+
+ return GTK_WIDGET (dialog);
+}
+
+/* UI consistency update functions */
+static void
+entry_set_text_if_changed (GtkEntry *entry,
+ const char *text)
+{
+ char *s;
+
+ GST_DEBUG ("entry_set_text_if_changed on entry %p with text %s\n", entry, text);
+ s = gtk_editable_get_chars (GTK_EDITABLE (entry), 0, -1);
+ GST_DEBUG ("got editable text %s\n", s);
+ if (text && strcmp (s, text) != 0)
+ gtk_entry_set_text (GTK_ENTRY (entry), text);
+ GST_DEBUG ("entry_set_text_if_changed: got %s\n", s);
+
+ g_free (s);
+}
+
+static void
+textview_set_text_if_changed (GtkTextView *view, const char *text)
+{
+ char *s;
+ GtkTextBuffer *tb;
+
+ GST_DEBUG ("textview_set_text_if_changed on textview %p with text %s\n",
+ view, text);
+ tb = gtk_text_view_get_buffer (view);
+ g_object_get (G_OBJECT (tb), "text", &s, NULL);
+ GST_DEBUG ("got textview text %s\n", s);
+ if (s && strcmp (s, text) != 0)
+ g_object_set (G_OBJECT (tb), "text", text, NULL);
+ GST_DEBUG ("textview_set_text_if_changed: got %s\n", s);
+
+ g_free (s);
+}
+
+static void
+gm_audio_profile_edit_update_name (GMAudioProfileEdit *dialog,
+ GMAudioProfile *profile)
+{
+ char *s;
+ GtkWidget *w;
+
+ s = g_strdup_printf (_("Editing profile \"%s\""),
+ gm_audio_profile_get_name (profile));
+ GST_DEBUG ("g_p_e_u_n: title %s\n", s);
+
+ gtk_window_set_title (GTK_WINDOW (dialog), s);
+
+ g_free (s);
+
+ w = gm_audio_profile_edit_get_widget (dialog, "profile-name-entry");
+ g_assert (GTK_IS_WIDGET (w));
+
+ entry_set_text_if_changed (GTK_ENTRY (w),
+ gm_audio_profile_get_name (profile));
+}
+
+static void
+gm_audio_profile_edit_update_description (GMAudioProfileEdit *dialog,
+ GMAudioProfile *profile)
+{
+ GtkWidget *w;
+
+ w = gm_audio_profile_edit_get_widget (dialog, "profile-description-textview");
+ g_assert (GTK_IS_WIDGET (w));
+
+ textview_set_text_if_changed (GTK_TEXT_VIEW (w),
+ gm_audio_profile_get_description (profile));
+}
+
+static void
+gm_audio_profile_edit_update_pipeline (GMAudioProfileEdit *dialog,
+ GMAudioProfile *profile)
+{
+ GtkWidget *w;
+
+ w = gm_audio_profile_edit_get_widget (dialog, "profile-pipeline-entry");
+ g_assert (GTK_IS_WIDGET (w));
+
+ entry_set_text_if_changed (GTK_ENTRY (w),
+ gm_audio_profile_get_pipeline (profile));
+}
+
+static void
+gm_audio_profile_edit_update_extension (GMAudioProfileEdit *dialog,
+ GMAudioProfile *profile)
+{
+ GtkWidget *w;
+
+ w = gm_audio_profile_edit_get_widget (dialog, "profile-extension-entry");
+ g_assert (GTK_IS_WIDGET (w));
+
+ entry_set_text_if_changed (GTK_ENTRY (w),
+ gm_audio_profile_get_extension (profile));
+}
+
+static void
+gm_audio_profile_edit_update_active (GMAudioProfileEdit *dialog,
+ GMAudioProfile *profile)
+{
+ GtkWidget *w;
+
+ w = gm_audio_profile_edit_get_widget (dialog, "profile-active-button");
+ g_assert (GTK_IS_WIDGET (w));
+
+ gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (w),
+ gm_audio_profile_get_active (profile));
+}
+
+static GtkWidget*
+gm_audio_profile_edit_get_widget (GMAudioProfileEdit *dialog,
+ const char *widget_name)
+{
+ GtkBuilder *builder;
+ GtkWidget *w;
+
+ builder = dialog->priv->builder;
+
+ g_return_val_if_fail (builder, NULL);
+
+ w = GTK_WIDGET (gtk_builder_get_object (builder, widget_name));
+
+ if (w == NULL)
+ g_error ("No such widget %s", widget_name);
+
+ return w;
+}
+
diff --git a/profiles/audio-profile-edit.h b/profiles/audio-profile-edit.h
new file mode 100644
index 0000000..151eaaf
--- /dev/null
+++ b/profiles/audio-profile-edit.h
@@ -0,0 +1,63 @@
+/* audio-profile-edit.h: dialog to edit a specific profile */
+
+/*
+ * Copyright (C) 2003 Thomas Vander Stichele
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+#ifndef GM_AUDIO_PROFILE_EDIT_H
+#define GM_AUDIO_PROFILE_EDIT_H
+
+#include <gtk/gtk.h>
+#include <mateconf/mateconf-client.h>
+
+G_BEGIN_DECLS
+
+#define GM_AUDIO_TYPE_PROFILE_EDIT (gm_audio_profile_edit_get_type ())
+#define GM_AUDIO_PROFILE_EDIT(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), GM_AUDIO_TYPE_PROFILE_EDIT, GMAudioProfileEdit))
+#define GM_AUDIO_PROFILE_EDIT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GM_AUDIO_TYPE_PROFILE_EDIT, GMAudioProfileEditClass))
+#define GM_AUDIO_IS_PROFILE_EDIT(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), GM_AUDIO_TYPE_PROFILE_EDIT))
+#define GM_AUDIO_IS_PROFILE_EDIT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GM_AUDIO_TYPE_PROFILE_EDIT))
+#define GM_AUDIO_PROFILE_EDIT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GM_AUDIO_TYPE_PROFILE_EDIT, GMAudioProfileEditClass))
+
+typedef struct _GMAudioProfileEditClass GMAudioProfileEditClass;
+typedef struct _GMAudioProfileEditPrivate GMAudioProfileEditPrivate;
+/* FIXME: this might have to be moved higher up in the hierarchy so it
+ can be referenced from other places */
+typedef struct _GMAudioProfileEdit GMAudioProfileEdit;
+
+struct _GMAudioProfileEdit
+{
+ GtkDialog parent_instance;
+
+ GMAudioProfileEditPrivate *priv;
+};
+
+struct _GMAudioProfileEditClass
+{
+ GtkDialogClass parent_class;
+
+};
+
+GType gm_audio_profile_edit_get_type (void) G_GNUC_CONST;
+
+/* create a new Profile Edit Dialog */
+GtkWidget* gm_audio_profile_edit_new (MateConfClient *conf, const char *name);
+
+G_END_DECLS
+
+#endif /* GM_AUDIO_PROFILE_EDIT_H */
diff --git a/profiles/audio-profile-private.h b/profiles/audio-profile-private.h
new file mode 100644
index 0000000..8d01c99
--- /dev/null
+++ b/profiles/audio-profile-private.h
@@ -0,0 +1,54 @@
+/* audio-profile-private.h: private audio profile header file */
+
+/*
+ * Copyright (C) 2003 Thomas Vander Stichele
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+#ifndef AUDIO_PROFILE_PRIVATE_H
+#define AUDIO_PROFILE_PRIVATE_H
+
+#include <mateconf/mateconf-client.h>
+
+#include "gmp-conf.h"
+#include "audio-profile.h"
+
+G_BEGIN_DECLS
+
+GMAudioProfile* gm_audio_profile_new (const char *name,
+ MateConfClient *conf);
+char * gm_audio_profile_create (const char *name,
+ MateConfClient *conf,
+ GError **error);
+
+void gm_audio_profile_initialize (MateConfClient *conf);
+GList* gm_audio_profile_get_list (void);
+int gm_audio_profile_get_count (void);
+void gm_audio_profile_forget (GMAudioProfile *profile);
+void gm_audio_profile_sync_list (gboolean use_this_list,
+ GSList *this_list);
+
+
+gboolean gm_audio_setting_mask_is_empty (const GMAudioSettingMask *mask);
+
+void gm_audio_profile_delete_list (MateConfClient *conf,
+ GList *deleted_profiles,
+ GError **error);
+
+G_END_DECLS
+
+#endif /* AUDIO_PROFILE_PRIVATE_H */
diff --git a/profiles/audio-profile.c b/profiles/audio-profile.c
new file mode 100644
index 0000000..6e89d86
--- /dev/null
+++ b/profiles/audio-profile.c
@@ -0,0 +1,1132 @@
+/* audio-profile.c: */
+
+/*
+ * Copyright (C) 2003 Thomas Vander Stichele
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+#include <string.h>
+#include <glib/gi18n.h>
+#include <gst/gst.h>
+
+#include "gmp-util.h"
+#include "audio-profile.h"
+#include "audio-profile-private.h"
+
+#define KEY_NAME "name"
+#define KEY_DESCRIPTION "description"
+#define KEY_PIPELINE "pipeline"
+#define KEY_EXTENSION "extension"
+#define KEY_ACTIVE "active"
+
+struct _GMAudioProfilePrivate
+{
+ char *id; /* the MateConf dir name */
+ char *profile_dir; /* full path in MateConf to this profile */
+ MateConfClient *conf;
+ guint notify_id;
+
+ int in_notification_count; /* don't understand, see terminal-profile.c */
+ char *name; /* human-readable short name */
+ char *description; /* longer description of profile */
+ char *pipeline; /* GStreamer pipeline to be used */
+ char *extension; /* default file extension for this format */
+ guint active : 1;
+ guint forgotten : 1;
+
+ GMAudioSettingMask locked;
+};
+
+static GHashTable *profiles = NULL;
+static MateConfClient *_conf = NULL;
+
+#define RETURN_IF_NOTIFYING(profile) if ((profile)->priv->in_notification_count) return
+
+enum {
+ CHANGED,
+ FORGOTTEN,
+ LAST_SIGNAL
+};
+
+static void gm_audio_profile_finalize (GObject *object);
+
+static void gm_audio_profile_update (GMAudioProfile *profile);
+
+static void profile_change_notify (MateConfClient *client,
+ guint cnxn_id,
+ MateConfEntry *entry,
+ gpointer user_data);
+
+static void emit_changed (GMAudioProfile *profile,
+ const GMAudioSettingMask *mask);
+
+
+static gpointer parent_class;
+static guint signals[LAST_SIGNAL] = { 0 };
+
+
+static gpointer parent_class;
+
+G_DEFINE_TYPE (GMAudioProfile, gm_audio_profile, G_TYPE_OBJECT)
+
+static void
+gm_audio_profile_init (GMAudioProfile *self)
+{
+ g_return_if_fail (profiles != NULL);
+
+ self->priv = g_new0 (GMAudioProfilePrivate, 1);
+ self->priv->name = g_strdup (_("<no name>"));
+ self->priv->description = g_strdup (_("<no description>"));
+ self->priv->pipeline = g_strdup ("identity");
+ self->priv->extension = g_strdup ("wav");
+}
+
+static void
+gm_audio_profile_class_init (GMAudioProfileClass *klass)
+{
+ GObjectClass *object_class = G_OBJECT_CLASS (klass);
+
+ parent_class = g_type_class_peek_parent (klass);
+
+ object_class->finalize = gm_audio_profile_finalize;
+
+ signals[CHANGED] =
+ g_signal_new ("changed",
+ G_OBJECT_CLASS_TYPE (object_class),
+ G_SIGNAL_RUN_LAST,
+ G_STRUCT_OFFSET (GMAudioProfileClass, changed),
+ NULL, NULL,
+ g_cclosure_marshal_VOID__POINTER,
+ G_TYPE_NONE, 1, G_TYPE_POINTER);
+
+ signals[FORGOTTEN] =
+ g_signal_new ("forgotten",
+ G_OBJECT_CLASS_TYPE (object_class),
+ G_SIGNAL_RUN_LAST,
+ G_STRUCT_OFFSET (GMAudioProfileClass, forgotten),
+ NULL, NULL,
+ g_cclosure_marshal_VOID__VOID,
+ G_TYPE_NONE, 0);
+}
+
+static void
+gm_audio_profile_finalize (GObject *object)
+{
+ GMAudioProfile *self;
+
+ self = GM_AUDIO_PROFILE (object);
+
+ gm_audio_profile_forget (self);
+
+ mateconf_client_notify_remove (self->priv->conf,
+ self->priv->notify_id);
+ self->priv->notify_id = 0;
+
+ g_object_unref (G_OBJECT (self->priv->conf));
+
+ g_free (self->priv->name);
+
+ G_OBJECT_CLASS (parent_class)->finalize (object);
+}
+
+/*
+ * internal stuff to manage profiles
+ */
+
+/* sync gm_audio profiles list by either using the given list as the new list
+ * or by getting the list from MateConf
+ */
+
+static GList*
+find_profile_link (GList *profiles,
+ const char *id)
+{
+ GList *tmp;
+
+ tmp = profiles;
+ while (tmp != NULL)
+ {
+ if (strcmp (gm_audio_profile_get_id (GM_AUDIO_PROFILE (tmp->data)),
+ id) == 0)
+ return tmp;
+
+ tmp = tmp->next;
+ }
+
+ return NULL;
+}
+
+/* synchronize global profiles hash through accessor functions
+ * if use_this_list is true, then put given profiles to the hash
+ * if it's false, then get list from MateConf */
+void
+gm_audio_profile_sync_list (gboolean use_this_list,
+ GSList *this_list)
+{
+ GList *known;
+ GSList *updated;
+ GList *tmp_list;
+ GSList *tmp_slist;
+ GError *err;
+ gboolean need_new_default;
+ GMAudioProfile *fallback;
+
+ GST_DEBUG ("sync_list: start\n");
+ if (use_this_list)
+ GST_DEBUG ("Using given list of length %d\n", g_slist_length (this_list));
+ else
+ GST_DEBUG ("using list from mateconf\n");
+ known = gm_audio_profile_get_list ();
+ GST_DEBUG ("list of known profiles: size %d\n", g_list_length (known));
+
+ if (use_this_list)
+ {
+ updated = g_slist_copy (this_list);
+ }
+ else
+ {
+ err = NULL;
+ updated = mateconf_client_get_list (_conf,
+ CONF_GLOBAL_PREFIX"/profile_list",
+ MATECONF_VALUE_STRING,
+ &err);
+ if (err)
+ { g_printerr (_("There was an error getting the list of gm_audio profiles. (%s)\n"),
+ err->message);
+ g_error_free (err);
+ }
+ }
+
+ GST_DEBUG ("updated: slist of %d items\n", g_slist_length (updated));
+ /* Add any new ones; ie go through updated and if any of them isn't in
+ * the hash yet, add it. If it is in the list of known profiles, remove
+ * it from our copy of that list. */
+ tmp_slist = updated;
+ while (tmp_slist != NULL)
+ {
+ GList *link;
+
+ link = find_profile_link (known, tmp_slist->data);
+
+ if (link)
+ {
+ /* make known point to profiles we didn't find in the list */
+ GST_DEBUG ("id %s found in known profiles list, deleting from known\n",
+ (char *) tmp_slist->data);
+ known = g_list_delete_link (known, link);
+ }
+ else
+ {
+ GMAudioProfile *profile;
+
+ GST_DEBUG ("adding new profile with id %s to global hash\n",
+ (const char *) tmp_slist->data);
+ profile = gm_audio_profile_new (tmp_slist->data, _conf);
+
+ gm_audio_profile_update (profile);
+ }
+
+ if (!use_this_list)
+ g_free (tmp_slist->data);
+
+ tmp_slist = tmp_slist->next;
+ }
+
+ g_slist_free (updated);
+
+ fallback = NULL;
+
+ /* Forget no-longer-existing profiles */
+ need_new_default = FALSE;
+ tmp_list = known;
+ while (tmp_list != NULL)
+ {
+ GMAudioProfile *forgotten;
+
+ forgotten = GM_AUDIO_PROFILE (tmp_list->data);
+
+ GST_DEBUG ("sync_list: forgetting profile with id %s\n",
+ gm_audio_profile_get_id (forgotten));
+ gm_audio_profile_forget (forgotten);
+
+ tmp_list = tmp_list->next;
+ }
+
+ g_list_free (known);
+ GST_DEBUG ("sync_list: stop\n");
+
+ //FIXME: g_assert (terminal_profile_get_count () > 0);
+}
+
+/*
+ * external API functions
+ */
+
+/* create a new GMAudioProfile structure and add it to the global profiles hash
+ * load settings from MateConf tree
+ */
+GMAudioProfile*
+gm_audio_profile_new (const char *id, MateConfClient *conf)
+{
+ GMAudioProfile *self;
+ GError *err;
+
+ GST_DEBUG ("creating new GMAudioProfile for id %s\n", id);
+ g_return_val_if_fail (profiles != NULL, NULL);
+ g_return_val_if_fail (gm_audio_profile_lookup (id) == NULL, NULL);
+
+ self = g_object_new (GM_AUDIO_TYPE_PROFILE, NULL);
+
+ self->priv->conf = conf;
+ g_object_ref (G_OBJECT (conf));
+
+ self->priv->id = g_strdup (id);
+ self->priv->profile_dir = mateconf_concat_dir_and_key (CONF_PROFILES_PREFIX,
+ self->priv->id);
+
+ err = NULL;
+ GST_DEBUG ("loading config from MateConf dir %s\n",
+ self->priv->profile_dir);
+ mateconf_client_add_dir (conf, self->priv->profile_dir,
+ MATECONF_CLIENT_PRELOAD_ONELEVEL,
+ &err);
+ if (err)
+ {
+ g_printerr ("There was an error loading config from %s. (%s)\n",
+ self->priv->profile_dir, err->message);
+ g_error_free (err);
+ }
+
+ err = NULL;
+ GST_DEBUG ("adding notify for MateConf profile\n");
+ self->priv->notify_id =
+ mateconf_client_notify_add (conf,
+ self->priv->profile_dir,
+ profile_change_notify,
+ self,
+ NULL, &err);
+
+ if (err)
+ {
+ g_printerr ("There was an error subscribing to notification of gm_audio profile changes. (%s)\n",
+ err->message);
+ g_error_free (err);
+ }
+
+ GST_DEBUG ("inserting in hash table done\n");
+ g_hash_table_insert (profiles, self->priv->id, self);
+ GST_DEBUG ("audio_profile_new done\n");
+
+ return self;
+}
+
+/*
+ * public profile getters and setters
+ */
+
+const char*
+gm_audio_profile_get_id (GMAudioProfile *self)
+{
+ return self->priv->id;
+}
+
+const char*
+gm_audio_profile_get_name (GMAudioProfile *self)
+{
+ return self->priv->name;
+}
+
+void
+gm_audio_profile_set_name (GMAudioProfile *self,
+ const char *name)
+{
+ char *key;
+
+ RETURN_IF_NOTIFYING (self);
+
+ key = mateconf_concat_dir_and_key (self->priv->profile_dir,
+ KEY_NAME);
+
+ mateconf_client_set_string (self->priv->conf,
+ key,
+ name,
+ NULL);
+
+ g_free (key);
+}
+
+const char*
+gm_audio_profile_get_description (GMAudioProfile *self)
+{
+ return self->priv->description;
+}
+
+void
+gm_audio_profile_set_description (GMAudioProfile *self,
+ const char *description)
+{
+ char *key;
+
+ RETURN_IF_NOTIFYING (self);
+
+ key = mateconf_concat_dir_and_key (self->priv->profile_dir,
+ KEY_DESCRIPTION);
+
+ mateconf_client_set_string (self->priv->conf,
+ key,
+ description,
+ NULL);
+
+ g_free (key);
+}
+
+const char*
+gm_audio_profile_get_pipeline (GMAudioProfile *self)
+{
+ return self->priv->pipeline;
+}
+
+void
+gm_audio_profile_set_pipeline (GMAudioProfile *self,
+ const char *pipeline)
+{
+ char *key;
+
+ RETURN_IF_NOTIFYING (self);
+
+ key = mateconf_concat_dir_and_key (self->priv->profile_dir,
+ KEY_PIPELINE);
+
+ mateconf_client_set_string (self->priv->conf,
+ key,
+ pipeline,
+ NULL);
+
+ g_free (key);
+}
+
+const char*
+gm_audio_profile_get_extension (GMAudioProfile *self)
+{
+ return self->priv->extension;
+}
+
+void
+gm_audio_profile_set_extension (GMAudioProfile *self,
+ const char *extension)
+{
+ char *key;
+
+ RETURN_IF_NOTIFYING (self);
+
+ key = mateconf_concat_dir_and_key (self->priv->profile_dir,
+ KEY_EXTENSION);
+
+ mateconf_client_set_string (self->priv->conf,
+ key,
+ extension,
+ NULL);
+
+ g_free (key);
+}
+
+gboolean
+gm_audio_profile_get_active (GMAudioProfile *self)
+{
+ return self->priv->active;
+}
+
+void
+gm_audio_profile_set_active (GMAudioProfile *self,
+ gboolean active)
+{
+ char *key;
+
+ RETURN_IF_NOTIFYING (self);
+
+ key = mateconf_concat_dir_and_key (self->priv->profile_dir,
+ KEY_ACTIVE);
+
+ mateconf_client_set_bool (self->priv->conf,
+ key,
+ active,
+ NULL);
+
+ g_free (key);
+}
+/*
+ * private setters
+ */
+
+static gboolean
+set_name (GMAudioProfile *self,
+ const char *candidate_name)
+{
+ /* don't update if it's the same as the old one */
+ if (candidate_name &&
+ strcmp (self->priv->name, candidate_name) == 0)
+ return FALSE;
+
+ if (candidate_name != NULL)
+ {
+ g_free (self->priv->name);
+ self->priv->name = g_strdup (candidate_name);
+ return TRUE;
+ }
+ /* otherwise just leave the old name */
+
+ return FALSE;
+}
+
+static gboolean
+set_description (GMAudioProfile *self,
+ const char *candidate_description)
+{
+ /* don't update if it's the same as the old one */
+ if (candidate_description &&
+ strcmp (self->priv->description, candidate_description) == 0)
+ return FALSE;
+
+ if (candidate_description != NULL)
+ {
+ g_free (self->priv->description);
+ self->priv->description = g_strdup (candidate_description);
+ return TRUE;
+ }
+ /* otherwise just leave the old description */
+
+ return FALSE;
+}
+
+static gboolean
+set_pipeline (GMAudioProfile *self,
+ const char *candidate_pipeline)
+{
+ /* don't update if it's the same as the old one */
+ if (candidate_pipeline &&
+ strcmp (self->priv->pipeline, candidate_pipeline) == 0)
+ return FALSE;
+
+ if (candidate_pipeline != NULL)
+ {
+ g_free (self->priv->pipeline);
+ self->priv->pipeline = g_strdup (candidate_pipeline);
+ return TRUE;
+ }
+ /* otherwise just leave the old pipeline */
+
+ return FALSE;
+}
+
+static gboolean
+set_extension (GMAudioProfile *self,
+ const char *candidate_extension)
+{
+ /* don't update if it's the same as the old one */
+ if (candidate_extension &&
+ strcmp (self->priv->extension, candidate_extension) == 0)
+ return FALSE;
+
+ if (candidate_extension != NULL)
+ {
+ g_free (self->priv->extension);
+ self->priv->extension = g_strdup (candidate_extension);
+ return TRUE;
+ }
+ /* otherwise just leave the old extension */
+
+ return FALSE;
+}
+
+static const gchar*
+find_key (const gchar* key)
+{
+ const gchar* end;
+
+ end = strrchr (key, '/');
+
+ ++end;
+
+ return end;
+}
+
+static void
+profile_change_notify (MateConfClient *client,
+ guint cnxn_id,
+ MateConfEntry *entry,
+ gpointer user_data)
+{
+ GMAudioProfile *self;
+ const char *key;
+ MateConfValue *val;
+ GMAudioSettingMask mask; /* to keep track of what has changed */
+
+ self = GM_AUDIO_PROFILE (user_data);
+ GST_DEBUG ("profile_change_notify: start in profile with name %s\n",
+ self->priv->name);
+
+ val = mateconf_entry_get_value (entry);
+
+ key = find_key (mateconf_entry_get_key (entry));
+
+/* strings are set through static set_ functions */
+#define UPDATE_STRING(KName, FName, Preset) \
+ } \
+else if (strcmp (key, KName) == 0) \
+ { \
+ const char * setting = (Preset); \
+ \
+ if (val && val->type == MATECONF_VALUE_STRING) \
+ setting = mateconf_value_get_string (val); \
+ \
+ mask.FName = set_##FName (self, setting); \
+ \
+ self->priv->locked.FName = !mateconf_entry_get_is_writable (entry);
+
+/* booleans are set directly on the profile priv variable */
+#define UPDATE_BOOLEAN(KName, FName, Preset) \
+ } \
+else if (strcmp (key, KName) == 0) \
+ { \
+ gboolean setting = (Preset); \
+ \
+ if (val && val->type == MATECONF_VALUE_BOOL) \
+ setting = mateconf_value_get_bool (val); \
+ \
+ if (setting != self->priv->FName) \
+ { \
+ mask.FName = TRUE; \
+ self->priv->FName = setting; \
+ } \
+ \
+ self->priv->locked.FName = !mateconf_entry_get_is_writable (entry);
+
+ if (0)
+ {
+ UPDATE_STRING (KEY_NAME, name, NULL);
+ UPDATE_STRING (KEY_DESCRIPTION, description, NULL);
+ UPDATE_STRING (KEY_PIPELINE, pipeline, NULL);
+ UPDATE_STRING (KEY_EXTENSION, extension, NULL);
+ UPDATE_BOOLEAN (KEY_ACTIVE, active, TRUE);
+ }
+
+#undef UPDATE_STRING
+#undef UPDATE_BOOLEAN
+
+ if (!(gm_audio_setting_mask_is_empty (&mask)))
+ {
+ GST_DEBUG ("emit changed\n");
+ emit_changed (self, &mask);
+ }
+ GST_DEBUG ("PROFILE_CHANGE_NOTIFY: changed stuff\n");
+}
+
+/* MateConf notification callback for profile_list */
+static void
+gm_audio_profile_list_notify (MateConfClient *client,
+ guint cnxn_id,
+ MateConfEntry *entry,
+ gpointer user_data)
+{
+ MateConfValue *val;
+ GSList *value_list;
+ GSList *string_list;
+ GSList *tmp;
+
+ GST_DEBUG ("profile_list changed\n");
+ val = mateconf_entry_get_value (entry);
+
+ if (val == NULL ||
+ val->type != MATECONF_VALUE_LIST ||
+ mateconf_value_get_list_type (val) != MATECONF_VALUE_STRING)
+ value_list = NULL;
+ else
+ value_list = mateconf_value_get_list (val);
+
+ string_list = NULL;
+ tmp = value_list;
+ while (tmp != NULL)
+ {
+ string_list = g_slist_prepend (string_list,
+ g_strdup (mateconf_value_get_string ((MateConfValue*) tmp->data)));
+
+ tmp = tmp->next;
+ }
+
+ string_list = g_slist_reverse (string_list);
+
+ gm_audio_profile_sync_list (TRUE, string_list);
+
+ g_slist_foreach (string_list, (GFunc) g_free, NULL);
+ g_slist_free (string_list);
+}
+
+
+/* needs to be called once
+ * sets up the global profiles hash
+ * safe to call more than once
+ */
+void
+gm_audio_profile_initialize (MateConfClient *conf)
+{
+ GError *err;
+/*
+ char *str;
+*/
+
+ g_return_if_fail (profiles == NULL);
+
+ profiles = g_hash_table_new (g_str_hash, g_str_equal);
+
+ if (_conf == NULL) _conf = conf;
+ /* sync it for the first time */
+ gm_audio_profile_sync_list (FALSE, NULL);
+
+ /* subscribe to changes to profile list */
+ err = NULL;
+ mateconf_client_notify_add (conf,
+ CONF_GLOBAL_PREFIX"/profile_list",
+ gm_audio_profile_list_notify,
+ NULL,
+ NULL, &err);
+
+ if (err)
+ {
+ g_printerr (_("There was an error subscribing to notification of audio profile list changes. (%s)\n"),
+ err->message);
+ g_error_free (err);
+ }
+
+
+ /* FIXME: no defaults
+ err = NULL;
+ mateconf_client_notify_add (conf,
+ CONF_GLOBAL_PREFIX"/default_profile", default_change_notify,
+ NULL,
+ NULL, &err);
+ if (err)
+ {
+ g_printerr (_("There was an error subscribing to notification of changes to default profile. (%s)\n"),
+ err->message);
+ g_error_free (err);
+ }
+
+ str = mateconf_client_get_string (conf,
+ CONF_GLOBAL_PREFIX"/default_profile",
+ NULL);
+ if (str)
+ {
+ update_default_profile (str,
+ !mateconf_client_key_is_writable (conf,
+ CONF_GLOBAL_PREFIX"/default_profile",
+ NULL));
+ g_free (str);
+ }
+ */
+}
+
+static void
+emit_changed (GMAudioProfile *self,
+ const GMAudioSettingMask *mask)
+{
+ self->priv->in_notification_count += 1;
+ g_signal_emit (G_OBJECT (self), signals[CHANGED], 0, mask);
+ self->priv->in_notification_count -= 1;
+}
+
+
+/* update the given GMAudioProfile from MateConf */
+static void
+gm_audio_profile_update (GMAudioProfile *self)
+{
+ GMAudioSettingMask locked;
+ GMAudioSettingMask mask;
+
+ memset (&mask, '\0', sizeof (mask));
+ memset (&locked, '\0', sizeof (locked));
+
+#define UPDATE_BOOLEAN(KName, FName) \
+{ \
+ char *key = mateconf_concat_dir_and_key (self->priv->profile_dir, KName); \
+ gboolean val = mateconf_client_get_bool (self->priv->conf, key, NULL); \
+ \
+ if (val != self->priv->FName) \
+ { \
+ mask.FName = TRUE; \
+ self->priv->FName = val; \
+ } \
+ \
+ locked.FName = \
+ !mateconf_client_key_is_writable (self->priv->conf, key, NULL); \
+ \
+ g_free (key); \
+}
+#define UPDATE_STRING(KName, FName) \
+{ \
+ char *key = mateconf_concat_dir_and_key (self->priv->profile_dir, KName); \
+ char *val = mateconf_client_get_string (self->priv->conf, key, NULL); \
+ \
+ mask.FName = set_##FName (self, val); \
+ \
+ locked.FName = \
+ !mateconf_client_key_is_writable (self->priv->conf, key, NULL); \
+ \
+ g_free (val); \
+ g_free (key); \
+}
+ UPDATE_STRING (KEY_NAME, name);
+ UPDATE_STRING (KEY_DESCRIPTION, description);
+ UPDATE_STRING (KEY_PIPELINE, pipeline);
+ UPDATE_STRING (KEY_EXTENSION, extension);
+ UPDATE_BOOLEAN (KEY_ACTIVE, active);
+
+#undef UPDATE_BOOLEAN
+#undef UPDATE_STRING
+ self->priv->locked = locked;
+ //FIXME: we don't use mask ?
+}
+
+
+static void
+listify_foreach (gpointer key,
+ gpointer value,
+ gpointer data)
+{
+ GList **listp = data;
+
+ *listp = g_list_prepend (*listp, value);
+}
+
+static int
+alphabetic_cmp (gconstpointer a,
+ gconstpointer b)
+{
+ GMAudioProfile *ap = (GMAudioProfile*) a;
+ GMAudioProfile *bp = (GMAudioProfile*) b;
+
+ return g_utf8_collate (gm_audio_profile_get_name (ap),
+ gm_audio_profile_get_name (bp));
+}
+
+GList*
+gm_audio_profile_get_list (void)
+{
+ GList *list;
+
+ list = NULL;
+ g_hash_table_foreach (profiles, listify_foreach, &list);
+
+ list = g_list_sort (list, alphabetic_cmp);
+
+ return list;
+}
+
+/* Return a GList of active GMAudioProfile's only */
+GList*
+gm_audio_profile_get_active_list (void)
+{
+ GList *list, *orig;
+ GList *new_list;
+
+ orig = list = gm_audio_profile_get_list ();
+
+ new_list = NULL;
+ while (list)
+ {
+ GMAudioProfile *profile;
+
+ profile = (GMAudioProfile *) list->data;
+ if (gm_audio_profile_get_active (profile)) {
+ const gchar *pipe = gm_audio_profile_get_pipeline (profile);
+ gchar *test = g_strdup_printf ("fakesrc ! %s ! fakesink", pipe);
+ GstElement *p;
+ GError *err = NULL;
+ if ((p = gst_parse_launch (test, &err)) && err == NULL) {
+ new_list = g_list_prepend (new_list, list->data);
+ g_object_unref (p);
+ } else {
+ g_object_unref (p);
+ g_error_free (err);
+ }
+ g_free (test);
+ }
+ list = g_list_next (list);
+ }
+
+ g_list_free (orig);
+ return g_list_reverse (new_list);
+}
+
+int
+gm_audio_profile_get_count (void)
+{
+ return g_hash_table_size (profiles);
+}
+
+GMAudioProfile*
+gm_audio_profile_lookup (const char *id)
+{
+ g_return_val_if_fail (id != NULL, NULL);
+
+ if (profiles)
+ {
+ GST_DEBUG ("a_p_l: profiles exists, returning hash table lookup of %s\n", id);
+ return g_hash_table_lookup (profiles, id);
+ }
+ else
+ return NULL;
+}
+
+void
+gm_audio_profile_forget (GMAudioProfile *self)
+{
+ GST_DEBUG ("audio_profile_forget: forgetting name %s\n",
+ gm_audio_profile_get_name (self));
+ if (!self->priv->forgotten)
+ {
+ GError *err;
+
+ err = NULL;
+ GST_DEBUG ("audio_profile_forget: removing from mateconf\n");
+ /* FIXME: remove_dir doesn't actually work. Either unset all keys
+ * manually or use recursive_unset on HEAD */
+ mateconf_client_remove_dir (self->priv->conf,
+ self->priv->profile_dir,
+ &err);
+ if (err)
+ {
+ g_printerr (_("There was an error forgetting profile path %s. (%s)\n"),
+ self->priv->profile_dir, err->message);
+ g_error_free (err);
+ }
+
+ g_hash_table_remove (profiles, self->priv->id);
+ self->priv->forgotten = TRUE;
+
+ g_signal_emit (G_OBJECT (self), signals[FORGOTTEN], 0);
+ }
+ else
+ GST_DEBUG ("audio_profile_forget: profile->priv->forgotten\n");
+}
+
+gboolean
+gm_audio_setting_mask_is_empty (const GMAudioSettingMask *mask)
+{
+ const unsigned int *p = (const unsigned int *) mask;
+ const unsigned int *end = p + (sizeof (GMAudioSettingMask) /
+ sizeof (unsigned int));
+
+ while (p < end)
+ {
+ if (*p != 0)
+ return FALSE;
+ ++p;
+ }
+
+ return TRUE;
+}
+
+/* gm_audio_profile_create returns the unique id of the created profile,
+ * which is used for looking up profiles later on.
+ * Caller should free the returned id */
+char *
+gm_audio_profile_create (const char *name,
+ MateConfClient *conf,
+ GError **error)
+{
+ char *profile_id = NULL;
+ char *profile_dir = NULL;
+ int i;
+ char *s;
+ char *key = NULL;
+ GError *err = NULL;
+ GList *profiles = NULL;
+ GSList *id_list = NULL;
+ GList *tmp;
+
+ GST_DEBUG ("a_p_c: Creating profile for %s\n", name);
+
+#define BAIL_OUT_CHECK() do { \
+ if (err != NULL) \
+ goto cleanup; \
+ } while (0)
+
+ /* Pick a unique name for storing in mateconf (based on visible name) */
+ profile_id = mateconf_escape_key (name, -1);
+ s = g_strdup (profile_id);
+ GST_DEBUG ("profile_id: %s\n", s);
+ i = 0;
+ while (gm_audio_profile_lookup (s))
+ {
+ g_free (s);
+ s = g_strdup_printf ("%s-%d", profile_id, i);
+ ++i;
+ }
+ g_free (profile_id);
+ profile_id = s;
+
+ profile_dir = mateconf_concat_dir_and_key (CONF_PROFILES_PREFIX,
+ profile_id);
+
+ /* Store a copy of default profile values at under that directory */
+ key = mateconf_concat_dir_and_key (profile_dir,
+ KEY_NAME);
+
+ mateconf_client_set_string (conf,
+ key,
+ name,
+ &err);
+ if (err != NULL) g_print ("ERROR: msg: %s\n", err->message);
+ BAIL_OUT_CHECK ();
+ g_free (key);
+
+ key = mateconf_concat_dir_and_key (profile_dir,
+ KEY_DESCRIPTION);
+
+ mateconf_client_set_string (conf,
+ key,
+ _("<no description>"),
+ &err);
+ if (err != NULL) g_print ("ERROR: msg: %s\n", err->message);
+ BAIL_OUT_CHECK ();
+ g_free (key);
+
+ key = mateconf_concat_dir_and_key (profile_dir,
+ KEY_PIPELINE);
+
+ mateconf_client_set_string (conf,
+ key,
+ "identity",
+ &err);
+ if (err != NULL) g_print ("ERROR: msg: %s\n", err->message);
+ BAIL_OUT_CHECK ();
+ g_free (key);
+
+ key = mateconf_concat_dir_and_key (profile_dir,
+ KEY_EXTENSION);
+
+ mateconf_client_set_string (conf,
+ key,
+ "wav",
+ &err);
+ if (err != NULL) g_print ("ERROR: msg: %s\n", err->message);
+ BAIL_OUT_CHECK ();
+
+ /* Add new profile to the profile list; the method for doing this has
+ * a race condition where we and someone else set at the same time,
+ * but I am just going to punt on this issue.
+ */
+ profiles = gm_audio_profile_get_list ();
+ tmp = profiles;
+ while (tmp != NULL)
+ {
+ id_list = g_slist_prepend (id_list,
+ g_strdup (gm_audio_profile_get_id (tmp->data)));
+ tmp = tmp->next;
+ }
+
+ id_list = g_slist_prepend (id_list, g_strdup (profile_id));
+
+ GST_DEBUG ("setting mateconf list\n");
+ err = NULL;
+ mateconf_client_set_list (conf,
+ CONF_GLOBAL_PREFIX"/profile_list",
+ MATECONF_VALUE_STRING,
+ id_list,
+ &err);
+ BAIL_OUT_CHECK ();
+
+ cleanup:
+ /* run both when being dumped here through errors and normal exit; so
+ * do proper cleanup here for both cases. */
+ g_free (profile_dir);
+ g_free (key);
+ /* if we had an error then we're going to return NULL as the id */
+ if (err != NULL)
+ {
+ g_free (profile_id);
+ profile_id = NULL;
+ }
+
+ g_list_free (profiles);
+
+ if (id_list)
+ {
+ g_slist_foreach (id_list, (GFunc) g_free, NULL);
+ g_slist_free (id_list);
+ }
+
+ if (err)
+ {
+ GST_DEBUG ("WARNING: error: %s !\n", err->message);
+ *error = err;
+ }
+
+ GST_DEBUG ("a_p_c: done\n");
+
+ return profile_id;
+}
+
+/* delete the given list of profiles from the mateconf profile_list key */
+void
+gm_audio_profile_delete_list (MateConfClient *conf,
+ GList *deleted_profiles,
+ GError **error)
+{
+ GList *current_profiles;
+ GList *tmp;
+ GSList *id_list;
+ GError *err;
+
+ current_profiles = gm_audio_profile_get_list ();
+
+ /* remove deleted profiles from list */
+ tmp = deleted_profiles;
+ while (tmp != NULL)
+ {
+ GMAudioProfile *profile = tmp->data;
+
+ current_profiles = g_list_remove (current_profiles, profile);
+
+ tmp = tmp->next;
+ }
+
+ /* make list of profile ids */
+ id_list = NULL;
+ tmp = current_profiles;
+ while (tmp != NULL)
+ {
+ id_list = g_slist_prepend (id_list,
+ g_strdup (gm_audio_profile_get_id (tmp->data)));
+
+ tmp = tmp->next;
+ }
+
+ g_list_free (current_profiles);
+ err = NULL;
+ GST_DEBUG ("setting profile_list in MateConf\n");
+ mateconf_client_set_list (conf,
+ CONF_GLOBAL_PREFIX"/profile_list",
+ MATECONF_VALUE_STRING,
+ id_list,
+ &err);
+
+ g_slist_foreach (id_list, (GFunc) g_free, NULL);
+ g_slist_free (id_list);
+
+ if (err && error) *error = err;
+}
diff --git a/profiles/audio-profile.h b/profiles/audio-profile.h
new file mode 100644
index 0000000..c4917ff
--- /dev/null
+++ b/profiles/audio-profile.h
@@ -0,0 +1,84 @@
+/* audio-profile.h: public header for audio profiles */
+/*
+ * Copyright (C) 2003,2004 Thomas Vander Stichele
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA. */
+
+#ifndef AUDIO_PROFILE_H
+#define AUDIO_PROFILE_H
+
+#include <glib-object.h>
+
+G_BEGIN_DECLS
+
+#define GM_AUDIO_TYPE_PROFILE (gm_audio_profile_get_type ())
+#define GM_AUDIO_PROFILE(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), GM_AUDIO_TYPE_PROFILE, GMAudioProfile))
+#define GM_AUDIO_PROFILE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GM_AUDIO_TYPE_PROFILE, GMAudioProfileClass))
+#define GM_AUDIO_IS_PROFILE(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), GM_AUDIO_TYPE_PROFILE))
+#define GM_AUDIO_IS_PROFILE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GM_AUDIO_TYPE_PROFILE))
+#define GM_AUDIO_PROFILE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GM_AUDIO_TYPE_PROFILE, GMAudioProfileClass))
+
+/* mask for lockedness of settings */
+typedef struct
+{
+ unsigned int name : 1;
+ unsigned int description : 1;
+ unsigned int pipeline : 1;
+ unsigned int extension : 1;
+ unsigned int active : 1;
+} GMAudioSettingMask;
+
+typedef struct _GMAudioProfile GMAudioProfile;
+typedef struct _GMAudioProfileClass GMAudioProfileClass;
+typedef struct _GMAudioProfilePrivate GMAudioProfilePrivate;
+
+struct _GMAudioProfile
+{
+ GObject parent_instance;
+ GMAudioProfilePrivate *priv;
+};
+
+struct _GMAudioProfileClass
+{
+ GObjectClass parent_class;
+
+ void (* changed) (GMAudioProfile *profile,
+ const GMAudioSettingMask *mask);
+ void (* forgotten) (GMAudioProfile *profile);
+};
+
+
+GType gm_audio_profile_get_type (void) G_GNUC_CONST;
+
+const char* gm_audio_profile_get_id (GMAudioProfile *profile);
+const char* gm_audio_profile_get_name (GMAudioProfile *profile);
+const char* gm_audio_profile_get_description(GMAudioProfile *profile);
+const char* gm_audio_profile_get_pipeline (GMAudioProfile *profile);
+const char* gm_audio_profile_get_extension (GMAudioProfile *profile);
+gboolean gm_audio_profile_get_active (GMAudioProfile *profile);
+
+GList* gm_audio_profile_get_active_list(void);
+GMAudioProfile* gm_audio_profile_lookup (const char *id);
+
+void gm_audio_profile_set_name (GMAudioProfile *profile, const char *name);
+void gm_audio_profile_set_description (GMAudioProfile *profile, const char *name);
+void gm_audio_profile_set_pipeline (GMAudioProfile *profile, const char *name);
+void gm_audio_profile_set_extension (GMAudioProfile *profile, const char *name);
+void gm_audio_profile_set_active (GMAudioProfile *profile, gboolean active);
+
+G_END_DECLS
+
+#endif /* AUDIO_PROFILE_H */
diff --git a/profiles/audio-profiles-edit.c b/profiles/audio-profiles-edit.c
new file mode 100644
index 0000000..4f1cb98
--- /dev/null
+++ b/profiles/audio-profiles-edit.c
@@ -0,0 +1,988 @@
+/* gm_audio-profiles-edit.c: widget for a profiles edit dialog */
+
+/*
+ * Copyright (C) 2003 Thomas Vander Stichele
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include <string.h>
+#include <glib/gi18n-lib.h>
+#include <gtk/gtk.h>
+#include <gst/gst.h>
+
+#include "audio-profile.h"
+#include "audio-profile-edit.h"
+#include "audio-profile-private.h"
+#include "gmp-util.h"
+#include "audio-profiles-edit.h"
+
+#define MANAGE_STOCK_EDIT "manage-edit"
+
+struct _GMAudioProfilesEditPrivate
+{
+ MateConfClient *conf;
+ GtkWidget *new_button;
+ GtkWidget *new_profile_dialog;
+ GtkWidget *edit_button;
+ GtkWidget *delete_button;
+ GtkWindow *transient_parent;
+ GtkWidget *manage_profiles_list; /* FIXME: rename this one ? */
+ GList *deleted_profiles_list; /* pass through to delete confirm dialog */
+};
+
+static void gm_audio_profiles_edit_init (GMAudioProfilesEdit *edit);
+static void gm_audio_profiles_edit_class_init (GMAudioProfilesEditClass *klass);
+static void gm_audio_profiles_edit_finalize (GObject *object);
+
+
+/* profile list column names */
+enum
+{
+ COLUMN_NAME,
+ COLUMN_PROFILE_OBJECT,
+ COLUMN_LAST
+};
+
+G_DEFINE_TYPE (GMAudioProfilesEdit, gm_audio_profiles_edit, GTK_TYPE_DIALOG);
+
+/* register custom edit stock icon */
+static void
+gm_audio_profile_manage_register_stock (void)
+{
+ static gboolean registered = FALSE;
+
+ if (!registered)
+ {
+ GtkIconFactory *factory;
+ GtkIconSet *icons;
+
+ static const GtkStockItem edit_item [] = {
+ { MANAGE_STOCK_EDIT, N_("_Edit"), 0, 0, GETTEXT_PACKAGE },
+ };
+
+ icons = gtk_icon_factory_lookup_default (GTK_STOCK_PREFERENCES);
+ factory = gtk_icon_factory_new ();
+ gtk_icon_factory_add (factory, MANAGE_STOCK_EDIT, icons);
+ gtk_icon_factory_add_default (factory);
+ gtk_stock_add (edit_item, 1);
+ registered = TRUE;
+ }
+}
+
+/* widget callbacks */
+
+static void
+count_selected_profiles_func (GtkTreeModel *model,
+ GtkTreePath *path,
+ GtkTreeIter *iter,
+ gpointer data)
+{
+ int *count = data;
+
+ *count += 1;
+}
+
+static void
+selection_changed_callback (GtkTreeSelection *selection,
+ GMAudioProfilesEditPrivate *priv)
+{
+ int count;
+
+ count = 0;
+ gtk_tree_selection_selected_foreach (selection,
+ count_selected_profiles_func,
+ &count);
+
+ gtk_widget_set_sensitive (priv->edit_button,
+ count == 1);
+ gtk_widget_set_sensitive (priv->delete_button,
+ count > 0);
+}
+
+static void
+profile_activated_callback (GtkTreeView *tree_view,
+ GtkTreePath *path,
+ GtkTreeViewColumn *column,
+ gpointer *ptr)
+{
+ GMAudioProfile *profile;
+ GtkTreeIter iter;
+ GtkTreeModel *model;
+ GtkWidget *edit_dialog;
+
+ model = gtk_tree_view_get_model (tree_view);
+
+ if (!gtk_tree_model_get_iter (model, &iter, path))
+ return;
+
+ profile = NULL;
+ gtk_tree_model_get (model,
+ &iter,
+ COLUMN_PROFILE_OBJECT,
+ &profile,
+ -1);
+ if (profile) {
+ /* FIXME: is this the right function name ? */
+ edit_dialog = gm_audio_profile_edit_new ((MateConfClient *) profile, gm_audio_profile_get_id (profile));
+ g_return_if_fail (edit_dialog != NULL);
+ gtk_widget_show_all (GTK_WIDGET (edit_dialog));
+ } else {
+ g_warning ("Could not retrieve profile");
+ }
+}
+
+static void
+fix_button_align (GtkWidget *button)
+{
+ GtkWidget *child;
+
+ child = gtk_bin_get_child (GTK_BIN (button));
+
+ if (GTK_IS_ALIGNMENT (child))
+ g_object_set (G_OBJECT (child), "xalign", 0.0, NULL);
+ else if (GTK_IS_LABEL (child))
+ g_object_set (G_OBJECT (child), "xalign", 0.0, NULL);
+}
+
+static void
+list_selected_profiles_func (GtkTreeModel *model,
+ GtkTreePath *path,
+ GtkTreeIter *iter,
+ gpointer data)
+{
+ GList **list = data;
+ GMAudioProfile *profile = NULL;
+
+ gtk_tree_model_get (model,
+ iter,
+ COLUMN_PROFILE_OBJECT,
+ &profile,
+ -1);
+
+ *list = g_list_prepend (*list, profile);
+}
+
+static void
+free_profiles_list (gpointer data)
+{
+ GList *profiles = data;
+
+ g_list_foreach (profiles, (GFunc) g_object_unref, NULL);
+ g_list_free (profiles);
+}
+
+/* refill profile treeview
+ * recreates the profile tree view from scratch */
+static void
+refill_profile_treeview (GtkWidget *tree_view)
+{
+ GList *profiles;
+ GList *tmp;
+ GtkTreeSelection *selection;
+ GtkListStore *model;
+ GList *selected_profiles;
+ GtkTreeIter iter;
+
+ GST_DEBUG ("refill_profile_treeview: start\n");
+ selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (tree_view));
+ model = GTK_LIST_STORE (gtk_tree_view_get_model (GTK_TREE_VIEW (tree_view)));
+
+ selected_profiles = NULL;
+ gtk_tree_selection_selected_foreach (selection,
+ list_selected_profiles_func,
+ &selected_profiles);
+
+ gtk_list_store_clear (model);
+
+ profiles = gm_audio_profile_get_list ();
+ tmp = profiles;
+ while (tmp != NULL)
+ {
+ GMAudioProfile *profile = tmp->data;
+
+ GST_DEBUG ("refill: appending profile with name %s\n",
+ gm_audio_profile_get_name (profile));
+ gtk_list_store_append (model, &iter);
+
+ /* We are assuming the list store will hold a reference to
+ * the profile object, otherwise we would be in danger of disappearing
+ * profiles.
+ */
+ gtk_list_store_set (model,
+ &iter,
+ COLUMN_NAME, gm_audio_profile_get_name (profile),
+ COLUMN_PROFILE_OBJECT, profile,
+ -1);
+
+ if (g_list_find (selected_profiles, profile) != NULL)
+ gtk_tree_selection_select_iter (selection, &iter);
+
+ tmp = tmp->next;
+ }
+
+ if (selected_profiles == NULL)
+ {
+ /* Select first row */
+ GtkTreePath *path;
+
+ path = gtk_tree_path_new ();
+ gtk_tree_path_append_index (path, 0);
+ gtk_tree_selection_select_path (gtk_tree_view_get_selection (GTK_TREE_VIEW (tree_view)), path);
+ gtk_tree_path_free (path);
+ }
+
+ free_profiles_list (selected_profiles);
+ GST_DEBUG ("refill_profile_treeview: stop\n");
+}
+
+
+/* create a profile list widget */
+static GtkWidget*
+create_profile_list (void)
+{
+ GtkTreeSelection *selection;
+ GtkCellRenderer *cell;
+ GtkWidget *tree_view;
+ GtkTreeViewColumn *column;
+ GtkListStore *model;
+
+ model = gtk_list_store_new (COLUMN_LAST,
+ G_TYPE_STRING,
+ G_TYPE_OBJECT);
+
+ tree_view = gtk_tree_view_new_with_model (GTK_TREE_MODEL (model));
+ //terminal_util_set_atk_name_description (tree_view, _("Profile list"), NULL);
+
+ g_object_unref (G_OBJECT (model));
+
+ selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (tree_view));
+
+ gtk_tree_selection_set_mode (GTK_TREE_SELECTION (selection),
+ GTK_SELECTION_MULTIPLE);
+
+ refill_profile_treeview (tree_view);
+
+ cell = gtk_cell_renderer_text_new ();
+
+ g_object_set (G_OBJECT (cell),
+ "xpad", 2,
+ NULL);
+
+ column = gtk_tree_view_column_new_with_attributes (NULL,
+ cell,
+ "text", COLUMN_NAME,
+ NULL);
+
+ gtk_tree_view_append_column (GTK_TREE_VIEW (tree_view),
+ GTK_TREE_VIEW_COLUMN (column));
+
+ gtk_tree_view_set_headers_visible (GTK_TREE_VIEW (tree_view), FALSE);
+
+ return tree_view;
+}
+
+/* profile callbacks */
+static void
+on_profile_changed (GMAudioProfile *profile,
+ const GMAudioSettingMask *mask,
+ GtkWidget *tree_view)
+{
+ GtkListStore *list_store;
+ GtkTreeIter iter;
+ GtkTreeModel *tree_model;
+ gboolean valid;
+
+ if (mask->name)
+ {
+ tree_model = gtk_tree_view_get_model (GTK_TREE_VIEW (tree_view));
+ list_store = GTK_LIST_STORE (tree_model);
+
+ /* Get the first iter in the list */
+ valid = gtk_tree_model_get_iter_first (tree_model, &iter);
+
+ while (valid)
+ {
+ /* Walk through the list, reading each row */
+ GMAudioProfile *model_profile;
+
+ /* Make sure you terminate calls to gtk_tree_model_get()
+ * with a '-1' value
+ */
+ gtk_tree_model_get (tree_model, &iter,
+ COLUMN_PROFILE_OBJECT, &model_profile,
+ -1);
+
+ if (profile == model_profile)
+ {
+ /* bingo ! */
+ gtk_list_store_set (list_store,
+ &iter,
+ COLUMN_NAME, gm_audio_profile_get_name (profile),
+ -1);
+ }
+ valid = gtk_tree_model_iter_next (tree_model, &iter);
+ }
+ }
+}
+
+/* ui callbacks */
+static void new_button_clicked(GtkWidget* button, GMAudioProfilesEdit* dialog)
+{
+ gm_audio_profiles_edit_new_profile(dialog, GTK_WINDOW(dialog));
+}
+
+static void edit_button_clicked(GtkWidget* button, GMAudioProfilesEdit* dialog)
+{
+ GtkTreeSelection* selection;
+ GList* profiles;
+ GMAudioProfile* profile;
+
+ selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (dialog->priv->manage_profiles_list));
+
+ profiles = NULL;
+ gtk_tree_selection_selected_foreach (selection,
+ list_selected_profiles_func,
+ &profiles);
+
+ if (profiles == NULL)
+ return; /* edit button was supposed to be insensitive... */
+
+ /* only one selection ? */
+ if (profiles->next == NULL)
+ {
+ GtkWidget *edit_dialog;
+ profile = (GMAudioProfile *) profiles->data;
+ /* connect to profile changed signal so we can update the name in the list
+ * if it gets changed */
+ g_signal_connect_object (G_OBJECT (profile), "changed",
+ G_CALLBACK (on_profile_changed),
+ dialog->priv->manage_profiles_list, 0);
+
+ /* FIXME: is this the right function name ? */
+ edit_dialog = gm_audio_profile_edit_new ((MateConfClient *)profile, gm_audio_profile_get_id (profile));
+ g_return_if_fail (edit_dialog != NULL);
+ gtk_window_set_modal (GTK_WINDOW (edit_dialog), TRUE);
+ gtk_widget_show_all (GTK_WIDGET (edit_dialog));
+ }
+ else
+ {
+ /* edit button was supposed to be insensitive due to multiple
+ * selection
+ */
+ }
+
+ g_list_foreach (profiles, (GFunc) g_object_unref, NULL);
+ g_list_free (profiles);
+}
+
+/* ui callback for confirmation from delete_button_clicked */
+static void
+delete_confirm_response (GtkWidget *confirm_dialog,
+ int response_id,
+ GMAudioProfilesEdit *dialog)
+{
+ GList *deleted_profiles;
+ GError *err;
+
+ deleted_profiles = dialog->priv->deleted_profiles_list;
+
+ err = NULL;
+ if (response_id == GTK_RESPONSE_ACCEPT)
+ {
+ gm_audio_profile_delete_list (dialog->priv->conf, deleted_profiles,
+ &err);
+ }
+
+ if (err != NULL)
+ {
+ g_print ("FIXME: GError on deletion: %s\n", err->message);
+ g_error_free (err);
+ }
+
+ dialog->priv->deleted_profiles_list = NULL;
+
+ /* reget from MateConf and refill tree view */
+ gm_audio_profile_sync_list (FALSE, NULL);
+ refill_profile_treeview (dialog->priv->manage_profiles_list);
+
+ gtk_widget_destroy (confirm_dialog);
+}
+
+static void
+delete_button_clicked (GtkWidget *button,
+ GMAudioProfilesEdit *dialog)
+{
+ GtkTreeSelection *selection;
+ GList *deleted_profiles;
+ GtkWidget *confirm_dialog;
+ GString *str;
+ GList *tmp;
+ int count;
+
+ selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (dialog->priv->manage_profiles_list));
+
+ deleted_profiles = NULL;
+ gtk_tree_selection_selected_foreach (selection,
+ list_selected_profiles_func,
+ &deleted_profiles);
+
+ count = g_list_length (deleted_profiles);
+ if (count > 1)
+ {
+ str = g_string_new (NULL);
+ /* the first argument will never be used since we only run for count > 1 */
+ g_string_printf (str, ngettext ("Delete this profile?\n",
+ "Delete these %d profiles?\n", count), count);
+
+ tmp = deleted_profiles;
+ while (tmp != NULL)
+ {
+ g_string_append (str, " ");
+ g_string_append (str,
+ gm_audio_profile_get_name (tmp->data));
+ if (tmp->next)
+ g_string_append (str, "\n");
+
+ tmp = tmp->next;
+ }
+ }
+ else
+ {
+ str = g_string_new (NULL);
+ g_string_printf (str,
+ _("Delete profile \"%s\"?"),
+ gm_audio_profile_get_name (deleted_profiles->data));
+ }
+
+ confirm_dialog = gtk_message_dialog_new (GTK_WINDOW (dialog),
+ GTK_DIALOG_MODAL | GTK_DIALOG_DESTROY_WITH_PARENT,
+ GTK_MESSAGE_QUESTION,
+ GTK_BUTTONS_NONE,
+ "%s",
+ str->str);
+ g_string_free (str, TRUE);
+
+ gtk_dialog_add_buttons (GTK_DIALOG (confirm_dialog),
+ GTK_STOCK_CANCEL,
+ GTK_RESPONSE_REJECT,
+ GTK_STOCK_DELETE,
+ GTK_RESPONSE_ACCEPT,
+ NULL);
+
+ gtk_dialog_set_default_response (GTK_DIALOG (confirm_dialog),
+ GTK_RESPONSE_ACCEPT);
+
+ gtk_window_set_title (GTK_WINDOW (confirm_dialog), _("Delete Profile"));
+ gtk_window_set_resizable (GTK_WINDOW (confirm_dialog), FALSE);
+
+ /* FIXME: what's this ? */
+ dialog->priv->deleted_profiles_list = deleted_profiles;
+
+ g_signal_connect (G_OBJECT (confirm_dialog), "response",
+ G_CALLBACK (delete_confirm_response),
+ dialog);
+ g_return_if_fail (confirm_dialog != NULL);
+ gtk_widget_show_all (confirm_dialog);
+ gtk_dialog_run (GTK_DIALOG (confirm_dialog));
+}
+
+/* ui callbacks */
+static void
+on_gm_audio_profiles_edit_response (GtkWidget *dialog,
+ int id,
+ void *data)
+{
+ if (id == GTK_RESPONSE_HELP)
+ {
+ GError *err = NULL;
+
+ gtk_show_uri (gtk_widget_get_screen (GTK_WIDGET (dialog)),
+ "ghelp:mate-audio-profiles?mate-audio-profiles-profile-edit",
+ gtk_get_current_event_time (),
+ &err);
+
+ if (err)
+ {
+ gmp_util_show_error_dialog (GTK_WINDOW (dialog), NULL,
+ _("There was an error displaying help: %s"), err->message);
+ g_error_free (err);
+ }
+ return;
+ }
+
+ gtk_widget_destroy (dialog);
+}
+
+static void
+on_gm_audio_profiles_edit_destroy (GtkWidget *dialog, gpointer *user_data)
+{
+ GST_DEBUG ("on_destroy: destroying dialog widget\n");
+ /* FIXME: set stuff to NULL here */
+}
+
+#if 0
+/* MateConf notification callback for profile_list */
+static void
+gm_audio_profiles_list_notify (MateConfClient *client,
+ guint cnxn_id,
+ MateConfEntry *entry,
+ gpointer user_data)
+{
+ GMAudioProfilesEdit *dialog;
+
+ dialog = (GMAudioProfilesEdit *) user_data;
+ GST_DEBUG ("profile_list changed, notified from mateconf, redrawing\n");
+ /* refill the profile tree view */
+
+ refill_profile_treeview (dialog->priv->manage_profiles_list);
+}
+#endif
+
+/* create a dialog widget from scratch */
+static void
+gm_audio_profiles_edit_init (GMAudioProfilesEdit *dialog)
+{
+ GtkDialog *gdialog = GTK_DIALOG (dialog);
+ GtkWidget *vbox;
+ GtkWidget *label;
+ GtkWidget *sw;
+ GtkWidget *hbox;
+ GtkWidget *bbox;
+ GtkWidget *button;
+ GtkTreeSelection *selection;
+
+ /*
+ dialog =
+ gtk_dialog_new_with_buttons (_("Edit Profiles"),
+ NULL,
+ GTK_DIALOG_DESTROY_WITH_PARENT,
+ GTK_STOCK_HELP,
+ GTK_RESPONSE_HELP,
+ GTK_STOCK_CLOSE,
+ GTK_RESPONSE_ACCEPT,
+ NULL);
+ */
+ // FIXME: GTK_DIALOG_DESTROY_WITH_PARENT,
+ dialog->priv = G_TYPE_INSTANCE_GET_PRIVATE (dialog, GM_AUDIO_TYPE_PROFILES_EDIT, GMAudioProfilesEditPrivate);
+
+ gtk_window_set_title (GTK_WINDOW (dialog), _("Edit MATE Audio Profiles"));
+ gtk_window_set_default_size (GTK_WINDOW (dialog), 320, 240);
+ gtk_dialog_add_buttons (GTK_DIALOG (dialog),
+ GTK_STOCK_HELP,
+ GTK_RESPONSE_HELP,
+ GTK_STOCK_CLOSE,
+ GTK_RESPONSE_ACCEPT,
+ NULL);
+
+#if !GTK_CHECK_VERSION (2, 21, 8)
+ gtk_dialog_set_has_separator (gdialog, FALSE);
+#endif
+ gtk_container_set_border_width (GTK_CONTAINER (dialog), 5);
+ gtk_box_set_spacing (GTK_BOX (gtk_dialog_get_content_area (gdialog)), 2); /* 2 * 5 + 2 = 12 */
+ gtk_container_set_border_width (GTK_CONTAINER (gtk_dialog_get_action_area (gdialog)), 5);
+ gtk_box_set_spacing (GTK_BOX (gtk_dialog_get_action_area (gdialog)), 6);
+
+ g_signal_connect (GTK_DIALOG (dialog),
+ "response",
+ G_CALLBACK (on_gm_audio_profiles_edit_response),
+ NULL);
+
+ g_signal_connect (G_OBJECT (dialog),
+ "destroy",
+ G_CALLBACK (on_gm_audio_profiles_edit_destroy),
+ NULL);
+
+ vbox = gtk_vbox_new (FALSE, 6);
+ gtk_container_set_border_width (GTK_CONTAINER (vbox), 5);
+ gtk_box_pack_start (GTK_BOX (gtk_dialog_get_content_area (gdialog)),
+ vbox, TRUE, TRUE, 0);
+
+ /* FIXME
+ hbox = gtk_hbox_new (FALSE, PADDING);
+ gtk_box_pack_end (GTK_BOX (vbox),
+ hbox, FALSE, FALSE, 0);
+
+ app->manage_profiles_default_menu = profile_optionmenu_new ();
+ g_signal_connect (G_OBJECT (app->manage_profiles_default_menu),
+ "changed", G_CALLBACK (default_menu_changed),
+ app);
+
+ gtk_box_pack_start (GTK_BOX (hbox),
+ label, TRUE, TRUE, 0);
+
+ gtk_box_pack_end (GTK_BOX (hbox),
+ app->manage_profiles_default_menu, FALSE, FALSE, 0);
+ */
+
+ hbox = gtk_hbox_new (FALSE, 6);
+
+ label = gtk_label_new_with_mnemonic (_("_Profiles:"));
+ gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5);
+ gtk_box_pack_start (GTK_BOX (vbox), label, FALSE, FALSE, 0);
+
+ gtk_box_pack_start (GTK_BOX (vbox),
+ hbox, TRUE, TRUE, 0);
+
+ dialog->priv->manage_profiles_list = create_profile_list ();
+
+ g_signal_connect (G_OBJECT (dialog->priv->manage_profiles_list),
+ "row_activated",
+ G_CALLBACK (profile_activated_callback),
+ NULL);
+
+ sw = gtk_scrolled_window_new (NULL, NULL);
+ /* FIXME
+ terminal_util_set_labelled_by (GTK_WIDGET (dialog->priv->manage_profiles_list),
+ GTK_LABEL (label));
+ */
+
+ gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (sw),
+ GTK_POLICY_AUTOMATIC,
+ GTK_POLICY_AUTOMATIC);
+ gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (sw),
+ GTK_SHADOW_IN);
+
+ gtk_box_pack_start (GTK_BOX (hbox), sw, TRUE, TRUE, 0);
+
+ gtk_container_add (GTK_CONTAINER (sw), dialog->priv->manage_profiles_list);
+
+ gtk_dialog_set_default_response (GTK_DIALOG (dialog), GTK_RESPONSE_ACCEPT);
+
+ gtk_label_set_mnemonic_widget (GTK_LABEL (label),
+ dialog->priv->manage_profiles_list);
+
+ bbox = gtk_vbutton_box_new ();
+ gtk_button_box_set_layout (GTK_BUTTON_BOX (bbox), GTK_BUTTONBOX_START);
+ gtk_box_set_spacing (GTK_BOX (bbox), 6);
+ gtk_box_pack_end (GTK_BOX (hbox), bbox, FALSE, FALSE, 0);
+
+ button = gtk_button_new_from_stock (GTK_STOCK_NEW);
+ fix_button_align (button);
+ gtk_box_pack_start (GTK_BOX (bbox),
+ button, FALSE, FALSE, 0);
+ g_signal_connect (G_OBJECT (button), "clicked",
+ G_CALLBACK (new_button_clicked), dialog);
+ dialog->priv->new_button = button;
+/*
+ terminal_util_set_atk_name_description (dialog->priv->new_button, NULL,
+ _("Click to open new profile dialog"));
+*/
+
+ gm_audio_profile_manage_register_stock ();
+
+ button = gtk_button_new_from_stock (MANAGE_STOCK_EDIT);
+ fix_button_align (button);
+ gtk_box_pack_start (GTK_BOX (bbox),
+ button, FALSE, FALSE, 0);
+ g_signal_connect (G_OBJECT (button), "clicked",
+ G_CALLBACK (edit_button_clicked), dialog);
+ gtk_widget_set_sensitive (button, FALSE);
+ dialog->priv->edit_button = button;
+/*
+ terminal_util_set_atk_name_description (app->manage_profiles_edit_button, NULL,
+ _("Click to open edit profile dialog"));
+*/
+
+ button = gtk_button_new_from_stock (GTK_STOCK_DELETE);
+ fix_button_align (button);
+ gtk_box_pack_start (GTK_BOX (bbox),
+ button, FALSE, FALSE, 0);
+ g_signal_connect (G_OBJECT (button), "clicked",
+ G_CALLBACK (delete_button_clicked), dialog);
+ gtk_widget_set_sensitive (button, FALSE);
+ dialog->priv->delete_button = button;
+/*
+ terminal_util_set_atk_name_description (app->manage_profiles_delete_button, NULL,
+ _("Click to delete selected profile"));
+ */
+
+ gtk_widget_grab_focus (dialog->priv->manage_profiles_list);
+
+ /* Monitor selection for sensitivity */
+ selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (dialog->priv->manage_profiles_list));
+
+ selection_changed_callback (selection, dialog->priv);
+ g_signal_connect (G_OBJECT (selection), "changed",
+ G_CALLBACK (selection_changed_callback),
+ dialog->priv);
+}
+
+static void
+gm_audio_profiles_edit_class_init (GMAudioProfilesEditClass *klass)
+{
+ GObjectClass *object_class = G_OBJECT_CLASS (klass);
+
+ object_class->finalize = gm_audio_profiles_edit_finalize;
+
+ g_type_class_add_private (object_class, sizeof (GMAudioProfilesEditPrivate));
+}
+
+static void
+gm_audio_profiles_edit_finalize (GObject *object)
+{
+ GMAudioProfilesEdit *dialog;
+
+ dialog = GM_AUDIO_PROFILES_EDIT (object);
+ G_OBJECT_CLASS (gm_audio_profiles_edit_parent_class)->finalize (object);
+}
+
+GtkWidget*
+gm_audio_profiles_edit_new (MateConfClient *conf, GtkWindow *transient_parent)
+{
+ GMAudioProfilesEdit *dialog;
+ /*GError *err;*/
+
+ dialog = g_object_new (GM_AUDIO_TYPE_PROFILES_EDIT, NULL);
+
+ g_object_ref (G_OBJECT (conf));
+ dialog->priv->conf = conf;
+ /* set transient parent to itself if NULL */
+ if (transient_parent)
+ dialog->priv->transient_parent = transient_parent;
+ else
+ dialog->priv->transient_parent = GTK_WINDOW (dialog);
+
+ gtk_window_set_modal (GTK_WINDOW (dialog), TRUE);
+
+ /* subscribe to changes to profile list */
+/*
+ err = NULL;
+ GST_DEBUG ("gap_p_e_new: subscribing to profile_list changes\n");
+ mateconf_client_notify_add (dialog->priv->conf,
+ CONF_GLOBAL_PREFIX"/profile_list",
+ gm_audio_profiles_list_notify,
+ dialog,
+ NULL, &err);
+
+ if (err)
+ {
+ g_printerr (_("There was an error subscribing to notification of terminal profile list changes. (%s)\n"),
+ err->message);
+ g_error_free (err);
+ }
+*/
+ return GTK_WIDGET (dialog);
+}
+
+/*
+ * creating a new profile from the Edit Profiles dialog
+ */
+
+static void
+new_profile_response_callback (GtkWidget *new_profile_dialog,
+ int response_id,
+ GMAudioProfilesEdit *dialog)
+{
+ if (response_id == GTK_RESPONSE_ACCEPT)
+ {
+ GtkWidget *name_entry;
+ char *name;
+ char *id;
+ /*GtkWidget *base_option_menu;*/
+ GMAudioProfile *new_profile;
+ GList *profiles;
+ GList *tmp;
+ GtkWindow *transient_parent;
+ GError *error;
+
+ name_entry = g_object_get_data (G_OBJECT (new_profile_dialog), "name_entry");
+ name = gtk_editable_get_chars (GTK_EDITABLE (name_entry), 0, -1);
+ g_strstrip (name); /* name will be non empty after stripping */
+
+ profiles = gm_audio_profile_get_list ();
+ for (tmp = profiles; tmp != NULL; tmp = tmp->next)
+ {
+ GMAudioProfile *profile = tmp->data;
+
+ if (strcmp (name, gm_audio_profile_get_name (profile)) == 0)
+ break;
+ }
+ if (tmp)
+ {
+ gmp_util_run_error_dialog (GTK_WINDOW (new_profile_dialog),
+ _("You already have a profile called \"%s\""), name);
+ goto cleanup;
+ }
+ g_list_free (profiles);
+
+/*
+ base_option_menu = g_object_get_data (G_OBJECT (new_profile_dialog), "base_option_menu");
+ base_profile = profile_optionmenu_get_selected (base_option_menu);
+
+ if (base_profile == NULL)
+ {
+ terminal_util_show_error_dialog (GTK_WINDOW (new_profile_dialog), NULL,
+ _("The profile you selected as a base for your new profile no longer exists"));
+ goto cleanup;
+ }
+*/
+ transient_parent = gtk_window_get_transient_for (GTK_WINDOW (new_profile_dialog));
+
+
+ error = NULL;
+ id = gm_audio_profile_create (name, dialog->priv->conf, &error);
+ if (error)
+ {
+ g_print ("ERROR: %s\n", error->message);
+ gmp_util_run_error_dialog (GTK_WINDOW (transient_parent),
+ _("MateConf Error (FIXME): %s\n"),
+ error->message);
+ g_error_free (error);
+ goto cleanup;
+ }
+ gtk_widget_destroy (new_profile_dialog);
+
+ /* FIXME: hm, not very proud of having to unstatic this function */
+ GST_DEBUG ("new profile callback: syncing list\n");
+ //FIXME: in mate-terminal, it's TRUE, &n, which then gets overruled
+ // by some other sync call with the new list
+ //audio_profile_sync_list (TRUE, &n);
+ gm_audio_profile_sync_list (FALSE, NULL);
+ refill_profile_treeview (dialog->priv->manage_profiles_list);
+
+ new_profile = gm_audio_profile_lookup (id);
+ g_assert (new_profile != NULL);
+
+ //audio_profile_edit (new_profile, transient_parent);
+
+ cleanup:
+ g_free (name);
+ }
+ else
+ {
+ gtk_widget_destroy (new_profile_dialog);
+ }
+ GST_DEBUG ("done creating new profile\n");
+}
+
+static void
+new_profile_name_entry_changed_callback (GtkEditable *editable, gpointer data)
+{
+ char *name, *saved_name;
+ GtkWidget *create_button;
+
+ create_button = (GtkWidget*) data;
+
+ saved_name = name = gtk_editable_get_chars (editable, 0, -1);
+
+ /* make the create button sensitive only if something other than space has been set */
+ while (*name != '\0' && g_ascii_isspace (*name))
+ name++;
+
+ gtk_widget_set_sensitive (create_button, *name != '\0' ? TRUE : FALSE);
+
+ g_free (saved_name);
+}
+
+void gm_audio_profiles_edit_new_profile(GMAudioProfilesEdit* dialog, GtkWindow* transient_parent)
+{
+ GtkWindow* old_transient_parent;
+ GtkWidget* create_button;
+ gint response;
+ GError* error = NULL;
+
+ if (dialog->priv->new_profile_dialog == NULL)
+ {
+ GtkBuilder* builder;
+ GtkWidget* w;
+ GtkWidget* wl;
+ GtkWidget* create_button;
+ GtkSizeGroup* size_group;
+ GtkSizeGroup* size_group_labels;
+
+ builder = gmp_util_load_builder_file("mate-audio-profile-new.ui", transient_parent, &error);
+
+ if (error != NULL)
+ {
+ g_warning("%s", error->message);
+ g_error_free(error);
+ return;
+ }
+
+ dialog->priv->new_profile_dialog = GTK_WIDGET(gtk_builder_get_object(builder, "new-profile-dialog"));
+ g_signal_connect(G_OBJECT (dialog->priv->new_profile_dialog), "response", G_CALLBACK(new_profile_response_callback), dialog);
+
+ g_object_add_weak_pointer(G_OBJECT(dialog->priv->new_profile_dialog), (void**) &dialog->priv->new_profile_dialog);
+
+ create_button = GTK_WIDGET(gtk_builder_get_object(builder, "new-profile-create-button"));
+ g_object_set_data(G_OBJECT(dialog->priv->new_profile_dialog), "create_button", create_button);
+ gtk_widget_set_sensitive(create_button, FALSE);
+
+ size_group = gtk_size_group_new(GTK_SIZE_GROUP_HORIZONTAL);
+ size_group_labels = gtk_size_group_new(GTK_SIZE_GROUP_HORIZONTAL);
+
+ /* the name entry */
+ w = GTK_WIDGET(gtk_builder_get_object(builder, "new-profile-name-entry"));
+ g_object_set_data (G_OBJECT(dialog->priv->new_profile_dialog), "name_entry", w);
+ g_signal_connect(G_OBJECT(w), "changed", G_CALLBACK(new_profile_name_entry_changed_callback), create_button);
+ gtk_entry_set_activates_default(GTK_ENTRY (w), TRUE);
+ gtk_widget_grab_focus(w);
+ // FIXME terminal_util_set_atk_name_description (w, _("Enter profile name"), NULL);
+ gtk_size_group_add_widget(size_group, w);
+
+ wl = GTK_WIDGET(gtk_builder_get_object (builder, "new-profile-name-label"));
+ gtk_label_set_mnemonic_widget(GTK_LABEL(wl), w);
+ // FIXME terminal_util_set_labelled_by (w, GTK_LABEL (wl));
+ gtk_size_group_add_widget(size_group_labels, wl);
+
+ #ifdef BASE
+ /* the base profile option menu */
+ w = GTK_WIDGET (gtk_builder_get_object(builder, "new-profile-base-option-menu"));
+ g_object_set_data(G_OBJECT(dialog->priv->new_profile_dialog), "base_option_menu", w);
+ // FIXME terminal_util_set_atk_name_description (w, _("Choose base profile"), NULL);
+ //FIXME profile_optionmenu_refill (w);
+ gtk_size_group_add_widget(size_group, w);
+
+ wl = GTK_WIDGET(gtk_builder_get_object (builder, "new-profile-base-label"));
+ gtk_label_set_mnemonic_widget(GTK_LABEL(wl), w);
+ // FIXME terminal_util_set_labelled_by (w, GTK_LABEL (wl));
+ gtk_size_group_add_widget(size_group_labels, wl);
+ #endif
+
+
+ /* gtk_dialog_set_default_response (GTK_DIALOG (dialog->priv->new_profile_dialog), GTK_RESPONSE_CREATE); */
+
+ g_object_unref(G_OBJECT(size_group));
+ g_object_unref(G_OBJECT(size_group_labels));
+
+ g_object_unref(G_OBJECT(builder));
+ }
+
+ old_transient_parent = gtk_window_get_transient_for(GTK_WINDOW(dialog->priv->new_profile_dialog));
+
+ if (old_transient_parent != transient_parent)
+ {
+ gtk_window_set_transient_for(GTK_WINDOW(dialog->priv->new_profile_dialog), transient_parent);
+ gtk_widget_hide(dialog->priv->new_profile_dialog); /* re-show the window on its new parent */
+ }
+
+ create_button = g_object_get_data(G_OBJECT(dialog->priv->new_profile_dialog), "create_button");
+ gtk_widget_set_sensitive(create_button, FALSE);
+
+ gtk_window_set_modal(GTK_WINDOW(dialog->priv->new_profile_dialog), TRUE);
+ gtk_widget_show_all(dialog->priv->new_profile_dialog);
+ gtk_window_present(GTK_WINDOW(dialog->priv->new_profile_dialog));
+
+ //keep running the dialog until the response is GTK_RESPONSE_NONE
+ do {
+ response = gtk_dialog_run(GTK_DIALOG(dialog->priv->new_profile_dialog));
+ } while(response != GTK_RESPONSE_NONE);
+}
diff --git a/profiles/audio-profiles-edit.h b/profiles/audio-profiles-edit.h
new file mode 100644
index 0000000..9ebb64f
--- /dev/null
+++ b/profiles/audio-profiles-edit.h
@@ -0,0 +1,67 @@
+/* audio-profiles-edit.h: widget for a profiles edit dialog */
+
+/*
+ * Copyright (C) 2003 Thomas Vander Stichele
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+#ifndef GM_AUDIO_PROFILES_EDIT_H
+#define GM_AUDIO_PROFILES_EDIT_H
+
+#include <gtk/gtk.h>
+#include <mateconf/mateconf-client.h>
+
+G_BEGIN_DECLS
+
+#define GM_AUDIO_TYPE_PROFILES_EDIT (gm_audio_profiles_edit_get_type ())
+#define GM_AUDIO_PROFILES_EDIT(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), GM_AUDIO_TYPE_PROFILES_EDIT, GMAudioProfilesEdit))
+#define GM_AUDIO_PROFILES_EDIT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GM_AUDIO_TYPE_PROFILES_EDIT, GMAudioProfilesEditClass))
+#define GM_AUDIO_IS_PROFILES_EDIT(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), GM_AUDIO_TYPE_PROFILES_EDIT))
+#define GM_AUDIO_IS_PROFILES_EDIT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GM_AUDIO_TYPE_PROFILES_EDIT))
+#define GM_AUDIO_PROFILES_EDIT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GM_AUDIO_TYPE_PROFILES_EDIT, GMAudioProfilesEditClass))
+
+typedef struct _GMAudioProfilesEditClass GMAudioProfilesEditClass;
+typedef struct _GMAudioProfilesEditPrivate GMAudioProfilesEditPrivate;
+/* FIXME: this might have to be moved higher up in the hierarchy so it
+ can be referenced from other places */
+typedef struct _GMAudioProfilesEdit GMAudioProfilesEdit;
+
+struct _GMAudioProfilesEdit
+{
+ GtkDialog parent_instance;
+
+ GMAudioProfilesEditPrivate *priv;
+};
+
+struct _GMAudioProfilesEditClass
+{
+ GtkDialogClass parent_class;
+
+};
+
+GType gm_audio_profiles_edit_get_type (void) G_GNUC_CONST;
+
+GtkWidget* gm_audio_profiles_edit_new (MateConfClient *conf,
+ GtkWindow *transient_parent);
+
+void gm_audio_profiles_edit_new_profile (GMAudioProfilesEdit *dialog,
+ GtkWindow *transient_parent);
+
+
+G_END_DECLS
+
+#endif /* GM_AUDIO_PROFILES_EDIT_H */
diff --git a/profiles/glade/Makefile.am b/profiles/glade/Makefile.am
new file mode 100644
index 0000000..344d160
--- /dev/null
+++ b/profiles/glade/Makefile.am
@@ -0,0 +1,26 @@
+# this is provided for editing mate-media UI files, not for any other
+# purposes
+
+glademoduledir = @GLADEUI_MODULE_DIR@
+glademodule_LTLIBRARIES = libmate-media-profiles.la
+
+defines = \
+ -DG_LOG_DOMAIN=\"mate-media-profiles\" \
+ -DMATELOCALEDIR=\""$(prefix)/${DATADIRNAME}/locale"\" \
+ $(DISABLE_DEPRECATED)
+
+libmate_media_profiles_la_SOURCES = mate-media-profiles-catalog.c
+libmate_media_profiles_la_CFLAGS = $(GMP_CFLAGS) $(GLADEUI_CFLAGS) $(defines) -I$(top_srcdir)
+libmate_media_profiles_la_LIBADD = $(GMP_LIBS) $(GLADEUI_LIBS) $(top_builddir)/profiles/libmate-media-profiles.la
+libmate_media_profiles_la_LDFLAGS = -export-dynamic -module -avoid-version -no-undefined
+
+gladecatalogdir = @GLADEUI_CATALOG_DIR@
+gladecatalog_DATA = mate-media-profiles.xml
+
+check-catalog:
+ xmllint --dtdvalid glade-catalog.dtd --noout $(gladecatalog_DATA)
+
+EXTRA_DIST = \
+ $(gladecatalog_DATA)
+
+-include $(top_srcdir)/git.mk
diff --git a/profiles/glade/Makefile.in b/profiles/glade/Makefile.in
new file mode 100644
index 0000000..3120577
--- /dev/null
+++ b/profiles/glade/Makefile.in
@@ -0,0 +1,671 @@
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
+# Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+
+# this is provided for editing mate-media UI files, not for any other
+# purposes
+
+
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = profiles/glade
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/as-ac-expand.m4 \
+ $(top_srcdir)/m4/as-compiler-flag.m4 \
+ $(top_srcdir)/m4/as-version.m4 $(top_srcdir)/m4/intltool.m4 \
+ $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \
+ $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \
+ $(top_srcdir)/m4/lt~obsolete.m4 \
+ $(top_srcdir)/m4/mate-doc-utils.m4 $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(SHELL) $(top_srcdir)/build-aux/mkinstalldirs
+CONFIG_HEADER = $(top_builddir)/config.h
+CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+ *) f=$$p;; \
+ esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+ srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+ for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+ for p in $$list; do echo "$$p $$p"; done | \
+ sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+ $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+ if (++n[$$2] == $(am__install_max)) \
+ { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+ END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+ sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+ sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
+am__installdirs = "$(DESTDIR)$(glademoduledir)" \
+ "$(DESTDIR)$(gladecatalogdir)"
+LTLIBRARIES = $(glademodule_LTLIBRARIES)
+am__DEPENDENCIES_1 =
+libmate_media_profiles_la_DEPENDENCIES = $(am__DEPENDENCIES_1) \
+ $(am__DEPENDENCIES_1) \
+ $(top_builddir)/profiles/libmate-media-profiles.la
+am_libmate_media_profiles_la_OBJECTS = \
+ libmate_media_profiles_la-mate-media-profiles-catalog.lo
+libmate_media_profiles_la_OBJECTS = \
+ $(am_libmate_media_profiles_la_OBJECTS)
+AM_V_lt = $(am__v_lt_$(V))
+am__v_lt_ = $(am__v_lt_$(AM_DEFAULT_VERBOSITY))
+am__v_lt_0 = --silent
+libmate_media_profiles_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \
+ $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \
+ $(libmate_media_profiles_la_CFLAGS) $(CFLAGS) \
+ $(libmate_media_profiles_la_LDFLAGS) $(LDFLAGS) -o $@
+DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
+depcomp = $(SHELL) $(top_srcdir)/build-aux/depcomp
+am__depfiles_maybe = depfiles
+am__mv = mv -f
+COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
+ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
+ $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \
+ $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
+ $(AM_CFLAGS) $(CFLAGS)
+AM_V_CC = $(am__v_CC_$(V))
+am__v_CC_ = $(am__v_CC_$(AM_DEFAULT_VERBOSITY))
+am__v_CC_0 = @echo " CC " $@;
+AM_V_at = $(am__v_at_$(V))
+am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY))
+am__v_at_0 = @
+CCLD = $(CC)
+LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
+ $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
+ $(AM_LDFLAGS) $(LDFLAGS) -o $@
+AM_V_CCLD = $(am__v_CCLD_$(V))
+am__v_CCLD_ = $(am__v_CCLD_$(AM_DEFAULT_VERBOSITY))
+am__v_CCLD_0 = @echo " CCLD " $@;
+AM_V_GEN = $(am__v_GEN_$(V))
+am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY))
+am__v_GEN_0 = @echo " GEN " $@;
+SOURCES = $(libmate_media_profiles_la_SOURCES)
+DIST_SOURCES = $(libmate_media_profiles_la_SOURCES)
+DATA = $(gladecatalog_DATA)
+ETAGS = etags
+CTAGS = ctags
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+ALL_LINGUAS = @ALL_LINGUAS@
+AMTAR = @AMTAR@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
+AR = @AR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CATALOGS = @CATALOGS@
+CATOBJEXT = @CATOBJEXT@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DATADIRNAME = @DATADIRNAME@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DISABLE_DEPRECATED = @DISABLE_DEPRECATED@
+DISTCHECK_CONFIGURE_FLAGS = @DISTCHECK_CONFIGURE_FLAGS@
+DLLTOOL = @DLLTOOL@
+DOC_USER_FORMATS = @DOC_USER_FORMATS@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+GETTEXT_PACKAGE = @GETTEXT_PACKAGE@
+GLADEUI_CATALOG_DIR = @GLADEUI_CATALOG_DIR@
+GLADEUI_CFLAGS = @GLADEUI_CFLAGS@
+GLADEUI_LIBS = @GLADEUI_LIBS@
+GLADEUI_MODULE_DIR = @GLADEUI_MODULE_DIR@
+GLIB_GENMARSHAL = @GLIB_GENMARSHAL@
+GMOFILES = @GMOFILES@
+GMP_CFLAGS = @GMP_CFLAGS@
+GMP_LIBS = @GMP_LIBS@
+GMSGFMT = @GMSGFMT@
+GREP = @GREP@
+GSR_CFLAGS = @GSR_CFLAGS@
+GSR_LIBS = @GSR_LIBS@
+GSTMIXER_CFLAGS = @GSTMIXER_CFLAGS@
+GSTMIXER_LIBS = @GSTMIXER_LIBS@
+GSTPROPS_CFLAGS = @GSTPROPS_CFLAGS@
+GSTPROPS_LIBS = @GSTPROPS_LIBS@
+GST_MAJORMINOR = @GST_MAJORMINOR@
+HAVE_PULSEAUDIO = @HAVE_PULSEAUDIO@
+HAVE_SOUND_THEME = @HAVE_SOUND_THEME@
+HELP_DIR = @HELP_DIR@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+INSTOBJEXT = @INSTOBJEXT@
+INTLLIBS = @INTLLIBS@
+INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
+INTLTOOL_MERGE = @INTLTOOL_MERGE@
+INTLTOOL_PERL = @INTLTOOL_PERL@
+INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
+LD = @LD@
+LDFLAGS = @LDFLAGS@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAKEINFO = @MAKEINFO@
+MANIFEST_TOOL = @MANIFEST_TOOL@
+MATECC_DESKTOP_DIR = @MATECC_DESKTOP_DIR@
+MATECONFTOOL = @MATECONFTOOL@
+MATECONF_SCHEMA_CONFIG_SOURCE = @MATECONF_SCHEMA_CONFIG_SOURCE@
+MATECONF_SCHEMA_FILE_DIR = @MATECONF_SCHEMA_FILE_DIR@
+MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
+MSGFMT = @MSGFMT@
+MSGFMT_OPTS = @MSGFMT_OPTS@
+MSGMERGE = @MSGMERGE@
+NM = @NM@
+NMEDIT = @NMEDIT@
+OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
+OMF_DIR = @OMF_DIR@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PACKAGE_VERSION_MAJOR = @PACKAGE_VERSION_MAJOR@
+PACKAGE_VERSION_MICRO = @PACKAGE_VERSION_MICRO@
+PACKAGE_VERSION_MINOR = @PACKAGE_VERSION_MINOR@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
+POFILES = @POFILES@
+POSUB = @POSUB@
+PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
+PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@
+PROGRAMS_GSTPROPS = @PROGRAMS_GSTPROPS@
+PULSEAUDIO_CFLAGS = @PULSEAUDIO_CFLAGS@
+PULSEAUDIO_LIBS = @PULSEAUDIO_LIBS@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+SOUNDTHEME_CFLAGS = @SOUNDTHEME_CFLAGS@
+SOUNDTHEME_LIBS = @SOUNDTHEME_LIBS@
+SOUND_THEME_CFLAGS = @SOUND_THEME_CFLAGS@
+SOUND_THEME_LIBS = @SOUND_THEME_LIBS@
+STRIP = @STRIP@
+USE_NLS = @USE_NLS@
+VERSION = @VERSION@
+VOLUME_CONTROL_CFLAGS = @VOLUME_CONTROL_CFLAGS@
+VOLUME_CONTROL_LIBS = @VOLUME_CONTROL_LIBS@
+WARN_CFLAGS = @WARN_CFLAGS@
+WARN_CXXFLAGS = @WARN_CXXFLAGS@
+XGETTEXT = @XGETTEXT@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+builddir = @builddir@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localedir = @localedir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+glademoduledir = @GLADEUI_MODULE_DIR@
+glademodule_LTLIBRARIES = libmate-media-profiles.la
+defines = \
+ -DG_LOG_DOMAIN=\"mate-media-profiles\" \
+ -DMATELOCALEDIR=\""$(prefix)/${DATADIRNAME}/locale"\" \
+ $(DISABLE_DEPRECATED)
+
+libmate_media_profiles_la_SOURCES = mate-media-profiles-catalog.c
+libmate_media_profiles_la_CFLAGS = $(GMP_CFLAGS) $(GLADEUI_CFLAGS) $(defines) -I$(top_srcdir)
+libmate_media_profiles_la_LIBADD = $(GMP_LIBS) $(GLADEUI_LIBS) $(top_builddir)/profiles/libmate-media-profiles.la
+libmate_media_profiles_la_LDFLAGS = -export-dynamic -module -avoid-version -no-undefined
+gladecatalogdir = @GLADEUI_CATALOG_DIR@
+gladecatalog_DATA = mate-media-profiles.xml
+EXTRA_DIST = \
+ $(gladecatalog_DATA)
+
+all: all-am
+
+.SUFFIXES:
+.SUFFIXES: .c .lo .o .obj
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+ && { if test -f $@; then exit 0; else break; fi; }; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign profiles/glade/Makefile'; \
+ $(am__cd) $(top_srcdir) && \
+ $(AUTOMAKE) --foreign profiles/glade/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
+install-glademoduleLTLIBRARIES: $(glademodule_LTLIBRARIES)
+ @$(NORMAL_INSTALL)
+ test -z "$(glademoduledir)" || $(MKDIR_P) "$(DESTDIR)$(glademoduledir)"
+ @list='$(glademodule_LTLIBRARIES)'; test -n "$(glademoduledir)" || list=; \
+ list2=; for p in $$list; do \
+ if test -f $$p; then \
+ list2="$$list2 $$p"; \
+ else :; fi; \
+ done; \
+ test -z "$$list2" || { \
+ echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(glademoduledir)'"; \
+ $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(glademoduledir)"; \
+ }
+
+uninstall-glademoduleLTLIBRARIES:
+ @$(NORMAL_UNINSTALL)
+ @list='$(glademodule_LTLIBRARIES)'; test -n "$(glademoduledir)" || list=; \
+ for p in $$list; do \
+ $(am__strip_dir) \
+ echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(glademoduledir)/$$f'"; \
+ $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(glademoduledir)/$$f"; \
+ done
+
+clean-glademoduleLTLIBRARIES:
+ -test -z "$(glademodule_LTLIBRARIES)" || rm -f $(glademodule_LTLIBRARIES)
+ @list='$(glademodule_LTLIBRARIES)'; for p in $$list; do \
+ dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \
+ test "$$dir" != "$$p" || dir=.; \
+ echo "rm -f \"$${dir}/so_locations\""; \
+ rm -f "$${dir}/so_locations"; \
+ done
+libmate-media-profiles.la: $(libmate_media_profiles_la_OBJECTS) $(libmate_media_profiles_la_DEPENDENCIES)
+ $(AM_V_CCLD)$(libmate_media_profiles_la_LINK) -rpath $(glademoduledir) $(libmate_media_profiles_la_OBJECTS) $(libmate_media_profiles_la_LIBADD) $(LIBS)
+
+mostlyclean-compile:
+ -rm -f *.$(OBJEXT)
+
+distclean-compile:
+ -rm -f *.tab.c
+
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmate_media_profiles_la-mate-media-profiles-catalog.Plo@am__quote@
+
+.c.o:
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(COMPILE) -c $<
+
+.c.obj:
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
+
+.c.lo:
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
+@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $<
+
+libmate_media_profiles_la-mate-media-profiles-catalog.lo: mate-media-profiles-catalog.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmate_media_profiles_la_CFLAGS) $(CFLAGS) -MT libmate_media_profiles_la-mate-media-profiles-catalog.lo -MD -MP -MF $(DEPDIR)/libmate_media_profiles_la-mate-media-profiles-catalog.Tpo -c -o libmate_media_profiles_la-mate-media-profiles-catalog.lo `test -f 'mate-media-profiles-catalog.c' || echo '$(srcdir)/'`mate-media-profiles-catalog.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmate_media_profiles_la-mate-media-profiles-catalog.Tpo $(DEPDIR)/libmate_media_profiles_la-mate-media-profiles-catalog.Plo
+@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='mate-media-profiles-catalog.c' object='libmate_media_profiles_la-mate-media-profiles-catalog.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmate_media_profiles_la_CFLAGS) $(CFLAGS) -c -o libmate_media_profiles_la-mate-media-profiles-catalog.lo `test -f 'mate-media-profiles-catalog.c' || echo '$(srcdir)/'`mate-media-profiles-catalog.c
+
+mostlyclean-libtool:
+ -rm -f *.lo
+
+clean-libtool:
+ -rm -rf .libs _libs
+install-gladecatalogDATA: $(gladecatalog_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(gladecatalogdir)" || $(MKDIR_P) "$(DESTDIR)$(gladecatalogdir)"
+ @list='$(gladecatalog_DATA)'; test -n "$(gladecatalogdir)" || list=; \
+ for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ echo "$$d$$p"; \
+ done | $(am__base_list) | \
+ while read files; do \
+ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(gladecatalogdir)'"; \
+ $(INSTALL_DATA) $$files "$(DESTDIR)$(gladecatalogdir)" || exit $$?; \
+ done
+
+uninstall-gladecatalogDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(gladecatalog_DATA)'; test -n "$(gladecatalogdir)" || list=; \
+ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
+ test -n "$$files" || exit 0; \
+ echo " ( cd '$(DESTDIR)$(gladecatalogdir)' && rm -f" $$files ")"; \
+ cd "$(DESTDIR)$(gladecatalogdir)" && rm -f $$files
+
+ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ mkid -fID $$unique
+tags: TAGS
+
+TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ set x; \
+ here=`pwd`; \
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ shift; \
+ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
+ test -n "$$unique" || unique=$$empty_fix; \
+ if test $$# -gt 0; then \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ "$$@" $$unique; \
+ else \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ $$unique; \
+ fi; \
+ fi
+ctags: CTAGS
+CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ test -z "$(CTAGS_ARGS)$$unique" \
+ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
+ $$unique
+
+GTAGS:
+ here=`$(am__cd) $(top_builddir) && pwd` \
+ && $(am__cd) $(top_srcdir) \
+ && gtags -i $(GTAGS_ARGS) "$$here"
+
+distclean-tags:
+ -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
+
+distdir: $(DISTFILES)
+ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ list='$(DISTFILES)'; \
+ dist_files=`for file in $$list; do echo $$file; done | \
+ sed -e "s|^$$srcdirstrip/||;t" \
+ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+ case $$dist_files in \
+ */*) $(MKDIR_P) `echo "$$dist_files" | \
+ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+ sort -u` ;; \
+ esac; \
+ for file in $$dist_files; do \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ if test -d $$d/$$file; then \
+ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test -d "$(distdir)/$$file"; then \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
+ else \
+ test -f "$(distdir)/$$file" \
+ || cp -p $$d/$$file "$(distdir)/$$file" \
+ || exit 1; \
+ fi; \
+ done
+check-am: all-am
+check: check-am
+all-am: Makefile $(LTLIBRARIES) $(DATA)
+installdirs:
+ for dir in "$(DESTDIR)$(glademoduledir)" "$(DESTDIR)$(gladecatalogdir)"; do \
+ test -z "$$dir" || $(MKDIR_P) "$$dir"; \
+ done
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+ -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic clean-glademoduleLTLIBRARIES clean-libtool \
+ mostlyclean-am
+
+distclean: distclean-am
+ -rm -rf ./$(DEPDIR)
+ -rm -f Makefile
+distclean-am: clean-am distclean-compile distclean-generic \
+ distclean-tags
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+html-am:
+
+info: info-am
+
+info-am:
+
+install-data-am: install-gladecatalogDATA \
+ install-glademoduleLTLIBRARIES
+
+install-dvi: install-dvi-am
+
+install-dvi-am:
+
+install-exec-am:
+
+install-html: install-html-am
+
+install-html-am:
+
+install-info: install-info-am
+
+install-info-am:
+
+install-man:
+
+install-pdf: install-pdf-am
+
+install-pdf-am:
+
+install-ps: install-ps-am
+
+install-ps-am:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -rf ./$(DEPDIR)
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-compile mostlyclean-generic \
+ mostlyclean-libtool
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-gladecatalogDATA \
+ uninstall-glademoduleLTLIBRARIES
+
+.MAKE: install-am install-strip
+
+.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
+ clean-glademoduleLTLIBRARIES clean-libtool ctags distclean \
+ distclean-compile distclean-generic distclean-libtool \
+ distclean-tags distdir dvi dvi-am html html-am info info-am \
+ install install-am install-data install-data-am install-dvi \
+ install-dvi-am install-exec install-exec-am \
+ install-gladecatalogDATA install-glademoduleLTLIBRARIES \
+ install-html install-html-am install-info install-info-am \
+ install-man install-pdf install-pdf-am install-ps \
+ install-ps-am install-strip installcheck installcheck-am \
+ installdirs maintainer-clean maintainer-clean-generic \
+ mostlyclean mostlyclean-compile mostlyclean-generic \
+ mostlyclean-libtool pdf pdf-am ps ps-am tags uninstall \
+ uninstall-am uninstall-gladecatalogDATA \
+ uninstall-glademoduleLTLIBRARIES
+
+
+check-catalog:
+ xmllint --dtdvalid glade-catalog.dtd --noout $(gladecatalog_DATA)
+
+-include $(top_srcdir)/git.mk
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/profiles/glade/mate-media-profiles-catalog.c b/profiles/glade/mate-media-profiles-catalog.c
new file mode 100644
index 0000000..ce3546d
--- /dev/null
+++ b/profiles/glade/mate-media-profiles-catalog.c
@@ -0,0 +1,8 @@
+#include <profiles/audio-profile-edit.h>
+
+void mate_media_profiles_catalog_init (void);
+
+void
+mate_media_profiles_catalog_init (void) {
+ /* empty init function,to make sure the catalg is initialized */
+}
diff --git a/profiles/glade/mate-media-profiles.xml b/profiles/glade/mate-media-profiles.xml
new file mode 100644
index 0000000..9ffdf1b
--- /dev/null
+++ b/profiles/glade/mate-media-profiles.xml
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<glade-catalog supports="gtkbuilder" name="mate-media-profiles" library="mate-media-profiles" book="mate-media" depends="gtk+">
+
+ <init-function>mate_media_profiles_catalog_init</init-function>
+
+ <glade-widget-classes>
+ <glade-widget-class name="GMAudioProfileEdit" get-type-function="gm_audio_profile_edit_get_type"
+ generic-name="audio-profile-edit" title="AudioProfileEdit"/>
+
+ <glade-widget-class name="GMAudioProfileChoose"
+ get-type-function="gm_audio_profile_choose_get_type"
+ generic-name="audio-profile-choose"
+ title="AudioProfileChoose">
+ <properties>
+ <property id="active-profile" ignore="True"/>
+ </properties>
+ <signals>
+ <signal id="profile-changed"/>
+ </signals>
+ </glade-widget-class>
+ </glade-widget-classes>
+
+ <glade-widget-group name="mate-media" title="Mate Media">
+ <glade-widget-class-ref name="GMAudioProfileEdit"/>
+ <glade-widget-class-ref name="GMAudioProfileChoose"/>
+ </glade-widget-group>
+
+</glade-catalog>
diff --git a/profiles/gmp-conf.h b/profiles/gmp-conf.h
new file mode 100644
index 0000000..077fb15
--- /dev/null
+++ b/profiles/gmp-conf.h
@@ -0,0 +1,26 @@
+/* gmp-conf.h: MATE Media Profiles defines */
+
+/*
+ * Copyright (C) 2003 Thomas Vander Stichele
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+/* #define DEBUG */
+#define CONF_PREFIX "/system/gstreamer/" GST_MAJORMINOR_QUOTED "/audio"
+#define CONF_GLOBAL_PREFIX CONF_PREFIX "/global"
+#define CONF_PROFILES_PREFIX CONF_PREFIX "/profiles"
+
diff --git a/profiles/gmp-util.c b/profiles/gmp-util.c
new file mode 100644
index 0000000..2095401
--- /dev/null
+++ b/profiles/gmp-util.c
@@ -0,0 +1,164 @@
+/* gmp-util.c: utility functions */
+
+/*
+ * Copyright (C) 2003 Thomas Vander Stichele
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include <glib/gi18n.h>
+#include <gtk/gtk.h>
+
+#include "gmp-util.h"
+
+GtkBuilder *
+gmp_util_load_builder_file (const char *filename,
+ GtkWindow *error_dialog_parent,
+ GError **err)
+{
+ static GtkWidget *no_glade_dialog = NULL;
+ gchar *path;
+ GtkBuilder *builder;
+ GError *error = NULL;
+
+ path = g_strconcat ("./", filename, NULL);
+
+ builder = gtk_builder_new ();
+
+ /* Try current dir, for debugging */
+ if (g_file_test (path, G_FILE_TEST_EXISTS) && gtk_builder_add_from_file (builder, path, &error))
+ goto end;
+
+ if (error != NULL) {
+ g_warning ("%s", error->message);
+ g_error_free (error);
+ error = NULL;
+ }
+
+ g_free (path);
+ path = g_build_filename (GMP_UIDIR, filename, NULL);
+ if (g_file_test (path, G_FILE_TEST_EXISTS) && gtk_builder_add_from_file (builder, path, &error))
+ goto end;
+
+ gmp_util_show_error_dialog (error_dialog_parent, &no_glade_dialog,
+ _("The file \"%s\" is missing. This indicates that the application is installed incorrectly, so the dialog can't be displayed."), path);
+ g_free (path);
+ if (error != NULL) {
+ g_propagate_error (err, error);
+ }
+
+ return builder;
+
+ end:
+ g_free (path);
+
+ return builder;
+}
+
+void
+gmp_util_run_error_dialog (GtkWindow *transient_parent, const char *message_format, ...)
+{
+ char *message;
+ va_list args;
+ GtkWidget *dialog;
+
+ if (message_format)
+ {
+ va_start (args, message_format);
+ message = g_strdup_vprintf (message_format, args);
+ va_end (args);
+ }
+ else message = NULL;
+
+ dialog = gtk_message_dialog_new (transient_parent,
+ GTK_DIALOG_DESTROY_WITH_PARENT,
+ GTK_MESSAGE_ERROR,
+ GTK_BUTTONS_CLOSE,
+ "%s",
+ message);
+
+ gtk_window_set_resizable (GTK_WINDOW (dialog), FALSE);
+ gtk_dialog_run (GTK_DIALOG (dialog));
+ gtk_widget_destroy(GTK_WIDGET (dialog));
+}
+
+/**
+ * gmp_util_show_error_dialog:
+ * @transient_parent: parent of the future dialog window;
+ * @weap_ptr: pointer to a #Widget pointer, to control the population.
+ * @message_format: printf() style format string
+ *
+ * Create a #GtkMessageDialog window with the message, and present it,
+ * handling its buttons.
+ * If @weap_ptr is not #NULL, only create the dialog if
+ * <literal>*weap_ptr</literal> is #NULL
+ * (and in that case, set @weap_ptr to be a weak pointer to the new dialog),
+ * otherwise just present <literal>*weak_ptr</literal>. Note that in this
+ * last case, the message <emph>will</emph> be changed.
+ */
+
+void
+gmp_util_show_error_dialog (GtkWindow *transient_parent,
+ GtkWidget **weak_ptr,
+ const char *message_format, ...)
+{
+ char *message;
+ va_list args;
+
+ if (message_format)
+ {
+ va_start (args, message_format);
+ message = g_strdup_vprintf (message_format, args);
+ va_end (args);
+ }
+ else message = NULL;
+
+ if (weak_ptr == NULL || *weak_ptr == NULL)
+ {
+ GtkWidget *dialog;
+ dialog = gtk_message_dialog_new (transient_parent,
+ GTK_DIALOG_DESTROY_WITH_PARENT,
+ GTK_MESSAGE_ERROR,
+ GTK_BUTTONS_CLOSE,
+ "%s",
+ message);
+
+ g_signal_connect (G_OBJECT (dialog), "response",
+ G_CALLBACK (gtk_widget_destroy), NULL);
+
+ if (weak_ptr != NULL)
+ {
+ *weak_ptr = dialog;
+ g_object_add_weak_pointer (G_OBJECT (dialog), (void**)weak_ptr);
+ }
+
+ gtk_window_set_resizable (GTK_WINDOW (dialog), FALSE);
+
+ gtk_widget_show_all (dialog);
+ }
+ else
+ {
+ g_return_if_fail (GTK_IS_MESSAGE_DIALOG (*weak_ptr));
+
+ g_object_set (*weak_ptr, "text", message, NULL);
+
+ gtk_window_present (GTK_WINDOW (*weak_ptr));
+ }
+}
diff --git a/profiles/gmp-util.h b/profiles/gmp-util.h
new file mode 100644
index 0000000..012f1dd
--- /dev/null
+++ b/profiles/gmp-util.h
@@ -0,0 +1,40 @@
+/* gmp-util.h: utility functions */
+
+/*
+ * Copyright (C) 2003 Thomas Vander Stichele
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include <gtk/gtk.h>
+
+GtkBuilder *
+gmp_util_load_builder_file (const char *filename,
+ GtkWindow *error_dialog_parent,
+ GError **error);
+
+void
+gmp_util_show_error_dialog (GtkWindow *transient_parent,
+ GtkWidget **weak_ptr,
+ const char *message_format, ...) G_GNUC_PRINTF (3, 4);
+
+void
+gmp_util_run_error_dialog (GtkWindow *transient_parent,
+ const char *message_format, ...);
diff --git a/profiles/help/C/figures/mate-audio-profiles-profile-window.png b/profiles/help/C/figures/mate-audio-profiles-profile-window.png
new file mode 100644
index 0000000..20a0243
--- /dev/null
+++ b/profiles/help/C/figures/mate-audio-profiles-profile-window.png
Binary files differ
diff --git a/profiles/help/C/figures/mate-audio-profiles-profiles-window.png b/profiles/help/C/figures/mate-audio-profiles-profiles-window.png
new file mode 100644
index 0000000..8a12356
--- /dev/null
+++ b/profiles/help/C/figures/mate-audio-profiles-profiles-window.png
Binary files differ
diff --git a/profiles/help/C/legal.xml b/profiles/help/C/legal.xml
new file mode 100644
index 0000000..331b1d4
--- /dev/null
+++ b/profiles/help/C/legal.xml
@@ -0,0 +1,73 @@
+ <legalnotice id="legalnotice">
+ <para>
+ Permission is granted to copy, distribute and/or modify this
+ document under the terms of the GNU Free Documentation
+ License (GFDL), Version 1.1 or any later version published
+ by the Free Software Foundation with no Invariant Sections,
+ no Front-Cover Texts, and no Back-Cover Texts. You can find
+ a copy of the GFDL at this <ulink type="help"
+ url="ghelp:fdl">link</ulink> or in the file COPYING-DOCS
+ distributed with this manual.
+ </para>
+ <para> This manual is part of a collection of MATE manuals
+ distributed under the GFDL. If you want to distribute this
+ manual separately from the collection, you can do so by
+ adding a copy of the license to the manual, as described in
+ section 6 of the license.
+ </para>
+
+ <para>
+ Many of the names used by companies to distinguish their
+ products and services are claimed as trademarks. Where those
+ names appear in any MATE documentation, and the members of
+ the MATE Documentation Project are made aware of those
+ trademarks, then the names are in capital letters or initial
+ capital letters.
+ </para>
+
+ <para>
+ DOCUMENT AND MODIFIED VERSIONS OF THE DOCUMENT ARE PROVIDED
+ UNDER THE TERMS OF THE GNU FREE DOCUMENTATION LICENSE
+ WITH THE FURTHER UNDERSTANDING THAT:
+
+ <orderedlist>
+ <listitem>
+ <para>DOCUMENT IS PROVIDED ON AN "AS IS" BASIS,
+ WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR
+ IMPLIED, INCLUDING, WITHOUT LIMITATION, WARRANTIES
+ THAT THE DOCUMENT OR MODIFIED VERSION OF THE
+ DOCUMENT IS FREE OF DEFECTS MERCHANTABLE, FIT FOR
+ A PARTICULAR PURPOSE OR NON-INFRINGING. THE ENTIRE
+ RISK AS TO THE QUALITY, ACCURACY, AND PERFORMANCE
+ OF THE DOCUMENT OR MODIFIED VERSION OF THE
+ DOCUMENT IS WITH YOU. SHOULD ANY DOCUMENT OR
+ MODIFIED VERSION PROVE DEFECTIVE IN ANY RESPECT,
+ YOU (NOT THE INITIAL WRITER, AUTHOR OR ANY
+ CONTRIBUTOR) ASSUME THE COST OF ANY NECESSARY
+ SERVICING, REPAIR OR CORRECTION. THIS DISCLAIMER
+ OF WARRANTY CONSTITUTES AN ESSENTIAL PART OF THIS
+ LICENSE. NO USE OF ANY DOCUMENT OR MODIFIED
+ VERSION OF THE DOCUMENT IS AUTHORIZED HEREUNDER
+ EXCEPT UNDER THIS DISCLAIMER; AND
+ UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL
+ THEORY, WHETHER IN TORT (INCLUDING NEGLIGENCE),
+ CONTRACT, OR OTHERWISE, SHALL THE AUTHOR,
+ INITIAL WRITER, ANY CONTRIBUTOR, OR ANY
+ DISTRIBUTOR OF THE DOCUMENT OR MODIFIED VERSION
+ OF THE DOCUMENT, OR ANY SUPPLIER OF ANY OF SUCH
+ PARTIES, BE LIABLE TO ANY PERSON FOR ANY
+ DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR
+ CONSEQUENTIAL DAMAGES OF ANY CHARACTER
+ INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS
+ OF GOODWILL, WORK STOPPAGE, COMPUTER FAILURE OR
+ MALFUNCTION, OR ANY AND ALL OTHER DAMAGES OR
+ LOSSES ARISING OUT OF OR RELATING TO USE OF THE
+ DOCUMENT AND MODIFIED VERSIONS OF THE DOCUMENT,
+ EVEN IF SUCH PARTY SHALL HAVE BEEN INFORMED OF
+ THE POSSIBILITY OF SUCH DAMAGES.
+ </para>
+ </listitem>
+ </orderedlist>
+ </para>
+ </legalnotice>
+
diff --git a/profiles/help/C/mate-audio-profiles.xml b/profiles/help/C/mate-audio-profiles.xml
new file mode 100644
index 0000000..929554d
--- /dev/null
+++ b/profiles/help/C/mate-audio-profiles.xml
@@ -0,0 +1,262 @@
+<?xml version="1.0"?>
+<!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
+ "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd" [
+ <!ENTITY appname "mate-audio-profiles">
+ <!ENTITY app "<application>MATE Audio Profiles</application>">
+ <!ENTITY appversion "2.27.3">
+ <!ENTITY manrevision "2.27.0">
+ <!-- Information about the entities
+ Use the app and appname entities to specify the name of the application.
+ Use the appversion entity to specify the version of the application.
+ Use the manrevision entity to specify the revision number of this manual.
+ Use the date entity to specify the release date of this manual.
+ -->
+ ]>
+<!--
+ (Do not remove this comment block.)
+ Maintained by the MATE Documentation Project
+ http://live.mate.org/DocumentationProject
+ Template version: 3.0 beta
+ Template last modified 2006-11-21
+
+ -->
+<!-- =============Document Header ============================= -->
+<article id="index" lang="en">
+ <articleinfo>
+ <title>&app; Manual</title>
+ <abstract role="description">
+ <para>&app; is a set of audio encoding configurations for
+ GStreamer based applications.</para>
+ </abstract>
+
+ <copyright>
+ <year>2008-2009</year>
+ <holder>MATE Documentation Project</holder>
+ </copyright>
+
+ <!-- An address can be added to the publisher information. -->
+ <publisher role="maintainer">
+ <publishername>MATE Documentation Project</publishername>
+ </publisher>
+
+ <xi:include href="legal.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
+ <!-- The file legal.xml contains link to license for the documentation,
+ and other legal stuff such as "NO WARRANTY" statement.
+ Please do not change any of this. -->
+
+ <authorgroup>
+ <author>
+ <firstname>Marc-Andre</firstname>
+ <surname>Lureau</surname>
+ <affiliation>
+ <orgname>MATE Project</orgname>
+ <address> <email>[email protected]</email> </address>
+ </affiliation>
+ </author>
+ </authorgroup>
+
+
+ <!-- According to GNU FDL, revision history is mandatory if you are -->
+ <!-- modifying/reusing someone else's document. If not, you can omit it. -->
+ <!-- Remember to remove the &manrevision; entity from the revision entries other
+ -->
+ <!-- than the current revision. -->
+ <!-- The revision numbering system for MATE manuals is as follows: -->
+ <!-- * the revision number consists of two components -->
+ <!-- * the first component of the revision number reflects the release version of the MATE desktop. -->
+ <!-- * the second component of the revision number is a decimal unit that is incremented with each revision of the manual. -->
+ <!-- For example, if the MATE desktop release is V2.x, the first version of the manual that -->
+ <!-- is written in that desktop timeframe is V2.0, the second version of the manual is V2.1, etc. -->
+ <!-- When the desktop release version changes to V3.x, the revision number of the manual changes -->
+ <!-- to V3.0, and so on. -->
+ <revhistory>
+ <revision>
+ <revnumber>Audio Profiles Manual V&manrevision;</revnumber>
+ <date>June 2009</date>
+ <revdescription>
+ <para>Fill some blanks, add screenshots.</para>
+ <para>Release with MATE Media 2.27.3</para>
+ <para role="author">Marc-Andre Lureau</para>
+ <para role="publisher">MATE Documentation Project</para>
+ </revdescription>
+ </revision>
+ <revision>
+ <revnumber>Audio Profiles Manual V0.1</revnumber>
+ <date>December 2008</date>
+ <revdescription>
+ <para role="author">Marc-Andre Lureau</para>
+ <para role="publisher">MATE Documentation Project</para>
+ </revdescription>
+ </revision>
+ </revhistory>
+
+ <releaseinfo>This manual describes version &appversion; of MATE Audio Profiles.
+ </releaseinfo>
+ <legalnotice>
+ <title>Feedback</title>
+ <para>To report a bug or make a suggestion regarding the &app; application or
+ this manual, follow the directions in the
+ <ulink url="ghelp:user-guide?feedback-bugs" type="help">Feedback section of the MATE User Guide</ulink>.
+ </para>
+ <!-- Translators may also add here feedback address for translations -->
+ </legalnotice>
+ </articleinfo>
+
+ <indexterm zone="index">
+ <primary>MATE Audio Profiles</primary>
+ </indexterm>
+
+ <!-- ============= Document Body ============================= -->
+ <!-- ============= Introduction ============================== -->
+
+ <sect1 id="mate-audio-profiles-introduction">
+ <title>Introduction</title>
+ <para>&app; let you select and modify a list of pre-defined encoding formats.
+ By default, &app; provides the following audio format:</para>
+ <itemizedlist>
+ <listitem>
+ <para>AAC-MP4 - The new standard of lossy compression.</para>
+ </listitem>
+ <listitem>
+ <para>Ogg Vorbis - Xiph.Org lossy compression.</para>
+ </listitem>
+ <listitem>
+ <para>Speex - Xiph.Org lossy compression optimized for voice.</para>
+ </listitem>
+ <listitem>
+ <para>FLAC - Xiph.Org lossless audio compression.</para>
+ </listitem>
+ <listitem>
+ <para>MP3 - The popular lossy compression format.</para>
+ </listitem>
+ <listitem>
+ <para>MP2 - MPEG-1 Audio Layer II, largely supported.</para>
+ </listitem>
+ <listitem>
+ <para>WAV - Lossless.</para>
+ </listitem>
+ </itemizedlist>
+
+ <note>
+ <para>Some format may be illegal in your jurisdiction.</para>
+ </note>
+ </sect1>
+
+ <sect1 id="mate-audio-profiles-usage">
+ <title>Usage</title>
+ <para>Use &app; to modify a list of pre-defined encoding formats.</para>
+
+ <sect2 id="mate-audio-profiles-profiles-edit">
+ <title>Profile selection dialog</title>
+
+ <para>The following window is displayed to modify, add or remove
+ the pre-defined formats.</para>
+
+ <!-- ==== Figure ==== -->
+ <figure id="mate-audio-profiles-profiles-window">
+ <title>&app; Window</title>
+ <screenshot>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="figures/mate-audio-profiles-profiles-window.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Shows &app; main window. Contains list of
+ profiles and modification options.</phrase>
+ </textobject>
+ </mediaobject>
+ </screenshot>
+ </figure>
+ <!-- ==== End of Figure ==== -->
+
+ <para>Select one of the profiles and click "Edit" to modify
+ it. The "Profile modification window" will be displayed.</para>
+
+ <para>"Delete" will remove the currently selected profile from the
+ list of profiles.</para>
+
+ <para>To create a new profile, click "New". The "Profile
+5~ modification window" will be displayed.</para>
+
+ </sect2>
+
+ <sect2 id="mate-audio-profiles-profile-edit">
+ <title>Profile editing</title>
+
+ <para>&app; let you modify the parameters of an audio profile.</para>
+
+ <!-- ==== Figure ==== -->
+ <figure id="mate-audio-profiles-profile-window">
+ <title>Profile modification window</title>
+ <screenshot>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="figures/mate-audio-profiles-profile-window.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Shows &app; profile window. </phrase>
+ </textobject>
+ </mediaobject>
+ </screenshot>
+ </figure>
+ <!-- ==== End of Figure ==== -->
+
+ <itemizedlist>
+ <listitem>
+ <para>Profile name - user friendly name of the profile.</para>
+ </listitem>
+ <listitem>
+ <para>Profile description - long description of this profile.</para>
+ </listitem>
+ <listitem>
+ <para>GStreamer pipeline - the GStreamer encoding pipeline.</para>
+ </listitem>
+ <listitem>
+ <para>File extension - the filename extension associated to
+ this profile.</para>
+ </listitem>
+ <listitem>
+ <para>Active - whether this profile is listed in client
+ application.</para>
+ </listitem>
+ </itemizedlist>
+
+ </sect2>
+
+ </sect1>
+
+ <!-- ============= Bugs ================================== -->
+ <!-- This section is optional and is commented out by default.
+ You can use it to describe known bugs and limitations of the
+ program if there are any - please be frank and list all
+ problems you know of.
+
+ <sect1 id="mayapp-bugs">
+ <title>Known Bugs and Limitations</title>
+ <para> </para>
+ </sect1>
+ -->
+ <!-- ============= About ================================== -->
+ <!-- This section contains info about the program (not docs), such as
+ author's name(s), web page, license, feedback address. This
+ section is optional: primary place for this info is "About.." box of
+ the program. However, if you do wish to include this info in the
+ manual, this is the place to put it. Alternatively, you can put this information in the title page.-->
+ <sect1 id="mate-audio-profiles-about">
+ <title>About &app;</title>
+ <para>
+ To report a bug or make a suggestion regarding this application or
+ this manual, follow the directions in the
+ <ulink url="ghelp:user-guide?feedback-bugs" type="help">Feedback section of the MATE User Guide</ulink>.
+ </para>
+
+ <para> This program is distributed under the terms of the GNU
+ Library General Public license as published by the Free Software
+ Foundation; either version 2 of the License, or (at your option)
+ any later version. A
+ <ulink url="ghelp:lgpl" type="help">copy of this license</ulink>
+ is included with this documentation; another can be found in the file
+ COPYING included with the source code of this program. </para>
+
+ </sect1>
+</article>
diff --git a/profiles/help/ChangeLog b/profiles/help/ChangeLog
new file mode 100644
index 0000000..d1440df
--- /dev/null
+++ b/profiles/help/ChangeLog
@@ -0,0 +1,4 @@
+2008-12-15 Marc-Andre Lureau <[email protected]>
+
+ * Initial documentation. Closes #563343
+
diff --git a/profiles/help/Makefile.am b/profiles/help/Makefile.am
new file mode 100644
index 0000000..7d65ebf
--- /dev/null
+++ b/profiles/help/Makefile.am
@@ -0,0 +1,10 @@
+include $(top_srcdir)/build-aux/mate-doc-utils.make
+dist-hook: doc-dist-hook
+DOC_MODULE = mate-audio-profiles
+DOC_INCLUDES = legal.xml
+DOC_FIGURES = \
+ figures/mate-audio-profiles-profiles-window.png \
+ figures/mate-audio-profiles-profile-window.png
+DOC_LINGUAS = da de el es fr sv
+
+-include $(top_srcdir)/git.mk
diff --git a/profiles/help/Makefile.in b/profiles/help/Makefile.in
new file mode 100644
index 0000000..ed2441c
--- /dev/null
+++ b/profiles/help/Makefile.in
@@ -0,0 +1,995 @@
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
+# Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+
+# mate-doc-utils.make - make magic for building documentation
+# Copyright (C) 2004-2005 Shaun McCance <[email protected]>
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+#
+# As a special exception to the GNU General Public License, if you
+# distribute this file as part of a program that contains a
+# configuration script generated by Autoconf, you may include it under
+# the same distribution terms that you use for the rest of that program.
+
+################################################################################
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
+ $(top_srcdir)/build-aux/mate-doc-utils.make ChangeLog
+subdir = profiles/help
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/as-ac-expand.m4 \
+ $(top_srcdir)/m4/as-compiler-flag.m4 \
+ $(top_srcdir)/m4/as-version.m4 $(top_srcdir)/m4/intltool.m4 \
+ $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \
+ $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \
+ $(top_srcdir)/m4/lt~obsolete.m4 \
+ $(top_srcdir)/m4/mate-doc-utils.m4 $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(SHELL) $(top_srcdir)/build-aux/mkinstalldirs
+CONFIG_HEADER = $(top_builddir)/config.h
+CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+AM_V_GEN = $(am__v_GEN_$(V))
+am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY))
+am__v_GEN_0 = @echo " GEN " $@;
+AM_V_at = $(am__v_at_$(V))
+am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY))
+am__v_at_0 = @
+SOURCES =
+DIST_SOURCES =
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+ALL_LINGUAS = @ALL_LINGUAS@
+AMTAR = @AMTAR@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
+AR = @AR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CATALOGS = @CATALOGS@
+CATOBJEXT = @CATOBJEXT@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DATADIRNAME = @DATADIRNAME@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DISABLE_DEPRECATED = @DISABLE_DEPRECATED@
+DISTCHECK_CONFIGURE_FLAGS = @DISTCHECK_CONFIGURE_FLAGS@
+DLLTOOL = @DLLTOOL@
+DOC_USER_FORMATS = @DOC_USER_FORMATS@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+GETTEXT_PACKAGE = @GETTEXT_PACKAGE@
+GLADEUI_CATALOG_DIR = @GLADEUI_CATALOG_DIR@
+GLADEUI_CFLAGS = @GLADEUI_CFLAGS@
+GLADEUI_LIBS = @GLADEUI_LIBS@
+GLADEUI_MODULE_DIR = @GLADEUI_MODULE_DIR@
+GLIB_GENMARSHAL = @GLIB_GENMARSHAL@
+GMOFILES = @GMOFILES@
+GMP_CFLAGS = @GMP_CFLAGS@
+GMP_LIBS = @GMP_LIBS@
+GMSGFMT = @GMSGFMT@
+GREP = @GREP@
+GSR_CFLAGS = @GSR_CFLAGS@
+GSR_LIBS = @GSR_LIBS@
+GSTMIXER_CFLAGS = @GSTMIXER_CFLAGS@
+GSTMIXER_LIBS = @GSTMIXER_LIBS@
+GSTPROPS_CFLAGS = @GSTPROPS_CFLAGS@
+GSTPROPS_LIBS = @GSTPROPS_LIBS@
+GST_MAJORMINOR = @GST_MAJORMINOR@
+HAVE_PULSEAUDIO = @HAVE_PULSEAUDIO@
+HAVE_SOUND_THEME = @HAVE_SOUND_THEME@
+HELP_DIR = @HELP_DIR@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+INSTOBJEXT = @INSTOBJEXT@
+INTLLIBS = @INTLLIBS@
+INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
+INTLTOOL_MERGE = @INTLTOOL_MERGE@
+INTLTOOL_PERL = @INTLTOOL_PERL@
+INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
+LD = @LD@
+LDFLAGS = @LDFLAGS@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAKEINFO = @MAKEINFO@
+MANIFEST_TOOL = @MANIFEST_TOOL@
+MATECC_DESKTOP_DIR = @MATECC_DESKTOP_DIR@
+MATECONFTOOL = @MATECONFTOOL@
+MATECONF_SCHEMA_CONFIG_SOURCE = @MATECONF_SCHEMA_CONFIG_SOURCE@
+MATECONF_SCHEMA_FILE_DIR = @MATECONF_SCHEMA_FILE_DIR@
+MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
+MSGFMT = @MSGFMT@
+MSGFMT_OPTS = @MSGFMT_OPTS@
+MSGMERGE = @MSGMERGE@
+NM = @NM@
+NMEDIT = @NMEDIT@
+OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
+OMF_DIR = @OMF_DIR@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PACKAGE_VERSION_MAJOR = @PACKAGE_VERSION_MAJOR@
+PACKAGE_VERSION_MICRO = @PACKAGE_VERSION_MICRO@
+PACKAGE_VERSION_MINOR = @PACKAGE_VERSION_MINOR@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
+POFILES = @POFILES@
+POSUB = @POSUB@
+PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
+PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@
+PROGRAMS_GSTPROPS = @PROGRAMS_GSTPROPS@
+PULSEAUDIO_CFLAGS = @PULSEAUDIO_CFLAGS@
+PULSEAUDIO_LIBS = @PULSEAUDIO_LIBS@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+SOUNDTHEME_CFLAGS = @SOUNDTHEME_CFLAGS@
+SOUNDTHEME_LIBS = @SOUNDTHEME_LIBS@
+SOUND_THEME_CFLAGS = @SOUND_THEME_CFLAGS@
+SOUND_THEME_LIBS = @SOUND_THEME_LIBS@
+STRIP = @STRIP@
+USE_NLS = @USE_NLS@
+VERSION = @VERSION@
+VOLUME_CONTROL_CFLAGS = @VOLUME_CONTROL_CFLAGS@
+VOLUME_CONTROL_LIBS = @VOLUME_CONTROL_LIBS@
+WARN_CFLAGS = @WARN_CFLAGS@
+WARN_CXXFLAGS = @WARN_CXXFLAGS@
+XGETTEXT = @XGETTEXT@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+builddir = @builddir@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localedir = @localedir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+_clean_doc_header = $(if $(DOC_H_FILE),clean-doc-header)
+_DOC_REAL_FORMATS = $(if $(DOC_USER_FORMATS),$(DOC_USER_FORMATS),$(DOC_FORMATS))
+_DOC_REAL_LINGUAS = $(if $(filter environment,$(origin LINGUAS)), \
+ $(filter $(LINGUAS),$(DOC_LINGUAS)), \
+ $(DOC_LINGUAS))
+
+_DOC_ABS_SRCDIR = @abs_srcdir@
+_xml2po_mode = $(if $(DOC_ID),mallard,docbook)
+@ENABLE_SK_TRUE@_ENABLE_SK = true
+
+################################################################################
+db2omf_args = \
+ --stringparam db2omf.basename $(DOC_MODULE) \
+ --stringparam db2omf.format $(3) \
+ --stringparam db2omf.dtd \
+ $(shell xmllint --format $(2) | grep -h PUBLIC | head -n 1 \
+ | sed -e 's/.*PUBLIC \(\"[^\"]*\"\).*/\1/') \
+ --stringparam db2omf.lang $(notdir $(patsubst %/$(notdir $(2)),%,$(2))) \
+ --stringparam db2omf.omf_dir "$(OMF_DIR)" \
+ --stringparam db2omf.help_dir "$(HELP_DIR)" \
+ --stringparam db2omf.omf_in "$(_DOC_OMF_IN)" \
+ $(if $(_ENABLE_SK), \
+ --stringparam db2omf.scrollkeeper_cl "$(_skcontentslist)") \
+ $(_db2omf) $(2)
+
+_DOC_OMF_IN = $(if $(DOC_MODULE),$(wildcard $(_DOC_ABS_SRCDIR)/$(DOC_MODULE).omf.in))
+_DOC_OMF_DB = $(if $(_DOC_OMF_IN), \
+ $(foreach lc,C $(_DOC_REAL_LINGUAS),$(DOC_MODULE)-$(lc).omf))
+
+_DOC_OMF_HTML = $(if $(_DOC_OMF_IN), \
+ $(foreach lc,C $(_DOC_REAL_LINGUAS),$(DOC_MODULE)-html-$(lc).omf))
+
+
+# FIXME
+_DOC_OMF_ALL = \
+ $(if $(filter docbook,$(_DOC_REAL_FORMATS)),$(_DOC_OMF_DB)) \
+ $(if $(filter html HTML,$(_DOC_REAL_FORMATS)),$(_DOC_OMF_HTML))
+
+
+################################################################################
+_DOC_C_MODULE = $(if $(DOC_MODULE),C/$(DOC_MODULE).xml)
+_DOC_C_PAGES = $(foreach page,$(DOC_PAGES),C/$(page))
+_DOC_C_ENTITIES = $(foreach ent,$(DOC_ENTITIES),C/$(ent))
+_DOC_C_INCLUDES = $(foreach inc,$(DOC_INCLUDES),C/$(inc))
+_DOC_C_DOCS = \
+ $(_DOC_C_ENTITIES) $(_DOC_C_INCLUDES) \
+ $(_DOC_C_PAGES) $(_DOC_C_MODULE)
+
+_DOC_C_DOCS_NOENT = \
+ $(_DOC_C_MODULE) $(_DOC_C_INCLUDES) \
+ $(_DOC_C_PAGES)
+
+_DOC_C_FIGURES = $(if $(DOC_FIGURES), \
+ $(foreach fig,$(DOC_FIGURES),C/$(fig)), \
+ $(patsubst $(srcdir)/%,%,$(wildcard $(srcdir)/C/figures/*.png)))
+
+
+# FIXME: probably have to shell escape to determine the file names
+_DOC_C_HTML = $(foreach f, \
+ $(shell xsltproc --xinclude \
+ --stringparam db.chunk.basename "$(DOC_MODULE)" \
+ $(_chunks) "C/$(DOC_MODULE).xml"), \
+ C/$(f).xhtml)
+
+
+###############################################################################
+_DOC_POFILES = $(if $(DOC_MODULE)$(DOC_ID), \
+ $(foreach lc,$(_DOC_REAL_LINGUAS),$(lc)/$(lc).po))
+
+_DOC_MOFILES = $(patsubst %.po,%.mo,$(_DOC_POFILES))
+_DOC_LC_MODULES = $(if $(DOC_MODULE), \
+ $(foreach lc,$(_DOC_REAL_LINGUAS),$(lc)/$(DOC_MODULE).xml))
+
+_DOC_LC_PAGES = \
+ $(foreach lc,$(_DOC_REAL_LINGUAS),$(foreach page,$(_DOC_C_PAGES), \
+ $(lc)/$(notdir $(page)) ))
+
+_DOC_LC_INCLUDES = \
+ $(foreach lc,$(_DOC_REAL_LINGUAS),$(foreach inc,$(_DOC_C_INCLUDES), \
+ $(lc)/$(notdir $(inc)) ))
+
+
+# FIXME: probably have to shell escape to determine the file names
+_DOC_LC_HTML = \
+ $(foreach lc,$(_DOC_REAL_LINGUAS),$(foreach doc,$(_DOC_C_HTML), \
+ $(lc)/$(notdir $(doc)) ))
+
+_DOC_LC_DOCS = \
+ $(_DOC_LC_MODULES) $(_DOC_LC_INCLUDES) $(_DOC_LC_PAGES) \
+ $(if $(filter html HTML,$(_DOC_REAL_FORMATS)),$(_DOC_LC_HTML))
+
+_DOC_LC_FIGURES = $(foreach lc,$(_DOC_REAL_LINGUAS), \
+ $(patsubst C/%,$(lc)/%,$(_DOC_C_FIGURES)) )
+
+_DOC_SRC_FIGURES = \
+ $(foreach fig,$(_DOC_C_FIGURES), $(foreach lc,C $(_DOC_REAL_LINGUAS), \
+ $(wildcard $(srcdir)/$(lc)/$(patsubst C/%,%,$(fig))) ))
+
+_DOC_POT = $(if $(DOC_MODULE),$(DOC_MODULE).pot)
+
+################################################################################
+_DOC_HTML_ALL = $(if $(filter html HTML,$(_DOC_REAL_FORMATS)), \
+ $(_DOC_C_HTML) $(_DOC_LC_HTML))
+
+_DOC_HTML_TOPS = $(foreach lc,C $(_DOC_REAL_LINGUAS),$(lc)/$(DOC_MODULE).xhtml)
+_clean_omf = $(if $(_DOC_OMF_IN),clean-doc-omf)
+_clean_dsk = $(if $(_DOC_DSK_IN),clean-doc-dsk)
+_clean_lc = $(if $(_DOC_REAL_LINGUAS),clean-doc-lc)
+_clean_dir = $(if $(DOC_MODULE)$(DOC_ID),clean-doc-dir)
+_doc_install_dir = $(if $(DOC_ID),$(DOC_ID),$(DOC_MODULE))
+DOC_MODULE = mate-audio-profiles
+DOC_INCLUDES = legal.xml
+DOC_FIGURES = \
+ figures/mate-audio-profiles-profiles-window.png \
+ figures/mate-audio-profiles-profile-window.png
+
+DOC_LINGUAS = da de el es fr sv
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/build-aux/mate-doc-utils.make $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+ && { if test -f $@; then exit 0; else break; fi; }; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign profiles/help/Makefile'; \
+ $(am__cd) $(top_srcdir) && \
+ $(AUTOMAKE) --foreign profiles/help/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
+
+mostlyclean-libtool:
+ -rm -f *.lo
+
+clean-libtool:
+ -rm -rf .libs _libs
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+
+distdir: $(DISTFILES)
+ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ list='$(DISTFILES)'; \
+ dist_files=`for file in $$list; do echo $$file; done | \
+ sed -e "s|^$$srcdirstrip/||;t" \
+ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+ case $$dist_files in \
+ */*) $(MKDIR_P) `echo "$$dist_files" | \
+ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+ sort -u` ;; \
+ esac; \
+ for file in $$dist_files; do \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ if test -d $$d/$$file; then \
+ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test -d "$(distdir)/$$file"; then \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
+ else \
+ test -f "$(distdir)/$$file" \
+ || cp -p $$d/$$file "$(distdir)/$$file" \
+ || exit 1; \
+ fi; \
+ done
+ $(MAKE) $(AM_MAKEFLAGS) \
+ top_distdir="$(top_distdir)" distdir="$(distdir)" \
+ dist-hook
+check-am: all-am
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+ -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic clean-libtool clean-local mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic distclean-local
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+html-am:
+
+info: info-am
+
+info-am:
+
+install-data-am: install-data-local
+
+install-dvi: install-dvi-am
+
+install-dvi-am:
+
+install-exec-am:
+
+install-html: install-html-am
+
+install-html-am:
+
+install-info: install-info-am
+
+install-info-am:
+
+install-man:
+
+install-pdf: install-pdf-am
+
+install-pdf-am:
+
+install-ps: install-ps-am
+
+install-ps-am:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic \
+ maintainer-clean-local
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool \
+ mostlyclean-local
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-local
+
+.MAKE: install-am install-strip
+
+.PHONY: all all-am check check-am clean clean-generic clean-libtool \
+ clean-local dist-hook distclean distclean-generic \
+ distclean-libtool distclean-local distdir dvi dvi-am html \
+ html-am info info-am install install-am install-data \
+ install-data-am install-data-local install-dvi install-dvi-am \
+ install-exec install-exec-am install-html install-html-am \
+ install-info install-info-am install-man install-pdf \
+ install-pdf-am install-ps install-ps-am install-strip \
+ installcheck installcheck-am installdirs maintainer-clean \
+ maintainer-clean-generic maintainer-clean-local mostlyclean \
+ mostlyclean-generic mostlyclean-libtool mostlyclean-local pdf \
+ pdf-am ps ps-am uninstall uninstall-am uninstall-local
+
+
+DOC_H_FILE ?=
+
+DOC_H_DOCS ?=
+
+$(DOC_H_FILE): $(DOC_H_DOCS);
+ echo 'const gchar* documentation_credits[] = {' >> [email protected]
+ list='$(DOC_H_DOCS)'; for doc in $$list; do \
+ xmlpath="`echo $$doc | sed -e 's/^\(.*\/\).*/\1/' -e '/\//!s/.*//'`:$(srcdir)/`echo $$doc | sed -e 's/^\(.*\/\).*/\1/' -e '/\//!s/.*//'`"; \
+ if ! test -f "$$doc"; then doc="$(srcdir)/$$doc"; fi; \
+ xsltproc --path "$$xmlpath" $(_credits) $$doc; \
+ done | sort | uniq \
+ | awk 'BEGIN{s=""}{n=split($$0,w,"<");if(s!=""&&s!=substr(w[1],1,length(w[1])-1)){print s};if(n>1){print $$0;s=""}else{s=$$0}};END{if(s!=""){print s}}' \
+ | sed -e 's/\\/\\\\/' -e 's/"/\\"/' -e 's/\(.*\)/\t"\1",/' >> [email protected]
+ echo ' NULL' >> [email protected]
+ echo '};' >> [email protected]
+ list='$(DOC_H_DOCS)'; for doc in $$list; do \
+ xmlpath="`echo $$doc | sed -e 's/^\(.*\/\).*/\1/' -e '/\//!s/.*//'`:$(srcdir)/`echo $$doc | sed -e 's/^\(.*\/\).*/\1/' -e '/\//!s/.*//'`"; \
+ if ! test -f "$$doc"; then doc="$(srcdir)/$$doc"; fi; \
+ docid=`echo "$$doc" | sed -e 's/.*\/\([^/]*\)\.xml/\1/' \
+ | sed -e 's/[^a-zA-Z_]/_/g' | tr 'a-z' 'A-Z'`; \
+ echo $$xmlpath; \
+ ids=`xsltproc --xinclude --path "$$xmlpath" $(_ids) $$doc`; \
+ for id in $$ids; do \
+ echo '#define HELP_'`echo $$docid`'_'`echo $$id \
+ | sed -e 's/[^a-zA-Z_]/_/g' | tr 'a-z' 'A-Z'`' "'$$id'"' >> [email protected]; \
+ done; \
+ echo >> [email protected]; \
+ done;
+
+dist-check-gdu:
+@HAVE_MATE_DOC_UTILS_FALSE@ @echo "*** MATE Doc Utils must be installed in order to make dist"
+@HAVE_MATE_DOC_UTILS_FALSE@ @false
+
+.PHONY: dist-doc-header
+dist-doc-header: $(DOC_H_FILE)
+ @if test -f "$(DOC_H_FILE)"; then d=; else d="$(srcdir)/"; fi; \
+ echo "$(INSTALL_DATA) $${d}$(DOC_H_FILE) $(distdir)/$(DOC_H_FILE)"; \
+ $(INSTALL_DATA) "$${d}$(DOC_H_FILE)" "$(distdir)/$(DOC_H_FILE)";
+
+doc-dist-hook: dist-check-gdu $(if $(DOC_H_FILE),dist-doc-header)
+
+.PHONY: clean-doc-header
+clean-local: $(_clean_doc_header)
+distclean-local: $(_clean_doc_header)
+mostlyclean-local: $(_clean_doc_header)
+maintainer-clean-local: $(_clean_doc_header)
+clean-doc-header:
+ rm -f $(DOC_H_FILE)
+
+all: $(DOC_H_FILE)
+
+################################################################################
+
+DOC_MODULE ?=
+
+DOC_ID ?=
+
+DOC_PAGES ?=
+
+DOC_ENTITIES ?=
+
+DOC_INCLUDES ?=
+
+DOC_FIGURES ?=
+
+DOC_FORMATS ?= docbook
+
+DOC_LINGUAS ?=
+
+################################################################################
+
+_xml2po ?= `which xml2po`
+
+_db2html ?= `$(PKG_CONFIG) --variable db2html mate-doc-utils`
+_db2omf ?= `$(PKG_CONFIG) --variable db2omf mate-doc-utils`
+_malrng ?= `$(PKG_CONFIG) --variable malrng mate-doc-utils`
+_chunks ?= `$(PKG_CONFIG) --variable xmldir mate-doc-utils`/mate/xslt/docbook/utils/chunks.xsl
+_credits ?= `$(PKG_CONFIG) --variable xmldir mate-doc-utils`/mate/xslt/docbook/utils/credits.xsl
+_ids ?= `$(PKG_CONFIG) --variable xmldir mate-doc-utils`/mate/xslt/docbook/utils/ids.xsl
+@ENABLE_SK_TRUE@_skpkgdatadir ?= `scrollkeeper-config --pkgdatadir`
+@ENABLE_SK_TRUE@_sklocalstatedir ?= `scrollkeeper-config --pkglocalstatedir`
+@ENABLE_SK_TRUE@_skcontentslist ?= $(_skpkgdatadir)/Templates/C/scrollkeeper_cl.xml
+
+$(_DOC_OMF_DB) : $(_DOC_OMF_IN)
+$(_DOC_OMF_DB) : $(DOC_MODULE)-%.omf : %/$(DOC_MODULE).xml
+ @test "x$(_ENABLE_SK)" != "xtrue" -o -f "$(_skcontentslist)" || { \
+ echo "The file '$(_skcontentslist)' does not exist." >&2; \
+ echo "Please check your ScrollKeeper installation." >&2; \
+ exit 1; }
+ xsltproc -o $@ $(call db2omf_args,$@,$<,'docbook') || { rm -f "$@"; exit 1; }
+
+$(_DOC_OMF_HTML) : $(_DOC_OMF_IN)
+$(_DOC_OMF_HTML) : $(DOC_MODULE)-html-%.omf : %/$(DOC_MODULE).xml
+@ENABLE_SK_TRUE@ @test "x$(_ENABLE_SK)" != "xtrue" -o -f "$(_skcontentslist)" || { \
+@ENABLE_SK_TRUE@ echo "The file '$(_skcontentslist)' does not exist" >&2; \
+@ENABLE_SK_TRUE@ echo "Please check your ScrollKeeper installation." >&2; \
+@ENABLE_SK_TRUE@ exit 1; }
+ xsltproc -o $@ $(call db2omf_args,$@,$<,'xhtml') || { rm -f "$@"; exit 1; }
+
+.PHONY: omf
+omf: $(_DOC_OMF_ALL)
+
+.PHONY: po
+po: $(_DOC_POFILES)
+
+.PHONY: mo
+mo: $(_DOC_MOFILES)
+
+$(_DOC_POFILES):
+ @if ! test -d $(dir $@); then \
+ echo "mkdir $(dir $@)"; \
+ mkdir "$(dir $@)"; \
+ fi
+ @if test ! -f $@ -a -f $(srcdir)/$@; then \
+ echo "cp $(srcdir)/$@ $@"; \
+ cp "$(srcdir)/$@" "$@"; \
+ fi;
+ @docs=; \
+ list='$(_DOC_C_DOCS_NOENT)'; for doc in $$list; do \
+ docs="$$docs $(_DOC_ABS_SRCDIR)/$$doc"; \
+ done; \
+ if ! test -f $@; then \
+ echo "(cd $(dir $@) && \
+ $(_xml2po) -m $(_xml2po_mode) -e $$docs > $(notdir $@).tmp && \
+ cp $(notdir $@).tmp $(notdir $@) && rm -f $(notdir $@).tmp)"; \
+ (cd $(dir $@) && \
+ $(_xml2po) -m $(_xml2po_mode) -e $$docs > $(notdir $@).tmp && \
+ cp $(notdir $@).tmp $(notdir $@) && rm -f $(notdir $@).tmp); \
+ else \
+ echo "(cd $(dir $@) && \
+ $(_xml2po) -m $(_xml2po_mode) -e -u $(notdir $@) $$docs)"; \
+ (cd $(dir $@) && \
+ $(_xml2po) -m $(_xml2po_mode) -e -u $(notdir $@) $$docs); \
+ fi
+
+$(_DOC_MOFILES): %.mo: %.po
+ @if ! test -d $(dir $@); then \
+ echo "mkdir $(dir $@)"; \
+ mkdir "$(dir $@)"; \
+ fi
+ msgfmt -o $@ $<
+
+# FIXME: fix the dependancy
+# FIXME: hook xml2po up
+$(_DOC_LC_DOCS) : $(_DOC_MOFILES)
+$(_DOC_LC_DOCS) : $(_DOC_C_DOCS)
+ if ! test -d $(dir $@); then mkdir $(dir $@); fi
+ if [ -f "C/$(notdir $@)" ]; then d="../"; else d="$(_DOC_ABS_SRCDIR)/"; fi; \
+ mo="$(dir $@)$(patsubst %/$(notdir $@),%,$@).mo"; \
+ if [ -f "$${mo}" ]; then mo="../$${mo}"; else mo="$(_DOC_ABS_SRCDIR)/$${mo}"; fi; \
+ (cd $(dir $@) && \
+ $(_xml2po) -m $(_xml2po_mode) -e -t "$${mo}" \
+ "$${d}C/$(notdir $@)" > $(notdir $@).tmp && \
+ cp $(notdir $@).tmp $(notdir $@) && rm -f $(notdir $@).tmp)
+.PHONY: pot
+pot: $(_DOC_POT)
+$(_DOC_POT): $(_DOC_C_DOCS_NOENT)
+ $(_xml2po) -m $(_xml2po_mode) -e -o $@ $^
+
+$(_DOC_HTML_TOPS): $(_DOC_C_DOCS) $(_DOC_LC_DOCS)
+ xsltproc -o $@ --xinclude --param db.chunk.chunk_top "false()" --stringparam db.chunk.basename "$(DOC_MODULE)" --stringparam db.chunk.extension ".xhtml" $(_db2html) $(patsubst %.xhtml,%.xml,$@)
+
+################################################################################
+
+all: \
+ $(_DOC_C_DOCS) $(_DOC_LC_DOCS) \
+ $(_DOC_OMF_ALL) $(_DOC_DSK_ALL) \
+ $(_DOC_HTML_ALL) $(_DOC_POFILES)
+
+################################################################################
+
+.PHONY: clean-doc-omf clean-doc-dsk clean-doc-lc clean-doc-dir
+
+clean-doc-omf: ; rm -f $(_DOC_OMF_DB) $(_DOC_OMF_HTML)
+clean-doc-dsk: ; rm -f $(_DOC_DSK_DB) $(_DOC_DSK_HTML)
+clean-doc-lc:
+ rm -f $(_DOC_LC_DOCS)
+ rm -f $(_DOC_MOFILES)
+ @list='$(_DOC_POFILES)'; for po in $$list; do \
+ if ! test "$$po" -ef "$(srcdir)/$$po"; then \
+ echo "rm -f $$po"; \
+ rm -f "$$po"; \
+ fi; \
+ done
+# .xml2.po.mo cleaning is obsolete as of 0.18.1 and could be removed in 0.20.x
+ @for lc in C $(_DOC_REAL_LINGUAS); do \
+ if test -f "$$lc/.xml2po.mo"; then \
+ echo "rm -f $$lc/.xml2po.mo"; \
+ rm -f "$$lc/.xml2po.mo"; \
+ fi; \
+ done
+clean-doc-dir: clean-doc-lc
+ @for lc in C $(_DOC_REAL_LINGUAS); do \
+ for dir in `find $$lc -depth -type d`; do \
+ if ! test $$dir -ef $(srcdir)/$$dir; then \
+ echo "rmdir $$dir"; \
+ rmdir "$$dir"; \
+ fi; \
+ done; \
+ done
+
+clean-local: \
+ $(_clean_omf) $(_clean_dsk) \
+ $(_clean_lc) $(_clean_dir)
+distclean-local: \
+ $(_clean_omf) $(_clean_dsk) \
+ $(_clean_lc) $(_clean_dir)
+mostlyclean-local: \
+ $(_clean_omf) $(_clean_dsk) \
+ $(_clean_lc) $(_clean_dir)
+maintainer-clean-local: \
+ $(_clean_omf) $(_clean_dsk) \
+ $(_clean_lc) $(_clean_dir)
+
+################################################################################
+
+.PHONY: dist-doc-docs dist-doc-pages dist-doc-figs dist-doc-omf dist-doc-dsk
+doc-dist-hook: \
+ $(if $(DOC_MODULE)$(DOC_ID),dist-doc-docs) \
+ $(if $(_DOC_C_FIGURES),dist-doc-figs) \
+ $(if $(_DOC_OMF_IN),dist-doc-omf)
+# $(if $(_DOC_DSK_IN),dist-doc-dsk)
+
+dist-doc-docs: $(_DOC_C_DOCS) $(_DOC_LC_DOCS) $(_DOC_POFILES)
+ @for lc in C $(_DOC_REAL_LINGUAS); do \
+ echo " $(mkinstalldirs) $(distdir)/$$lc"; \
+ $(mkinstalldirs) "$(distdir)/$$lc"; \
+ done
+ @list='$(_DOC_C_DOCS) $(_DOC_LC_DOCS) $(_DOC_POFILES)'; \
+ for doc in $$list; do \
+ if test -f "$$doc"; then d=; else d="$(srcdir)/"; fi; \
+ docdir=`echo $$doc | sed -e 's/^\(.*\/\).*/\1/' -e '/\//!s/.*//'`; \
+ if ! test -d "$(distdir)/$$docdir"; then \
+ echo "$(mkinstalldirs) $(distdir)/$$docdir"; \
+ $(mkinstalldirs) "$(distdir)/$$docdir"; \
+ fi; \
+ echo "$(INSTALL_DATA) $$d$$doc $(distdir)/$$doc"; \
+ $(INSTALL_DATA) "$$d$$doc" "$(distdir)/$$doc"; \
+ done
+
+dist-doc-figs: $(_DOC_SRC_FIGURES)
+ @list='$(_DOC_C_FIGURES) $(_DOC_LC_FIGURES)'; \
+ for fig in $$list; do \
+ if test -f "$$fig"; then d=; else d="$(srcdir)/"; fi; \
+ if test -f "$$d$$fig"; then \
+ figdir=`echo $$fig | sed -e 's/^\(.*\/\).*/\1/' -e '/\//!s/.*//'`; \
+ if ! test -d "$(distdir)/$$figdir"; then \
+ echo "$(mkinstalldirs) $(distdir)/$$figdir"; \
+ $(mkinstalldirs) "$(distdir)/$$figdir"; \
+ fi; \
+ echo "$(INSTALL_DATA) $$d$$fig $(distdir)/$$fig"; \
+ $(INSTALL_DATA) "$$d$$fig" "$(distdir)/$$fig"; \
+ fi; \
+ done;
+
+dist-doc-omf:
+ @if test -f "$(_DOC_OMF_IN)"; then d=; else d="$(srcdir)/"; fi; \
+ echo "$(INSTALL_DATA) $$d$(_DOC_OMF_IN) $(distdir)/$(notdir $(_DOC_OMF_IN))"; \
+ $(INSTALL_DATA) "$$d$(_DOC_OMF_IN)" "$(distdir)/$(notdir $(_DOC_OMF_IN))"
+
+dist-doc-dsk:
+ @if test -f "$(_DOC_DSK_IN)"; then d=; else d="$(srcdir)/"; fi; \
+ echo "$(INSTALL_DATA) $$d$(_DOC_DSK_IN) $(distdir)/$(notdir $(_DOC_DSK_IN))"; \
+ $(INSTALL_DATA) "$$d$(_DOC_DSK_IN)" "$(distdir)/$(notdir $(_DOC_DSK_IN))"
+
+################################################################################
+
+.PHONY: check-doc-docs check-doc-omf
+check: \
+ $(if $(DOC_MODULE),check-doc-docs) \
+ $(if $(DOC_ID),check-doc-pages) \
+ $(if $(_DOC_OMF_IN),check-doc-omf)
+
+check-doc-docs: $(_DOC_C_DOCS) $(_DOC_LC_DOCS)
+ @for lc in C $(_DOC_REAL_LINGUAS); do \
+ if test -f "$$lc"; \
+ then d=; \
+ xmlpath="$$lc"; \
+ else \
+ d="$(srcdir)/"; \
+ xmlpath="$$lc:$(srcdir)/$$lc"; \
+ fi; \
+ echo "xmllint --noout --noent --path $$xmlpath --xinclude --postvalid $$d$$lc/$(DOC_MODULE).xml"; \
+ xmllint --noout --noent --path "$$xmlpath" --xinclude --postvalid "$$d$$lc/$(DOC_MODULE).xml"; \
+ done
+
+check-doc-pages: $(_DOC_C_PAGES) $(_DOC_LC_PAGES)
+ for lc in C $(_DOC_REAL_LINGUAS); do \
+ if test -f "$$lc"; \
+ then d=; \
+ xmlpath="$$lc"; \
+ else \
+ d="$(srcdir)/"; \
+ xmlpath="$$lc:$(srcdir)/$$lc"; \
+ fi; \
+ for page in $(DOC_PAGES); do \
+ echo "xmllint --noout --noent --path $$xmlpath --xinclude --relaxng $(_malrng) $$d$$lc/$$page"; \
+ xmllint --noout --noent --path "$$xmlpath" --xinclude --relaxng "$(_malrng)" "$$d$$lc/$$page"; \
+ done; \
+ done
+
+check-doc-omf: $(_DOC_OMF_ALL)
+ @list='$(_DOC_OMF_ALL)'; for omf in $$list; do \
+ echo "xmllint --noout --xinclude --dtdvalid 'http://scrollkeeper.sourceforge.net/dtds/scrollkeeper-omf-1.0/scrollkeeper-omf.dtd' $$omf"; \
+ xmllint --noout --xinclude --dtdvalid 'http://scrollkeeper.sourceforge.net/dtds/scrollkeeper-omf-1.0/scrollkeeper-omf.dtd' $$omf; \
+ done
+
+################################################################################
+
+.PHONY: install-doc-docs install-doc-html install-doc-figs install-doc-omf install-doc-dsk
+
+install-data-local: \
+ $(if $(DOC_MODULE)$(DOC_ID),install-doc-docs) \
+ $(if $(_DOC_HTML_ALL),install-doc-html) \
+ $(if $(_DOC_C_FIGURES),install-doc-figs) \
+ $(if $(_DOC_OMF_IN),install-doc-omf)
+# $(if $(_DOC_DSK_IN),install-doc-dsk)
+
+install-doc-docs:
+ @for lc in C $(_DOC_REAL_LINGUAS); do \
+ echo "$(mkinstalldirs) $(DESTDIR)$(HELP_DIR)/$(_doc_install_dir)/$$lc"; \
+ $(mkinstalldirs) $(DESTDIR)$(HELP_DIR)/$(_doc_install_dir)/$$lc; \
+ done
+ @list='$(_DOC_C_DOCS) $(_DOC_LC_DOCS)'; for doc in $$list; do \
+ if test -f "$$doc"; then d=; else d="$(srcdir)/"; fi; \
+ docdir="$$lc/"`echo $$doc | sed -e 's/^\(.*\/\).*/\1/' -e '/\//!s/.*//'`; \
+ docdir="$(DESTDIR)$(HELP_DIR)/$(_doc_install_dir)/$$docdir"; \
+ if ! test -d "$$docdir"; then \
+ echo "$(mkinstalldirs) $$docdir"; \
+ $(mkinstalldirs) "$$docdir"; \
+ fi; \
+ echo "$(INSTALL_DATA) $$d$$doc $(DESTDIR)$(HELP_DIR)/$(_doc_install_dir)/$$doc"; \
+ $(INSTALL_DATA) $$d$$doc $(DESTDIR)$(HELP_DIR)/$(_doc_install_dir)/$$doc; \
+ done
+
+install-doc-figs:
+ @list='$(patsubst C/%,%,$(_DOC_C_FIGURES))'; for fig in $$list; do \
+ for lc in C $(_DOC_REAL_LINGUAS); do \
+ figsymlink=false; \
+ if test -f "$$lc/$$fig"; then \
+ figfile="$$lc/$$fig"; \
+ elif test -f "$(srcdir)/$$lc/$$fig"; then \
+ figfile="$(srcdir)/$$lc/$$fig"; \
+ else \
+ figsymlink=true; \
+ fi; \
+ figdir="$$lc/"`echo $$fig | sed -e 's/^\(.*\/\).*/\1/' -e '/\//!s/.*//'`; \
+ figdir="$(DESTDIR)$(HELP_DIR)/$(_doc_install_dir)/$$figdir"; \
+ if ! test -d "$$figdir"; then \
+ echo "$(mkinstalldirs) $$figdir"; \
+ $(mkinstalldirs) "$$figdir"; \
+ fi; \
+ figbase=`echo $$fig | sed -e 's/^.*\///'`; \
+ if $$figsymlink; then \
+ echo "cd $$figdir && $(LN_S) -f ../../C/$$fig $$figbase"; \
+ ( cd "$$figdir" && $(LN_S) -f "../../C/$$fig" "$$figbase" ); \
+ else \
+ echo "$(INSTALL_DATA) $$figfile $$figdir$$figbase"; \
+ $(INSTALL_DATA) "$$figfile" "$$figdir$$figbase"; \
+ fi; \
+ done; \
+ done
+
+install-doc-html:
+ echo install-html
+
+install-doc-omf:
+ $(mkinstalldirs) $(DESTDIR)$(OMF_DIR)/$(_doc_install_dir)
+ @list='$(_DOC_OMF_ALL)'; for omf in $$list; do \
+ echo "$(INSTALL_DATA) $$omf $(DESTDIR)$(OMF_DIR)/$(_doc_install_dir)/$$omf"; \
+ $(INSTALL_DATA) $$omf $(DESTDIR)$(OMF_DIR)/$(_doc_install_dir)/$$omf; \
+ done
+ @if test "x$(_ENABLE_SK)" = "xtrue"; then \
+ echo "scrollkeeper-update -p $(DESTDIR)$(_sklocalstatedir) -o $(DESTDIR)$(OMF_DIR)/$(_doc_install_dir)"; \
+ scrollkeeper-update -p "$(DESTDIR)$(_sklocalstatedir)" -o "$(DESTDIR)$(OMF_DIR)/$(_doc_install_dir)"; \
+ fi;
+
+install-doc-dsk:
+ echo install-dsk
+
+################################################################################
+
+.PHONY: uninstall-doc-docs uninstall-doc-html uninstall-doc-figs uninstall-doc-omf uninstall-doc-dsk
+uninstall-local: \
+ $(if $(DOC_MODULE)$(DOC_ID),uninstall-doc-docs) \
+ $(if $(_DOC_HTML_ALL),uninstall-doc-html) \
+ $(if $(_DOC_C_FIGURES),uninstall-doc-figs) \
+ $(if $(_DOC_OMF_IN),uninstall-doc-omf)
+# $(if $(_DOC_DSK_IN),uninstall-doc-dsk)
+
+uninstall-doc-docs:
+ @list='$(_DOC_C_DOCS) $(_DOC_LC_DOCS)'; for doc in $$list; do \
+ echo " rm -f $(DESTDIR)$(HELP_DIR)/$(_doc_install_dir)/$$doc"; \
+ rm -f "$(DESTDIR)$(HELP_DIR)/$(_doc_install_dir)/$$doc"; \
+ done
+
+uninstall-doc-figs:
+ @list='$(_DOC_C_FIGURES) $(_DOC_LC_FIGURES)'; for fig in $$list; do \
+ echo "rm -f $(DESTDIR)$(HELP_DIR)/$(_doc_install_dir)/$$fig"; \
+ rm -f "$(DESTDIR)$(HELP_DIR)/$(_doc_install_dir)/$$fig"; \
+ done;
+
+uninstall-doc-omf:
+ @list='$(_DOC_OMF_ALL)'; for omf in $$list; do \
+ if test "x$(_ENABLE_SK)" = "xtrue"; then \
+ echo "scrollkeeper-uninstall -p $(_sklocalstatedir) $(DESTDIR)$(OMF_DIR)/$(_doc_install_dir)/$$omf"; \
+ scrollkeeper-uninstall -p "$(_sklocalstatedir)" "$(DESTDIR)$(OMF_DIR)/$(_doc_install_dir)/$$omf"; \
+ fi; \
+ echo "rm -f $(DESTDIR)$(OMF_DIR)/$(_doc_install_dir)/$$omf"; \
+ rm -f "$(DESTDIR)$(OMF_DIR)/$(_doc_install_dir)/$$omf"; \
+ done
+dist-hook: doc-dist-hook
+
+-include $(top_srcdir)/git.mk
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/profiles/help/da/da.po b/profiles/help/da/da.po
new file mode 100644
index 0000000..e0b61d0
--- /dev/null
+++ b/profiles/help/da/da.po
@@ -0,0 +1,603 @@
+# Danish translation for mate-media.
+# Copyright (C) 2010 mate-media's COPYRIGHT HOLDER
+# This file is distributed under the same license as the mate-media package.
+# Anders Jenbo <[email protected]>, 2010.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: mate-media mate-2-30\n"
+"POT-Creation-Date: 2010-09-20 00:00+0200\n"
+"PO-Revision-Date: 2010-09-17 01:20+0100\n"
+"Last-Translator: Anders Jenbo <[email protected]>\n"
+"Language-Team: Danish <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Poedit-Language: Danish\n"
+
+#: ../C/legal.xml:2(para)
+msgid ""
+"Permission is granted to copy, distribute and/or modify this document under "
+"the terms of the GNU Free Documentation License (GFDL), Version 1.1 or any "
+"later version published by the Free Software Foundation with no Invariant "
+"Sections, no Front-Cover Texts, and no Back-Cover Texts. You can find a copy "
+"of the GFDL at this <ulink type=\"help\" url=\"ghelp:fdl\">link</ulink> or "
+"in the file COPYING-DOCS distributed with this manual."
+msgstr ""
+"Tilladelse er givet til at kopiere, distribuere og/eller ændre dette "
+"dokument under betingelserne for GNU Free Documentation License (GFDL), "
+"version 1.1 eller andre senere versioner udgivet af Free Software Foundation "
+"med ikke indholdte sektioner, ingen frontomslagstekster, og ingen "
+"bagsideomslagstekster. Du kan finde en kopi af GFDL her <ulink type=\"help\" "
+"url=\"ghelp:fdl\">link</ulink> eller i filen COPYING-DOCS der er "
+"distribueret med denne manual."
+
+#: ../C/legal.xml:12(para)
+msgid ""
+"This manual is part of a collection of MATE manuals distributed under the "
+"GFDL. If you want to distribute this manual separately from the collection, "
+"you can do so by adding a copy of the license to the manual, as described in "
+"section 6 of the license."
+msgstr ""
+"Denne manual er en del af MATE-manualsamlingen distribueret under GFDL. "
+"Hvis du vil distribuere denne manual separat fra denne samling, kan du gøre "
+"det ved at tilføje en kopi af licensen til manualen, som beskrevet i sektion "
+"6 af licensen."
+
+#: ../C/legal.xml:19(para)
+msgid ""
+"Many of the names used by companies to distinguish their products and "
+"services are claimed as trademarks. Where those names appear in any MATE "
+"documentation, and the members of the MATE Documentation Project are made "
+"aware of those trademarks, then the names are in capital letters or initial "
+"capital letters."
+msgstr ""
+"Mange af navnene brugt af firmaer til at skelne deres produkter og tjenester "
+"er betegnet som mærkevarer. Der hvor de navne optræder i en MATE-"
+"dokumentation, og medlemmerne af MATE-dokumentationsprojektet er blevet "
+"gjort opmærksomme på disse varemærker, så er navnene skrevet med store "
+"bogstaver eller store forbogstaver."
+
+#: ../C/legal.xml:35(para)
+msgid ""
+"DOCUMENT IS PROVIDED ON AN \"AS IS\" BASIS, WITHOUT WARRANTY OF ANY KIND, "
+"EITHER EXPRESSED OR IMPLIED, INCLUDING, WITHOUT LIMITATION, WARRANTIES THAT "
+"THE DOCUMENT OR MODIFIED VERSION OF THE DOCUMENT IS FREE OF DEFECTS "
+"MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE OR NON-INFRINGING. THE ENTIRE "
+"RISK AS TO THE QUALITY, ACCURACY, AND PERFORMANCE OF THE DOCUMENT OR "
+"MODIFIED VERSION OF THE DOCUMENT IS WITH YOU. SHOULD ANY DOCUMENT OR "
+"MODIFIED VERSION PROVE DEFECTIVE IN ANY RESPECT, YOU (NOT THE INITIAL "
+"WRITER, AUTHOR OR ANY CONTRIBUTOR) ASSUME THE COST OF ANY NECESSARY "
+"SERVICING, REPAIR OR CORRECTION. THIS DISCLAIMER OF WARRANTY CONSTITUTES AN "
+"ESSENTIAL PART OF THIS LICENSE. NO USE OF ANY DOCUMENT OR MODIFIED VERSION "
+"OF THE DOCUMENT IS AUTHORIZED HEREUNDER EXCEPT UNDER THIS DISCLAIMER; AND "
+"UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY, WHETHER IN TORT (INCLUDING "
+"NEGLIGENCE), CONTRACT, OR OTHERWISE, SHALL THE AUTHOR, INITIAL WRITER, ANY "
+"CONTRIBUTOR, OR ANY DISTRIBUTOR OF THE DOCUMENT OR MODIFIED VERSION OF THE "
+"DOCUMENT, OR ANY SUPPLIER OF ANY OF SUCH PARTIES, BE LIABLE TO ANY PERSON "
+"FOR ANY DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF "
+"ANY CHARACTER INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF GOODWILL, "
+"WORK STOPPAGE, COMPUTER FAILURE OR MALFUNCTION, OR ANY AND ALL OTHER DAMAGES "
+"OR LOSSES ARISING OUT OF OR RELATING TO USE OF THE DOCUMENT AND MODIFIED "
+"VERSIONS OF THE DOCUMENT, EVEN IF SUCH PARTY SHALL HAVE BEEN INFORMED OF THE "
+"POSSIBILITY OF SUCH DAMAGES."
+msgstr ""
+"DETTE DOKUMENT GØRES TILGÆNGELIGT SÅDAN SOM DET ER, UDEN NOGEN FORM FOR "
+"GARANTI, HVERKEN UDTALT ELLER ANTYDET, DERIBLANDT, UDEN BEGRÆNSNINGER, "
+"GARANTIER OM AT DOKUMENTET ELLER ÆNDREDE VERSIONER AF DOKUMENTET ER FRIT FOR "
+"DEFEKTER, PASSENDE TIL ET BESTEMT FORMÅL ELLER IKKE-KRÆNKENDE. DU HÆFTER "
+"SELV FOR HELE RISIKOEN VEDRØRENDE KVALITET, KORREKTHED OG YDELSE FOR "
+"DOKUMENTET ELLER ÆNDREDE VERSIONER AF DOKUMENTET. SKULLE ET DOKUMENT, ELLER "
+"EN ÆNDRET VERSION AF ET DOKUMENT VISE SIG AT VÆRE DEFEKT PÅ EN HVILKEN SOM "
+"HELST MÅDE, HÆFTER DU FOR BETALING FOR EVENTUEL NØDVENDIG SERVICE, "
+"REPARATION ELLER KORREKTION (OG IKKE HVERKEN DEN OPRINDELIGE FORFATTER, "
+"SKRIBENT ELLER NOGEN ANDEN BIDRAGSYDER). DENNE ERKLÆRING OM GARANTIFORBEHOLD "
+"ER EN ESSENTIEL DEL AF DENNE LICENS. INGEN BRUG AF NOGET DOKUMENT ELLER "
+"ÆNDRET VERSION AF DOKUMENTET ER AUTORISERET HERUNDER BORTSET FRA DENNE "
+"FORBEHOLDSERKLÆRING; OG UNDER INGEN OMSTÆNDIGHEDER OG UNDER INGEN JURIDISK "
+"TEORI, UANSET OM DET ER EN BEVIDSTE SKADENDE HANDLING (INKLUSIV "
+"UFORSVARLIGHED) ELLER PÅ HVILKEN SOM HELST ANDEN MÅDE, KAN FORFATTEREN, "
+"SKRIBENT, BIDRAGYDERE, DISTRIBUTØRER ELLER FORSYNER AF DETTE DOKUMENT ELLER "
+"MODIFICEREDE VERSIONER GØRES ANSVARLIG OVERFOR NOGEN PERSON FOR NOGEN "
+"DIREKTE, INDIREKTE, SPECIEL, TILFÆLDIG ELLER FØLGENDE SKADE PÅFØRT NOGEN "
+"INKLUSIV, UDEN BEGRÆNSNING, SKADE SOM FØLGE AF TAB AF RYGTE, ARBEJDSSTOP, "
+"COMPUTER-FEJL ELLER -SVIGT, ELLER ENHVER ANDEN FORM FOR SKADE ELLER TAB SOM "
+"ER OPSTÅET I FORBINDELSE MED BRUG AF DETTE DOKUMENT ELLER MODIFICEREDE "
+"VERSIONER HERAF, SELV HVIS EN SÅDAN PART HAR VÆRET INFORMERET OM MULIGHEDEN "
+"FOR SÅDANNE SKADER."
+
+#: ../C/legal.xml:28(para)
+msgid ""
+"DOCUMENT AND MODIFIED VERSIONS OF THE DOCUMENT ARE PROVIDED UNDER THE TERMS "
+"OF THE GNU FREE DOCUMENTATION LICENSE WITH THE FURTHER UNDERSTANDING THAT: "
+"<placeholder-1/>"
+msgstr ""
+"DETTE DOKUMENT OG MODIFICEREDE VERSIONER GØRES TILGÆNGELIGT UNDER "
+"BETINGELSERNE I GNU FREE DOKUMENTATION LICENS UNDER DEN FORUDSÆTNING AT: "
+"<placeholder-1/>"
+
+#. When image changes, this message will be marked fuzzy or untranslated for you.
+#. It doesn't matter what you translate it to: it's not used at all.
+#: ../C/mate-audio-profiles.xml:161(None)
+msgid ""
+"@@image: 'figures/mate-audio-profiles-profiles-window.png'; "
+"md5=08874167dcd48db9a9c2e9623706bb1b"
+msgstr ""
+"@@image: 'figures/mate-audio-profiles-profiles-window.png'; "
+"md5=08874167dcd48db9a9c2e9623706bb1b"
+
+#. When image changes, this message will be marked fuzzy or untranslated for you.
+#. It doesn't matter what you translate it to: it's not used at all.
+#: ../C/mate-audio-profiles.xml:194(None)
+msgid ""
+"@@image: 'figures/mate-audio-profiles-profile-window.png'; "
+"md5=21171454e8a63a62c751ce8fc3a8d11e"
+msgstr ""
+"@@image: 'figures/mate-audio-profiles-profile-window.png'; "
+"md5=21171454e8a63a62c751ce8fc3a8d11e"
+
+#: ../C/mate-audio-profiles.xml:26(title)
+msgid "<application>MATE Audio Profiles</application> Manual"
+msgstr "Manual til <application>MATE-lydprofiler</application>"
+
+#: ../C/mate-audio-profiles.xml:28(para)
+msgid ""
+"<application>MATE Audio Profiles</application> is a set of audio encoding "
+"configurations for GStreamer based applications."
+msgstr ""
+"<application>MATE-lydprofiler</application> er et sæt af lyd "
+"enkodningskonfigurationer for programmer baseret på GStreamer."
+
+#: ../C/mate-audio-profiles.xml:33(year)
+msgid "2008-2009"
+msgstr "2008-2009"
+
+#: ../C/mate-audio-profiles.xml:34(holder)
+#: ../C/mate-audio-profiles.xml:39(publishername)
+#: ../C/mate-audio-profiles.xml:80(para)
+#: ../C/mate-audio-profiles.xml:88(para)
+msgid "MATE Documentation Project"
+msgstr "MATE-dokumentationsprojektet"
+
+#: ../C/mate-audio-profiles.xml:49(firstname)
+msgid "Marc-Andre"
+msgstr "Marc-Andre"
+
+#: ../C/mate-audio-profiles.xml:50(surname)
+msgid "Lureau"
+msgstr "Lureau"
+
+#: ../C/mate-audio-profiles.xml:52(orgname)
+msgid "MATE Project"
+msgstr "MATE-projekt"
+
+#: ../C/mate-audio-profiles.xml:53(email)
+
+#: ../C/mate-audio-profiles.xml:74(revnumber)
+msgid "Audio Profiles Manual V2.27.0"
+msgstr "Manual til Lydprofiler version 2.27.0"
+
+#: ../C/mate-audio-profiles.xml:75(date)
+msgid "June 2009"
+msgstr "Juli 2009"
+
+#: ../C/mate-audio-profiles.xml:77(para)
+msgid "Fill some blanks, add screenshots."
+msgstr "Udfyld nogle tomme, tilføj skærmbilleder."
+
+#: ../C/mate-audio-profiles.xml:78(para)
+msgid "Release with MATE Media 2.27.3"
+msgstr "Udgivelse sammen med MATE Media 2.27.3"
+
+#: ../C/mate-audio-profiles.xml:79(para)
+#: ../C/mate-audio-profiles.xml:87(para)
+msgid "Marc-Andre Lureau"
+msgstr "Marc-Andre Lureau"
+
+#: ../C/mate-audio-profiles.xml:84(revnumber)
+msgid "Audio Profiles Manual V0.1"
+msgstr "Manual til Lydprofiler version 0.1"
+
+#: ../C/mate-audio-profiles.xml:85(date)
+msgid "December 2008"
+msgstr "December 2008"
+
+#: ../C/mate-audio-profiles.xml:93(releaseinfo)
+msgid "This manual describes version 2.27.3 of MATE Audio Profiles."
+msgstr "Denne manual beskriver version 2.27.3 af MATE-lydprofiler."
+
+#: ../C/mate-audio-profiles.xml:96(title)
+msgid "Feedback"
+msgstr "Tilbagemelding"
+
+#: ../C/mate-audio-profiles.xml:97(para)
+msgid ""
+"To report a bug or make a suggestion regarding the <application>MATE Audio "
+"Profiles</application> application or this manual, follow the directions in "
+"the <ulink url=\"ghelp:user-guide?feedback-bugs\" type=\"help\">Feedback "
+"section of the MATE User Guide</ulink>."
+msgstr ""
+"For at rapportere fejl eller foreslå forbedringer vedrørende programmet "
+"<application>MATE-lydprofiler</application> eller denne manual, skal du "
+"følge instruktionerne på siden for <ulink url=\"ghelp:user-guide?feedback-"
+"bugs\" type=\"help\">MATE-tilbagemeldinger</ulink>."
+
+#: ../C/mate-audio-profiles.xml:106(primary)
+#: ../C/mate-audio-profiles.xml:0(application)
+msgid "MATE Audio Profiles"
+msgstr "MATE-lydprofiler"
+
+#: ../C/mate-audio-profiles.xml:113(title)
+msgid "Introduction"
+msgstr "Indledning"
+
+#: ../C/mate-audio-profiles.xml:114(para)
+msgid ""
+"<application>MATE Audio Profiles</application> let you select and modify a "
+"list of pre-defined encoding formats. By default, <application>MATE Audio "
+"Profiles</application> provides the following audio format:"
+msgstr ""
+"<application>MATE-lydprofiler</application> lader dig vælge og ændre en "
+"liste af prædefinerede formater til enkodning. Som standard, har "
+"<application>MATE-lydprofiler</application> følgende lydformater:"
+
+#: ../C/mate-audio-profiles.xml:118(para)
+msgid "AAC-MP4 - The new standard of lossy compression."
+msgstr "AAC-MP4 - Den nye standard for komprimering med tab."
+
+#: ../C/mate-audio-profiles.xml:121(para)
+msgid "Ogg Vorbis - Xiph.Org lossy compression."
+msgstr "Ogg Vorbis - Xiph.Org komprimering med tab."
+
+#: ../C/mate-audio-profiles.xml:124(para)
+msgid "Speex - Xiph.Org lossy compression optimized for voice."
+msgstr "Speex - Xiph.Org komprimering af stemme med tab."
+
+#: ../C/mate-audio-profiles.xml:127(para)
+msgid "FLAC - Xiph.Org lossless audio compression."
+msgstr "FLAC - Xiph.Org komprimeret lyd uden tab."
+
+#: ../C/mate-audio-profiles.xml:130(para)
+msgid "MP3 - The popular lossy compression format."
+msgstr "MP3 - Det populære komprimerings format med tab."
+
+#: ../C/mate-audio-profiles.xml:133(para)
+msgid "MP2 - MPEG-1 Audio Layer II, largely supported."
+msgstr "MP2 - MPEG-1 Audio Layer II, stort set understøttet."
+
+#: ../C/mate-audio-profiles.xml:136(para)
+msgid "WAV - Lossless."
+msgstr "WAV - Uden tab."
+
+#: ../C/mate-audio-profiles.xml:141(para)
+msgid "Some format may be illegal in your jurisdiction."
+msgstr "Nogle formater kan være ulovlige under den lokale lovgivning."
+
+#: ../C/mate-audio-profiles.xml:146(title)
+msgid "Usage"
+msgstr "Brug"
+
+#: ../C/mate-audio-profiles.xml:147(para)
+msgid ""
+"Use <application>MATE Audio Profiles</application> to modify a list of pre-"
+"defined encoding formats."
+msgstr ""
+"Brug <application>MATE-Lydprofiler</application> til at modificere listen "
+"af prædefineret formater til enkodning."
+
+#: ../C/mate-audio-profiles.xml:150(title)
+msgid "Profile selection dialog"
+msgstr "Dialog til profilvælger"
+
+#: ../C/mate-audio-profiles.xml:152(para)
+msgid ""
+"The following window is displayed to modify, add or remove the pre-defined "
+"formats."
+msgstr ""
+"Det følgende vindue vises for at ændre, tilføje eller fjerne de "
+"prædefinerede formater."
+
+#: ../C/mate-audio-profiles.xml:157(title)
+msgid "<application>MATE Audio Profiles</application> Window"
+msgstr "Vinduet til <application>MATE-lydprofiler</application>"
+
+#: ../C/mate-audio-profiles.xml:164(phrase)
+msgid ""
+"Shows <placeholder-1/> main window. Contains list of profiles and "
+"modification options."
+msgstr ""
+"Vis <placeholder-1/> hovdevindue. Indeholder en liste af profiler og "
+"ændringsmuligheder."
+
+#. ==== End of Figure ====
+#: ../C/mate-audio-profiles.xml:172(para)
+msgid ""
+"Select one of the profiles and click \"Edit\" to modify it. The \"Profile "
+"modification window\" will be displayed."
+msgstr ""
+"Vælge en af profilerne og tryk \"Redigér\" for at ændre den. \"Vinduet til "
+"profilredigering\" vil blive vist."
+
+#: ../C/mate-audio-profiles.xml:175(para)
+msgid ""
+"\"Delete\" will remove the currently selected profile from the list of "
+"profiles."
+msgstr "\"Slet\" vil fjerne den valgte profil fra listen af profiler."
+
+#: ../C/mate-audio-profiles.xml:178(para)
+msgid ""
+"To create a new profile, click \"New\". The \"Profile 5~ modification window"
+"\" will be displayed."
+msgstr ""
+"Tryk på \"Ny\", for at oprette en ny profil. Vinduet \"Profil 5~ "
+"redigeringsvindue\" vil blive vist."
+
+#: ../C/mate-audio-profiles.xml:184(title)
+msgid "Profile editing"
+msgstr "Profil redigering"
+
+#: ../C/mate-audio-profiles.xml:186(para)
+msgid ""
+"<application>MATE Audio Profiles</application> let you modify the "
+"parameters of an audio profile."
+msgstr ""
+"<application>MATE-Lydprofiler</application> lader dig ændre parametrene for "
+"en lydprofil."
+
+#: ../C/mate-audio-profiles.xml:190(title)
+msgid "Profile modification window"
+msgstr "Vinduet til profilredigering"
+
+#: ../C/mate-audio-profiles.xml:197(phrase)
+msgid "Shows <placeholder-1/> profile window."
+msgstr "Viser <placeholder-1/> profilevindue."
+
+#: ../C/mate-audio-profiles.xml:206(para)
+msgid "Profile name - user friendly name of the profile."
+msgstr "Profilnavn - brugervenligt navn for profilen."
+
+#: ../C/mate-audio-profiles.xml:209(para)
+msgid "Profile description - long description of this profile."
+msgstr "Profilbeskrivelse - lang beskrivelse for profilen."
+
+#: ../C/mate-audio-profiles.xml:212(para)
+msgid "GStreamer pipeline - the GStreamer encoding pipeline."
+msgstr "GStreamer-datakanal - GStreamer-datakanal til enkodning."
+
+#: ../C/mate-audio-profiles.xml:215(para)
+msgid "File extension - the filename extension associated to this profile."
+msgstr "Filtype - endelsen på filnavnet der associeres med denne profil."
+
+#: ../C/mate-audio-profiles.xml:219(para)
+msgid "Active - whether this profile is listed in client application."
+msgstr "Aktiv - om denne profil optræder i klientprogrammer."
+
+#: ../C/mate-audio-profiles.xml:246(title)
+msgid "About <application>MATE Audio Profiles</application>"
+msgstr "Om <application>MATE-Lydprofiler</application>"
+
+#: ../C/mate-audio-profiles.xml:247(para)
+msgid ""
+"To report a bug or make a suggestion regarding this application or this "
+"manual, follow the directions in the <ulink url=\"ghelp:user-guide?feedback-"
+"bugs\" type=\"help\">Feedback section of the MATE User Guide</ulink>."
+msgstr ""
+"For at rapportere fejl eller foreslå forbedringer vedrørende dette program "
+"eller denne manual, skal du følge instruktionerne på <ulink url=\"ghelp:user-"
+"guide?feedback-bugs\" type=\"help\">MATE-tilbagemeldinger</ulink>."
+
+#: ../C/mate-audio-profiles.xml:253(para)
+msgid ""
+"This program is distributed under the terms of the GNU Library General "
+"Public license as published by the Free Software Foundation; either version "
+"2 of the License, or (at your option) any later version. A <ulink url="
+"\"ghelp:lgpl\" type=\"help\">copy of this license</ulink> is included with "
+"this documentation; another can be found in the file COPYING included with "
+"the source code of this program."
+msgstr ""
+"Dette program distribueres under reglerne for GNU Library General Public "
+"licensen som udgivet af Free Software Foundation; enten version 2 af "
+"licensen, eller (ved dit ønske) en hvilket som helst nyere udgave. En <ulink "
+"url=\"ghelp:lgpl\" type=\"help\">kopi af licensen</ulink> er inkluderet med "
+"denne dokumention; en anden kan fines i filen COPYING der følger med "
+"kildekoden til dette program."
+
+#. Put one translator per line, in the form of NAME <EMAIL>, YEAR1, YEAR2
+#: ../C/mate-audio-profiles.xml:0(None)
+msgid "translator-credits"
+msgstr ""
+"Anders Jenbo <[email protected]>, 2010Nicky <[email protected]>, 2010\n"
+"\n"
+"Dansk-gruppen <[email protected]>\n"
+"Mere info: http://www.dansk-gruppen.dk"
+
+#~ msgid "GStreamer Properties Manual V2.5"
+#~ msgstr "Manual til GStreamer-egenskaber version 2.5"
+
+#~ msgid "2003"
+#~ msgstr "2003"
+
+#~ msgid "Christian Fredrik Kalager Schaller"
+#~ msgstr "Christian Fredrik Kalager Schaller"
+
+#~ msgid ""
+#~ "GStreamer Properties lets you configure parameters related to the "
+#~ "hardware and multimedia"
+#~ msgstr ""
+#~ "GStreamer-egenskaber lader dig konfigurere indstillinger i forbindelse "
+#~ "med hardware og multimedia"
+
+#~ msgid ""
+#~ "UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY, WHETHER IN TORT "
+#~ "(INCLUDING NEGLIGENCE), CONTRACT, OR OTHERWISE, SHALL THE AUTHOR, INITIAL "
+#~ "WRITER, ANY CONTRIBUTOR, OR ANY DISTRIBUTOR OF THE DOCUMENT OR MODIFIED "
+#~ "VERSION OF THE DOCUMENT, OR ANY SUPPLIER OF ANY OF SUCH PARTIES, BE "
+#~ "LIABLE TO ANY PERSON FOR ANY DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR "
+#~ "CONSEQUENTIAL DAMAGES OF ANY CHARACTER INCLUDING, WITHOUT LIMITATION, "
+#~ "DAMAGES FOR LOSS OF GOODWILL, WORK STOPPAGE, COMPUTER FAILURE OR "
+#~ "MALFUNCTION, OR ANY AND ALL OTHER DAMAGES OR LOSSES ARISING OUT OF OR "
+#~ "RELATING TO USE OF THE DOCUMENT AND MODIFIED VERSIONS OF THE DOCUMENT, "
+#~ "EVEN IF SUCH PARTY SHALL HAVE BEEN INFORMED OF THE POSSIBILITY OF SUCH "
+#~ "DAMAGES."
+#~ msgstr ""
+#~ "UNDER INGEN OMSTÆNDIGHEDER OG UNDER INGEN JURIDISK TEORI, UANSET OM DET "
+#~ "ER EN BEVIDSTE SKADENDE HANDLING (INKLUSIV UFORSVARLIGHED) ELLER PÅ "
+#~ "HVILKEN SOM HELST ANDEN MÅDE, KAN FORFATTEREN, SKRIBENT, BIDRAGYDERE, "
+#~ "DISTRIBUTØRER ELLER FORSYNER AF DETTE DOKUMENT ELLER MODIFICEREDE "
+#~ "VERSIONER GØRES ANSVARLIG OVERFOR NOGEN PERSON FOR NOGEN DIREKTE, "
+#~ "INDIREKTE, SPECIEL, TILFÆLDIG ELLER FØLGENDE SKADE PÅFØRT NOGEN INKLUSIV, "
+#~ "UDEN BEGRÆNSNING, SKADE SOM FØLGE AF TAB AF RYGTE, ARBEJDSSTOP, COMPUTER-"
+#~ "FEJL ELLER -SVIGT, ELLER ENHVER ANDEN FORM FOR SKADE ELLER TAB SOM ER "
+#~ "OPSTÅET I FORBINDELSE MED BRUG AF DETTE DOKUMENT ELLER MODIFICEREDE "
+#~ "VERSIONER HERAF, SELV HVIS EN SÅDAN PART HAR VÆRET INFORMERET OM "
+#~ "MULIGHEDEN FOR SÅDANNE SKADER."
+
+#~ msgid "Christian Fredrik"
+#~ msgstr "Christian Fredrik"
+
+#~ msgid "Kalager Schaller"
+#~ msgstr "Kalager Schaller"
+
+#~ msgid "mate.org"
+#~ msgstr "mate.org"
+
+#~ msgid "GStreamer Properties Manual V2.4"
+#~ msgstr "Manual til GStreamer-egenskaber version 2.4"
+
+#~ msgid "GStreamer Properties Manual V1.0"
+#~ msgstr "Manual til GStreamer-egenskaber version 1.0"
+
+#~ msgid "September 2003"
+#~ msgstr "September 2003"
+
+#~ msgid "GStreamer properties"
+#~ msgstr "GStreamer-egenskaber"
+
+#~ msgid ""
+#~ "The <application>GStreamer Properties</application> application enables "
+#~ "you to configure parameters related to the hardware and multimedia "
+#~ "systems on your system."
+#~ msgstr ""
+#~ "Programmet <application>GStreamer-egenskaber</application> gør dig i "
+#~ "stand til at konfigurere parametre med relation til hardware- og "
+#~ "multimediesystemer på dit system."
+
+#~ msgid ""
+#~ "Only advanced users should normally need this as your OS vendor should be "
+#~ "shipping the system with the correct defaults."
+#~ msgstr ""
+#~ "Normalt vil kun avancerede brugere benytte dette da din styresystems "
+#~ "leverandør bør udlevere systemet med den rigtige standard."
+
+#~ msgid "Getting Started"
+#~ msgstr "Kom godt i gang"
+
+#~ msgid ""
+#~ "You can start <application>GStreamer Properties</application> in the "
+#~ "following ways:"
+#~ msgstr ""
+#~ "Du kan starte <application>GStreamer-egenskaber</application> på følgende "
+#~ "måder:"
+
+#~ msgid "<guimenu>Applications</guimenu> menu"
+#~ msgstr "Menuen <guimenu>Programmer</guimenu>"
+
+#~ msgid ""
+#~ "Choose <menuchoice><guisubmenu>Preferences</"
+#~ "guisubmenu><guimenuitem>Gstreamer Properties</guimenuitem></menuchoice>."
+#~ msgstr ""
+#~ "Vælg <menuchoice><guisubmenu>Indstillinger</"
+#~ "guisubmenu><guimenuitem>GStreamer-egenskaber</guimenuitem></menuchoice>."
+
+#~ msgid "Command line"
+#~ msgstr "Kommandolinje"
+
+#~ msgid ""
+#~ "Type <command>gstreamer-properties</command>, then press <keycap>Return</"
+#~ "keycap>."
+#~ msgstr ""
+#~ "Skriv <command>gstreamer-properties</command>, tryk derefter på "
+#~ "<keycap>Enter</keycap>."
+
+#~ msgid ""
+#~ "When you start <application>GStreamer Properties</application>, the "
+#~ "following window is displayed."
+#~ msgstr ""
+#~ "Når du starter <application>GStreamer-egenskaber</application>, vil du "
+#~ "blive mødt af dette billede:"
+
+#~ msgid "GStreamer Properties Window"
+#~ msgstr "GStreamer-egenskaber vindue"
+
+#~ msgid ""
+#~ "Shows GStreamer Properties main window. Contains menubar, toolbar, drop-"
+#~ "down menus for the input and output audio options."
+#~ msgstr ""
+#~ "Viser GStreamer-egenskabers hovedvindu. Indeholder menulinje, "
+#~ "værktøjslinje, rullemenuer for lydindstillinger til ind- og uddata."
+
+#~ msgid ""
+#~ "The GStreamer properties applet offers four drop down menus spread over "
+#~ "two tabs. There are two drop-menues for audio and two for video. These "
+#~ "choices set the default for most MATE applications for output and input "
+#~ "of Sound and Video."
+#~ msgstr ""
+#~ "Panelprogrammet til GStreamer egenskaber tilbyder fire rullemenuer der "
+#~ "strækker sig over to faner. Der er to rullemenuer for lyd og to for "
+#~ "video. Disse valg indstiller standarden for de fleste MATE-programmers "
+#~ "output og input af lyd og video."
+
+#~ msgid "Understanding the menu options"
+#~ msgstr "Forståelse af menupunkterne"
+
+#~ msgid ""
+#~ "Looking at the screen for setting audio options you notice that the two "
+#~ "sections are called Default Sink and Default Source. These are terms used "
+#~ "in the GStreamer framework that MATE uses to describe where data is sent "
+#~ "and where it comes from. The Default sink is in other words where MATE "
+#~ "apps should output their sound, while Default source is where the sound "
+#~ "comes from."
+#~ msgstr ""
+#~ "Når du ser på skærmen for opsætning af lydindstillinger, vil du lægge "
+#~ "mærke til, at de to dele kaldes standarddatamodtager og standardkilde. "
+#~ "Disse er begreber, der anvendes i GStreamer rammen, Mate bruger til at "
+#~ "beskrive, hvor data sendes, og hvor det kommer fra. Standard kanalen er "
+#~ "med andre ord hvor MATE-programmer skal sende deres lyd, mens Standard "
+#~ "kilde er, hvor lyden kommer fra."
+
+#~ msgid ""
+#~ "The reason you might want to alter these settings is because under Unix "
+#~ "there are many different audio systems and sound server which you might "
+#~ "want to output to. For instance on Linux popular alternatives are the "
+#~ "PulseAudio sound server or ALSA."
+#~ msgstr ""
+#~ "Grunden til at du måske ønsker at ændre disse indstillinger er, at der "
+#~ "under Unix er mange forskellige lydsystemer og lydservere, som du måske "
+#~ "ønsker at sende til. For eksempel er populære alternativer på Linux "
+#~ "PulseAudio eller ALSA."
+
+#~ msgid ""
+#~ "If you wish that your MATE applcations output their sound to the "
+#~ "PulseAudio sound server you set the Default Sink to use PulseAudio. And "
+#~ "if you wish that your MATE applications which has sound recording "
+#~ "capabilities use the ALSA sound system, choose ALSA as the Default Source."
+#~ msgstr ""
+#~ "Hvis du ønsker at dine MATE-programmers sender deres lyd til PulseAudio-"
+#~ "lydserveren, sætter du Standard kanalen til at bruge PulseAudio. Og hvis "
+#~ "du ønsker at dine MATE-programmer, som har lydoptagelsekapacitet, bruger "
+#~ "ALSA-lydsystemet til at optage, vælger du ALSA som Standard kilden."
+
+#~ msgid ""
+#~ "As mentioned elsewhere in this user guide. These setting are meant for as "
+#~ "a tool for advanced users who have specialized need. As an ordinary user, "
+#~ "you should not need to set these as the vendor of your distribution "
+#~ "should have set them to sensible defaults for you."
+#~ msgstr ""
+#~ "Som nævnt andetsteds i denne brugervejledning. Disse indstillinger er "
+#~ "tiltænkt som et redskab til avancerede brugere, der har specialiseret "
+#~ "behov. Som almindelig bruger, bør det ikke være nødvendigt at sætte "
+#~ "disse, da udbyderen af din distribution burde have fastsat dem, til "
+#~ "fornuftige standarder, for dig."
diff --git a/profiles/help/de/de.po b/profiles/help/de/de.po
new file mode 100644
index 0000000..d806a9c
--- /dev/null
+++ b/profiles/help/de/de.po
@@ -0,0 +1,415 @@
+# German translation for mate-media (audio profile manual).
+# Copyright (C) 2009 mate-media's COPYRIGHT HOLDER
+# This file is distributed under the same license as the mate-media package.
+# Mario Blättermann <[email protected]>, 2009.
+# Christian Kirbach <[email protected]>, 2009.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: mate-media master\n"
+"POT-Creation-Date: 2009-11-17 17:44+0000\n"
+"PO-Revision-Date: 2009-11-28 23:57+0100\n"
+"Last-Translator: Christian Kirbach <[email protected]>\n"
+"Language-Team: German <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Poedit-Language: German\n"
+"X-Poedit-Country: GERMANY\n"
+"Report-Msgid-Bugs-To: \n"
+
+#: C/legal.xml:2(para)
+msgid ""
+"Permission is granted to copy, distribute and/or modify this document under "
+"the terms of the GNU Free Documentation License (GFDL), Version 1.1 or any "
+"later version published by the Free Software Foundation with no Invariant "
+"Sections, no Front-Cover Texts, and no Back-Cover Texts. You can find a copy "
+"of the GFDL at this <ulink type=\"help\" url=\"ghelp:fdl\">link</ulink> or "
+"in the file COPYING-DOCS distributed with this manual."
+msgstr ""
+"Das vorliegende Dokument kann gemäß den Bedingungen der GNU Free "
+"Documentation License (GFDL), Version 1.1 oder jeder späteren, von der Free "
+"Software Foundation veröffentlichten Version ohne unveränderbare Abschnitte "
+"sowie ohne Texte auf dem vorderen und hinteren Buchdeckel kopiert, verteilt "
+"und/oder modifiziert werden. Eine Kopie der GFDL finden Sie unter diesem "
+"<ulink type=\"help\" url=\"ghelp:fdl\">Link</ulink> oder in der mit diesem "
+"Handbuch gelieferten Datei COPYING-DOCS."
+
+#: C/legal.xml:12(para)
+msgid ""
+"This manual is part of a collection of MATE manuals distributed under the "
+"GFDL. If you want to distribute this manual separately from the collection, "
+"you can do so by adding a copy of the license to the manual, as described in "
+"section 6 of the license."
+msgstr ""
+"Das vorliegende Handbuch ist Teil einer Reihe von MATE-Handbüchern, die "
+"unter der GFDL verteilt werden. Wenn Sie dieses Handbuch separat verteilen "
+"möchten, können Sie dies tun, indem Sie dem Handbuch eine Kopie der Lizenz, "
+"wie in Abschnitt 6 der Lizenz beschrieben, hinzufügen."
+
+#: C/legal.xml:19(para)
+msgid ""
+"Many of the names used by companies to distinguish their products and "
+"services are claimed as trademarks. Where those names appear in any MATE "
+"documentation, and the members of the MATE Documentation Project are made "
+"aware of those trademarks, then the names are in capital letters or initial "
+"capital letters."
+msgstr ""
+"Bei vielen der von Firmen zur Unterscheidung ihrer Produkte und "
+"Dienstleistungen verwendeten Namen handelt es sich um Marken. An den "
+"Stellen, an denen derartige Namen in einer MATE-Dokumentation vorkommen und "
+"wenn die Mitglieder des MATE-Dokumentationsprojekts über diese Marken "
+"informiert wurden, sind die Namen in Großbuchstaben oder mit großen "
+"Anfangsbuchstaben geschrieben."
+
+#: C/legal.xml:35(para)
+msgid ""
+"DOCUMENT IS PROVIDED ON AN \"AS IS\" BASIS, WITHOUT WARRANTY OF ANY KIND, "
+"EITHER EXPRESSED OR IMPLIED, INCLUDING, WITHOUT LIMITATION, WARRANTIES THAT "
+"THE DOCUMENT OR MODIFIED VERSION OF THE DOCUMENT IS FREE OF DEFECTS "
+"MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE OR NON-INFRINGING. THE ENTIRE "
+"RISK AS TO THE QUALITY, ACCURACY, AND PERFORMANCE OF THE DOCUMENT OR "
+"MODIFIED VERSION OF THE DOCUMENT IS WITH YOU. SHOULD ANY DOCUMENT OR "
+"MODIFIED VERSION PROVE DEFECTIVE IN ANY RESPECT, YOU (NOT THE INITIAL "
+"WRITER, AUTHOR OR ANY CONTRIBUTOR) ASSUME THE COST OF ANY NECESSARY "
+"SERVICING, REPAIR OR CORRECTION. THIS DISCLAIMER OF WARRANTY CONSTITUTES AN "
+"ESSENTIAL PART OF THIS LICENSE. NO USE OF ANY DOCUMENT OR MODIFIED VERSION "
+"OF THE DOCUMENT IS AUTHORIZED HEREUNDER EXCEPT UNDER THIS DISCLAIMER; AND "
+"UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY, WHETHER IN TORT (INCLUDING "
+"NEGLIGENCE), CONTRACT, OR OTHERWISE, SHALL THE AUTHOR, INITIAL WRITER, ANY "
+"CONTRIBUTOR, OR ANY DISTRIBUTOR OF THE DOCUMENT OR MODIFIED VERSION OF THE "
+"DOCUMENT, OR ANY SUPPLIER OF ANY OF SUCH PARTIES, BE LIABLE TO ANY PERSON "
+"FOR ANY DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF "
+"ANY CHARACTER INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF GOODWILL, "
+"WORK STOPPAGE, COMPUTER FAILURE OR MALFUNCTION, OR ANY AND ALL OTHER DAMAGES "
+"OR LOSSES ARISING OUT OF OR RELATING TO USE OF THE DOCUMENT AND MODIFIED "
+"VERSIONS OF THE DOCUMENT, EVEN IF SUCH PARTY SHALL HAVE BEEN INFORMED OF THE "
+"POSSIBILITY OF SUCH DAMAGES."
+msgstr ""
+"DAS DOKUMENT WIRD »WIE VORLIEGEND« GELIEFERT, OHNE JEGLICHE GEWÄHRLEISTUNG, "
+"WEDER AUSDRÜCKLICH NOCH STILLSCHWEIGEND, EINSCHLIESSLICH, ABER NICHT "
+"BESCHRÄNKT AUF, GEWÄHRLEISTUNGEN, DASS DAS DOKUMENT ODER EINE MODIFIZIERTE "
+"VERSION DES DOKUMENTS FREI VON HANDELSÜBLICHEN FEHLERN UND FÜR EINEN "
+"BESTIMMTEN ZWECK GEEIGNET IST UND KEINE RECHTE DRITTER VERLETZT. JEGLICHES "
+"RISIKO IN BEZUG AUF DIE QUALITÄT, GENAUIGKEIT UND LEISTUNG DES DOKUMENTS "
+"ODER EINER MODIFIZIERTEN VERSION DES DOKUMENTS TRAGEN SIE. SOLLTE SICH EIN "
+"DOKUMENT ODER EINE MODIFIZIERTE VERSION DAVON IN IRGENDEINER WEISE ALS "
+"FEHLERHAFT ERWEISEN, TRAGEN SIE (NICHT DER URSPRÜNGLICHE VERFASSER, AUTOR "
+"ODER EIN MITWIRKENDER) DIE KOSTEN FÜR JEGLICHE ERFORDERLICHE SERVICE-, "
+"REPARATUR- UND KORREKTURMASSNAHMEN: DIESE BESCHRÄNKUNG DER GEWÄHRLEISTUNG "
+"IST WESENTLICHER BESTANDTEIL DIESER LIZENZ. JEDE VERWENDUNG EINES DOKUMENTS "
+"ODER EINER MODIFIZIERTEN VERSION DES DOKUMENTS UNTERLIEGT DIESER "
+"BESCHRÄNKUNG; UND"
+
+#: C/legal.xml:28(para)
+msgid ""
+"DOCUMENT AND MODIFIED VERSIONS OF THE DOCUMENT ARE PROVIDED UNDER THE TERMS "
+"OF THE GNU FREE DOCUMENTATION LICENSE WITH THE FURTHER UNDERSTANDING THAT: "
+"<placeholder-1/>"
+msgstr ""
+"DAS DOKUMENT UND MODIFIZIERTE VERSIONEN DES DOKUMENTS WERDEN GEMÄSS DEN "
+"BEDINGUNGEN DER GNU FREE DOCUMENTATION LICENSE MIT DER FOLGENDEN "
+"VEREINBARUNG BEREITGESTELLT: <placeholder-1/>"
+
+#. When image changes, this message will be marked fuzzy or untranslated for you.
+#. It doesn't matter what you translate it to: it's not used at all.
+#: C/mate-audio-profiles.xml:161(None)
+msgid ""
+"@@image: 'figures/mate-audio-profiles-profiles-window.png'; "
+"md5=08874167dcd48db9a9c2e9623706bb1b"
+msgstr "x"
+
+#. When image changes, this message will be marked fuzzy or untranslated for you.
+#. It doesn't matter what you translate it to: it's not used at all.
+#: C/mate-audio-profiles.xml:194(None)
+msgid ""
+"@@image: 'figures/mate-audio-profiles-profile-window.png'; "
+"md5=21171454e8a63a62c751ce8fc3a8d11e"
+msgstr "x"
+
+#: C/mate-audio-profiles.xml:26(title)
+msgid "<application>MATE Audio Profiles</application> Manual"
+msgstr "<application>MATE Audio-Profile</application>-Handbuch"
+
+#: C/mate-audio-profiles.xml:28(para)
+msgid ""
+"<application>MATE Audio Profiles</application> is a set of audio encoding "
+"configurations for GStreamer based applications."
+msgstr ""
+"<application>MATE Audio-Profile</application> bietet eine Reihe von "
+"Einstellmöglichkeiten für Audio-Enkodierungen für Anwendungen, die auf "
+"GStreamer basieren."
+
+#: C/mate-audio-profiles.xml:33(year)
+msgid "2008-2009"
+msgstr "2008-2009"
+
+#: C/mate-audio-profiles.xml:34(holder)
+#: C/mate-audio-profiles.xml:39(publishername)
+#: C/mate-audio-profiles.xml:80(para) C/mate-audio-profiles.xml:88(para)
+msgid "MATE Documentation Project"
+msgstr "MATE-Dokumentationsprojekt"
+
+#: C/mate-audio-profiles.xml:49(firstname)
+msgid "Marc-Andre"
+msgstr "Marc-Andre"
+
+#: C/mate-audio-profiles.xml:50(surname)
+msgid "Lureau"
+msgstr "Lureau"
+
+#: C/mate-audio-profiles.xml:52(orgname)
+msgid "MATE Project"
+msgstr "MATE-Projekt"
+
+#: C/mate-audio-profiles.xml:53(email)
+
+#: C/mate-audio-profiles.xml:74(revnumber)
+msgid "Audio Profiles Manual V2.27.0"
+msgstr "Audio-Profile-Handbuch V2.27.0"
+
+#: C/mate-audio-profiles.xml:75(date)
+msgid "June 2009"
+msgstr "Juni 2009"
+
+#: C/mate-audio-profiles.xml:77(para)
+msgid "Fill some blanks, add screenshots."
+msgstr "Einige Ergänzungen sowie Bildschirmfotos."
+
+#: C/mate-audio-profiles.xml:78(para)
+msgid "Release with MATE Media 2.27.3"
+msgstr "Veröffentlichung mit MATE Media 2.27.3"
+
+#: C/mate-audio-profiles.xml:79(para) C/mate-audio-profiles.xml:87(para)
+msgid "Marc-Andre Lureau"
+msgstr "Marc-Andre Lureau"
+
+#: C/mate-audio-profiles.xml:84(revnumber)
+msgid "Audio Profiles Manual V0.1"
+msgstr "Audio-Profile-Handbuch V0.1"
+
+#: C/mate-audio-profiles.xml:85(date)
+msgid "December 2008"
+msgstr "Dezember 2008"
+
+#: C/mate-audio-profiles.xml:93(releaseinfo)
+msgid "This manual describes version 2.27.3 of MATE Audio Profiles."
+msgstr "Dieses Handbuch beschreibt Version 2.27.3 von MATE Audio-Profile."
+
+#: C/mate-audio-profiles.xml:96(title)
+msgid "Feedback"
+msgstr "Rückmeldungen"
+
+#: C/mate-audio-profiles.xml:97(para)
+msgid ""
+"To report a bug or make a suggestion regarding the <application>MATE Audio "
+"Profiles</application> application or this manual, follow the directions in "
+"the <ulink url=\"ghelp:user-guide?feedback-bugs\" type=\"help\">Feedback "
+"section of the MATE User Guide</ulink>."
+msgstr ""
+"Um einen Fehler zu melden oder einen Vorschlag zur Anwendung "
+"<application>MATE Audio-Profile</application> oder zu diesem Handbuch zu "
+"machen, folgen Sie den Anweisungen im <ulink url=\"ghelp:user-guide?feedback-"
+"bugs\" type=\"help\">Abschnitt zu Rückmeldungen des MATE-Benutzerhandbuchs</"
+"ulink>."
+
+#: C/mate-audio-profiles.xml:106(primary)
+#: C/mate-audio-profiles.xml:0(application)
+msgid "MATE Audio Profiles"
+msgstr "MATE Audio-Profile"
+
+#: C/mate-audio-profiles.xml:113(title)
+msgid "Introduction"
+msgstr "Einführung"
+
+#: C/mate-audio-profiles.xml:114(para)
+msgid ""
+"<application>MATE Audio Profiles</application> let you select and modify a "
+"list of pre-defined encoding formats. By default, <application>MATE Audio "
+"Profiles</application> provides the following audio format:"
+msgstr ""
+"In <application>MATE Audio-Profile</application> können Sie in einer Liste "
+"vordefinierte Enkodierungsformate auswählen und die Liste auch bearbeiten. "
+"Standardmäßig stellt <application>MATE Audio-Profile</application> die "
+"folgenden Audioformate bereit:"
+
+#: C/mate-audio-profiles.xml:118(para)
+msgid "AAC-MP4 - The new standard of lossy compression."
+msgstr "AAC-MP4 - Der neue Standard der verlustbehafteten Kompression."
+
+#: C/mate-audio-profiles.xml:121(para)
+msgid "Ogg Vorbis - Xiph.Org lossy compression."
+msgstr "Ogg Vorbis - Verlustbehaftete Kompression von Xiph.org."
+
+#: C/mate-audio-profiles.xml:124(para)
+msgid "Speex - Xiph.Org lossy compression optimized for voice."
+msgstr ""
+"Speex - Speziell für Sprache ausgelegte verlustbehaftete Kompression von "
+"Xiph.org."
+
+#: C/mate-audio-profiles.xml:127(para)
+msgid "FLAC - Xiph.Org lossless audio compression."
+msgstr "FLAC - Verlustlose Audiokompression von Xiph.org."
+
+#: C/mate-audio-profiles.xml:130(para)
+msgid "MP3 - The popular lossy compression format."
+msgstr "MP3 - Das populäre verlustbehaftete Kompressionsformat."
+
+#: C/mate-audio-profiles.xml:133(para)
+msgid "MP2 - MPEG-1 Audio Layer II, largely supported."
+msgstr "MP2 - MPEG-1 Audio Layer II, auf breiter Basis unterstützt."
+
+#: C/mate-audio-profiles.xml:136(para)
+msgid "WAV - Lossless."
+msgstr "WAV - Verlustlos."
+
+#: C/mate-audio-profiles.xml:141(para)
+msgid "Some format may be illegal in your jurisdiction."
+msgstr ""
+"Einige Formate könnten im Rahmen der für Sie geltenden Gesetze illegal sein."
+
+#: C/mate-audio-profiles.xml:146(title)
+msgid "Usage"
+msgstr "Benutzung"
+
+#: C/mate-audio-profiles.xml:147(para)
+msgid ""
+"Use <application>MATE Audio Profiles</application> to modify a list of pre-"
+"defined encoding formats."
+msgstr ""
+"Verwenden Sie <application>MATE Audio-Profile</application> zum Anpassen "
+"einer Liste vordefinierter Enkodierungsformate."
+
+#: C/mate-audio-profiles.xml:150(title)
+msgid "Profile selection dialog"
+msgstr "Profilauswahldialog"
+
+#: C/mate-audio-profiles.xml:152(para)
+msgid ""
+"The following window is displayed to modify, add or remove the pre-defined "
+"formats."
+msgstr ""
+"Für das Ändern, Hinzufügen oder Entfernen der vordefinierten Formate wird "
+"das folgende Fenster angezeigt."
+
+#: C/mate-audio-profiles.xml:157(title)
+msgid "<application>MATE Audio Profiles</application> Window"
+msgstr "<application>MATE Audio-Profile</application>-Fenster"
+
+#: C/mate-audio-profiles.xml:164(phrase)
+msgid ""
+"Shows <placeholder-1/> main window. Contains list of profiles and "
+"modification options."
+msgstr ""
+"Zeigt das <placeholder-1/>-Hauptfenster. Enthält eine Liste der Profile "
+"sowie Bearbeitungsoptionen."
+
+#. ==== End of Figure ====
+#: C/mate-audio-profiles.xml:172(para)
+msgid ""
+"Select one of the profiles and click \"Edit\" to modify it. The \"Profile "
+"modification window\" will be displayed."
+msgstr ""
+"Wählen Sie eines der Profile aus und klicken Sie auf <guilabel>Bearbeiten</"
+"guilabel>, um es zu ändern. Das Fenster zur Bearbeitung von Profilen wird "
+"angezeigt."
+
+#: C/mate-audio-profiles.xml:175(para)
+msgid ""
+"\"Delete\" will remove the currently selected profile from the list of "
+"profiles."
+msgstr ""
+"Klicken Sie auf <guilabel>Löschen</guilabel>, um das gewählte Profil aus der "
+"Liste zu löschen."
+
+#: C/mate-audio-profiles.xml:178(para)
+msgid ""
+"To create a new profile, click \"New\". The \"Profile 5~ modification window"
+"\" will be displayed."
+msgstr ""
+"Um ein neues Profil zu erstellen, klicken Sie auf <guilabel>Neu</guilabel>. "
+"Das Fenster zur Bearbeitung von Profilen wird angezeigt."
+
+#: C/mate-audio-profiles.xml:184(title)
+msgid "Profile editing"
+msgstr "Bearbeitung von Profilen"
+
+#: C/mate-audio-profiles.xml:186(para)
+msgid ""
+"<application>MATE Audio Profiles</application> let you modify the "
+"parameters of an audio profile."
+msgstr ""
+"Mit <application>MATE Audio-Profile</application> können Sie die Parameter "
+"eines Audioprofils anpassen."
+
+#: C/mate-audio-profiles.xml:190(title)
+msgid "Profile modification window"
+msgstr "Fenster zur Bearbeitung von Profilen"
+
+#: C/mate-audio-profiles.xml:197(phrase)
+msgid "Shows <placeholder-1/> profile window."
+msgstr "Zeigt das Profilfenster von <placeholder-1/>."
+
+#: C/mate-audio-profiles.xml:206(para)
+msgid "Profile name - user friendly name of the profile."
+msgstr "Profilname - Benutzerfreundlicher Name des Profils."
+
+#: C/mate-audio-profiles.xml:209(para)
+msgid "Profile description - long description of this profile."
+msgstr "Profilbeschreibung - Ausführlichere Beschreibung des Profils."
+
+#: C/mate-audio-profiles.xml:212(para)
+msgid "GStreamer pipeline - the GStreamer encoding pipeline."
+msgstr "GSteamer-Weiterleitung - Die GStreamer-Weiterleitung des Profils."
+
+#: C/mate-audio-profiles.xml:215(para)
+msgid "File extension - the filename extension associated to this profile."
+msgstr "Dateiendung - Die dem Profil zugeordnete Dateiendung."
+
+#: C/mate-audio-profiles.xml:219(para)
+msgid "Active - whether this profile is listed in client application."
+msgstr ""
+"Aktiv - Legt fest, ob das Profil in den entsprechenden Anwendungen zur "
+"Verfügung steht."
+
+#: C/mate-audio-profiles.xml:246(title)
+msgid "About <application>MATE Audio Profiles</application>"
+msgstr "Info zu <application>MATE Audio-Profile</application>"
+
+#: C/mate-audio-profiles.xml:247(para)
+msgid ""
+"To report a bug or make a suggestion regarding this application or this "
+"manual, follow the directions in the <ulink url=\"ghelp:user-guide?feedback-"
+"bugs\" type=\"help\">Feedback section of the MATE User Guide</ulink>."
+msgstr ""
+"Um einen Fehler zu melden oder einen Vorschlag zur dieser Anwendung oder zu "
+"diesem Handbuch zu machen, folgen Sie den Anweisungen im <ulink url=\"ghelp:"
+"user-guide?feedback-bugs\" type=\"help\">Abschnitt zu Rückmeldungen des "
+"MATE-Benutzerhandbuchs</ulink>."
+
+#: C/mate-audio-profiles.xml:253(para)
+msgid ""
+"This program is distributed under the terms of the GNU Library General "
+"Public license as published by the Free Software Foundation; either version "
+"2 of the License, or (at your option) any later version. A <ulink url="
+"\"ghelp:lgpl\" type=\"help\">copy of this license</ulink> is included with "
+"this documentation; another can be found in the file COPYING included with "
+"the source code of this program."
+msgstr ""
+"Dieses Programm ist freie Software. Sie können es unter den Bedingungen der "
+"<citetitle>GNU General Public License</citetitle>, wie von der Free Software "
+"Foundation veröffentlicht, weitergeben und/oder verändern, entweder gemäß "
+"Version 2 der Lizenz oder (nach Ihrer Option) jeder späteren Version. Eine "
+"<ulink url=\"ghelp:gpl\" type=\"help\">Kopie dieser Lizenz</ulink> ist in "
+"dieser Dokumentation enthalten, eine weitere in der Datei COPYING, die im "
+"Quellcode dieses Programms enthalten ist."
+
+#. Put one translator per line, in the form of NAME <EMAIL>, YEAR1, YEAR2
+#: C/mate-audio-profiles.xml:0(None)
+msgid "translator-credits"
+msgstr ""
+"Mario Blättermann <[email protected]>, 2009\n"
+"Christian Kirbach <[email protected]>, 2009."
diff --git a/profiles/help/de/figures/mate-audio-profiles-profile-window.png b/profiles/help/de/figures/mate-audio-profiles-profile-window.png
new file mode 100644
index 0000000..bb2c035
--- /dev/null
+++ b/profiles/help/de/figures/mate-audio-profiles-profile-window.png
Binary files differ
diff --git a/profiles/help/de/figures/mate-audio-profiles-profiles-window.png b/profiles/help/de/figures/mate-audio-profiles-profiles-window.png
new file mode 100644
index 0000000..6a5ce95
--- /dev/null
+++ b/profiles/help/de/figures/mate-audio-profiles-profiles-window.png
Binary files differ
diff --git a/profiles/help/el/el.po b/profiles/help/el/el.po
new file mode 100644
index 0000000..df33225
--- /dev/null
+++ b/profiles/help/el/el.po
@@ -0,0 +1,270 @@
+# Greek translation for mate-media.
+# Copyright (C) 2010 mate-media's COPYRIGHT HOLDER
+# This file is distributed under the same license as the mate-media package.
+# Fotis Tsamis <[email protected]>, 2010.
+# Simos Xenitellis <[email protected]>, 2010.
+msgid ""
+msgstr ""
+"Project-Id-Version: mate-media master\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2010-03-27 05:13+0000\n"
+"PO-Revision-Date: 2010-03-29 16:56+0300\n"
+"Last-Translator: Simos Xenitellis <[email protected]>\n"
+"Language-Team: Greek <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Lokalize 1.0\n"
+
+#: C/legal.xml:2(para)
+msgid "Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License (GFDL), Version 1.1 or any later version published by the Free Software Foundation with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. You can find a copy of the GFDL at this <ulink type=\"help\" url=\"ghelp:fdl\">link</ulink> or in the file COPYING-DOCS distributed with this manual."
+msgstr ""
+"Δίνεται άδεια για αντιγραφή, διανομή και/ή τροποποίηση του εγγράφου υπό τους "
+"όρους της Ελεύθερης Άδειας Τεκμηρίωσης GNU (GFDL), Έκδοση 1.1 ή "
+"μεταγενέστερη εκδιδόμενη από το Ίδρυμα Ελεύθερου Λογισμικού χωρίς Σταθερά "
+"Εδάφια, χωρίς Εξώφυλλα Κειμένου, και χωρίς Οπισθόφυλλα Κειμένου. Μπορείτε να "
+"βρείτε ένα αντίγραφο της GFDL σε αυτόν τον <ulink type=\"help\" url=\"ghelp:"
+"fdl\">σύνδεσμο</ulink> ή στο αρχείο COPYING-DOCS που διανεμήθηκε με αυτόν "
+"τον οδηγό."
+
+#: C/legal.xml:12(para)
+msgid "This manual is part of a collection of MATE manuals distributed under the GFDL. If you want to distribute this manual separately from the collection, you can do so by adding a copy of the license to the manual, as described in section 6 of the license."
+msgstr "Αυτό το εγχειρίδιο είναι μέρος της συλλογής τεκμηρίωσης του MATE πού διανέμεται υπό τους όρους του GFDL. Εάν επιθυμείτε να διανείμετε αυτό το εγχειρίδιο ξεχωριστά από την συλλογή, μπορείτε να το κάνετε εάν η τεκμηρίωση συνοδεύεται από αντίγραφο της άδειας (GFDL) όπως περιγράφεται στον τομέα 6 της άδειας."
+
+#: C/legal.xml:19(para)
+msgid "Many of the names used by companies to distinguish their products and services are claimed as trademarks. Where those names appear in any MATE documentation, and the members of the MATE Documentation Project are made aware of those trademarks, then the names are in capital letters or initial capital letters."
+msgstr "Πολλά από τα ονόματα που χρησιμοποιούνται από εταιρίες για να ξεχωρίσουν τα προϊόντα και τις υπηρεσίες είναι σήματα κατατεθέν. Όπου αυτά τα ονόματα εμφανίζονται στην τεκμηρίωση MATE, και τα μέλη της ομάδας τεκμηρίωσης MATE έχουν γνώση αυτών, τότε αυτά αναγράφονται με κεφαλαίους χαρακτήρες ή με αρχικούς κεφαλαίους χαρακτήρες."
+
+#: C/legal.xml:35(para)
+msgid "DOCUMENT IS PROVIDED ON AN \"AS IS\" BASIS, WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, WITHOUT LIMITATION, WARRANTIES THAT THE DOCUMENT OR MODIFIED VERSION OF THE DOCUMENT IS FREE OF DEFECTS MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE OR NON-INFRINGING. THE ENTIRE RISK AS TO THE QUALITY, ACCURACY, AND PERFORMANCE OF THE DOCUMENT OR MODIFIED VERSION OF THE DOCUMENT IS WITH YOU. SHOULD ANY DOCUMENT OR MODIFIED VERSION PROVE DEFECTIVE IN ANY RESPECT, YOU (NOT THE INITIAL WRITER, AUTHOR OR ANY CONTRIBUTOR) ASSUME THE COST OF ANY NECESSARY SERVICING, REPAIR OR CORRECTION. THIS DISCLAIMER OF WARRANTY CONSTITUTES AN ESSENTIAL PART OF THIS LICENSE. NO USE OF ANY DOCUMENT OR MODIFIED VERSION OF THE DOCUMENT IS AUTHORIZED HEREUNDER EXCEPT UNDER THIS DISCLAIMER; AND UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY, WHETHER IN TORT (INCLUDING NEGLIGENCE), CONTRACT, OR OTHERWISE, SHALL THE AUTHOR, INITIAL WRITER, ANY CONTRIBUTOR, OR ANY DISTRIBUTOR OF THE DOCUMENT OR MODIFIED VERSION OF THE DOCUMENT, OR ANY SUPPLIER OF ANY OF SUCH PARTIES, BE LIABLE TO ANY PERSON FOR ANY DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF GOODWILL, WORK STOPPAGE, COMPUTER FAILURE OR MALFUNCTION, OR ANY AND ALL OTHER DAMAGES OR LOSSES ARISING OUT OF OR RELATING TO USE OF THE DOCUMENT AND MODIFIED VERSIONS OF THE DOCUMENT, EVEN IF SUCH PARTY SHALL HAVE BEEN INFORMED OF THE POSSIBILITY OF SUCH DAMAGES."
+msgstr "Η ΤΕΚΜΗΡΙΩΣΗ ΑΥΤΗ ΠΑΡΕΧΕΤΑΙ ΩΣ ΕΧΕΙ, ΧΩΡΙΣ ΚΑΜΙΑ ΕΓΓΥΗΣΗ ΟΤΙ ΜΠΟΡΕΙ ΝΑ ΕΞΥΠΗΡΕΤΗΣΕΙ ΚΑΠΟΙΟ ΣΚΟΠΟ Η ΟΤΙ ΕΙΝΑΙ ΧΩΡΙΣ ΣΦΑΛΜΑ. ΟΛΟΚΛΗΡΗ Η ΕΥΘΥΝΗ ΓΙΑ ΤΗΝ ΠΟΙΟΤΗΤΑ, ΑΚΡΙΒΕΙΑ ΚΑΙ ΛΕΙΤΟΥΡΓΙΚΟΤΗΤΑ ΤΗΣ ΤΕΚΜΗΡΙΩΣΗΣ Ή ΠΑΡΑΛΛΑΓΩΝ ΑΥΤΗΣ ΑΝΗΚΕΙ ΣΕ ΕΣΑΣ. ΕΑΝ Η ΤΕΚΜΗΡΙΩΣΗ ΑΥΤΗ Ή ΠΑΡΑΛΛΑΓΗ ΑΥΤΗΣ ΕΙΝΑΙ ΛΑΘΟΣ ΚΑΤΑ ΚΑΠΟΙΟ ΤΡΟΠΟ ΕΣΕΙΣ ΑΝΑΛΑΜΒΑΝΕΤΕ ΤΗΝ ΕΥΘΥΝΗ ΤΗΣ ΔΙΟΡΘΩΣΗΣ. Η ΑΠΑΛΛΑΓΗ ΕΥΘΥΝΗΣ ΠΟΥ ΣΥΝΟΔΕΥΕΙ ΑΥΤΗ ΤΗΝ ΤΕΚΜΗΡΙΩΣΗ ΕΙΝΑΙ ΑΝΑΠΟΣΠΑΣΤΟ ΚΟΜΜΑΤΙ ΑΥΤΗΣ. ΚΑΜΙΑ ΧΡΗΣΗ ΤΗΣ ΤΕΚΜΗΡΙΩΣΗΣ Ή ΠΑΡΑΛΛΑΓΩΝ ΑΥΤΗΣ ΔΕΝ ΕΠΙΤΡΕΠΕΤΑΙ ΠΑΡΑ ΜΟΝΟ ΕΑΝ ΣΥΝΟΔΕΥΕΤΑΙ ΑΠΟ ΤΗΝ ΑΠΑΛΛΑΓΗ ΕΥΘΥΝΗΣ· ΚΑΙ ΣΕ ΚΑΜΙΑ ΠΕΡΙΠΤΩΣΗ ΚΑΙ ΥΠΟ ΚΑΜΙΑ ΝΟΜΙΚΗ ΣΥΝΘΗΚΗ, ΕΙΤΕ ΜΕΣΩ ΣΥΜΒΟΛΑΙΩΝ Ή ΑΛΛΙΩΣ, ΔΕΝ ΕΥΘΥΝΟΝΤΑΙ Ο ΣΥΓΓΡΑΦΕΑΣ, Ο ΔΙΑΝΟΜΕΑΣ, Η ΑΛΛΟΣ ΣΥΝΥΠΕΥΘΥΝΟΣ ΓΙΑ ΤΗΝ ΣΥΓΓΡΑΦΗ ΤΗΣ ΤΕΚΜΗΡΙΩΣΗΣ, ΓΙΑ ΕΜΜΕΣΕΣ Η ΑΜΕΣΕΣ, ΤΥΧΑΙΕΣ Ή ΜΗ ΖΗΜΙΕΣ ΠΑΝΤΩΣ ΦΥΣΕΩΣ ΠΟΥ ΠΡΟΕΡΧΟΝΤΑΙ ΑΠΟ ΤΗΝ ΧΡΗΣΗ ΤΗΣ ΤΕΚΜΗΡΙΩΣΗΣ ΚΑΙ/Ή ΠΑΡΑΛΛΑΓΩΝ ΑΥΤΗΣ ΑΚΟΜΑ ΚΑΙ ΕΑΝ ΕΧΕΙ ΥΠΑΡΞΕΙ ΠΡΟΕΙΔΟΠΟΙΗΣΗ ΓΙΑ ΤΗΝ ΠΙΘΑΝΟΤΗΤΑ ΥΠΑΡΞΗΣ ΤΕΤΟΙΩΝ ΖΗΜΙΩΝ."
+
+#: C/legal.xml:28(para)
+msgid "DOCUMENT AND MODIFIED VERSIONS OF THE DOCUMENT ARE PROVIDED UNDER THE TERMS OF THE GNU FREE DOCUMENTATION LICENSE WITH THE FURTHER UNDERSTANDING THAT: <placeholder-1/>"
+msgstr "ΤΟ ΈΓΓΡΑΦΟ ΚΑΙ ΤΡΟΠΟΠΟΙΗΜΕΝΕΣ ΕΚΔΟΣΕΙΣ ΑΥΤΟΥ ΠΑΡΕΧΟΝΤΑΙ ΥΠΟ ΤΟΥΣ ΟΡΟΥΣ ΤΗΣ ΑΔΕΙΑΣ GNU FREE DOCUMENTATION ΜΕ ΤΗΝ ΠΕΡΑΙΤΕΡΩ ΔΙΕΥΚΡΙΝΙΣΗ ΟΤΙ: <placeholder-1/>"
+
+#. When image changes, this message will be marked fuzzy or untranslated for you.
+#. It doesn't matter what you translate it to: it's not used at all.
+#: C/mate-audio-profiles.xml:161(None)
+msgid "@@image: 'figures/mate-audio-profiles-profiles-window.png'; md5=08874167dcd48db9a9c2e9623706bb1b"
+msgstr "@@image: 'figures/mate-audio-profiles-profiles-window.png'; md5=08874167dcd48db9a9c2e9623706bb1b"
+
+#. When image changes, this message will be marked fuzzy or untranslated for you.
+#. It doesn't matter what you translate it to: it's not used at all.
+#: C/mate-audio-profiles.xml:194(None)
+msgid "@@image: 'figures/mate-audio-profiles-profile-window.png'; md5=21171454e8a63a62c751ce8fc3a8d11e"
+msgstr "@@image: 'figures/mate-audio-profiles-profile-window.png'; md5=21171454e8a63a62c751ce8fc3a8d11e"
+
+#: C/mate-audio-profiles.xml:26(title)
+msgid "<application>MATE Audio Profiles</application> Manual"
+msgstr "Εγχειρίδιο εφαρμογής <application>Προφίλ ήχου του MATE</application>"
+
+#: C/mate-audio-profiles.xml:28(para)
+msgid "<application>MATE Audio Profiles</application> is a set of audio encoding configurations for GStreamer based applications."
+msgstr "Τα <application>Ακουστικά προφίλ MATE</application> είναι ένα σύνολο ακουστικών διαμορφώσεων κωδικοποίησης για το εφαρμογές βασησμένες στο GStreamer."
+
+#: C/mate-audio-profiles.xml:33(year)
+msgid "2008-2009"
+msgstr "2008-2009"
+
+#: C/mate-audio-profiles.xml:34(holder)
+#: C/mate-audio-profiles.xml:39(publishername)
+#: C/mate-audio-profiles.xml:80(para)
+#: C/mate-audio-profiles.xml:88(para)
+msgid "MATE Documentation Project"
+msgstr "Έργο τεκμηρίωσης MATE"
+
+#: C/mate-audio-profiles.xml:49(firstname)
+msgid "Marc-Andre"
+msgstr "Marc-Andre"
+
+#: C/mate-audio-profiles.xml:50(surname)
+msgid "Lureau"
+msgstr "Lureau"
+
+#: C/mate-audio-profiles.xml:52(orgname)
+msgid "MATE Project"
+msgstr "Έργο MATE"
+
+#: C/mate-audio-profiles.xml:53(email)
+
+#: C/mate-audio-profiles.xml:74(revnumber)
+msgid "Audio Profiles Manual V2.27.0"
+msgstr "Εγχειρίδιο του Προφίλ ήχου V2.27.0"
+
+#: C/mate-audio-profiles.xml:75(date)
+msgid "June 2009"
+msgstr "Ιούνιος 2009"
+
+#: C/mate-audio-profiles.xml:77(para)
+msgid "Fill some blanks, add screenshots."
+msgstr "Συμπλήρωση κάποιων κενών, προσθήκη στιγμιοτύπων."
+
+#: C/mate-audio-profiles.xml:78(para)
+msgid "Release with MATE Media 2.27.3"
+msgstr "Κυκλοφορεί με το MATE Media 2.27.3"
+
+#: C/mate-audio-profiles.xml:79(para)
+#: C/mate-audio-profiles.xml:87(para)
+msgid "Marc-Andre Lureau"
+msgstr "Marc-Andre Lureau"
+
+#: C/mate-audio-profiles.xml:84(revnumber)
+msgid "Audio Profiles Manual V0.1"
+msgstr "Εγχειρίδιο Προφίλ ήχου V0.1"
+
+#: C/mate-audio-profiles.xml:85(date)
+msgid "December 2008"
+msgstr "Δεκέμβριος 2008"
+
+#: C/mate-audio-profiles.xml:93(releaseinfo)
+msgid "This manual describes version 2.27.3 of MATE Audio Profiles."
+msgstr "Αυτό το εγχειρίδιο περιγράφει την έκδοση 2.27.3 της εφαρμογής Προφίλ ήχου του MATE."
+
+#: C/mate-audio-profiles.xml:96(title)
+msgid "Feedback"
+msgstr "Ανάδραση"
+
+#: C/mate-audio-profiles.xml:97(para)
+msgid "To report a bug or make a suggestion regarding the <application>MATE Audio Profiles</application> application or this manual, follow the directions in the <ulink url=\"ghelp:user-guide?feedback-bugs\" type=\"help\">Feedback section of the MATE User Guide</ulink>."
+msgstr "Για να αναφέρετε κάποιο σφάλμα ή να κάνετε κάποια πρόταση σχετικά με την εφαρμογή <application>MATE Audio Profiles</application> ή αυτό το εγχειρίδιο, ακολουθήστε τις οδηγίες στην <ulink url=\"ghelp:user-guide?feedback-bugs\" type=\"help\">Ενότητα ανάδρασης του Οδηγού χρήστη του MATE</ulink>."
+
+#: C/mate-audio-profiles.xml:106(primary)
+#: C/mate-audio-profiles.xml:0(application)
+msgid "MATE Audio Profiles"
+msgstr "Προφίλ ήχου του MATE"
+
+#: C/mate-audio-profiles.xml:113(title)
+msgid "Introduction"
+msgstr "Εισαγωγή"
+
+#: C/mate-audio-profiles.xml:114(para)
+msgid "<application>MATE Audio Profiles</application> let you select and modify a list of pre-defined encoding formats. By default, <application>MATE Audio Profiles</application> provides the following audio format:"
+msgstr "To <application>Προφίλ ήχου του MATE</application> σας επιτρέπει να επιλέξετε και να τροποποιήσετε μια λίστα προκαθορισμένων μορφών κωδικοποίησης. Από προεπιλογή, το <application>Προφίλ ήχου του MATE</application> παρέχει τις ακόλουθες μορφές ήχου:"
+
+#: C/mate-audio-profiles.xml:118(para)
+msgid "AAC-MP4 - The new standard of lossy compression."
+msgstr "AAC-MP4 - Το νέο πρότυπο συμπίεσης με απώλειες."
+
+#: C/mate-audio-profiles.xml:121(para)
+msgid "Ogg Vorbis - Xiph.Org lossy compression."
+msgstr "Ogg Vorbis - Xiph.Org συμπίεση με απώλειες."
+
+#: C/mate-audio-profiles.xml:124(para)
+msgid "Speex - Xiph.Org lossy compression optimized for voice."
+msgstr "Speex - Xiph.Org συμπίεση με απώλειες βελτιστοποιημένη για φωνή."
+
+#: C/mate-audio-profiles.xml:127(para)
+msgid "FLAC - Xiph.Org lossless audio compression."
+msgstr "FLAC - Xiph.Org συμπίεση ήχου χωρίς απώλειες."
+
+#: C/mate-audio-profiles.xml:130(para)
+msgid "MP3 - The popular lossy compression format."
+msgstr "MP3 - Η δημοφιλής μορφή συμπίεσης με απώλειες."
+
+#: C/mate-audio-profiles.xml:133(para)
+msgid "MP2 - MPEG-1 Audio Layer II, largely supported."
+msgstr "MP2 - MPEG-1 Audio Layer II, υποστηρίζονται κατά ένα μεγάλο μέρος."
+
+#: C/mate-audio-profiles.xml:136(para)
+msgid "WAV - Lossless."
+msgstr "WAV - Χωρίς απώλειες."
+
+#: C/mate-audio-profiles.xml:141(para)
+msgid "Some format may be illegal in your jurisdiction."
+msgstr "Κάποια μορφή διαμόρφωσης μπορεί να είναι παράνομη για τα δικαιώματα σας."
+
+#: C/mate-audio-profiles.xml:146(title)
+msgid "Usage"
+msgstr "Χρήση"
+
+#: C/mate-audio-profiles.xml:147(para)
+msgid "Use <application>MATE Audio Profiles</application> to modify a list of pre-defined encoding formats."
+msgstr "Χρησιμοποιήστε τα <application> Ακουστικά προφίλ MATE</application> για να τροποποιήσετε την λίστα των προκαθορισμένων σχημάτων κωδικοποίησης."
+
+#: C/mate-audio-profiles.xml:150(title)
+msgid "Profile selection dialog"
+msgstr "Διάλογος επιλογής προφίλ"
+
+#: C/mate-audio-profiles.xml:152(para)
+msgid "The following window is displayed to modify, add or remove the pre-defined formats."
+msgstr "Το ακόλουθο παράθυρο εμφανίζεται για να τροποποιήσετε, να προσθέσετε ή να διαγράψετε τις προκαθορισμένες μορφές."
+
+#: C/mate-audio-profiles.xml:157(title)
+msgid "<application>MATE Audio Profiles</application> Window"
+msgstr "Το παράθυρο του <application>Προφίλ ήχου του MATE</application>"
+
+#: C/mate-audio-profiles.xml:164(phrase)
+msgid "Shows <placeholder-1/> main window. Contains list of profiles and modification options."
+msgstr "Προβάλει το <placeholder-1/> κύριο παράθυρο. Περιέχει την λίστα των προφίλ και των επιλογών τροποποίησης."
+
+#. ==== End of Figure ====
+#: C/mate-audio-profiles.xml:172(para)
+msgid "Select one of the profiles and click \"Edit\" to modify it. The \"Profile modification window\" will be displayed."
+msgstr "Επιλέξτε ένα από τα προφίλ και κάντε κλικ στο \"Επεξεργασία\" για να το αλλάξετε. Το παράθυρο \"Τροποποίηση προφίλ\" θα εμφανιστεί."
+
+#: C/mate-audio-profiles.xml:175(para)
+msgid "\"Delete\" will remove the currently selected profile from the list of profiles."
+msgstr "Με το \"Διαγραφή\" μπορείτε να διαγράψετε το επιλεγμένο προφίλ από την λίστα των προφίλ."
+
+#: C/mate-audio-profiles.xml:178(para)
+msgid "To create a new profile, click \"New\". The \"Profile 5~ modification window\" will be displayed."
+msgstr "Για να δημιουργήσετε ένα νέο προφίλ, κάντε κλικ στο \"Νέο\". Το \"παράθυρο τροποποίησης του Προφίλ 5~\" θα εμφανιστεί."
+
+#: C/mate-audio-profiles.xml:184(title)
+msgid "Profile editing"
+msgstr "Επεξεργασία προφίλ"
+
+#: C/mate-audio-profiles.xml:186(para)
+msgid "<application>MATE Audio Profiles</application> let you modify the parameters of an audio profile."
+msgstr "Η εφαρμογή <application>Προφίλ ήχου του MATE</application> σας επιτρέπει να τροποποιήσετε τις παραμέτρους ενός προφίλ ήχου."
+
+#: C/mate-audio-profiles.xml:190(title)
+msgid "Profile modification window"
+msgstr "Παράθυρο τροποποίησης προφίλ"
+
+#: C/mate-audio-profiles.xml:197(phrase)
+msgid "Shows <placeholder-1/> profile window."
+msgstr "Προβάλει το <placeholder-1/> παράθυρο των προφίλ."
+
+#: C/mate-audio-profiles.xml:206(para)
+msgid "Profile name - user friendly name of the profile."
+msgstr "Όνομα προφίλ – ένα όνομα φιλικό προς τον χρήση για το προφίλ."
+
+#: C/mate-audio-profiles.xml:209(para)
+msgid "Profile description - long description of this profile."
+msgstr "Περιγραφή προφίλ - μακροσκελής περιγραφή αυτού του προφίλ."
+
+#: C/mate-audio-profiles.xml:212(para)
+msgid "GStreamer pipeline - the GStreamer encoding pipeline."
+msgstr "Διασωλήνωση GStreamer – Η διασωλήνωση κωδικοποίησης του GStreamer."
+
+#: C/mate-audio-profiles.xml:215(para)
+msgid "File extension - the filename extension associated to this profile."
+msgstr "Επέκταση αρχείου - η επέκταση του ονόματος αρχείου που συσχετίζεται με αυτό το προφίλ."
+
+#: C/mate-audio-profiles.xml:219(para)
+msgid "Active - whether this profile is listed in client application."
+msgstr "Ενεργό - Όταν αυτό το προφίλ εμπεριέχεται στην λίστα της εφαρμογής πελάτη."
+
+#: C/mate-audio-profiles.xml:246(title)
+msgid "About <application>MATE Audio Profiles</application>"
+msgstr "Περί <application>Προφίλ ήχου του MATE</application>"
+
+#: C/mate-audio-profiles.xml:247(para)
+msgid "To report a bug or make a suggestion regarding this application or this manual, follow the directions in the <ulink url=\"ghelp:user-guide?feedback-bugs\" type=\"help\">Feedback section of the MATE User Guide</ulink>."
+msgstr "Για να αναφέρετε κάποιο σφάλμα ή να κάνετε μια πρόταση σχετικά με αυτήν την εφαρμογή ή αυτό το εγχειρίδιο, ακολουθήστε τις οδηγίες στην <ulink url=\"ghelp:user-guide?feedback-bugs\" type=\"help\">Ενότητα ανάδρασης του Οδηγού χρήστη του MATE</ulink>."
+
+#: C/mate-audio-profiles.xml:253(para)
+msgid "This program is distributed under the terms of the GNU Library General Public license as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. A <ulink url=\"ghelp:lgpl\" type=\"help\">copy of this license</ulink> is included with this documentation; another can be found in the file COPYING included with the source code of this program."
+msgstr "Το πρόγραμμα αυτό διανέμεται υπό τους όρους της GNU General Public license όπως αυτή δημοσιεύεται από το Free Software Foundation· είτε της έκδοσης 2 της άδειας, ή (κατά την επιλογή σας) οποιασδήποτε μεταγενέστερης έκδοσης. <ulink url=\"ghelp:lgpl\" type=\"help\">Αντίγραφο αυτής της άδειας</ulink> περιέχεται σε αυτήν την τεκμηρίωση· άλλο αντίγραφο μπορεί να βρεθεί στο αρχείο COPYING που περιλαμβάνεται στον πηγαίο κώδικα αυτού του προγράμματος."
+
+#. Put one translator per line, in the form of NAME <EMAIL>, YEAR1, YEAR2
+#: C/mate-audio-profiles.xml:0(None)
+msgid "translator-credits"
+msgstr "Fotis Tsamis <[email protected]>, 2010"
+
+
diff --git a/profiles/help/es/es.po b/profiles/help/es/es.po
new file mode 100644
index 0000000..b3b82c2
--- /dev/null
+++ b/profiles/help/es/es.po
@@ -0,0 +1,415 @@
+# translation of audio-profiles.master.po to Español
+# Spanish translation for mate-media.
+# Copyright (C) 2009 mate-media's COPYRIGHT HOLDER
+# This file is distributed under the same license as the mate-media package.
+#
+# Jorge González González <[email protected]>, 2009.
+# Jorge González <[email protected]>, 2009.
+msgid ""
+msgstr ""
+"Project-Id-Version: audio-profiles.master\n"
+"POT-Creation-Date: 2009-11-09 14:17+0000\n"
+"PO-Revision-Date: 2009-11-13 20:50+0100\n"
+"Last-Translator: Jorge González <[email protected]>\n"
+"Language-Team: Español <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: KBabel 1.11.4\n"
+"Report-Msgid-Bugs-To: \n"
+
+#: C/legal.xml:2(para)
+msgid ""
+"Permission is granted to copy, distribute and/or modify this document under "
+"the terms of the GNU Free Documentation License (GFDL), Version 1.1 or any "
+"later version published by the Free Software Foundation with no Invariant "
+"Sections, no Front-Cover Texts, and no Back-Cover Texts. You can find a copy "
+"of the GFDL at this <ulink type=\"help\" url=\"ghelp:fdl\">link</ulink> or "
+"in the file COPYING-DOCS distributed with this manual."
+msgstr ""
+"Se concede permiso para copiar, distribuir o modificar este documento según "
+"las condiciones de la GNU Free Documentation License (GFDL), Versión 1.1 o "
+"cualquier versión posterior publicada por la Free Software Foundation sin "
+"Secciones invariantes, Textos de portada y Textos de contraportada. "
+"Encontrará una copia de la GFDL en este <ulink type=\"help\" url=\"ghelp:fdl"
+"\">enlace</ulink> o en el archivo COPYING-DOCS distribuido con este manual."
+
+#: C/legal.xml:12(para)
+msgid ""
+"This manual is part of a collection of MATE manuals distributed under the "
+"GFDL. If you want to distribute this manual separately from the collection, "
+"you can do so by adding a copy of the license to the manual, as described in "
+"section 6 of the license."
+msgstr ""
+"Este manual es parte de una colección de manuales de MATE distribuidos bajo "
+"la GFDL. Si quiere distribuir este manual separadamente de la colección, se "
+"puede hacer solamente añadiendo una copia de licencia del manual, como la "
+"descrita en la sección 6 de la licencia."
+
+#: C/legal.xml:19(para)
+msgid ""
+"Many of the names used by companies to distinguish their products and "
+"services are claimed as trademarks. Where those names appear in any MATE "
+"documentation, and the members of the MATE Documentation Project are made "
+"aware of those trademarks, then the names are in capital letters or initial "
+"capital letters."
+msgstr ""
+"Muchos de los nombres usados por empresas para distinguir sus productos y "
+"servicios se mencionan como marcas comerciales. Donde aparezcan dichos "
+"nombres en cualquier documentación MATE, y para que los miembros del "
+"proyecto de documentación reconozcan dichas marcas comerciales, dichos "
+"nombres se imprimen en mayúsculas o iniciales mayúsculas."
+
+#: C/legal.xml:35(para)
+msgid ""
+"DOCUMENT IS PROVIDED ON AN \"AS IS\" BASIS, WITHOUT WARRANTY OF ANY KIND, "
+"EITHER EXPRESSED OR IMPLIED, INCLUDING, WITHOUT LIMITATION, WARRANTIES THAT "
+"THE DOCUMENT OR MODIFIED VERSION OF THE DOCUMENT IS FREE OF DEFECTS "
+"MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE OR NON-INFRINGING. THE ENTIRE "
+"RISK AS TO THE QUALITY, ACCURACY, AND PERFORMANCE OF THE DOCUMENT OR "
+"MODIFIED VERSION OF THE DOCUMENT IS WITH YOU. SHOULD ANY DOCUMENT OR "
+"MODIFIED VERSION PROVE DEFECTIVE IN ANY RESPECT, YOU (NOT THE INITIAL "
+"WRITER, AUTHOR OR ANY CONTRIBUTOR) ASSUME THE COST OF ANY NECESSARY "
+"SERVICING, REPAIR OR CORRECTION. THIS DISCLAIMER OF WARRANTY CONSTITUTES AN "
+"ESSENTIAL PART OF THIS LICENSE. NO USE OF ANY DOCUMENT OR MODIFIED VERSION "
+"OF THE DOCUMENT IS AUTHORIZED HEREUNDER EXCEPT UNDER THIS DISCLAIMER; AND "
+"UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY, WHETHER IN TORT (INCLUDING "
+"NEGLIGENCE), CONTRACT, OR OTHERWISE, SHALL THE AUTHOR, INITIAL WRITER, ANY "
+"CONTRIBUTOR, OR ANY DISTRIBUTOR OF THE DOCUMENT OR MODIFIED VERSION OF THE "
+"DOCUMENT, OR ANY SUPPLIER OF ANY OF SUCH PARTIES, BE LIABLE TO ANY PERSON "
+"FOR ANY DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF "
+"ANY CHARACTER INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF GOODWILL, "
+"WORK STOPPAGE, COMPUTER FAILURE OR MALFUNCTION, OR ANY AND ALL OTHER DAMAGES "
+"OR LOSSES ARISING OUT OF OR RELATING TO USE OF THE DOCUMENT AND MODIFIED "
+"VERSIONS OF THE DOCUMENT, EVEN IF SUCH PARTY SHALL HAVE BEEN INFORMED OF THE "
+"POSSIBILITY OF SUCH DAMAGES."
+msgstr ""
+"EL DOCUMENTO SE OFRECE «TAL CUAL», SIN GARANTÍA DE NINGÚN TIPO, EXPRESA O "
+"IMPLÍCITA, INCLUYENDO, PERO SIN LIMITARSE A ELLA, LA GARANTÍA DE QUE EL "
+"DOCUMENTO O LA VERSIÓN MODIFICADA DEL MISMO ESTÉ LIBRE DE DEFECTOS, GARANTÍA "
+"DE COMERCIALIZACIÓN, APTITUD PARA UN USO EN PARTICULAR O INCUMPLIMIENTO. "
+"TODOS LOS RIESGOS RELATIVOS A LA CALIDAD, EXACTITUD O RENDIMIENTO DEL "
+"DOCUMENTO O LA VERSIÓN MODIFICADA DEL MISMO SON ASUMIDOS POR VD. EN CASO DE "
+"QUE EL DOCUMENTO O LA VERSIÓN MODIFICADA SEAN DEFECTUOSOS, VD. (NO EL "
+"ESCRITOR ORIGINAL NI EL AUTOR NI NINGUNO DE LOS COLABORADORES) ASUMIRÁ EL "
+"COSTE DE CUALQUIER MANTENIMIENTO, REPARACIÓN O CORRECCIÓN QUE SEAN "
+"NECESARIOS. ESTA RENUNCIA DE GARANTÍA CONSTITUYE UNA PARTE ESENCIAL DE ESTA "
+"LICENCIA NO SE AUTORIZA EL USO DE NINGÚN DOCUMENTO NI VERSIÓN MODIFICADA DEL "
+"MISMO, SALVO EN LAS CONDICIONES ESPECIFICADAS EN ESTA RENUNCIA; Y BAJO "
+"NINGUNA CIRCUNSTANCIA NI SUPUESTO LEGAL, YA SEA POR AGRAVIO (INCLUIDA LA "
+"NEGLIGENCIA), CONTRATO U OTROS CASOS, SERÁN RESPONSABLES EL AUTOR, EL "
+"ESCRITOR ORIGINAL, CUALQUIERA DE LOS COLABORADORES O DISTRIBUIDORES DEL "
+"DOCUMENTO O UNA VERSIÓN MODIFICADA DEL MISMO NI CUALQUIER PROVEEDOR DE TALES "
+"PARTES ANTE UN TERCERO, POR CUALQUIER PERJUICIO DIRECTO, INDIRECTO, "
+"ESPECIAL, ACCIDENTAL O CONSECUTIVO DE CUALQUIER TIPO, INCLUYENDO SIN "
+"LIMITACIÓN LOS DAÑOS POR PÉRDIDA DE CLIENTES, INTERRUPCIONES DEL TRABAJO, "
+"FALLO DE SISTEMAS O MALFUNCIONAMIENTO, O CUALQUIER OTRO DAÑO O PÉRDIDA "
+"CAUSADA O RELACIONADA CON EL USO DEL DOCUMENTO Y LAS VERSIONES MODIFICADAS "
+"DEL MISMO, AUN CUANDO SE HAYA INFORMADO DE LA POSIBILIDAD DE DICHOS DAÑOS."
+
+#: C/legal.xml:28(para)
+msgid ""
+"DOCUMENT AND MODIFIED VERSIONS OF THE DOCUMENT ARE PROVIDED UNDER THE TERMS "
+"OF THE GNU FREE DOCUMENTATION LICENSE WITH THE FURTHER UNDERSTANDING THAT: "
+"<placeholder-1/>"
+msgstr ""
+"ESTE DOCUMENTO Y LAS VERSIONES MODIFICADAS DEL MISMO SE OFRECEN SEGÚN LAS "
+"CONDICIONES ESTABLECIDAS EN LA LICENCIA DE DOCUMENTACIÓN LIBRE DE GNU (GFDL) "
+"Y TENIENDO EN CUENTA QUE: <placeholder-1/>"
+
+#. When image changes, this message will be marked fuzzy or untranslated for you.
+#. It doesn't matter what you translate it to: it's not used at all.
+#: C/mate-audio-profiles.xml:161(None)
+msgid ""
+"@@image: 'figures/mate-audio-profiles-profiles-window.png'; "
+"md5=08874167dcd48db9a9c2e9623706bb1b"
+msgstr ""
+"@@image: 'figures/mate-audio-profiles-profiles-window.png'; "
+"md5=08874167dcd48db9a9c2e9623706bb1b"
+
+#. When image changes, this message will be marked fuzzy or untranslated for you.
+#. It doesn't matter what you translate it to: it's not used at all.
+#: C/mate-audio-profiles.xml:194(None)
+msgid ""
+"@@image: 'figures/mate-audio-profiles-profile-window.png'; "
+"md5=21171454e8a63a62c751ce8fc3a8d11e"
+msgstr ""
+"@@image: 'figures/mate-audio-profiles-profile-window.png'; "
+"md5=21171454e8a63a62c751ce8fc3a8d11e"
+
+#: C/mate-audio-profiles.xml:26(title)
+msgid "<application>MATE Audio Profiles</application> Manual"
+msgstr "Manual de <application>Perfiles de sonido de MATE</application>"
+
+#: C/mate-audio-profiles.xml:28(para)
+msgid ""
+"<application>MATE Audio Profiles</application> is a set of audio encoding "
+"configurations for GStreamer based applications."
+msgstr ""
+"Los <application>Perfiles de sonido de MATE</application> son un conjunto "
+"de configuraciones de sonido para las aplicaciones basadas en GStreamer."
+
+#: C/mate-audio-profiles.xml:33(year)
+msgid "2008-2009"
+msgstr "2008-2009"
+
+#: C/mate-audio-profiles.xml:34(holder)
+#: C/mate-audio-profiles.xml:39(publishername)
+#: C/mate-audio-profiles.xml:80(para) C/mate-audio-profiles.xml:88(para)
+msgid "MATE Documentation Project"
+msgstr "Proyecto de documentación de MATE"
+
+#: C/mate-audio-profiles.xml:49(firstname)
+msgid "Marc-Andre"
+msgstr "Marc-Andre"
+
+#: C/mate-audio-profiles.xml:50(surname)
+msgid "Lureau"
+msgstr "Lureau"
+
+#: C/mate-audio-profiles.xml:52(orgname)
+msgid "MATE Project"
+msgstr "Proyecto MATE"
+
+#: C/mate-audio-profiles.xml:53(email)
+
+#: C/mate-audio-profiles.xml:74(revnumber)
+msgid "Audio Profiles Manual V2.27.0"
+msgstr "Manual de los Perfiles de sonido V2.27.0"
+
+#: C/mate-audio-profiles.xml:75(date)
+msgid "June 2009"
+msgstr "Junio de 2009"
+
+#: C/mate-audio-profiles.xml:77(para)
+msgid "Fill some blanks, add screenshots."
+msgstr "Rellenar algunos espacios vacíos, añadir capturas de pantalla."
+
+#: C/mate-audio-profiles.xml:78(para)
+msgid "Release with MATE Media 2.27.3"
+msgstr "Publicado con MATE Media 2.27.3"
+
+#: C/mate-audio-profiles.xml:79(para) C/mate-audio-profiles.xml:87(para)
+msgid "Marc-Andre Lureau"
+msgstr "Marc-Andre Lureau"
+
+#: C/mate-audio-profiles.xml:84(revnumber)
+msgid "Audio Profiles Manual V0.1"
+msgstr "Manual de los Perfiles de sonido V0.1"
+
+#: C/mate-audio-profiles.xml:85(date)
+msgid "December 2008"
+msgstr "Diciembre de 2008"
+
+#: C/mate-audio-profiles.xml:93(releaseinfo)
+msgid "This manual describes version 2.27.3 of MATE Audio Profiles."
+msgstr ""
+"Este manual describe la versión 2.27.3 de los Perfiles de sonido de MATE."
+
+#: C/mate-audio-profiles.xml:96(title)
+msgid "Feedback"
+msgstr "Comentarios"
+
+#: C/mate-audio-profiles.xml:97(para)
+msgid ""
+"To report a bug or make a suggestion regarding the <application>MATE Audio "
+"Profiles</application> application or this manual, follow the directions in "
+"the <ulink url=\"ghelp:user-guide?feedback-bugs\" type=\"help\">Feedback "
+"section of the MATE User Guide</ulink>."
+msgstr ""
+"Para informar de un fallo, o hacer alguna sugerencia concerniente la "
+"aplicación <application>Perfiles de sonido de MATE</application> o este "
+"manual, siga las indicaciones en la <ulink url=\"ghelp:user-guide?feedback-"
+"bugs\" type=\"help\">Página de comentarios de MATE</ulink>."
+
+#: C/mate-audio-profiles.xml:106(primary)
+#: C/mate-audio-profiles.xml:0(application)
+msgid "MATE Audio Profiles"
+msgstr "Perfiles de sonido de MATE"
+
+#: C/mate-audio-profiles.xml:113(title)
+msgid "Introduction"
+msgstr "Introducción"
+
+#: C/mate-audio-profiles.xml:114(para)
+msgid ""
+"<application>MATE Audio Profiles</application> let you select and modify a "
+"list of pre-defined encoding formats. By default, <application>MATE Audio "
+"Profiles</application> provides the following audio format:"
+msgstr ""
+"Los <application>Perfiles de sonido de MATE</application> le permiten "
+"seleccionar y modificar una lista de formatos de codificación predefinidos. "
+"De forma predeterminada los <application>Perfiles de sonido de MATE</"
+"application> proporcionan los siguientes formatos de sonido:"
+
+#: C/mate-audio-profiles.xml:118(para)
+msgid "AAC-MP4 - The new standard of lossy compression."
+msgstr "AAC-MP4: el nuevo estándar de compresión con pérdida."
+
+#: C/mate-audio-profiles.xml:121(para)
+msgid "Ogg Vorbis - Xiph.Org lossy compression."
+msgstr "Ogg Vorbis: compresión con pérdida de Xiph.Org."
+
+#: C/mate-audio-profiles.xml:124(para)
+msgid "Speex - Xiph.Org lossy compression optimized for voice."
+msgstr "Speex: compresión con pérdida de Xiph.Org optimizada para voz."
+
+#: C/mate-audio-profiles.xml:127(para)
+msgid "FLAC - Xiph.Org lossless audio compression."
+msgstr "FLAC: compresión sin pérdida de Xiph.Org."
+
+#: C/mate-audio-profiles.xml:130(para)
+msgid "MP3 - The popular lossy compression format."
+msgstr "MP3: el popular formato de compresión con pérdida."
+
+#: C/mate-audio-profiles.xml:133(para)
+msgid "MP2 - MPEG-1 Audio Layer II, largely supported."
+msgstr "MP2: sonido MPEG-1 Layer II, ampliamente soportado."
+
+#: C/mate-audio-profiles.xml:136(para)
+msgid "WAV - Lossless."
+msgstr "WAV: sin pérdida."
+
+#: C/mate-audio-profiles.xml:141(para)
+msgid "Some format may be illegal in your jurisdiction."
+msgstr "Algunos formatos pueden ser ilegales en su jurisdicción."
+
+#: C/mate-audio-profiles.xml:146(title)
+msgid "Usage"
+msgstr "Uso"
+
+#: C/mate-audio-profiles.xml:147(para)
+msgid ""
+"Use <application>MATE Audio Profiles</application> to modify a list of pre-"
+"defined encoding formats."
+msgstr ""
+"Use los <application>Perfiles de sonido de MATE</application> para "
+"modificar una lista de formatos de codificación predefinidos."
+
+#: C/mate-audio-profiles.xml:150(title)
+msgid "Profile selection dialog"
+msgstr "Diálogo de selección del perfil"
+
+#: C/mate-audio-profiles.xml:152(para)
+msgid ""
+"The following window is displayed to modify, add or remove the pre-defined "
+"formats."
+msgstr ""
+"La siguiente ventana se muestra para modificar, añadir o quitar los formatos "
+"predefinidos."
+
+#: C/mate-audio-profiles.xml:157(title)
+msgid "<application>MATE Audio Profiles</application> Window"
+msgstr "Ventana de los <application>Perfiles de sonido de MATE</application>"
+
+#: C/mate-audio-profiles.xml:164(phrase)
+msgid ""
+"Shows <placeholder-1/> main window. Contains list of profiles and "
+"modification options."
+msgstr ""
+"Muestra la ventana principal de <placeholder-1/>. Contiene una lista de "
+"perfiles y las opciones de modificación."
+
+#. ==== End of Figure ====
+#: C/mate-audio-profiles.xml:172(para)
+msgid ""
+"Select one of the profiles and click \"Edit\" to modify it. The \"Profile "
+"modification window\" will be displayed."
+msgstr ""
+"Seleccione uno de los perfiles y pulse «Editar» para modificarlo. Se mostrará "
+"la «Ventana de modificación de perfil»."
+
+#: C/mate-audio-profiles.xml:175(para)
+msgid ""
+"\"Delete\" will remove the currently selected profile from the list of "
+"profiles."
+msgstr ""
+"«Borrar» quitará de la lista de perfiles el perfil actualmente seleccionado."
+
+#: C/mate-audio-profiles.xml:178(para)
+msgid ""
+"To create a new profile, click \"New\". The \"Profile 5~ modification window"
+"\" will be displayed."
+msgstr ""
+"Para crear un perfil nuevo pulse «Nuevo». Se mostrará la «Ventana de "
+"modificación de perfil»."
+
+#: C/mate-audio-profiles.xml:184(title)
+msgid "Profile editing"
+msgstr "Editar perfiles"
+
+#: C/mate-audio-profiles.xml:186(para)
+msgid ""
+"<application>MATE Audio Profiles</application> let you modify the "
+"parameters of an audio profile."
+msgstr ""
+"Los <application>Perfiles de sonido de MATE</application> le permiten "
+"modificar los parámetros de un perfil de sonido."
+
+#: C/mate-audio-profiles.xml:190(title)
+msgid "Profile modification window"
+msgstr "Ventana de modificación de perfiles"
+
+#: C/mate-audio-profiles.xml:197(phrase)
+msgid "Shows <placeholder-1/> profile window."
+msgstr "Muestra la ventana de perfil de <placeholder-1/>."
+
+#: C/mate-audio-profiles.xml:206(para)
+msgid "Profile name - user friendly name of the profile."
+msgstr "Nombre del perfil: nombre amigable del perfil."
+
+#: C/mate-audio-profiles.xml:209(para)
+msgid "Profile description - long description of this profile."
+msgstr "Descripción del perfil: descripción larga de este perfil."
+
+#: C/mate-audio-profiles.xml:212(para)
+msgid "GStreamer pipeline - the GStreamer encoding pipeline."
+msgstr "Tubería GStreamer: la tubería de codificación de GStreamer."
+
+#: C/mate-audio-profiles.xml:215(para)
+msgid "File extension - the filename extension associated to this profile."
+msgstr ""
+"Extensión de archivo: la extensión de archivo asociada con este perfil."
+
+#: C/mate-audio-profiles.xml:219(para)
+msgid "Active - whether this profile is listed in client application."
+msgstr "Activo: indica si este perfil está listado en la aplicación cliente."
+
+#: C/mate-audio-profiles.xml:246(title)
+msgid "About <application>MATE Audio Profiles</application>"
+msgstr "Acerca de los <application>Perfiles de sonido de MATE</application>"
+
+#: C/mate-audio-profiles.xml:247(para)
+msgid ""
+"To report a bug or make a suggestion regarding this application or this "
+"manual, follow the directions in the <ulink url=\"ghelp:user-guide?feedback-"
+"bugs\" type=\"help\">Feedback section of the MATE User Guide</ulink>."
+msgstr ""
+"Para informar de un fallo, o hacer alguna sugerencia concerniente a esta "
+"aplicación o este manual, siga las indicaciones en la <ulink url=\"ghelp:"
+"user-guide?feedback-bugs\" type=\"help\">Página de comentarios de la Guía "
+"del usuario de MATE</ulink>."
+
+#: C/mate-audio-profiles.xml:253(para)
+msgid ""
+"This program is distributed under the terms of the GNU Library General "
+"Public license as published by the Free Software Foundation; either version "
+"2 of the License, or (at your option) any later version. A <ulink url="
+"\"ghelp:lgpl\" type=\"help\">copy of this license</ulink> is included with "
+"this documentation; another can be found in the file COPYING included with "
+"the source code of this program."
+msgstr ""
+"Este programa se distribuye bajo los términos de la Licencia Pública General "
+"GNU tal como la publica la Free Software Foundation; en cualquiera de las "
+"versiones 2 de la Licencia o (a su elección) cualquier versión posterior. Se "
+"incluye una <ulink url=\"ghelp:lgpl\" type=\"help\">copia de esta licencia</"
+"ulink> en esta documentación; puede encontrar otra copia en en el archivo "
+"COPYING incluido con el código fuente de este programa."
+
+#. Put one translator per line, in the form of NAME <EMAIL>, YEAR1, YEAR2
+#: C/mate-audio-profiles.xml:0(None)
+msgid "translator-credits"
+msgstr "Jorge González <[email protected]>, 2009"
diff --git a/profiles/help/fr/figures/mate-audio-profiles-profile-window.png b/profiles/help/fr/figures/mate-audio-profiles-profile-window.png
new file mode 100644
index 0000000..c74a97d
--- /dev/null
+++ b/profiles/help/fr/figures/mate-audio-profiles-profile-window.png
Binary files differ
diff --git a/profiles/help/fr/figures/mate-audio-profiles-profiles-window.png b/profiles/help/fr/figures/mate-audio-profiles-profiles-window.png
new file mode 100644
index 0000000..2e54cdd
--- /dev/null
+++ b/profiles/help/fr/figures/mate-audio-profiles-profiles-window.png
Binary files differ
diff --git a/profiles/help/fr/fr.po b/profiles/help/fr/fr.po
new file mode 100644
index 0000000..0073440
--- /dev/null
+++ b/profiles/help/fr/fr.po
@@ -0,0 +1,427 @@
+# French translation for mate-media.
+# Copyright (C) 2009 mate-media's COPYRIGHT HOLDER
+# This file is distributed under the same license as the mate-media package.
+#
+# Laurent Coudeur <[email protected]>, 2009.
+# Bruno Brouard <[email protected]>, 2010.
+msgid ""
+msgstr ""
+"Project-Id-Version: mate-media master\n"
+"POT-Creation-Date: 2009-11-09 14:17+0000\n"
+"PO-Revision-Date: 2010-03-20 15:39+0100\n"
+"Last-Translator: Bruno Brouard <[email protected]>\n"
+"Language-Team: MATE French Team <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n > 1);\n"
+
+#: C/legal.xml:2(para)
+msgid ""
+"Permission is granted to copy, distribute and/or modify this document under "
+"the terms of the GNU Free Documentation License (GFDL), Version 1.1 or any "
+"later version published by the Free Software Foundation with no Invariant "
+"Sections, no Front-Cover Texts, and no Back-Cover Texts. You can find a copy "
+"of the GFDL at this <ulink type=\"help\" url=\"ghelp:fdl\">link</ulink> or "
+"in the file COPYING-DOCS distributed with this manual."
+msgstr ""
+"Permission vous est donnée de copier, distribuer et/ou modifier ce document "
+"selon les termes de la licence de documentation libre GNU, Version 1.1 ou "
+"ultérieure publiée par la Free Software Foundation sans section inaltérable, "
+"sans texte de première page de couverture ni texte de dernière page de "
+"couverture. Vous trouverez un exemplaire de cette licence en suivant ce "
+"<ulink type=\"help\" url=\"ghelp:fdl\">lien</ulink> ou dans le fichier "
+"COPYING-DOCS fourni avec le présent manuel."
+
+#: C/legal.xml:12(para)
+msgid ""
+"This manual is part of a collection of MATE manuals distributed under the "
+"GFDL. If you want to distribute this manual separately from the collection, "
+"you can do so by adding a copy of the license to the manual, as described in "
+"section 6 of the license."
+msgstr ""
+"Ce manuel fait partie de la collection de manuels MATE distribués selon les "
+"termes de la licence de documentation libre GNU. Si vous souhaitez "
+"distribuer ce manuel indépendamment de la collection, vous devez joindre un "
+"exemplaire de la licence au document, comme indiqué dans la section 6 de "
+"celle-ci."
+
+#: C/legal.xml:19(para)
+msgid ""
+"Many of the names used by companies to distinguish their products and "
+"services are claimed as trademarks. Where those names appear in any MATE "
+"documentation, and the members of the MATE Documentation Project are made "
+"aware of those trademarks, then the names are in capital letters or initial "
+"capital letters."
+msgstr ""
+"La plupart des noms utilisés par les entreprises pour distinguer leurs "
+"produits et services sont des marques déposées. Lorsque ces noms "
+"apparaissent dans la documentation MATE et que les membres du projet de "
+"documentation MATE sont informés de l'existence de ces marques déposées, "
+"soit ces noms entiers, soit leur première lettre est en majuscule."
+
+#: C/legal.xml:35(para)
+msgid ""
+"DOCUMENT IS PROVIDED ON AN \"AS IS\" BASIS, WITHOUT WARRANTY OF ANY KIND, "
+"EITHER EXPRESSED OR IMPLIED, INCLUDING, WITHOUT LIMITATION, WARRANTIES THAT "
+"THE DOCUMENT OR MODIFIED VERSION OF THE DOCUMENT IS FREE OF DEFECTS "
+"MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE OR NON-INFRINGING. THE ENTIRE "
+"RISK AS TO THE QUALITY, ACCURACY, AND PERFORMANCE OF THE DOCUMENT OR "
+"MODIFIED VERSION OF THE DOCUMENT IS WITH YOU. SHOULD ANY DOCUMENT OR "
+"MODIFIED VERSION PROVE DEFECTIVE IN ANY RESPECT, YOU (NOT THE INITIAL "
+"WRITER, AUTHOR OR ANY CONTRIBUTOR) ASSUME THE COST OF ANY NECESSARY "
+"SERVICING, REPAIR OR CORRECTION. THIS DISCLAIMER OF WARRANTY CONSTITUTES AN "
+"ESSENTIAL PART OF THIS LICENSE. NO USE OF ANY DOCUMENT OR MODIFIED VERSION "
+"OF THE DOCUMENT IS AUTHORIZED HEREUNDER EXCEPT UNDER THIS DISCLAIMER; AND "
+"UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY, WHETHER IN TORT (INCLUDING "
+"NEGLIGENCE), CONTRACT, OR OTHERWISE, SHALL THE AUTHOR, INITIAL WRITER, ANY "
+"CONTRIBUTOR, OR ANY DISTRIBUTOR OF THE DOCUMENT OR MODIFIED VERSION OF THE "
+"DOCUMENT, OR ANY SUPPLIER OF ANY OF SUCH PARTIES, BE LIABLE TO ANY PERSON "
+"FOR ANY DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF "
+"ANY CHARACTER INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF GOODWILL, "
+"WORK STOPPAGE, COMPUTER FAILURE OR MALFUNCTION, OR ANY AND ALL OTHER DAMAGES "
+"OR LOSSES ARISING OUT OF OR RELATING TO USE OF THE DOCUMENT AND MODIFIED "
+"VERSIONS OF THE DOCUMENT, EVEN IF SUCH PARTY SHALL HAVE BEEN INFORMED OF THE "
+"POSSIBILITY OF SUCH DAMAGES."
+msgstr ""
+"LE PRÉSENT DOCUMENT EST FOURNI « TEL QUEL », SANS AUCUNE GARANTIE, EXPRESSE "
+"OU IMPLICITE, Y COMPRIS, ET SANS LIMITATION, LES GARANTIES DE "
+"MARCHANDABILITÉ, D'ADÉQUATION À UN OBJECTIF PARTICULIER OU DE NON INFRACTION "
+"DU DOCUMENT OU DE SA VERSION MODIFIÉE. L'UTILISATEUR ASSUME TOUT RISQUE "
+"RELATIF À LA QUALITÉ, À LA PERTINENCE ET À LA PERFORMANCE DU DOCUMENT OU DE "
+"SA VERSION DE MISE À JOUR. SI LE DOCUMENT OU SA VERSION MODIFIÉE S'AVÉRAIT "
+"DÉFECTUEUSE, L'UTILISATEUR (ET NON LE RÉDACTEUR INITIAL, L'AUTEUR, NI TOUT "
+"AUTRE PARTICIPANT) ENDOSSERA LES COÛTS DE TOUTE INTERVENTION, RÉPARATION OU "
+"CORRECTION NÉCESSAIRE. CETTE DÉNÉGATION DE RESPONSABILITÉ CONSTITUE UNE "
+"PARTIE ESSENTIELLE DE CETTE LICENCE. AUCUNE UTILISATION DE CE DOCUMENT OU DE "
+"SA VERSION MODIFIÉE N'EST AUTORISÉE AUX TERMES DU PRÉSENT ACCORD, EXCEPTÉ "
+"SOUS CETTE DÉNÉGATION DE RESPONSABILITÉ ; EN AUCUNE CIRCONSTANCE ET SOUS "
+"AUCUNE INTERPRÉTATION DE LA LOI, QU'IL S'AGISSE DE RESPONSABILITÉ CIVILE (Y "
+"COMPRIS LA NÉGLIGENCE), CONTRACTUELLE OU AUTRE, L'AUTEUR, LE RÉDACTEUR "
+"INITIAL, TOUT PARTICIPANT ET TOUT DISTRIBUTEUR DE CE DOCUMENT OU DE SA "
+"VERSION DE MISE À JOUR AINSI QUE TOUT FOURNISSEUR DE QUELQUE PARTIE QUE CE "
+"SOIT NE POURRONT ÊTRE TENUS RESPONSABLES À L'ÉGARD DE QUICONQUE POUR TOUT "
+"DOMMAGE DIRECT, INDIRECT, PARTICULIER OU ACCIDENTEL DE TOUT TYPE Y COMPRIS, "
+"SANS LIMITATION, LES DOMMAGES LIÉS À LA PERTE DE CLIENTÈLE, AUX ARRÊTS DE "
+"TRAVAIL, AUX DÉFAILLANCES ET AUX DYSFONCTIONNEMENTS INFORMATIQUES OU TOUT "
+"AUTRE DOMMAGE OU PERTE LIÉE À L'UTILISATION DU PRÉSENT DOCUMENT ET DE SES "
+"VERSIONS DE MISE À JOUR, ET CE MÊME SI CES PARTIES ONT ÉTÉ INFORMÉES DE LA "
+"POSSIBILITÉ DE TELS DOMMAGES."
+
+#: C/legal.xml:28(para)
+msgid ""
+"DOCUMENT AND MODIFIED VERSIONS OF THE DOCUMENT ARE PROVIDED UNDER THE TERMS "
+"OF THE GNU FREE DOCUMENTATION LICENSE WITH THE FURTHER UNDERSTANDING THAT: "
+"<placeholder-1/>"
+msgstr ""
+"LE PRÉSENT DOCUMENT ET SES VERSIONS DE MISE À JOUR SONT FOURNIS SOUS LES "
+"CONDITIONS DE L'ACCORD DE LICENCE DE DOCUMENTATION LIBRE GNU, SACHANT QUE : "
+"<placeholder-1/>"
+
+#. When image changes, this message will be marked fuzzy or untranslated for you.
+#. It doesn't matter what you translate it to: it's not used at all.
+#: C/mate-audio-profiles.xml:161(None)
+msgid ""
+"@@image: 'figures/mate-audio-profiles-profiles-window.png'; "
+"md5=08874167dcd48db9a9c2e9623706bb1b"
+msgstr ""
+"@@image: 'figures/mate-audio-profiles-profiles-window.png'; "
+"md5=08874167dcd48db9a9c2e9623706bb1b"
+
+#. When image changes, this message will be marked fuzzy or untranslated for you.
+#. It doesn't matter what you translate it to: it's not used at all.
+#: C/mate-audio-profiles.xml:194(None)
+msgid ""
+"@@image: 'figures/mate-audio-profiles-profile-window.png'; "
+"md5=21171454e8a63a62c751ce8fc3a8d11e"
+msgstr ""
+"@@image: 'figures/mate-audio-profiles-profile-window.png'; "
+"md5=21171454e8a63a62c751ce8fc3a8d11e"
+
+#: C/mate-audio-profiles.xml:26(title)
+msgid "<application>MATE Audio Profiles</application> Manual"
+msgstr "Manuel de <application>MATE Audio Profiles</application>"
+
+#: C/mate-audio-profiles.xml:28(para)
+msgid ""
+"<application>MATE Audio Profiles</application> is a set of audio encoding "
+"configurations for GStreamer based applications."
+msgstr ""
+"<application>MATE Audio Profiles</application> est un ensemble de "
+"configurations "
+"de codage audio pour les applications utilisant GStreamer."
+
+#: C/mate-audio-profiles.xml:33(year)
+msgid "2008-2009"
+msgstr "2008-2009"
+
+#: C/mate-audio-profiles.xml:34(holder)
+#: C/mate-audio-profiles.xml:39(publishername)
+#: C/mate-audio-profiles.xml:80(para) C/mate-audio-profiles.xml:88(para)
+msgid "MATE Documentation Project"
+msgstr "Le projet de documentation MATE"
+
+#: C/mate-audio-profiles.xml:49(firstname)
+msgid "Marc-Andre"
+msgstr "Marc-Andre"
+
+#: C/mate-audio-profiles.xml:50(surname)
+msgid "Lureau"
+msgstr "Lureau"
+
+#: C/mate-audio-profiles.xml:52(orgname)
+msgid "MATE Project"
+msgstr "Projet MATE"
+
+#: C/mate-audio-profiles.xml:53(email)
+
+#: C/mate-audio-profiles.xml:74(revnumber)
+msgid "Audio Profiles Manual V2.27.0"
+msgstr "Manuel de Audio Profiles V2.27.0"
+
+#: C/mate-audio-profiles.xml:75(date)
+msgid "June 2009"
+msgstr "Juin 2009"
+
+#: C/mate-audio-profiles.xml:77(para)
+msgid "Fill some blanks, add screenshots."
+msgstr "Compléter des zone vides, ajouter des captures d'écran."
+
+#: C/mate-audio-profiles.xml:78(para)
+msgid "Release with MATE Media 2.27.3"
+msgstr "Version de MATE Media 2.27.3"
+
+#: C/mate-audio-profiles.xml:79(para) C/mate-audio-profiles.xml:87(para)
+msgid "Marc-Andre Lureau"
+msgstr "Marc-Andre Lureau"
+
+#: C/mate-audio-profiles.xml:84(revnumber)
+msgid "Audio Profiles Manual V0.1"
+msgstr "Manuel de Audio Profiles V0.1"
+
+#: C/mate-audio-profiles.xml:85(date)
+msgid "December 2008"
+msgstr "Décembre 2008"
+
+#: C/mate-audio-profiles.xml:93(releaseinfo)
+msgid "This manual describes version 2.27.3 of MATE Audio Profiles."
+msgstr "Ce manuel documente la version 2.27.3 de MATE Audio Profiles."
+
+#: C/mate-audio-profiles.xml:96(title)
+msgid "Feedback"
+msgstr "Votre avis"
+
+#: C/mate-audio-profiles.xml:97(para)
+msgid ""
+"To report a bug or make a suggestion regarding the <application>MATE Audio "
+"Profiles</application> application or this manual, follow the directions in "
+"the <ulink url=\"ghelp:user-guide?feedback-bugs\" type=\"help\">Feedback "
+"section of the MATE User Guide</ulink>."
+msgstr ""
+"Pour rapporter une anomalie ou émettre une suggestion concernant <"
+"application>MATE Audio "
+"Profiles</application> ou ce manuel, procédez selon les instructions de <"
+"ulink url="
+"\"ghelp:user-guide?feedback-bugs\" type=\"help\">la section « Votre avis » "
+"du "
+"Guide d'utilisation du bureau MATE</ulink>."
+
+#: C/mate-audio-profiles.xml:106(primary)
+#: C/mate-audio-profiles.xml:0(application)
+msgid "MATE Audio Profiles"
+msgstr "MATE Audio Profiles"
+
+#: C/mate-audio-profiles.xml:113(title)
+msgid "Introduction"
+msgstr "Introduction"
+
+#: C/mate-audio-profiles.xml:114(para)
+msgid ""
+"<application>MATE Audio Profiles</application> let you select and modify a "
+"list of pre-defined encoding formats. By default, <application>MATE Audio "
+"Profiles</application> provides the following audio format:"
+msgstr ""
+"<application>MATE Audio Profiles</application> vous permet de sélectionner "
+"et de modifier la "
+"liste de format de codage prédéfinis. Par défaut, <application>MATE Audio "
+"Profile</application> fournit les format audio suivants :"
+
+#: C/mate-audio-profiles.xml:118(para)
+msgid "AAC-MP4 - The new standard of lossy compression."
+msgstr "AAC-MP4 - le nouveau standard de compression avec pertes,"
+
+#: C/mate-audio-profiles.xml:121(para)
+msgid "Ogg Vorbis - Xiph.Org lossy compression."
+msgstr "Ogg Vorbis - compression avec pertes de Xiph.Org,"
+
+#: C/mate-audio-profiles.xml:124(para)
+msgid "Speex - Xiph.Org lossy compression optimized for voice."
+msgstr "Speex - compression avec pertes optimisée pour la voix de Xiph.Org,"
+
+#: C/mate-audio-profiles.xml:127(para)
+msgid "FLAC - Xiph.Org lossless audio compression."
+msgstr "FLAC - compression audio sans perte de Xiph.Org,"
+
+#: C/mate-audio-profiles.xml:130(para)
+msgid "MP3 - The popular lossy compression format."
+msgstr "MP3 - le célèbre format de compression avec pertes,"
+
+#: C/mate-audio-profiles.xml:133(para)
+msgid "MP2 - MPEG-1 Audio Layer II, largely supported."
+msgstr "MP2 - MPEG-1 Audio Layer II, largement pris en charge,"
+
+#: C/mate-audio-profiles.xml:136(para)
+msgid "WAV - Lossless."
+msgstr "WAV - sans perte."
+
+#: C/mate-audio-profiles.xml:141(para)
+msgid "Some format may be illegal in your jurisdiction."
+msgstr ""
+"Certains formats peuvent être illégaux dans le ressort de votre juridiction."
+
+#: C/mate-audio-profiles.xml:146(title)
+msgid "Usage"
+msgstr "Utilisation"
+
+#: C/mate-audio-profiles.xml:147(para)
+msgid ""
+"Use <application>MATE Audio Profiles</application> to modify a list of pre-"
+"defined encoding formats."
+msgstr ""
+"Utilisez <application>MATE Audio Profiles</application> pour modifier une "
+"liste de formats de codage prédéfinis."
+
+#: C/mate-audio-profiles.xml:150(title)
+msgid "Profile selection dialog"
+msgstr "Boîte de dialogue de sélection de profils"
+
+#: C/mate-audio-profiles.xml:152(para)
+msgid ""
+"The following window is displayed to modify, add or remove the pre-defined "
+"formats."
+msgstr ""
+"La fenêtre suivante est affichée pour modifier, ajouter ou supprimer des "
+"formats prédéfinis."
+
+#: C/mate-audio-profiles.xml:157(title)
+msgid "<application>MATE Audio Profiles</application> Window"
+msgstr "Fenêtre <application>MATE Audio Profiles</application>"
+
+#: C/mate-audio-profiles.xml:164(phrase)
+msgid ""
+"Shows <placeholder-1/> main window. Contains list of profiles and "
+"modification options."
+msgstr ""
+"Affiche la fenêtre principale <placeholder-1/>. Celle-ci contient la liste "
+"des profils et les options de modifications."
+
+#. ==== End of Figure ====
+#: C/mate-audio-profiles.xml:172(para)
+msgid ""
+"Select one of the profiles and click \"Edit\" to modify it. The \"Profile "
+"modification window\" will be displayed."
+msgstr ""
+"Sélectionnez un des profils et cliquez sur « Modifier » pour le modifier. La "
+"fenêtre « Modification du profil » s'affiche."
+
+#: C/mate-audio-profiles.xml:175(para)
+msgid ""
+"\"Delete\" will remove the currently selected profile from the list of "
+"profiles."
+msgstr "« Supprimer » enlève le profil sélectionné de la liste des profils."
+
+# incorrect a first naming window opens
+#: C/mate-audio-profiles.xml:178(para)
+msgid ""
+"To create a new profile, click \"New\". The \"Profile 5~ modification window"
+"\" will be displayed."
+msgstr ""
+"Pour créer un nouveau profil, cliquez sur « Nouveau ». La fenêtre « Nouveau "
+"profil » s'affiche."
+
+#: C/mate-audio-profiles.xml:184(title)
+msgid "Profile editing"
+msgstr "Modification de profil"
+
+#: C/mate-audio-profiles.xml:186(para)
+msgid ""
+"<application>MATE Audio Profiles</application> let you modify the "
+"parameters of an audio profile."
+msgstr ""
+"<application>MATE Audio Profiles</application> vous permet de modifier les "
+"paramètres d'un profil audio."
+
+#: C/mate-audio-profiles.xml:190(title)
+msgid "Profile modification window"
+msgstr "Fenêtre de modification du profil"
+
+#: C/mate-audio-profiles.xml:197(phrase)
+msgid "Shows <placeholder-1/> profile window."
+msgstr "Affiche la fenêtre <placeholder-1/> du profil."
+
+#: C/mate-audio-profiles.xml:206(para)
+msgid "Profile name - user friendly name of the profile."
+msgstr "Nom du profil - le nom convivial du profil,"
+
+#: C/mate-audio-profiles.xml:209(para)
+msgid "Profile description - long description of this profile."
+msgstr "Description du profil - la description complète de ce profil,"
+
+#: C/mate-audio-profiles.xml:212(para)
+msgid "GStreamer pipeline - the GStreamer encoding pipeline."
+msgstr "Pipeline GStreamer - le pipeline de codage de GStreamer,"
+
+#: C/mate-audio-profiles.xml:215(para)
+msgid "File extension - the filename extension associated to this profile."
+msgstr ""
+"Extension du fichier - l'extension du nom de fichier associée à ce profil,"
+
+#: C/mate-audio-profiles.xml:219(para)
+msgid "Active - whether this profile is listed in client application."
+msgstr ""
+"Actif - indique si le profil s'affiche dans la liste d'une application "
+"cliente."
+
+#: C/mate-audio-profiles.xml:246(title)
+msgid "About <application>MATE Audio Profiles</application>"
+msgstr "À propos de <application>MATE Audio Profiles</application>"
+
+#: C/mate-audio-profiles.xml:247(para)
+msgid ""
+"To report a bug or make a suggestion regarding this application or this "
+"manual, follow the directions in the <ulink url=\"ghelp:user-guide?feedback-"
+"bugs\" type=\"help\">Feedback section of the MATE User Guide</ulink>."
+msgstr ""
+"Pour rapporter une anomalie ou émettre une suggestion concernant cette "
+"application "
+"ou ce manuel, procédez selon les instructions de "
+"<ulink url=\"ghelp:user-guide?feedback-bugs\" type=\"help\">la section "
+"« Votre avis » du "
+"Guide d'utilisation du bureau MATE</ulink>."
+
+#: C/mate-audio-profiles.xml:253(para)
+msgid ""
+"This program is distributed under the terms of the GNU Library General "
+"Public license as published by the Free Software Foundation; either version "
+"2 of the License, or (at your option) any later version. A <ulink url="
+"\"ghelp:lgpl\" type=\"help\">copy of this license</ulink> is included with "
+"this documentation; another can be found in the file COPYING included with "
+"the source code of this program."
+msgstr ""
+"Ce programme est distribué selon les termes de la GNU Library General "
+"Public license, tels que publiés par la Free Software Foundation ; soit la "
+"version 2 de "
+"cette licence ou (à votre choix) toute version ultérieure. Vous trouverez "
+"une <ulink url=\"ghelp:lgpl\" type=\"help\">copie de cette licence</ulink> "
+"dans cette documentation ou dans le fichier COPYING fourni avec la source du "
+"code de ce programme."
+
+#. Put one translator per line, in the form of NAME <EMAIL>, YEAR1, YEAR2
+#: C/mate-audio-profiles.xml:0(None)
+msgid "translator-credits"
+msgstr ""
+"Laurent Coudeur <[email protected]>, 2009\n"
+"Bruno Brouard <[email protected]>, 2010"
+
diff --git a/profiles/help/mate-audio-profiles.omf.in b/profiles/help/mate-audio-profiles.omf.in
new file mode 100644
index 0000000..a1d5878
--- /dev/null
+++ b/profiles/help/mate-audio-profiles.omf.in
@@ -0,0 +1,9 @@
+<?xml version="1.0" standalone="no"?>
+<omf>
+ <resource>
+ <subject category="GNOME|Applications|Sound and Video"/>
+ <type>user's guide</type>
+ <relation seriesid="0b4175ce-79cd-4155-8e4e-172ed4328c4f"/>
+ <rights type="GNU FDL" license.version="1.1" holder="MATE Documentation Project"/>
+ </resource>
+</omf>
diff --git a/profiles/help/sv/figures/mate-audio-profiles-profile-window.png b/profiles/help/sv/figures/mate-audio-profiles-profile-window.png
new file mode 100644
index 0000000..736dd62
--- /dev/null
+++ b/profiles/help/sv/figures/mate-audio-profiles-profile-window.png
Binary files differ
diff --git a/profiles/help/sv/sv.po b/profiles/help/sv/sv.po
new file mode 100644
index 0000000..bbf675b
--- /dev/null
+++ b/profiles/help/sv/sv.po
@@ -0,0 +1,260 @@
+# Swedish translation for mate-media.
+# Copyright (C) 2010 mate-media's COPYRIGHT HOLDER
+# This file is distributed under the same license as the mate-media package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: mate-media doc\n"
+"POT-Creation-Date: 2010-01-17 19:59+0000\n"
+"PO-Revision-Date: 2010-01-18 02:37+0100\n"
+"Last-Translator: Daniel Nylander <[email protected]>\n"
+"Language-Team: Swedish <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#: C/legal.xml:2(para)
+msgid "Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License (GFDL), Version 1.1 or any later version published by the Free Software Foundation with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. You can find a copy of the GFDL at this <ulink type=\"help\" url=\"ghelp:fdl\">link</ulink> or in the file COPYING-DOCS distributed with this manual."
+msgstr "Tillstånd att kopiera, distribuera och/eller modifiera detta dokument ges under villkoren i GNU Free Documentation License (GFDL), version 1.1 eller senare, utgivet av Free Software Foundation utan standardavsnitt och omslagstexter. En kopia av GFDL finns att hämta på denna <ulink type=\"help\" url=\"ghelp:fdl\">länk</ulink> eller i filen COPYING-DOCS som medföljer denna handbok."
+
+#: C/legal.xml:12(para)
+msgid "This manual is part of a collection of MATE manuals distributed under the GFDL. If you want to distribute this manual separately from the collection, you can do so by adding a copy of the license to the manual, as described in section 6 of the license."
+msgstr "Denna handbok utgör en av flera MATE-handböcker som distribueras under villkoren i GFDL. Om du vill distribuera denna handbok separat från övriga handböcker kan du göra detta genom att lägga till en kopia av licensavtalet i handboken enligt instruktionerna i avsnitt 6 i licensavtalet."
+
+#: C/legal.xml:19(para)
+msgid "Many of the names used by companies to distinguish their products and services are claimed as trademarks. Where those names appear in any MATE documentation, and the members of the MATE Documentation Project are made aware of those trademarks, then the names are in capital letters or initial capital letters."
+msgstr "Flera namn på produkter och tjänster är registrerade varumärken. I de fall dessa namn förekommer i MATE-dokumentation - och medlemmarna i MATE-dokumentationsprojektet är medvetna om dessa varumärken - är de skrivna med versaler eller med inledande versal."
+
+#: C/legal.xml:35(para)
+msgid "DOCUMENT IS PROVIDED ON AN \"AS IS\" BASIS, WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, WITHOUT LIMITATION, WARRANTIES THAT THE DOCUMENT OR MODIFIED VERSION OF THE DOCUMENT IS FREE OF DEFECTS MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE OR NON-INFRINGING. THE ENTIRE RISK AS TO THE QUALITY, ACCURACY, AND PERFORMANCE OF THE DOCUMENT OR MODIFIED VERSION OF THE DOCUMENT IS WITH YOU. SHOULD ANY DOCUMENT OR MODIFIED VERSION PROVE DEFECTIVE IN ANY RESPECT, YOU (NOT THE INITIAL WRITER, AUTHOR OR ANY CONTRIBUTOR) ASSUME THE COST OF ANY NECESSARY SERVICING, REPAIR OR CORRECTION. THIS DISCLAIMER OF WARRANTY CONSTITUTES AN ESSENTIAL PART OF THIS LICENSE. NO USE OF ANY DOCUMENT OR MODIFIED VERSION OF THE DOCUMENT IS AUTHORIZED HEREUNDER EXCEPT UNDER THIS DISCLAIMER; AND UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY, WHETHER IN TORT (INCLUDING NEGLIGENCE), CONTRACT, OR OTHERWISE, SHALL THE AUTHOR, INITIAL WRITER, ANY CONTRIBUTOR, OR ANY DISTRIBUTOR OF THE DOCUMENT OR MODIFIED VERSION OF THE DOCUMENT, OR ANY SUPPLIER OF ANY OF SUCH PARTIES, BE LIABLE TO ANY PERSON FOR ANY DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF GOODWILL, WORK STOPPAGE, COMPUTER FAILURE OR MALFUNCTION, OR ANY AND ALL OTHER DAMAGES OR LOSSES ARISING OUT OF OR RELATING TO USE OF THE DOCUMENT AND MODIFIED VERSIONS OF THE DOCUMENT, EVEN IF SUCH PARTY SHALL HAVE BEEN INFORMED OF THE POSSIBILITY OF SUCH DAMAGES."
+msgstr "DOKUMENTET TILLHANDAHÅLLS I \"BEFINTLIGT SKICK\" UTAN NÅGRA SOM HELST GARANTIER, VARE SIG UTTRYCKLIGA ELLER UNDERFÖRSTÅDDA, INKLUSIVE, MEN INTE BEGRÄNSAT TILL, GARANTIER ATT DOKUMENTET ELLER EN MODIFIERAD VERSION AV DOKUMENTET INTE INNEHÅLLER NÅGRA FELAKTIGHETER, ÄR LÄMPLIGT FÖR ETT VISST ÄNDAMÅL ELLER INTE STRIDER MOT LAG. HELA RISKEN VAD GÄLLER KVALITET, EXAKTHET OCH UTFÖRANDE AV DOKUMENTET OCH MODIFIERADE VERSIONER AV DOKUMENTET LIGGER HELT OCH HÅLLET PÅ ANVÄNDAREN. OM ETT DOKUMENT ELLER EN MODIFIERAD VERSION AV ETT DOKUMENT SKULLE VISA SIG INNEHÅLLA FELAKTIGHETER I NÅGOT HÄNSEENDE ÄR DET DU (INTE DEN URSPRUNGLIGA SKRIBENTEN, FÖRFATTAREN ELLER NÅGON ANNAN MEDARBETARE) SOM FÅR STÅ FÖR ALLA EVENTUELLA KOSTNADER FÖR SERVICE, REPARATIONER ELLER KORRIGERINGAR. DENNA GARANTIFRISKRIVNING UTGÖR EN VÄSENTLIG DEL AV DETTA LICENSAVTAL. DETTA INNEBÄR ATT ALL ANVÄNDNING AV ETT DOKUMENT ELLER EN MODIFIERAD VERSION AV ETT DOKUMENT BEVILJAS ENDAST UNDER DENNA ANSVARSFRISKRIVNING; UNDER INGA OMSTÄNDIGHETER ELLER INOM RAMEN FÖR NÅGON LAGSTIFTNING, OAVSETT OM DET GÄLLER KRÄNKNING (INKLUSIVE VÅRDSLÖSHET), KONTRAKT ELLER DYLIKT, SKA FÖRFATTAREN, DEN URSPRUNGLIGA SKRIBENTEN ELLER ANNAN MEDARBETARE ELLER ÅTERFÖRSÄLJARE AV DOKUMENTET ELLER AV EN MODIFIERAD VERSION AV DOKUMENTET ELLER NÅGON LEVERANTÖR TILL NÅGON AV NÄMNDA PARTER STÄLLAS ANSVARIG GENTEMOT NÅGON FÖR NÅGRA DIREKTA, INDIREKTA, SÄRSKILDA ELLER OFÖRUTSEDDA SKADOR ELLER FÖLJDSKADOR AV NÅGOT SLAG, INKLUSIVE, MEN INTE BEGRÄNSAT TILL, SKADOR BETRÄFFANDE FÖRLORAD GOODWILL, HINDER I ARBETET, DATORHAVERI ELLER NÅGRA ANDRA TÄNKBARA SKADOR ELLER FÖRLUSTER SOM KAN UPPKOMMA PÅ GRUND AV ELLER RELATERAT TILL ANVÄNDNINGEN AV DOKUMENTET ELLER MODIFIERADE VERSIONER AV DOKUMENTET, ÄVEN OM PART SKA HA BLIVIT INFORMERAD OM MÖJLIGHETEN TILL SÅDANA SKADOR."
+
+#: C/legal.xml:28(para)
+msgid "DOCUMENT AND MODIFIED VERSIONS OF THE DOCUMENT ARE PROVIDED UNDER THE TERMS OF THE GNU FREE DOCUMENTATION LICENSE WITH THE FURTHER UNDERSTANDING THAT: <placeholder-1/>"
+msgstr "DOKUMENTET OCH MODIFIERADE VERSIONER AV DOKUMENTET TILLHANDAHÅLLS UNDER VILLKOREN I GNU FREE DOCUMENTATION LICENSE ENDAST UNDER FÖLJANDE FÖRUTSÄTTNINGAR: <placeholder-1/>"
+
+#. When image changes, this message will be marked fuzzy or untranslated for you.
+#. It doesn't matter what you translate it to: it's not used at all.
+#: C/mate-audio-profiles.xml:161(None)
+msgid "@@image: 'figures/mate-audio-profiles-profiles-window.png'; md5=08874167dcd48db9a9c2e9623706bb1b"
+msgstr "@@image: 'figures/mate-audio-profiles-profiles-window.png'; md5=08874167dcd48db9a9c2e9623706bb1b"
+
+#. When image changes, this message will be marked fuzzy or untranslated for you.
+#. It doesn't matter what you translate it to: it's not used at all.
+#: C/mate-audio-profiles.xml:194(None)
+msgid "@@image: 'figures/mate-audio-profiles-profile-window.png'; md5=21171454e8a63a62c751ce8fc3a8d11e"
+msgstr "@@image: 'figures/mate-audio-profiles-profile-window.png'; md5=21171454e8a63a62c751ce8fc3a8d11e"
+
+#: C/mate-audio-profiles.xml:26(title)
+msgid "<application>MATE Audio Profiles</application> Manual"
+msgstr "Handbok för <application>MATE-ljudprofiler</application>"
+
+#: C/mate-audio-profiles.xml:28(para)
+msgid "<application>MATE Audio Profiles</application> is a set of audio encoding configurations for GStreamer based applications."
+msgstr "<application>MATE-ljudprofiler</application> är en uppsättning ljudkodningskonfigurationer för GStreamer-baserade program."
+
+#: C/mate-audio-profiles.xml:33(year)
+msgid "2008-2009"
+msgstr "2008-2009"
+
+#: C/mate-audio-profiles.xml:34(holder)
+#: C/mate-audio-profiles.xml:39(publishername)
+#: C/mate-audio-profiles.xml:80(para)
+#: C/mate-audio-profiles.xml:88(para)
+msgid "MATE Documentation Project"
+msgstr "Dokumentionsprojekt för MATE"
+
+#: C/mate-audio-profiles.xml:49(firstname)
+msgid "Marc-Andre"
+msgstr "Marc-Andre"
+
+#: C/mate-audio-profiles.xml:50(surname)
+msgid "Lureau"
+msgstr "Lureau"
+
+#: C/mate-audio-profiles.xml:52(orgname)
+msgid "MATE Project"
+msgstr "MATE-projektet"
+
+#: C/mate-audio-profiles.xml:53(email)
+
+#: C/mate-audio-profiles.xml:74(revnumber)
+msgid "Audio Profiles Manual V2.27.0"
+msgstr "Handbok för Ljudprofiler v2.27.0"
+
+#: C/mate-audio-profiles.xml:75(date)
+msgid "June 2009"
+msgstr "Juni 2009"
+
+#: C/mate-audio-profiles.xml:77(para)
+msgid "Fill some blanks, add screenshots."
+msgstr ""
+
+#: C/mate-audio-profiles.xml:78(para)
+msgid "Release with MATE Media 2.27.3"
+msgstr "Utgiven med MATE Media 2.27.3"
+
+#: C/mate-audio-profiles.xml:79(para)
+#: C/mate-audio-profiles.xml:87(para)
+msgid "Marc-Andre Lureau"
+msgstr "Marc-Andre Lureau"
+
+#: C/mate-audio-profiles.xml:84(revnumber)
+msgid "Audio Profiles Manual V0.1"
+msgstr "Handbok för Ljudprofiler v0.1"
+
+#: C/mate-audio-profiles.xml:85(date)
+msgid "December 2008"
+msgstr "December 2008"
+
+#: C/mate-audio-profiles.xml:93(releaseinfo)
+msgid "This manual describes version 2.27.3 of MATE Audio Profiles."
+msgstr "Denna handbok beskriver version 2.27.3 av MATE-ljudprofiler."
+
+#: C/mate-audio-profiles.xml:96(title)
+msgid "Feedback"
+msgstr "Återkoppling"
+
+#: C/mate-audio-profiles.xml:97(para)
+msgid "To report a bug or make a suggestion regarding the <application>MATE Audio Profiles</application> application or this manual, follow the directions in the <ulink url=\"ghelp:user-guide?feedback-bugs\" type=\"help\">Feedback section of the MATE User Guide</ulink>."
+msgstr ""
+
+#: C/mate-audio-profiles.xml:106(primary)
+#: C/mate-audio-profiles.xml:0(application)
+msgid "MATE Audio Profiles"
+msgstr "MATE-ljudprofiler"
+
+#: C/mate-audio-profiles.xml:113(title)
+msgid "Introduction"
+msgstr "Introduktion"
+
+#: C/mate-audio-profiles.xml:114(para)
+msgid "<application>MATE Audio Profiles</application> let you select and modify a list of pre-defined encoding formats. By default, <application>MATE Audio Profiles</application> provides the following audio format:"
+msgstr ""
+
+#: C/mate-audio-profiles.xml:118(para)
+msgid "AAC-MP4 - The new standard of lossy compression."
+msgstr ""
+
+#: C/mate-audio-profiles.xml:121(para)
+msgid "Ogg Vorbis - Xiph.Org lossy compression."
+msgstr ""
+
+#: C/mate-audio-profiles.xml:124(para)
+msgid "Speex - Xiph.Org lossy compression optimized for voice."
+msgstr ""
+
+#: C/mate-audio-profiles.xml:127(para)
+msgid "FLAC - Xiph.Org lossless audio compression."
+msgstr ""
+
+#: C/mate-audio-profiles.xml:130(para)
+msgid "MP3 - The popular lossy compression format."
+msgstr ""
+
+#: C/mate-audio-profiles.xml:133(para)
+msgid "MP2 - MPEG-1 Audio Layer II, largely supported."
+msgstr ""
+
+#: C/mate-audio-profiles.xml:136(para)
+msgid "WAV - Lossless."
+msgstr ""
+
+#: C/mate-audio-profiles.xml:141(para)
+msgid "Some format may be illegal in your jurisdiction."
+msgstr ""
+
+#: C/mate-audio-profiles.xml:146(title)
+msgid "Usage"
+msgstr "Användning"
+
+#: C/mate-audio-profiles.xml:147(para)
+msgid "Use <application>MATE Audio Profiles</application> to modify a list of pre-defined encoding formats."
+msgstr ""
+
+#: C/mate-audio-profiles.xml:150(title)
+msgid "Profile selection dialog"
+msgstr ""
+
+#: C/mate-audio-profiles.xml:152(para)
+msgid "The following window is displayed to modify, add or remove the pre-defined formats."
+msgstr ""
+
+#: C/mate-audio-profiles.xml:157(title)
+msgid "<application>MATE Audio Profiles</application> Window"
+msgstr ""
+
+#: C/mate-audio-profiles.xml:164(phrase)
+msgid "Shows <placeholder-1/> main window. Contains list of profiles and modification options."
+msgstr ""
+
+#. ==== End of Figure ====
+#: C/mate-audio-profiles.xml:172(para)
+msgid "Select one of the profiles and click \"Edit\" to modify it. The \"Profile modification window\" will be displayed."
+msgstr ""
+
+#: C/mate-audio-profiles.xml:175(para)
+msgid "\"Delete\" will remove the currently selected profile from the list of profiles."
+msgstr ""
+
+#: C/mate-audio-profiles.xml:178(para)
+msgid "To create a new profile, click \"New\". The \"Profile 5~ modification window\" will be displayed."
+msgstr ""
+
+#: C/mate-audio-profiles.xml:184(title)
+msgid "Profile editing"
+msgstr "Profilredigering"
+
+#: C/mate-audio-profiles.xml:186(para)
+msgid "<application>MATE Audio Profiles</application> let you modify the parameters of an audio profile."
+msgstr ""
+
+#: C/mate-audio-profiles.xml:190(title)
+msgid "Profile modification window"
+msgstr ""
+
+#: C/mate-audio-profiles.xml:197(phrase)
+msgid "Shows <placeholder-1/> profile window."
+msgstr ""
+
+#: C/mate-audio-profiles.xml:206(para)
+msgid "Profile name - user friendly name of the profile."
+msgstr ""
+
+#: C/mate-audio-profiles.xml:209(para)
+msgid "Profile description - long description of this profile."
+msgstr ""
+
+#: C/mate-audio-profiles.xml:212(para)
+msgid "GStreamer pipeline - the GStreamer encoding pipeline."
+msgstr ""
+
+#: C/mate-audio-profiles.xml:215(para)
+msgid "File extension - the filename extension associated to this profile."
+msgstr ""
+
+#: C/mate-audio-profiles.xml:219(para)
+msgid "Active - whether this profile is listed in client application."
+msgstr ""
+
+#: C/mate-audio-profiles.xml:246(title)
+msgid "About <application>MATE Audio Profiles</application>"
+msgstr "Om <application>MATE-ljudprofiler</application>"
+
+#: C/mate-audio-profiles.xml:247(para)
+msgid "To report a bug or make a suggestion regarding this application or this manual, follow the directions in the <ulink url=\"ghelp:user-guide?feedback-bugs\" type=\"help\">Feedback section of the MATE User Guide</ulink>."
+msgstr ""
+
+#: C/mate-audio-profiles.xml:253(para)
+msgid "This program is distributed under the terms of the GNU Library General Public license as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. A <ulink url=\"ghelp:lgpl\" type=\"help\">copy of this license</ulink> is included with this documentation; another can be found in the file COPYING included with the source code of this program."
+msgstr ""
+
+#. Put one translator per line, in the form of NAME <EMAIL>, YEAR1, YEAR2
+#: C/mate-audio-profiles.xml:0(None)
+msgid "translator-credits"
+msgstr "Daniel Nylander <[email protected]>, 2010"
+
diff --git a/profiles/mate-audio-profile-edit.ui b/profiles/mate-audio-profile-edit.ui
new file mode 100644
index 0000000..95f51ec
--- /dev/null
+++ b/profiles/mate-audio-profile-edit.ui
@@ -0,0 +1,204 @@
+<?xml version="1.0"?>
+<interface>
+ <object class="GMAudioProfileEdit" id="profile-edit-dialog">
+ <property name="visible">True</property>
+ <property name="border_width">5</property>
+ <property name="title" translatable="yes">Edit Audio Profile</property>
+ <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property>
+ <property name="has_separator">False</property>
+ <child internal-child="vbox">
+ <object class="GtkVBox" id="profile-edit-content">
+ <property name="visible">True</property>
+ <property name="spacing">2</property>
+ <child>
+ <object class="GtkTable" id="table18">
+ <property name="visible">True</property>
+ <property name="border_width">5</property>
+ <property name="n_rows">5</property>
+ <property name="n_columns">2</property>
+ <property name="column_spacing">12</property>
+ <property name="row_spacing">6</property>
+ <child>
+ <object class="GtkEntry" id="profile-name-entry">
+ <property name="width_request">300</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <signal name="changed" handler="on_profile_name_entry_changed"/>
+ </object>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="y_options">GTK_FILL</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkScrolledWindow" id="scrolledwindow1">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="hscrollbar_policy">GTK_POLICY_NEVER</property>
+ <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
+ <property name="shadow_type">GTK_SHADOW_IN</property>
+ <child>
+ <object class="GtkTextView" id="profile-description-textview">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="wrap_mode">GTK_WRAP_WORD</property>
+ <property name="accepts_tab">False</property>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="top_attach">1</property>
+ <property name="bottom_attach">2</property>
+ <property name="x_options">GTK_FILL</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="profile-description-label">
+ <property name="visible">True</property>
+ <property name="xalign">0</property>
+ <property name="yalign">0</property>
+ <property name="label" translatable="yes">Profile _description:</property>
+ <property name="use_underline">True</property>
+ <property name="justify">GTK_JUSTIFY_CENTER</property>
+ <property name="width_chars">2</property>
+ </object>
+ <packing>
+ <property name="top_attach">1</property>
+ <property name="bottom_attach">2</property>
+ <property name="x_options">GTK_FILL</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkCheckButton" id="profile-active-button">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="label" translatable="yes">_Active?</property>
+ <property name="use_underline">True</property>
+ <property name="draw_indicator">True</property>
+ </object>
+ <packing>
+ <property name="right_attach">2</property>
+ <property name="top_attach">4</property>
+ <property name="bottom_attach">5</property>
+ <property name="x_options">GTK_FILL</property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkEntry" id="profile-pipeline-entry">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <signal name="changed" handler="on_profile_pipeline_entry_changed" object="profile"/>
+ </object>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="top_attach">2</property>
+ <property name="bottom_attach">3</property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkEntry" id="profile-extension-entry">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <signal name="changed" handler="on_profile_pipeline_entry_changed" object="profile"/>
+ </object>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="top_attach">3</property>
+ <property name="bottom_attach">4</property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="profile-extension-label">
+ <property name="visible">True</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes">_File extension:</property>
+ <property name="use_underline">True</property>
+ <property name="justify">GTK_JUSTIFY_CENTER</property>
+ <property name="mnemonic_widget">profile-extension-entry</property>
+ </object>
+ <packing>
+ <property name="top_attach">3</property>
+ <property name="bottom_attach">4</property>
+ <property name="x_options">GTK_FILL</property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="profile-pipeline-label">
+ <property name="visible">True</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes">_GStreamer pipeline:</property>
+ <property name="use_underline">True</property>
+ <property name="justify">GTK_JUSTIFY_CENTER</property>
+ <property name="mnemonic_widget">profile-pipeline-entry</property>
+ </object>
+ <packing>
+ <property name="top_attach">2</property>
+ <property name="bottom_attach">3</property>
+ <property name="x_options">GTK_FILL</property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="profile-name-label">
+ <property name="visible">True</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes">_Profile name:</property>
+ <property name="use_underline">True</property>
+ <property name="justify">GTK_JUSTIFY_CENTER</property>
+ <property name="mnemonic_widget">profile-name-entry</property>
+ </object>
+ <packing>
+ <property name="x_options">GTK_FILL</property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child internal-child="action_area">
+ <object class="GtkHButtonBox" id="dialog-action_area6">
+ <property name="visible">True</property>
+ <property name="layout_style">GTK_BUTTONBOX_EDGE</property>
+ <child>
+ <object class="GtkButton" id="button1">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="can_default">True</property>
+ <property name="label">gtk-help</property>
+ <property name="use_stock">True</property>
+ </object>
+ </child>
+ <child>
+ <object class="GtkButton" id="profile-edit-close">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="can_default">True</property>
+ <property name="label">gtk-close</property>
+ <property name="use_stock">True</property>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="pack_type">GTK_PACK_END</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ <action-widgets>
+ <action-widget response="-5">profile-edit-close</action-widget>
+ <action-widget response="-11">button1</action-widget>
+ </action-widgets>
+ </object>
+</interface>
diff --git a/profiles/mate-audio-profile-new.ui b/profiles/mate-audio-profile-new.ui
new file mode 100644
index 0000000..39035a5
--- /dev/null
+++ b/profiles/mate-audio-profile-new.ui
@@ -0,0 +1,195 @@
+<?xml version="1.0"?>
+<!--*- mode: xml -*-->
+<interface>
+ <object class="GtkDialog" id="new-profile-dialog">
+ <property name="border_width">5</property>
+ <property name="visible">True</property>
+ <property name="title" translatable="yes">New Profile</property>
+ <property name="type">GTK_WINDOW_TOPLEVEL</property>
+ <property name="window_position">GTK_WIN_POS_NONE</property>
+ <property name="modal">False</property>
+ <property name="resizable">False</property>
+ <property name="destroy_with_parent">False</property>
+ <property name="decorated">True</property>
+ <property name="skip_taskbar_hint">False</property>
+ <property name="skip_pager_hint">False</property>
+ <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property>
+ <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
+ <property name="focus_on_map">True</property>
+ <property name="urgency_hint">False</property>
+ <property name="has_separator">False</property>
+ <child internal-child="vbox">
+ <object class="GtkVBox" id="dialog-vbox5">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">2</property>
+ <child internal-child="action_area">
+ <object class="GtkHButtonBox" id="dialog-action_area5">
+ <property name="visible">True</property>
+ <property name="layout_style">GTK_BUTTONBOX_END</property>
+ <child>
+ <object class="GtkButton" id="new-profile-cancel-button">
+ <property name="visible">True</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="label">gtk-cancel</property>
+ <property name="use_stock">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ </object>
+ </child>
+ <child>
+ <object class="GtkButton" id="new-profile-create-button">
+ <property name="visible">True</property>
+ <property name="sensitive">False</property>
+ <property name="can_default">True</property>
+ <property name="can_focus">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ <child>
+ <object class="GtkAlignment" id="alignment34">
+ <property name="visible">True</property>
+ <property name="xalign">0.5</property>
+ <property name="yalign">0.5</property>
+ <property name="xscale">0</property>
+ <property name="yscale">0</property>
+ <property name="top_padding">0</property>
+ <property name="bottom_padding">0</property>
+ <property name="left_padding">0</property>
+ <property name="right_padding">0</property>
+ <child>
+ <object class="GtkHBox" id="hbox10">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">2</property>
+ <child>
+ <object class="GtkImage" id="icon-1212">
+ <property name="visible">True</property>
+ <property name="stock">gtk-apply</property>
+ <property name="icon_size">4</property>
+ <property name="xalign">0.5</property>
+ <property name="yalign">0.5</property>
+ <property name="xpad">0</property>
+ <property name="ypad">0</property>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="create-button">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">_Create</property>
+ <property name="use_underline">True</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap">False</property>
+ <property name="selectable">False</property>
+ <property name="xalign">0.5</property>
+ <property name="yalign">0.5</property>
+ <property name="xpad">0</property>
+ <property name="ypad">0</property>
+ <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+ <property name="width_chars">-1</property>
+ <property name="single_line_mode">False</property>
+ <property name="angle">0</property>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ </object>
+ </child>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="pack_type">GTK_PACK_END</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkVBox" id="vbox7">
+ <property name="border_width">5</property>
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">6</property>
+ <child>
+ <object class="GtkHBox" id="hbox8">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">12</property>
+ <child>
+ <object class="GtkLabel" id="new-profile-name-label">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">_Profile name:</property>
+ <property name="use_underline">True</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap">False</property>
+ <property name="selectable">False</property>
+ <property name="xalign">0</property>
+ <property name="yalign">0.5</property>
+ <property name="xpad">0</property>
+ <property name="ypad">0</property>
+ <property name="mnemonic_widget">new-profile-name-entry</property>
+ <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+ <property name="width_chars">-1</property>
+ <property name="single_line_mode">False</property>
+ <property name="angle">0</property>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkEntry" id="new-profile-name-entry">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="editable">True</property>
+ <property name="visibility">True</property>
+ <property name="max_length">0</property>
+ <property name="text" translatable="yes"/>
+ <property name="has_frame">True</property>
+ <property name="invisible_char">*</property>
+ <property name="activates_default">False</property>
+ <property name="width_chars">14</property>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ <action-widgets>
+ <action-widget response="-6">new-profile-cancel-button</action-widget>
+ <action-widget response="-3">new-profile-create-button</action-widget>
+ </action-widgets>
+ </object>
+</interface>
diff --git a/profiles/mate-audio-profiles-properties.c b/profiles/mate-audio-profiles-properties.c
new file mode 100644
index 0000000..a11199d
--- /dev/null
+++ b/profiles/mate-audio-profiles-properties.c
@@ -0,0 +1,81 @@
+/* mate-audio-profiles-properties.c:
+ properties capplet that shows the GapProfilesEdit dialog */
+
+/*
+ * Copyright (C) 2003 Thomas Vander Stichele
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include <stdlib.h>
+#include <libintl.h>
+#include <gtk/gtk.h>
+#include <glib/gi18n.h>
+
+#include "mate-media-profiles.h"
+#include "audio-profile-private.h"
+
+static void
+on_dialog_destroy (GtkWidget *dialog, gpointer *user_data)
+{
+ /* dialog destroyed, time to bail */
+ gtk_main_quit ();
+}
+
+int
+main (int argc, char *argv[])
+{
+ GtkWidget *widget;
+ MateConfClient *conf;
+ GOptionContext *context;
+ GError *error = NULL;
+
+ g_thread_init (NULL);
+
+ context = g_option_context_new (NULL);
+ g_option_context_add_group (context, gtk_get_option_group (TRUE));
+ if (g_option_context_parse (context, &argc, &argv, &error) == FALSE) {
+ g_print (_("%s\nRun '%s --help' to see a full list of available command line options.\n"),
+ error->message, argv[0]);
+ g_error_free (error);
+ g_option_context_free (context);
+ exit (1);
+ }
+ g_option_context_free (context);
+
+ conf = mateconf_client_get_default ();
+ textdomain (GETTEXT_PACKAGE);
+
+ mate_media_profiles_init (conf);
+
+ gtk_window_set_default_icon_name ("mate-mime-audio");
+
+ widget = GTK_WIDGET (gm_audio_profiles_edit_new (conf, NULL));
+ g_assert (GTK_IS_WIDGET (widget));
+
+ g_signal_connect (G_OBJECT (widget), "destroy",
+ G_CALLBACK (on_dialog_destroy), NULL);
+
+ gtk_widget_show_all (widget);
+ gtk_main ();
+
+ g_object_unref (conf);
+
+ return 0;
+}
diff --git a/profiles/mate-audio-profiles-test.c b/profiles/mate-audio-profiles-test.c
new file mode 100644
index 0000000..444e9c6
--- /dev/null
+++ b/profiles/mate-audio-profiles-test.c
@@ -0,0 +1,188 @@
+/* mate-audio-profiles-test.c: */
+
+/*
+ * Copyright (C) 2003 Thomas Vander Stichele
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include <stdlib.h>
+#include <gtk/gtk.h>
+#include <mateconf/mateconf-client.h>
+#include <gst/gst.h>
+
+#include <profiles/mate-media-profiles.h>
+
+static void
+edit_clicked_cb (GtkButton *button, GtkWindow *window)
+{
+ GtkWidget *edit_dialog = NULL;
+ edit_dialog = gm_audio_profiles_edit_new (mateconf_client_get_default (), window);
+ g_assert (edit_dialog != NULL);
+ gtk_widget_show_all (GTK_WIDGET (edit_dialog));
+}
+
+static void
+test_clicked_cb (GtkButton *button, GtkWidget *combo)
+{
+ GstStateChangeReturn ret;
+ gchar *partialpipe = NULL;
+ gchar *extension = NULL;
+ gchar *pipeline_desc;
+ GError *error = NULL;
+ GMAudioProfile *profile;
+ GstElement *pipeline = NULL;
+ GstMessage *msg = NULL;
+ GstBus *bus = NULL;
+
+ profile = gm_audio_profile_choose_get_active (combo);
+ g_return_if_fail (profile != NULL);
+
+ gtk_widget_set_sensitive (GTK_WIDGET (button), FALSE);
+
+ extension = g_strdup (gm_audio_profile_get_extension (profile));
+ partialpipe = g_strdup (gm_audio_profile_get_pipeline (profile));
+
+ g_print ("You chose profile with name %s and pipeline %s\n",
+ gm_audio_profile_get_name (profile),
+ gm_audio_profile_get_pipeline (profile));
+
+ pipeline_desc = g_strdup_printf ("audiotestsrc wave=sine num-buffers=4096 "
+ " ! audioconvert "
+ " ! %s "
+ " ! filesink location=test.%s",
+ partialpipe, extension);
+
+ g_print ("Going to run pipeline %s\n", pipeline_desc);
+
+ pipeline = gst_parse_launch (pipeline_desc, &error);
+ if (error)
+ {
+ g_warning ("Error parsing pipeline: %s", error->message);
+ goto done;
+ }
+
+ bus = gst_element_get_bus (pipeline);
+
+ gst_element_set_state (pipeline, GST_STATE_PLAYING);
+
+ /* wait for state change to complete or to have failed */
+ ret = gst_element_get_state (pipeline, NULL, NULL, -1);
+ if (ret == GST_STATE_CHANGE_FAILURE) {
+ /* check if an error was posted on the bus */
+ if ((msg = gst_bus_poll (bus, GST_MESSAGE_ERROR, 0))) {
+ gst_message_parse_error (msg, &error, NULL);
+ }
+
+ g_warning ("Error starting pipeline: %s",
+ (error) ? error->message : "UNKNOWN ERROR");
+
+ goto done;
+ }
+
+ g_print ("Writing test sound to test.%s ...\n", extension);
+
+ /* wait for it finish (error or EOS), but no more than 30 secs */
+ msg = gst_bus_poll (bus, GST_MESSAGE_ERROR | GST_MESSAGE_EOS, 30*GST_SECOND);
+
+ if (msg) {
+ switch (GST_MESSAGE_TYPE (msg)) {
+ case GST_MESSAGE_EOS:
+ g_print ("Test finished successfully.\n");
+ break;
+ case GST_MESSAGE_ERROR:
+ gst_message_parse_error (msg, &error, NULL);
+ g_warning ("Error starting pipeline: %s",
+ (error) ? error->message : "UNKNOWN ERROR");
+ break;
+ default:
+ g_assert_not_reached ();
+ }
+ } else {
+ g_warning ("Test did not finish within 30 seconds!\n");
+ }
+
+done:
+
+ g_print ("==============================================================\n");
+
+ if (error)
+ g_error_free (error);
+
+ if (pipeline) {
+ gst_element_set_state (pipeline, GST_STATE_NULL);
+ gst_object_unref (pipeline);
+ }
+
+ if (msg)
+ gst_message_unref (msg);
+
+ if (bus)
+ gst_object_unref (bus);
+
+ g_free (pipeline_desc);
+ g_free (partialpipe);
+ g_free (extension);
+
+ gtk_widget_set_sensitive (GTK_WIDGET (button), TRUE);
+}
+
+int
+main (int argc, char **argv)
+{
+ GtkWidget *window, *hbox, *combo, *edit, *test;
+ MateConfClient *mateconf;
+ GOptionContext *context;
+ GError *error = NULL;
+
+ g_thread_init (NULL);
+ context = g_option_context_new (NULL);
+ g_option_context_add_group (context, gst_init_get_option_group ());
+ g_option_context_add_group (context, gtk_get_option_group (TRUE));
+ if (g_option_context_parse (context, &argc, &argv, &error) == FALSE) {
+ g_print ("%s\nRun '%s --help' to see a full list of available command line options.\n",
+ error->message, argv[0]);
+ g_error_free (error);
+ g_option_context_free (context);
+ exit (1);
+ }
+ g_option_context_free (context);
+
+ mateconf = mateconf_client_get_default ();
+ mate_media_profiles_init (mateconf);
+
+ window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
+ combo = gm_audio_profile_choose_new ();
+
+ edit = gtk_button_new_with_mnemonic ("_Edit Profiles");
+ test = gtk_button_new_with_mnemonic ("_Test");
+ g_signal_connect (edit, "clicked", (GCallback) edit_clicked_cb, window);
+ g_signal_connect (test, "clicked", (GCallback) test_clicked_cb, combo);
+ g_signal_connect (edit, "destroy", (GCallback) gtk_main_quit, NULL);
+
+ hbox = gtk_hbox_new (FALSE, 7);
+ gtk_box_pack_start (GTK_BOX (hbox), combo, TRUE, TRUE, 0);
+ gtk_box_pack_start (GTK_BOX (hbox), test, FALSE, TRUE, 0);
+ gtk_box_pack_start (GTK_BOX (hbox), edit, FALSE, TRUE, 0);
+ gtk_container_add (GTK_CONTAINER (window), hbox);
+ gtk_widget_show_all (window);
+ gtk_main ();
+
+ return 0;
+}
diff --git a/profiles/mate-audio-profiles.schemas.in.in b/profiles/mate-audio-profiles.schemas.in.in
new file mode 100644
index 0000000..1be85db
--- /dev/null
+++ b/profiles/mate-audio-profiles.schemas.in.in
@@ -0,0 +1,612 @@
+<?xml version="1.0"?>
+<mateconfschemafile>
+ <schemalist>
+
+ <schema>
+ <key>/schemas/system/gstreamer/@GST_MAJORMINOR@/audio/global/profile_list</key>
+ <applyto>/system/gstreamer/@GST_MAJORMINOR@/audio/global/profile_list</applyto>
+ <owner>mate-media</owner>
+ <type>list</type>
+ <list_type>string</list_type>
+ <default>[cdlossy,cdlossless,aac,mp2,mp3,voicelossy,voicelossless]</default>
+ <locale name="C">
+ <short>List of profiles</short>
+ <long>
+ List of audio recording profiles. The list contains
+ strings naming subdirectories relative to
+ /system/gstreamer/@GST_MAJORMINOR@/audio/profiles.
+ </long>
+ </locale>
+ </schema>
+
+<!-- template schema for each of the profiles -->
+ <schema>
+ <key>/schemas/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/name</key>
+ <owner>mate-media</owner>
+ <type>string</type>
+ <default></default>
+ <locale name="C">
+ <short>A short name for the audio profile</short>
+ <long>
+ A short name for the audio profile, to be used in selections
+ and uniquely identifying the profile.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/description</key>
+ <owner>mate-media</owner>
+ <type>string</type>
+ <default></default>
+ <locale name="C">
+ <short>A description for the audio profile</short>
+ <long>
+ A description of the profile, containing more information and
+ describing when to use this profile.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/pipeline</key>
+ <owner>mate-media</owner>
+ <type>string</type>
+ <default></default>
+ <locale name="C">
+ <short>The partial GStreamer pipeline used</short>
+ <long>
+ A partial GStreamer pipeline to use for this profile.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/extension</key>
+ <owner>mate-media</owner>
+ <type>string</type>
+ <default></default>
+ <locale name="C">
+ <short>The default file extension for this profile</short>
+ <long>
+ A filename extension to be used when storing files encoded
+ with this profile.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/active</key>
+ <owner>mate-media</owner>
+ <type>bool</type>
+ <default>true</default>
+ <locale name="C">
+ <short>Whether this profile is to be used</short>
+ <long>
+ Whether to use and display this profile.
+ </long>
+ </locale>
+ </schema>
+
+<!-- each of the profiles we supply by default -->
+ <!-- CD quality, lossy compression -->
+ <schema>
+ <key>/schemas/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/cdlossy/name</key>
+ <applyto>/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/cdlossy/name</applyto>
+ <owner>mate-media</owner>
+ <type>string</type>
+ <locale name="C">
+ <default>CD Quality, Lossy</default>
+ <short>A short name for the audio profile</short>
+ <long>
+ A short name for the audio profile, to be used in selections
+ and uniquely identifying the profile.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/cdlossy/description</key>
+ <applyto>/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/cdlossy/description</applyto>
+ <owner>mate-media</owner>
+ <type>string</type>
+ <locale name="C">
+ <default>Used for converting to CD-quality audio, but with a lossy compression codec. Use this for CD extraction and radio recordings.</default>
+ <short>A description for the audio profile</short>
+ <long>
+ A description of the profile, containing more information and
+ describing when to use this profile.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/cdlossy/pipeline</key>
+ <applyto>/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/cdlossy/pipeline</applyto>
+ <owner>mate-media</owner>
+ <type>string</type>
+ <default>audio/x-raw-float,rate=44100,channels=2 ! vorbisenc name=enc quality=0.5 ! oggmux</default>
+ <locale name="C">
+ <short>The partial GStreamer pipeline used</short>
+ <long>
+ A partial GStreamer pipeline to use for this profile.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/cdlossy/extension</key>
+ <applyto>/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/cdlossy/extension</applyto>
+ <owner>mate-media</owner>
+ <type>string</type>
+ <default>ogg</default>
+ <locale name="C">
+ <short>The default file extension for this profile</short>
+ <long>
+ A filename extension to be used when storing files encoded
+ with this profile.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/active</key>
+ <applyto>/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/cdlossy/active</applyto>
+ <owner>mate-media</owner>
+ <type>bool</type>
+ <default>true</default>
+ <locale name="C">
+ <short>Whether this profile is to be used</short>
+ <long>
+ Whether to use and display this profile.
+ </long>
+ </locale>
+ </schema>
+
+ <!-- CD quality, lossless compression -->
+ <schema>
+ <key>/schemas/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/cdlossless/name</key>
+ <applyto>/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/cdlossless/name</applyto>
+ <owner>mate-media</owner>
+ <type>string</type>
+ <locale name="C">
+ <default>CD Quality, Lossless</default>
+ <short>A short name for the audio profile</short>
+ <long>
+ A short name for the audio profile, to be used in selections
+ and uniquely identifying the profile.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/cdlossless/description</key>
+ <applyto>/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/cdlossless/description</applyto>
+ <owner>mate-media</owner>
+ <type>string</type>
+ <locale name="C">
+ <default>Used for converting to CD-quality audio, but with a lossless compression codec. Use this if you later want to edit the file or burn it to CD.</default>
+ <short>A description for the audio profile</short>
+ <long>
+ A description of the profile, containing more information and
+ describing when to use this profile.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/cdlossless/pipeline</key>
+ <applyto>/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/cdlossless/pipeline</applyto>
+ <owner>mate-media</owner>
+ <type>string</type>
+ <default>audio/x-raw-int,rate=44100,channels=2 ! flacenc name=enc</default>
+ <locale name="C">
+ <short>The partial GStreamer pipeline used</short>
+ <long>
+ A partial GStreamer pipeline to use for this profile.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/cdlossless/extension</key>
+ <applyto>/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/cdlossless/extension</applyto>
+ <owner>mate-media</owner>
+ <type>string</type>
+ <default>flac</default>
+ <locale name="C">
+ <short>The default file extension for this profile</short>
+ <long>
+ A filename extension to be used when storing files encoded
+ with this profile.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/active</key>
+ <applyto>/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/cdlossless/active</applyto>
+ <owner>mate-media</owner>
+ <type>bool</type>
+ <default>true</default>
+ <locale name="C">
+ <short>Whether this profile is to be used</short>
+ <long>
+ Whether to use and display this profile.
+ </long>
+ </locale>
+ </schema>
+
+
+ <!-- Voice quality, lossless compression -->
+ <schema>
+ <key>/schemas/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/voicelossless/name</key>
+ <applyto>/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/voicelossless/name</applyto>
+ <owner>mate-media</owner>
+ <type>string</type>
+ <locale name="C">
+ <default>Voice, Lossless</default>
+ <short>A short name for the audio profile</short>
+ <long>
+ A short name for the audio profile, to be used in selections
+ and uniquely identifying the profile.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/voicelossless/description</key>
+ <applyto>/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/voicelossless/description</applyto>
+ <owner>mate-media</owner>
+ <type>string</type>
+ <locale name="C">
+ <default>Used for converting to lossless voice-quality audio. Use this for recording and editing speech.</default>
+ <short>A description for the audio profile</short>
+ <long>
+ A description of the profile, containing more information and
+ describing when to use this profile.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/voicelossless/pipeline</key>
+ <applyto>/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/voicelossless/pipeline</applyto>
+ <owner>mate-media</owner>
+ <type>string</type>
+ <default>audio/x-raw-int,rate=22050,channels=1 ! wavenc name=enc</default>
+ <locale name="C">
+ <short>The partial GStreamer pipeline used</short>
+ <long>
+ A partial GStreamer pipeline to use for this profile.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/voicelossless/extension</key>
+ <applyto>/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/voicelossless/extension</applyto>
+ <owner>mate-media</owner>
+ <type>string</type>
+ <default>wav</default>
+ <locale name="C">
+ <short>The default file extension for this profile</short>
+ <long>
+ A filename extension to be used when storing files encoded
+ with this profile.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/active</key>
+ <applyto>/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/voicelossless/active</applyto>
+ <owner>mate-media</owner>
+ <type>bool</type>
+ <default>true</default>
+ <locale name="C">
+ <short>Whether this profile is to be used</short>
+ <long>
+ Whether to use and display this profile.
+ </long>
+ </locale>
+ </schema>
+
+ <!-- Voice quality, lossy compression -->
+ <schema>
+ <key>/schemas/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/voicelossy/name</key>
+ <applyto>/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/voicelossy/name</applyto>
+ <owner>mate-media</owner>
+ <type>string</type>
+ <locale name="C">
+ <default>Voice, Lossy</default>
+ <short>A short name for the audio profile</short>
+ <long>
+ A short name for the audio profile, to be used in selections
+ and uniquely identifying the profile.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/voicelossy/description</key>
+ <applyto>/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/voicelossy/description</applyto>
+ <owner>mate-media</owner>
+ <type>string</type>
+ <locale name="C">
+ <default>Used for converting to lossy voice-quality audio. Use this for recording speech that doesn't need to be edited.</default>
+ <short>A description for the audio profile</short>
+ <long>
+ A description of the profile, containing more information and
+ describing when to use this profile.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/voicelossy/pipeline</key>
+ <applyto>/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/voicelossy/pipeline</applyto>
+ <owner>mate-media</owner>
+ <type>string</type>
+ <default>audio/x-raw-int,rate=32000,channels=1 ! speexenc name=enc ! oggmux</default>
+ <locale name="C">
+ <short>The partial GStreamer pipeline used</short>
+ <long>
+ A partial GStreamer pipeline to use for this profile.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/voicelossy/extension</key>
+ <applyto>/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/voicelossy/extension</applyto>
+ <owner>mate-media</owner>
+ <type>string</type>
+ <default>spx</default>
+ <locale name="C">
+ <short>The default file extension for this profile</short>
+ <long>
+ A filename extension to be used when storing files encoded
+ with this profile.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/active</key>
+ <applyto>/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/voicelossy/active</applyto>
+ <owner>mate-media</owner>
+ <type>bool</type>
+ <default>true</default>
+ <locale name="C">
+ <short>Whether this profile is to be used</short>
+ <long>
+ Whether to use and display this profile.
+ </long>
+ </locale>
+ </schema>
+
+ <!-- MP2 -->
+ <schema>
+ <key>/schemas/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/mp2/name</key>
+ <applyto>/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/mp2/name</applyto>
+ <owner>mate-media</owner>
+ <type>string</type>
+ <locale name="C">
+ <default>CD Quality, MP2</default>
+ <short>A short name for the audio profile</short>
+ <long>
+ A short name for the audio profile, to be used in selections
+ and uniquely identifying the profile.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/mp2/description</key>
+ <applyto>/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/mp2/description</applyto>
+ <owner>mate-media</owner>
+ <type>string</type>
+ <locale name="C">
+ <default>Used for converting to CD-quality audio, but with the lossy MP2 codec. Use this for preparing files for copying to devices that only support the MP2 codec. Note that using this format may be illegal in your jurisdiction; contact your lawyer for advice.</default>
+ <short>A description for the audio profile</short>
+ <long>
+ A description of the profile, containing more information and
+ describing when to use this profile.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/mp2/pipeline</key>
+ <applyto>/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/mp2/pipeline</applyto>
+ <owner>mate-media</owner>
+ <type>string</type>
+ <default>audio/x-raw-int,rate=44100,channels=2 ! twolame name=enc mode=0 bitrate=192 ! id3v2mux</default>
+ <locale name="C">
+ <short>The partial GStreamer pipeline used</short>
+ <long>
+ A partial GStreamer pipeline to use for this profile.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/mp2/extension</key>
+ <applyto>/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/mp2/extension</applyto>
+ <owner>mate-media</owner>
+ <type>string</type>
+ <default>mp2</default>
+ <locale name="C">
+ <short>The default file extension for this profile</short>
+ <long>
+ A filename extension to be used when storing files encoded
+ with this profile.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/active</key>
+ <applyto>/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/mp2/active</applyto>
+ <owner>mate-media</owner>
+ <type>bool</type>
+ <default>true</default>
+ <locale name="C">
+ <short>Whether this profile is to be used</short>
+ <long>
+ Whether to use and display this profile.
+ </long>
+ </locale>
+ </schema>
+
+ <!-- MP3 -->
+ <schema>
+ <key>/schemas/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/mp3/name</key>
+ <applyto>/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/mp3/name</applyto>
+ <owner>mate-media</owner>
+ <type>string</type>
+ <locale name="C">
+ <default>CD Quality, MP3</default>
+ <short>A short name for the audio profile</short>
+ <long>
+ A short name for the audio profile, to be used in selections
+ and uniquely identifying the profile.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/mp3/description</key>
+ <applyto>/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/mp3/description</applyto>
+ <owner>mate-media</owner>
+ <type>string</type>
+ <locale name="C">
+ <default>Used for converting to CD-quality audio, but with the lossy MP3 codec. Use this for preparing files for copying to devices that only support the MP3 codec. Note that using this format may be illegal in your jurisdiction; contact your lawyer for advice.</default>
+ <short>A description for the audio profile</short>
+ <long>
+ A description of the profile, containing more information and
+ describing when to use this profile.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/mp3/pipeline</key>
+ <applyto>/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/mp3/pipeline</applyto>
+ <owner>mate-media</owner>
+ <type>string</type>
+ <default>audio/x-raw-int,rate=44100,channels=2 ! lamemp3enc name=enc target=0 quality=6 ! xingmux ! id3v2mux</default>
+ <locale name="C">
+ <short>The partial GStreamer pipeline used</short>
+ <long>
+ A partial GStreamer pipeline to use for this profile.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/mp3/extension</key>
+ <applyto>/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/mp3/extension</applyto>
+ <owner>mate-media</owner>
+ <type>string</type>
+ <default>mp3</default>
+ <locale name="C">
+ <short>The default file extension for this profile</short>
+ <long>
+ A filename extension to be used when storing files encoded
+ with this profile.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/active</key>
+ <applyto>/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/mp3/active</applyto>
+ <owner>mate-media</owner>
+ <type>bool</type>
+ <default>true</default>
+ <locale name="C">
+ <short>Whether this profile is to be used</short>
+ <long>
+ Whether to use and display this profile.
+ </long>
+ </locale>
+ </schema>
+
+ <!-- AAC -->
+ <schema>
+ <key>/schemas/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/aac/name</key>
+ <applyto>/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/aac/name</applyto>
+ <owner>mate-media</owner>
+ <type>string</type>
+ <locale name="C">
+ <default>CD Quality, AAC</default>
+ <short>A short name for the audio profile</short>
+ <long>
+ A short name for the audio profile, to be used in selections
+ and uniquely identifying the profile.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/aac/description</key>
+ <applyto>/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/aac/description</applyto>
+ <owner>mate-media</owner>
+ <type>string</type>
+ <locale name="C">
+ <default>Used for converting to CD-quality audio, but with the lossy AAC codec. Use this for preparing files for copying to devices that only support the AAC codec. Note that using this format may be illegal in your jurisdiction; contact your lawyer for advice.</default>
+ <short>A description for the audio profile</short>
+ <long>
+ A description of the profile, containing more information and
+ describing when to use this profile.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/aac/pipeline</key>
+ <applyto>/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/aac/pipeline</applyto>
+ <owner>mate-media</owner>
+ <type>string</type>
+ <default>audio/x-raw-int,rate=44100,channels=2 ! faac profile=2 ! ffmux_mp4</default>
+ <locale name="C">
+ <short>The partial GStreamer pipeline used</short>
+ <long>
+ A partial GStreamer pipeline to use for this profile.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/aac/extension</key>
+ <applyto>/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/aac/extension</applyto>
+ <owner>mate-media</owner>
+ <type>string</type>
+ <default>m4a</default>
+ <locale name="C">
+ <short>The default file extension for this profile</short>
+ <long>
+ A filename extension to be used when storing files encoded
+ with this profile.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/aac/active</key>
+ <applyto>/system/gstreamer/@GST_MAJORMINOR@/audio/profiles/aac/active</applyto>
+ <owner>mate-media</owner>
+ <type>bool</type>
+ <default>true</default>
+ <locale name="C">
+ <short>Whether this profile is to be used</short>
+ <long>
+ Whether to use and display this profile.
+ </long>
+ </locale>
+ </schema>
+
+ </schemalist>
+</mateconfschemafile>
diff --git a/profiles/mate-media-profiles.c b/profiles/mate-media-profiles.c
new file mode 100644
index 0000000..a9368e2
--- /dev/null
+++ b/profiles/mate-media-profiles.c
@@ -0,0 +1,72 @@
+/* mate-media-profiles.c: public library code */
+
+/*
+ * Copyright (C) 2003 Thomas Vander Stichele
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include "mate-media-profiles.h"
+
+#include <string.h>
+#include <glib/gi18n.h>
+#include <mateconf/mateconf-client.h>
+
+#include "audio-profile-private.h"
+#include "audio-profile-edit.h"
+#include "gmp-conf.h"
+#include "gmp-util.h"
+
+/* do all necessary initialization to use this simple helper library */
+void
+mate_media_profiles_init (MateConfClient *conf)
+{
+ GError *err = NULL;
+
+ /* i18n */
+ bindtextdomain (GETTEXT_PACKAGE, MATELOCALEDIR);
+#ifdef HAVE_BIND_TEXTDOMAIN_CODESET
+ bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8");
+#endif
+
+ if (conf == NULL)
+ conf = mateconf_client_get_default ();
+ else
+ g_object_ref (G_OBJECT (conf));
+
+ /* initialize MateConf */
+ mateconf_client_add_dir (conf, CONF_GLOBAL_PREFIX,
+ MATECONF_CLIENT_PRELOAD_ONELEVEL,
+ &err);
+ if (err)
+ {
+ g_printerr ("There was an error loading config from %s. (%s)\n",
+ CONF_GLOBAL_PREFIX, err->message);
+ g_error_free (err);
+ }
+
+ /* Register GMAudioProfieEdit widget for GtkBuilder */
+ volatile GType dummy = GM_AUDIO_TYPE_PROFILE_EDIT;
+ dummy = dummy;
+ /* initialize the audio profiles part */
+ gm_audio_profile_initialize (conf);
+
+ g_object_unref (G_OBJECT (conf));
+}
diff --git a/profiles/mate-media-profiles.h b/profiles/mate-media-profiles.h
new file mode 100644
index 0000000..8270899
--- /dev/null
+++ b/profiles/mate-media-profiles.h
@@ -0,0 +1,27 @@
+/* mate-media-profiles.h: public library API */
+
+/*
+ * Copyright (C) 2003 Thomas Vander Stichele
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+#include <profiles/audio-profile.h>
+#include <profiles/audio-profile-choose.h>
+#include <profiles/audio-profile-edit.h>
+#include <profiles/audio-profiles-edit.h>
+
+void mate_media_profiles_init (MateConfClient *conf);
diff --git a/profiles/mate-media-profiles.pc.in b/profiles/mate-media-profiles.pc.in
new file mode 100644
index 0000000..f213bda
--- /dev/null
+++ b/profiles/mate-media-profiles.pc.in
@@ -0,0 +1,13 @@
+prefix=@prefix@
+exec_prefix=@exec_prefix@
+libdir=@libdir@
+includedir=@includedir@/mate-media
+toolsdir=${exec_prefix}/bin
+
+Name: MATE Media Profiles
+Description: Media Profiles describing audio codec settings for output
+Requires: mateconf-2.0, gtk+-2.0
+Version: @VERSION@
+Libs: -L${libdir} -lmate-media-profiles
+Cflags: -I${includedir}
+