mpris gadget based on mpdule -- still very rough
SVN revision: 48492
This commit is contained in:
commit
73a8336f3f
|
@ -0,0 +1,32 @@
|
|||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to
|
||||
deal in the Software without restriction, including without limitation the
|
||||
rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
|
||||
sell copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in
|
||||
all copies of the Software and its Copyright notices. In addition publicly
|
||||
documented acknowledgment must be given that this software has been used if no
|
||||
source code of this software is made available publicly. Making the source
|
||||
available publicly means including the source for this software with the
|
||||
distribution, or a method to get this software via some reasonable mechanism
|
||||
(electronic transfer via a network or media) as well as making an offer to
|
||||
supply the source on request. This Copyright notice serves as an offer to
|
||||
supply the source on on request as well. Instead of this, supplying
|
||||
acknowledgments of use of this software in either Copyright notices, Manuals,
|
||||
Publicity and Marketing documents or any documentation provided with any
|
||||
product containing this software. This License does not apply to any software
|
||||
that links to the libraries provided by this software (statically or
|
||||
dynamically), but only to the software provided.
|
||||
|
||||
Please see the COPYING-PLAIN for a plain-english explanation of this notice
|
||||
and its intent.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
||||
THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
||||
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
@ -0,0 +1,229 @@
|
|||
Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002 Free Software
|
||||
Foundation, Inc.
|
||||
|
||||
This file is free documentation; the Free Software Foundation gives
|
||||
unlimited permission to copy, distribute and modify it.
|
||||
|
||||
Basic Installation
|
||||
==================
|
||||
|
||||
These are generic installation instructions.
|
||||
|
||||
The `configure' shell script attempts to guess correct values for
|
||||
various system-dependent variables used during compilation. It uses
|
||||
those values to create a `Makefile' in each directory of the package.
|
||||
It may also create one or more `.h' files containing system-dependent
|
||||
definitions. Finally, it creates a shell script `config.status' that
|
||||
you can run in the future to recreate the current configuration, and a
|
||||
file `config.log' containing compiler output (useful mainly for
|
||||
debugging `configure').
|
||||
|
||||
It can also use an optional file (typically called `config.cache'
|
||||
and enabled with `--cache-file=config.cache' or simply `-C') that saves
|
||||
the results of its tests to speed up reconfiguring. (Caching is
|
||||
disabled by default to prevent problems with accidental use of stale
|
||||
cache files.)
|
||||
|
||||
If you need to do unusual things to compile the package, please try
|
||||
to figure out how `configure' could check whether to do them, and mail
|
||||
diffs or instructions to the address given in the `README' so they can
|
||||
be considered for the next release. If you are using the cache, and at
|
||||
some point `config.cache' contains results you don't want to keep, you
|
||||
may remove or edit it.
|
||||
|
||||
The file `configure.ac' (or `configure.in') is used to create
|
||||
`configure' by a program called `autoconf'. You only need
|
||||
`configure.ac' if you want to change it or regenerate `configure' using
|
||||
a newer version of `autoconf'.
|
||||
|
||||
The simplest way to compile this package is:
|
||||
|
||||
1. `cd' to the directory containing the package's source code and type
|
||||
`./configure' to configure the package for your system. If you're
|
||||
using `csh' on an old version of System V, you might need to type
|
||||
`sh ./configure' instead to prevent `csh' from trying to execute
|
||||
`configure' itself.
|
||||
|
||||
Running `configure' takes awhile. While running, it prints some
|
||||
messages telling which features it is checking for.
|
||||
|
||||
2. Type `make' to compile the package.
|
||||
|
||||
3. Optionally, type `make check' to run any self-tests that come with
|
||||
the package.
|
||||
|
||||
4. Type `make install' to install the programs and any data files and
|
||||
documentation.
|
||||
|
||||
5. You can remove the program binaries and object files from the
|
||||
source code directory by typing `make clean'. To also remove the
|
||||
files that `configure' created (so you can compile the package for
|
||||
a different kind of computer), type `make distclean'. There is
|
||||
also a `make maintainer-clean' target, but that is intended mainly
|
||||
for the package's developers. If you use it, you may have to get
|
||||
all sorts of other programs in order to regenerate files that came
|
||||
with the distribution.
|
||||
|
||||
Compilers and Options
|
||||
=====================
|
||||
|
||||
Some systems require unusual options for compilation or linking that
|
||||
the `configure' script does not know about. Run `./configure --help'
|
||||
for details on some of the pertinent environment variables.
|
||||
|
||||
You can give `configure' initial values for configuration parameters
|
||||
by setting variables in the command line or in the environment. Here
|
||||
is an example:
|
||||
|
||||
./configure CC=c89 CFLAGS=-O2 LIBS=-lposix
|
||||
|
||||
*Note Defining Variables::, for more details.
|
||||
|
||||
Compiling For Multiple Architectures
|
||||
====================================
|
||||
|
||||
You can compile the package for more than one kind of computer at the
|
||||
same time, by placing the object files for each architecture in their
|
||||
own directory. To do this, you must use a version of `make' that
|
||||
supports the `VPATH' variable, such as GNU `make'. `cd' to the
|
||||
directory where you want the object files and executables to go and run
|
||||
the `configure' script. `configure' automatically checks for the
|
||||
source code in the directory that `configure' is in and in `..'.
|
||||
|
||||
If you have to use a `make' that does not support the `VPATH'
|
||||
variable, you have to compile the package for one architecture at a
|
||||
time in the source code directory. After you have installed the
|
||||
package for one architecture, use `make distclean' before reconfiguring
|
||||
for another architecture.
|
||||
|
||||
Installation Names
|
||||
==================
|
||||
|
||||
By default, `make install' will install the package's files in
|
||||
`/usr/local/bin', `/usr/local/man', etc. You can specify an
|
||||
installation prefix other than `/usr/local' by giving `configure' the
|
||||
option `--prefix=PATH'.
|
||||
|
||||
You can specify separate installation prefixes for
|
||||
architecture-specific files and architecture-independent files. If you
|
||||
give `configure' the option `--exec-prefix=PATH', the package will use
|
||||
PATH as the prefix for installing programs and libraries.
|
||||
Documentation and other data files will still use the regular prefix.
|
||||
|
||||
In addition, if you use an unusual directory layout you can give
|
||||
options like `--bindir=PATH' to specify different values for particular
|
||||
kinds of files. Run `configure --help' for a list of the directories
|
||||
you can set and what kinds of files go in them.
|
||||
|
||||
If the package supports it, you can cause programs to be installed
|
||||
with an extra prefix or suffix on their names by giving `configure' the
|
||||
option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
|
||||
|
||||
Optional Features
|
||||
=================
|
||||
|
||||
Some packages pay attention to `--enable-FEATURE' options to
|
||||
`configure', where FEATURE indicates an optional part of the package.
|
||||
They may also pay attention to `--with-PACKAGE' options, where PACKAGE
|
||||
is something like `gnu-as' or `x' (for the X Window System). The
|
||||
`README' should mention any `--enable-' and `--with-' options that the
|
||||
package recognizes.
|
||||
|
||||
For packages that use the X Window System, `configure' can usually
|
||||
find the X include and library files automatically, but if it doesn't,
|
||||
you can use the `configure' options `--x-includes=DIR' and
|
||||
`--x-libraries=DIR' to specify their locations.
|
||||
|
||||
Specifying the System Type
|
||||
==========================
|
||||
|
||||
There may be some features `configure' cannot figure out
|
||||
automatically, but needs to determine by the type of machine the package
|
||||
will run on. Usually, assuming the package is built to be run on the
|
||||
_same_ architectures, `configure' can figure that out, but if it prints
|
||||
a message saying it cannot guess the machine type, give it the
|
||||
`--build=TYPE' option. TYPE can either be a short name for the system
|
||||
type, such as `sun4', or a canonical name which has the form:
|
||||
|
||||
CPU-COMPANY-SYSTEM
|
||||
|
||||
where SYSTEM can have one of these forms:
|
||||
|
||||
OS KERNEL-OS
|
||||
|
||||
See the file `config.sub' for the possible values of each field. If
|
||||
`config.sub' isn't included in this package, then this package doesn't
|
||||
need to know the machine type.
|
||||
|
||||
If you are _building_ compiler tools for cross-compiling, you should
|
||||
use the `--target=TYPE' option to select the type of system they will
|
||||
produce code for.
|
||||
|
||||
If you want to _use_ a cross compiler, that generates code for a
|
||||
platform different from the build platform, you should specify the
|
||||
"host" platform (i.e., that on which the generated programs will
|
||||
eventually be run) with `--host=TYPE'.
|
||||
|
||||
Sharing Defaults
|
||||
================
|
||||
|
||||
If you want to set default values for `configure' scripts to share,
|
||||
you can create a site shell script called `config.site' that gives
|
||||
default values for variables like `CC', `cache_file', and `prefix'.
|
||||
`configure' looks for `PREFIX/share/config.site' if it exists, then
|
||||
`PREFIX/etc/config.site' if it exists. Or, you can set the
|
||||
`CONFIG_SITE' environment variable to the location of the site script.
|
||||
A warning: not all `configure' scripts look for a site script.
|
||||
|
||||
Defining Variables
|
||||
==================
|
||||
|
||||
Variables not defined in a site shell script can be set in the
|
||||
environment passed to `configure'. However, some packages may run
|
||||
configure again during the build, and the customized values of these
|
||||
variables may be lost. In order to avoid this problem, you should set
|
||||
them in the `configure' command line, using `VAR=value'. For example:
|
||||
|
||||
./configure CC=/usr/local2/bin/gcc
|
||||
|
||||
will cause the specified gcc to be used as the C compiler (unless it is
|
||||
overridden in the site shell script).
|
||||
|
||||
`configure' Invocation
|
||||
======================
|
||||
|
||||
`configure' recognizes the following options to control how it
|
||||
operates.
|
||||
|
||||
`--help'
|
||||
`-h'
|
||||
Print a summary of the options to `configure', and exit.
|
||||
|
||||
`--version'
|
||||
`-V'
|
||||
Print the version of Autoconf used to generate the `configure'
|
||||
script, and exit.
|
||||
|
||||
`--cache-file=FILE'
|
||||
Enable the cache: use and save the results of the tests in FILE,
|
||||
traditionally `config.cache'. FILE defaults to `/dev/null' to
|
||||
disable caching.
|
||||
|
||||
`--config-cache'
|
||||
`-C'
|
||||
Alias for `--cache-file=config.cache'.
|
||||
|
||||
`--quiet'
|
||||
`--silent'
|
||||
`-q'
|
||||
Do not print messages saying which checks are being made. To
|
||||
suppress all normal output, redirect it to `/dev/null' (any error
|
||||
messages will still be shown).
|
||||
|
||||
`--srcdir=DIR'
|
||||
Look for the package's source code in directory DIR. Usually
|
||||
`configure' can determine that directory automatically.
|
||||
|
||||
`configure' also accepts some other, not widely useful, options. Run
|
||||
`configure --help' for more details.
|
||||
|
|
@ -0,0 +1,26 @@
|
|||
MAINTAINERCLEANFILES = Makefile.in aclocal.m4 config.guess config.h.in \
|
||||
config.sub configure depcomp install-sh ltmain.sh \
|
||||
missing module.desktop config.rpath mkinstalldirs
|
||||
|
||||
SUBDIRS = src
|
||||
|
||||
EDJE_FLAGS = -v \
|
||||
-id $(top_srcdir)/images
|
||||
|
||||
filesdir = $(datadir)
|
||||
files_DATA = e-module-empris.edj module.desktop empris.edj
|
||||
|
||||
EXTRA_DIST = module.desktop.in \
|
||||
e_modules-mpdule.spec.in \
|
||||
e-module-mpdule.edc \
|
||||
empris.edc \
|
||||
$(wildcard images/*.png)
|
||||
|
||||
%.edj: %.edc
|
||||
$(EDJE_CC) $(EDJE_FLAGS) $< $@
|
||||
|
||||
clean-local:
|
||||
rm -rf e-module-empris.edj empris.edj module.desktop e_modules-empris.spec *~
|
||||
|
||||
uninstall:
|
||||
rm -rf $(DESTDIR)$(datadir)
|
|
@ -0,0 +1,5 @@
|
|||
Simple MPD module
|
||||
Load it into your shelf. Set it to: Able to be Resized, and resize to a good size for best experience.
|
||||
|
||||
To see more than just the artist and title, edit the theme (See comments in the theme for more info).
|
||||
|
|
@ -0,0 +1,17 @@
|
|||
#!/bin/sh
|
||||
|
||||
rm -rf autom4te.cache
|
||||
rm -f aclocal.m4 ltmain.sh
|
||||
|
||||
touch README
|
||||
|
||||
#echo "Running autopoint..." ; autopoint -f || :
|
||||
echo "Running aclocal..." ; aclocal $ACLOCAL_FLAGS || exit 1
|
||||
echo "Running autoheader..." ; autoheader || exit 1
|
||||
echo "Running autoconf..." ; autoconf || exit 1
|
||||
echo "Running libtoolize..." ; (libtoolize --copy --automake || glibtoolize --automake) || exit 1
|
||||
echo "Running automake..." ; automake --add-missing --copy --gnu || exit 1
|
||||
|
||||
if [ -z "$NOCONFIGURE" ]; then
|
||||
./configure "$@"
|
||||
fi
|
|
@ -0,0 +1,65 @@
|
|||
dnl Process this file with autoconf to produce a configure script.
|
||||
|
||||
# get rid of that stupid cache mechanism
|
||||
rm -f config.cache
|
||||
|
||||
AC_INIT(empris, 0.0.1, hannes.janetzek@gmail.com)
|
||||
AC_PREREQ(2.59)
|
||||
AC_CONFIG_HEADERS(config.h)
|
||||
AM_INIT_AUTOMAKE(1.8)
|
||||
|
||||
AC_CANONICAL_BUILD
|
||||
AC_CANONICAL_HOST
|
||||
|
||||
AC_PROG_CC
|
||||
AC_HEADER_STDC
|
||||
AC_HEADER_TIME
|
||||
|
||||
define([AC_LIBTOOL_LANG_CXX_CONFIG], [:])dnl
|
||||
define([AC_LIBTOOL_LANG_F77_CONFIG], [:])dnl
|
||||
AC_PROG_LIBTOOL
|
||||
|
||||
ALL_LINGUAS=""
|
||||
AC_SUBST(ALL_LINGUAS)
|
||||
|
||||
#AM_GNU_GETTEXT([external])
|
||||
#AM_GNU_GETTEXT_VERSION(0.14)
|
||||
|
||||
PKG_CHECK_MODULES(E, [enlightenment])
|
||||
release=$(pkg-config --variable=release enlightenment)
|
||||
MODULE_ARCH="$host_os-$host_cpu-$release"
|
||||
AC_SUBST(MODULE_ARCH)
|
||||
AC_DEFINE_UNQUOTED(MODULE_ARCH, "$MODULE_ARCH", "Module architecture")
|
||||
|
||||
uname=`uname`
|
||||
|
||||
# Find edje_cc
|
||||
PKG_CHECK_MODULES(EDJE, [edje >= 0.5.0])
|
||||
AC_ARG_WITH(edje-cc,
|
||||
AC_HELP_STRING([--with-edje-cc=PATH], [specify a specific path to edje_cc]),
|
||||
[
|
||||
v=$withval;
|
||||
EDJE_CC=$v
|
||||
],[
|
||||
EDJE_CC=$(pkg-config --variable=prefix edje)/bin/edje_cc
|
||||
]
|
||||
)
|
||||
AC_SUBST(EDJE_CC)
|
||||
AC_MSG_CHECKING([Which edje_cc to use])
|
||||
AC_MSG_RESULT(${EDJE_CC})
|
||||
|
||||
datadir=$(pkg-config --variable=modules enlightenment)/${PACKAGE}
|
||||
|
||||
|
||||
AC_ARG_ENABLE(homedir-install,
|
||||
AS_HELP_STRING([--enable-homedir-install], [Install module in homedir]),
|
||||
[ datadir="${HOME}/.e/e/modules/${PACKAGE}" ]
|
||||
)
|
||||
|
||||
AC_OUTPUT([
|
||||
Makefile
|
||||
src/Makefile
|
||||
e_modules-empris.spec
|
||||
module.desktop
|
||||
],[
|
||||
])
|
|
@ -0,0 +1,32 @@
|
|||
images {
|
||||
image: "module_icon.png" COMP;
|
||||
}
|
||||
collections {
|
||||
group {
|
||||
name: "icon";
|
||||
max: 48 48;
|
||||
parts {
|
||||
part {
|
||||
name: "image";
|
||||
type: IMAGE;
|
||||
mouse_events: 0;
|
||||
description {
|
||||
state: "default" 0.00;
|
||||
visible: 1;
|
||||
aspect: 1.00 1.00;
|
||||
rel1 {
|
||||
relative: 0.00 0.00;
|
||||
offset: 0 0;
|
||||
}
|
||||
rel2 {
|
||||
relative: 1.00 1.00;
|
||||
offset: -1 -1;
|
||||
}
|
||||
image {
|
||||
normal: "module_icon.png";
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,50 @@
|
|||
%define module_name mpdule
|
||||
|
||||
Summary: %{module_name} module for the Enlightenment window manager
|
||||
Name: e_modules-%{module_name}
|
||||
Version: @VERSION@
|
||||
Release: 0.%(date '+%Y%m%d')
|
||||
License: BSD
|
||||
Group: User Interface/Desktops
|
||||
URL: http://www.enlightenment.org/
|
||||
Source: ftp://ftp.enlightenment.org/pub/enlightenment/%{module_name}-%{version}.tar.gz
|
||||
Packager: %{?_packager:%{_packager}}%{!?_packager:Michael Jennings <mej@eterm.org>}
|
||||
Vendor: %{?_vendorinfo:%{_vendorinfo}}%{!?_vendorinfo:The Enlightenment Project (http://www.enlightenment.org/)}
|
||||
Distribution: %{?_distribution:%{_distribution}}%{!?_distribution:%{_vendor}}
|
||||
BuildRequires: ecore-devel, evas-devel, esmart-devel, edje-bin
|
||||
BuildRequires: edje-devel, eet-devel, enlightenment-devel >= 0.16.999
|
||||
Requires: enlightenment >= 0.16.999
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-root
|
||||
|
||||
%description
|
||||
%{module_name} module for the Enlightenment window manager.
|
||||
|
||||
%prep
|
||||
%setup -q -n %{module_name}-%{version}
|
||||
|
||||
%build
|
||||
%{configure}
|
||||
%{__make} %{?_smp_mflags} %{?mflags}
|
||||
|
||||
%install
|
||||
%{__make} %{?mflags_install} DESTDIR=$RPM_BUILD_ROOT install
|
||||
%{find_lang} %{module_name} || true > %{module_name}.lang
|
||||
|
||||
%clean
|
||||
test "x$RPM_BUILD_ROOT" != "x/" && rm -rf $RPM_BUILD_ROOT
|
||||
|
||||
%post
|
||||
/sbin/ldconfig
|
||||
|
||||
%postun
|
||||
/sbin/ldconfig
|
||||
|
||||
%files -f %{module_name}.lang
|
||||
%defattr(-, root, root)
|
||||
%doc AUTHORS ChangeLog COPYING* INSTALL NEWS README
|
||||
%if "%{module_name}" == "emu"
|
||||
%{_bindir}/%{module_name}*
|
||||
%endif
|
||||
%{_libdir}/enlightenment/modules/%{module_name}*
|
||||
|
||||
%changelog
|
|
@ -0,0 +1,984 @@
|
|||
spectra
|
||||
{
|
||||
}
|
||||
|
||||
color_classes
|
||||
{
|
||||
}
|
||||
|
||||
images
|
||||
{
|
||||
image:"next.png" COMP;
|
||||
image:"pause.png" COMP;
|
||||
image:"play.png" COMP;
|
||||
image:"prev.png" COMP;
|
||||
image:"stop.png" COMP;
|
||||
}
|
||||
|
||||
data
|
||||
{
|
||||
}
|
||||
|
||||
styles
|
||||
{
|
||||
}
|
||||
|
||||
/*
|
||||
Available labels:
|
||||
empris.status
|
||||
empris.artist
|
||||
empris.title
|
||||
empris.album
|
||||
empris.track
|
||||
empris.date
|
||||
empris.genre
|
||||
empris.composer
|
||||
empris.time
|
||||
empris.file
|
||||
*/
|
||||
collections
|
||||
{
|
||||
group
|
||||
{
|
||||
name:"modules/empris/main";
|
||||
parts
|
||||
{
|
||||
part
|
||||
{
|
||||
name:"base";
|
||||
type:RECT;
|
||||
mouse_events:0;
|
||||
description
|
||||
{
|
||||
state:"default" 0.00;
|
||||
visible:1;
|
||||
rel1
|
||||
{
|
||||
relative:0.00 0.00;
|
||||
offset:0 0;
|
||||
}
|
||||
rel2
|
||||
{
|
||||
relative:1.00 1.00;
|
||||
offset:-1 -1;
|
||||
}
|
||||
}
|
||||
}
|
||||
part
|
||||
{
|
||||
name:"item_clip";
|
||||
type:RECT;
|
||||
description
|
||||
{
|
||||
state:"default" 0.00;
|
||||
visible:1;
|
||||
rel1
|
||||
{
|
||||
relative:0.00 0.00;
|
||||
offset:0 0;
|
||||
}
|
||||
rel2
|
||||
{
|
||||
relative:1.00 1.00;
|
||||
offset:-1 -1;
|
||||
}
|
||||
color:255 255 255 0;
|
||||
}
|
||||
description
|
||||
{
|
||||
state:"hide" 0.00;
|
||||
visible:1;
|
||||
rel1
|
||||
{
|
||||
relative:0.00 -1.00;
|
||||
offset:0 0;
|
||||
}
|
||||
rel2
|
||||
{
|
||||
relative:1.00 0.00;
|
||||
offset:-1 -1;
|
||||
}
|
||||
color:255 255 255 0;
|
||||
}
|
||||
}
|
||||
part
|
||||
{
|
||||
name:"controls_clip";
|
||||
type:RECT;
|
||||
description
|
||||
{
|
||||
state:"default" 0.00;
|
||||
visible:1;
|
||||
rel1
|
||||
{
|
||||
relative:0.00 1.00;
|
||||
offset:0 0;
|
||||
}
|
||||
rel2
|
||||
{
|
||||
relative:1.00 2.00;
|
||||
offset:-1 -1;
|
||||
}
|
||||
color:255 255 255 0;
|
||||
}
|
||||
description
|
||||
{
|
||||
state:"show" 0.00;
|
||||
visible:1;
|
||||
rel1
|
||||
{
|
||||
relative:0.00 0.00;
|
||||
offset:0 0;
|
||||
}
|
||||
rel2
|
||||
{
|
||||
relative:1.00 1.00;
|
||||
offset:-1 -1;
|
||||
}
|
||||
color:255 255 255 0;
|
||||
}
|
||||
}
|
||||
part
|
||||
{
|
||||
name:"empris.artist";
|
||||
type:TEXT;
|
||||
effect:OUTLINE_SOFT_SHADOW;
|
||||
clip_to:"base";
|
||||
mouse_events:0;
|
||||
description
|
||||
{
|
||||
state:"default" 0.00;
|
||||
visible:1;
|
||||
rel1
|
||||
{
|
||||
relative:0.00 0.00;
|
||||
offset:0 4;
|
||||
to:"item_clip";
|
||||
}
|
||||
rel2
|
||||
{
|
||||
relative:1.00 0.50;
|
||||
offset:-1 -3;
|
||||
to:"item_clip";
|
||||
}
|
||||
color2:0 0 0 96;
|
||||
color3:0 0 0 32;
|
||||
text
|
||||
{
|
||||
text:"";
|
||||
text_class:"empris";
|
||||
font:"Sans:style=Mono";
|
||||
size:10;
|
||||
min:1 1;
|
||||
align:0.50 0.50;
|
||||
}
|
||||
}
|
||||
description
|
||||
{
|
||||
state:"hidden" 0.00;
|
||||
visible:0;
|
||||
rel1
|
||||
{
|
||||
relative:0.00 0.00;
|
||||
offset:0 4;
|
||||
to:"item_clip";
|
||||
}
|
||||
rel2
|
||||
{
|
||||
relative:1.00 0.50;
|
||||
offset:-1 -3;
|
||||
to:"item_clip";
|
||||
}
|
||||
color2:0 0 0 96;
|
||||
color3:0 0 0 32;
|
||||
text
|
||||
{
|
||||
text:"";
|
||||
text_class:"empris";
|
||||
font:"Sans:style=Mono";
|
||||
size:10;
|
||||
min:1 1;
|
||||
align:0.50 0.50;
|
||||
}
|
||||
}
|
||||
description
|
||||
{
|
||||
state:"visible" 0.00;
|
||||
visible:1;
|
||||
rel1
|
||||
{
|
||||
relative:0.00 0.00;
|
||||
offset:0 4;
|
||||
to:"item_clip";
|
||||
}
|
||||
rel2
|
||||
{
|
||||
relative:1.00 0.50;
|
||||
offset:-1 -3;
|
||||
to:"item_clip";
|
||||
}
|
||||
color2:0 0 0 96;
|
||||
color3:0 0 0 32;
|
||||
text
|
||||
{
|
||||
text:"";
|
||||
text_class:"empris";
|
||||
font:"Sans:style=Mono";
|
||||
size:10;
|
||||
min:1 1;
|
||||
align:0.50 0.50;
|
||||
}
|
||||
}
|
||||
}
|
||||
part
|
||||
{
|
||||
name:"empris.title";
|
||||
type:TEXT;
|
||||
effect:OUTLINE_SOFT_SHADOW;
|
||||
clip_to:"base";
|
||||
mouse_events:0;
|
||||
description
|
||||
{
|
||||
state:"default" 0.00;
|
||||
visible:1;
|
||||
rel1
|
||||
{
|
||||
relative:0.00 0.50;
|
||||
offset:0 4;
|
||||
to:"item_clip";
|
||||
}
|
||||
rel2
|
||||
{
|
||||
relative:1.00 1.00;
|
||||
offset:-1 -3;
|
||||
to:"item_clip";
|
||||
}
|
||||
color2:0 0 0 96;
|
||||
color3:0 0 0 32;
|
||||
text
|
||||
{
|
||||
text:"";
|
||||
text_class:"empris";
|
||||
font:"Sans:style=Mono";
|
||||
size:9;
|
||||
min:1 1;
|
||||
align:0.50 0.50;
|
||||
}
|
||||
}
|
||||
description
|
||||
{
|
||||
state:"hidden" 0.00;
|
||||
visible:0;
|
||||
rel1
|
||||
{
|
||||
relative:0.00 0.50;
|
||||
offset:0 4;
|
||||
to:"item_clip";
|
||||
}
|
||||
rel2
|
||||
{
|
||||
relative:1.00 1.00;
|
||||
offset:-1 -3;
|
||||
to:"item_clip";
|
||||
}
|
||||
color2:0 0 0 96;
|
||||
color3:0 0 0 32;
|
||||
text
|
||||
{
|
||||
text:"";
|
||||
text_class:"empris";
|
||||
font:"Sans:style=Mono";
|
||||
size:9;
|
||||
min:1 1;
|
||||
align:0.50 0.50;
|
||||
}
|
||||
}
|
||||
description
|
||||
{
|
||||
state:"visible" 0.00;
|
||||
visible:1;
|
||||
rel1
|
||||
{
|
||||
relative:0.00 0.50;
|
||||
offset:0 4;
|
||||
to:"item_clip";
|
||||
}
|
||||
rel2
|
||||
{
|
||||
relative:1.00 1.00;
|
||||
offset:-1 -3;
|
||||
to:"item_clip";
|
||||
}
|
||||
color2:0 0 0 96;
|
||||
color3:0 0 0 32;
|
||||
text
|
||||
{
|
||||
text:"";
|
||||
text_class:"empris";
|
||||
font:"Sans:style=Mono";
|
||||
size:9;
|
||||
min:1 1;
|
||||
align:0.50 0.50;
|
||||
}
|
||||
}
|
||||
}
|
||||
part
|
||||
{
|
||||
name:"empris.previous";
|
||||
type:IMAGE;
|
||||
mouse_events:1;
|
||||
repeat_events:1;
|
||||
description
|
||||
{
|
||||
state:"default" 0.0;
|
||||
visible:1;
|
||||
aspect:1 1;
|
||||
align:0.0 0.5;
|
||||
rel1
|
||||
{
|
||||
relative:0.0 0.0;
|
||||
offset:0 0;
|
||||
to:"controls_clip";
|
||||
}
|
||||
rel2
|
||||
{
|
||||
relative:0.0 1.0;
|
||||
to:"controls_clip";
|
||||
}
|
||||
image
|
||||
{
|
||||
normal:"prev.png";
|
||||
}
|
||||
}
|
||||
}
|
||||
part
|
||||
{
|
||||
name:"empris.play";
|
||||
type:IMAGE;
|
||||
mouse_events:1;
|
||||
repeat_events:1;
|
||||
description
|
||||
{
|
||||
state:"default" 0.0;
|
||||
visible:1;
|
||||
aspect:1 1;
|
||||
align:0.0 0.5;
|
||||
rel1
|
||||
{
|
||||
relative:1.0 0.0;
|
||||
offset:0 0;
|
||||
to_x:"empris.previous";
|
||||
to_y:"controls_clip";
|
||||
}
|
||||
rel2
|
||||
{
|
||||
relative:1.0 1.0;
|
||||
to_x:"empris.previous";
|
||||
to_y:"controls_clip";
|
||||
}
|
||||
image
|
||||
{
|
||||
normal:"play.png";
|
||||
}
|
||||
}
|
||||
}
|
||||
part
|
||||
{
|
||||
name:"empris.pause";
|
||||
type:IMAGE;
|
||||
mouse_events:1;
|
||||
repeat_events:1;
|
||||
description
|
||||
{
|
||||
state:"default" 0.0;
|
||||
visible:1;
|
||||
aspect:1 1;
|
||||
align:0.0 0.5;
|
||||
rel1
|
||||
{
|
||||
relative:1.0 0.0;
|
||||
offset:0 0;
|
||||
to_x:"empris.play";
|
||||
to_y:"controls_clip";
|
||||
}
|
||||
rel2
|
||||
{
|
||||
relative:1.0 1.0;
|
||||
to_x:"empris.play";
|
||||
to_y:"controls_clip";
|
||||
}
|
||||
image
|
||||
{
|
||||
normal:"pause.png";
|
||||
}
|
||||
}
|
||||
}
|
||||
part
|
||||
{
|
||||
name:"empris.stop";
|
||||
type:IMAGE;
|
||||
mouse_events:1;
|
||||
repeat_events:1;
|
||||
description
|
||||
{
|
||||
state:"default" 0.0;
|
||||
visible:1;
|
||||
aspect:1 1;
|
||||
align:0.0 0.5;
|
||||
rel1
|
||||
{
|
||||
relative:1.0 0.0;
|
||||
offset:0 0;
|
||||
to_x:"empris.pause";
|
||||
to_y:"controls_clip";
|
||||
}
|
||||
rel2
|
||||
{
|
||||
relative:1.0 1.0;
|
||||
to_x:"empris.pause";
|
||||
to_y:"controls_clip";
|
||||
}
|
||||
image
|
||||
{
|
||||
normal:"stop.png";
|
||||
}
|
||||
}
|
||||
}
|
||||
part
|
||||
{
|
||||
name:"empris.next";
|
||||
type:IMAGE;
|
||||
mouse_events:1;
|
||||
repeat_events:1;
|
||||
description
|
||||
{
|
||||
state:"default" 0.0;
|
||||
visible:1;
|
||||
aspect:1 1;
|
||||
align:0.0 0.5;
|
||||
rel1
|
||||
{
|
||||
relative:1.0 0.0;
|
||||
offset:0 0;
|
||||
to_x:"empris.stop";
|
||||
to_y:"controls_clip";
|
||||
}
|
||||
rel2
|
||||
{
|
||||
relative:1.0 1.0;
|
||||
to_x:"empris.stop";
|
||||
to_y:"controls_clip";
|
||||
}
|
||||
image
|
||||
{
|
||||
normal:"next.png";
|
||||
}
|
||||
}
|
||||
}
|
||||
part
|
||||
{
|
||||
name:"event_grab";
|
||||
type:RECT;
|
||||
repeat_events:1;
|
||||
description
|
||||
{
|
||||
state:"default" 0.00;
|
||||
visible:1;
|
||||
color:0 0 0 0;
|
||||
rel1
|
||||
{
|
||||
relative:0.00 0.00;
|
||||
offset:0 0;
|
||||
}
|
||||
rel2
|
||||
{
|
||||
relative:1.00 1.00;
|
||||
offset:-1 -1;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
programs
|
||||
{
|
||||
program
|
||||
{
|
||||
name:"show_controls";
|
||||
signal:"mouse,in";
|
||||
source:"event_grab";
|
||||
action:STATE_SET "show" 0.0;
|
||||
transition:LINEAR 0.1;
|
||||
target:"controls_clip";
|
||||
}
|
||||
program
|
||||
{
|
||||
name:"show_controls2";
|
||||
signal:"mouse,in";
|
||||
source:"event_grab";
|
||||
action:STATE_SET "hide" 0.0;
|
||||
transition:LINEAR 0.1;
|
||||
target:"item_clip";
|
||||
}
|
||||
program
|
||||
{
|
||||
name:"wait";
|
||||
action:STATE_SET "hide" 0.0;
|
||||
transition:LINEAR 2;
|
||||
target:"item_clip";
|
||||
after:"hide_controls";
|
||||
after:"hide_controls2";
|
||||
}
|
||||
program
|
||||
{
|
||||
name:"hide_controls";
|
||||
signal:"mouse,out";
|
||||
source:"event_grab";
|
||||
action:STATE_SET "default" 0.0;
|
||||
transition:LINEAR 0.1;
|
||||
target:"controls_clip";
|
||||
}
|
||||
program
|
||||
{
|
||||
name:"hide_controls2";
|
||||
signal:"mouse,out";
|
||||
source:"event_grab";
|
||||
action:STATE_SET "default" 0.0;
|
||||
transition:LINEAR 0.1;
|
||||
target:"item_clip";
|
||||
}
|
||||
program
|
||||
{
|
||||
name:"mouse_play";
|
||||
signal:"mouse,clicked,1";
|
||||
source:"empris.play";
|
||||
action:SIGNAL_EMIT "empris,play" "";
|
||||
}
|
||||
program
|
||||
{
|
||||
name:"mouse_pause";
|
||||
signal:"mouse,clicked,1";
|
||||
source:"empris.pause";
|
||||
action:SIGNAL_EMIT "empris,pause" "";
|
||||
}
|
||||
program
|
||||
{
|
||||
name:"mouse_stop";
|
||||
signal:"mouse,clicked,1";
|
||||
source:"empris.stop";
|
||||
action:SIGNAL_EMIT "empris,stop" "";
|
||||
}
|
||||
program
|
||||
{
|
||||
name:"mouse_previous";
|
||||
signal:"mouse,clicked,1";
|
||||
source:"empris.previous";
|
||||
action:SIGNAL_EMIT "empris,previous" "";
|
||||
}
|
||||
program
|
||||
{
|
||||
name:"mouse_next";
|
||||
signal:"mouse,clicked,1";
|
||||
source:"empris.next";
|
||||
action:SIGNAL_EMIT "empris,next" "";
|
||||
}
|
||||
}
|
||||
}
|
||||
group
|
||||
{
|
||||
name:"modules/empris/popup";
|
||||
parts
|
||||
{
|
||||
part
|
||||
{
|
||||
name:"base";
|
||||
type:RECT;
|
||||
mouse_events:0;
|
||||
description
|
||||
{
|
||||
state:"default" 0.00;
|
||||
visible:1;
|
||||
min:200 45;
|
||||
rel1
|
||||
{
|
||||
relative:0.00 0.00;
|
||||
offset:5 5;
|
||||
}
|
||||
rel2
|
||||
{
|
||||
relative:1.00 1.00;
|
||||
offset:-5 -5;
|
||||
}
|
||||
}
|
||||
}
|
||||
part
|
||||
{
|
||||
name:"labels";
|
||||
type:RECT;
|
||||
mouse_events:0;
|
||||
description
|
||||
{
|
||||
state:"default" 0.00;
|
||||
visible:1;
|
||||
rel1
|
||||
{
|
||||
relative:0.00 0.00;
|
||||
offset:0 0;
|
||||
to:"base";
|
||||
}
|
||||
rel2
|
||||
{
|
||||
relative:0.25 1.00;
|
||||
offset:0 0;
|
||||
to:"base";
|
||||
}
|
||||
color:255 255 255 0;
|
||||
}
|
||||
}
|
||||
part
|
||||
{
|
||||
name:"values";
|
||||
type:RECT;
|
||||
mouse_events:0;
|
||||
description
|
||||
{
|
||||
state:"default" 0.00;
|
||||
visible:1;
|
||||
rel1
|
||||
{
|
||||
relative:0.25 0.00;
|
||||
offset:0 0;
|
||||
to:"base";
|
||||
}
|
||||
rel2
|
||||
{
|
||||
relative:1.00 1.00;
|
||||
offset:0 0;
|
||||
to:"base";
|
||||
}
|
||||
color:255 255 255 0;
|
||||
}
|
||||
}
|
||||
part
|
||||
{
|
||||
name:"item_clip";
|
||||
type:RECT;
|
||||
description
|
||||
{
|
||||
state:"default" 0.00;
|
||||
visible:1;
|
||||
min:5 5;
|
||||
rel1
|
||||
{
|
||||
relative:0.00 0.00;
|
||||
offset:0 0;
|
||||
}
|
||||
rel2
|
||||
{
|
||||
relative:1.00 1.00;
|
||||
offset:-1 -1;
|
||||
}
|
||||
color:255 255 255 0;
|
||||
}
|
||||
}
|
||||
part
|
||||
{
|
||||
name:"empris.artist_label";
|
||||
type:TEXT;
|
||||
effect:SHADOW;
|
||||
clip_to:"base";
|
||||
description
|
||||
{
|
||||
state:"default" 0.00;
|
||||
visible:1;
|
||||
align:0.00 0.50;
|
||||
fixed:1 1;
|
||||
rel1
|
||||
{
|
||||
relative:-0.00 0.00;
|
||||
offset:0 0;
|
||||
to:"labels";
|
||||
}
|
||||
rel2
|
||||
{
|
||||
relative:1.00 0.00;
|
||||
offset:0 16;
|
||||
to:"labels";
|
||||
}
|
||||
color:0 0 0 255;
|
||||
color3:255 255 255 128;
|
||||
text
|
||||
{
|
||||
text:"Artist:";
|
||||
text_class:"empris";
|
||||
font:"Sans:style=Mono";
|
||||
size:10;
|
||||
min:1 1;
|
||||
align:1.0 0.50;
|
||||
}
|
||||
}
|
||||
}
|
||||
part
|
||||
{
|
||||
name:"empris.title_label";
|
||||
type:TEXT;
|
||||
effect:SHADOW;
|
||||
clip_to:"base";
|
||||
description
|
||||
{
|
||||
state:"default" 0.00;
|
||||
visible:1;
|
||||
align:0.00 0.50;
|
||||
rel1
|
||||
{
|
||||
relative:0.00 1.00;
|
||||
offset:0 0;
|
||||
to_x:"labels";
|
||||
to_y:"empris.artist_label";
|
||||
}
|
||||
rel2
|
||||
{
|
||||
relative:1.00 1.00;
|
||||
offset:0 12;
|
||||
to_x:"labels";
|
||||
to_y:"empris.artist_label";
|
||||
}
|
||||
color:0 0 0 255;
|
||||
color3:255 255 255 128;
|
||||
text
|
||||
{
|
||||
text:"Title:";
|
||||
text_class:"empris";
|
||||
font:"Sans:style=Mono";
|
||||
size:10;
|
||||
min:1 1;
|
||||
align:1.0 0.50;
|
||||
}
|
||||
}
|
||||
}
|
||||
part
|
||||
{
|
||||
name:"empris.album_label";
|
||||
type:TEXT;
|
||||
mouse_events:0;
|
||||
effect:SHADOW;
|
||||
clip_to:"base";
|
||||
description
|
||||
{
|
||||
state:"default" 0.00;
|
||||
visible:1;
|
||||
align:0.00 0.50;
|
||||
rel1
|
||||
{
|
||||
relative:0.00 1.00;
|
||||
offset:0 0;
|
||||
to_x:"labels";
|
||||
to_y:"empris.title_label";
|
||||
}
|
||||
rel2
|
||||
{
|
||||
relative:1.00 1.00;
|
||||
offset:0 12;
|
||||
to_x:"labels";
|
||||
to_y:"empris.title_label";
|
||||
}
|
||||
color:0 0 0 255;
|
||||
color3:255 255 255 128;
|
||||
text
|
||||
{
|
||||
text:"Album:";
|
||||
text_class:"empris";
|
||||
font:"Sans:style=Mono";
|
||||
size:10;
|
||||
min:1 1;
|
||||
align:1.0 0.50;
|
||||
}
|
||||
}
|
||||
}
|
||||
part
|
||||
{
|
||||
name:"empris.genre_label";
|
||||
type:TEXT;
|
||||
mouse_events:0;
|
||||
effect:SHADOW;
|
||||
clip_to:"base";
|
||||
description
|
||||
{
|
||||
state:"default" 0.00;
|
||||
visible:1;
|
||||
align:0.00 0.50;
|
||||
rel1
|
||||
{
|
||||
relative:0.00 1.00;
|
||||
offset:0 0;
|
||||
to_x:"labels";
|
||||
to_y:"empris.album_label";
|
||||
}
|
||||
rel2
|
||||
{
|
||||
relative:1.00 1.00;
|
||||
offset:0 12;
|
||||
to_x:"labels";
|
||||
to_y:"empris.album_label";
|
||||
}
|
||||
color:0 0 0 255;
|
||||
color3:255 255 255 128;
|
||||
text
|
||||
{
|
||||
text:"Genre:";
|
||||
text_class:"empris";
|
||||
font:"Sans:style=Mono";
|
||||
size:10;
|
||||
min:1 1;
|
||||
align:1.0 0.50;
|
||||
}
|
||||
}
|
||||
}
|
||||
part
|
||||
{
|
||||
name:"empris.artist";
|
||||
type:TEXT;
|
||||
effect:NONE;
|
||||
clip_to:"base";
|
||||
description
|
||||
{
|
||||
state:"default" 0.00;
|
||||
visible:1;
|
||||
align:0.00 0.50;
|
||||
rel1
|
||||
{
|
||||
relative:0.00 0.00;
|
||||
offset:0 0;
|
||||
to_x:"values";
|
||||
to_y:"empris.artist_label";
|
||||
}
|
||||
rel2
|
||||
{
|
||||
relative:1.00 1.00;
|
||||
to_x:"values";
|
||||
to_y:"empris.artist_label";
|
||||
}
|
||||
color:0 0 0 255;
|
||||
text
|
||||
{
|
||||
text:"";
|
||||
text_class:"empris";
|
||||
font:"Sans:style=Bold";
|
||||
size:10;
|
||||
min:1 1;
|
||||
align:0.0 0.50;
|
||||
}
|
||||
}
|
||||
}
|
||||
part
|
||||
{
|
||||
name:"empris.title";
|
||||
type:TEXT;
|
||||
effect:NONE;
|
||||
clip_to:"base";
|
||||
description
|
||||
{
|
||||
state:"default" 0.00;
|
||||
visible:1;
|
||||
align:0.00 0.50;
|
||||
rel1
|
||||
{
|
||||
relative:0.00 0.00;
|
||||
offset:0 0;
|
||||
to_x:"values";
|
||||
to_y:"empris.title_label";
|
||||
}
|
||||
rel2
|
||||
{
|
||||
relative:1.00 1.00;
|
||||
to_x:"values";
|
||||
to_y:"empris.title_label";
|
||||
}
|
||||
color:0 0 0 255;
|
||||
text
|
||||
{
|
||||
text:"";
|
||||
text_class:"empris";
|
||||
font:"Sans:style=Bold";
|
||||
size:10;
|
||||
min:1 1;
|
||||
align:0.0 0.50;
|
||||
}
|
||||
}
|
||||
}
|
||||
part
|
||||
{
|
||||
name:"empris.album";
|
||||
type:TEXT;
|
||||
effect:NONE;
|
||||
clip_to:"base";
|
||||
description
|
||||
{
|
||||
state:"default" 0.00;
|
||||
visible:1;
|
||||
align:0.00 0.50;
|
||||
rel1
|
||||
{
|
||||
relative:0.00 0.00;
|
||||
offset:0 0;
|
||||
to_x:"values";
|
||||
to_y:"empris.album_label";
|
||||
}
|
||||
rel2
|
||||
{
|
||||
relative:1.00 1.00;
|
||||
to_x:"values";
|
||||
to_y:"empris.album_label";
|
||||
}
|
||||
color:0 0 0 255;
|
||||
text
|
||||
{
|
||||
text:"";
|
||||
text_class:"empris";
|
||||
font:"Sans:style=Bold";
|
||||
size:10;
|
||||
min:1 1;
|
||||
align:0.0 0.50;
|
||||
}
|
||||
}
|
||||
}
|
||||
part
|
||||
{
|
||||
name:"empris.genre";
|
||||
type:TEXT;
|
||||
effect:NONE;
|
||||
clip_to:"base";
|
||||
description
|
||||
{
|
||||
state:"default" 0.00;
|
||||
visible:1;
|
||||
align:0.00 0.50;
|
||||
rel1
|
||||
{
|
||||
relative:0.00 0.00;
|
||||
offset:0 0;
|
||||
to_x:"values";
|
||||
to_y:"empris.genre_label";
|
||||
}
|
||||
rel2
|
||||
{
|
||||
relative:1.00 1.00;
|
||||
to_x:"values";
|
||||
to_y:"empris.genre_label";
|
||||
}
|
||||
color:0 0 0 255;
|
||||
text
|
||||
{
|
||||
text:"";
|
||||
text_class:"empris";
|
||||
font:"Sans:style=Bold";
|
||||
size:10;
|
||||
min:1 1;
|
||||
align:0.0 0.50;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
programs
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
Binary file not shown.
After Width: | Height: | Size: 3.5 KiB |
Binary file not shown.
After Width: | Height: | Size: 9.9 KiB |
Binary file not shown.
After Width: | Height: | Size: 9.3 KiB |
Binary file not shown.
After Width: | Height: | Size: 9.6 KiB |
Binary file not shown.
After Width: | Height: | Size: 10 KiB |
Binary file not shown.
After Width: | Height: | Size: 9.0 KiB |
|
@ -0,0 +1,6 @@
|
|||
[Desktop Entry]
|
||||
Type=Link
|
||||
Name=EMpris
|
||||
Icon=e-module-empris
|
||||
Comment=Control MPRIS supporting music player like Amarok, Audacious, xmms2, vlc and others
|
||||
|
|
@ -0,0 +1,19 @@
|
|||
MAINTAINERCLEANFILES = Makefile.in
|
||||
|
||||
INCLUDES = -I. \
|
||||
-I$(top_srcdir) \
|
||||
-I$(includedir) \
|
||||
@E_CFLAGS@
|
||||
|
||||
pkgdir = $(datadir)/$(MODULE_ARCH)
|
||||
pkg_LTLIBRARIES = module.la
|
||||
module_la_SOURCES = e_mod_main.c \
|
||||
e_mod_main.h \
|
||||
e_mod_config.c
|
||||
|
||||
module_la_LIBADD = @E_LIBS@
|
||||
module_la_LDFLAGS = -module -avoid-version
|
||||
module_la_DEPENDENCIES = $(top_builddir)/config.h
|
||||
|
||||
clean-local:
|
||||
rm -rf *~
|
|
@ -0,0 +1,114 @@
|
|||
/*
|
||||
* vim:ts=8:sw=3:sts=8:noexpandtab:cino=>5n-3f0^-2{2
|
||||
*/
|
||||
#include <e.h>
|
||||
#include "e_mod_main.h"
|
||||
|
||||
struct _E_Config_Dialog_Data
|
||||
{
|
||||
char *player;
|
||||
int show_popup;
|
||||
};
|
||||
|
||||
/* Protos */
|
||||
static void *_create_data (E_Config_Dialog * cfd);
|
||||
static void _free_data (E_Config_Dialog * cfd, E_Config_Dialog_Data * cfdata);
|
||||
static Evas_Object *_basic_create_widgets (E_Config_Dialog * cfd, Evas * evas,
|
||||
E_Config_Dialog_Data * cfdata);
|
||||
static int _basic_apply_data (E_Config_Dialog * cfd,
|
||||
E_Config_Dialog_Data * cfdata);
|
||||
|
||||
void
|
||||
_config_empris_module (Config_Item * ci)
|
||||
{
|
||||
E_Config_Dialog *cfd;
|
||||
E_Config_Dialog_View *v;
|
||||
E_Container *con;
|
||||
char buf[4096];
|
||||
|
||||
v = E_NEW (E_Config_Dialog_View, 1);
|
||||
|
||||
v->create_cfdata = _create_data;
|
||||
v->free_cfdata = _free_data;
|
||||
v->basic.apply_cfdata = _basic_apply_data;
|
||||
v->basic.create_widgets = _basic_create_widgets;
|
||||
|
||||
snprintf (buf, sizeof (buf), "%s/e-module-empris.edj",
|
||||
e_module_dir_get (empris_config->module));
|
||||
con = e_container_current_get (e_manager_current_get ());
|
||||
cfd =
|
||||
e_config_dialog_new (con, D_ ("Empris Configuration"), "Empris",
|
||||
"_e_modules_empris_config_dialog", buf, 0, v, ci);
|
||||
empris_config->config_dialog = cfd;
|
||||
}
|
||||
|
||||
static void
|
||||
_fill_data (Config_Item * ci, E_Config_Dialog_Data * cfdata)
|
||||
{
|
||||
char buf[128];
|
||||
|
||||
cfdata->player = strdup (ci->player);
|
||||
cfdata->show_popup = ci->show_popup;
|
||||
}
|
||||
|
||||
static void *
|
||||
_create_data (E_Config_Dialog * cfd)
|
||||
{
|
||||
E_Config_Dialog_Data *cfdata;
|
||||
Config_Item *ci;
|
||||
|
||||
ci = cfd->data;
|
||||
cfdata = E_NEW (E_Config_Dialog_Data, 1);
|
||||
|
||||
_fill_data (ci, cfdata);
|
||||
return cfdata;
|
||||
}
|
||||
|
||||
static void
|
||||
_free_data (E_Config_Dialog * cfd, E_Config_Dialog_Data * cfdata)
|
||||
{
|
||||
if (!empris_config)
|
||||
return;
|
||||
empris_config->config_dialog = NULL;
|
||||
free (cfdata->player);
|
||||
E_FREE (cfdata);
|
||||
}
|
||||
|
||||
static Evas_Object *
|
||||
_basic_create_widgets (E_Config_Dialog * cfd, Evas * evas,
|
||||
E_Config_Dialog_Data * cfdata)
|
||||
{
|
||||
Evas_Object *o, *of, *ob, *player_entry;
|
||||
|
||||
o = e_widget_list_add (evas, 0, 0);
|
||||
|
||||
of = e_widget_frametable_add (evas, D_ ("Configuration"), 1);
|
||||
|
||||
ob = e_widget_label_add (evas, D_ ("Player:"));
|
||||
e_widget_frametable_object_append (of, ob, 0, 0, 1, 1, 1, 0, 1, 0);
|
||||
|
||||
player_entry = e_widget_entry_add (evas, &cfdata->player, NULL, NULL, NULL);
|
||||
e_widget_frametable_object_append (of, player_entry, 0, 1, 1, 1, 1, 0, 1, 0);
|
||||
e_widget_size_min_set (player_entry, 150, 1);
|
||||
|
||||
ob = e_widget_check_add(evas, D_("Show Popup:"), &(cfdata->show_popup));
|
||||
e_widget_frametable_object_append(of, ob, 0, 4, 1, 1, 1, 0, 1, 0);
|
||||
|
||||
e_widget_list_object_append (o, of, 1, 1, 0.5);
|
||||
return o;
|
||||
}
|
||||
|
||||
static int
|
||||
_basic_apply_data (E_Config_Dialog * cfd, E_Config_Dialog_Data * cfdata)
|
||||
{
|
||||
Config_Item *ci;
|
||||
|
||||
ci = cfd->data;
|
||||
if (ci->player)
|
||||
eina_stringshare_del (ci->player);
|
||||
ci->player = eina_stringshare_add (cfdata->player);
|
||||
ci->show_popup = cfdata->show_popup;
|
||||
e_config_save_queue ();
|
||||
_empris_config_updated (ci);
|
||||
return 1;
|
||||
}
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,41 @@
|
|||
/*
|
||||
* vim:ts=8:sw=3:sts=8:noexpandtab:cino=>5n-3f0^-2{2
|
||||
*/
|
||||
#define D_(str) dgettext(PACKAGE, str)
|
||||
|
||||
#ifndef E_MOD_MAIN_H
|
||||
#define E_MOD_MAIN_H
|
||||
|
||||
#define RESOLUTION_MINUTE 0
|
||||
#define RESOLUTION_SECOND 1
|
||||
|
||||
typedef struct _Config Config;
|
||||
typedef struct _Config_Item Config_Item;
|
||||
|
||||
struct _Config
|
||||
{
|
||||
E_Module *module;
|
||||
E_Config_Dialog *config_dialog;
|
||||
E_Menu *menu;
|
||||
Eina_List *instances;
|
||||
Eina_List *items;
|
||||
};
|
||||
|
||||
struct _Config_Item
|
||||
{
|
||||
const char *id;
|
||||
const char *player;
|
||||
int show_popup;
|
||||
};
|
||||
|
||||
EAPI extern E_Module_Api e_modapi;
|
||||
|
||||
EAPI void *e_modapi_init (E_Module * m);
|
||||
EAPI int e_modapi_shutdown (E_Module * m);
|
||||
EAPI int e_modapi_save (E_Module * m);
|
||||
|
||||
void _config_empris_module (Config_Item * ci);
|
||||
void _empris_config_updated (Config_Item * ci);
|
||||
extern Config *empris_config;
|
||||
|
||||
#endif
|
Loading…
Reference in New Issue