git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/libraries/libkipi@1076200 283d02a7-25f6-0310-bc7c-ecb5cbfe19dav3.5.13-sru
@ -0,0 +1,6 @@
|
|||||||
|
AUTHORS AND MAINTAINERS :
|
||||||
|
|
||||||
|
Renchi Raju <renchi.raju at kdemail.net>
|
||||||
|
Gilles Caulier <caulier dot gilles at free.fr>
|
||||||
|
Jesper K. Pedersen <blackie at kde.org>
|
||||||
|
Aurelien Gateau <aurelien dot gateau at free.fr>
|
@ -0,0 +1,183 @@
|
|||||||
|
Requirements: libkexif v >= 0.1 kde >= 3.1.x
|
||||||
|
|
||||||
|
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, a file
|
||||||
|
`config.cache' that saves the results of its tests to speed up
|
||||||
|
reconfiguring, and a file `config.log' containing compiler output
|
||||||
|
(useful mainly for debugging `configure').
|
||||||
|
|
||||||
|
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 at some point `config.cache'
|
||||||
|
contains results you don't want to keep, you may remove or edit it.
|
||||||
|
|
||||||
|
The file `configure.in' is used to create `configure' by a program
|
||||||
|
called `autoconf'. You only need `configure.in' 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. You can give `configure'
|
||||||
|
initial values for variables by setting them in the environment. Using
|
||||||
|
a Bourne-compatible shell, you can do that on the command line like
|
||||||
|
this:
|
||||||
|
CC=c89 CFLAGS=-O2 LIBS=-lposix ./configure
|
||||||
|
|
||||||
|
Or on systems that have the `env' program, you can do it like this:
|
||||||
|
env CPPFLAGS=-I/usr/local/include LDFLAGS=-s ./configure
|
||||||
|
|
||||||
|
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 supports 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' can not figure out
|
||||||
|
automatically, but needs to determine by the type of host the package
|
||||||
|
will run on. Usually `configure' can figure that out, but if it prints
|
||||||
|
a message saying it can not guess the host type, give it the
|
||||||
|
`--host=TYPE' option. TYPE can either be a short name for the system
|
||||||
|
type, such as `sun4', or a canonical name with three fields:
|
||||||
|
CPU-COMPANY-SYSTEM
|
||||||
|
|
||||||
|
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 host type.
|
||||||
|
|
||||||
|
If you are building compiler tools for cross-compiling, you can also
|
||||||
|
use the `--target=TYPE' option to select the type of system they will
|
||||||
|
produce code for and the `--build=TYPE' option to select the type of
|
||||||
|
system on which you are compiling the package.
|
||||||
|
|
||||||
|
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.
|
||||||
|
|
||||||
|
Operation Controls
|
||||||
|
==================
|
||||||
|
|
||||||
|
`configure' recognizes the following options to control how it
|
||||||
|
operates.
|
||||||
|
|
||||||
|
`--cache-file=FILE'
|
||||||
|
Use and save the results of the tests in FILE instead of
|
||||||
|
`./config.cache'. Set FILE to `/dev/null' to disable caching, for
|
||||||
|
debugging `configure'.
|
||||||
|
|
||||||
|
`--help'
|
||||||
|
Print a summary of the options to `configure', and exit.
|
||||||
|
|
||||||
|
`--quiet'
|
||||||
|
`--silent'
|
||||||
|
`-q'
|
||||||
|
Do not print messages saying which checks are being made.
|
||||||
|
|
||||||
|
`--srcdir=DIR'
|
||||||
|
Look for the package's source code in directory DIR. Usually
|
||||||
|
`configure' can determine that directory automatically.
|
||||||
|
|
||||||
|
`--version'
|
||||||
|
Print the version of Autoconf used to generate the `configure'
|
||||||
|
script, and exit.
|
||||||
|
|
||||||
|
`configure' also accepts some other, not widely useful, options.
|
||||||
|
|
@ -0,0 +1,7 @@
|
|||||||
|
/** @mainpage KDE Extragear Libraries
|
||||||
|
*
|
||||||
|
* The extragear-libs module collects libraries that are shared by
|
||||||
|
* more than one extragear application, or which are useful in their
|
||||||
|
* own right.
|
||||||
|
*
|
||||||
|
*/
|
@ -0,0 +1,7 @@
|
|||||||
|
AUTOMAKE_OPTIONS = foreign 1.6.1
|
||||||
|
|
||||||
|
include admin/deps.am
|
||||||
|
include admin/Doxyfile.am
|
||||||
|
|
||||||
|
COMPILE_FIRST = libkexif libkipi
|
||||||
|
SUBDIRS=$(TOPSUBDIRS)
|
@ -0,0 +1,6 @@
|
|||||||
|
AUTOMAKE_OPTIONS = foreign 1.6.1
|
||||||
|
|
||||||
|
include admin/deps.am
|
||||||
|
include admin/Doxyfile.am
|
||||||
|
|
||||||
|
COMPILE_FIRST = libkexif libkipi
|
@ -0,0 +1,14 @@
|
|||||||
|
all:
|
||||||
|
@echo "This Makefile is only for the CVS repository"
|
||||||
|
@echo "This will be deleted before making the distribution"
|
||||||
|
@echo ""
|
||||||
|
@if test ! -d admin; then \
|
||||||
|
echo "Please recheckout this module!" ;\
|
||||||
|
echo "for cvs: use checkout once and after that update again" ;\
|
||||||
|
echo "for cvsup: checkout kde-common from cvsup and" ;\
|
||||||
|
echo " link kde-common/admin to ./admin" ;\
|
||||||
|
exit 1 ;\
|
||||||
|
fi
|
||||||
|
$(MAKE) -f admin/Makefile.common cvs
|
||||||
|
|
||||||
|
.SILENT:
|
@ -0,0 +1,26 @@
|
|||||||
|
-------------------------------------------------------------------------
|
||||||
|
0.1.4
|
||||||
|
|
||||||
|
Bugs fixed:
|
||||||
|
|
||||||
|
o fix FTBFS (fails to build from source) when libkipi is
|
||||||
|
build the first time on a system.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------------
|
||||||
|
0.1.3
|
||||||
|
|
||||||
|
New features:
|
||||||
|
|
||||||
|
o Make loadPlugin() public, so that it's possible to load plugins
|
||||||
|
selectively, and raise version to 1.0.1, so that this API change
|
||||||
|
can be detected
|
||||||
|
|
||||||
|
Bugs fixed:
|
||||||
|
|
||||||
|
o various build fixes
|
||||||
|
|
||||||
|
o batchprogressdialog: Removed help button. It does not point to
|
||||||
|
any usefull documentation. BUG: 99418
|
||||||
|
|
||||||
|
-------------------------------------------------------------------------
|
||||||
|
For details and info about previous versions, see ChangeLog.
|
@ -0,0 +1,86 @@
|
|||||||
|
How to release kipi & co.
|
||||||
|
----------------------------------------
|
||||||
|
1. Release libkipi
|
||||||
|
2. Release kipi-plugins
|
||||||
|
|
||||||
|
|
||||||
|
1. Release libkipi
|
||||||
|
a) Update release info
|
||||||
|
libkipi/libkipi.lsm
|
||||||
|
libkipi/libkipi/version.h
|
||||||
|
libkipi/libkipi.pc.in
|
||||||
|
|
||||||
|
To do that you can use the "prepare_libkipi.rb" script, change the
|
||||||
|
release version ("version" and "version_n" fields) and run it.
|
||||||
|
Don't forget to commit your changes :)
|
||||||
|
|
||||||
|
b) Update Changelog
|
||||||
|
- to do that use the "release_kipi_changelog.sh" script
|
||||||
|
release_kipi_changelog.sh libkipi oldest-revision-or-date new-release-version
|
||||||
|
- edit Changelog and modify the wrong lines (if any)
|
||||||
|
- Commit your changes
|
||||||
|
|
||||||
|
c) Build the source tarball
|
||||||
|
- use the "release_libkipi.rb"
|
||||||
|
edit the script and change the "version" field
|
||||||
|
if you're releasing an svn snapshot set "usesvnver" to "yes"
|
||||||
|
run it and get libkipiXXX.tar.bz2
|
||||||
|
|
||||||
|
d) Uncompress and test the tarball
|
||||||
|
- check if all the files are right in
|
||||||
|
- check if the file RELEASE.rev is in and with the right revision number
|
||||||
|
- check if it builds correctly.
|
||||||
|
|
||||||
|
e) Upload tarball for testing
|
||||||
|
Before an official release upload the tarball for testing used sites are
|
||||||
|
digikam3rdparty.free.fr or www.linux.it/~anaselli/kipi-plugins - depends
|
||||||
|
on who is releasing :)
|
||||||
|
Send a mail to kde-imaging@kde.org and digikam-devel@kde.org to have a
|
||||||
|
feedback from pakagers before posting an offical release annoucement.
|
||||||
|
|
||||||
|
f) Upload tarbal on SF and update kipi site
|
||||||
|
official site for uploading the release is http://sourceforge.net/projects/kipi
|
||||||
|
web page to be update is http://extragear.kde.org/apps/kipi/
|
||||||
|
to update this last you have to get, change and commit it from
|
||||||
|
XXX@svn.kde.org/home/kde/trunk/www/areas/extragear/apps/kipi
|
||||||
|
Send a mail to announce the official release.
|
||||||
|
|
||||||
|
2. Release kipi-plugins
|
||||||
|
a) Update release info
|
||||||
|
kipi-plugins/kipi-plugins.lsm
|
||||||
|
kipi-plugins/common/include/pluginsversion.h
|
||||||
|
|
||||||
|
To do that you can use the "prepare_kipiplugins.rb" script, change the
|
||||||
|
release version ("version" field) and run it.
|
||||||
|
Don't forget to commit your changes.
|
||||||
|
|
||||||
|
b) Update Changelog
|
||||||
|
- to do that use the "release_kipi_changelog.sh" script
|
||||||
|
release_kipi_changelog.sh kipi-plugins oldest-revision-or-date new-release-version
|
||||||
|
- edit Changelog and modify the wrong lines (if any)
|
||||||
|
- Commit your changes
|
||||||
|
|
||||||
|
c) Build the source tarball
|
||||||
|
- use the "release_kipi-plugins.rb"
|
||||||
|
edit the script and change the "version" field and check the "addPo" one for po files
|
||||||
|
if you're releasing an svn snapshot set "usesvnver" to "yes"
|
||||||
|
run it and get kipi-pluginsXXX.tar.bz2
|
||||||
|
|
||||||
|
d) Uncompress and test the tarball
|
||||||
|
- check if all the files are right in
|
||||||
|
- check if the file RELEASE.rev is in and with the right revision number
|
||||||
|
- check if it builds correctly.
|
||||||
|
|
||||||
|
e) Upload tarball for testing
|
||||||
|
Before an official release upload the tarball for testing used sites are
|
||||||
|
digikam3rdparty.free.fr or www.linux.it/~anaselli/kipi-plugins - depends
|
||||||
|
on who is releasing :)
|
||||||
|
Send a mail to kde-imaging@kde.org and digikam-devel@kde.org to have a
|
||||||
|
feedback from pakagers before posting an offical release annoucement.
|
||||||
|
|
||||||
|
f) Upload tarbal on SF and update kipi site
|
||||||
|
official site for uploading the release is http://sourceforge.net/projects/kipi
|
||||||
|
web page to be update is http://extragear.kde.org/apps/kipi/
|
||||||
|
to update this last you have to get, change and commit it from
|
||||||
|
XXX@svn.kde.org/home/kde/trunk/www/areas/extragear/apps/kipi
|
||||||
|
Send a mail to announce the official release.
|
@ -0,0 +1,2 @@
|
|||||||
|
Last Changed Rev: 609235
|
||||||
|
Last Changed Date: 2006-11-29 22:07:56 +0100 (Wed, 29 Nov 2006)
|
@ -0,0 +1,44 @@
|
|||||||
|
To be discussed:
|
||||||
|
#1. Define the way plugins should access host app images. Current choices are:
|
||||||
|
#- Use ImageCollections
|
||||||
|
#- Use Interface::Browser class suggested by Jesper in the
|
||||||
|
# "libkipi/libkipi/design" document.
|
||||||
|
Done
|
||||||
|
|
||||||
|
2. In the same way, define how plugins should give images to the host app.
|
||||||
|
Current choices are:
|
||||||
|
- Interface::addImage
|
||||||
|
- Define a class similar to Interface::Browser, which we could call
|
||||||
|
Interface::Importer
|
||||||
|
|
||||||
|
3. Make a decision on some terms: should we use "album" or "image collection"
|
||||||
|
or both (if so, explain the difference in a README file)
|
||||||
|
|
||||||
|
4. Agree on the category list.
|
||||||
|
|
||||||
|
5. Define KIPI and plugin versioning so that we don't get mixed version bugs
|
||||||
|
(Aurélien: I think this could be done by correctly defining lib version
|
||||||
|
numbers, but I might be missing something here).
|
||||||
|
|
||||||
|
6. Define what helper widgets/dialog we should provide to plugins. Right now
|
||||||
|
we have:
|
||||||
|
- ImageCollectionDialog (Poor name, should be ImageSelectDialog)
|
||||||
|
- UploadWidget
|
||||||
|
|
||||||
|
|
||||||
|
To be done:
|
||||||
|
- Implement a widget to let the user select ImageCollections. The minimal
|
||||||
|
interface should be:
|
||||||
|
class ImageCollectionSelector : public QWidget {
|
||||||
|
QValueList<ImageCollection> imageCollections;
|
||||||
|
}
|
||||||
|
|
||||||
|
- Review all classes to polish the API before freezing it.
|
||||||
|
|
||||||
|
- Improve BC strength with d pointers.
|
||||||
|
|
||||||
|
- Add functions for copying/moving/renaming files, or do we all agree that the
|
||||||
|
ImageInfo::cloneData() method is enough?
|
||||||
|
|
||||||
|
- Write some documentation. I'm thinking about Doxygen class documentation
|
||||||
|
plus a skeleton app and a skeleton plugin to serve as examples.
|
@ -0,0 +1,243 @@
|
|||||||
|
/* config.h.in. Generated from configure.in by autoheader. */
|
||||||
|
|
||||||
|
/* Define to 1 if you have the <Carbon/Carbon.h> header file. */
|
||||||
|
#undef HAVE_CARBON_CARBON_H
|
||||||
|
|
||||||
|
/* Define if you have the CoreAudio API */
|
||||||
|
#undef HAVE_COREAUDIO
|
||||||
|
|
||||||
|
/* Define to 1 if you have the <crt_externs.h> header file. */
|
||||||
|
#undef HAVE_CRT_EXTERNS_H
|
||||||
|
|
||||||
|
/* Defines if your system has the crypt function */
|
||||||
|
#undef HAVE_CRYPT
|
||||||
|
|
||||||
|
/* Define to 1 if you have the <dlfcn.h> header file. */
|
||||||
|
#undef HAVE_DLFCN_H
|
||||||
|
|
||||||
|
/* Define to 1 if you have the <inttypes.h> header file. */
|
||||||
|
#undef HAVE_INTTYPES_H
|
||||||
|
|
||||||
|
/* Define if you have libjpeg */
|
||||||
|
#undef HAVE_LIBJPEG
|
||||||
|
|
||||||
|
/* Define if you have libpng */
|
||||||
|
#undef HAVE_LIBPNG
|
||||||
|
|
||||||
|
/* Define if you have a working libpthread (will enable threaded code) */
|
||||||
|
#undef HAVE_LIBPTHREAD
|
||||||
|
|
||||||
|
/* Define if you have libz */
|
||||||
|
#undef HAVE_LIBZ
|
||||||
|
|
||||||
|
/* Define to 1 if you have the <memory.h> header file. */
|
||||||
|
#undef HAVE_MEMORY_H
|
||||||
|
|
||||||
|
/* Define if your system needs _NSGetEnviron to set up the environment */
|
||||||
|
#undef HAVE_NSGETENVIRON
|
||||||
|
|
||||||
|
/* Define if you have res_init */
|
||||||
|
#undef HAVE_RES_INIT
|
||||||
|
|
||||||
|
/* Define if you have the res_init prototype */
|
||||||
|
#undef HAVE_RES_INIT_PROTO
|
||||||
|
|
||||||
|
/* Define if you have a STL implementation by SGI */
|
||||||
|
#undef HAVE_SGI_STL
|
||||||
|
|
||||||
|
/* Define to 1 if you have the `snprintf' function. */
|
||||||
|
#undef HAVE_SNPRINTF
|
||||||
|
|
||||||
|
/* Define to 1 if you have the <stdint.h> header file. */
|
||||||
|
#undef HAVE_STDINT_H
|
||||||
|
|
||||||
|
/* Define to 1 if you have the <stdlib.h> header file. */
|
||||||
|
#undef HAVE_STDLIB_H
|
||||||
|
|
||||||
|
/* Define to 1 if you have the <strings.h> header file. */
|
||||||
|
#undef HAVE_STRINGS_H
|
||||||
|
|
||||||
|
/* Define to 1 if you have the <string.h> header file. */
|
||||||
|
#undef HAVE_STRING_H
|
||||||
|
|
||||||
|
/* Define if you have strlcat */
|
||||||
|
#undef HAVE_STRLCAT
|
||||||
|
|
||||||
|
/* Define if you have the strlcat prototype */
|
||||||
|
#undef HAVE_STRLCAT_PROTO
|
||||||
|
|
||||||
|
/* Define if you have strlcpy */
|
||||||
|
#undef HAVE_STRLCPY
|
||||||
|
|
||||||
|
/* Define if you have the strlcpy prototype */
|
||||||
|
#undef HAVE_STRLCPY_PROTO
|
||||||
|
|
||||||
|
/* Define to 1 if you have the <sys/bitypes.h> header file. */
|
||||||
|
#undef HAVE_SYS_BITYPES_H
|
||||||
|
|
||||||
|
/* Define to 1 if you have the <sys/stat.h> header file. */
|
||||||
|
#undef HAVE_SYS_STAT_H
|
||||||
|
|
||||||
|
/* Define to 1 if you have the <sys/types.h> header file. */
|
||||||
|
#undef HAVE_SYS_TYPES_H
|
||||||
|
|
||||||
|
/* Define to 1 if you have the <unistd.h> header file. */
|
||||||
|
#undef HAVE_UNISTD_H
|
||||||
|
|
||||||
|
/* Define to 1 if you have the `vsnprintf' function. */
|
||||||
|
#undef HAVE_VSNPRINTF
|
||||||
|
|
||||||
|
/* Suffix for lib directories */
|
||||||
|
#undef KDELIBSUFF
|
||||||
|
|
||||||
|
/* kdemacros.h usable */
|
||||||
|
#undef KDEMACROS_USABLE
|
||||||
|
|
||||||
|
/* Name of package */
|
||||||
|
#undef PACKAGE
|
||||||
|
|
||||||
|
/* Define to the address where bug reports for this package should be sent. */
|
||||||
|
#undef PACKAGE_BUGREPORT
|
||||||
|
|
||||||
|
/* Define to the full name of this package. */
|
||||||
|
#undef PACKAGE_NAME
|
||||||
|
|
||||||
|
/* Define to the full name and version of this package. */
|
||||||
|
#undef PACKAGE_STRING
|
||||||
|
|
||||||
|
/* Define to the one symbol short name of this package. */
|
||||||
|
#undef PACKAGE_TARNAME
|
||||||
|
|
||||||
|
/* Define to the version of this package. */
|
||||||
|
#undef PACKAGE_VERSION
|
||||||
|
|
||||||
|
/* The size of `char *', as computed by sizeof. */
|
||||||
|
#undef SIZEOF_CHAR_P
|
||||||
|
|
||||||
|
/* The size of `int', as computed by sizeof. */
|
||||||
|
#undef SIZEOF_INT
|
||||||
|
|
||||||
|
/* The size of `long', as computed by sizeof. */
|
||||||
|
#undef SIZEOF_LONG
|
||||||
|
|
||||||
|
/* The size of `short', as computed by sizeof. */
|
||||||
|
#undef SIZEOF_SHORT
|
||||||
|
|
||||||
|
/* The size of `size_t', as computed by sizeof. */
|
||||||
|
#undef SIZEOF_SIZE_T
|
||||||
|
|
||||||
|
/* The size of `unsigned long', as computed by sizeof. */
|
||||||
|
#undef SIZEOF_UNSIGNED_LONG
|
||||||
|
|
||||||
|
/* Define to 1 if you have the ANSI C header files. */
|
||||||
|
#undef STDC_HEADERS
|
||||||
|
|
||||||
|
/* Version number of package */
|
||||||
|
#undef VERSION
|
||||||
|
|
||||||
|
/* Defined if compiling without arts */
|
||||||
|
#undef WITHOUT_ARTS
|
||||||
|
|
||||||
|
/*
|
||||||
|
* jpeg.h needs HAVE_BOOLEAN, when the system uses boolean in system
|
||||||
|
* headers and I'm too lazy to write a configure test as long as only
|
||||||
|
* unixware is related
|
||||||
|
*/
|
||||||
|
#ifdef _UNIXWARE
|
||||||
|
#define HAVE_BOOLEAN
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* AIX defines FD_SET in terms of bzero, but fails to include <strings.h>
|
||||||
|
* that defines bzero.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#if defined(_AIX)
|
||||||
|
#include <strings.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#if defined(HAVE_NSGETENVIRON) && defined(HAVE_CRT_EXTERNS_H)
|
||||||
|
# include <sys/time.h>
|
||||||
|
# include <crt_externs.h>
|
||||||
|
# define environ (*_NSGetEnviron())
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#if !defined(HAVE_RES_INIT_PROTO)
|
||||||
|
#ifdef __cplusplus
|
||||||
|
extern "C" {
|
||||||
|
#endif
|
||||||
|
int res_init(void);
|
||||||
|
#ifdef __cplusplus
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#if !defined(HAVE_STRLCAT_PROTO)
|
||||||
|
#ifdef __cplusplus
|
||||||
|
extern "C" {
|
||||||
|
#endif
|
||||||
|
unsigned long strlcat(char*, const char*, unsigned long);
|
||||||
|
#ifdef __cplusplus
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#if !defined(HAVE_STRLCPY_PROTO)
|
||||||
|
#ifdef __cplusplus
|
||||||
|
extern "C" {
|
||||||
|
#endif
|
||||||
|
unsigned long strlcpy(char*, const char*, unsigned long);
|
||||||
|
#ifdef __cplusplus
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* On HP-UX, the declaration of vsnprintf() is needed every time !
|
||||||
|
*/
|
||||||
|
|
||||||
|
#if !defined(HAVE_VSNPRINTF) || defined(hpux)
|
||||||
|
#if __STDC__
|
||||||
|
#include <stdarg.h>
|
||||||
|
#include <stdlib.h>
|
||||||
|
#else
|
||||||
|
#include <varargs.h>
|
||||||
|
#endif
|
||||||
|
#ifdef __cplusplus
|
||||||
|
extern "C"
|
||||||
|
#endif
|
||||||
|
int vsnprintf(char *str, size_t n, char const *fmt, va_list ap);
|
||||||
|
#ifdef __cplusplus
|
||||||
|
extern "C"
|
||||||
|
#endif
|
||||||
|
int snprintf(char *str, size_t n, char const *fmt, ...);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
/* define to 1 if -fvisibility is supported */
|
||||||
|
#undef __KDE_HAVE_GCC_VISIBILITY
|
||||||
|
|
||||||
|
|
||||||
|
#if defined(__SVR4) && !defined(__svr4__)
|
||||||
|
#define __svr4__ 1
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
/* type to use in place of socklen_t if not defined */
|
||||||
|
#undef kde_socklen_t
|
||||||
|
|
||||||
|
/* type to use in place of socklen_t if not defined (deprecated, use
|
||||||
|
kde_socklen_t) */
|
||||||
|
#undef ksize_t
|
@ -0,0 +1,3 @@
|
|||||||
|
./admin/configure.in.min
|
||||||
|
configure.in.in
|
||||||
|
./libkipi/configure.in.in
|
@ -0,0 +1,196 @@
|
|||||||
|
dnl =======================================================
|
||||||
|
dnl FILE: ./admin/configure.in.min
|
||||||
|
dnl =======================================================
|
||||||
|
|
||||||
|
dnl This file is part of the KDE libraries/packages
|
||||||
|
dnl Copyright (C) 2001 Stephan Kulow (coolo@kde.org)
|
||||||
|
|
||||||
|
dnl This file is free software; you can redistribute it and/or
|
||||||
|
dnl modify it under the terms of the GNU Library General Public
|
||||||
|
dnl License as published by the Free Software Foundation; either
|
||||||
|
dnl version 2 of the License, or (at your option) any later version.
|
||||||
|
|
||||||
|
dnl This library is distributed in the hope that it will be useful,
|
||||||
|
dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
|
dnl Library General Public License for more details.
|
||||||
|
|
||||||
|
dnl You should have received a copy of the GNU Library General Public License
|
||||||
|
dnl along with this library; see the file COPYING.LIB. If not, write to
|
||||||
|
dnl the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
||||||
|
dnl Boston, MA 02110-1301, USA.
|
||||||
|
|
||||||
|
# Original Author was Kalle@kde.org
|
||||||
|
# I lifted it in some mater. (Stephan Kulow)
|
||||||
|
# I used much code from Janos Farkas
|
||||||
|
|
||||||
|
dnl Process this file with autoconf to produce a configure script.
|
||||||
|
|
||||||
|
AC_INIT(acinclude.m4) dnl a source file from your sub dir
|
||||||
|
|
||||||
|
dnl This is so we can use kde-common
|
||||||
|
AC_CONFIG_AUX_DIR(admin)
|
||||||
|
|
||||||
|
dnl This ksh/zsh feature conflicts with `cd blah ; pwd`
|
||||||
|
unset CDPATH
|
||||||
|
|
||||||
|
dnl Checking host/target/build systems, for make, install etc.
|
||||||
|
AC_CANONICAL_SYSTEM
|
||||||
|
dnl Perform program name transformation
|
||||||
|
AC_ARG_PROGRAM
|
||||||
|
|
||||||
|
dnl Automake doc recommends to do this only here. (Janos)
|
||||||
|
AM_INIT_AUTOMAKE(libkipi-0.1.5, "3.5.5") dnl searches for some needed programs
|
||||||
|
|
||||||
|
AM_MAINTAINER_MODE
|
||||||
|
|
||||||
|
KDE_SET_PREFIX
|
||||||
|
|
||||||
|
dnl generate the config header
|
||||||
|
AM_CONFIG_HEADER(config.h) dnl at the distribution this done
|
||||||
|
|
||||||
|
dnl Checks for programs.
|
||||||
|
AC_CHECK_COMPILERS
|
||||||
|
AC_ENABLE_SHARED(yes)
|
||||||
|
AC_ENABLE_STATIC(no)
|
||||||
|
KDE_PROG_LIBTOOL
|
||||||
|
|
||||||
|
dnl for NLS support. Call them in this order!
|
||||||
|
dnl WITH_NLS is for the po files
|
||||||
|
AM_KDE_WITH_NLS
|
||||||
|
|
||||||
|
KDE_USE_QT(3.2)
|
||||||
|
AC_PATH_KDE
|
||||||
|
dnl =======================================================
|
||||||
|
dnl FILE: configure.in.in
|
||||||
|
dnl =======================================================
|
||||||
|
|
||||||
|
#MIN_CONFIG(3.2)
|
||||||
|
CXXFLAGS="$CXXFLAGS $KDE_DEFAULT_CXXFLAGS"
|
||||||
|
|
||||||
|
KDE_ENABLE_HIDDEN_VISIBILITY
|
||||||
|
|
||||||
|
KDE_INIT_DOXYGEN([KEG Libraries API Reference], [Version $VERSION])
|
||||||
|
|
||||||
|
dnl =======================================================
|
||||||
|
dnl FILE: ./libkipi/configure.in.in
|
||||||
|
dnl =======================================================
|
||||||
|
|
||||||
|
AC_OUTPUT([ libkipi/libkipi.pc ])
|
||||||
|
KDE_ENABLE_HIDDEN_VISIBILITY
|
||||||
|
|
||||||
|
|
||||||
|
AC_LANG_PUSH(C++)
|
||||||
|
libkipi_kdemacros_cppflags=$CPPFLAGS
|
||||||
|
CPPFLAGS="$CPPFLAGS $all_includes"
|
||||||
|
AC_MSG_CHECKING([if kdemacros.h is usable])
|
||||||
|
AC_COMPILE_IFELSE(
|
||||||
|
[
|
||||||
|
#include <kdemacros.h>
|
||||||
|
#include <string>
|
||||||
|
int other_func( void ) KDE_EXPORT;
|
||||||
|
int other_func( void )
|
||||||
|
{
|
||||||
|
std::string s("KDE_EXPORT");
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
],
|
||||||
|
[ AC_MSG_RESULT([yes])
|
||||||
|
AC_DEFINE(KDEMACROS_USABLE, 1, [kdemacros.h usable]) ],
|
||||||
|
[ AC_MSG_RESULT([no]) ]
|
||||||
|
)
|
||||||
|
CPPFLAGS=$libkipi_kdemacros_cppflags
|
||||||
|
AC_LANG_POP(C++)
|
||||||
|
AM_CONFIG_HEADER([ libkipi/libkipi/libkipi_export.h ])
|
||||||
|
KDE_CREATE_SUBDIRSLIST
|
||||||
|
AM_CONDITIONAL(libkexif_SUBDIR_included, test "x$libkexif_SUBDIR_included" = xyes)
|
||||||
|
AM_CONDITIONAL(libkipi_SUBDIR_included, test "x$libkipi_SUBDIR_included" = xyes)
|
||||||
|
AM_CONDITIONAL(doc_SUBDIR_included, test "x$doc_SUBDIR_included" = xyes)
|
||||||
|
AM_CONDITIONAL(po_SUBDIR_included, test "x$po_SUBDIR_included" = xyes)
|
||||||
|
AC_CONFIG_FILES([ Makefile ])
|
||||||
|
AC_CONFIG_FILES([ doc/Makefile ])
|
||||||
|
AC_CONFIG_FILES([ libkipi/Makefile ])
|
||||||
|
AC_CONFIG_FILES([ libkipi/libkipi/Makefile ])
|
||||||
|
AC_CONFIG_FILES([ po/Makefile ])
|
||||||
|
AC_CONFIG_FILES([ po/ar/Makefile ])
|
||||||
|
AC_CONFIG_FILES([ po/br/Makefile ])
|
||||||
|
AC_CONFIG_FILES([ po/ca/Makefile ])
|
||||||
|
AC_CONFIG_FILES([ po/cs/Makefile ])
|
||||||
|
AC_CONFIG_FILES([ po/cy/Makefile ])
|
||||||
|
AC_CONFIG_FILES([ po/da/Makefile ])
|
||||||
|
AC_CONFIG_FILES([ po/de/Makefile ])
|
||||||
|
AC_CONFIG_FILES([ po/el/Makefile ])
|
||||||
|
AC_CONFIG_FILES([ po/en_GB/Makefile ])
|
||||||
|
AC_CONFIG_FILES([ po/es/Makefile ])
|
||||||
|
AC_CONFIG_FILES([ po/et/Makefile ])
|
||||||
|
AC_CONFIG_FILES([ po/fi/Makefile ])
|
||||||
|
AC_CONFIG_FILES([ po/fr/Makefile ])
|
||||||
|
AC_CONFIG_FILES([ po/ga/Makefile ])
|
||||||
|
AC_CONFIG_FILES([ po/gl/Makefile ])
|
||||||
|
AC_CONFIG_FILES([ po/is/Makefile ])
|
||||||
|
AC_CONFIG_FILES([ po/it/Makefile ])
|
||||||
|
AC_CONFIG_FILES([ po/ja/Makefile ])
|
||||||
|
AC_CONFIG_FILES([ po/lt/Makefile ])
|
||||||
|
AC_CONFIG_FILES([ po/mt/Makefile ])
|
||||||
|
AC_CONFIG_FILES([ po/nb/Makefile ])
|
||||||
|
AC_CONFIG_FILES([ po/nl/Makefile ])
|
||||||
|
AC_CONFIG_FILES([ po/pa/Makefile ])
|
||||||
|
AC_CONFIG_FILES([ po/pl/Makefile ])
|
||||||
|
AC_CONFIG_FILES([ po/pt/Makefile ])
|
||||||
|
AC_CONFIG_FILES([ po/pt_BR/Makefile ])
|
||||||
|
AC_CONFIG_FILES([ po/ru/Makefile ])
|
||||||
|
AC_CONFIG_FILES([ po/rw/Makefile ])
|
||||||
|
AC_CONFIG_FILES([ po/sk/Makefile ])
|
||||||
|
AC_CONFIG_FILES([ po/sl/Makefile ])
|
||||||
|
AC_CONFIG_FILES([ po/sr/Makefile ])
|
||||||
|
AC_CONFIG_FILES([ po/sr@Latn/Makefile ])
|
||||||
|
AC_CONFIG_FILES([ po/ta/Makefile ])
|
||||||
|
AC_CONFIG_FILES([ po/tr/Makefile ])
|
||||||
|
AC_CONFIG_FILES([ po/uk/Makefile ])
|
||||||
|
AC_CONFIG_FILES([ po/zh_CN/Makefile ])
|
||||||
|
AC_OUTPUT
|
||||||
|
# Check if KDE_SET_PREFIX was called, and --prefix was passed to configure
|
||||||
|
if test -n "$kde_libs_prefix" -a -n "$given_prefix"; then
|
||||||
|
# And if so, warn when they don't match
|
||||||
|
if test "$kde_libs_prefix" != "$given_prefix"; then
|
||||||
|
# And if kde doesn't know about the prefix yet
|
||||||
|
echo ":"`kde-config --path exe`":" | grep ":$given_prefix/bin/:" 2>&1 >/dev/null
|
||||||
|
if test $? -ne 0; then
|
||||||
|
echo ""
|
||||||
|
echo "Warning: you chose to install this package in $given_prefix,"
|
||||||
|
echo "but KDE was found in $kde_libs_prefix."
|
||||||
|
echo "For this to work, you will need to tell KDE about the new prefix, by ensuring"
|
||||||
|
echo "that KDEDIRS contains it, e.g. export KDEDIRS=$given_prefix:$kde_libs_prefix"
|
||||||
|
echo "Then restart KDE."
|
||||||
|
echo ""
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test x$GXX = "xyes" -a x$kde_have_gcc_visibility = "xyes" -a x$kde_cv_val_qt_gcc_visibility_patched = "xno"; then
|
||||||
|
echo ""
|
||||||
|
echo "Your GCC supports symbol visibility, but the patch for Qt supporting visibility"
|
||||||
|
echo "was not included. Therefore, GCC symbol visibility support remains disabled."
|
||||||
|
echo ""
|
||||||
|
echo "For better performance, consider including the Qt visibility supporting patch"
|
||||||
|
echo "located at:"
|
||||||
|
echo ""
|
||||||
|
echo "http://bugs.kde.org/show_bug.cgi?id=109386"
|
||||||
|
echo ""
|
||||||
|
echo "and recompile all of Qt and KDE. Note, this is entirely optional and"
|
||||||
|
echo "everything will continue to work just fine without it."
|
||||||
|
echo ""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test "$all_tests" = "bad"; then
|
||||||
|
if test ! "$cache_file" = "/dev/null"; then
|
||||||
|
echo ""
|
||||||
|
echo "Please remove the file $cache_file after changing your setup"
|
||||||
|
echo "so that configure will find the changes next time."
|
||||||
|
echo ""
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
echo ""
|
||||||
|
echo "Good - your configure finished. Start make now"
|
||||||
|
echo ""
|
||||||
|
fi
|
@ -0,0 +1,7 @@
|
|||||||
|
#MIN_CONFIG(3.2)
|
||||||
|
CXXFLAGS="$CXXFLAGS $KDE_DEFAULT_CXXFLAGS"
|
||||||
|
|
||||||
|
KDE_ENABLE_HIDDEN_VISIBILITY
|
||||||
|
|
||||||
|
KDE_INIT_DOXYGEN([KEG Libraries API Reference], [Version $VERSION])
|
||||||
|
|
@ -0,0 +1,5 @@
|
|||||||
|
|
||||||
|
KDE_LANG = en
|
||||||
|
KDE_DOCS = AUTO
|
||||||
|
SUBDIRS = $(AUTODIRS)
|
||||||
|
|
@ -0,0 +1,18 @@
|
|||||||
|
Begin4
|
||||||
|
Title: libkipi
|
||||||
|
Version: 0.1.5
|
||||||
|
Entered-date: 2006-11-29
|
||||||
|
Description: KDE Image Plugin Interface, a library to share plugins among
|
||||||
|
graphic applications
|
||||||
|
Keywords: kde image plugins
|
||||||
|
Author: renchi at pooh.tam.uiuc.edu (Renchi Raju)
|
||||||
|
caulier dot gilles at free.fr (Gilles Caulier)
|
||||||
|
blackie at kde.org (Jesper K. Pedersen)
|
||||||
|
aurelien dot gateau at free.fr (Aurelien Gateau)
|
||||||
|
Maintained-by:
|
||||||
|
Primary-site: http://extragear.kde.org/apps/kipi
|
||||||
|
Alternate-site:
|
||||||
|
Original-site:
|
||||||
|
Platforms:
|
||||||
|
Copying-policy: LGPL
|
||||||
|
End
|
@ -0,0 +1,16 @@
|
|||||||
|
SUBDIRS = libkipi
|
||||||
|
|
||||||
|
pkgconfigdir = $(libdir)/pkgconfig
|
||||||
|
pkgconfig_DATA = libkipi.pc
|
||||||
|
EXTRA_DIST = libkipi.pc.in
|
||||||
|
|
||||||
|
# i18n translation messages
|
||||||
|
messages:
|
||||||
|
LIST=`find . -name \*.h -o -name \*.hh -o -name \*.H -o -name \*.hxx -o -name \*.hpp -o -name \*.cpp -o -name \*.cc -o -name \*.cxx -o -name \*.ecpp -o -name \*.C`; \
|
||||||
|
if test -n "$$LIST"; then \
|
||||||
|
$(XGETTEXT) $$LIST -o $(podir)/libkipi.pot; \
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
include $(top_srcdir)/admin/Doxyfile.am
|
||||||
|
|
@ -0,0 +1,26 @@
|
|||||||
|
AC_OUTPUT([ libkipi/libkipi.pc ])
|
||||||
|
KDE_ENABLE_HIDDEN_VISIBILITY
|
||||||
|
|
||||||
|
|
||||||
|
AC_LANG_PUSH(C++)
|
||||||
|
libkipi_kdemacros_cppflags=$CPPFLAGS
|
||||||
|
CPPFLAGS="$CPPFLAGS $all_includes"
|
||||||
|
AC_MSG_CHECKING([if kdemacros.h is usable])
|
||||||
|
AC_COMPILE_IFELSE(
|
||||||
|
[
|
||||||
|
#include <kdemacros.h>
|
||||||
|
#include <string>
|
||||||
|
int other_func( void ) KDE_EXPORT;
|
||||||
|
int other_func( void )
|
||||||
|
{
|
||||||
|
std::string s("KDE_EXPORT");
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
],
|
||||||
|
[ AC_MSG_RESULT([yes])
|
||||||
|
AC_DEFINE(KDEMACROS_USABLE, 1, [kdemacros.h usable]) ],
|
||||||
|
[ AC_MSG_RESULT([no]) ]
|
||||||
|
)
|
||||||
|
CPPFLAGS=$libkipi_kdemacros_cppflags
|
||||||
|
AC_LANG_POP(C++)
|
||||||
|
AM_CONFIG_HEADER([ libkipi/libkipi/libkipi_export.h ])
|
@ -0,0 +1,11 @@
|
|||||||
|
prefix=@prefix@
|
||||||
|
exec_prefix=@exec_prefix@
|
||||||
|
libdir=@libdir@
|
||||||
|
includedir=@includedir@
|
||||||
|
|
||||||
|
Name: libkipi
|
||||||
|
Description: KDE library for shared plugins between graphical applications
|
||||||
|
Requires:
|
||||||
|
Version: 0.1.5
|
||||||
|
Libs: -L${libdir} -lkipi
|
||||||
|
Cflags: -I${includedir}
|
@ -0,0 +1,375 @@
|
|||||||
|
/* -*- Mode: C++ -*-
|
||||||
|
KD Tools - a set of useful widgets for Qt
|
||||||
|
$Id: KDStream.h 387954 2005-02-10 07:49:40Z blackie $
|
||||||
|
*/
|
||||||
|
|
||||||
|
/****************************************************************************
|
||||||
|
** Copyright (C) 2001-2005 Klarälvdalens Datakonsult AB. All rights reserved.
|
||||||
|
**
|
||||||
|
** This file is part of the KD Tools library.
|
||||||
|
**
|
||||||
|
** This file may be distributed and/or modified under the terms of the
|
||||||
|
** GNU General Public License version 2 as published by the Free Software
|
||||||
|
** Foundation and appearing in the file LICENSE.GPL included in the
|
||||||
|
** packaging of this file.
|
||||||
|
**
|
||||||
|
** Licensees holding valid commercial KD Tools licenses may use this file in
|
||||||
|
** accordance with the KD Tools Commercial License Agreement provided with
|
||||||
|
** the Software.
|
||||||
|
**
|
||||||
|
** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
|
||||||
|
** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
|
||||||
|
**
|
||||||
|
** Contact info@klaralvdalens-datakonsult.se if any conditions of this
|
||||||
|
** licensing are not clear to you.
|
||||||
|
**
|
||||||
|
**********************************************************************/
|
||||||
|
|
||||||
|
#ifndef KIPI_KDSTREAM
|
||||||
|
#define KIPI_KDSTREAM
|
||||||
|
|
||||||
|
// Forward declarations.
|
||||||
|
class QImage;
|
||||||
|
class QPixmap;
|
||||||
|
class QColor;
|
||||||
|
class QColorGroup;
|
||||||
|
class QPalette;
|
||||||
|
class QCursor;
|
||||||
|
class QDate;
|
||||||
|
class QDateTime;
|
||||||
|
class QTime;
|
||||||
|
class QFont;
|
||||||
|
class QPen;
|
||||||
|
class QPoint;
|
||||||
|
class QSize;
|
||||||
|
class QRect;
|
||||||
|
class QObject;
|
||||||
|
class QVariant;
|
||||||
|
class QBrush;
|
||||||
|
class QSizePolicy;
|
||||||
|
class QKeySequence;
|
||||||
|
|
||||||
|
#include <qstring.h>
|
||||||
|
#include <qvaluelist.h>
|
||||||
|
#include <qstrlist.h>
|
||||||
|
#include <qasciidict.h>
|
||||||
|
#include <qintdict.h>
|
||||||
|
#include <qptrdict.h>
|
||||||
|
#include <qdict.h>
|
||||||
|
#include <qvaluestack.h>
|
||||||
|
#include <qasciicache.h>
|
||||||
|
#include <qintcache.h>
|
||||||
|
#include <qcache.h>
|
||||||
|
|
||||||
|
#if ( QT_VERSION < 300 )
|
||||||
|
#include <qlist.h>
|
||||||
|
#include <qstack.h>
|
||||||
|
#include <qqueue.h>
|
||||||
|
#include <qvector.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if ( QT_VERSION >= 300 )
|
||||||
|
#include <qptrlist.h>
|
||||||
|
#include <qptrstack.h>
|
||||||
|
#include <qptrqueue.h>
|
||||||
|
#include <qpair.h>
|
||||||
|
#include <qptrvector.h>
|
||||||
|
#include <qvaluevector.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// utility functions.
|
||||||
|
class KDStream;
|
||||||
|
typedef KDStream & (*KDSTREAMFUNC)(KDStream &);
|
||||||
|
KDStream& endl( KDStream& stream);
|
||||||
|
KDStream& flush( KDStream& stream);
|
||||||
|
|
||||||
|
class KDStream
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
KDStream( QString* outputString = 0);
|
||||||
|
~KDStream();
|
||||||
|
void flush();
|
||||||
|
|
||||||
|
// Standard C++ types
|
||||||
|
KDStream& operator<<( bool );
|
||||||
|
KDStream& operator<<( char );
|
||||||
|
KDStream& operator<<( float );
|
||||||
|
KDStream& operator<<( double );
|
||||||
|
KDStream& operator<<( short );
|
||||||
|
KDStream& operator<<( unsigned short );
|
||||||
|
KDStream& operator<<( int );
|
||||||
|
KDStream& operator<<( unsigned int );
|
||||||
|
KDStream& operator<<( long );
|
||||||
|
KDStream& operator<<( unsigned long );
|
||||||
|
KDStream& operator<<( const char* );
|
||||||
|
KDStream& operator<<( const void* );
|
||||||
|
|
||||||
|
// Data holding classes.
|
||||||
|
KDStream& operator<<( const QString& );
|
||||||
|
KDStream& operator<<( const QCString& );
|
||||||
|
KDStream& operator<<( const QChar& );
|
||||||
|
|
||||||
|
KDStream& operator<<( const QColor& );
|
||||||
|
KDStream& operator<<( const QColorGroup& );
|
||||||
|
KDStream& operator<<( const QPalette& );
|
||||||
|
KDStream& operator<<( const QCursor& );
|
||||||
|
|
||||||
|
KDStream& operator<<( const QDate& );
|
||||||
|
KDStream& operator<<( const QDateTime& );
|
||||||
|
KDStream& operator<<( const QTime& );
|
||||||
|
|
||||||
|
KDStream& operator<<( const QFont& );
|
||||||
|
KDStream& operator<<( const QPen& );
|
||||||
|
KDStream& operator<<( const QPoint& );
|
||||||
|
KDStream& operator<<( const QSize& );
|
||||||
|
KDStream& operator<<( const QRect& );
|
||||||
|
KDStream& operator<<( const QBrush& );
|
||||||
|
KDStream& operator<<( const QSizePolicy& );
|
||||||
|
KDStream& operator<<( const QKeySequence& );
|
||||||
|
KDStream& operator<<( const QPixmap& );
|
||||||
|
KDStream& operator<<( const QImage& );
|
||||||
|
|
||||||
|
// misc
|
||||||
|
KDStream& operator<<( KDSTREAMFUNC );
|
||||||
|
KDStream& operator<<( const QVariant& );
|
||||||
|
KDStream& operator<<( const QObject& );
|
||||||
|
KDStream& operator<<( const QStrList& list );
|
||||||
|
|
||||||
|
protected:
|
||||||
|
QString QColor2Str( const QColor& col );
|
||||||
|
|
||||||
|
private:
|
||||||
|
QString _output;
|
||||||
|
QString* _out;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
// Helper functions for KDStream.
|
||||||
|
// Defined as global functions to support
|
||||||
|
// compilers without support for member templates
|
||||||
|
// You should not need to call those yourself
|
||||||
|
template <class Iterator> void KDStream_valueListStream( KDStream& st, Iterator begin, Iterator end )
|
||||||
|
{
|
||||||
|
st << "[";
|
||||||
|
bool first = true;
|
||||||
|
for ( Iterator it = begin; it != end; ++it ){
|
||||||
|
if ( first )
|
||||||
|
first = false;
|
||||||
|
else
|
||||||
|
st << ", ";
|
||||||
|
st << *it;
|
||||||
|
}
|
||||||
|
st << "]";
|
||||||
|
}
|
||||||
|
|
||||||
|
template<class Iterator> void KDStream_ptrListStream( KDStream& st, Iterator it, bool doubleDeref )
|
||||||
|
{
|
||||||
|
st << "[";
|
||||||
|
bool first = true;
|
||||||
|
for ( ; *it; ++ it) {
|
||||||
|
if ( first )
|
||||||
|
first = false;
|
||||||
|
else
|
||||||
|
st << ", ";
|
||||||
|
|
||||||
|
if ( doubleDeref )
|
||||||
|
st << *(*it);
|
||||||
|
else {
|
||||||
|
// QStrList ought to be a value list rather than a ptr list, one less dereference is
|
||||||
|
// necesary here, otherwise we will only stream out a char, rather than a char *
|
||||||
|
st << *it;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
st << "]";
|
||||||
|
}
|
||||||
|
|
||||||
|
template<class Iterator> void KDStream_ptrDictStream( KDStream& st, Iterator it )
|
||||||
|
{
|
||||||
|
st << "{";
|
||||||
|
bool first = true;
|
||||||
|
for ( ; it; ++ it) {
|
||||||
|
if ( first )
|
||||||
|
first = false;
|
||||||
|
else
|
||||||
|
st << ", ";
|
||||||
|
|
||||||
|
st << (it.currentKey()) << ": " << *(it.current()) ;
|
||||||
|
}
|
||||||
|
st << "}";
|
||||||
|
}
|
||||||
|
|
||||||
|
// Stream operators for containers
|
||||||
|
// Defined as global functions to support
|
||||||
|
// compilers without member templates
|
||||||
|
|
||||||
|
template<class T> KDStream& operator<<( KDStream& st, const QValueList<T>& list )
|
||||||
|
{
|
||||||
|
KDStream_valueListStream( st, list.begin(), list.end() );
|
||||||
|
return st;
|
||||||
|
}
|
||||||
|
|
||||||
|
#if ( QT_VERSION < 300 )
|
||||||
|
template<class T> KDStream& operator<<( KDStream& st, const QList<T>& list )
|
||||||
|
{
|
||||||
|
KDStream_ptrListStream ( st, QListIterator<T>( list ) , true );
|
||||||
|
return st;
|
||||||
|
}
|
||||||
|
|
||||||
|
template<class T> KDStream& operator<<( KDStream& st, const QArray<T>& array )
|
||||||
|
{
|
||||||
|
KDStream_valueListStream( st, array.begin(), array.end() );
|
||||||
|
return st;
|
||||||
|
}
|
||||||
|
|
||||||
|
template<class T> KDStream& operator<<( KDStream& st, const QVector<T>& vector )
|
||||||
|
{
|
||||||
|
QList<T> list;
|
||||||
|
vector.toList( &list );
|
||||||
|
|
||||||
|
KDStream_ptrListStream ( st, QListIterator<T>( list ), true );
|
||||||
|
return st;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
#if ( QT_VERSION >= 300 )
|
||||||
|
template<class T> KDStream& operator<<( KDStream& st, const QMemArray<T>& array )
|
||||||
|
{
|
||||||
|
KDStream_valueListStream( st, array.begin(), array.end() );
|
||||||
|
return st;
|
||||||
|
}
|
||||||
|
|
||||||
|
template<class T> KDStream& operator<<( KDStream& st, const QPtrList<T>& list )
|
||||||
|
{
|
||||||
|
KDStream_ptrListStream ( st, QPtrListIterator<T>( list ), true );
|
||||||
|
return st;
|
||||||
|
}
|
||||||
|
|
||||||
|
template<class T1, class T2> KDStream& operator<<( KDStream& st, const QPair<T1,T2>& pair )
|
||||||
|
{
|
||||||
|
st << "(" << pair.first << "," << pair.second << ")";
|
||||||
|
return st;
|
||||||
|
}
|
||||||
|
|
||||||
|
template<class T> KDStream& operator<<( KDStream& st, const QPtrVector<T>& vector )
|
||||||
|
{
|
||||||
|
QPtrList<T> list;
|
||||||
|
vector.toList( &list );
|
||||||
|
|
||||||
|
KDStream_ptrListStream( st, QPtrListIterator<T>( list ), true );
|
||||||
|
return st;
|
||||||
|
}
|
||||||
|
|
||||||
|
template<class T> KDStream& operator<<( KDStream& st, const QValueVector<T>& vector )
|
||||||
|
{
|
||||||
|
KDStream_valueListStream( st, vector.begin(), vector.end() );
|
||||||
|
return st;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if ( QT_VERSION < 300 )
|
||||||
|
template<class T> KDStream& operator<<( KDStream& st, const QStack<T>& stack )
|
||||||
|
{
|
||||||
|
// I need a copy to look at the individual elements.
|
||||||
|
QStack<T> copy(stack);
|
||||||
|
#else
|
||||||
|
template<class T> KDStream& operator<<( KDStream& st, const QPtrStack<T>& stack )
|
||||||
|
{
|
||||||
|
|
||||||
|
// I need a copy to look at the individual elements.
|
||||||
|
QPtrStack<T> copy(stack);
|
||||||
|
/*}*/
|
||||||
|
#endif
|
||||||
|
st << "[";
|
||||||
|
if ( stack.count() > 1 )
|
||||||
|
st << "top| ";
|
||||||
|
st << " ";
|
||||||
|
|
||||||
|
bool first = true;
|
||||||
|
while ( !copy.isEmpty() ) {
|
||||||
|
if (first)
|
||||||
|
first = false;
|
||||||
|
else
|
||||||
|
st << ", ";
|
||||||
|
st << *(copy.pop());
|
||||||
|
}
|
||||||
|
|
||||||
|
st << " ";
|
||||||
|
if ( stack.count() > 1 )
|
||||||
|
st << " |bottom";
|
||||||
|
st << "]";
|
||||||
|
return st;
|
||||||
|
}
|
||||||
|
|
||||||
|
// This function can unfortunately not be merged with the function for
|
||||||
|
// Q(Ptr)Stack, as the Q(Ptr)Stack dereferences what it pops of the stack,
|
||||||
|
// before streaming it:
|
||||||
|
// Q(Ptr)Stack: *this << *(copy.pop());
|
||||||
|
// QValueStack: *this << copy.pop() ;
|
||||||
|
template<class T> KDStream& operator<<( KDStream& st, const QValueStack<T>& stack )
|
||||||
|
{
|
||||||
|
// I need a copy to look at the individual elements.
|
||||||
|
QValueStack<T> copy(stack);
|
||||||
|
st << "[";
|
||||||
|
if ( stack.count() > 1 )
|
||||||
|
st << "top| ";
|
||||||
|
st << " ";
|
||||||
|
|
||||||
|
bool first = true;
|
||||||
|
while ( !copy.isEmpty() ) {
|
||||||
|
if (first)
|
||||||
|
first = false;
|
||||||
|
else
|
||||||
|
st << ", ";
|
||||||
|
st << copy.pop();
|
||||||
|
}
|
||||||
|
|
||||||
|
st << " ";
|
||||||
|
if ( stack.count() > 1 )
|
||||||
|
st << " |bottom";
|
||||||
|
st << "]";
|
||||||
|
return st;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
template<class T> KDStream& operator<<( KDStream& st, const QAsciiDict<T>& dict )
|
||||||
|
{
|
||||||
|
KDStream_ptrDictStream( st, QAsciiDictIterator<T>( dict ) );
|
||||||
|
return st;
|
||||||
|
}
|
||||||
|
|
||||||
|
template<class T> KDStream& operator<<( KDStream& st, const QIntDict<T>& dict )
|
||||||
|
{
|
||||||
|
KDStream_ptrDictStream( st, QIntDictIterator<T>( dict ) );
|
||||||
|
return st;
|
||||||
|
}
|
||||||
|
|
||||||
|
template<class T> KDStream& operator<<( KDStream& st, const QPtrDict<T>& dict )
|
||||||
|
{
|
||||||
|
KDStream_ptrDictStream( st, QPtrDictIterator<T>( dict ) );
|
||||||
|
return st;
|
||||||
|
}
|
||||||
|
|
||||||
|
template<class T> KDStream& operator<<( KDStream& st, const QDict<T>& dict )
|
||||||
|
{
|
||||||
|
KDStream_ptrDictStream( st, QDictIterator<T>( dict ) );
|
||||||
|
return st;
|
||||||
|
}
|
||||||
|
|
||||||
|
template<class T> KDStream& operator<<( KDStream& st, const QAsciiCache<T>& cache )
|
||||||
|
{
|
||||||
|
KDStream_ptrDictStream( st, QAsciiCacheIterator<T>( cache ) );
|
||||||
|
return st;
|
||||||
|
}
|
||||||
|
|
||||||
|
template<class T> KDStream& operator<<( KDStream& st, const QIntCache<T>& cache )
|
||||||
|
{
|
||||||
|
KDStream_ptrDictStream( st, QIntCacheIterator<T>( cache ) );
|
||||||
|
return st;
|
||||||
|
}
|
||||||
|
|
||||||
|
template<class T> KDStream& operator<<( KDStream& st, const QCache<T>& cache )
|
||||||
|
{
|
||||||
|
KDStream_ptrDictStream( st, QCacheIterator<T>( cache ) );
|
||||||
|
return st;
|
||||||
|
}
|
||||||
|
|
||||||
|
#endif /* KDStream */
|
@ -0,0 +1,138 @@
|
|||||||
|
KD Tools COMMERCIAL LICENSE AGREEMENT
|
||||||
|
FOR COMMERCIAL VERSIONS
|
||||||
|
March 27, 2002
|
||||||
|
|
||||||
|
|
||||||
|
IMPORTANT-READ CAREFULLY: This Klarälvdalens Datakonsult AB End-User
|
||||||
|
License Agreement ("EULA") is a legal agreement between you (either an
|
||||||
|
individual or a legal entity) and Klarälvdalens Datakonsult AB
|
||||||
|
("KDAB") for the Klarälvdalens Datakonsult AB software product(s)
|
||||||
|
accompanying this EULA, which include(s) computer software and may
|
||||||
|
include "online" or electronic documentation, associated media, and
|
||||||
|
printed materials ("Licensed Product").
|
||||||
|
|
||||||
|
The Licensed Product is protected by copyright laws and international
|
||||||
|
copyright treaties, as well as other intellectual property laws and
|
||||||
|
treaties. The Licensed Product is licensed, not sold.
|
||||||
|
|
||||||
|
By installing, copying, or otherwise using the Licensed Product, you
|
||||||
|
agree to be bound by the terms of this EULA. If you do not agree to
|
||||||
|
the terms of this EULA, do not install, copy, or otherwise use the
|
||||||
|
Licensed Product; you may, however, return it to your place of
|
||||||
|
purchase for a full refund. In addition, by installing, copying, or
|
||||||
|
otherwise using any updates or other components of the Licensed
|
||||||
|
Product that you receive separately as part of the Licensed Product
|
||||||
|
("Updates"), you agree to be bound by any additional license terms
|
||||||
|
that accompany such Updates. If you do not agree to the additional
|
||||||
|
license terms that accompany such Updates, you may not install, copy,
|
||||||
|
or otherwise use such Updates.
|
||||||
|
|
||||||
|
Upon your acceptance of the terms and conditions of this EULA, KDAB
|
||||||
|
grants you the right to use the Licensed Product in the manner
|
||||||
|
provided below.
|
||||||
|
|
||||||
|
KDAB grants to you as an individual a personal, nonexclusive,
|
||||||
|
nontransferable license to make and use copies of the Licensed Product
|
||||||
|
for the sole purposes of designing, developing, and testing your
|
||||||
|
software product(s) ("Applications"). You may install copies of the
|
||||||
|
Licensed Product on an unlimited number of computers provided that you
|
||||||
|
are the only individual using the Licensed Product. If you are an
|
||||||
|
entity, KDAB grants you the right to designate one, and only one,
|
||||||
|
individual within your organization who shall have the sole right to
|
||||||
|
use the Licensed Product in the manner provided above. You may at any
|
||||||
|
time, but not more frequently that once every six (6) months,
|
||||||
|
designate another individual to replace the current designated user by
|
||||||
|
notifying KDAB, so long as there is no more than one designated user
|
||||||
|
at any given time.
|
||||||
|
|
||||||
|
|
||||||
|
GENERAL TERMS THAT APPLY TO APPLICATIONS AND REDISTRIBUTABLES
|
||||||
|
KDAB grants you a nonexclusive, royalty-free right to reproduce and
|
||||||
|
distribute the object code form of any portion of the Licensed Product
|
||||||
|
("Redistributables") for execution on any operating system of a type
|
||||||
|
listed in the License Certificate ("Platforms"). Copies of
|
||||||
|
Redistributables may only be distributed with and for the sole purpose
|
||||||
|
of executing Applications permitted under this License Agreement that
|
||||||
|
you have created using the Licensed Product. Under no circumstances
|
||||||
|
may any copies of Redistributables be distributed separately.
|
||||||
|
|
||||||
|
The license granted in this EULA for you to create your own
|
||||||
|
Applications and distribute them and the Redistributables (if any) to
|
||||||
|
your customers is subject to all of the following conditions: (i) all
|
||||||
|
copies of the Applications you create must bear a valid copyright
|
||||||
|
notice, either your own or the copyright notice that appears on the
|
||||||
|
Licensed Product; (ii) you may not remove or alter any copyright,
|
||||||
|
trademark or other proprietary rights notice contained in any portion
|
||||||
|
of the Licensed Product; (iii) Redistributables, if any, shall be
|
||||||
|
licensed to your customer "as is" (KDAB MAKES NO WARRANTIES OR
|
||||||
|
REPRESENTATIONS VIS-A-VIS YOUR CUSTOMER WITH RESPECT TO
|
||||||
|
REDISTRIBUTABLES, AND KDAB EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES
|
||||||
|
VIS-A-VIS YOUR CUSTOMER, WHETHER EXPRESS OR IMPLIED, ORAL OR WRITTEN,
|
||||||
|
INCLUDING, BUT NOT LIMITED TO ANY IMPLIED WARRANTY OF MERCHANTABILITY
|
||||||
|
OR FITNESS FOR ANY PARTICULAR PURPOSE, WHETHER OR NOT KDAB KNOWS, HAS
|
||||||
|
REASON TO KNOW, HAS BEEN ADVISED OR IS OTHERWISE AWARE OF SUCH
|
||||||
|
PURPOSE); (iv) you will indemnify and hold KDAB, its related companies
|
||||||
|
and its suppliers, harmless from and against any claims or liabilities
|
||||||
|
arising out of the use, reproduction or distribution of your
|
||||||
|
Applications; (v) your Applications must be written using a licensed,
|
||||||
|
registered copy of the Licensed Product; (vi) your Applications must
|
||||||
|
add primary and substantial functionality to the Licensed Product;
|
||||||
|
(vii) your Applications may not pass on functionality which in any way
|
||||||
|
makes it possible for others to create Applications with the Software;
|
||||||
|
(viii) your Applications may not compete with the Licensed Product;
|
||||||
|
(ix)) you may not use KDAB's or any of its suppliers' names, logos, or
|
||||||
|
trademarks to market your programs, except to state that your program
|
||||||
|
was written using the Licensed Product.
|
||||||
|
|
||||||
|
|
||||||
|
WARRANTY DISCLAIMER
|
||||||
|
THE LICENSED PRODUCT IS LICENSED TO YOU "AS IS". TO THE MAXIMUM
|
||||||
|
EXTENT PERMITTED BY APPLICABLE LAW, KDAB ON BEHALF OF ITSELF AND ITS
|
||||||
|
SUPPLIERS, DISCLAIMS ALL WARRANTIES AND CONDITIONS, EITHER EXPRESS OR
|
||||||
|
IMPLIED, INCLUDING, BUT NOT LIMITED TO, IMPLIED WARRANTIES OF
|
||||||
|
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE AND
|
||||||
|
NON-INFRINGEMENT WITH REGARD TO THE LICENSED PRODUCT. THIS WARRANTY
|
||||||
|
DISCLAIMER NOTWITHSTANDING, YOU MAY HAVE SPECIFIC LEGAL RIGHTS WHICH
|
||||||
|
MAY VARY FROM STATE/JURISDICTION TO STATE/JURISDICTION.
|
||||||
|
|
||||||
|
|
||||||
|
LIMITATION OF LIABILITY
|
||||||
|
IF, KDAB'S WARRANTY DISCLAIMER NOTWITHSTANDING, KDAB IS HELD LIABLE TO
|
||||||
|
YOU, WHETHER IN CONTRACT, TORT OR ANY OTHER LEGAL THEORY, BASED ON THE
|
||||||
|
LICENSED PRODUCT, KDAB'S ENTIRE LIABILITY TO YOU AND YOUR EXCLUSIVE
|
||||||
|
REMEDY SHALL BE, AT KDAB'S OPTION, EITHER (A) RETURN OF THE PRICE YOU
|
||||||
|
PAID FOR THE LICENSED PRODUCT, OR (B) REPAIR OR REPLACEMENT OF THE
|
||||||
|
LICENSED PRODUCT, PROVIDED YOU RETURN TO KDAB ALL COPIES OF THE
|
||||||
|
LICENSED PRODUCT AS ORIGINALLY DELIVERED TO YOU. KDAB SHALL NOT UNDER
|
||||||
|
ANY CIRCUMSTANCES BE LIABLE TO YOU BASED ON FAILURE OF THE LICENSED
|
||||||
|
PRODUCT IF THE FAILURE RESULTED FROM ACCIDENT, ABUSE OR
|
||||||
|
MISAPPLICATION, NOR SHALL KDAB UNDER ANY CIRCUMSTANCES BE LIABLE FOR
|
||||||
|
SPECIAL DAMAGES, PUNITIVE OR EXEMPLARY DAMAGES, DAMAGES FOR LOSS OF
|
||||||
|
PROFITS OR INTERRUPTION OF BUSINESS OR FOR LOSS OR CORRUPTION OF DATA.
|
||||||
|
ANY AWARD OF DAMAGES FROM KDAB TO YOU SHALL NOT EXCEED THE TOTAL AMOUNT
|
||||||
|
YOU HAVE PAID TO KDAB IN CONNECTION WITH THIS EULA.
|
||||||
|
|
||||||
|
|
||||||
|
SUPPORT AND UPDATES
|
||||||
|
You will receive email based, software developer support and access to
|
||||||
|
Updates to the Licensed Product for one year from the date of initial
|
||||||
|
delivery, in accordance with KDAB support policies and procedures.
|
||||||
|
Such policies and procedures may be changed from time to time.
|
||||||
|
|
||||||
|
|
||||||
|
GENERAL PROVISIONS
|
||||||
|
This EULA may only be modified in writing signed by you and an
|
||||||
|
authorized officer of KDAB. All terms of any purchase order or other
|
||||||
|
ordering document shall be superseded by this EULA. If any provision
|
||||||
|
of the EULA is found void or unenforceable, the remainder will remain
|
||||||
|
valid and enforceable according to its terms. If any remedy provided
|
||||||
|
is determined to have failed for its essential purpose, all
|
||||||
|
limitations of liability and exclusions of damages set forth in this
|
||||||
|
EULA shall remain in effect.
|
||||||
|
|
||||||
|
This EULA shall be construed, interpreted and governed by the laws of
|
||||||
|
Sweden, the venue to be Sunne Tingsrätt. The EULA gives you specific
|
||||||
|
legal rights; you may have others, which vary from state to state and
|
||||||
|
from country to country. KDAB reserves all rights not specifically
|
||||||
|
granted in this EULA.
|
||||||
|
|
@ -0,0 +1,93 @@
|
|||||||
|
KD Tools COMMERCIAL LICENSE AGREEMENT
|
||||||
|
FOR COMMERCIAL VERSIONS
|
||||||
|
Version 1.0
|
||||||
|
|
||||||
|
Copyright of this license text (C) 2001 Trolltech AS and (C) 2002
|
||||||
|
Klarälvdalens Datakonsult AB. All rights reserved. License text used
|
||||||
|
with kind permission of Trolltech AS. The software and accompanying
|
||||||
|
material is Copyright (C) 2002 Klarälvdalens Datakonsult AB.
|
||||||
|
|
||||||
|
This non-exclusive non-transferable License Agreement ("Agreement") is
|
||||||
|
between you ("Licensee") and Klarälvdalens Datakonsult AB (KDAB), and
|
||||||
|
pertains to the Klarälvdalens Datakonsult AB software product(s)
|
||||||
|
accompanying this Agreement, which include(s) computer software and
|
||||||
|
may include "online" or electronic documentation, associated media,
|
||||||
|
and printed materials, including the source code, example programs and
|
||||||
|
the documentation ("Software").
|
||||||
|
|
||||||
|
|
||||||
|
COPYRIGHT AND RESTRICTIONS
|
||||||
|
|
||||||
|
1. All intellectual property rights in the Software are owned by KDAB
|
||||||
|
and are protected by Swedish copyright laws, other applicable
|
||||||
|
copyright laws, and international treaty provisions. KDAB retains all
|
||||||
|
rights not expressly granted. No title, property rights or copyright
|
||||||
|
in the Software or in any modifications to the Software shall pass to
|
||||||
|
the Licensee under any circumstances. The Software is licensed, not
|
||||||
|
sold.
|
||||||
|
|
||||||
|
2. By installing, copying, or otherwise using the Software, you agree
|
||||||
|
to be bound by the terms of this agreement. If you do not agree to the
|
||||||
|
terms of this Agreement, do not install, copy, or otherwise use the
|
||||||
|
Software.
|
||||||
|
|
||||||
|
3. Upon your acceptance of the terms and conditions of this Agreement,
|
||||||
|
KDAB grants you the right to use the Software in the manner provided
|
||||||
|
below.
|
||||||
|
|
||||||
|
4. KDAB grants to you as an individual a personal, nonexclusive,
|
||||||
|
non-transferable license to make and use copies of the Software for
|
||||||
|
the sole purposes of designing, developing, testing and distributing
|
||||||
|
your software product(s) ("Applications"). You may install copies of
|
||||||
|
the Software on an unlimited number of computers provided that you are
|
||||||
|
the only individual using the Software. If you are an entity, KDAB
|
||||||
|
grants you the right to designate one, and only one, individual within
|
||||||
|
your organization who shall have the sole right to use the Software in
|
||||||
|
the manner provided above.
|
||||||
|
|
||||||
|
5. The license granted in this Agreement for you to create and
|
||||||
|
distribute your own Applications is subject to all of the following
|
||||||
|
conditions: (i) all copies of the Applications you create must bear a
|
||||||
|
valid copyright notice, either your own or the copyright notice that
|
||||||
|
appears on the Software; (ii) you may not remove or alter any
|
||||||
|
copyright, trademark or other proprietary rights notice contained in
|
||||||
|
any portion of the Software; (iii) you will indemnify and hold KDAB, its
|
||||||
|
related companies and its suppliers, harmless from and against any
|
||||||
|
claims or liabilities arising out of the use and/or reproduction of
|
||||||
|
your Applications; (iv) your Applications must be written using a
|
||||||
|
licensed, registered copy of the Software; (v) your Applications must
|
||||||
|
add primary and substantial functionality to the Software; (vi) your
|
||||||
|
Applications may not pass on functionality which in any way makes it
|
||||||
|
possible for others to create Applications with the Software; (vii)
|
||||||
|
your Applications may not compete with the Software; (viii) you may
|
||||||
|
not use KDAB's or any of its suppliers' names, logos, or trademarks to
|
||||||
|
market your programs, except to state that your program was written
|
||||||
|
using the Software.
|
||||||
|
|
||||||
|
6. WARRANTY DISCLAIMER
|
||||||
|
THE SOFTWARE IS LICENSED TO YOU "AS IS". TO THE MAXIMUM EXTENT
|
||||||
|
PERMITTED BY APPLICABLE LAW, KDAB ON BEHALF OF ITSELF AND ITS SUPPLIERS,
|
||||||
|
DISCLAIMS ALL WARRANTIES AND CONDITIONS, EITHER EXPRESS OR IMPLIED,
|
||||||
|
INCLUDING, BUT NOT LIMITED TO, IMPLIED WARRANTIES OF MERCHANTABILITY,
|
||||||
|
FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT WITH
|
||||||
|
REGARD TO THE SOFTWARE.
|
||||||
|
|
||||||
|
7. LIMITATION OF LIABILITY
|
||||||
|
IF, KDAB'S WARRANTY DISCLAIMER NOTWITHSTANDING, KDAB IS HELD LIABLE TO
|
||||||
|
YOU BASED ON THE SOFTWARE, KDAB'S ENTIRE LIABILITY TO YOU AND YOUR
|
||||||
|
EXCLUSIVE REMEDY SHALL BE, AT REPAIR OR REPLACEMENT OF THE SOFTWARE,
|
||||||
|
PROVIDED YOU RETURN TO KDAB ALL COPIES OF THE SOFTWARE AS ORIGINALLY
|
||||||
|
DELIVERED TO YOU. KDAB SHALL NOT UNDER ANY CIRCUMSTANCES BE LIABLE TO
|
||||||
|
YOU BASED ON FAILURE OF THE SOFTWARE IF THE FAILURE RESULTED FROM
|
||||||
|
ACCIDENT, ABUSE OR MISAPPLICATION, NOR SHALL KDAB UNDER ANY
|
||||||
|
CIRCUMSTANCES BE LIABLE FOR SPECIAL DAMAGES, PUNITIVE OR EXEMPLARY
|
||||||
|
DAMAGES, DAMAGES FOR LOSS OF PROFITS OR INTERRUPTION OF BUSINESS OR
|
||||||
|
FOR LOSS OR CORRUPTION OF DATA.
|
||||||
|
|
||||||
|
9. This Agreement may only be modified in writing signed by you and an
|
||||||
|
authorized officer of KDAB. All terms of any purchase order or other
|
||||||
|
ordering document shall be superseded by this Agreement.
|
||||||
|
|
||||||
|
10. This Agreement shall be construed, interpreted and governed by the
|
||||||
|
laws of Sweden, the venue to be Sunne Tingsrätt.
|
||||||
|
|
@ -0,0 +1,33 @@
|
|||||||
|
METASOURCES = AUTO
|
||||||
|
INCLUDES = -I.. -I$(srcdir)/.. $(LIBKIPI_CFLAGS) $(all_includes)
|
||||||
|
|
||||||
|
KDE_ICON = kipi
|
||||||
|
|
||||||
|
lib_LTLIBRARIES = libkipi.la
|
||||||
|
|
||||||
|
libkipi_la_SOURCES = interface.cpp plugin.cpp pluginloader.cpp KDStream.cpp imageinfo.cpp imagecollection.cpp \
|
||||||
|
imageinfoshared.cpp imagecollectionshared.cpp imagedialog.cpp uploadwidget.cpp \
|
||||||
|
batchprogressdialog.cpp imagecollectionselector.cpp
|
||||||
|
|
||||||
|
noinst_HEADERS = KDStream.h
|
||||||
|
|
||||||
|
libkipiinclude_HEADERS = interface.h plugin.h pluginloader.h imageinfo.h imagecollection.h imageinfoshared.h \
|
||||||
|
imagecollectionshared.h imagedialog.h uploadwidget.h batchprogressdialog.h \
|
||||||
|
imagecollectionselector.h version.h libkipi_export.h
|
||||||
|
|
||||||
|
libkipi_la_LDFLAGS = $(all_libraries) $(KDE_RPATH) \
|
||||||
|
-version-info 1:1:1 -no-undefined
|
||||||
|
|
||||||
|
libkipi_la_LIBADD = $(LIB_KIO) $(LIB_KDEUI) $(LIB_KDECORE) $(LIB_QT)
|
||||||
|
|
||||||
|
libkipiincludedir = $(includedir)/libkipi
|
||||||
|
|
||||||
|
kde_servicetypes_DATA = kipiplugin.desktop
|
||||||
|
|
||||||
|
|
||||||
|
picsdir = $(kde_datadir)/kipi/data
|
||||||
|
pics_DATA = kipi-plugins_logo.png banner_left.png
|
||||||
|
|
||||||
|
EXTRA_DIST = $(pics_DATA)
|
||||||
|
|
||||||
|
|
After Width: | Height: | Size: 3.0 KiB |
@ -0,0 +1,224 @@
|
|||||||
|
//////////////////////////////////////////////////////////////////////////////
|
||||||
|
//
|
||||||
|
// BATCHPROGRESSDIALOG.CPP
|
||||||
|
//
|
||||||
|
// Copyright (C) 2004 Gilles Caulier <caulier dot gilles at free.fr>
|
||||||
|
//
|
||||||
|
// This program 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 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 Library General Public License for more details.
|
||||||
|
//
|
||||||
|
// You should have received a copy of the GNU Library General Public License
|
||||||
|
// along with this program; if not, write to the Free Software
|
||||||
|
// Foundation, Inc., 51 Franklin Steet, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
|
//
|
||||||
|
//////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
|
||||||
|
// Include files for Qt
|
||||||
|
|
||||||
|
#include <qvbox.h>
|
||||||
|
#include <qlayout.h>
|
||||||
|
#include <qdir.h>
|
||||||
|
#include <qwidget.h>
|
||||||
|
#include <qgroupbox.h>
|
||||||
|
#include <qwhatsthis.h>
|
||||||
|
#include <qcolor.h>
|
||||||
|
#include <qhgroupbox.h>
|
||||||
|
#include <qvgroupbox.h>
|
||||||
|
#include <qheader.h>
|
||||||
|
#include <qlistview.h>
|
||||||
|
#include <qframe.h>
|
||||||
|
#include <qlabel.h>
|
||||||
|
#include <qcolor.h>
|
||||||
|
#include <qpixmap.h>
|
||||||
|
#include <qpushbutton.h>
|
||||||
|
|
||||||
|
// Include files for KDE
|
||||||
|
|
||||||
|
#include <klocale.h>
|
||||||
|
#include <kprogress.h>
|
||||||
|
#include <kinstance.h>
|
||||||
|
#include <kconfig.h>
|
||||||
|
#include <kapplication.h>
|
||||||
|
#include <kdebug.h>
|
||||||
|
#include <kdialogbase.h>
|
||||||
|
#include <kiconloader.h>
|
||||||
|
#include <klistview.h>
|
||||||
|
#include <kstandarddirs.h>
|
||||||
|
#include <kapplication.h>
|
||||||
|
#include <kaboutdata.h>
|
||||||
|
#include <khelpmenu.h>
|
||||||
|
#include <kiconloader.h>
|
||||||
|
#include <kpopupmenu.h>
|
||||||
|
|
||||||
|
// Include files for libKipi.
|
||||||
|
|
||||||
|
#include "libkipi/version.h"
|
||||||
|
|
||||||
|
// Local includes
|
||||||
|
|
||||||
|
#include "batchprogressdialog.h"
|
||||||
|
|
||||||
|
namespace KIPI
|
||||||
|
{
|
||||||
|
|
||||||
|
class BatchProgressItem : public KListViewItem
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
BatchProgressItem(KListView * parent, QListViewItem *after, const QString &message, int messageType)
|
||||||
|
: KListViewItem( parent, after), m_messagetype(messageType)
|
||||||
|
{
|
||||||
|
// Set the icon.
|
||||||
|
|
||||||
|
switch( m_messagetype )
|
||||||
|
{
|
||||||
|
case KIPI::StartingMessage:
|
||||||
|
setPixmap( 0, SmallIcon( "run" ) );
|
||||||
|
break;
|
||||||
|
case KIPI::SuccessMessage:
|
||||||
|
setPixmap( 0, SmallIcon( "ok" ) );
|
||||||
|
break;
|
||||||
|
case KIPI::WarningMessage:
|
||||||
|
setPixmap( 0, SmallIcon( "flag" ) );
|
||||||
|
break;
|
||||||
|
case KIPI::ErrorMessage:
|
||||||
|
setPixmap( 0, SmallIcon( "stop" ) );
|
||||||
|
break;
|
||||||
|
case KIPI::ProgressMessage:
|
||||||
|
setPixmap( 0, SmallIcon( "info" ) );
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
setPixmap( 0, SmallIcon( "info" ) );
|
||||||
|
}
|
||||||
|
|
||||||
|
// Set the message text.
|
||||||
|
|
||||||
|
setText(1, message);
|
||||||
|
}
|
||||||
|
|
||||||
|
private:
|
||||||
|
int m_messagetype;
|
||||||
|
|
||||||
|
void paintCell (QPainter *p, const QColorGroup &cg, int column, int width, int alignment)
|
||||||
|
{
|
||||||
|
QColorGroup _cg( cg );
|
||||||
|
|
||||||
|
if ( m_messagetype == KIPI::ErrorMessage )
|
||||||
|
{
|
||||||
|
_cg.setColor( QColorGroup::Text, Qt::red );
|
||||||
|
KListViewItem::paintCell( p, _cg, column, width, alignment );
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if ( m_messagetype == KIPI::WarningMessage )
|
||||||
|
{
|
||||||
|
_cg.setColor( QColorGroup::Text, Qt::darkYellow );
|
||||||
|
KListViewItem::paintCell( p, _cg, column, width, alignment );
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
KListViewItem::paintCell( p, cg, column, width, alignment );
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
struct BatchProgressDialog::Private {
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
/////////////////////////////////// CONSTRUCTOR ////////////////////////////////////////////
|
||||||
|
|
||||||
|
BatchProgressDialog::BatchProgressDialog( QWidget *parent, const QString &caption )
|
||||||
|
: KDialogBase( parent, "KIPIBatchProgressDialog", true /* modal */,
|
||||||
|
caption, Cancel)
|
||||||
|
{
|
||||||
|
d = new Private;
|
||||||
|
QWidget* box = makeVBoxMainWidget();
|
||||||
|
|
||||||
|
//---------------------------------------------
|
||||||
|
|
||||||
|
QFrame *headerFrame = new QFrame( box );
|
||||||
|
headerFrame->setFrameStyle(QFrame::Panel|QFrame::Sunken);
|
||||||
|
QHBoxLayout* layout = new QHBoxLayout( headerFrame );
|
||||||
|
layout->setMargin( 2 ); // to make sure the frame gets displayed
|
||||||
|
layout->setSpacing( 0 );
|
||||||
|
QLabel *pixmapLabelLeft = new QLabel( headerFrame, "pixmapLabelLeft" );
|
||||||
|
pixmapLabelLeft->setScaledContents( false );
|
||||||
|
layout->addWidget( pixmapLabelLeft );
|
||||||
|
QLabel *labelTitle = new QLabel( caption, headerFrame, "labelTitle" );
|
||||||
|
layout->addWidget( labelTitle );
|
||||||
|
layout->setStretchFactor( labelTitle, 1 );
|
||||||
|
|
||||||
|
QString dir;
|
||||||
|
KGlobal::dirs()->addResourceType("kipi_banner_left", KGlobal::dirs()->kde_default("data") + "kipi/data");
|
||||||
|
dir = KGlobal::dirs()->findResourceDir("kipi_banner_left", "banner_left.png");
|
||||||
|
|
||||||
|
pixmapLabelLeft->setPaletteBackgroundColor( QColor(201, 208, 255) );
|
||||||
|
pixmapLabelLeft->setPixmap( QPixmap( dir + "banner_left.png" ) );
|
||||||
|
labelTitle->setPaletteBackgroundColor( QColor(201, 208, 255) );
|
||||||
|
|
||||||
|
//---------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
|
m_actionsList = new KListView( box );
|
||||||
|
m_actionsList->addColumn(i18n( "Status" ));
|
||||||
|
m_actionsList->addColumn(i18n( "Current Actions" ));
|
||||||
|
m_actionsList->setSorting(-1);
|
||||||
|
m_actionsList->setItemMargin(1);
|
||||||
|
m_actionsList->header()->hide();
|
||||||
|
m_actionsList->setResizeMode(QListView::LastColumn);
|
||||||
|
QWhatsThis::add( m_actionsList, i18n("<p>This is the current tasks list released.") );
|
||||||
|
|
||||||
|
//---------------------------------------------
|
||||||
|
|
||||||
|
m_progress = new KProgress( box, "Progress" );
|
||||||
|
m_progress->setTotalSteps(100);
|
||||||
|
m_progress->setValue(0);
|
||||||
|
QWhatsThis::add( m_progress, i18n("<p>This is the list current percent task released.") );
|
||||||
|
resize( 600, 400 );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
//////////////////////////////////// DESTRUCTOR /////////////////////////////////////////////
|
||||||
|
|
||||||
|
BatchProgressDialog::~BatchProgressDialog()
|
||||||
|
{
|
||||||
|
delete d;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
///////////////////////////////////// FONCTIONS /////////////////////////////////////////////
|
||||||
|
|
||||||
|
void BatchProgressDialog::addedAction(const QString &text, int type)
|
||||||
|
{
|
||||||
|
m_item = new KIPI::BatchProgressItem(m_actionsList,
|
||||||
|
m_actionsList->lastItem(),
|
||||||
|
text, type);
|
||||||
|
|
||||||
|
m_actionsList->ensureItemVisible(m_item);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void BatchProgressDialog::reset()
|
||||||
|
{
|
||||||
|
m_actionsList->clear();
|
||||||
|
m_progress->setValue(0);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void BatchProgressDialog::setProgress(int current, int total)
|
||||||
|
{
|
||||||
|
m_progress->setTotalSteps(total);
|
||||||
|
m_progress->setValue(current);
|
||||||
|
}
|
||||||
|
|
||||||
|
} // NameSpace KIPI
|
||||||
|
|
||||||
|
#include "batchprogressdialog.moc"
|
@ -0,0 +1,80 @@
|
|||||||
|
//////////////////////////////////////////////////////////////////////////////
|
||||||
|
//
|
||||||
|
// BATCHPROGRESSDIALOG.H
|
||||||
|
//
|
||||||
|
// Copyright (C) 2004 Gilles Caulier <caulier dot gilles at free.fr>
|
||||||
|
//
|
||||||
|
// This program 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 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 Library General Public License for more details.
|
||||||
|
//
|
||||||
|
// You should have received a copy of the GNU Library General Public License
|
||||||
|
// along with this program; if not, write to the Free Software
|
||||||
|
// Foundation, Inc., 51 Franklin Steet, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
|
//
|
||||||
|
//////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
/** @file batchprogressdialog.h */
|
||||||
|
|
||||||
|
#ifndef BATCHPROGRESSDIALOG_H
|
||||||
|
#define BATCHPROGRESSDIALOG_H
|
||||||
|
|
||||||
|
// Include files for KDE
|
||||||
|
|
||||||
|
#include <kdialogbase.h>
|
||||||
|
#include "libkipi/libkipi_export.h"
|
||||||
|
class KListView;
|
||||||
|
class KProgress;
|
||||||
|
|
||||||
|
/**
|
||||||
|
@namespace KIPI
|
||||||
|
This is the namespace
|
||||||
|
*/
|
||||||
|
namespace KIPI
|
||||||
|
{
|
||||||
|
|
||||||
|
class BatchProgressItem;
|
||||||
|
|
||||||
|
enum ActionMessageType
|
||||||
|
{
|
||||||
|
StartingMessage = 0,
|
||||||
|
SuccessMessage,
|
||||||
|
WarningMessage,
|
||||||
|
ErrorMessage,
|
||||||
|
ProgressMessage
|
||||||
|
};
|
||||||
|
|
||||||
|
class LIBKIPI_EXPORT BatchProgressDialog : public KDialogBase
|
||||||
|
{
|
||||||
|
Q_OBJECT
|
||||||
|
|
||||||
|
public:
|
||||||
|
|
||||||
|
BatchProgressDialog( QWidget *parent=0, const QString &caption=QString::null );
|
||||||
|
~BatchProgressDialog();
|
||||||
|
|
||||||
|
void addedAction(const QString &text, int type);
|
||||||
|
void reset();
|
||||||
|
void setProgress(int current, int total);
|
||||||
|
|
||||||
|
protected:
|
||||||
|
|
||||||
|
KIPI::BatchProgressItem *m_item;
|
||||||
|
KListView *m_actionsList;
|
||||||
|
KProgress *m_progress;
|
||||||
|
|
||||||
|
private:
|
||||||
|
|
||||||
|
struct Private;
|
||||||
|
Private* d;
|
||||||
|
};
|
||||||
|
|
||||||
|
} // NameSpace KIPI
|
||||||
|
|
||||||
|
#endif // BATCHPROGRESSDIALOG_H
|
@ -0,0 +1,96 @@
|
|||||||
|
Suggested redesign of currentAlbum() / currentSelection() / allAlbums()
|
||||||
|
=======================================================================
|
||||||
|
|
||||||
|
Problem 1
|
||||||
|
=========
|
||||||
|
Plugins should be as similar as possible when it comes to user
|
||||||
|
interaction. The topic for discussion here are what set of images does the
|
||||||
|
plugin work on.
|
||||||
|
|
||||||
|
Currently most KIPI plugins have been changed so that they use
|
||||||
|
Interface::currentScope() which uses the selection if one exist, otherwise
|
||||||
|
they use the currentAlbum if that exists.
|
||||||
|
|
||||||
|
However, some plugins do not work like this, examples of alternative ways
|
||||||
|
are:
|
||||||
|
- always use selection (set wall paper)
|
||||||
|
- ask what to use using a set of radio buttons ( can't remember which
|
||||||
|
does this)
|
||||||
|
- ask the user to select albums using check boxes.
|
||||||
|
|
||||||
|
Problem 2
|
||||||
|
=========
|
||||||
|
Asking the user for an image set by the last method above only work well
|
||||||
|
when the host application uses the concept of an Album - which KimDaBa
|
||||||
|
doesn't.
|
||||||
|
|
||||||
|
Solution - step 1
|
||||||
|
=================
|
||||||
|
|
||||||
|
Aurelien suggested the following solution, which works well when an
|
||||||
|
application uses the concept of Albums:
|
||||||
|
|
||||||
|
Replaces all the different ways above with a QListView showing the albums as
|
||||||
|
returned by allAlbums(). The album returned by currentAlbum() would be
|
||||||
|
selected by default.
|
||||||
|
|
||||||
|
In the case of Gwenview, allAlbums() would return three virtual albums:
|
||||||
|
- Selected images
|
||||||
|
- All images in the current dir
|
||||||
|
- All images in the current dir and subdirs
|
||||||
|
|
||||||
|
In the case of KimDaBa, allAlbums() would return the list of keywords and a
|
||||||
|
special "Any" keyword which would be contains the union of all the other
|
||||||
|
keywords.
|
||||||
|
|
||||||
|
Solution - step 2
|
||||||
|
=================
|
||||||
|
The above will seriously break with how KimDaBa approaches albums. A
|
||||||
|
solution to this would be to make it up to the individual host applications
|
||||||
|
to offer a browser for selecting images.
|
||||||
|
|
||||||
|
The implementation would looks something like this:
|
||||||
|
|
||||||
|
class Interface {
|
||||||
|
...
|
||||||
|
virtual Browser browser() = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
class Browser {
|
||||||
|
public:
|
||||||
|
Browser( BrowserShared* );
|
||||||
|
virtual QWidget* widget( QWidget* parent );
|
||||||
|
KURL::List images();
|
||||||
|
|
||||||
|
// all the other stuff to make a shared class.
|
||||||
|
|
||||||
|
signals:
|
||||||
|
void descriptionChanged( const QString& );
|
||||||
|
void previewChanged( const QPixmap& );
|
||||||
|
}
|
||||||
|
|
||||||
|
class BrowserShared {
|
||||||
|
public:
|
||||||
|
virtual QWidget* widget( QWidget* parent ) = 0;
|
||||||
|
KURL::List images() = 0;
|
||||||
|
signals:
|
||||||
|
...
|
||||||
|
}
|
||||||
|
|
||||||
|
The widget method should return the configuration widget, this might
|
||||||
|
e.g. be the listview suggested by aurelien, or something else
|
||||||
|
If the widget returned are 0, then the application do not want to offer any
|
||||||
|
configuration, and the images must somehow be chosen before the plugin
|
||||||
|
appears (This will be the case in KimDaBa).
|
||||||
|
|
||||||
|
The images() method must return the selected images to operated on.
|
||||||
|
|
||||||
|
The signals are for host application which offers dir==album, and have a
|
||||||
|
description and preview for the dir (as is the case for digikam).
|
||||||
|
|
||||||
|
The above replaces the currentAlbum(), currentSelection(), currentScope() and
|
||||||
|
allAlbums() from KIPI::Interface.
|
||||||
|
[Question: Should we remove these methods?]
|
||||||
|
|
||||||
|
Also the ImageCollection class goes away.
|
||||||
|
[Question: What do we do about uploadPath() and uploadURL().]
|
After Width: | Height: | Size: 918 B |
After Width: | Height: | Size: 1.4 KiB |
After Width: | Height: | Size: 2.3 KiB |
After Width: | Height: | Size: 4.0 KiB |
@ -0,0 +1,262 @@
|
|||||||
|
/* ============================================================
|
||||||
|
* File : imagecollection.cpp
|
||||||
|
* Authors: KIPI team developers (see AUTHORS files for details)
|
||||||
|
*
|
||||||
|
* Date : 2004-02
|
||||||
|
* Description :
|
||||||
|
*
|
||||||
|
* Copyright 2004 by the KIPI team
|
||||||
|
*
|
||||||
|
* This program 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, 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 Library General Public License for more details.
|
||||||
|
*
|
||||||
|
* ============================================================ */
|
||||||
|
|
||||||
|
// KDE includes.
|
||||||
|
|
||||||
|
#include <kdebug.h>
|
||||||
|
#include <klocale.h>
|
||||||
|
|
||||||
|
// Local includes.
|
||||||
|
|
||||||
|
#include "imagecollection.h"
|
||||||
|
#include "imagecollectionshared.h"
|
||||||
|
|
||||||
|
/**
|
||||||
|
@file imagecollection.cpp
|
||||||
|
returns the comment for the collection of images or QString::null if that doesn't make any sense.
|
||||||
|
A comment makes sense for an album, but not for a KIPI::Interface::currentSelection().
|
||||||
|
*/
|
||||||
|
QString KIPI::ImageCollection::comment() const
|
||||||
|
{
|
||||||
|
if ( _data )
|
||||||
|
return _data->comment();
|
||||||
|
else {
|
||||||
|
printNullError();
|
||||||
|
return QString::null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
PENDING(blackie) document
|
||||||
|
*/
|
||||||
|
QString KIPI::ImageCollection::name() const
|
||||||
|
{
|
||||||
|
if ( _data )
|
||||||
|
return _data->name();
|
||||||
|
else {
|
||||||
|
printNullError();
|
||||||
|
return QString::null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
Return the category of the image collection. For example in Digikam,
|
||||||
|
a category is a sorting class like 'travels', 'friends', 'monuments', etc.
|
||||||
|
*/
|
||||||
|
QString KIPI::ImageCollection::category() const
|
||||||
|
{
|
||||||
|
if ( _data )
|
||||||
|
return _data->category();
|
||||||
|
else {
|
||||||
|
printNullError();
|
||||||
|
return QString::null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
Return the Creation date of the image collection. The default implementation
|
||||||
|
return a null date.
|
||||||
|
*/
|
||||||
|
QDate KIPI::ImageCollection::date() const
|
||||||
|
{
|
||||||
|
if ( _data )
|
||||||
|
return _data->date();
|
||||||
|
else {
|
||||||
|
printNullError();
|
||||||
|
return QDate();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
PENDING(blackie) document
|
||||||
|
*/
|
||||||
|
KURL::List KIPI::ImageCollection::images() const
|
||||||
|
{
|
||||||
|
if ( _data )
|
||||||
|
return _data->images();
|
||||||
|
else {
|
||||||
|
printNullError();
|
||||||
|
return KURL::List();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
KIPI::ImageCollection::ImageCollection( ImageCollectionShared* data )
|
||||||
|
: _data( data )
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
KIPI::ImageCollection::~ImageCollection()
|
||||||
|
{
|
||||||
|
if ( _data )
|
||||||
|
_data->removeRef();
|
||||||
|
}
|
||||||
|
|
||||||
|
KIPI::ImageCollection::ImageCollection( const ImageCollection& rhs )
|
||||||
|
{
|
||||||
|
if ( rhs._data ) {
|
||||||
|
_data = rhs._data;
|
||||||
|
_data->addRef();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
_data = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
KIPI::ImageCollection::ImageCollection()
|
||||||
|
{
|
||||||
|
_data = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
KIPI::ImageCollection& KIPI::ImageCollection::operator=( const KIPI::ImageCollection& rhs )
|
||||||
|
{
|
||||||
|
if ( rhs._data == _data )
|
||||||
|
return *this;
|
||||||
|
|
||||||
|
if ( _data )
|
||||||
|
_data->removeRef();
|
||||||
|
if ( !rhs._data ) {
|
||||||
|
printNullError();
|
||||||
|
_data = 0;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
_data = rhs._data;
|
||||||
|
_data->addRef();
|
||||||
|
}
|
||||||
|
return *this;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
Returns the directory for the image collection.
|
||||||
|
The host application may, however, return anything in case this
|
||||||
|
imagecollection is not a directory (check isDirectory()), or may
|
||||||
|
return the directory of the first image in the collection, the root
|
||||||
|
of the image collection (in case all images has a common root), or
|
||||||
|
even an empty URL.
|
||||||
|
*/
|
||||||
|
KURL KIPI::ImageCollection::path() const
|
||||||
|
{
|
||||||
|
if ( _data )
|
||||||
|
return _data->path();
|
||||||
|
else {
|
||||||
|
printNullError();
|
||||||
|
return KURL();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
Returns the directory to place images into.
|
||||||
|
This function should only be called if KIPI::Features AcceptNewImages
|
||||||
|
is available.
|
||||||
|
|
||||||
|
The function may choose to return the directory for the image collection
|
||||||
|
or if images from the collection are not available in a common directory,
|
||||||
|
then instead a common upload directory.
|
||||||
|
In contrast to \ref path, this function must return a valid url.
|
||||||
|
|
||||||
|
<b>IMPORTANT:</b> uploadRoot() must be a subpath of uploadPath()
|
||||||
|
*/
|
||||||
|
KURL KIPI::ImageCollection::uploadPath() const
|
||||||
|
{
|
||||||
|
if ( _data )
|
||||||
|
return _data->uploadPath();
|
||||||
|
else {
|
||||||
|
printNullError();
|
||||||
|
return KURL();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
When a plugin wants to upload images, it may choose to display an upload widget,
|
||||||
|
which gives the user the possible to show a directory from a tree view.
|
||||||
|
|
||||||
|
This tree view widget needs to starts at some URL. This function specifies that location.
|
||||||
|
Here are a couble of possible return value different host applications may choose.
|
||||||
|
<ul>
|
||||||
|
<li> If all images are stored rooted at some tree (which is the case for
|
||||||
|
KimDaBa), then this function may return this directory unconditionally.
|
||||||
|
<li> The root directory returned by uploadPath() (which is the default implementation for this method)
|
||||||
|
<li> The directory returned by uploadPath().
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<b>IMPORTANT:</b> uploadRoot() must be a subpath of uploadPath()
|
||||||
|
*/
|
||||||
|
KURL KIPI::ImageCollection::uploadRoot() const
|
||||||
|
{
|
||||||
|
if ( _data )
|
||||||
|
return _data->uploadRoot();
|
||||||
|
else {
|
||||||
|
printNullError();
|
||||||
|
return KURL();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
This fonction return the name of the upload root path used by the
|
||||||
|
the KIPI::UploadWidget. This name can be different for each host
|
||||||
|
app (like "Images" for Kimdaba or "My Albums" for Digikam).
|
||||||
|
*/
|
||||||
|
QString KIPI::ImageCollection::uploadRootName() const
|
||||||
|
{
|
||||||
|
if ( _data )
|
||||||
|
return _data->uploadRootName();
|
||||||
|
else {
|
||||||
|
printNullError();
|
||||||
|
return QString::null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
Returns whether an imagecollection is a physical folder on the filesystem
|
||||||
|
or not. Its important to check this, if your plugin needs to do folder
|
||||||
|
based operations for an imagecollection
|
||||||
|
*/
|
||||||
|
bool KIPI::ImageCollection::isDirectory() const
|
||||||
|
{
|
||||||
|
if ( _data )
|
||||||
|
return _data->isDirectory();
|
||||||
|
else {
|
||||||
|
printNullError();
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
bool KIPI::ImageCollection::isValid() const
|
||||||
|
{
|
||||||
|
return (_data != 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
void KIPI::ImageCollection::printNullError() const
|
||||||
|
{
|
||||||
|
kdWarning( 51000 ) << "Image collection is invalid - this might be the case if you asked for an album, " << endl
|
||||||
|
<< "and not album existed. You should check using .isValid() first." << endl
|
||||||
|
<< "Notice: Plugins should never create an instance of ImageCollection, only the host application "
|
||||||
|
<< "should do that." << endl;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
bool KIPI::ImageCollection::operator==(const KIPI::ImageCollection& ic) const {
|
||||||
|
if (!_data || !(ic._data))
|
||||||
|
{
|
||||||
|
printNullError();
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
return *_data == *(ic._data);
|
||||||
|
}
|
@ -0,0 +1,76 @@
|
|||||||
|
/* ============================================================
|
||||||
|
* File : imagecollection.h
|
||||||
|
* Authors: KIPI team developers (see AUTHORS files for details)
|
||||||
|
*
|
||||||
|
* Date : 2004-02
|
||||||
|
* Description :
|
||||||
|
*
|
||||||
|
* Copyright 2004 by the KIPI team
|
||||||
|
*
|
||||||
|
* This program 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, 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 Library General Public License for more details.
|
||||||
|
*
|
||||||
|
* ============================================================ */
|
||||||
|
|
||||||
|
/** @file imagecollection.h */
|
||||||
|
|
||||||
|
#ifndef KIPI_IMAGECOLLECTION_H
|
||||||
|
#define KIPI_IMAGECOLLECTION_H
|
||||||
|
|
||||||
|
// Qt includes
|
||||||
|
|
||||||
|
#include <qstring.h>
|
||||||
|
#include <qdatetime.h>
|
||||||
|
|
||||||
|
// KDE includes.
|
||||||
|
|
||||||
|
#include <kurl.h>
|
||||||
|
#include "libkipi/libkipi_export.h"
|
||||||
|
|
||||||
|
/** @namespace KIPI */
|
||||||
|
namespace KIPI
|
||||||
|
{
|
||||||
|
class ImageCollectionShared;
|
||||||
|
|
||||||
|
/** @class ImageCollection
|
||||||
|
Holds info about the collection
|
||||||
|
*/
|
||||||
|
class LIBKIPI_EXPORT ImageCollection
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
QString name() const;
|
||||||
|
QString comment() const;
|
||||||
|
QString category() const;
|
||||||
|
QDate date() const;
|
||||||
|
KURL::List images() const;
|
||||||
|
KURL path() const;
|
||||||
|
KURL uploadPath() const;
|
||||||
|
KURL uploadRoot() const;
|
||||||
|
QString uploadRootName() const;
|
||||||
|
bool isDirectory() const;
|
||||||
|
bool isValid() const;
|
||||||
|
|
||||||
|
// Interface for host application + general stuff
|
||||||
|
ImageCollection( ImageCollectionShared* );
|
||||||
|
ImageCollection( const ImageCollection& other );
|
||||||
|
~ImageCollection();
|
||||||
|
ImageCollection();
|
||||||
|
ImageCollection& operator=( const ImageCollection& );
|
||||||
|
|
||||||
|
bool operator==(const ImageCollection&) const;
|
||||||
|
private:
|
||||||
|
mutable KIPI::ImageCollectionShared* _data;
|
||||||
|
void printNullError() const;
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
#endif /* IMAGECOLLECTION_H */
|
||||||
|
|
@ -0,0 +1,348 @@
|
|||||||
|
/* ============================================================
|
||||||
|
* File : imagecollectionselector.cpp
|
||||||
|
* Authors: KIPI team developers (see AUTHORS files for details)
|
||||||
|
*
|
||||||
|
* Date : 2004-07
|
||||||
|
* Description :
|
||||||
|
*
|
||||||
|
* Copyright 2004 by the KIPI team
|
||||||
|
*
|
||||||
|
* This program 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, 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 Library General Public License for more details.
|
||||||
|
*
|
||||||
|
* ============================================================ */
|
||||||
|
|
||||||
|
// Qt includes.
|
||||||
|
|
||||||
|
#include <qheader.h>
|
||||||
|
#include <qlayout.h>
|
||||||
|
#include <qpushbutton.h>
|
||||||
|
#include <qlabel.h>
|
||||||
|
#include <qvgroupbox.h>
|
||||||
|
#include <qtimer.h>
|
||||||
|
|
||||||
|
// KDE includes.
|
||||||
|
|
||||||
|
#include <kbuttonbox.h>
|
||||||
|
#include <kdialog.h>
|
||||||
|
#include <klistview.h>
|
||||||
|
#include <klocale.h>
|
||||||
|
#include <kglobal.h>
|
||||||
|
#include <kio/previewjob.h>
|
||||||
|
|
||||||
|
// KIPI includes.
|
||||||
|
|
||||||
|
#include "libkipi/interface.h"
|
||||||
|
|
||||||
|
// Local includes.
|
||||||
|
|
||||||
|
#include "imagecollectionselector.h"
|
||||||
|
|
||||||
|
namespace KIPI
|
||||||
|
{
|
||||||
|
|
||||||
|
class ImageCollectionItem : public QCheckListItem
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
ImageCollectionItem(ImageCollectionSelector* selector,
|
||||||
|
QListView * parent, ImageCollection collection)
|
||||||
|
: QCheckListItem( parent, collection.name(), QCheckListItem::CheckBox),
|
||||||
|
_imageCollection(collection), _selector(selector)
|
||||||
|
{}
|
||||||
|
|
||||||
|
ImageCollection imageCollection() const { return _imageCollection; }
|
||||||
|
|
||||||
|
protected:
|
||||||
|
|
||||||
|
virtual void stateChange(bool val)
|
||||||
|
{
|
||||||
|
QCheckListItem::stateChange(val);
|
||||||
|
_selector->emitSelectionChanged();
|
||||||
|
}
|
||||||
|
|
||||||
|
private:
|
||||||
|
|
||||||
|
ImageCollection _imageCollection;
|
||||||
|
ImageCollectionSelector* _selector;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct ImageCollectionSelector::Private {
|
||||||
|
Interface* _interface;
|
||||||
|
KListView* _list;
|
||||||
|
QLabel* _thumbLabel;
|
||||||
|
QLabel* _textLabel;
|
||||||
|
QListViewItem* _itemToSelect;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
ImageCollectionSelector::ImageCollectionSelector(QWidget* parent, Interface* interface, const char* name)
|
||||||
|
: QWidget(parent, name)
|
||||||
|
{
|
||||||
|
d=new Private;
|
||||||
|
d->_interface=interface;
|
||||||
|
d->_itemToSelect = 0;
|
||||||
|
|
||||||
|
d->_list=new KListView(this);
|
||||||
|
d->_list->setResizeMode( QListView::LastColumn );
|
||||||
|
d->_list->addColumn("");
|
||||||
|
d->_list->header()->hide();
|
||||||
|
|
||||||
|
connect(d->_list, SIGNAL(selectionChanged(QListViewItem*)),
|
||||||
|
SLOT(slotSelectionChanged(QListViewItem*)));
|
||||||
|
|
||||||
|
QHBoxLayout* mainLayout=new QHBoxLayout(this, 0, KDialog::spacingHint());
|
||||||
|
mainLayout->addWidget(d->_list);
|
||||||
|
|
||||||
|
QVBoxLayout* rightLayout = new QVBoxLayout(mainLayout, 0);
|
||||||
|
|
||||||
|
KButtonBox* box=new KButtonBox(this, Vertical);
|
||||||
|
rightLayout->addWidget(box);
|
||||||
|
QPushButton* selectAll=box->addButton(i18n("Select All"));
|
||||||
|
QPushButton* invertSelection=box->addButton(i18n("Invert Selection"));
|
||||||
|
QPushButton* selectNone=box->addButton(i18n("Select None"));
|
||||||
|
box->layout();
|
||||||
|
|
||||||
|
connect(selectAll, SIGNAL(clicked()),
|
||||||
|
this, SLOT(slotSelectAll()) );
|
||||||
|
connect(invertSelection, SIGNAL(clicked()),
|
||||||
|
this, SLOT(slotInvertSelection()) );
|
||||||
|
connect(selectNone, SIGNAL(clicked()),
|
||||||
|
this, SLOT(slotSelectNone()) );
|
||||||
|
|
||||||
|
rightLayout->addItem(new QSpacerItem(10,20,QSizePolicy::Fixed,
|
||||||
|
QSizePolicy::Expanding));
|
||||||
|
|
||||||
|
QVGroupBox* rightBox = new QVGroupBox(this);
|
||||||
|
rightBox->setInsideMargin(KDialog::marginHint());
|
||||||
|
rightBox->setInsideSpacing(KDialog::spacingHint());
|
||||||
|
rightLayout->addWidget(rightBox);
|
||||||
|
|
||||||
|
if (interface->hasFeature(AlbumsUseFirstImagePreview))
|
||||||
|
{
|
||||||
|
d->_thumbLabel = new QLabel(rightBox);
|
||||||
|
d->_thumbLabel->setFixedSize(QSize(128,128));
|
||||||
|
d->_thumbLabel->setAlignment(AlignHCenter | AlignVCenter);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
d->_thumbLabel = 0;
|
||||||
|
}
|
||||||
|
d->_textLabel = new QLabel(rightBox);
|
||||||
|
|
||||||
|
fillList();
|
||||||
|
QTimer::singleShot(0, this, SLOT(slotInitialShow()));
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
ImageCollectionSelector::~ImageCollectionSelector() {
|
||||||
|
delete d;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void ImageCollectionSelector::fillList() {
|
||||||
|
QValueList<ImageCollection> collections = d->_interface->allAlbums();
|
||||||
|
d->_list->clear();
|
||||||
|
ImageCollection current = d->_interface->currentAlbum();
|
||||||
|
bool currentWasInList = false;
|
||||||
|
|
||||||
|
/* note: the extensive use of blocksignals is to prevent bombarding
|
||||||
|
the plugin with too many selection changed signals. do not remove
|
||||||
|
them */
|
||||||
|
|
||||||
|
blockSignals(true);
|
||||||
|
for( QValueList<ImageCollection>::Iterator it = collections.begin() ;
|
||||||
|
it != collections.end() ; ++it )
|
||||||
|
{
|
||||||
|
ImageCollectionItem* item = new ImageCollectionItem( this, d->_list, *it);
|
||||||
|
if (!currentWasInList && *it == current) {
|
||||||
|
item->setOn(true);
|
||||||
|
currentWasInList = true;
|
||||||
|
if (!d->_itemToSelect)
|
||||||
|
d->_itemToSelect = item;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!currentWasInList) {
|
||||||
|
slotSelectAll();
|
||||||
|
d->_itemToSelect = d->_list->firstChild();
|
||||||
|
}
|
||||||
|
blockSignals(false);
|
||||||
|
}
|
||||||
|
|
||||||
|
void ImageCollectionSelector::emitSelectionChanged()
|
||||||
|
{
|
||||||
|
emit selectionChanged();
|
||||||
|
}
|
||||||
|
|
||||||
|
QValueList<ImageCollection> ImageCollectionSelector::selectedImageCollections() const {
|
||||||
|
QValueList<ImageCollection> list;
|
||||||
|
|
||||||
|
QListViewItemIterator it( d->_list );
|
||||||
|
|
||||||
|
for (; it.current(); ++it) {
|
||||||
|
ImageCollectionItem *item = static_cast<ImageCollectionItem*>( it.current() );
|
||||||
|
|
||||||
|
if (item->isOn()) {
|
||||||
|
list << item->imageCollection();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return list;
|
||||||
|
}
|
||||||
|
|
||||||
|
void ImageCollectionSelector::slotSelectAll() {
|
||||||
|
QListViewItemIterator it( d->_list );
|
||||||
|
|
||||||
|
/* note: the extensive use of blocksignals is to prevent bombarding
|
||||||
|
the plugin with too many selection changed signals. do not remove
|
||||||
|
them */
|
||||||
|
blockSignals(true);
|
||||||
|
for (; it.current(); ++it) {
|
||||||
|
ImageCollectionItem *item = static_cast<ImageCollectionItem*>( it.current() );
|
||||||
|
item->setOn(true);
|
||||||
|
}
|
||||||
|
blockSignals(false);
|
||||||
|
|
||||||
|
emit selectionChanged();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void ImageCollectionSelector::slotInvertSelection() {
|
||||||
|
QListViewItemIterator it( d->_list );
|
||||||
|
|
||||||
|
/* note: the extensive use of blocksignals is to prevent bombarding
|
||||||
|
the plugin with too many selection changed signals. do not remove
|
||||||
|
them */
|
||||||
|
blockSignals(true);
|
||||||
|
for (; it.current(); ++it) {
|
||||||
|
ImageCollectionItem *item = static_cast<ImageCollectionItem*>( it.current() );
|
||||||
|
item->setOn(!item->isOn());
|
||||||
|
}
|
||||||
|
blockSignals(false);
|
||||||
|
|
||||||
|
emit selectionChanged();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void ImageCollectionSelector::slotSelectNone() {
|
||||||
|
QListViewItemIterator it( d->_list );
|
||||||
|
|
||||||
|
/* note: the extensive use of blocksignals is to prevent bombarding
|
||||||
|
the plugin with too many selection changed signals. do not remove
|
||||||
|
them */
|
||||||
|
blockSignals(true);
|
||||||
|
for (; it.current(); ++it) {
|
||||||
|
ImageCollectionItem *item = static_cast<ImageCollectionItem*>( it.current() );
|
||||||
|
item->setOn(false);
|
||||||
|
}
|
||||||
|
blockSignals(false);
|
||||||
|
|
||||||
|
emit selectionChanged();
|
||||||
|
}
|
||||||
|
|
||||||
|
void ImageCollectionSelector::slotSelectionChanged(QListViewItem* listItem)
|
||||||
|
{
|
||||||
|
if (d->_thumbLabel)
|
||||||
|
d->_thumbLabel->clear();
|
||||||
|
d->_textLabel->clear();
|
||||||
|
|
||||||
|
if (!listItem)
|
||||||
|
return;
|
||||||
|
|
||||||
|
ImageCollectionItem* imcollItem =
|
||||||
|
static_cast<ImageCollectionItem*>(listItem);
|
||||||
|
|
||||||
|
if (d->_thumbLabel)
|
||||||
|
{
|
||||||
|
KURL::List images(imcollItem->imageCollection().images());
|
||||||
|
if (!images.isEmpty())
|
||||||
|
{
|
||||||
|
KIO::PreviewJob* thumbJob = KIO::filePreview(images.first(), 128);
|
||||||
|
connect( thumbJob, SIGNAL(gotPreview(const KFileItem*, const QPixmap&)),
|
||||||
|
SLOT(slotGotPreview(const KFileItem* , const QPixmap&)));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Layout the ImageCollection information nicely
|
||||||
|
|
||||||
|
QString cellBeg("<tr><td><nobr><font size=-1><i>");
|
||||||
|
QString cellMid("</i></font></nobr></td><td><font size=-1>");
|
||||||
|
QString cellEnd("</font></td></tr>");
|
||||||
|
|
||||||
|
QString text("<table cellspacing=0 cellpadding=0>");
|
||||||
|
|
||||||
|
// number of images
|
||||||
|
text += cellBeg + i18n("Images:") +
|
||||||
|
cellMid + QString::number(imcollItem->imageCollection().images().count()) +
|
||||||
|
cellEnd;
|
||||||
|
|
||||||
|
// Optional features -------------------------------------------------------
|
||||||
|
|
||||||
|
// Album Comments
|
||||||
|
if (d->_interface->hasFeature(AlbumsHaveComments))
|
||||||
|
{
|
||||||
|
// Limit the comments string to 20 char...
|
||||||
|
QString comments = imcollItem->imageCollection().comment();
|
||||||
|
if (!comments.isEmpty())
|
||||||
|
{
|
||||||
|
comments.truncate(20);
|
||||||
|
comments.append("...");
|
||||||
|
}
|
||||||
|
|
||||||
|
text += cellBeg + i18n("Comments:") +
|
||||||
|
cellMid + comments +
|
||||||
|
cellEnd;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Album Category
|
||||||
|
if (d->_interface->hasFeature(AlbumsHaveCategory))
|
||||||
|
{
|
||||||
|
text += cellBeg + i18n("Category:") +
|
||||||
|
cellMid + imcollItem->imageCollection().category() +
|
||||||
|
cellEnd;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Album Creation Date
|
||||||
|
if (d->_interface->hasFeature(AlbumsHaveCreationDate))
|
||||||
|
{
|
||||||
|
QDate date(imcollItem->imageCollection().date());
|
||||||
|
text += cellBeg + i18n("Date:") +
|
||||||
|
cellMid + KGlobal::locale()->formatDate(date) +
|
||||||
|
cellEnd;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
text += "</table>";
|
||||||
|
|
||||||
|
d->_textLabel->setText(text);
|
||||||
|
|
||||||
|
emit selectionChanged();
|
||||||
|
}
|
||||||
|
|
||||||
|
void ImageCollectionSelector::slotGotPreview(const KFileItem*, const QPixmap& pix)
|
||||||
|
{
|
||||||
|
d->_thumbLabel->setPixmap(pix);
|
||||||
|
}
|
||||||
|
|
||||||
|
void ImageCollectionSelector::slotInitialShow()
|
||||||
|
{
|
||||||
|
if (d->_itemToSelect)
|
||||||
|
{
|
||||||
|
d->_list->setSelected(d->_itemToSelect, true);
|
||||||
|
d->_list->ensureItemVisible(d->_itemToSelect);
|
||||||
|
d->_itemToSelect = 0;
|
||||||
|
}
|
||||||
|
emit selectionChanged();
|
||||||
|
}
|
||||||
|
|
||||||
|
} // KIPI
|
||||||
|
|
||||||
|
#include "imagecollectionselector.moc"
|
@ -0,0 +1,81 @@
|
|||||||
|
/* ============================================================
|
||||||
|
* File : imagecollectionselector.h
|
||||||
|
* Authors: KIPI team developers (see AUTHORS files for details)
|
||||||
|
*
|
||||||
|
* Date : 2004-07
|
||||||
|
* Description :
|
||||||
|
*
|
||||||
|
* Copyright 2004 by the KIPI team
|
||||||
|
*
|
||||||
|
* This program 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, 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 Library General Public License for more details.
|
||||||
|
*
|
||||||
|
* ============================================================ */
|
||||||
|
|
||||||
|
#ifndef IMAGECOLLECTIONSELECTOR_H
|
||||||
|
#define IMAGECOLLECTIONSELECTOR_H
|
||||||
|
|
||||||
|
// Qt includes.
|
||||||
|
|
||||||
|
#include <qwidget.h>
|
||||||
|
#include <qvaluelist.h>
|
||||||
|
#include <qpixmap.h>
|
||||||
|
|
||||||
|
// KIPI includes.
|
||||||
|
|
||||||
|
#include "libkipi/imagecollection.h"
|
||||||
|
#include "libkipi/libkipi_export.h"
|
||||||
|
|
||||||
|
class QListViewItem;
|
||||||
|
class KFileItem;
|
||||||
|
|
||||||
|
namespace KIPI
|
||||||
|
{
|
||||||
|
|
||||||
|
class Interface;
|
||||||
|
|
||||||
|
class LIBKIPI_EXPORT ImageCollectionSelector : public QWidget
|
||||||
|
{
|
||||||
|
Q_OBJECT
|
||||||
|
class Private;
|
||||||
|
|
||||||
|
public:
|
||||||
|
|
||||||
|
ImageCollectionSelector(QWidget* parent, Interface*, const char* name=0);
|
||||||
|
~ImageCollectionSelector();
|
||||||
|
|
||||||
|
QValueList<ImageCollection> selectedImageCollections() const;
|
||||||
|
|
||||||
|
signals:
|
||||||
|
|
||||||
|
void selectionChanged(void);
|
||||||
|
|
||||||
|
private:
|
||||||
|
|
||||||
|
Private* d;
|
||||||
|
void fillList();
|
||||||
|
void emitSelectionChanged();
|
||||||
|
friend class ImageCollectionItem;
|
||||||
|
|
||||||
|
private slots:
|
||||||
|
|
||||||
|
void slotSelectAll();
|
||||||
|
void slotInvertSelection();
|
||||||
|
void slotSelectNone();
|
||||||
|
void slotSelectionChanged(QListViewItem* listItem);
|
||||||
|
void slotGotPreview(const KFileItem*, const QPixmap&);
|
||||||
|
void slotInitialShow();
|
||||||
|
};
|
||||||
|
|
||||||
|
} // KIPI
|
||||||
|
|
||||||
|
|
||||||
|
#endif /* IMAGECOLLECTIONSELECTOR_H */
|
@ -0,0 +1,116 @@
|
|||||||
|
/* ============================================================
|
||||||
|
* File : imagecollectionshared.cpp
|
||||||
|
* Authors: KIPI team developers (see AUTHORS files for details)
|
||||||
|
*
|
||||||
|
* Date : 2004-02
|
||||||
|
* Description :
|
||||||
|
*
|
||||||
|
* Copyright 2004 by the KIPI team
|
||||||
|
*
|
||||||
|
* This program 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, 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 Library General Public License for more details.
|
||||||
|
*
|
||||||
|
* ============================================================ */
|
||||||
|
|
||||||
|
// KDE Includes.
|
||||||
|
|
||||||
|
#include <klocale.h>
|
||||||
|
#include <kdebug.h>
|
||||||
|
|
||||||
|
// Local Includes.
|
||||||
|
|
||||||
|
#include "imagecollectionshared.h"
|
||||||
|
|
||||||
|
|
||||||
|
KIPI::ImageCollectionShared::ImageCollectionShared()
|
||||||
|
: _count(1)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
void KIPI::ImageCollectionShared::addRef()
|
||||||
|
{
|
||||||
|
_count++;
|
||||||
|
}
|
||||||
|
|
||||||
|
void KIPI::ImageCollectionShared::removeRef()
|
||||||
|
{
|
||||||
|
_count--;
|
||||||
|
if ( _count == 0 ) {
|
||||||
|
// qDebug("Deleting!");
|
||||||
|
delete this;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
KURL KIPI::ImageCollectionShared::path()
|
||||||
|
{
|
||||||
|
kdWarning(51000) << "This method should only be invoked if this imagecollection is a directory.\n"
|
||||||
|
<< "See KIPI::ImageCollectionShared::isDirectory()"
|
||||||
|
<< endl;
|
||||||
|
return KURL();
|
||||||
|
}
|
||||||
|
|
||||||
|
KURL KIPI::ImageCollectionShared::uploadPath()
|
||||||
|
{
|
||||||
|
kdWarning(51000) << "This method should only be invoked if the host application supports the KIPI::Features\n"
|
||||||
|
"AcceptNewImages - if the host application do support that, then this function should\n"
|
||||||
|
"have been overriden in the host application.\n";
|
||||||
|
return KURL();
|
||||||
|
}
|
||||||
|
|
||||||
|
KURL KIPI::ImageCollectionShared::uploadRoot()
|
||||||
|
{
|
||||||
|
KURL path = uploadPath();
|
||||||
|
if ( path.isValid() ) {
|
||||||
|
path.setPath("/");
|
||||||
|
return path;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
return KURL( "file:/" );
|
||||||
|
}
|
||||||
|
|
||||||
|
QString KIPI::ImageCollectionShared::uploadRootName()
|
||||||
|
{
|
||||||
|
return (i18n("Images"));
|
||||||
|
}
|
||||||
|
|
||||||
|
bool KIPI::ImageCollectionShared::isDirectory()
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
QString KIPI::ImageCollectionShared::comment()
|
||||||
|
{
|
||||||
|
kdWarning(51000) << "KIPI::ImageCollectionShared::comment should only be invoked if the host application supports\n"
|
||||||
|
"the KIPI::Features AlbumsHaveComments - if the host application do support that, then this function should\n"
|
||||||
|
"have been overriden in the host application.\n";
|
||||||
|
return QString::null;
|
||||||
|
}
|
||||||
|
|
||||||
|
QString KIPI::ImageCollectionShared::category()
|
||||||
|
{
|
||||||
|
kdWarning(51000) << "KIPI::ImageCollectionShared::category should only be invoked if the host application supports\n"
|
||||||
|
"the KIPI::Features AlbumsHaveCategory - if the host application do support that, then this function should\n"
|
||||||
|
"have been overriden in the host application.\n";
|
||||||
|
return QString::null;
|
||||||
|
}
|
||||||
|
|
||||||
|
QDate KIPI::ImageCollectionShared::date()
|
||||||
|
{
|
||||||
|
kdWarning(51000) << "KIPI::ImageCollectionShared::date should only be invoked if the host application supports\n"
|
||||||
|
"the KIPI::Features AlbumsHaveCreationDate - if the host application do support that, then this function should\n"
|
||||||
|
"have been overriden in the host application.\n";
|
||||||
|
return QDate();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
bool KIPI::ImageCollectionShared::operator==(ImageCollectionShared& ics) {
|
||||||
|
return images()==ics.images();
|
||||||
|
}
|
@ -0,0 +1,68 @@
|
|||||||
|
/* ============================================================
|
||||||
|
* File : imagecollectionshared.h
|
||||||
|
* Authors: KIPI team developers (see AUTHORS files for details)
|
||||||
|
*
|
||||||
|
* Date : 2004-02
|
||||||
|
* Description :
|
||||||
|
*
|
||||||
|
* Copyright 2004 by the KIPI team
|
||||||
|
*
|
||||||
|
* This program 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, 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 Library General Public License for more details.
|
||||||
|
*
|
||||||
|
* ============================================================ */
|
||||||
|
|
||||||
|
#ifndef KIPI_IMAGECOLLECTIONSHARED_H
|
||||||
|
#define KIPI_IMAGECOLLECTIONSHARED_H
|
||||||
|
|
||||||
|
// Qt Includes.
|
||||||
|
|
||||||
|
#include <qstring.h>
|
||||||
|
#include <qdatetime.h>
|
||||||
|
|
||||||
|
// KDE includes.
|
||||||
|
|
||||||
|
#include <kurl.h>
|
||||||
|
|
||||||
|
// Local includes.
|
||||||
|
|
||||||
|
#include "imagecollection.h"
|
||||||
|
#include "libkipi/libkipi_export.h"
|
||||||
|
|
||||||
|
namespace KIPI
|
||||||
|
{
|
||||||
|
class LIBKIPI_EXPORT ImageCollectionShared
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
ImageCollectionShared();
|
||||||
|
virtual ~ImageCollectionShared() {}
|
||||||
|
virtual QString name() = 0;
|
||||||
|
virtual QString comment();
|
||||||
|
virtual QString category();
|
||||||
|
virtual QDate date();
|
||||||
|
virtual KURL::List images() = 0;
|
||||||
|
virtual KURL path();
|
||||||
|
virtual KURL uploadPath();
|
||||||
|
virtual KURL uploadRoot();
|
||||||
|
virtual QString uploadRootName();
|
||||||
|
virtual bool isDirectory();
|
||||||
|
virtual bool operator==(ImageCollectionShared&);
|
||||||
|
|
||||||
|
private:
|
||||||
|
friend class ImageCollection;
|
||||||
|
void addRef();
|
||||||
|
void removeRef();
|
||||||
|
int _count;
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
#endif /* IMAGECOLLECTIONSHARED_H */
|
||||||
|
|
@ -0,0 +1,327 @@
|
|||||||
|
/* ============================================================
|
||||||
|
* File : imagedialog.cpp
|
||||||
|
* Authors: KIPI team developers (see AUTHORS files for details)
|
||||||
|
*
|
||||||
|
* Date : 2004-05
|
||||||
|
* Description : an image files selector dialog.
|
||||||
|
*
|
||||||
|
* Copyright 2004 by the KIPI team
|
||||||
|
*
|
||||||
|
* This program 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, 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 Library General Public License for more details.
|
||||||
|
*
|
||||||
|
* ============================================================ */
|
||||||
|
|
||||||
|
// Qt includes.
|
||||||
|
|
||||||
|
#include <qguardedptr.h>
|
||||||
|
#include <qlabel.h>
|
||||||
|
#include <qsplitter.h>
|
||||||
|
#include <qlayout.h>
|
||||||
|
#include <qframe.h>
|
||||||
|
#include <qpushbutton.h>
|
||||||
|
#include <qtimer.h>
|
||||||
|
|
||||||
|
// KDE includes.
|
||||||
|
|
||||||
|
#include <kdebug.h>
|
||||||
|
#include <klistview.h>
|
||||||
|
#include <klocale.h>
|
||||||
|
#include <kstandarddirs.h>
|
||||||
|
#include <kio/previewjob.h>
|
||||||
|
#include <kapplication.h>
|
||||||
|
#include <kaboutdata.h>
|
||||||
|
#include <khelpmenu.h>
|
||||||
|
#include <kiconloader.h>
|
||||||
|
#include <kpopupmenu.h>
|
||||||
|
|
||||||
|
// Include files for libKipi.
|
||||||
|
|
||||||
|
#include "libkipi/version.h"
|
||||||
|
|
||||||
|
// Local includes.
|
||||||
|
|
||||||
|
#include "imagedialog.h"
|
||||||
|
|
||||||
|
const int PREVIEW_SIZE = 128;
|
||||||
|
|
||||||
|
namespace KIPI
|
||||||
|
{
|
||||||
|
|
||||||
|
struct AlbumLVI : public KListViewItem {
|
||||||
|
AlbumLVI(KListView* parent, const KIPI::ImageCollection& album)
|
||||||
|
: KListViewItem(parent, album.name())
|
||||||
|
, _album(album) {}
|
||||||
|
|
||||||
|
const KIPI::ImageCollection& _album;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
struct ImageLVI : public KListViewItem {
|
||||||
|
ImageLVI(KListView* parent, const KURL& url)
|
||||||
|
: KListViewItem(parent, url.fileName()), _url(url) {}
|
||||||
|
|
||||||
|
KURL _url;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
struct ImageDialog::Private {
|
||||||
|
KURL _url;
|
||||||
|
KURL::List _urls;
|
||||||
|
KIPI::Interface* _interface;
|
||||||
|
KListView* _albumList;
|
||||||
|
KListView* _imageList;
|
||||||
|
QLabel* _preview;
|
||||||
|
QValueList<ImageCollection> _albums;
|
||||||
|
bool _singleSelection;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
ImageDialog::ImageDialog(QWidget* parent, KIPI::Interface* interface,
|
||||||
|
bool singleSelection)
|
||||||
|
: KDialogBase(KDialogBase::Plain, i18n("Select Image From Album"), Help|Ok|Cancel,
|
||||||
|
Ok, parent, "album-dialog", true, true)
|
||||||
|
{
|
||||||
|
d = new Private;
|
||||||
|
d->_interface=interface;
|
||||||
|
d->_singleSelection = singleSelection;
|
||||||
|
|
||||||
|
QWidget* box = plainPage();
|
||||||
|
QVBoxLayout *dvlay = new QVBoxLayout( box, 6 );
|
||||||
|
|
||||||
|
//---------------------------------------------
|
||||||
|
|
||||||
|
QFrame *headerFrame = new QFrame( box );
|
||||||
|
headerFrame->setFrameStyle(QFrame::Panel|QFrame::Sunken);
|
||||||
|
QHBoxLayout* layout = new QHBoxLayout( headerFrame );
|
||||||
|
layout->setMargin( 2 ); // to make sure the frame gets displayed
|
||||||
|
layout->setSpacing( 0 );
|
||||||
|
QLabel *pixmapLabelLeft = new QLabel( headerFrame, "pixmapLabelLeft" );
|
||||||
|
pixmapLabelLeft->setScaledContents( false );
|
||||||
|
layout->addWidget( pixmapLabelLeft );
|
||||||
|
QLabel *labelTitle = new QLabel( i18n("Select Image From Album"), headerFrame, "labelTitle" );
|
||||||
|
layout->addWidget( labelTitle );
|
||||||
|
layout->setStretchFactor( labelTitle, 1 );
|
||||||
|
dvlay->addWidget( headerFrame );
|
||||||
|
|
||||||
|
QString directory;
|
||||||
|
KGlobal::dirs()->addResourceType("kipi_banner_left", KGlobal::dirs()->kde_default("data") + "kipi/data");
|
||||||
|
directory = KGlobal::dirs()->findResourceDir("kipi_banner_left", "banner_left.png");
|
||||||
|
|
||||||
|
pixmapLabelLeft->setPaletteBackgroundColor( QColor(201, 208, 255) );
|
||||||
|
pixmapLabelLeft->setPixmap( QPixmap( directory + "banner_left.png" ) );
|
||||||
|
labelTitle->setPaletteBackgroundColor( QColor(201, 208, 255) );
|
||||||
|
|
||||||
|
//---------------------------------------------
|
||||||
|
|
||||||
|
// About data and help button.
|
||||||
|
|
||||||
|
KAboutData* about = new KAboutData("kipiplugins",
|
||||||
|
I18N_NOOP("Image selector dialog"),
|
||||||
|
kipi_version,
|
||||||
|
I18N_NOOP("A Kipi dialog for image selection"),
|
||||||
|
KAboutData::License_GPL,
|
||||||
|
"(c) 2004,2005, Kipi development team",
|
||||||
|
0,
|
||||||
|
"http://extragear.kde.org/apps/kipi");
|
||||||
|
|
||||||
|
QPushButton *helpButton = actionButton( Help );
|
||||||
|
KHelpMenu* helpMenu = new KHelpMenu(this, about, false);
|
||||||
|
helpMenu->menu()->removeItemAt(0);
|
||||||
|
helpMenu->menu()->insertItem(i18n("Kipi Plugins Handbooks"), this, SLOT(slotHelp()), 0, -1, 0);
|
||||||
|
helpButton->setPopup( helpMenu->menu() );
|
||||||
|
|
||||||
|
//---------------------------------------------
|
||||||
|
|
||||||
|
QSplitter* splitter = new QSplitter(box);
|
||||||
|
|
||||||
|
d->_albumList=new KListView(splitter);
|
||||||
|
d->_albumList->addColumn(i18n("Album Name"));
|
||||||
|
d->_albumList->setMinimumWidth(200);
|
||||||
|
d->_albumList->setResizeMode(QListView::LastColumn);
|
||||||
|
|
||||||
|
d->_imageList=new KListView(splitter);
|
||||||
|
d->_imageList->addColumn(i18n("Image Name"));
|
||||||
|
d->_imageList->setMinimumWidth(200);
|
||||||
|
d->_imageList->setSelectionMode(singleSelection ? QListView::Single :
|
||||||
|
QListView::Extended);
|
||||||
|
d->_imageList->setResizeMode(QListView::LastColumn);
|
||||||
|
|
||||||
|
d->_preview=new QLabel(splitter);
|
||||||
|
d->_preview->setAlignment(AlignHCenter | AlignVCenter | WordBreak);
|
||||||
|
d->_preview->setFixedWidth(PREVIEW_SIZE);
|
||||||
|
d->_preview->setText(i18n("No image selected"));
|
||||||
|
|
||||||
|
dvlay->addWidget( splitter );
|
||||||
|
|
||||||
|
d->_albums=d->_interface->allAlbums();
|
||||||
|
QValueList<ImageCollection>::ConstIterator it=d->_albums.begin();
|
||||||
|
|
||||||
|
for(; it!=d->_albums.end(); ++it) {
|
||||||
|
new AlbumLVI(d->_albumList, *it);
|
||||||
|
}
|
||||||
|
QTimer::singleShot(0, this, SLOT(slotInitialShow()));
|
||||||
|
|
||||||
|
connect(d->_albumList, SIGNAL(selectionChanged(QListViewItem*)),
|
||||||
|
this, SLOT(fillImageList(QListViewItem*)) );
|
||||||
|
|
||||||
|
if (singleSelection)
|
||||||
|
connect(d->_imageList, SIGNAL(selectionChanged(QListViewItem*)),
|
||||||
|
this, SLOT(slotImageSelected(QListViewItem*)) );
|
||||||
|
else
|
||||||
|
connect(d->_imageList, SIGNAL(selectionChanged()),
|
||||||
|
this, SLOT(slotImagesSelected()));
|
||||||
|
|
||||||
|
enableButtonOK(false);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
ImageDialog::~ImageDialog() {
|
||||||
|
delete d;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
KURL ImageDialog::url() const {
|
||||||
|
return d->_url;
|
||||||
|
}
|
||||||
|
|
||||||
|
KURL::List ImageDialog::urls() const
|
||||||
|
{
|
||||||
|
return d->_urls;
|
||||||
|
}
|
||||||
|
|
||||||
|
KURL ImageDialog::getImageURL(QWidget* parent, KIPI::Interface* interface) {
|
||||||
|
ImageDialog dlg(parent, interface, true);
|
||||||
|
if (dlg.exec() == QDialog::Accepted) {
|
||||||
|
return dlg.url();
|
||||||
|
} else {
|
||||||
|
return KURL();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
KURL::List ImageDialog::getImageURLs(QWidget* parent, Interface* interface)
|
||||||
|
{
|
||||||
|
ImageDialog dlg(parent, interface, false);
|
||||||
|
if (dlg.exec() == QDialog::Accepted)
|
||||||
|
return dlg.urls();
|
||||||
|
else
|
||||||
|
{
|
||||||
|
KURL::List urls;
|
||||||
|
return urls;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void ImageDialog::fillImageList(QListViewItem* item) {
|
||||||
|
d->_imageList->clear();
|
||||||
|
if (!item) return;
|
||||||
|
|
||||||
|
const KIPI::ImageCollection& album=static_cast<AlbumLVI*>(item)->_album;
|
||||||
|
KURL::List images=album.images();
|
||||||
|
|
||||||
|
KURL::List::ConstIterator it=images.begin();
|
||||||
|
for (;it!=images.end(); ++it) {
|
||||||
|
new ImageLVI(d->_imageList, *it);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void ImageDialog::slotImageSelected(QListViewItem* item) {
|
||||||
|
if (!item) {
|
||||||
|
enableButtonOK(false);
|
||||||
|
d->_preview->setText(i18n("No image selected"));
|
||||||
|
d->_url=KURL();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
enableButtonOK(true);
|
||||||
|
d->_url=static_cast<ImageLVI*>(item)->_url;
|
||||||
|
d->_preview->clear();
|
||||||
|
|
||||||
|
KIO::PreviewJob* thumbJob = KIO::filePreview(d->_url, PREVIEW_SIZE);
|
||||||
|
connect( thumbJob, SIGNAL(gotPreview(const KFileItem*, const QPixmap&)),
|
||||||
|
SLOT(slotGotPreview(const KFileItem* , const QPixmap&)));
|
||||||
|
}
|
||||||
|
|
||||||
|
void ImageDialog::slotImagesSelected()
|
||||||
|
{
|
||||||
|
d->_url = KURL();
|
||||||
|
d->_urls.clear();
|
||||||
|
d->_preview->clear();
|
||||||
|
|
||||||
|
QListViewItem* selectedItem = 0;
|
||||||
|
QListViewItem* listItem = d->_imageList->firstChild();
|
||||||
|
while (listItem)
|
||||||
|
{
|
||||||
|
if (listItem->isSelected())
|
||||||
|
{
|
||||||
|
selectedItem = listItem;
|
||||||
|
d->_urls.append(static_cast<ImageLVI*>(listItem)->_url);
|
||||||
|
}
|
||||||
|
listItem = listItem->nextSibling();
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!selectedItem)
|
||||||
|
{
|
||||||
|
enableButtonOK(false);
|
||||||
|
d->_preview->setText(i18n("No images selected"));
|
||||||
|
d->_url=KURL();
|
||||||
|
d->_urls.clear();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
enableButtonOK(true);
|
||||||
|
|
||||||
|
if (d->_urls.count() == 1)
|
||||||
|
{
|
||||||
|
d->_url = d->_urls.first();
|
||||||
|
|
||||||
|
KIO::PreviewJob* thumbJob = KIO::filePreview(d->_url, PREVIEW_SIZE);
|
||||||
|
connect( thumbJob, SIGNAL(gotPreview(const KFileItem*, const QPixmap&)),
|
||||||
|
SLOT(slotGotPreview(const KFileItem* , const QPixmap&)));
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
d->_url = d->_urls.first();
|
||||||
|
d->_preview->setText(i18n("1 image selected", "%n images selected", d->_urls.count()));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void ImageDialog::slotGotPreview(const KFileItem*, const QPixmap& pix) {
|
||||||
|
|
||||||
|
d->_preview->setPixmap(pix);
|
||||||
|
}
|
||||||
|
|
||||||
|
void ImageDialog::slotHelp( void )
|
||||||
|
{
|
||||||
|
KApplication::kApplication()->invokeHelp("", "kipi-plugins");
|
||||||
|
}
|
||||||
|
|
||||||
|
void ImageDialog::slotInitialShow()
|
||||||
|
{
|
||||||
|
ImageCollection current = d->_interface->currentAlbum();
|
||||||
|
|
||||||
|
QListViewItemIterator it( d->_albumList );
|
||||||
|
while ( it.current() )
|
||||||
|
{
|
||||||
|
AlbumLVI* lvi = static_cast<AlbumLVI*>( it.current() );
|
||||||
|
if ( lvi->_album == current )
|
||||||
|
{
|
||||||
|
d->_albumList->ensureItemVisible( lvi );
|
||||||
|
d->_albumList->setSelected( lvi, true );
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
++it;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
} // namespace KIPI
|
||||||
|
|
||||||
|
#include "imagedialog.moc"
|
@ -0,0 +1,83 @@
|
|||||||
|
/* ============================================================
|
||||||
|
* File : imagedialog.h
|
||||||
|
* Authors: KIPI team developers (see AUTHORS files for details)
|
||||||
|
*
|
||||||
|
* Date : 2004-05
|
||||||
|
* Description : an image files selector dialog.
|
||||||
|
*
|
||||||
|
* Copyright 2004 by the KIPI team
|
||||||
|
*
|
||||||
|
* This program 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, 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 Library General Public License for more details.
|
||||||
|
*
|
||||||
|
* ============================================================ */
|
||||||
|
|
||||||
|
#ifndef IMAGEDIALOG_H
|
||||||
|
#define IMAGEDIALOG_H
|
||||||
|
|
||||||
|
// Qt includes.
|
||||||
|
|
||||||
|
#include <qvaluelist.h>
|
||||||
|
#include <qwidget.h>
|
||||||
|
|
||||||
|
// KDE includes.
|
||||||
|
|
||||||
|
#include <kurl.h>
|
||||||
|
#include <kdialogbase.h>
|
||||||
|
|
||||||
|
// LibKipi includes.
|
||||||
|
|
||||||
|
#include "libkipi/interface.h"
|
||||||
|
#include "libkipi/imagecollection.h"
|
||||||
|
#include "libkipi/libkipi_export.h"
|
||||||
|
|
||||||
|
class QListViewItem;
|
||||||
|
|
||||||
|
class KFileItem;
|
||||||
|
class KListView;
|
||||||
|
|
||||||
|
namespace KIPI
|
||||||
|
{
|
||||||
|
|
||||||
|
|
||||||
|
class LIBKIPI_EXPORT ImageDialog : public KDialogBase
|
||||||
|
{
|
||||||
|
Q_OBJECT
|
||||||
|
|
||||||
|
class Private;
|
||||||
|
|
||||||
|
public:
|
||||||
|
|
||||||
|
ImageDialog(QWidget*, Interface*, bool singleSelection=false);
|
||||||
|
~ImageDialog();
|
||||||
|
|
||||||
|
KURL url() const;
|
||||||
|
KURL::List urls() const;
|
||||||
|
|
||||||
|
static KURL getImageURL(QWidget*, Interface*);
|
||||||
|
static KURL::List getImageURLs(QWidget*, Interface*);
|
||||||
|
|
||||||
|
private slots:
|
||||||
|
|
||||||
|
void fillImageList(QListViewItem*);
|
||||||
|
void slotImageSelected(QListViewItem*);
|
||||||
|
void slotImagesSelected();
|
||||||
|
void slotGotPreview(const KFileItem* , const QPixmap&);
|
||||||
|
void slotHelp( void );
|
||||||
|
void slotInitialShow();
|
||||||
|
|
||||||
|
private:
|
||||||
|
Private* d;
|
||||||
|
};
|
||||||
|
|
||||||
|
} // namespace KIPI
|
||||||
|
|
||||||
|
#endif /* IMAGECOLLECTIONDIALOG_H */
|
@ -0,0 +1,169 @@
|
|||||||
|
/* ============================================================
|
||||||
|
* File : imageinfo.h
|
||||||
|
* Author: KIPI team developers (see AUTHORS files for details)
|
||||||
|
* Date : 2004-07-22
|
||||||
|
* Description :
|
||||||
|
*
|
||||||
|
* Copyright 2004 by the KIPI team
|
||||||
|
*
|
||||||
|
* This program 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, 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 Library General Public License for more details.
|
||||||
|
*
|
||||||
|
* ============================================================ */
|
||||||
|
|
||||||
|
#include "imageinfo.h"
|
||||||
|
#include "KDStream.h"
|
||||||
|
#include "imageinfoshared.h"
|
||||||
|
|
||||||
|
/** @file imageinfo.cpp
|
||||||
|
*/
|
||||||
|
QString KIPI::ImageInfo::toString( const QVariant& data ) const
|
||||||
|
{
|
||||||
|
QString string;
|
||||||
|
KDStream stream( &string );
|
||||||
|
stream << data
|
||||||
|
<< flush ;
|
||||||
|
return string;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
PENDING(blackie) document
|
||||||
|
*/
|
||||||
|
QString KIPI::ImageInfo::title() const
|
||||||
|
{
|
||||||
|
return _data->title();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
PENDING(blackie) document
|
||||||
|
*/
|
||||||
|
KURL KIPI::ImageInfo::path() const
|
||||||
|
{
|
||||||
|
return _data->path();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
PENDING(blackie) document
|
||||||
|
*/
|
||||||
|
QString KIPI::ImageInfo::description() const
|
||||||
|
{
|
||||||
|
return _data->description();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
Returns the time of the image.
|
||||||
|
In case the host application supports time range, the spec argument
|
||||||
|
specifies if it is the start or end time that should be returned.
|
||||||
|
*/
|
||||||
|
QDateTime KIPI::ImageInfo::time( TimeSpec spec ) const
|
||||||
|
{
|
||||||
|
return _data->time( spec );
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
Returns a Map of attributes of the image
|
||||||
|
In case the host application supports some special attributes of the image
|
||||||
|
this function can be used to return them.
|
||||||
|
Tags are supported by this feature: "tags" key contains QStringList()
|
||||||
|
encapsulated in a QVariant
|
||||||
|
|
||||||
|
*/
|
||||||
|
QMap<QString,QVariant> KIPI::ImageInfo::attributes() const
|
||||||
|
{
|
||||||
|
return _data->attributes();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
PENDING(blackie) document
|
||||||
|
*/
|
||||||
|
int KIPI::ImageInfo::size() const
|
||||||
|
{
|
||||||
|
return _data->size();
|
||||||
|
}
|
||||||
|
|
||||||
|
KIPI::ImageInfo::ImageInfo( ImageInfoShared* shared )
|
||||||
|
: _data( shared )
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
KIPI::ImageInfo::ImageInfo( const KIPI::ImageInfo& rhs )
|
||||||
|
{
|
||||||
|
_data = rhs._data;
|
||||||
|
_data->addRef();
|
||||||
|
}
|
||||||
|
|
||||||
|
KIPI::ImageInfo::~ImageInfo()
|
||||||
|
{
|
||||||
|
_data->removeRef();
|
||||||
|
}
|
||||||
|
|
||||||
|
void KIPI::ImageInfo::setTitle( const QString& name )
|
||||||
|
{
|
||||||
|
_data->setTitle( name );
|
||||||
|
}
|
||||||
|
|
||||||
|
void KIPI::ImageInfo::setDescription( const QString& description )
|
||||||
|
{
|
||||||
|
_data->setDescription( description );
|
||||||
|
}
|
||||||
|
|
||||||
|
void KIPI::ImageInfo::clearAttributes()
|
||||||
|
{
|
||||||
|
_data->clearAttributes();
|
||||||
|
}
|
||||||
|
|
||||||
|
void KIPI::ImageInfo::addAttributes( const QMap<QString,QVariant>& attributes )
|
||||||
|
{
|
||||||
|
_data->addAttributes( attributes );
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
Returns the angle the application rotates the image with when displaying it.
|
||||||
|
Certain host applications may choose to rotate the image on disk, and will always return 0,
|
||||||
|
while other host application will rotate the image when displaying it, and will thus not rotate
|
||||||
|
the image on disk.
|
||||||
|
*/
|
||||||
|
int KIPI::ImageInfo::angle() const
|
||||||
|
{
|
||||||
|
return _data->angle();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
See \ref angle
|
||||||
|
*/
|
||||||
|
void KIPI::ImageInfo::setAngle( int angle )
|
||||||
|
{
|
||||||
|
_data->setAngle( angle );
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
In the case the application supports time ranges (like this image is
|
||||||
|
from 1998-2000), this method will return true if the time is an exact
|
||||||
|
specification, and thus not a range.
|
||||||
|
*/
|
||||||
|
bool KIPI::ImageInfo::isTimeExact() const
|
||||||
|
{
|
||||||
|
return _data->isTimeExact();
|
||||||
|
}
|
||||||
|
|
||||||
|
void KIPI::ImageInfo::setTime( const QDateTime& time, TimeSpec spec )
|
||||||
|
{
|
||||||
|
_data->setTime( time, spec );
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
Copies all the attibutes, description etc from the other imageinfo
|
||||||
|
*/
|
||||||
|
void KIPI::ImageInfo::cloneData( const ImageInfo& other )
|
||||||
|
{
|
||||||
|
_data->cloneData( other._data );
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,82 @@
|
|||||||
|
/* ============================================================
|
||||||
|
* File : imageinfo.h
|
||||||
|
* Author: KIPI team developers (see AUTHORS files for details)
|
||||||
|
* Date : 2004-07-22
|
||||||
|
* Description :
|
||||||
|
*
|
||||||
|
* Copyright 2004 by the KIPI team
|
||||||
|
*
|
||||||
|
* This program 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, 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 Library General Public License for more details.
|
||||||
|
*
|
||||||
|
* ============================================================ */
|
||||||
|
|
||||||
|
/** @file imageinfo.h */
|
||||||
|
|
||||||
|
#ifndef KIPI_IMAGEINFO_H
|
||||||
|
#define KIPI_IMAGEINFO_H
|
||||||
|
#include <kurl.h>
|
||||||
|
#include <qstring.h>
|
||||||
|
#include <qdatetime.h>
|
||||||
|
#include <qmap.h>
|
||||||
|
#include <qvariant.h>
|
||||||
|
#include "libkipi/libkipi_export.h"
|
||||||
|
|
||||||
|
namespace KIPI
|
||||||
|
{
|
||||||
|
class ImageInfoShared;
|
||||||
|
enum TimeSpec { FromInfo, ToInfo };
|
||||||
|
|
||||||
|
/** @class ImageInfo
|
||||||
|
Holds info about an image
|
||||||
|
*/
|
||||||
|
class LIBKIPI_EXPORT ImageInfo
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
QString title() const;
|
||||||
|
void setTitle( const QString& name );
|
||||||
|
|
||||||
|
QString description() const;
|
||||||
|
void setDescription( const QString& description);
|
||||||
|
|
||||||
|
QMap<QString,QVariant> attributes() const;
|
||||||
|
void clearAttributes();
|
||||||
|
void addAttributes( const QMap<QString,QVariant>& );
|
||||||
|
|
||||||
|
KURL path() const;
|
||||||
|
QDateTime time( TimeSpec spec = FromInfo ) const;
|
||||||
|
void setTime( const QDateTime& time, TimeSpec spec = FromInfo );
|
||||||
|
bool isTimeExact() const;
|
||||||
|
int size() const;
|
||||||
|
|
||||||
|
int angle() const;
|
||||||
|
void setAngle( int );
|
||||||
|
|
||||||
|
QString toString( const QVariant& ) const;
|
||||||
|
|
||||||
|
void cloneData( const ImageInfo& other );
|
||||||
|
|
||||||
|
/** constructor
|
||||||
|
Interface for host application + general stuff
|
||||||
|
*/
|
||||||
|
ImageInfo( ImageInfoShared* );
|
||||||
|
ImageInfo( const ImageInfo& );
|
||||||
|
~ImageInfo();
|
||||||
|
|
||||||
|
private:
|
||||||
|
ImageInfo() {} // Disabled
|
||||||
|
ImageInfo& operator=( const ImageInfo& ) { return *this; } // Disabled
|
||||||
|
mutable KIPI::ImageInfoShared* _data;
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
#endif /* KIPI_IMAGEINFO_H */
|
||||||
|
|
@ -0,0 +1,120 @@
|
|||||||
|
/* ============================================================
|
||||||
|
* File : imageinfoshared.cpp
|
||||||
|
* Authors: Jesper K. Pedersen <blackie@kde.org>
|
||||||
|
*
|
||||||
|
* Date : 2004-02-19
|
||||||
|
* Description :
|
||||||
|
*
|
||||||
|
* Copyright 2004 by Jesper K. Pedersen
|
||||||
|
*
|
||||||
|
* This program 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, 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 Library General Public License for more details.
|
||||||
|
*
|
||||||
|
* ============================================================ */
|
||||||
|
|
||||||
|
// Qt includes.
|
||||||
|
|
||||||
|
#include <qfileinfo.h>
|
||||||
|
|
||||||
|
// KDE includes.
|
||||||
|
|
||||||
|
#include <kdebug.h>
|
||||||
|
|
||||||
|
// Local includes.
|
||||||
|
|
||||||
|
#include "imageinfoshared.h"
|
||||||
|
#include "interface.h"
|
||||||
|
|
||||||
|
KIPI::ImageInfoShared::ImageInfoShared( Interface* interface, const KURL& url )
|
||||||
|
: _url( url ), _count(1), _interface( interface )
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
KURL KIPI::ImageInfoShared::path()
|
||||||
|
{
|
||||||
|
return _url;
|
||||||
|
}
|
||||||
|
|
||||||
|
int KIPI::ImageInfoShared::size()
|
||||||
|
{
|
||||||
|
if ( ! _url.isLocalFile() ) {
|
||||||
|
kdFatal() << "KIPI::ImageInfoShared::size does not yet support non local files, please fix\n";
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
return QFileInfo( _url.path() ).size();
|
||||||
|
}
|
||||||
|
|
||||||
|
QDateTime KIPI::ImageInfoShared::time( KIPI::TimeSpec )
|
||||||
|
{
|
||||||
|
if ( ! _url.isLocalFile() ) {
|
||||||
|
kdFatal() << "KIPI::ImageInfoShared::time does not yet support non local files, please fix\n";
|
||||||
|
return QDateTime();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
return QFileInfo( _url.path() ).lastModified();
|
||||||
|
}
|
||||||
|
|
||||||
|
void KIPI::ImageInfoShared::addRef()
|
||||||
|
{
|
||||||
|
_count++;
|
||||||
|
}
|
||||||
|
|
||||||
|
void KIPI::ImageInfoShared::removeRef()
|
||||||
|
{
|
||||||
|
_count--;
|
||||||
|
if ( _count == 0 ) {
|
||||||
|
delete this;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
int KIPI::ImageInfoShared::angle()
|
||||||
|
{
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
void KIPI::ImageInfoShared::setAngle( int )
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
bool KIPI::ImageInfoShared::isTimeExact()
|
||||||
|
{
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
void KIPI::ImageInfoShared::setTime( const QDateTime& /*time*/, TimeSpec /*spec*/ )
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
void KIPI::ImageInfoShared::setTitle( const QString& )
|
||||||
|
{
|
||||||
|
kdWarning(51000) << "This method should only be invoked if the host application supports the KIPI::ImageTitlesWritable\n"
|
||||||
|
"If the host application do support that, then this function should\n"
|
||||||
|
"have been overriden in the host application.\n";
|
||||||
|
}
|
||||||
|
|
||||||
|
void KIPI::ImageInfoShared::cloneData( ImageInfoShared* other )
|
||||||
|
{
|
||||||
|
if ( _interface->hasFeature( ImageTitlesWritable ) )
|
||||||
|
setTitle( other->title() );
|
||||||
|
|
||||||
|
if ( _interface->hasFeature( ImagesHasComments ) )
|
||||||
|
setDescription( other->description() );
|
||||||
|
|
||||||
|
clearAttributes();
|
||||||
|
addAttributes( other->attributes() );
|
||||||
|
|
||||||
|
setTime( other->time( FromInfo ), FromInfo );
|
||||||
|
if ( _interface->hasFeature( SupportsDateRanges ) )
|
||||||
|
setTime( other->time( ToInfo ), ToInfo );
|
||||||
|
|
||||||
|
setAngle( other->angle() );
|
||||||
|
}
|
@ -0,0 +1,91 @@
|
|||||||
|
/* ============================================================
|
||||||
|
* File : imageinfoshared.h
|
||||||
|
* Authors: Jesper K. Pedersen <blackie@kde.org>
|
||||||
|
*
|
||||||
|
* Date : 2004-02-19
|
||||||
|
* Description :
|
||||||
|
*
|
||||||
|
* Copyright 2004 by Jesper K. Pedersen
|
||||||
|
*
|
||||||
|
* This program 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, 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 Library General Public License for more details.
|
||||||
|
*
|
||||||
|
* ============================================================ */
|
||||||
|
|
||||||
|
#ifndef KIPI_IMAGEINFOSHARED_H
|
||||||
|
#define KIPI_IMAGEINFOSHARED_H
|
||||||
|
|
||||||
|
// Qt includes.
|
||||||
|
|
||||||
|
#include <qstring.h>
|
||||||
|
#include <qmap.h>
|
||||||
|
#include <qdatetime.h>
|
||||||
|
#include <qvariant.h>
|
||||||
|
|
||||||
|
// KDE includes.
|
||||||
|
|
||||||
|
#include <kurl.h>
|
||||||
|
|
||||||
|
// LibKIPI includes.
|
||||||
|
|
||||||
|
#include "libkipi/imageinfo.h"
|
||||||
|
#include "libkipi/libkipi_export.h"
|
||||||
|
|
||||||
|
namespace KIPI
|
||||||
|
{
|
||||||
|
class Interface;
|
||||||
|
|
||||||
|
class LIBKIPI_EXPORT ImageInfoShared
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
ImageInfoShared( KIPI::Interface* interface, const KURL& url );
|
||||||
|
virtual ~ImageInfoShared() {}
|
||||||
|
virtual QString title() {return QString::null;}
|
||||||
|
virtual void setTitle( const QString& );
|
||||||
|
|
||||||
|
virtual QString description() = 0;
|
||||||
|
virtual void setDescription( const QString& ) = 0;
|
||||||
|
|
||||||
|
virtual QMap<QString,QVariant> attributes() = 0;
|
||||||
|
virtual void clearAttributes() = 0;
|
||||||
|
virtual void addAttributes( const QMap<QString,QVariant>& ) = 0;
|
||||||
|
|
||||||
|
virtual KURL path();
|
||||||
|
virtual QDateTime time( KIPI::TimeSpec spec );
|
||||||
|
virtual void setTime( const QDateTime& time, TimeSpec spec = FromInfo );
|
||||||
|
|
||||||
|
virtual bool isTimeExact();
|
||||||
|
|
||||||
|
virtual int size();
|
||||||
|
|
||||||
|
virtual int angle();
|
||||||
|
virtual void setAngle( int );
|
||||||
|
|
||||||
|
QString toString( const QVariant& );
|
||||||
|
|
||||||
|
virtual void cloneData( ImageInfoShared* other );
|
||||||
|
|
||||||
|
protected:
|
||||||
|
KURL _url;
|
||||||
|
|
||||||
|
private:
|
||||||
|
ImageInfoShared() {} // Disable
|
||||||
|
|
||||||
|
friend class ImageInfo;
|
||||||
|
void addRef();
|
||||||
|
void removeRef();
|
||||||
|
int _count;
|
||||||
|
Interface* _interface;
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
#endif /* IMAGEINFOSHARED_H */
|
||||||
|
|
@ -0,0 +1,221 @@
|
|||||||
|
/* ============================================================
|
||||||
|
* File : interface.cpp
|
||||||
|
* Authors: KIPI team developers (see AUTHORS files for details)
|
||||||
|
*
|
||||||
|
* Date : 2004-02
|
||||||
|
* Description :
|
||||||
|
*
|
||||||
|
* Copyright 2004 by the KIPI team
|
||||||
|
*
|
||||||
|
* This program 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, 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 Library General Public License for more details.
|
||||||
|
*
|
||||||
|
* ============================================================ */
|
||||||
|
|
||||||
|
/** @file interface.cpp */
|
||||||
|
|
||||||
|
// KDE includes.
|
||||||
|
|
||||||
|
#include <kdebug.h>
|
||||||
|
#include <kimageio.h>
|
||||||
|
|
||||||
|
// Local includes.
|
||||||
|
|
||||||
|
#include "pluginloader.h"
|
||||||
|
#include "interface.h"
|
||||||
|
|
||||||
|
/*!
|
||||||
|
@enum KIPI::Features
|
||||||
|
Not all host applications support the full subset of features that KIPI
|
||||||
|
allows access to. As an example <a
|
||||||
|
href="http://ktown.kde.org/kimdaba/">KimDaBa</a> do not support comments
|
||||||
|
for albums. Thus before a plugin expect a decant value for the comment,
|
||||||
|
it should check whether KIPI::AlbumsHaveComments are set. It does so
|
||||||
|
using KIPI::Interface::hasFeature()
|
||||||
|
When adding new items, remember to update "hasFeature( const QString& feature )"
|
||||||
|
and the hello world plugin.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\enum KIPI::AlbumsHaveComments
|
||||||
|
This feature specify that albums have descriptions associated to them.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\enum KIPI::ImagesHasComments
|
||||||
|
This feature specifies that images in the host application has descriptions associated to them.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\enum KIPI::ImagesHasTime
|
||||||
|
This feature specifies that images has a date associated with it, which the host application can display and set
|
||||||
|
*/
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\enum KIPI::SupportsDateRanges
|
||||||
|
This feature specify whether the host application supports that the user can specify a date range for images,
|
||||||
|
like 1998-2000.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\enum KIPI::AcceptNewImages
|
||||||
|
This feature specifies that the host application do accept new images.
|
||||||
|
Use \ref ImageCollection::uploadPath to find the location to place the image, and
|
||||||
|
\ref KIPI::Interface::addImage() to tell the host application about the new image.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\enum KIPI::ImageTitlesWritable
|
||||||
|
This features specifies whether the plugin can change the title for images
|
||||||
|
*/
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\enum KIPI::AlbumsHaveCategory
|
||||||
|
This feature specify that albums are category associated to them ('travels', 'friends', 'monuments', etc.).
|
||||||
|
*/
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\enum KIPI::AlbumsHaveCreationDate
|
||||||
|
This feature specify that albums are a creation date associated to them.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\enum KIPI::AlbumsUseFirstImagePreview
|
||||||
|
This feature specify that albums use the first image of the collection like preview.
|
||||||
|
This flag is used in ImageGallery, CDArchiving, and FinDuplicateImages dialog for
|
||||||
|
to lauch a preview of the album.
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
KIPI::Interface::Interface(QObject *parent, const char *name )
|
||||||
|
: QObject(parent, name)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
KIPI::Interface::~Interface()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
Tells the host app that the following images has changed on disk
|
||||||
|
*/
|
||||||
|
void KIPI::Interface::refreshImages( const KURL::List& )
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
Tells whether the host application under which the plugin currently executes a given feature.
|
||||||
|
See KIPI::Features for details on the individual features.
|
||||||
|
*/
|
||||||
|
bool KIPI::Interface::hasFeature( KIPI::Features feature )
|
||||||
|
{
|
||||||
|
return ( features() & feature ) != 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
bool KIPI::Interface::hasFeature( const QString& feature )
|
||||||
|
{
|
||||||
|
if ( feature == "AlbumsHaveComments" )
|
||||||
|
return hasFeature( KIPI::AlbumsHaveComments );
|
||||||
|
else if ( feature == "ImagesHasComments" )
|
||||||
|
return hasFeature( KIPI::ImagesHasComments );
|
||||||
|
else if ( feature == "ImagesHasTime" )
|
||||||
|
return hasFeature( KIPI::ImagesHasTime );
|
||||||
|
else if ( feature == "SupportsDateRanges" )
|
||||||
|
return hasFeature( KIPI::SupportsDateRanges );
|
||||||
|
else if ( feature == "AcceptNewImages" )
|
||||||
|
return hasFeature( KIPI::AcceptNewImages );
|
||||||
|
else if ( feature == "ImageTitlesWritable" )
|
||||||
|
return hasFeature( KIPI::ImageTitlesWritable );
|
||||||
|
else if ( feature == "AlbumsHaveCategory" )
|
||||||
|
return hasFeature( KIPI::AlbumsHaveCategory );
|
||||||
|
else if ( feature == "AlbumsHaveCreationDate" )
|
||||||
|
return hasFeature( KIPI::AlbumsHaveCreationDate );
|
||||||
|
else if ( feature == "AlbumsUseFirstImagePreview" )
|
||||||
|
return hasFeature( KIPI::AlbumsUseFirstImagePreview );
|
||||||
|
else if ( feature == "HostSupportsTags" )
|
||||||
|
return hasFeature( KIPI::HostSupportsTags );
|
||||||
|
else {
|
||||||
|
kdWarning( 51000 ) << "Unknown feature asked for in KIPI::Interface::hasFeature: " << feature << endl;
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
Tell the host application that a new image has been made available to it.
|
||||||
|
Returns true if the host application did accept the new image, otherwise err will be filled with
|
||||||
|
an error description.
|
||||||
|
*/
|
||||||
|
bool KIPI::Interface::addImage( const KURL&, QString& /*err*/ )
|
||||||
|
{
|
||||||
|
kdWarning(51000) << "Interface::addImage should only be invoked if the host application supports the KIPI::Features\n"
|
||||||
|
"AcceptNewImages - if the host application do support that, then this function should\n"
|
||||||
|
"have been overriden in the host application.\n";
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
void KIPI::Interface::delImage( const KURL& )
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
Returns list of all images in current album.
|
||||||
|
If there are no current album, the returned
|
||||||
|
KIPI::ImageCollection::isValid() will return false.
|
||||||
|
*/
|
||||||
|
KIPI::ImageCollection KIPI::Interface::currentAlbum()
|
||||||
|
{
|
||||||
|
// This implementation is just to be able to write documentation above.
|
||||||
|
return KIPI::ImageCollection();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
Current selection in a thumbnail view for example.
|
||||||
|
If there are no current selection, the returned
|
||||||
|
KIPI::ImageCollection::isValid() will return false.
|
||||||
|
*/
|
||||||
|
KIPI::ImageCollection KIPI::Interface::currentSelection()
|
||||||
|
{
|
||||||
|
// This implementation is just to be able to write documentation above.
|
||||||
|
return KIPI::ImageCollection();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
Returns a list of albums.
|
||||||
|
*/
|
||||||
|
QValueList<KIPI::ImageCollection> KIPI::Interface::allAlbums()
|
||||||
|
{
|
||||||
|
// This implementation is just to be able to write documentation above.
|
||||||
|
return QValueList<KIPI::ImageCollection>();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
Return a bitwise or of the KIPI::Features that thus application support.
|
||||||
|
*/
|
||||||
|
int KIPI::Interface::features() const
|
||||||
|
{
|
||||||
|
// This implementation is just to be able to write documentation above.
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
Return a list of images file extention will be used in the plugins for
|
||||||
|
to sort the files list before a treatment. The default implementation return,
|
||||||
|
the supported images formats by KDE.
|
||||||
|
*/
|
||||||
|
QString KIPI::Interface::fileExtensions()
|
||||||
|
{
|
||||||
|
QStringList KDEImagetypes = KImageIO::mimeTypes( KImageIO::Reading );
|
||||||
|
QString imagesFileFilter = KDEImagetypes.join(" ");
|
||||||
|
return ( imagesFileFilter.lower() + " " + imagesFileFilter.upper() );
|
||||||
|
}
|
||||||
|
|
||||||
|
#include "interface.moc"
|
@ -0,0 +1,94 @@
|
|||||||
|
/* ============================================================
|
||||||
|
* File : interface.h
|
||||||
|
* Authors: KIPI team developers (see AUTHORS files for details)
|
||||||
|
*
|
||||||
|
* Date : 2004-02
|
||||||
|
* Description :
|
||||||
|
*
|
||||||
|
* Copyright 2004 by the KIPI team
|
||||||
|
*
|
||||||
|
* This program 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, 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 Library General Public License for more details.
|
||||||
|
*
|
||||||
|
* ============================================================ */
|
||||||
|
|
||||||
|
/** @file interface.h */
|
||||||
|
#ifndef KIPI_INTERFACE_H
|
||||||
|
#define KIPI_INTERFACE_H
|
||||||
|
|
||||||
|
// Qt includes.
|
||||||
|
|
||||||
|
#include <qstring.h>
|
||||||
|
#include <qobject.h>
|
||||||
|
|
||||||
|
// KDE includes.
|
||||||
|
|
||||||
|
#include <kurl.h>
|
||||||
|
|
||||||
|
// Local includes.
|
||||||
|
|
||||||
|
#include "libkipi/imagecollection.h"
|
||||||
|
#include "libkipi/imageinfo.h"
|
||||||
|
#include "libkipi/libkipi_export.h"
|
||||||
|
|
||||||
|
/** @namespace KIPI */
|
||||||
|
namespace KIPI
|
||||||
|
{
|
||||||
|
enum Features {
|
||||||
|
AlbumsHaveComments = 1 << 0,
|
||||||
|
ImagesHasComments = 1 << 1,
|
||||||
|
ImagesHasTime = 1 << 2,
|
||||||
|
SupportsDateRanges = 1 << 3,
|
||||||
|
AcceptNewImages = 1 << 4,
|
||||||
|
ImageTitlesWritable = 1 << 5,
|
||||||
|
AlbumsHaveCategory = 1 << 6,
|
||||||
|
AlbumsHaveCreationDate = 1 << 7,
|
||||||
|
AlbumsUseFirstImagePreview = 1 << 8,
|
||||||
|
HostSupportsTags = 1 << 9
|
||||||
|
};
|
||||||
|
|
||||||
|
/** class Interface */
|
||||||
|
class LIBKIPI_EXPORT Interface : public QObject
|
||||||
|
{
|
||||||
|
Q_OBJECT
|
||||||
|
|
||||||
|
public:
|
||||||
|
Interface(QObject *parent, const char *name=0);
|
||||||
|
virtual ~Interface();
|
||||||
|
|
||||||
|
virtual ImageCollection currentAlbum() = 0;
|
||||||
|
virtual ImageCollection currentSelection() = 0;
|
||||||
|
virtual QValueList<ImageCollection> allAlbums() = 0;
|
||||||
|
|
||||||
|
virtual ImageInfo info( const KURL& ) = 0;
|
||||||
|
virtual bool addImage( const KURL&, QString& err );
|
||||||
|
virtual void delImage( const KURL& );
|
||||||
|
|
||||||
|
virtual void refreshImages( const KURL::List& );
|
||||||
|
|
||||||
|
virtual QString fileExtensions();
|
||||||
|
|
||||||
|
bool hasFeature( KIPI::Features feature );
|
||||||
|
|
||||||
|
protected:
|
||||||
|
virtual int features() const = 0;
|
||||||
|
|
||||||
|
private:
|
||||||
|
friend class PluginLoader;
|
||||||
|
bool hasFeature( const QString& feature );
|
||||||
|
|
||||||
|
signals:
|
||||||
|
void selectionChanged( bool hasSelection );
|
||||||
|
void currentAlbumChanged( bool anyAlbum );
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
#endif /* KIPI_INTERFACE_H */
|
After Width: | Height: | Size: 2.5 KiB |
@ -0,0 +1,37 @@
|
|||||||
|
/*
|
||||||
|
This file is part of libkipi project
|
||||||
|
Copyright (c) 2005 Laurent Montel <montel@kde.org>
|
||||||
|
|
||||||
|
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; see the file COPYING.LIB. If not, write to
|
||||||
|
the Free Software Foundation, Inc., 51 Franklin Steet, Fifth Floor,
|
||||||
|
Boston, MA 02110-1301, USA.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef _LIBKIPI_EXPORT_H
|
||||||
|
#define _LIBKIPI_EXPORT_H
|
||||||
|
|
||||||
|
#undef KDEMACROS_USABLE
|
||||||
|
|
||||||
|
#ifdef KDEMACROS_USABLE
|
||||||
|
#include <kdemacros.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef KDE_EXPORT
|
||||||
|
#define LIBKIPI_EXPORT KDE_EXPORT
|
||||||
|
#else
|
||||||
|
#define LIBKIPI_EXPORT
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif /* _LIBKIPI_EXPORT_H */
|
||||||
|
|
@ -0,0 +1,100 @@
|
|||||||
|
/**
|
||||||
|
\mainpage libkipi reference page.
|
||||||
|
|
||||||
|
This page will tell you both how to develop a new
|
||||||
|
plugin for KIPI, and how to add KIPI support to a new
|
||||||
|
application (referred to as host application).
|
||||||
|
|
||||||
|
You can find more information about KIPI at this <a
|
||||||
|
href="http://extragear.kde.org/apps/kipi">url</a>.
|
||||||
|
|
||||||
|
This documentation has been writen by Renchi Raju, Gilles Caulier,
|
||||||
|
Jesper K. Pedersen, and Aurelien Gateau.
|
||||||
|
|
||||||
|
<h1>Developing a new Plugin</h1>
|
||||||
|
The easiest way to start a new plugin, is to copy the hello world
|
||||||
|
plugin, which you may find in kdeextragear-libs-1/kipi-plugins. Please
|
||||||
|
also read <a
|
||||||
|
href="http://developer.kde.org/documentation/tutorials/developing-a-plugin-structure/index.html">
|
||||||
|
this tutorial</a> which tells in general about developing a plugin
|
||||||
|
structure for an application, but it also gives some background
|
||||||
|
information on how plugins are loaded, and especially on the macros
|
||||||
|
involved. The tutorial has been written by one of the KIPI authors, so
|
||||||
|
it matches fairly good the model of KIPI (except the part on merging
|
||||||
|
GUI's from plugins).
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<h2>General things to do to implement a plugin</h2>
|
||||||
|
Here is a list of things to do.
|
||||||
|
<ul>
|
||||||
|
<li> Create a class that inherits KIPI::Plugin. In the constructor you
|
||||||
|
must create instances of KAction for your application. The topmost
|
||||||
|
actions should be given to the Plugin super class using
|
||||||
|
KIPI::Plugin::addAction().
|
||||||
|
<li> As described in the tutorial <a href="http://developer.kde.org/documentation/tutorials/developing-a-plugin-structure/index.html#understanding_loading">here</a>, you must call the macro
|
||||||
|
<tt>K_EXPORT_COMPONENT_FACTORY</tt>.
|
||||||
|
<li> You also need to create a desktop file, as described <a href="http://developer.kde.org/documentation/tutorials/developing-a-plugin-structure/index.html#makefile_am_client">here</a>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<h2>Retrieving information from the host application</h2>
|
||||||
|
The above was the required step to build the plugin. The following will
|
||||||
|
tell you about the functions with which you communicate with the host
|
||||||
|
application.
|
||||||
|
|
||||||
|
The origin of all your communication with the host application is
|
||||||
|
\ref KIPI::Interface. You obtain a pointer to this by casting the parent
|
||||||
|
pointer given to your plugin during construction.
|
||||||
|
|
||||||
|
Selection of images can be obtained using
|
||||||
|
KIPI::Interface::currentSelection(), KIPI::Interface::currentAlbum() and
|
||||||
|
KIPI::Interface::allAlbums(). These methods uses KIPI::ImageCollection
|
||||||
|
to wrap a selection of images.
|
||||||
|
|
||||||
|
Finally to obtain information about individual images, call
|
||||||
|
KIPI::Interface::info(), which returns a KIPI::ImageInfo, with the
|
||||||
|
information.
|
||||||
|
|
||||||
|
When developing plugins, you should pay special attention to the fact the different
|
||||||
|
host applications may have different feature sets they
|
||||||
|
support. Information about what the host application support can be
|
||||||
|
obtained from KIPI::Interface::hasFeature().
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<h2>Utilities for Plugins</h2>
|
||||||
|
KIPI has a number of utilities useful when developing plugins:
|
||||||
|
<ul>
|
||||||
|
<li> use KIPI::ImageCollectionDialog to ask the user for an image.
|
||||||
|
<li> use KIPI::UploadWidget when the user should specify a directory to
|
||||||
|
write images into.
|
||||||
|
<li> KIPI::ThumbnailJob helps you load thumb nails of images.
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<h1>Adding KIPI support to a new host application.</h1>
|
||||||
|
To add KIPI support to your application you must inherit
|
||||||
|
KIPI::Interface, and give an instance of this class to
|
||||||
|
KIPI::PluginLoader. See \ref KIPI::PluginLoader for details on loading plugins.
|
||||||
|
|
||||||
|
To be able to create an instance of your subclass of KIPI::Interface,
|
||||||
|
you must of course implement all the pure virtual method of the super
|
||||||
|
class, among others this requires you to create and return instances of
|
||||||
|
KIPI::ImageCollection and KIPI::ImageInfo. The only way you can do so
|
||||||
|
are by giving the classes a pointer to a subclass of
|
||||||
|
KIPI::ImageCollectionShared and KIPI::ImageInfoShared. These sub classes
|
||||||
|
are also your responsibility to implement.
|
||||||
|
|
||||||
|
The reason why things are that complicated, are to solve the problem of
|
||||||
|
ownership of pointers to the classes in question. The
|
||||||
|
KIPI::ImageCollectionShared pointer you give to KIPI::ImageCollection
|
||||||
|
constructor will be the owned by the ImageCollection instance.
|
||||||
|
*/
|
@ -0,0 +1,91 @@
|
|||||||
|
/* ============================================================
|
||||||
|
* File : plugin.cpp
|
||||||
|
* Authors: KIPI team developers (see AUTHORS files for details)
|
||||||
|
*
|
||||||
|
* Date : 2004-02
|
||||||
|
* Description :
|
||||||
|
*
|
||||||
|
* Copyright 2004 by the KIPI team
|
||||||
|
*
|
||||||
|
* This program 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, 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 Library General Public License for more details.
|
||||||
|
*
|
||||||
|
* ============================================================ */
|
||||||
|
|
||||||
|
// Qt includes.
|
||||||
|
|
||||||
|
#include <qwidget.h>
|
||||||
|
|
||||||
|
// KDE includes.
|
||||||
|
|
||||||
|
#include <kaction.h>
|
||||||
|
#include <kinstance.h>
|
||||||
|
#include <kdebug.h>
|
||||||
|
|
||||||
|
// Local includes.
|
||||||
|
|
||||||
|
#include "plugin.h"
|
||||||
|
|
||||||
|
|
||||||
|
struct KIPI::Plugin::Private {
|
||||||
|
QMap<QWidget*, KActionCollection*> m_actionCollection;
|
||||||
|
KInstance* m_instance;
|
||||||
|
QMap<QWidget*, KActionPtrList> m_actions;
|
||||||
|
QWidget* m_defaultWidget;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
KIPI::Plugin::Plugin( KInstance* instance, QObject *parent, const char* name)
|
||||||
|
: QObject( parent, name)
|
||||||
|
{
|
||||||
|
d=new Private;
|
||||||
|
d->m_instance=instance;
|
||||||
|
}
|
||||||
|
|
||||||
|
KIPI::Plugin::~Plugin()
|
||||||
|
{
|
||||||
|
delete d;
|
||||||
|
}
|
||||||
|
|
||||||
|
KActionCollection* KIPI::Plugin::actionCollection( QWidget* widget )
|
||||||
|
{
|
||||||
|
if ( widget == 0 )
|
||||||
|
widget = d->m_defaultWidget;
|
||||||
|
|
||||||
|
if (!d->m_actionCollection.contains( widget ))
|
||||||
|
kdWarning( 51000 ) << "Error in the plugin. The plugin needs to call Plugin::setup( QWidget* ) "
|
||||||
|
<< "as the very first line when overriding the setup method." << endl;
|
||||||
|
return d->m_actionCollection[widget];
|
||||||
|
}
|
||||||
|
|
||||||
|
void KIPI::Plugin::addAction( KAction* action )
|
||||||
|
{
|
||||||
|
d->m_actions[d->m_defaultWidget].append( action );
|
||||||
|
}
|
||||||
|
|
||||||
|
KActionPtrList KIPI::Plugin::actions( QWidget* widget )
|
||||||
|
{
|
||||||
|
if ( widget == 0 )
|
||||||
|
widget = d->m_defaultWidget;
|
||||||
|
|
||||||
|
return d->m_actions[widget];
|
||||||
|
}
|
||||||
|
|
||||||
|
void KIPI::Plugin::setup( QWidget* widget )
|
||||||
|
{
|
||||||
|
d->m_defaultWidget = widget;
|
||||||
|
d->m_actions.insert( widget, KActionPtrList() );
|
||||||
|
QString name = QString( "action collection for %1" ).arg( widget->name() );
|
||||||
|
d->m_actionCollection.insert( widget, new KActionCollection( widget, widget, name.latin1(), d->m_instance ) );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -0,0 +1,76 @@
|
|||||||
|
/* ============================================================
|
||||||
|
* File : plugin.h
|
||||||
|
* Authors: KIPI team developers (see AUTHORS files for details)
|
||||||
|
*
|
||||||
|
* Date : 2004-02
|
||||||
|
* Description :
|
||||||
|
*
|
||||||
|
* Copyright 2004 by the KIPI team
|
||||||
|
*
|
||||||
|
* This program 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, 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 Library General Public License for more details.
|
||||||
|
*
|
||||||
|
* ============================================================ */
|
||||||
|
|
||||||
|
#ifndef KIPI_PLUGIN_H
|
||||||
|
#define KIPI_PLUGIN_H
|
||||||
|
|
||||||
|
// Qt includes.
|
||||||
|
|
||||||
|
#include <qobject.h>
|
||||||
|
|
||||||
|
// KDE includes.
|
||||||
|
|
||||||
|
#include <kaction.h>
|
||||||
|
|
||||||
|
// Lib KIPI includes.
|
||||||
|
|
||||||
|
#include "libkipi/interface.h"
|
||||||
|
|
||||||
|
#include "libkipi/libkipi_export.h"
|
||||||
|
|
||||||
|
class KInstance;
|
||||||
|
|
||||||
|
/** @namespace KIPI */
|
||||||
|
namespace KIPI
|
||||||
|
{
|
||||||
|
enum Category
|
||||||
|
{
|
||||||
|
IMAGESPLUGIN = 0,
|
||||||
|
EFFECTSPLUGIN,
|
||||||
|
TOOLSPLUGIN,
|
||||||
|
IMPORTPLUGIN,
|
||||||
|
EXPORTPLUGIN,
|
||||||
|
BATCHPLUGIN,
|
||||||
|
COLLECTIONSPLUGIN
|
||||||
|
};
|
||||||
|
|
||||||
|
class LIBKIPI_EXPORT Plugin : public QObject
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
Plugin( KInstance* instance, QObject *parent, const char* name);
|
||||||
|
virtual ~Plugin();
|
||||||
|
|
||||||
|
virtual void setup( QWidget* widget ) = 0;
|
||||||
|
KActionPtrList actions( QWidget* parent = 0 );
|
||||||
|
KActionCollection* actionCollection( QWidget* parent = 0 );
|
||||||
|
virtual Category category( KAction* action ) const = 0;
|
||||||
|
|
||||||
|
protected:
|
||||||
|
void addAction( KAction* action );
|
||||||
|
|
||||||
|
private:
|
||||||
|
struct Private;
|
||||||
|
Private* d;
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
#endif // KIPI_PLUGIN_H
|
@ -0,0 +1,388 @@
|
|||||||
|
/* ============================================================
|
||||||
|
* File : pluginloader.cpp
|
||||||
|
* Author: Renchi Raju <renchi@pooh.tam.uiuc.edu>
|
||||||
|
* Date : 2004-02-19
|
||||||
|
* Description :
|
||||||
|
*
|
||||||
|
* Copyright 2004 by Renchi Raju
|
||||||
|
|
||||||
|
* This program 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, 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 Library General Public License for more details.
|
||||||
|
*
|
||||||
|
* ============================================================ */
|
||||||
|
|
||||||
|
/** @file pluginloader.cpp */
|
||||||
|
|
||||||
|
#include <qstringlist.h>
|
||||||
|
|
||||||
|
#include <ktrader.h>
|
||||||
|
#include <kparts/componentfactory.h>
|
||||||
|
#include <kdebug.h>
|
||||||
|
#include <kdialog.h>
|
||||||
|
|
||||||
|
#include "plugin.h"
|
||||||
|
#include "pluginloader.h"
|
||||||
|
#include "interface.h"
|
||||||
|
#include <kconfig.h>
|
||||||
|
#include <qcheckbox.h>
|
||||||
|
#include <qlayout.h>
|
||||||
|
|
||||||
|
/**
|
||||||
|
\author Renchi Raju
|
||||||
|
\class KIPI::PluginLoader
|
||||||
|
This is the class that will help host applications to load plugins.
|
||||||
|
|
||||||
|
The host application must create an instance of the plugin loader, and
|
||||||
|
call the method loadPlugins() to get the plugins loaded. To ensure that
|
||||||
|
plugins are correctly removed from menus and toolbars when loaded and
|
||||||
|
unloaded after constructions, the application must connect to either the
|
||||||
|
signals plug() / unplug() or the signal replug(). These signals are
|
||||||
|
emitted when a plugin is to be inserted into the menus.
|
||||||
|
|
||||||
|
If your application is using XMLGUI, the easiest way to get the plugins
|
||||||
|
inserted into the menus is by adding an item in the ui.rc file looking
|
||||||
|
list this:
|
||||||
|
<ActionList name="image_actions"/>
|
||||||
|
|
||||||
|
Then plugin plugins into menus could be done with code similiar to this from KimDaBa:
|
||||||
|
\code
|
||||||
|
void slotReplug() {
|
||||||
|
unplugActionList( QString::fromLatin1("file_actions") );
|
||||||
|
unplugActionList( QString::fromLatin1("image_actions") );
|
||||||
|
unplugActionList( QString::fromLatin1("tool_actions") );
|
||||||
|
|
||||||
|
QPtrList<KAction> fileActions;
|
||||||
|
QPtrList<KAction> imageActions;
|
||||||
|
QPtrList<KAction> toolsActions;
|
||||||
|
|
||||||
|
KIPI::PluginLoader::PluginList list = _pluginLoader->pluginList();
|
||||||
|
for( KIPI::PluginLoader::PluginList::Iterator it = list.begin(); it != list.end(); ++it ) {
|
||||||
|
KIPI::Plugin* plugin = (*it)->plugin;
|
||||||
|
if ( !plugin || !(*it)->shouldLoad )
|
||||||
|
continue;
|
||||||
|
|
||||||
|
plugin->setup( this );
|
||||||
|
QPtrList<KAction>* popup = 0;
|
||||||
|
if ( plugin->category() == KIPI::IMAGESPLUGIN )
|
||||||
|
popup = &imageActions;
|
||||||
|
|
||||||
|
else if ( plugin->category() == KIPI::EXPORTPLUGIN ||
|
||||||
|
plugin->category() == KIPI::IMPORTPLUGIN )
|
||||||
|
popup = &fileActions;
|
||||||
|
|
||||||
|
else if ( plugin->category() == KIPI::TOOLSPLUGIN )
|
||||||
|
popup = &toolsActions;
|
||||||
|
|
||||||
|
if ( popup ) {
|
||||||
|
KActionPtrList actions = plugin->actions();
|
||||||
|
for( KActionPtrList::Iterator it = actions.begin(); it != actions.end(); ++it ) {
|
||||||
|
popup->append( *it );
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
kdDebug() << "No menu found\n";
|
||||||
|
}
|
||||||
|
plugin->actionCollection()->readShortcutSettings();
|
||||||
|
}
|
||||||
|
|
||||||
|
// For this to work I need to pass false as second arg for createGUI
|
||||||
|
plugActionList( QString::fromLatin1("file_actions"), fileActions );
|
||||||
|
plugActionList( QString::fromLatin1("image_actions"), imageActions );
|
||||||
|
plugActionList( QString::fromLatin1("tool_actions"), toolsActions );
|
||||||
|
}
|
||||||
|
\endcode
|
||||||
|
|
||||||
|
To configure which plugins should be loaded, simply call
|
||||||
|
PluginLoader::configWidget(), and insert the widget into your normal
|
||||||
|
configuration dialog.
|
||||||
|
*/
|
||||||
|
namespace KIPI {
|
||||||
|
|
||||||
|
//---------------------------------------------------------------------
|
||||||
|
//
|
||||||
|
// PluginLoader::Info
|
||||||
|
//
|
||||||
|
//---------------------------------------------------------------------
|
||||||
|
struct PluginLoader::Info::Private {
|
||||||
|
QString m_name;
|
||||||
|
QString m_comment;
|
||||||
|
QString m_library;
|
||||||
|
Plugin* m_plugin;
|
||||||
|
bool m_shouldLoad;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
PluginLoader::Info::Info(const QString& name, const QString& comment, const QString& library, bool shouldLoad)
|
||||||
|
{
|
||||||
|
d=new Private;
|
||||||
|
d->m_name=name;
|
||||||
|
d->m_comment=comment;
|
||||||
|
d->m_library=library;
|
||||||
|
d->m_plugin=0;
|
||||||
|
d->m_shouldLoad=shouldLoad;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
PluginLoader::Info::~Info()
|
||||||
|
{
|
||||||
|
delete d;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
QString PluginLoader::Info::name() const
|
||||||
|
{
|
||||||
|
return d->m_name;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
QString PluginLoader::Info::comment() const
|
||||||
|
{
|
||||||
|
return d->m_comment;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
QString PluginLoader::Info::library() const
|
||||||
|
{
|
||||||
|
return d->m_library;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Plugin* PluginLoader::Info::plugin() const
|
||||||
|
{
|
||||||
|
return d->m_plugin;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void PluginLoader::Info::setPlugin(Plugin* plugin)
|
||||||
|
{
|
||||||
|
d->m_plugin=plugin;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
bool PluginLoader::Info::shouldLoad() const
|
||||||
|
{
|
||||||
|
return d->m_shouldLoad;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void PluginLoader::Info::setShouldLoad(bool value)
|
||||||
|
{
|
||||||
|
d->m_shouldLoad=value;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
//---------------------------------------------------------------------
|
||||||
|
//
|
||||||
|
// PluginLoader
|
||||||
|
//
|
||||||
|
//---------------------------------------------------------------------
|
||||||
|
static PluginLoader* s_instance = 0;
|
||||||
|
|
||||||
|
|
||||||
|
struct PluginLoader::Private
|
||||||
|
{
|
||||||
|
PluginList m_pluginList;
|
||||||
|
Interface* m_interface;
|
||||||
|
QStringList m_ignores;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
PluginLoader::PluginLoader( const QStringList& ignores, Interface* interface )
|
||||||
|
{
|
||||||
|
Q_ASSERT( s_instance == 0 );
|
||||||
|
s_instance = this;
|
||||||
|
|
||||||
|
d=new Private;
|
||||||
|
d->m_interface = interface;
|
||||||
|
d->m_ignores = ignores;
|
||||||
|
|
||||||
|
KTrader::OfferList offers = KTrader::self()->query("KIPI/Plugin");
|
||||||
|
KConfig* config = KGlobal::config();
|
||||||
|
config->setGroup( QString::fromLatin1( "KIPI/EnabledPlugin" ) );
|
||||||
|
|
||||||
|
KTrader::OfferList::ConstIterator iter;
|
||||||
|
for(iter = offers.begin(); iter != offers.end(); ++iter) {
|
||||||
|
|
||||||
|
KService::Ptr service = *iter;
|
||||||
|
QString name = service->name();
|
||||||
|
QString comment = service->comment();
|
||||||
|
QString library = service->library();
|
||||||
|
QStringList reqFeatures = service->property( QString::fromLatin1( "X-KIPI-ReqFeatures" ) ).toStringList();
|
||||||
|
|
||||||
|
if (library.isEmpty() || name.isEmpty() ) {
|
||||||
|
kdWarning( 51001 ) << "KIPI::PluginLoader: Plugin had an empty name or library file - this should not happen." << endl;
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
if ( d->m_ignores.contains( name ) ) {
|
||||||
|
kdDebug( 51001 ) << "KIPI::PluginLoader: plugin " << name << " is in the ignore list for host application" << endl;
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
bool appHasAllReqFeatures=true;
|
||||||
|
for( QStringList::Iterator featureIt = reqFeatures.begin(); featureIt != reqFeatures.end(); ++featureIt ) {
|
||||||
|
if ( !d->m_interface->hasFeature( *featureIt ) ) {
|
||||||
|
kdDebug( 51001 ) << "Plugin " << name << " was not loaded because the host application is missing\n"
|
||||||
|
<< "the feature " << *featureIt << endl;
|
||||||
|
appHasAllReqFeatures=false;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
bool load = config->readBoolEntry( name, true );
|
||||||
|
|
||||||
|
if (!appHasAllReqFeatures)
|
||||||
|
continue;
|
||||||
|
|
||||||
|
Info* info = new Info( name, comment, library, load );
|
||||||
|
d->m_pluginList.append( info );
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
PluginLoader::~PluginLoader()
|
||||||
|
{
|
||||||
|
delete d;
|
||||||
|
}
|
||||||
|
|
||||||
|
void PluginLoader::loadPlugins()
|
||||||
|
{
|
||||||
|
for( PluginList::Iterator it = d->m_pluginList.begin(); it != d->m_pluginList.end(); ++it ) {
|
||||||
|
loadPlugin( *it );
|
||||||
|
}
|
||||||
|
emit replug();
|
||||||
|
}
|
||||||
|
|
||||||
|
void PluginLoader::loadPlugin( Info* info )
|
||||||
|
{
|
||||||
|
if ( info->plugin() == 0 && info->shouldLoad() ) {
|
||||||
|
Plugin *plugin = 0;
|
||||||
|
int error;
|
||||||
|
plugin = KParts::ComponentFactory
|
||||||
|
::createInstanceFromLibrary<Plugin>(info->library().local8Bit().data(),
|
||||||
|
d->m_interface, 0, QStringList(), &error);
|
||||||
|
|
||||||
|
if (plugin)
|
||||||
|
kdDebug( 51001 ) << "KIPI::PluginLoader: Loaded plugin " << plugin->name()<< endl;
|
||||||
|
else
|
||||||
|
{
|
||||||
|
kdWarning( 51001 ) << "KIPI::PluginLoader:: createInstanceFromLibrary returned 0 for "
|
||||||
|
<< info->name()
|
||||||
|
<< " (" << info->library() << ")"
|
||||||
|
<< " with error number "
|
||||||
|
<< error << endl;
|
||||||
|
if (error == KParts::ComponentFactory::ErrNoLibrary)
|
||||||
|
kdWarning( 51001 ) << "KLibLoader says: "
|
||||||
|
<< KLibLoader::self()->lastErrorMessage() << endl;
|
||||||
|
}
|
||||||
|
info->setPlugin(plugin);
|
||||||
|
}
|
||||||
|
if ( info->plugin() ) // Do not emit if we had trouble loading the plugin.
|
||||||
|
emit PluginLoader::instance()->plug( info );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
const PluginLoader::PluginList& PluginLoader::pluginList()
|
||||||
|
{
|
||||||
|
return d->m_pluginList;
|
||||||
|
}
|
||||||
|
|
||||||
|
PluginLoader* PluginLoader::instance()
|
||||||
|
{
|
||||||
|
Q_ASSERT( s_instance != 0);
|
||||||
|
return s_instance;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
//---------------------------------------------------------------------
|
||||||
|
//
|
||||||
|
// ConfigWidget
|
||||||
|
//
|
||||||
|
//---------------------------------------------------------------------
|
||||||
|
ConfigWidget* PluginLoader::configWidget( QWidget* parent )
|
||||||
|
{
|
||||||
|
return new ConfigWidget( parent );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
class PluginCheckBox :public QCheckBox
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
PluginCheckBox( PluginLoader::Info* info, QWidget* parent )
|
||||||
|
: QCheckBox( info->comment(), parent ), info( info )
|
||||||
|
{
|
||||||
|
setChecked( info->shouldLoad() );
|
||||||
|
}
|
||||||
|
PluginLoader::Info* info;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
struct ConfigWidget::Private
|
||||||
|
{
|
||||||
|
QValueList< PluginCheckBox* > _boxes;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
ConfigWidget::ConfigWidget( QWidget* parent )
|
||||||
|
:QScrollView( parent, "KIPI::PluginLoader::ConfigWidget" )
|
||||||
|
{
|
||||||
|
d=new Private;
|
||||||
|
QWidget* top = new QWidget( viewport() );
|
||||||
|
addChild( top );
|
||||||
|
setResizePolicy( AutoOneFit );
|
||||||
|
|
||||||
|
QVBoxLayout* lay = new QVBoxLayout( top, KDialog::marginHint(), KDialog::spacingHint() );
|
||||||
|
|
||||||
|
PluginLoader::PluginList list = PluginLoader::instance()->d->m_pluginList;
|
||||||
|
for( PluginLoader::PluginList::Iterator it = list.begin(); it != list.end(); ++it ) {
|
||||||
|
PluginCheckBox* cb = new PluginCheckBox( *it, top );
|
||||||
|
lay->addWidget( cb );
|
||||||
|
d->_boxes.append( cb );
|
||||||
|
}
|
||||||
|
|
||||||
|
lay->addStretch(10);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
ConfigWidget::~ConfigWidget()
|
||||||
|
{
|
||||||
|
delete d;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void ConfigWidget::apply()
|
||||||
|
{
|
||||||
|
KConfig* config = KGlobal::config();
|
||||||
|
config->setGroup( QString::fromLatin1( "KIPI/EnabledPlugin" ) );
|
||||||
|
bool changes = false;
|
||||||
|
|
||||||
|
for( QValueList<PluginCheckBox*>::Iterator it = d->_boxes.begin(); it != d->_boxes.end(); ++it ) {
|
||||||
|
bool orig = (*it)->info->shouldLoad();
|
||||||
|
bool load = (*it)->isChecked();
|
||||||
|
if ( orig != load ) {
|
||||||
|
changes = true;
|
||||||
|
config->writeEntry( (*it)->info->name(), load );
|
||||||
|
(*it)->info->setShouldLoad(load);
|
||||||
|
if ( load ) {
|
||||||
|
PluginLoader::instance()->loadPlugin( (*it)->info);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
if ( (*it)->info->plugin() ) // Do not emit if we had trouble loading plugin.
|
||||||
|
emit PluginLoader::instance()->unplug( (*it)->info);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
emit PluginLoader::instance()->replug();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
} // namespace
|
||||||
|
|
||||||
|
#include "pluginloader.moc"
|
@ -0,0 +1,102 @@
|
|||||||
|
/* ============================================================
|
||||||
|
* File : pluginloader.h
|
||||||
|
* Author: Renchi Raju <renchi@pooh.tam.uiuc.edu>
|
||||||
|
* Date : 2004-02-19
|
||||||
|
* Description :
|
||||||
|
*
|
||||||
|
* Copyright 2004 by Renchi Raju
|
||||||
|
|
||||||
|
* This program 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, 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 Library General Public License for more details.
|
||||||
|
*
|
||||||
|
* ============================================================ */
|
||||||
|
|
||||||
|
#ifndef KIPI_PLUGINLOADER_H
|
||||||
|
#define KIPI_PLUGINLOADER_H
|
||||||
|
|
||||||
|
#include "libkipi/interface.h"
|
||||||
|
#include "libkipi/libkipi_export.h"
|
||||||
|
#include <qwidget.h>
|
||||||
|
#include <qscrollview.h>
|
||||||
|
|
||||||
|
|
||||||
|
namespace KIPI
|
||||||
|
{
|
||||||
|
class Plugin;
|
||||||
|
class Interface;
|
||||||
|
class ConfigWidget;
|
||||||
|
|
||||||
|
class LIBKIPI_EXPORT PluginLoader :public QObject
|
||||||
|
{
|
||||||
|
Q_OBJECT
|
||||||
|
public:
|
||||||
|
class LIBKIPI_EXPORT Info
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
Info( const QString& name, const QString& comment, const QString& library, bool shouldLoad );
|
||||||
|
~Info();
|
||||||
|
QString name() const;
|
||||||
|
|
||||||
|
QString comment() const;
|
||||||
|
|
||||||
|
QString library() const;
|
||||||
|
|
||||||
|
Plugin* plugin() const;
|
||||||
|
void setPlugin(Plugin*);
|
||||||
|
|
||||||
|
bool shouldLoad() const;
|
||||||
|
void setShouldLoad(bool);
|
||||||
|
|
||||||
|
private:
|
||||||
|
struct Private;
|
||||||
|
Private* d;
|
||||||
|
};
|
||||||
|
|
||||||
|
PluginLoader( const QStringList& ignores, Interface* interface );
|
||||||
|
virtual ~PluginLoader();
|
||||||
|
void loadPlugins();
|
||||||
|
static PluginLoader* instance();
|
||||||
|
ConfigWidget* configWidget( QWidget* parent );
|
||||||
|
|
||||||
|
typedef QValueList<Info*> PluginList;
|
||||||
|
|
||||||
|
const PluginList& pluginList();
|
||||||
|
|
||||||
|
void loadPlugin( Info* );
|
||||||
|
|
||||||
|
signals:
|
||||||
|
void plug( KIPI::PluginLoader::Info* );
|
||||||
|
void unplug( KIPI::PluginLoader::Info* );
|
||||||
|
void replug();
|
||||||
|
|
||||||
|
private:
|
||||||
|
friend class ConfigWidget;
|
||||||
|
friend class PluginCheckBox;
|
||||||
|
|
||||||
|
struct Private;
|
||||||
|
Private* d;
|
||||||
|
};
|
||||||
|
|
||||||
|
class LIBKIPI_EXPORT ConfigWidget :public QScrollView
|
||||||
|
{
|
||||||
|
Q_OBJECT
|
||||||
|
public:
|
||||||
|
ConfigWidget( QWidget* parent );
|
||||||
|
~ConfigWidget();
|
||||||
|
public slots:
|
||||||
|
void apply();
|
||||||
|
private:
|
||||||
|
struct Private;
|
||||||
|
Private* d;
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
#endif /* PLUGINLOADER_H */
|
@ -0,0 +1,209 @@
|
|||||||
|
/* ============================================================
|
||||||
|
* File : uploadwidget.cpp
|
||||||
|
* Authors: KIPI team developers (see AUTHORS files for details)
|
||||||
|
*
|
||||||
|
* Date : 2004-02
|
||||||
|
* Description :
|
||||||
|
*
|
||||||
|
* Copyright 2004 by the KIPI team
|
||||||
|
*
|
||||||
|
* This program 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, 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 Library General Public License for more details.
|
||||||
|
*
|
||||||
|
* ============================================================ */
|
||||||
|
|
||||||
|
// Qt includes.
|
||||||
|
|
||||||
|
#include <qlayout.h>
|
||||||
|
#include <qheader.h>
|
||||||
|
#include <qlistview.h>
|
||||||
|
#include <qdir.h>
|
||||||
|
|
||||||
|
// KDE includes
|
||||||
|
|
||||||
|
#include <kdebug.h>
|
||||||
|
#include <klocale.h>
|
||||||
|
#include <kio/jobclasses.h>
|
||||||
|
#include <kmessagebox.h>
|
||||||
|
|
||||||
|
#include <kdeversion.h>
|
||||||
|
#if KDE_VERSION >= 0x30200
|
||||||
|
#include <kinputdialog.h>
|
||||||
|
#else
|
||||||
|
#include <klineeditdlg.h>
|
||||||
|
#define KInputDialog KLineEditDlg
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// Local includes.
|
||||||
|
|
||||||
|
#include "uploadwidget.h"
|
||||||
|
#include "libkipi/imagecollection.h"
|
||||||
|
|
||||||
|
|
||||||
|
struct KIPI::UploadWidget::Private
|
||||||
|
{
|
||||||
|
KFileTreeView* m_treeView;
|
||||||
|
KFileTreeBranch* m_branch;
|
||||||
|
QStringList m_pendingPath;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\class KIPI::UploadWidget
|
||||||
|
This widget is used to specify an upload directory for new images.
|
||||||
|
*/
|
||||||
|
|
||||||
|
KIPI::UploadWidget::UploadWidget( KIPI::Interface* interface, QWidget* parent, const char* name )
|
||||||
|
: QWidget( parent, name )
|
||||||
|
{
|
||||||
|
d = new Private;
|
||||||
|
|
||||||
|
QVBoxLayout* layout = new QVBoxLayout( this, 0 );
|
||||||
|
d->m_treeView = new KFileTreeView( this );
|
||||||
|
d->m_treeView->setRootIsDecorated( true );
|
||||||
|
layout->addWidget( d->m_treeView );
|
||||||
|
|
||||||
|
// Fetch the current album, so we can start out there.
|
||||||
|
KIPI::ImageCollection album = interface->currentAlbum();
|
||||||
|
|
||||||
|
// If no current album selected, get the first album in the list.
|
||||||
|
if ( !album.isValid() || !album.isDirectory() )
|
||||||
|
album = interface->allAlbums().first();
|
||||||
|
|
||||||
|
d->m_branch = d->m_treeView->addBranch( QDir::cleanDirPath(album.uploadRoot().path()),
|
||||||
|
album.uploadRootName() );
|
||||||
|
d->m_treeView->setDirOnlyMode( d->m_branch, true );
|
||||||
|
|
||||||
|
d->m_treeView->addColumn( i18n("Folder" ) );
|
||||||
|
|
||||||
|
d->m_treeView->header()->setStretchEnabled( true, 0 );
|
||||||
|
d->m_treeView->header()->hide();
|
||||||
|
|
||||||
|
QString root = album.uploadRoot().path();
|
||||||
|
QString uploadPath = album.isDirectory() ? album.uploadPath().path() : root;
|
||||||
|
|
||||||
|
root = QDir::cleanDirPath(root);
|
||||||
|
uploadPath = QDir::cleanDirPath(uploadPath);
|
||||||
|
|
||||||
|
if ( !uploadPath.startsWith( root ) )
|
||||||
|
{
|
||||||
|
kdWarning(51000) << "Error in Host application: uploadPath() should start with uploadRoot()." << endl
|
||||||
|
<< "uploadPath() = " << album.uploadPath().prettyURL() << endl
|
||||||
|
<< "uploadRoot() = " << album.uploadRoot().prettyURL() << endl;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
uploadPath = uploadPath.mid( root.length() );
|
||||||
|
|
||||||
|
d->m_pendingPath = QStringList::split( "/", uploadPath, false );
|
||||||
|
|
||||||
|
connect( d->m_branch, SIGNAL( populateFinished(KFileTreeViewItem *) ),
|
||||||
|
this, SLOT( slotPopulateFinished(KFileTreeViewItem *) ) );
|
||||||
|
|
||||||
|
d->m_branch->setOpen(true);
|
||||||
|
}
|
||||||
|
|
||||||
|
connect( d->m_treeView, SIGNAL( executed(QListViewItem *) ),
|
||||||
|
this, SLOT( slotFolderSelected(QListViewItem *) ) );
|
||||||
|
}
|
||||||
|
|
||||||
|
KIPI::UploadWidget::~UploadWidget()
|
||||||
|
{
|
||||||
|
delete d;
|
||||||
|
}
|
||||||
|
|
||||||
|
KURL KIPI::UploadWidget::path() const
|
||||||
|
{
|
||||||
|
return d->m_treeView->currentURL();
|
||||||
|
}
|
||||||
|
|
||||||
|
void KIPI::UploadWidget::load( )
|
||||||
|
{
|
||||||
|
kdWarning() << "KIPI::UploadWidget::load(): This method is obsolete\n";
|
||||||
|
}
|
||||||
|
|
||||||
|
void KIPI::UploadWidget::slotPopulateFinished( KFileTreeViewItem * parentItem )
|
||||||
|
{
|
||||||
|
if ( d->m_pendingPath.isEmpty() )
|
||||||
|
{
|
||||||
|
disconnect( d->m_branch, SIGNAL( populateFinished(KFileTreeViewItem *) ),
|
||||||
|
this, SLOT( slotPopulateFinished(KFileTreeViewItem *) ) );
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
QString itemName = d->m_pendingPath.front();
|
||||||
|
|
||||||
|
d->m_pendingPath.pop_front();
|
||||||
|
|
||||||
|
QListViewItem * item;
|
||||||
|
for ( item = parentItem->firstChild(); item; item = item->nextSibling() )
|
||||||
|
{
|
||||||
|
if ( item->text(0) == itemName )
|
||||||
|
{
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if ( !item )
|
||||||
|
{
|
||||||
|
kdDebug( 51000 ) << "Unable to open " << itemName << endl;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
item->setOpen( true );
|
||||||
|
d->m_treeView->setSelected( item, true );
|
||||||
|
d->m_treeView->ensureItemVisible ( item );
|
||||||
|
|
||||||
|
KFileTreeViewItem * ftvItem = static_cast<KFileTreeViewItem *>( item );
|
||||||
|
if ( ftvItem->alreadyListed() )
|
||||||
|
slotPopulateFinished( ftvItem );
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
void KIPI::UploadWidget::mkdir()
|
||||||
|
{
|
||||||
|
if ( !path().isValid() )
|
||||||
|
{
|
||||||
|
KMessageBox::error( this, i18n("Please select a directory first.") );
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
bool ok;
|
||||||
|
QString dir = KInputDialog::getText( i18n("Create Directory"),
|
||||||
|
i18n("<qt>Enter new directory name (to be created as subdir of %1):</qt>")
|
||||||
|
.arg(path().prettyURL()), "", &ok, this);
|
||||||
|
|
||||||
|
if (!ok) return;
|
||||||
|
|
||||||
|
KURL url = path();
|
||||||
|
url.addPath( dir );
|
||||||
|
|
||||||
|
KIO::SimpleJob* job = KIO::mkdir(url);
|
||||||
|
|
||||||
|
connect(job, SIGNAL(result(KIO::Job*)),
|
||||||
|
this, SLOT(slotAlbumCreated(KIO::Job*)));
|
||||||
|
}
|
||||||
|
|
||||||
|
void KIPI::UploadWidget::slotAlbumCreated(KIO::Job* job)
|
||||||
|
{
|
||||||
|
int code = job->error();
|
||||||
|
|
||||||
|
if ( code )
|
||||||
|
job->showErrorDialog( this );
|
||||||
|
}
|
||||||
|
|
||||||
|
void KIPI::UploadWidget::slotFolderSelected(QListViewItem *)
|
||||||
|
{
|
||||||
|
emit folderItemSelected(d->m_treeView->currentURL());
|
||||||
|
}
|
||||||
|
|
||||||
|
#include "uploadwidget.moc"
|
@ -0,0 +1,75 @@
|
|||||||
|
/* ============================================================
|
||||||
|
* File : uploadwidget.h
|
||||||
|
* Authors: KIPI team developers (see AUTHORS files for details)
|
||||||
|
*
|
||||||
|
* Date : 2004-02-19
|
||||||
|
* Description :
|
||||||
|
*
|
||||||
|
* Copyright 2004 by the KIPI team
|
||||||
|
*
|
||||||
|
* This program 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, 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 Library General Public License for more details.
|
||||||
|
*
|
||||||
|
* ============================================================ */
|
||||||
|
|
||||||
|
|
||||||
|
#ifndef KIPI_UPLOADWIDGET_H
|
||||||
|
#define KIPI_UPLOADWIDGET_H
|
||||||
|
|
||||||
|
// Qt includes.
|
||||||
|
|
||||||
|
#include <qwidget.h>
|
||||||
|
|
||||||
|
// KDE includes.
|
||||||
|
|
||||||
|
#include <kfiletreeview.h>
|
||||||
|
#include <kurl.h>
|
||||||
|
|
||||||
|
// LibKIPI includes.
|
||||||
|
|
||||||
|
#include "libkipi/interface.h"
|
||||||
|
#include "libkipi/libkipi_export.h"
|
||||||
|
|
||||||
|
class QListViewItem;
|
||||||
|
|
||||||
|
namespace KIPI
|
||||||
|
{
|
||||||
|
class LIBKIPI_EXPORT UploadWidget :public QWidget
|
||||||
|
{
|
||||||
|
Q_OBJECT
|
||||||
|
|
||||||
|
public:
|
||||||
|
UploadWidget( KIPI::Interface* interface, QWidget* parent, const char* name = 0 );
|
||||||
|
~UploadWidget();
|
||||||
|
KURL path() const;
|
||||||
|
|
||||||
|
public slots:
|
||||||
|
void mkdir();
|
||||||
|
|
||||||
|
signals :
|
||||||
|
void folderItemSelected(const KURL &url);
|
||||||
|
|
||||||
|
protected slots:
|
||||||
|
void load();
|
||||||
|
void slotAlbumCreated(KIO::Job* job);
|
||||||
|
void slotFolderSelected(QListViewItem *);
|
||||||
|
|
||||||
|
private slots:
|
||||||
|
void slotPopulateFinished(KFileTreeViewItem *);
|
||||||
|
|
||||||
|
private:
|
||||||
|
struct Private;
|
||||||
|
Private* d;
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
#endif /* KIPI_UPLOADWIDGET_H */
|
||||||
|
|
@ -0,0 +1,31 @@
|
|||||||
|
/* ============================================================
|
||||||
|
* File : version.h
|
||||||
|
* Authors: Gilles Caulier <caulier dot gilles at free.fr>
|
||||||
|
* Date : 2004-09-09
|
||||||
|
* Description : KIPI release ID header.
|
||||||
|
*
|
||||||
|
* Copyright 2004 by Gilles Caulier
|
||||||
|
*
|
||||||
|
* 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, 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.
|
||||||
|
*
|
||||||
|
* ============================================================ */
|
||||||
|
|
||||||
|
|
||||||
|
#ifndef KIPI_VERSION_H
|
||||||
|
#define KIPI_VERSION_H
|
||||||
|
|
||||||
|
static const char kipi_version[] = "0.1.5";
|
||||||
|
|
||||||
|
#define KIPI_VERSION 0x000105
|
||||||
|
|
||||||
|
#endif // KIPI_VERSION_H
|
||||||
|
|
After Width: | Height: | Size: 32 KiB |
After Width: | Height: | Size: 14 KiB |
@ -0,0 +1 @@
|
|||||||
|
SUBDIRS = $(AUTODIRS)
|
@ -0,0 +1,3 @@
|
|||||||
|
KDE_LANG = ar
|
||||||
|
SUBDIRS = $(AUTODIRS)
|
||||||
|
POFILES = AUTO
|
@ -0,0 +1,125 @@
|
|||||||
|
# translation of libkipi.po to
|
||||||
|
#
|
||||||
|
# محمد سعد Mohamed SAAD <metehyi@free.fr>, 2006.
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: libkipi\n"
|
||||||
|
"POT-Creation-Date: 2006-10-03 08:51+0200\n"
|
||||||
|
"PO-Revision-Date: 2006-08-10 18:01+0200\n"
|
||||||
|
"Last-Translator: محمد سعد Mohamed SAAD <metehyi@free.fr>\n"
|
||||||
|
"Language-Team: <ar@li.org>\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"X-Generator: KBabel 1.11.2\n"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:171
|
||||||
|
msgid "Status"
|
||||||
|
msgstr "حالة"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:172
|
||||||
|
msgid "Current Actions"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:177
|
||||||
|
msgid "<p>This is the current tasks list released."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:184
|
||||||
|
msgid "<p>This is the list current percent task released."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:85
|
||||||
|
msgid "Folder"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:176
|
||||||
|
msgid "Please select a directory first."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:181
|
||||||
|
msgid "Create Directory"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:182
|
||||||
|
msgid "<qt>Enter new directory name (to be created as subdir of %1):</qt>"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionshared.cpp:81
|
||||||
|
msgid "Images"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:109
|
||||||
|
msgid "Invert Selection"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:110
|
||||||
|
msgid "Select None"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:283
|
||||||
|
msgid "Images:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:300
|
||||||
|
msgid "Comments:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:308
|
||||||
|
msgid "Category:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:317
|
||||||
|
msgid "Date:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:90 libkipi/imagedialog.cpp:110
|
||||||
|
msgid "Select Image From Album"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:128
|
||||||
|
msgid "Image selector dialog"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:130
|
||||||
|
msgid "A Kipi dialog for image selection"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:139
|
||||||
|
msgid "Kipi Plugins Handbooks"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:147
|
||||||
|
msgid "Album Name"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:152
|
||||||
|
msgid "Image Name"
|
||||||
|
msgstr "اسم الصورة"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:161 libkipi/imagedialog.cpp:240
|
||||||
|
msgid "No image selected"
|
||||||
|
msgstr "لم تختار صورة"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:274
|
||||||
|
msgid "No images selected"
|
||||||
|
msgstr "لم تختار صور"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:293
|
||||||
|
#, c-format
|
||||||
|
msgid ""
|
||||||
|
"_n: 1 image selected\n"
|
||||||
|
"%n images selected"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: _translatorinfo.cpp:1
|
||||||
|
msgid ""
|
||||||
|
"_: NAME OF TRANSLATORS\n"
|
||||||
|
"Your names"
|
||||||
|
msgstr "Mohamed SAAD محمد سعد"
|
||||||
|
|
||||||
|
#: _translatorinfo.cpp:3
|
||||||
|
msgid ""
|
||||||
|
"_: EMAIL OF TRANSLATORS\n"
|
||||||
|
"Your emails"
|
||||||
|
msgstr "metehyi@free.fr"
|
@ -0,0 +1,3 @@
|
|||||||
|
KDE_LANG = br
|
||||||
|
SUBDIRS = $(AUTODIRS)
|
||||||
|
POFILES = AUTO
|
@ -0,0 +1,3 @@
|
|||||||
|
KDE_LANG = ca
|
||||||
|
SUBDIRS = $(AUTODIRS)
|
||||||
|
POFILES = AUTO
|
@ -0,0 +1,124 @@
|
|||||||
|
# translation of libkipi.po to Catalan
|
||||||
|
# Albert Astals Cid <astals11@terra.es>, 2004, 2005.
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: libkipi\n"
|
||||||
|
"POT-Creation-Date: 2006-10-03 08:51+0200\n"
|
||||||
|
"PO-Revision-Date: 2005-04-29 17:01+0200\n"
|
||||||
|
"Last-Translator: Albert Astals Cid <astals11@terra.es>\n"
|
||||||
|
"Language-Team: Catalan <kde-i18n-ca@kde.org>\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"X-Generator: KBabel 1.9.1\n"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:171
|
||||||
|
msgid "Status"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:172
|
||||||
|
msgid "Current Actions"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:177
|
||||||
|
msgid "<p>This is the current tasks list released."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:184
|
||||||
|
msgid "<p>This is the list current percent task released."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:85
|
||||||
|
msgid "Folder"
|
||||||
|
msgstr "Carpeta"
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:176
|
||||||
|
msgid "Please select a directory first."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:181
|
||||||
|
msgid "Create Directory"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:182
|
||||||
|
msgid "<qt>Enter new directory name (to be created as subdir of %1):</qt>"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionshared.cpp:81
|
||||||
|
msgid "Images"
|
||||||
|
msgstr "Imatges"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:109
|
||||||
|
msgid "Invert Selection"
|
||||||
|
msgstr "Inverteix la selecció"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:110
|
||||||
|
msgid "Select None"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:283
|
||||||
|
msgid "Images:"
|
||||||
|
msgstr "Imatges:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:300
|
||||||
|
msgid "Comments:"
|
||||||
|
msgstr "Comentaris:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:308
|
||||||
|
msgid "Category:"
|
||||||
|
msgstr "Categoria:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:317
|
||||||
|
msgid "Date:"
|
||||||
|
msgstr "Data:"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:90 libkipi/imagedialog.cpp:110
|
||||||
|
msgid "Select Image From Album"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:128
|
||||||
|
msgid "Image selector dialog"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:130
|
||||||
|
msgid "A Kipi dialog for image selection"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:139
|
||||||
|
msgid "Kipi Plugins Handbooks"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:147
|
||||||
|
msgid "Album Name"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:152
|
||||||
|
msgid "Image Name"
|
||||||
|
msgstr "Nom d'imatge"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:161 libkipi/imagedialog.cpp:240
|
||||||
|
msgid "No image selected"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:274
|
||||||
|
msgid "No images selected"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:293
|
||||||
|
#, c-format
|
||||||
|
msgid ""
|
||||||
|
"_n: 1 image selected\n"
|
||||||
|
"%n images selected"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: _translatorinfo.cpp:1
|
||||||
|
msgid ""
|
||||||
|
"_: NAME OF TRANSLATORS\n"
|
||||||
|
"Your names"
|
||||||
|
msgstr "Albert Astals Cid"
|
||||||
|
|
||||||
|
#: _translatorinfo.cpp:3
|
||||||
|
msgid ""
|
||||||
|
"_: EMAIL OF TRANSLATORS\n"
|
||||||
|
"Your emails"
|
||||||
|
msgstr "astals11@terra.es"
|
@ -0,0 +1,3 @@
|
|||||||
|
KDE_LANG = cs
|
||||||
|
SUBDIRS = $(AUTODIRS)
|
||||||
|
POFILES = AUTO
|
@ -0,0 +1,133 @@
|
|||||||
|
# translation of libkipi.po to
|
||||||
|
# translation of libkipi.po to cs_CZ
|
||||||
|
# translation of libkipi.po to Czech
|
||||||
|
# Lukáš Tinkl <lukas@kde.org>, 2005.
|
||||||
|
# Klara Cihlarova <koty@seznam.cz>, 2005.
|
||||||
|
# Jakub Friedl <jfriedl@suse.cz>, 2005, 2006.
|
||||||
|
#
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: libkipi\n"
|
||||||
|
"POT-Creation-Date: 2006-10-03 08:51+0200\n"
|
||||||
|
"PO-Revision-Date: 2006-07-14 10:46+0200\n"
|
||||||
|
"Last-Translator: Jakub Friedl <jfriedl@suse.cz>\n"
|
||||||
|
"Language-Team: <cs@li.org>\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"X-Generator: KBabel 1.10.2\n"
|
||||||
|
"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:171
|
||||||
|
msgid "Status"
|
||||||
|
msgstr "Stav"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:172
|
||||||
|
msgid "Current Actions"
|
||||||
|
msgstr "Aktuální činnosti"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:177
|
||||||
|
msgid "<p>This is the current tasks list released."
|
||||||
|
msgstr "<p>Toto je seznam aktuálních činností."
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:184
|
||||||
|
msgid "<p>This is the list current percent task released."
|
||||||
|
msgstr "<p>Toto je seznam procen aktuálních činností."
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:85
|
||||||
|
msgid "Folder"
|
||||||
|
msgstr "Složka"
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:176
|
||||||
|
msgid "Please select a directory first."
|
||||||
|
msgstr "Nejprve prosím zvolte adresář."
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:181
|
||||||
|
msgid "Create Directory"
|
||||||
|
msgstr "Vytvořit adresář"
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:182
|
||||||
|
msgid "<qt>Enter new directory name (to be created as subdir of %1):</qt>"
|
||||||
|
msgstr "<qt>Zadejte jméno adresáře (vytvoří se jako podadresář %1):</qt>"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionshared.cpp:81
|
||||||
|
msgid "Images"
|
||||||
|
msgstr "Obrázky"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:109
|
||||||
|
msgid "Invert Selection"
|
||||||
|
msgstr "Invertovat výběr"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:110
|
||||||
|
msgid "Select None"
|
||||||
|
msgstr "Zrušit výběr"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:283
|
||||||
|
msgid "Images:"
|
||||||
|
msgstr "Obrázky:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:300
|
||||||
|
msgid "Comments:"
|
||||||
|
msgstr "Komentáře:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:308
|
||||||
|
msgid "Category:"
|
||||||
|
msgstr "Kategorie:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:317
|
||||||
|
msgid "Date:"
|
||||||
|
msgstr "Datum:"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:90 libkipi/imagedialog.cpp:110
|
||||||
|
msgid "Select Image From Album"
|
||||||
|
msgstr "Vybrat obrázek z alba"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:128
|
||||||
|
msgid "Image selector dialog"
|
||||||
|
msgstr "Dialog pro výběr obrázku"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:130
|
||||||
|
msgid "A Kipi dialog for image selection"
|
||||||
|
msgstr "Kipi dialog pro výběr obrázků"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:139
|
||||||
|
msgid "Kipi Plugins Handbooks"
|
||||||
|
msgstr "Příručka Kipi modulů"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:147
|
||||||
|
msgid "Album Name"
|
||||||
|
msgstr "Název alba"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:152
|
||||||
|
msgid "Image Name"
|
||||||
|
msgstr "Název obrázku"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:161 libkipi/imagedialog.cpp:240
|
||||||
|
msgid "No image selected"
|
||||||
|
msgstr "Žádný obrázek není vybrán"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:274
|
||||||
|
msgid "No images selected"
|
||||||
|
msgstr "Žádný obrázek není vybrán"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:293
|
||||||
|
#, c-format
|
||||||
|
msgid ""
|
||||||
|
"_n: 1 image selected\n"
|
||||||
|
"%n images selected"
|
||||||
|
msgstr ""
|
||||||
|
"Vybrán 1 obrázek\n"
|
||||||
|
"Vybrány %n obrázky\n"
|
||||||
|
"Vybráno %n obrázků"
|
||||||
|
|
||||||
|
#: _translatorinfo.cpp:1
|
||||||
|
msgid ""
|
||||||
|
"_: NAME OF TRANSLATORS\n"
|
||||||
|
"Your names"
|
||||||
|
msgstr "Michal Škrobák,Lukáš Tinkl,Klára Cihlářová"
|
||||||
|
|
||||||
|
#: _translatorinfo.cpp:3
|
||||||
|
msgid ""
|
||||||
|
"_: EMAIL OF TRANSLATORS\n"
|
||||||
|
"Your emails"
|
||||||
|
msgstr "skrobak@wo.cz,lukas@kde.org,koty@seznam.cz"
|
@ -0,0 +1,3 @@
|
|||||||
|
KDE_LANG = cy
|
||||||
|
SUBDIRS = $(AUTODIRS)
|
||||||
|
POFILES = AUTO
|
@ -0,0 +1,3 @@
|
|||||||
|
KDE_LANG = da
|
||||||
|
SUBDIRS = $(AUTODIRS)
|
||||||
|
POFILES = AUTO
|
@ -0,0 +1,136 @@
|
|||||||
|
# Danish translation of libkipi
|
||||||
|
# Copyright (C).
|
||||||
|
# Rune Rønde Laursen <runerl@skjoldhoej.dk>, 2004, 2005.
|
||||||
|
# Erik Kjær Pedersen <erik@binghamton.edu>, 2005.
|
||||||
|
#
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: libkipi\n"
|
||||||
|
"POT-Creation-Date: 2006-10-03 08:51+0200\n"
|
||||||
|
"PO-Revision-Date: 2005-05-12 08:47-0400\n"
|
||||||
|
"Last-Translator: Erik Kjær Pedersen <erik@binghamton.edu>\n"
|
||||||
|
"Language-Team: Danish <dansk@klid.dk>\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"X-Generator: KBabel 1.10\n"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:171
|
||||||
|
msgid "Status"
|
||||||
|
msgstr "Status"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:172
|
||||||
|
msgid "Current Actions"
|
||||||
|
msgstr "Aktuelle handlinger"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:177
|
||||||
|
msgid "<p>This is the current tasks list released."
|
||||||
|
msgstr "<p>Dette er den aktuelle opgaveliste."
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:184
|
||||||
|
msgid "<p>This is the list current percent task released."
|
||||||
|
msgstr "<p>Dette er den aktuelle procentvise opgaveliste."
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:85
|
||||||
|
msgid "Folder"
|
||||||
|
msgstr "Mappe"
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:176
|
||||||
|
msgid "Please select a directory first."
|
||||||
|
msgstr "Vælg venligst en mappe først."
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:181
|
||||||
|
msgid "Create Directory"
|
||||||
|
msgstr "Opret mappe"
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:182
|
||||||
|
msgid "<qt>Enter new directory name (to be created as subdir of %1):</qt>"
|
||||||
|
msgstr ""
|
||||||
|
"<qt>Skriv navnet på den nye mappe (der skal oprettes som undermappe i %1):</qt>"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionshared.cpp:81
|
||||||
|
msgid "Images"
|
||||||
|
msgstr "Billeder"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:109
|
||||||
|
msgid "Invert Selection"
|
||||||
|
msgstr "Inverter markering"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:110
|
||||||
|
msgid "Select None"
|
||||||
|
msgstr "Fjern alle markeringer"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:283
|
||||||
|
msgid "Images:"
|
||||||
|
msgstr "Billeder:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:300
|
||||||
|
msgid "Comments:"
|
||||||
|
msgstr "Kommentarer:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:308
|
||||||
|
msgid "Category:"
|
||||||
|
msgstr "Kategori:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:317
|
||||||
|
msgid "Date:"
|
||||||
|
msgstr "Dato:"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:90 libkipi/imagedialog.cpp:110
|
||||||
|
msgid "Select Image From Album"
|
||||||
|
msgstr "Markér et billede fra albummet"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:128
|
||||||
|
msgid "Image selector dialog"
|
||||||
|
msgstr "Billedvælgerdialog"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:130
|
||||||
|
msgid "A Kipi dialog for image selection"
|
||||||
|
msgstr "Et KIPI-plugin til billedvalg"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:139
|
||||||
|
msgid "Kipi Plugins Handbooks"
|
||||||
|
msgstr "Håndbøger til KIPI-plugin"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:147
|
||||||
|
msgid "Album Name"
|
||||||
|
msgstr "Albummets navn"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:152
|
||||||
|
msgid "Image Name"
|
||||||
|
msgstr "Billednavn"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:161 libkipi/imagedialog.cpp:240
|
||||||
|
msgid "No image selected"
|
||||||
|
msgstr "Intet billede markeret"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:274
|
||||||
|
msgid "No images selected"
|
||||||
|
msgstr "Ingen billeder markeret"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:293
|
||||||
|
#, c-format
|
||||||
|
msgid ""
|
||||||
|
"_n: 1 image selected\n"
|
||||||
|
"%n images selected"
|
||||||
|
msgstr ""
|
||||||
|
"1 billede markeret\n"
|
||||||
|
"%n billeder markeret"
|
||||||
|
|
||||||
|
#: _translatorinfo.cpp:1
|
||||||
|
msgid ""
|
||||||
|
"_: NAME OF TRANSLATORS\n"
|
||||||
|
"Your names"
|
||||||
|
msgstr "Rune Rønde Laursen"
|
||||||
|
|
||||||
|
#: _translatorinfo.cpp:3
|
||||||
|
msgid ""
|
||||||
|
"_: EMAIL OF TRANSLATORS\n"
|
||||||
|
"Your emails"
|
||||||
|
msgstr "runerl@skjoldhoej.dk"
|
||||||
|
|
||||||
|
#~ msgid "Batch process dialog"
|
||||||
|
#~ msgstr "Dialog for gruppekørsel"
|
||||||
|
|
||||||
|
#~ msgid "A Kipi dialog for batch process operations"
|
||||||
|
#~ msgstr "Et KIPI-plugin til gruppevis behandling af billeder"
|
@ -0,0 +1,3 @@
|
|||||||
|
KDE_LANG = de
|
||||||
|
SUBDIRS = $(AUTODIRS)
|
||||||
|
POFILES = AUTO
|
@ -0,0 +1,132 @@
|
|||||||
|
# translation of libkipi.po to German
|
||||||
|
# Oliver Dörr <kde@doerr-privat.de>, 2004, 2005.
|
||||||
|
# Cyrill Helg <linux@solnet.ch>, 2004.
|
||||||
|
# Stephan Johach <hunsum@gmx.de>, 2005.
|
||||||
|
# Thomas Reitelbach <tr@erdfunkstelle.de>, 2006.
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: libkipi\n"
|
||||||
|
"POT-Creation-Date: 2006-10-03 08:51+0200\n"
|
||||||
|
"PO-Revision-Date: 2006-07-06 20:15+0200\n"
|
||||||
|
"Last-Translator: Thomas Reitelbach <tr@erdfunkstelle.de>\n"
|
||||||
|
"Language-Team: German <kde-i18n-de@kde.org>\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"X-Generator: KBabel 1.11.2\n"
|
||||||
|
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:171
|
||||||
|
msgid "Status"
|
||||||
|
msgstr "Status"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:172
|
||||||
|
msgid "Current Actions"
|
||||||
|
msgstr "Aktuelle Aufgaben"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:177
|
||||||
|
msgid "<p>This is the current tasks list released."
|
||||||
|
msgstr "<p>Das ist die Liste der gelösten Aufgaben."
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:184
|
||||||
|
msgid "<p>This is the list current percent task released."
|
||||||
|
msgstr "<p>Das ist die Liste der prozentual gelösten Aufgaben."
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:85
|
||||||
|
msgid "Folder"
|
||||||
|
msgstr "Ordner"
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:176
|
||||||
|
msgid "Please select a directory first."
|
||||||
|
msgstr "Bitte wählen Sie zuerst einen Ordner."
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:181
|
||||||
|
msgid "Create Directory"
|
||||||
|
msgstr "Ordner erstellen"
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:182
|
||||||
|
msgid "<qt>Enter new directory name (to be created as subdir of %1):</qt>"
|
||||||
|
msgstr ""
|
||||||
|
"<qt>Geben Sie den neuen Ordnernamen an, der als Unterordner von %1 erstellt "
|
||||||
|
"wird:</qt>"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionshared.cpp:81
|
||||||
|
msgid "Images"
|
||||||
|
msgstr "Bilder"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:109
|
||||||
|
msgid "Invert Selection"
|
||||||
|
msgstr "Auswahl umkehren"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:110
|
||||||
|
msgid "Select None"
|
||||||
|
msgstr "Auswahl aufheben"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:283
|
||||||
|
msgid "Images:"
|
||||||
|
msgstr "Bilder:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:300
|
||||||
|
msgid "Comments:"
|
||||||
|
msgstr "Kommentare:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:308
|
||||||
|
msgid "Category:"
|
||||||
|
msgstr "Kategorie:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:317
|
||||||
|
msgid "Date:"
|
||||||
|
msgstr "Datum:"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:90 libkipi/imagedialog.cpp:110
|
||||||
|
msgid "Select Image From Album"
|
||||||
|
msgstr "Bitte wählen Sie ein Bild aus dem Album."
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:128
|
||||||
|
msgid "Image selector dialog"
|
||||||
|
msgstr "Bildauswahldialog"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:130
|
||||||
|
msgid "A Kipi dialog for image selection"
|
||||||
|
msgstr "Ein KIPI-Dialog zum Auswählen von Bildern"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:139
|
||||||
|
msgid "Kipi Plugins Handbooks"
|
||||||
|
msgstr "Handbücher der KIPI-Module"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:147
|
||||||
|
msgid "Album Name"
|
||||||
|
msgstr "Albumname"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:152
|
||||||
|
msgid "Image Name"
|
||||||
|
msgstr "Bildname"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:161 libkipi/imagedialog.cpp:240
|
||||||
|
msgid "No image selected"
|
||||||
|
msgstr "Kein Bild ausgewählt"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:274
|
||||||
|
msgid "No images selected"
|
||||||
|
msgstr "Keine Bilder ausgewählt"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:293
|
||||||
|
#, c-format
|
||||||
|
msgid ""
|
||||||
|
"_n: 1 image selected\n"
|
||||||
|
"%n images selected"
|
||||||
|
msgstr ""
|
||||||
|
"1 Bild ausgewählt\n"
|
||||||
|
"%n Bilder ausgewählt"
|
||||||
|
|
||||||
|
#: _translatorinfo.cpp:1
|
||||||
|
msgid ""
|
||||||
|
"_: NAME OF TRANSLATORS\n"
|
||||||
|
"Your names"
|
||||||
|
msgstr "Oliver Dörr"
|
||||||
|
|
||||||
|
#: _translatorinfo.cpp:3
|
||||||
|
msgid ""
|
||||||
|
"_: EMAIL OF TRANSLATORS\n"
|
||||||
|
"Your emails"
|
||||||
|
msgstr "kde@doerr-privat.de"
|
@ -0,0 +1,3 @@
|
|||||||
|
KDE_LANG = el
|
||||||
|
SUBDIRS = $(AUTODIRS)
|
||||||
|
POFILES = AUTO
|
@ -0,0 +1,3 @@
|
|||||||
|
KDE_LANG = en_GB
|
||||||
|
SUBDIRS = $(AUTODIRS)
|
||||||
|
POFILES = AUTO
|
@ -0,0 +1,133 @@
|
|||||||
|
# translation of libkipi.po to British English
|
||||||
|
# Andrew Coles <andrew_coles@yahoo.co.uk>, 2004, 2005.
|
||||||
|
# Malcolm Hunter <malcolm.hunter@gmx.co.uk>, 2004.
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: libkipi\n"
|
||||||
|
"POT-Creation-Date: 2006-10-03 08:51+0200\n"
|
||||||
|
"PO-Revision-Date: 2005-05-16 13:52+0100\n"
|
||||||
|
"Last-Translator: Andrew Coles <andrew_coles@yahoo.co.uk>\n"
|
||||||
|
"Language-Team: British English <kde-en-gb@kde.me.uk>\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"X-Generator: KBabel 1.9\n"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:171
|
||||||
|
msgid "Status"
|
||||||
|
msgstr "Status"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:172
|
||||||
|
msgid "Current Actions"
|
||||||
|
msgstr "Current Actions"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:177
|
||||||
|
msgid "<p>This is the current tasks list released."
|
||||||
|
msgstr "<p>This is the current tasks list released."
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:184
|
||||||
|
msgid "<p>This is the list current percent task released."
|
||||||
|
msgstr "<p>This is the list current percent task released."
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:85
|
||||||
|
msgid "Folder"
|
||||||
|
msgstr "Folder"
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:176
|
||||||
|
msgid "Please select a directory first."
|
||||||
|
msgstr "Please select a directory first."
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:181
|
||||||
|
msgid "Create Directory"
|
||||||
|
msgstr "Create Directory"
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:182
|
||||||
|
msgid "<qt>Enter new directory name (to be created as subdir of %1):</qt>"
|
||||||
|
msgstr "<qt>Enter new directory name (to be created as subdir of %1):</qt>"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionshared.cpp:81
|
||||||
|
msgid "Images"
|
||||||
|
msgstr "Images"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:109
|
||||||
|
msgid "Invert Selection"
|
||||||
|
msgstr "Invert Selection"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:110
|
||||||
|
msgid "Select None"
|
||||||
|
msgstr "Select None"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:283
|
||||||
|
msgid "Images:"
|
||||||
|
msgstr "Images:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:300
|
||||||
|
msgid "Comments:"
|
||||||
|
msgstr "Comments:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:308
|
||||||
|
msgid "Category:"
|
||||||
|
msgstr "Category:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:317
|
||||||
|
msgid "Date:"
|
||||||
|
msgstr "Date:"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:90 libkipi/imagedialog.cpp:110
|
||||||
|
msgid "Select Image From Album"
|
||||||
|
msgstr "Select Image From Album"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:128
|
||||||
|
msgid "Image selector dialog"
|
||||||
|
msgstr "Image selector dialogue"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:130
|
||||||
|
msgid "A Kipi dialog for image selection"
|
||||||
|
msgstr "A Kipi dialogue for image selection"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:139
|
||||||
|
msgid "Kipi Plugins Handbooks"
|
||||||
|
msgstr "Kipi Plugins Handbooks"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:147
|
||||||
|
msgid "Album Name"
|
||||||
|
msgstr "Album Name"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:152
|
||||||
|
msgid "Image Name"
|
||||||
|
msgstr "Image Name"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:161 libkipi/imagedialog.cpp:240
|
||||||
|
msgid "No image selected"
|
||||||
|
msgstr "No image selected"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:274
|
||||||
|
msgid "No images selected"
|
||||||
|
msgstr "No images selected"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:293
|
||||||
|
#, c-format
|
||||||
|
msgid ""
|
||||||
|
"_n: 1 image selected\n"
|
||||||
|
"%n images selected"
|
||||||
|
msgstr ""
|
||||||
|
"1 image selected\n"
|
||||||
|
"%n images selected"
|
||||||
|
|
||||||
|
#: _translatorinfo.cpp:1
|
||||||
|
msgid ""
|
||||||
|
"_: NAME OF TRANSLATORS\n"
|
||||||
|
"Your names"
|
||||||
|
msgstr "Andrew Coles"
|
||||||
|
|
||||||
|
#: _translatorinfo.cpp:3
|
||||||
|
msgid ""
|
||||||
|
"_: EMAIL OF TRANSLATORS\n"
|
||||||
|
"Your emails"
|
||||||
|
msgstr "andrew_coles@yahoo.co.uk"
|
||||||
|
|
||||||
|
#~ msgid "Batch process dialog"
|
||||||
|
#~ msgstr "Batch process dialogue"
|
||||||
|
|
||||||
|
#~ msgid "A Kipi dialog for batch process operations"
|
||||||
|
#~ msgstr "A Kipi dialogue for batch process operations"
|
@ -0,0 +1,3 @@
|
|||||||
|
KDE_LANG = es
|
||||||
|
SUBDIRS = $(AUTODIRS)
|
||||||
|
POFILES = AUTO
|
@ -0,0 +1,139 @@
|
|||||||
|
# translation of libkipi.po to Español
|
||||||
|
# translation of libkipi.po to Spanish
|
||||||
|
# Translation of libkipi to Castilian aka Spanish
|
||||||
|
# Enrique Matias Sanchez <cronopios@gmail.com>, 2004, 2005.
|
||||||
|
# Eloy Cuadra <ecuadra@eloihr.net>, 2005.
|
||||||
|
# santi <santi@kde-es.org>, 2005.
|
||||||
|
#
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: libkipi\n"
|
||||||
|
"POT-Creation-Date: 2006-10-03 08:51+0200\n"
|
||||||
|
"PO-Revision-Date: 2005-10-08 16:26+0200\n"
|
||||||
|
"Last-Translator: santi <santi@kde-es.org>\n"
|
||||||
|
"Language-Team: Español <kde-es@kybs.de>\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"X-Generator: KBabel 1.10.2\n"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:171
|
||||||
|
msgid "Status"
|
||||||
|
msgstr "Estado"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:172
|
||||||
|
msgid "Current Actions"
|
||||||
|
msgstr "Acciones actuales"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:177
|
||||||
|
msgid "<p>This is the current tasks list released."
|
||||||
|
msgstr "<p>Ésta es la lista de las tareas terminadas actualmente."
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:184
|
||||||
|
msgid "<p>This is the list current percent task released."
|
||||||
|
msgstr "<p>Éste es el porcentaje de las tareas terminadas actualmente."
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:85
|
||||||
|
msgid "Folder"
|
||||||
|
msgstr "Carpeta"
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:176
|
||||||
|
msgid "Please select a directory first."
|
||||||
|
msgstr "Por favor, seleccione antes un directorio."
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:181
|
||||||
|
msgid "Create Directory"
|
||||||
|
msgstr "Crear directorio"
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:182
|
||||||
|
msgid "<qt>Enter new directory name (to be created as subdir of %1):</qt>"
|
||||||
|
msgstr ""
|
||||||
|
"<qt>Introduzca el nombre del nuevo directorio (para crearse como subdirectorio "
|
||||||
|
"de %1):</qt>"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionshared.cpp:81
|
||||||
|
msgid "Images"
|
||||||
|
msgstr "Imágenes"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:109
|
||||||
|
msgid "Invert Selection"
|
||||||
|
msgstr "Invertir la selección"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:110
|
||||||
|
msgid "Select None"
|
||||||
|
msgstr "No seleccionar nada"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:283
|
||||||
|
msgid "Images:"
|
||||||
|
msgstr "Imágenes:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:300
|
||||||
|
msgid "Comments:"
|
||||||
|
msgstr "Comentarios:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:308
|
||||||
|
msgid "Category:"
|
||||||
|
msgstr "Categoría:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:317
|
||||||
|
msgid "Date:"
|
||||||
|
msgstr "Fecha:"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:90 libkipi/imagedialog.cpp:110
|
||||||
|
msgid "Select Image From Album"
|
||||||
|
msgstr "Seleccionae una imagen del álbum"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:128
|
||||||
|
msgid "Image selector dialog"
|
||||||
|
msgstr "Ventana de selección de imágenes"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:130
|
||||||
|
msgid "A Kipi dialog for image selection"
|
||||||
|
msgstr "Una ventana de Kipi para seleccionar imágenes"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:139
|
||||||
|
msgid "Kipi Plugins Handbooks"
|
||||||
|
msgstr "Manuales de las extensiones de Kipi"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:147
|
||||||
|
msgid "Album Name"
|
||||||
|
msgstr "Nombre del álbum"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:152
|
||||||
|
msgid "Image Name"
|
||||||
|
msgstr "Nombre de la imagen"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:161 libkipi/imagedialog.cpp:240
|
||||||
|
msgid "No image selected"
|
||||||
|
msgstr "Ninguna imagen seleccionada"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:274
|
||||||
|
msgid "No images selected"
|
||||||
|
msgstr "Ninguna imagen seleccionada"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:293
|
||||||
|
#, c-format
|
||||||
|
msgid ""
|
||||||
|
"_n: 1 image selected\n"
|
||||||
|
"%n images selected"
|
||||||
|
msgstr ""
|
||||||
|
"Una imagen seleccionada\n"
|
||||||
|
"%n imágenes seleccionadas"
|
||||||
|
|
||||||
|
#: _translatorinfo.cpp:1
|
||||||
|
msgid ""
|
||||||
|
"_: NAME OF TRANSLATORS\n"
|
||||||
|
"Your names"
|
||||||
|
msgstr "Enrique Matías Sánchez (Quique)"
|
||||||
|
|
||||||
|
#: _translatorinfo.cpp:3
|
||||||
|
msgid ""
|
||||||
|
"_: EMAIL OF TRANSLATORS\n"
|
||||||
|
"Your emails"
|
||||||
|
msgstr "cronopios@gmail.com"
|
||||||
|
|
||||||
|
#~ msgid "Batch process dialog"
|
||||||
|
#~ msgstr "Ventana de procesamiento de conjuntos de imágenes"
|
||||||
|
|
||||||
|
#~ msgid "A Kipi dialog for batch process operations"
|
||||||
|
#~ msgstr "Una ventana de Kipi para operaciones de procesamiento de conjuntos de imágenes"
|
@ -0,0 +1,3 @@
|
|||||||
|
KDE_LANG = et
|
||||||
|
SUBDIRS = $(AUTODIRS)
|
||||||
|
POFILES = AUTO
|
@ -0,0 +1,134 @@
|
|||||||
|
# translation of libkipi.po to Estonian
|
||||||
|
# Copyright (C) 2004 Free Software Foundation, Inc.
|
||||||
|
# Marek Laane <bald@starman.ee>, 2004-2005.
|
||||||
|
#
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: libkipi\n"
|
||||||
|
"POT-Creation-Date: 2006-10-03 08:51+0200\n"
|
||||||
|
"PO-Revision-Date: 2005-05-21 16:10+0300\n"
|
||||||
|
"Last-Translator: Marek Laane <bald@starman.ee>\n"
|
||||||
|
"Language-Team: Estonian <kde-et@linux.ee>\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"X-Generator: KBabel 1.3.1\n"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:171
|
||||||
|
msgid "Status"
|
||||||
|
msgstr "Olek"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:172
|
||||||
|
msgid "Current Actions"
|
||||||
|
msgstr "Praegused toimingud"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:177
|
||||||
|
msgid "<p>This is the current tasks list released."
|
||||||
|
msgstr "<p>See on praeguseks sooritatud toimingute nimekiri."
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:184
|
||||||
|
msgid "<p>This is the list current percent task released."
|
||||||
|
msgstr "<p>See on praeguseks sooritatud toimingute protsent."
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:85
|
||||||
|
msgid "Folder"
|
||||||
|
msgstr "Kataloog"
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:176
|
||||||
|
msgid "Please select a directory first."
|
||||||
|
msgstr "Palun vali esmalt kataloog."
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:181
|
||||||
|
msgid "Create Directory"
|
||||||
|
msgstr "Kataloogi loomine"
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:182
|
||||||
|
msgid "<qt>Enter new directory name (to be created as subdir of %1):</qt>"
|
||||||
|
msgstr "<qt>Uue kataloogi nimi (luuakse %1 alamkataloogina):</qt>"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionshared.cpp:81
|
||||||
|
msgid "Images"
|
||||||
|
msgstr "Pildid"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:109
|
||||||
|
msgid "Invert Selection"
|
||||||
|
msgstr "Inverteeri valik"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:110
|
||||||
|
msgid "Select None"
|
||||||
|
msgstr "Tühista kõigi valik"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:283
|
||||||
|
msgid "Images:"
|
||||||
|
msgstr "Pildid:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:300
|
||||||
|
msgid "Comments:"
|
||||||
|
msgstr "Kommentaarid:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:308
|
||||||
|
msgid "Category:"
|
||||||
|
msgstr "Kategooria:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:317
|
||||||
|
msgid "Date:"
|
||||||
|
msgstr "Kuupäev:"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:90 libkipi/imagedialog.cpp:110
|
||||||
|
msgid "Select Image From Album"
|
||||||
|
msgstr "Pildi valik albumist"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:128
|
||||||
|
msgid "Image selector dialog"
|
||||||
|
msgstr "Pildivalija dialoog"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:130
|
||||||
|
msgid "A Kipi dialog for image selection"
|
||||||
|
msgstr "Kipi pildi valimise dialoog"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:139
|
||||||
|
msgid "Kipi Plugins Handbooks"
|
||||||
|
msgstr "Kipi pluginate käsiraamatud"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:147
|
||||||
|
msgid "Album Name"
|
||||||
|
msgstr "Albumi nimi"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:152
|
||||||
|
msgid "Image Name"
|
||||||
|
msgstr "Pildi nimi"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:161 libkipi/imagedialog.cpp:240
|
||||||
|
msgid "No image selected"
|
||||||
|
msgstr "Pilti pole valitud"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:274
|
||||||
|
msgid "No images selected"
|
||||||
|
msgstr "Pilti pole valitud"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:293
|
||||||
|
#, c-format
|
||||||
|
msgid ""
|
||||||
|
"_n: 1 image selected\n"
|
||||||
|
"%n images selected"
|
||||||
|
msgstr ""
|
||||||
|
"1 pilt valitud\n"
|
||||||
|
"%n pilti valitud"
|
||||||
|
|
||||||
|
#: _translatorinfo.cpp:1
|
||||||
|
msgid ""
|
||||||
|
"_: NAME OF TRANSLATORS\n"
|
||||||
|
"Your names"
|
||||||
|
msgstr "Marek Laane"
|
||||||
|
|
||||||
|
#: _translatorinfo.cpp:3
|
||||||
|
msgid ""
|
||||||
|
"_: EMAIL OF TRANSLATORS\n"
|
||||||
|
"Your emails"
|
||||||
|
msgstr "bald@starman.ee"
|
||||||
|
|
||||||
|
#~ msgid "Batch process dialog"
|
||||||
|
#~ msgstr "Pakktöötluse dialoog"
|
||||||
|
|
||||||
|
#~ msgid "A Kipi dialog for batch process operations"
|
||||||
|
#~ msgstr "Kipi pakktöötluse operatsioonide dialoog"
|
@ -0,0 +1,3 @@
|
|||||||
|
KDE_LANG = fi
|
||||||
|
SUBDIRS = $(AUTODIRS)
|
||||||
|
POFILES = AUTO
|
@ -0,0 +1,128 @@
|
|||||||
|
# translation of libkipi.po to Finnish
|
||||||
|
# Mikael Lammentausta <mikael.lammentausta@student.savonia-amk.fi>, 2006.
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: libkipi\n"
|
||||||
|
"POT-Creation-Date: 2006-10-03 08:51+0200\n"
|
||||||
|
"PO-Revision-Date: 2006-06-17 06:39+0300\n"
|
||||||
|
"Last-Translator: Mikael Lammentausta "
|
||||||
|
"<mikael.lammentausta@student.savonia-amk.fi>\n"
|
||||||
|
"Language-Team: Finnish <fi@li.org>\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"X-Generator: KBabel 1.11.2\n"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:171
|
||||||
|
msgid "Status"
|
||||||
|
msgstr "Tila"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:172
|
||||||
|
msgid "Current Actions"
|
||||||
|
msgstr "Nykyiset toiminnot"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:177
|
||||||
|
msgid "<p>This is the current tasks list released."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:184
|
||||||
|
msgid "<p>This is the list current percent task released."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:85
|
||||||
|
msgid "Folder"
|
||||||
|
msgstr "Kansio"
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:176
|
||||||
|
msgid "Please select a directory first."
|
||||||
|
msgstr "Valitse ensin kansio."
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:181
|
||||||
|
msgid "Create Directory"
|
||||||
|
msgstr "Luo kansio"
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:182
|
||||||
|
msgid "<qt>Enter new directory name (to be created as subdir of %1):</qt>"
|
||||||
|
msgstr ""
|
||||||
|
"<qt>Syötä nimi uudelle kansiolle (joka luodaan kansion %1 alikansioksi):</qt>"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionshared.cpp:81
|
||||||
|
msgid "Images"
|
||||||
|
msgstr "Kuvat"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:109
|
||||||
|
msgid "Invert Selection"
|
||||||
|
msgstr "Käännä valinta"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:110
|
||||||
|
msgid "Select None"
|
||||||
|
msgstr "Poista valinta"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:283
|
||||||
|
msgid "Images:"
|
||||||
|
msgstr "Kuvat:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:300
|
||||||
|
msgid "Comments:"
|
||||||
|
msgstr "Kommentit:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:308
|
||||||
|
msgid "Category:"
|
||||||
|
msgstr "Luokka:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:317
|
||||||
|
msgid "Date:"
|
||||||
|
msgstr "Päiväys:"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:90 libkipi/imagedialog.cpp:110
|
||||||
|
msgid "Select Image From Album"
|
||||||
|
msgstr "Valitse kuva albumista"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:128
|
||||||
|
msgid "Image selector dialog"
|
||||||
|
msgstr "Valintaikkuna"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:130
|
||||||
|
msgid "A Kipi dialog for image selection"
|
||||||
|
msgstr "Kipin kuvanvalintaikkuna"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:139
|
||||||
|
msgid "Kipi Plugins Handbooks"
|
||||||
|
msgstr "Kipi-liitännäisten käyttöohje"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:147
|
||||||
|
msgid "Album Name"
|
||||||
|
msgstr "Albumi"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:152
|
||||||
|
msgid "Image Name"
|
||||||
|
msgstr "Kuva"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:161 libkipi/imagedialog.cpp:240
|
||||||
|
msgid "No image selected"
|
||||||
|
msgstr "Ei valittua kuvaa"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:274
|
||||||
|
msgid "No images selected"
|
||||||
|
msgstr "Ei valittuja kuvia"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:293
|
||||||
|
#, c-format
|
||||||
|
msgid ""
|
||||||
|
"_n: 1 image selected\n"
|
||||||
|
"%n images selected"
|
||||||
|
msgstr ""
|
||||||
|
"1 valittu kuva\n"
|
||||||
|
"%n valittua kuvaa"
|
||||||
|
|
||||||
|
#: _translatorinfo.cpp:1
|
||||||
|
msgid ""
|
||||||
|
"_: NAME OF TRANSLATORS\n"
|
||||||
|
"Your names"
|
||||||
|
msgstr "Mikael Lammentausta,Teemu Rytilahti"
|
||||||
|
|
||||||
|
#: _translatorinfo.cpp:3
|
||||||
|
msgid ""
|
||||||
|
"_: EMAIL OF TRANSLATORS\n"
|
||||||
|
"Your emails"
|
||||||
|
msgstr "lamikae@dnainternet.net"
|
@ -0,0 +1,3 @@
|
|||||||
|
KDE_LANG = fr
|
||||||
|
SUBDIRS = $(AUTODIRS)
|
||||||
|
POFILES = AUTO
|
@ -0,0 +1,3 @@
|
|||||||
|
KDE_LANG = ga
|
||||||
|
SUBDIRS = $(AUTODIRS)
|
||||||
|
POFILES = AUTO
|
@ -0,0 +1,124 @@
|
|||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: kdeextragear-libs-1/libkipi.po\n"
|
||||||
|
"POT-Creation-Date: 2006-10-03 08:51+0200\n"
|
||||||
|
"PO-Revision-Date: 2004-12-03 14:52-0500\n"
|
||||||
|
"Last-Translator: Kevin Patrick Scannell <scannell@SLU.EDU>\n"
|
||||||
|
"Language-Team: ga <LL@li.org>\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:171
|
||||||
|
msgid "Status"
|
||||||
|
msgstr "Stádas"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:172
|
||||||
|
msgid "Current Actions"
|
||||||
|
msgstr "Gníomhartha Reatha"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:177
|
||||||
|
msgid "<p>This is the current tasks list released."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:184
|
||||||
|
msgid "<p>This is the list current percent task released."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:85
|
||||||
|
msgid "Folder"
|
||||||
|
msgstr "Fillteán"
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:176
|
||||||
|
msgid "Please select a directory first."
|
||||||
|
msgstr "Roghnaigh comhadlann ar dtús le do thoil."
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:181
|
||||||
|
msgid "Create Directory"
|
||||||
|
msgstr "Cruthaigh Comhadlann"
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:182
|
||||||
|
msgid "<qt>Enter new directory name (to be created as subdir of %1):</qt>"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionshared.cpp:81
|
||||||
|
msgid "Images"
|
||||||
|
msgstr "Íomhánna"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:109
|
||||||
|
msgid "Invert Selection"
|
||||||
|
msgstr "Inbhéartaigh an Rogha"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:110
|
||||||
|
msgid "Select None"
|
||||||
|
msgstr "Ná Roghnaigh"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:283
|
||||||
|
msgid "Images:"
|
||||||
|
msgstr "Íomhánna:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:300
|
||||||
|
msgid "Comments:"
|
||||||
|
msgstr "Nótaí:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:308
|
||||||
|
msgid "Category:"
|
||||||
|
msgstr "Catagóir:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:317
|
||||||
|
msgid "Date:"
|
||||||
|
msgstr "Dáta:"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:90 libkipi/imagedialog.cpp:110
|
||||||
|
msgid "Select Image From Album"
|
||||||
|
msgstr "Roghnaigh Íomhá Ó Albam"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:128
|
||||||
|
msgid "Image selector dialog"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:130
|
||||||
|
msgid "A Kipi dialog for image selection"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:139
|
||||||
|
msgid "Kipi Plugins Handbooks"
|
||||||
|
msgstr "Lámhleabhar Breiseán Kipi"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:147
|
||||||
|
msgid "Album Name"
|
||||||
|
msgstr "Ainm Albaim"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:152
|
||||||
|
msgid "Image Name"
|
||||||
|
msgstr "Ainm Íomhá"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:161 libkipi/imagedialog.cpp:240
|
||||||
|
msgid "No image selected"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:274
|
||||||
|
msgid "No images selected"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:293
|
||||||
|
#, c-format
|
||||||
|
msgid ""
|
||||||
|
"_n: 1 image selected\n"
|
||||||
|
"%n images selected"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: _translatorinfo.cpp:1
|
||||||
|
msgid ""
|
||||||
|
"_: NAME OF TRANSLATORS\n"
|
||||||
|
"Your names"
|
||||||
|
msgstr "Séamus Ó Ciardhuáin,Kevin Scannell"
|
||||||
|
|
||||||
|
#: _translatorinfo.cpp:3
|
||||||
|
msgid ""
|
||||||
|
"_: EMAIL OF TRANSLATORS\n"
|
||||||
|
"Your emails"
|
||||||
|
msgstr "seoc at iolfree dot ie,scannell at slu dot edu"
|
||||||
|
|
||||||
|
#~ msgid "Batch process dialog"
|
||||||
|
#~ msgstr "Dialóg bhaiscphróiseála"
|
@ -0,0 +1,3 @@
|
|||||||
|
KDE_LANG = gl
|
||||||
|
SUBDIRS = $(AUTODIRS)
|
||||||
|
POFILES = AUTO
|
@ -0,0 +1,134 @@
|
|||||||
|
# translation of libkipi.po to Galician
|
||||||
|
# mvillarino <mvillarino@users.sourceforge.net>, 2005, 2006.
|
||||||
|
#
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: libkipi\n"
|
||||||
|
"POT-Creation-Date: 2006-10-03 08:51+0200\n"
|
||||||
|
"PO-Revision-Date: 2006-01-28 10:07+0100\n"
|
||||||
|
"Last-Translator: mvillarino <mvillarino@users.sourceforge.net>\n"
|
||||||
|
"Language-Team: Galician <trasno@ceu.fi.udc.es>\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"X-Generator: KBabel 1.10\n"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:171
|
||||||
|
msgid "Status"
|
||||||
|
msgstr "Estado"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:172
|
||||||
|
msgid "Current Actions"
|
||||||
|
msgstr "Aczóns Actuais"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:177
|
||||||
|
msgid "<p>This is the current tasks list released."
|
||||||
|
msgstr "<p>Esta é a lista publicada das tarefas actuais."
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:184
|
||||||
|
msgid "<p>This is the list current percent task released."
|
||||||
|
msgstr "<p>Esta é a lista publicada do porcento das tarefas."
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:85
|
||||||
|
msgid "Folder"
|
||||||
|
msgstr "Cartafol"
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:176
|
||||||
|
msgid "Please select a directory first."
|
||||||
|
msgstr "Por favor seleccione primeiro un cartafol."
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:181
|
||||||
|
msgid "Create Directory"
|
||||||
|
msgstr "Criar o cartafol"
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:182
|
||||||
|
msgid "<qt>Enter new directory name (to be created as subdir of %1):</qt>"
|
||||||
|
msgstr ""
|
||||||
|
"<qt>Indique o nome do novo cartafol (criará-se como subcartafol de %1):</qt>"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionshared.cpp:81
|
||||||
|
msgid "Images"
|
||||||
|
msgstr "Imaxes"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:109
|
||||||
|
msgid "Invert Selection"
|
||||||
|
msgstr "Inverter a Seleczón"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:110
|
||||||
|
msgid "Select None"
|
||||||
|
msgstr "Escoller Nada"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:283
|
||||||
|
msgid "Images:"
|
||||||
|
msgstr "Imaxes:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:300
|
||||||
|
msgid "Comments:"
|
||||||
|
msgstr "Comentários:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:308
|
||||||
|
msgid "Category:"
|
||||||
|
msgstr "Categoria:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:317
|
||||||
|
msgid "Date:"
|
||||||
|
msgstr "Data:"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:90 libkipi/imagedialog.cpp:110
|
||||||
|
msgid "Select Image From Album"
|
||||||
|
msgstr "Escolla unha Imaxe do Álbum"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:128
|
||||||
|
msgid "Image selector dialog"
|
||||||
|
msgstr "Diálogo de seleczón de imaxes"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:130
|
||||||
|
msgid "A Kipi dialog for image selection"
|
||||||
|
msgstr "Un diálogo de Kipi para escoller imaxes"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:139
|
||||||
|
msgid "Kipi Plugins Handbooks"
|
||||||
|
msgstr "Manuais dos Plugins de Kipi"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:147
|
||||||
|
msgid "Album Name"
|
||||||
|
msgstr "Nome do Álbum"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:152
|
||||||
|
msgid "Image Name"
|
||||||
|
msgstr "Nome da Imaxe"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:161 libkipi/imagedialog.cpp:240
|
||||||
|
msgid "No image selected"
|
||||||
|
msgstr "Non escolleu nengunha imaxe"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:274
|
||||||
|
msgid "No images selected"
|
||||||
|
msgstr "Non escolleu nengunha imaxe"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:293
|
||||||
|
#, c-format
|
||||||
|
msgid ""
|
||||||
|
"_n: 1 image selected\n"
|
||||||
|
"%n images selected"
|
||||||
|
msgstr ""
|
||||||
|
"%n imaxe escollida<\n"
|
||||||
|
"%n imaxes escollidas"
|
||||||
|
|
||||||
|
#: _translatorinfo.cpp:1
|
||||||
|
msgid ""
|
||||||
|
"_: NAME OF TRANSLATORS\n"
|
||||||
|
"Your names"
|
||||||
|
msgstr "mvillarino"
|
||||||
|
|
||||||
|
#: _translatorinfo.cpp:3
|
||||||
|
msgid ""
|
||||||
|
"_: EMAIL OF TRANSLATORS\n"
|
||||||
|
"Your emails"
|
||||||
|
msgstr "mvillarino@users.sourceforge.net"
|
||||||
|
|
||||||
|
#~ msgid "Batch process dialog"
|
||||||
|
#~ msgstr "Diálogo de procesamento de lote"
|
||||||
|
|
||||||
|
#~ msgid "A Kipi dialog for batch process operations"
|
||||||
|
#~ msgstr "Un diálogo de Kipi para operazóns en lotes"
|
@ -0,0 +1,3 @@
|
|||||||
|
KDE_LANG = is
|
||||||
|
SUBDIRS = $(AUTODIRS)
|
||||||
|
POFILES = AUTO
|
@ -0,0 +1,125 @@
|
|||||||
|
# SOME DESCRIPTIVE TITLE.
|
||||||
|
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
|
||||||
|
#
|
||||||
|
#, fuzzy
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: PACKAGE VERSION\n"
|
||||||
|
"POT-Creation-Date: 2006-10-03 08:51+0200\n"
|
||||||
|
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||||
|
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||||
|
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: ENCODING\n"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:171
|
||||||
|
msgid "Status"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:172
|
||||||
|
msgid "Current Actions"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:177
|
||||||
|
msgid "<p>This is the current tasks list released."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:184
|
||||||
|
msgid "<p>This is the list current percent task released."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:85
|
||||||
|
msgid "Folder"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:176
|
||||||
|
msgid "Please select a directory first."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:181
|
||||||
|
msgid "Create Directory"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:182
|
||||||
|
msgid "<qt>Enter new directory name (to be created as subdir of %1):</qt>"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionshared.cpp:81
|
||||||
|
msgid "Images"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:109
|
||||||
|
msgid "Invert Selection"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:110
|
||||||
|
msgid "Select None"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:283
|
||||||
|
msgid "Images:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:300
|
||||||
|
msgid "Comments:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:308
|
||||||
|
msgid "Category:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:317
|
||||||
|
msgid "Date:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:90 libkipi/imagedialog.cpp:110
|
||||||
|
msgid "Select Image From Album"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:128
|
||||||
|
msgid "Image selector dialog"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:130
|
||||||
|
msgid "A Kipi dialog for image selection"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:139
|
||||||
|
msgid "Kipi Plugins Handbooks"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:147
|
||||||
|
msgid "Album Name"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:152
|
||||||
|
msgid "Image Name"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:161 libkipi/imagedialog.cpp:240
|
||||||
|
msgid "No image selected"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:274
|
||||||
|
msgid "No images selected"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:293
|
||||||
|
#, c-format
|
||||||
|
msgid ""
|
||||||
|
"_n: 1 image selected\n"
|
||||||
|
"%n images selected"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: _translatorinfo.cpp:1
|
||||||
|
msgid ""
|
||||||
|
"_: NAME OF TRANSLATORS\n"
|
||||||
|
"Your names"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: _translatorinfo.cpp:3
|
||||||
|
msgid ""
|
||||||
|
"_: EMAIL OF TRANSLATORS\n"
|
||||||
|
"Your emails"
|
||||||
|
msgstr ""
|
@ -0,0 +1,3 @@
|
|||||||
|
KDE_LANG = it
|
||||||
|
SUBDIRS = $(AUTODIRS)
|
||||||
|
POFILES = AUTO
|
@ -0,0 +1,388 @@
|
|||||||
|
# translation of libkipi.po to Italian
|
||||||
|
# Federico Zenith <zenith@chemeng.ntnu.no>, 2004, 2005.
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: libkipi\n"
|
||||||
|
"POT-Creation-Date: 2006-10-03 08:51+0200\n"
|
||||||
|
"PO-Revision-Date: 2005-05-15 01:46+0200\n"
|
||||||
|
"Last-Translator: Federico Zenith <zenith@chemeng.ntnu.no>\n"
|
||||||
|
"Language-Team: Italian <kde-i18n-it@kde.org>\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"X-Generator: KBabel 1.9.1\n"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:171
|
||||||
|
msgid "Status"
|
||||||
|
msgstr "Stato"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:172
|
||||||
|
msgid "Current Actions"
|
||||||
|
msgstr "Azioni attuali"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:177
|
||||||
|
msgid "<p>This is the current tasks list released."
|
||||||
|
msgstr "<p>Questo è l'elenco di compiti correnti completati."
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:184
|
||||||
|
msgid "<p>This is the list current percent task released."
|
||||||
|
msgstr ""
|
||||||
|
"<p>Questa è la percentuale attuale di completamento dell'elenco dei compiti."
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:85
|
||||||
|
msgid "Folder"
|
||||||
|
msgstr "Cartella"
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:176
|
||||||
|
msgid "Please select a directory first."
|
||||||
|
msgstr "Per piacere seleziona prima una cartella."
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:181
|
||||||
|
msgid "Create Directory"
|
||||||
|
msgstr "Crea cartella"
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:182
|
||||||
|
msgid "<qt>Enter new directory name (to be created as subdir of %1):</qt>"
|
||||||
|
msgstr ""
|
||||||
|
"<qt>Inserisci il nome della nuova cartella (da creare come sottocartella di "
|
||||||
|
"%1):</qt>"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionshared.cpp:81
|
||||||
|
msgid "Images"
|
||||||
|
msgstr "Immagini"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:109
|
||||||
|
msgid "Invert Selection"
|
||||||
|
msgstr "Inverti la selezione"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:110
|
||||||
|
msgid "Select None"
|
||||||
|
msgstr "Non selezionare nessuno"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:283
|
||||||
|
msgid "Images:"
|
||||||
|
msgstr "Immagini:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:300
|
||||||
|
msgid "Comments:"
|
||||||
|
msgstr "Commenti:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:308
|
||||||
|
msgid "Category:"
|
||||||
|
msgstr "Categoria:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:317
|
||||||
|
msgid "Date:"
|
||||||
|
msgstr "Data:"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:90 libkipi/imagedialog.cpp:110
|
||||||
|
msgid "Select Image From Album"
|
||||||
|
msgstr "Seleziona immagine da un album"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:128
|
||||||
|
msgid "Image selector dialog"
|
||||||
|
msgstr "Finestra di selezione delle immagini"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:130
|
||||||
|
msgid "A Kipi dialog for image selection"
|
||||||
|
msgstr "Una finestra di Kipi per la selezione delle immagini"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:139
|
||||||
|
msgid "Kipi Plugins Handbooks"
|
||||||
|
msgstr "Manuali dei plugin di Kipi"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:147
|
||||||
|
msgid "Album Name"
|
||||||
|
msgstr "Nome dell'album"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:152
|
||||||
|
msgid "Image Name"
|
||||||
|
msgstr "Nome dell'immagine"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:161 libkipi/imagedialog.cpp:240
|
||||||
|
msgid "No image selected"
|
||||||
|
msgstr "Nessuna immagine selezionata"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:274
|
||||||
|
msgid "No images selected"
|
||||||
|
msgstr "Nessuna immagine selezionata"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:293
|
||||||
|
#, c-format
|
||||||
|
msgid ""
|
||||||
|
"_n: 1 image selected\n"
|
||||||
|
"%n images selected"
|
||||||
|
msgstr ""
|
||||||
|
"1 immagine selezionata\n"
|
||||||
|
"%n immagini selezionate"
|
||||||
|
|
||||||
|
#: _translatorinfo.cpp:1
|
||||||
|
msgid ""
|
||||||
|
"_: NAME OF TRANSLATORS\n"
|
||||||
|
"Your names"
|
||||||
|
msgstr "Federico Zenith"
|
||||||
|
|
||||||
|
#: _translatorinfo.cpp:3
|
||||||
|
msgid ""
|
||||||
|
"_: EMAIL OF TRANSLATORS\n"
|
||||||
|
"Your emails"
|
||||||
|
msgstr "zenith@chemeng.ntnu.no"
|
||||||
|
|
||||||
|
#~ msgid "Batch process dialog"
|
||||||
|
#~ msgstr "Finestra dei processi non interattivi"
|
||||||
|
|
||||||
|
#~ msgid "A Kipi dialog for batch process operations"
|
||||||
|
#~ msgstr "Una finestra di Kipi per le operazioni non interattive"
|
||||||
|
|
||||||
|
#~ msgid ""
|
||||||
|
#~ "<p>\n"
|
||||||
|
#~ "<table border=\"0\" cellpadding=\"0\" cellspacing=\"10\" align=\"center\">\n"
|
||||||
|
#~ "<tr>\n"
|
||||||
|
#~ "<td>\n"
|
||||||
|
#~ "<img src=\"hicolor/48x48/apps/kipi.png\">\n"
|
||||||
|
#~ "</td>\n"
|
||||||
|
#~ "<td>\n"
|
||||||
|
#~ "Did you know that you could brighten up your images using Batch Color Images plugin for increased contrast?\n"
|
||||||
|
#~ "</td>\n"
|
||||||
|
#~ "</tr>\n"
|
||||||
|
#~ "</table>\n"
|
||||||
|
#~ "</p>\n"
|
||||||
|
#~ msgstr ""
|
||||||
|
#~ "<p>\n"
|
||||||
|
#~ "<table border=\"0\" cellpadding=\"0\" cellspacing=\"10\" align=\"center\">\n"
|
||||||
|
#~ "<tr>\n"
|
||||||
|
#~ "<td>\n"
|
||||||
|
#~ "<img src=\"hicolor/48x48/apps/kipi.png\">\n"
|
||||||
|
#~ "</td>\n"
|
||||||
|
#~ "<td>\n"
|
||||||
|
#~ "Sapevi che puoi illuminare le tue immagini usando il plugin non interattivo dei colori per aumentare il contrasto?\n"
|
||||||
|
#~ "</td>\n"
|
||||||
|
#~ "</tr>\n"
|
||||||
|
#~ "</table>\n"
|
||||||
|
#~ "</p>\n"
|
||||||
|
|
||||||
|
#~ msgid ""
|
||||||
|
#~ "<p>\n"
|
||||||
|
#~ "<table border=\"0\" cellpadding=\"0\" cellspacing=\"10\" align=\"center\">\n"
|
||||||
|
#~ "<tr>\n"
|
||||||
|
#~ "<td>\n"
|
||||||
|
#~ "<img src=\"hicolor/48x48/apps/kipi.png\">\n"
|
||||||
|
#~ "</td>\n"
|
||||||
|
#~ "<td>\n"
|
||||||
|
#~ "Did you know that you could abort a slideshow using <b>ESC</b>?\n"
|
||||||
|
#~ "</td>\n"
|
||||||
|
#~ "</tr>\n"
|
||||||
|
#~ "</table>\n"
|
||||||
|
#~ "</p>\n"
|
||||||
|
#~ msgstr ""
|
||||||
|
#~ "<p>\n"
|
||||||
|
#~ "<table border=\"0\" cellpadding=\"0\" cellspacing=\"10\" align=\"center\">\n"
|
||||||
|
#~ "<tr>\n"
|
||||||
|
#~ "<td>\n"
|
||||||
|
#~ "<img src=\"hicolor/48x48/apps/kipi.png\">\n"
|
||||||
|
#~ "</td>\n"
|
||||||
|
#~ "<td>\n"
|
||||||
|
#~ "Sapevi che puoi interrompere una presentazione usando <b>ESC</b>?\n"
|
||||||
|
#~ "</td>\n"
|
||||||
|
#~ "</tr>\n"
|
||||||
|
#~ "</table>\n"
|
||||||
|
#~ "</p>\n"
|
||||||
|
|
||||||
|
#~ msgid ""
|
||||||
|
#~ "<p>Did you know that you could brighten up your images using Batch Color Images plugin for increased contrast?\n"
|
||||||
|
#~ "</p>\n"
|
||||||
|
#~ "<br>\n"
|
||||||
|
#~ "<center>\n"
|
||||||
|
#~ "<img src=\"hicolor/48x48/apps/kipi.png\">\n"
|
||||||
|
#~ "</center>\n"
|
||||||
|
#~ msgstr ""
|
||||||
|
#~ "<p>Sapevi che puoi illuminare le tue immagini usando il plugin non interattivo Colore delle immagini per aumentare il contrasto?\n"
|
||||||
|
#~ "</p>\n"
|
||||||
|
#~ "<br>\n"
|
||||||
|
#~ "<center>\n"
|
||||||
|
#~ "<img src=\"hicolor/48x48/apps/kipi.png\">\n"
|
||||||
|
#~ "</center>\n"
|
||||||
|
|
||||||
|
#~ msgid ""
|
||||||
|
#~ "<p>Did you know that you could abort a slideshow using <b>ESC</b>?\n"
|
||||||
|
#~ "</p>\n"
|
||||||
|
#~ "<br>\n"
|
||||||
|
#~ "<center>\n"
|
||||||
|
#~ "<img src=\"hicolor/48x48/apps/kipi.png\">\n"
|
||||||
|
#~ "</center>\n"
|
||||||
|
#~ msgstr ""
|
||||||
|
#~ "<p>Sapevi che puoi interrompere una presentazione usando <b>ESC</b>?\n"
|
||||||
|
#~ "</p>\n"
|
||||||
|
#~ "<br>\n"
|
||||||
|
#~ "<center>\n"
|
||||||
|
#~ "<img src=\"hicolor/48x48/apps/kipi.png\">\n"
|
||||||
|
#~ "</center>\n"
|
||||||
|
|
||||||
|
#~ msgid ""
|
||||||
|
#~ "<p>Did you know that Kipi library provide a scanner plugin that gives you direct access to your scanner?\n"
|
||||||
|
#~ "</p>\n"
|
||||||
|
#~ "<br>\n"
|
||||||
|
#~ "<center>\n"
|
||||||
|
#~ "<img src=\"hicolor/48x48/apps/kipi.png\">\n"
|
||||||
|
#~ "</center>\n"
|
||||||
|
#~ msgstr ""
|
||||||
|
#~ "<p>Sapevi che la libreria Kipi fornisce un plugin di scansione che ti dà accesso diretto al tuo scanner piatto?\n"
|
||||||
|
#~ "</p>\n"
|
||||||
|
#~ "<br>\n"
|
||||||
|
#~ "<center>\n"
|
||||||
|
#~ "<img src=\"hicolor/48x48/apps/kipi.png\">\n"
|
||||||
|
#~ "</center>\n"
|
||||||
|
|
||||||
|
#~ msgid ""
|
||||||
|
#~ "<p>Did you know that you can take a screenshoot with Kipi library and save the result to an Album with some comments?\n"
|
||||||
|
#~ "</p>\n"
|
||||||
|
#~ "<br>\n"
|
||||||
|
#~ "<center>\n"
|
||||||
|
#~ "<img src=\"hicolor/48x48/apps/kipi.png\">\n"
|
||||||
|
#~ "</center>\n"
|
||||||
|
#~ msgstr ""
|
||||||
|
#~ "<p>Sapevi che puoi fare un'istantanea con la libreria Kipi e salvarne il risultato in un album con dei commenti?\n"
|
||||||
|
#~ "</p>\n"
|
||||||
|
#~ "<br>\n"
|
||||||
|
#~ "<center>\n"
|
||||||
|
#~ "<img src=\"hicolor/48x48/apps/kipi.png\">\n"
|
||||||
|
#~ "</center>\n"
|
||||||
|
|
||||||
|
#~ msgid ""
|
||||||
|
#~ "<p>Did you know that you can use the <b>LZW</b> compression to reduce the size of the <b>TIFF</b> image files in the Convert Images plugin?\n"
|
||||||
|
#~ "</p>\n"
|
||||||
|
#~ "<br>\n"
|
||||||
|
#~ "<center>\n"
|
||||||
|
#~ "<img src=\"hicolor/48x48/apps/kipi.png\">\n"
|
||||||
|
#~ "</center>\n"
|
||||||
|
#~ msgstr ""
|
||||||
|
#~ "<p>Sapevi che puoi usare la compressione <b>LZW</b> per ridurre le dimensioni dei file immagine <b>TIFF</b> nel plugin Converti immagini?\n"
|
||||||
|
#~ "</p>\n"
|
||||||
|
#~ "<br>\n"
|
||||||
|
#~ "<center>\n"
|
||||||
|
#~ "<img src=\"hicolor/48x48/apps/kipi.png\">\n"
|
||||||
|
#~ "</center>\n"
|
||||||
|
|
||||||
|
#~ msgid ""
|
||||||
|
#~ "<p>Did you know that all images operations in the batch processing images plugins run without losing the <b>EXIF</b> information in the <b>JPEG</b> files?\n"
|
||||||
|
#~ "</p>\n"
|
||||||
|
#~ "<br>\n"
|
||||||
|
#~ "<center>\n"
|
||||||
|
#~ "<img src=\"hicolor/48x48/apps/kipi.png\">\n"
|
||||||
|
#~ "</center>\n"
|
||||||
|
#~ msgstr ""
|
||||||
|
#~ "<p>Sapevi che tutte le operazioni sulle immagini nei plugin di elaborazione non interattiva delle immagini funzionano senza perdere le informazioni <b>EXIF</b> nei file JPEG?\n"
|
||||||
|
#~ "</p>\n"
|
||||||
|
#~ "<br>\n"
|
||||||
|
#~ "<center>\n"
|
||||||
|
#~ "<img src=\"hicolor/48x48/apps/kipi.png\">\n"
|
||||||
|
#~ "</center>\n"
|
||||||
|
|
||||||
|
#~ msgid ""
|
||||||
|
#~ "<p>Did you know that the <b>Noise Reduction</b> option in the <b>Filter Images</b> plugin can be used to improve the rendering of images taken with an analog camera?\n"
|
||||||
|
#~ "</p>\n"
|
||||||
|
#~ "<br>\n"
|
||||||
|
#~ "<center>\n"
|
||||||
|
#~ "<img src=\"hicolor/48x48/apps/kipi.png\">\n"
|
||||||
|
#~ "</center>\n"
|
||||||
|
#~ msgstr ""
|
||||||
|
#~ "<p>Sapevi che l'opzione <b>Riduzione del rumore</b> nel plugin <b>Filtra immagini</b> può essere usata per migliorare la resa delle immagini prese con una fotocamera analogica?\n"
|
||||||
|
#~ "</p>\n"
|
||||||
|
#~ "<br>\n"
|
||||||
|
#~ "<center>\n"
|
||||||
|
#~ "<img src=\"hicolor/48x48/apps/kipi.png\">\n"
|
||||||
|
#~ "</center>\n"
|
||||||
|
|
||||||
|
#~ msgid ""
|
||||||
|
#~ "<p>Did you know that you can use the drag and drop feature in e-mail images to add some items to the list?\n"
|
||||||
|
#~ "</p>\n"
|
||||||
|
#~ "<br>\n"
|
||||||
|
#~ "<center>\n"
|
||||||
|
#~ "<img src=\"hicolor/48x48/apps/kipi.png\">\n"
|
||||||
|
#~ "</center>\n"
|
||||||
|
#~ msgstr ""
|
||||||
|
#~ "<p>Sapevi che puoi usare la funzionalità di trascinamento nelle immagini della posta elettronica per aggiungere elementi all'elenco?\n"
|
||||||
|
#~ "</p>\n"
|
||||||
|
#~ "<br>\n"
|
||||||
|
#~ "<center>\n"
|
||||||
|
#~ "<img src=\"hicolor/48x48/apps/kipi.png\">\n"
|
||||||
|
#~ "</center>\n"
|
||||||
|
|
||||||
|
#~ msgid ""
|
||||||
|
#~ "<p>Did you know that if you want reduce the space disk used by your images in the Albums database, you could try using the recompressImages plugin?\n"
|
||||||
|
#~ "</p>\n"
|
||||||
|
#~ "<br>\n"
|
||||||
|
#~ "<center>\n"
|
||||||
|
#~ "<img src=\"hicolor/48x48/apps/kipi.png\">\n"
|
||||||
|
#~ "</center>\n"
|
||||||
|
#~ msgstr ""
|
||||||
|
#~ "<p>Sapevi che se vuoi ridurre lo spazio su disco usato dalle tue immagini nella banca dati degli album, potresti provare a usare il plugin di Ricomprimi immagini?</p>\n"
|
||||||
|
#~ "<br>\n"
|
||||||
|
#~ "<center>\n"
|
||||||
|
#~ "<img src=\"hicolor/48x48/apps/kipi.png\">\n"
|
||||||
|
#~ "</center>\n"
|
||||||
|
|
||||||
|
#~ msgid ""
|
||||||
|
#~ "<p>Did you know that if you want to resize images to prepare them for printing on photographic paper sizes, you could use the resizeImages plugin?\n"
|
||||||
|
#~ "</p>\n"
|
||||||
|
#~ "<br>\n"
|
||||||
|
#~ "<center>\n"
|
||||||
|
#~ "<img src=\"hicolor/48x48/apps/kipi.png\">\n"
|
||||||
|
#~ "</center>\n"
|
||||||
|
#~ msgstr ""
|
||||||
|
#~ "<p>Sapevi che se vuoi ridimensionare delle immagini per prepararle alla stampa su carta di dimensione fotografica, puoi usare il plugin Ridimensiona immagini?\n"
|
||||||
|
#~ "</p>\n"
|
||||||
|
#~ "<br>\n"
|
||||||
|
#~ "<center>\n"
|
||||||
|
#~ "<img src=\"hicolor/48x48/apps/kipi.png\">\n"
|
||||||
|
#~ "</center>\n"
|
||||||
|
|
||||||
|
#~ msgid ""
|
||||||
|
#~ "<p>Did you know that you could use image files from different Albums in the 'batch-process images' \n"
|
||||||
|
#~ "plugin? The processed results will then be merged in the selected target Album.\n"
|
||||||
|
#~ "</p>\n"
|
||||||
|
#~ "<br>\n"
|
||||||
|
#~ "<center>\n"
|
||||||
|
#~ "<img src=\"hicolor/48x48/apps/kipi.png\">\n"
|
||||||
|
#~ "</center>\n"
|
||||||
|
#~ msgstr ""
|
||||||
|
#~ "<p>Sapevi che potresti usare i file immagine da diversi album nei plugin 'processi non interattivi'?\n"
|
||||||
|
#~ "I risultati del processo saranno poi riversati nell'album di destinazione selezionato.\n"
|
||||||
|
#~ "</p>\n"
|
||||||
|
#~ "<br>\n"
|
||||||
|
#~ "<center>\n"
|
||||||
|
#~ "<img src=\"hicolor/48x48/apps/kipi.png\">\n"
|
||||||
|
#~ "</center>\n"
|
||||||
|
|
||||||
|
#~ msgid ""
|
||||||
|
#~ "<p>Did you know that you can change the timeStamp of the target images files in the batch-rename images plugin?\n"
|
||||||
|
#~ "</p>\n"
|
||||||
|
#~ "<br>\n"
|
||||||
|
#~ "<center>\n"
|
||||||
|
#~ "<img src=\"hicolor/48x48/apps/kipi.png\">\n"
|
||||||
|
#~ "</center>\n"
|
||||||
|
#~ msgstr ""
|
||||||
|
#~ "<p>Sapevi che puoi cambiare la data e ora dei file immagine di destinazione nel plugin non interattivo Rinomina immagini?\n"
|
||||||
|
#~ "</p>\n"
|
||||||
|
#~ "<br>\n"
|
||||||
|
#~ "<center>\n"
|
||||||
|
#~ "<img src=\"hicolor/48x48/apps/kipi.png\">\n"
|
||||||
|
#~ "</center>\n"
|
||||||
|
|
||||||
|
#~ msgid ""
|
||||||
|
#~ "<p>Did you know that you can navigate on the slideshow with the left and right mouse buttons?\n"
|
||||||
|
#~ "</p>\n"
|
||||||
|
#~ "<br>\n"
|
||||||
|
#~ "<center>\n"
|
||||||
|
#~ "<img src=\"hicolor/48x48/apps/kipi.png\">\n"
|
||||||
|
#~ "</center>\n"
|
||||||
|
#~ msgstr ""
|
||||||
|
#~ "<p>Sapevi che puoi navigare nella presentazione con i pulsanti destro e sinistro del mouse?\n"
|
||||||
|
#~ "</p>\n"
|
||||||
|
#~ "<br>\n"
|
||||||
|
#~ "<center>\n"
|
||||||
|
#~ "<img src=\"hicolor/48x48/apps/kipi.png\">\n"
|
||||||
|
#~ "</center>\n"
|
||||||
|
|
||||||
|
#~ msgid "%1 images selected"
|
||||||
|
#~ msgstr "%1 immagini selezionata"
|
@ -0,0 +1,3 @@
|
|||||||
|
KDE_LANG = ja
|
||||||
|
SUBDIRS = $(AUTODIRS)
|
||||||
|
POFILES = AUTO
|
@ -0,0 +1,124 @@
|
|||||||
|
# translation of libkipi.pot to Japanese
|
||||||
|
# Yukiko BANDO <ybando@k6.dion.ne.jp>, 2005, 2006.
|
||||||
|
#
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: libkipi\n"
|
||||||
|
"POT-Creation-Date: 2006-10-03 08:51+0200\n"
|
||||||
|
"PO-Revision-Date: 2006-10-20 23:00+0900\n"
|
||||||
|
"Last-Translator: Yukiko BANDO <ybando@k6.dion.ne.jp>\n"
|
||||||
|
"Language-Team: Japanese <Kdeveloper@kde.gr.jp>\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:171
|
||||||
|
msgid "Status"
|
||||||
|
msgstr "状態"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:172
|
||||||
|
msgid "Current Actions"
|
||||||
|
msgstr "現在の動作"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:177
|
||||||
|
msgid "<p>This is the current tasks list released."
|
||||||
|
msgstr "<p>現在のタスクリストの進捗率です。"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:184
|
||||||
|
msgid "<p>This is the list current percent task released."
|
||||||
|
msgstr "<p>現在のタスクリストの進捗率です。"
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:85
|
||||||
|
msgid "Folder"
|
||||||
|
msgstr "フォルダ"
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:176
|
||||||
|
msgid "Please select a directory first."
|
||||||
|
msgstr "先にディレクトリを選んでください。"
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:181
|
||||||
|
msgid "Create Directory"
|
||||||
|
msgstr "ディレクトリを作成"
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:182
|
||||||
|
msgid "<qt>Enter new directory name (to be created as subdir of %1):</qt>"
|
||||||
|
msgstr "<qt>新しいディレクトリ名を入力 (%1 のサブディレクトリとして作成):</qt>"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionshared.cpp:81
|
||||||
|
msgid "Images"
|
||||||
|
msgstr "画像"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:109
|
||||||
|
msgid "Invert Selection"
|
||||||
|
msgstr "選択反転"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:110
|
||||||
|
msgid "Select None"
|
||||||
|
msgstr "選択解除"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:283
|
||||||
|
msgid "Images:"
|
||||||
|
msgstr "画像:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:300
|
||||||
|
msgid "Comments:"
|
||||||
|
msgstr "コメント:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:308
|
||||||
|
msgid "Category:"
|
||||||
|
msgstr "カテゴリ:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:317
|
||||||
|
msgid "Date:"
|
||||||
|
msgstr "日付:"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:90 libkipi/imagedialog.cpp:110
|
||||||
|
msgid "Select Image From Album"
|
||||||
|
msgstr "アルバムから画像を選択"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:128
|
||||||
|
msgid "Image selector dialog"
|
||||||
|
msgstr "画像選択ダイアログ"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:130
|
||||||
|
msgid "A Kipi dialog for image selection"
|
||||||
|
msgstr "KIPI 画像選択ダイアログ"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:139
|
||||||
|
msgid "Kipi Plugins Handbooks"
|
||||||
|
msgstr "KIPI プラグインハンドブック"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:147
|
||||||
|
msgid "Album Name"
|
||||||
|
msgstr "アルバム名"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:152
|
||||||
|
msgid "Image Name"
|
||||||
|
msgstr "画像名"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:161 libkipi/imagedialog.cpp:240
|
||||||
|
msgid "No image selected"
|
||||||
|
msgstr "画像が選択されていません"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:274
|
||||||
|
msgid "No images selected"
|
||||||
|
msgstr "画像が選択されていません"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:293
|
||||||
|
#, c-format
|
||||||
|
msgid ""
|
||||||
|
"_n: 1 image selected\n"
|
||||||
|
"%n images selected"
|
||||||
|
msgstr "選択済みの画像 %n 個"
|
||||||
|
|
||||||
|
#: _translatorinfo.cpp:1
|
||||||
|
msgid ""
|
||||||
|
"_: NAME OF TRANSLATORS\n"
|
||||||
|
"Your names"
|
||||||
|
msgstr "Yukiko BANDO"
|
||||||
|
|
||||||
|
#: _translatorinfo.cpp:3
|
||||||
|
msgid ""
|
||||||
|
"_: EMAIL OF TRANSLATORS\n"
|
||||||
|
"Your emails"
|
||||||
|
msgstr "ybando@k6.dion.ne.jp"
|
@ -0,0 +1,3 @@
|
|||||||
|
KDE_LANG = lt
|
||||||
|
SUBDIRS = $(AUTODIRS)
|
||||||
|
POFILES = AUTO
|
@ -0,0 +1,176 @@
|
|||||||
|
# Lithuanian translation of the packate
|
||||||
|
# Automatically generated, 2005.
|
||||||
|
#
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: ziogelis 77\n"
|
||||||
|
"POT-Creation-Date: 2006-10-03 08:51+0200\n"
|
||||||
|
"PO-Revision-Date: 2005-05-12 01:26+0200\n"
|
||||||
|
"Last-Translator: Automatically generated\n"
|
||||||
|
"Language-Team: none\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:171
|
||||||
|
#, fuzzy
|
||||||
|
msgid "Status"
|
||||||
|
msgstr ""
|
||||||
|
"#-#-#-#-# kdmchooser.po (kdmchooser) #-#-#-#-#\n"
|
||||||
|
"Statusas\n"
|
||||||
|
"#-#-#-#-# kdmgreet.po (kdmgreet) #-#-#-#-#\n"
|
||||||
|
"Būsena\n"
|
||||||
|
"#-#-#-#-# khelpcenter.po (khelpcenter) #-#-#-#-#\n"
|
||||||
|
"Būvis\n"
|
||||||
|
"#-#-#-#-# kcminfo.po (kcminfo) #-#-#-#-#\n"
|
||||||
|
"Statusas\n"
|
||||||
|
"#-#-#-#-# konqueror.po (konqueror) #-#-#-#-#\n"
|
||||||
|
"Būvis\n"
|
||||||
|
"#-#-#-#-# kcmkded.po (kcmkded) #-#-#-#-#\n"
|
||||||
|
"Būvis\n"
|
||||||
|
"#-#-#-#-# ksysguard.po (ksysguard) #-#-#-#-#\n"
|
||||||
|
"Būklė\n"
|
||||||
|
"#-#-#-#-# ktorrent.po (ktorrent) #-#-#-#-#\n"
|
||||||
|
"Būsena\n"
|
||||||
|
"#-#-#-#-# kbackgammon.po (kbackgammon) #-#-#-#-#\n"
|
||||||
|
"Būsena\n"
|
||||||
|
"#-#-#-#-# kstars.po (kstars) #-#-#-#-#\n"
|
||||||
|
"Būsena\n"
|
||||||
|
"#-#-#-#-# libkdepim.po (libkdepim) #-#-#-#-#\n"
|
||||||
|
"Būsena\n"
|
||||||
|
"#-#-#-#-# korganizer.po (korganizer) #-#-#-#-#\n"
|
||||||
|
"Būsena\n"
|
||||||
|
"#-#-#-#-# akregator.po (akregator) #-#-#-#-#\n"
|
||||||
|
"Būsena\n"
|
||||||
|
"#-#-#-#-# kmail.po (kmail) #-#-#-#-#\n"
|
||||||
|
"Būsena\n"
|
||||||
|
"#-#-#-#-# kbabel.po (kbabel) #-#-#-#-#\n"
|
||||||
|
"Būsena\n"
|
||||||
|
"#-#-#-#-# kopete.po (kopete) #-#-#-#-#\n"
|
||||||
|
"Būsena\n"
|
||||||
|
"#-#-#-#-# kfileshare.po (kfileshare) #-#-#-#-#\n"
|
||||||
|
"Būsena\n"
|
||||||
|
"#-#-#-#-# kpf.po (kpf) #-#-#-#-#\n"
|
||||||
|
"Būsena\n"
|
||||||
|
"#-#-#-#-# ksirc.po (ksirc) #-#-#-#-#\n"
|
||||||
|
"Būsena"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:172
|
||||||
|
msgid "Current Actions"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:177
|
||||||
|
msgid "<p>This is the current tasks list released."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:184
|
||||||
|
msgid "<p>This is the list current percent task released."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:85
|
||||||
|
msgid "Folder"
|
||||||
|
msgstr "Aplankas"
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:176
|
||||||
|
msgid "Please select a directory first."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:181
|
||||||
|
msgid "Create Directory"
|
||||||
|
msgstr "Sukurti aplanką"
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:182
|
||||||
|
msgid "<qt>Enter new directory name (to be created as subdir of %1):</qt>"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionshared.cpp:81
|
||||||
|
msgid "Images"
|
||||||
|
msgstr "Paveikslai"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:109
|
||||||
|
msgid "Invert Selection"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:110
|
||||||
|
#, fuzzy
|
||||||
|
msgid "Select None"
|
||||||
|
msgstr ""
|
||||||
|
"#-#-#-#-# privacy.po (privacy) #-#-#-#-#\n"
|
||||||
|
"Nieko nežymėti\n"
|
||||||
|
"#-#-#-#-# digikam.po (digikam) #-#-#-#-#\n"
|
||||||
|
"Pasirinkti nieko\n"
|
||||||
|
"#-#-#-#-# kstars.po (kstars) #-#-#-#-#\n"
|
||||||
|
"Pasirinkti nieko"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:283
|
||||||
|
msgid "Images:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:300
|
||||||
|
#, fuzzy
|
||||||
|
msgid "Comments:"
|
||||||
|
msgstr ""
|
||||||
|
"#-#-#-#-# digikam.po (digikam) #-#-#-#-#\n"
|
||||||
|
"#-#-#-#-# quanta.po (quanta) #-#-#-#-#\n"
|
||||||
|
"Komentaras"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:308
|
||||||
|
msgid "Category:"
|
||||||
|
msgstr "Kategorija:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:317
|
||||||
|
msgid "Date:"
|
||||||
|
msgstr "Data:"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:90 libkipi/imagedialog.cpp:110
|
||||||
|
msgid "Select Image From Album"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:128
|
||||||
|
msgid "Image selector dialog"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:130
|
||||||
|
msgid "A Kipi dialog for image selection"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:139
|
||||||
|
msgid "Kipi Plugins Handbooks"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:147
|
||||||
|
msgid "Album Name"
|
||||||
|
msgstr "Albumo pavadinimas"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:152
|
||||||
|
msgid "Image Name"
|
||||||
|
msgstr "Atvaizdo vardas"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:161 libkipi/imagedialog.cpp:240
|
||||||
|
msgid "No image selected"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:274
|
||||||
|
msgid "No images selected"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:293
|
||||||
|
#, c-format
|
||||||
|
msgid ""
|
||||||
|
"_n: 1 image selected\n"
|
||||||
|
"%n images selected"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: _translatorinfo.cpp:1
|
||||||
|
#, fuzzy
|
||||||
|
msgid ""
|
||||||
|
"_: NAME OF TRANSLATORS\n"
|
||||||
|
"Your names"
|
||||||
|
msgstr "nobody"
|
||||||
|
|
||||||
|
#: _translatorinfo.cpp:3
|
||||||
|
#, fuzzy
|
||||||
|
msgid ""
|
||||||
|
"_: EMAIL OF TRANSLATORS\n"
|
||||||
|
"Your emails"
|
||||||
|
msgstr "nobody@nowhere.lt"
|
@ -0,0 +1,3 @@
|
|||||||
|
KDE_LANG = mt
|
||||||
|
SUBDIRS = $(AUTODIRS)
|
||||||
|
POFILES = AUTO
|
@ -0,0 +1,140 @@
|
|||||||
|
# translation of libkipi.po to Maltese
|
||||||
|
# translation of libkipi.po to
|
||||||
|
# Kevin Attard Compagno <kac_comp@webhostmalta.com>, 2004, 2005.
|
||||||
|
#
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: libkipi\n"
|
||||||
|
"POT-Creation-Date: 2006-10-03 08:51+0200\n"
|
||||||
|
"PO-Revision-Date: 2005-02-02 08:07+0100\n"
|
||||||
|
"Last-Translator: Kevin Attard Compagno <kac_comp@webhostmalta.com>\n"
|
||||||
|
"Language-Team: Maltese <mt@li.org>\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"X-Generator: KBabel 1.9.1\n"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:171
|
||||||
|
msgid "Status"
|
||||||
|
msgstr "Stat"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:172
|
||||||
|
#, fuzzy
|
||||||
|
msgid "Current Actions"
|
||||||
|
msgstr "Proċessi kurrenti"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:177
|
||||||
|
msgid "<p>This is the current tasks list released."
|
||||||
|
msgstr "<p>Din hija l-lista kurrenti ta' xogħolijiet imlestija."
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:184
|
||||||
|
msgid "<p>This is the list current percent task released."
|
||||||
|
msgstr ""
|
||||||
|
"<p>Dan huwa l-persentaġġ kurrenti ta' tlestija tal-lista tax-xogħolijiet."
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:85
|
||||||
|
msgid "Folder"
|
||||||
|
msgstr "Direttorju"
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:176
|
||||||
|
#, fuzzy
|
||||||
|
msgid "Please select a directory first."
|
||||||
|
msgstr "L-ewwel trid tagħżel direttorju"
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:181
|
||||||
|
msgid "Create Directory"
|
||||||
|
msgstr "Oħloq direttorju"
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:182
|
||||||
|
msgid "<qt>Enter new directory name (to be created as subdir of %1):</qt>"
|
||||||
|
msgstr ""
|
||||||
|
"<qt>Daħħal isem id-direttorju l-ġdid (bħala sotto-direttorju ta' %1):</qt>"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionshared.cpp:81
|
||||||
|
msgid "Images"
|
||||||
|
msgstr "Stampi"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:109
|
||||||
|
msgid "Invert Selection"
|
||||||
|
msgstr "Aqleb l-għażla"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:110
|
||||||
|
msgid "Select None"
|
||||||
|
msgstr "Xejn magħżul"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:283
|
||||||
|
msgid "Images:"
|
||||||
|
msgstr "Stampi:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:300
|
||||||
|
msgid "Comments:"
|
||||||
|
msgstr "Kummenti:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:308
|
||||||
|
msgid "Category:"
|
||||||
|
msgstr "Kategoriji:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:317
|
||||||
|
msgid "Date:"
|
||||||
|
msgstr "Data:"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:90 libkipi/imagedialog.cpp:110
|
||||||
|
msgid "Select Image From Album"
|
||||||
|
msgstr "Għażel stampa minn Album"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:128
|
||||||
|
msgid "Image selector dialog"
|
||||||
|
msgstr "Djalogu tal-għażla ta' l-istampi"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:130
|
||||||
|
msgid "A Kipi dialog for image selection"
|
||||||
|
msgstr "Djalogu Kipi għall-għażla ta' l-istampi"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:139
|
||||||
|
msgid "Kipi Plugins Handbooks"
|
||||||
|
msgstr "Plugins Kipi - Manwal"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:147
|
||||||
|
msgid "Album Name"
|
||||||
|
msgstr "Isem ta' l-Album"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:152
|
||||||
|
msgid "Image Name"
|
||||||
|
msgstr "Isem ta' l-istampa"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:161 libkipi/imagedialog.cpp:240
|
||||||
|
msgid "No image selected"
|
||||||
|
msgstr "Ebda stampa magħżula"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:274
|
||||||
|
msgid "No images selected"
|
||||||
|
msgstr "Ebda stampi magħżula"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:293
|
||||||
|
#, fuzzy, c-format
|
||||||
|
msgid ""
|
||||||
|
"_n: 1 image selected\n"
|
||||||
|
"%n images selected"
|
||||||
|
msgstr ""
|
||||||
|
"Stampa waħda magħzula\n"
|
||||||
|
"%1 stampi magħżula\n"
|
||||||
|
"%1-il stampa magħżula\n"
|
||||||
|
"%1 stampa magħzula"
|
||||||
|
|
||||||
|
#: _translatorinfo.cpp:1
|
||||||
|
msgid ""
|
||||||
|
"_: NAME OF TRANSLATORS\n"
|
||||||
|
"Your names"
|
||||||
|
msgstr "Kevin Attard Compagno"
|
||||||
|
|
||||||
|
#: _translatorinfo.cpp:3
|
||||||
|
msgid ""
|
||||||
|
"_: EMAIL OF TRANSLATORS\n"
|
||||||
|
"Your emails"
|
||||||
|
msgstr "kac_comp@webhostmalta.com"
|
||||||
|
|
||||||
|
#~ msgid "Batch process dialog"
|
||||||
|
#~ msgstr "Djalogu għal proċessar simultanju"
|
||||||
|
|
||||||
|
#~ msgid "A Kipi dialog for batch process operations"
|
||||||
|
#~ msgstr "Djalogu Kipi għal operazzjonijiet ta' proċessar simultanju"
|
@ -0,0 +1,3 @@
|
|||||||
|
KDE_LANG = nb
|
||||||
|
SUBDIRS = $(AUTODIRS)
|
||||||
|
POFILES = AUTO
|
@ -0,0 +1,136 @@
|
|||||||
|
# translation of libkipi.po to Norwegian Bokmaal
|
||||||
|
# translation of libkipi.po to Norsk Bokmål
|
||||||
|
# Nils Kristian Tomren <project@nilsk.net>, 2005, 2006.
|
||||||
|
#
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: libkipi\n"
|
||||||
|
"POT-Creation-Date: 2006-10-03 08:51+0200\n"
|
||||||
|
"PO-Revision-Date: 2006-02-25 23:12+0100\n"
|
||||||
|
"Last-Translator: Nils Kristian Tomren <project@nilsk.net>\n"
|
||||||
|
"Language-Team: Norwegian Bokmaal <i18n-no@lister.ping.uio.no>\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"X-Generator: KBabel 1.10.2\n"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:171
|
||||||
|
msgid "Status"
|
||||||
|
msgstr "Status"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:172
|
||||||
|
msgid "Current Actions"
|
||||||
|
msgstr "Aktuelle handlinger"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:177
|
||||||
|
msgid "<p>This is the current tasks list released."
|
||||||
|
msgstr "<p>Dette er den aktuelle oppgavelisten."
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:184
|
||||||
|
msgid "<p>This is the list current percent task released."
|
||||||
|
msgstr "<p>Dette er den aktuelle prosentvise oppgavelisten."
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:85
|
||||||
|
msgid "Folder"
|
||||||
|
msgstr "Mappe"
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:176
|
||||||
|
msgid "Please select a directory first."
|
||||||
|
msgstr "Vennligst velg en mappe først."
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:181
|
||||||
|
msgid "Create Directory"
|
||||||
|
msgstr "Opprett mappe"
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:182
|
||||||
|
msgid "<qt>Enter new directory name (to be created as subdir of %1):</qt>"
|
||||||
|
msgstr ""
|
||||||
|
"<qt>Skriv navnet på den nye mappen (som skal opprettes som undermappe i "
|
||||||
|
"%1):</qt>"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionshared.cpp:81
|
||||||
|
msgid "Images"
|
||||||
|
msgstr "Bilder"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:109
|
||||||
|
msgid "Invert Selection"
|
||||||
|
msgstr "Inverter markering"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:110
|
||||||
|
msgid "Select None"
|
||||||
|
msgstr "Fjern alle markeringer"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:283
|
||||||
|
msgid "Images:"
|
||||||
|
msgstr "Bilder:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:300
|
||||||
|
msgid "Comments:"
|
||||||
|
msgstr "Kommentarer:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:308
|
||||||
|
msgid "Category:"
|
||||||
|
msgstr "Kategori:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:317
|
||||||
|
msgid "Date:"
|
||||||
|
msgstr "Dato:"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:90 libkipi/imagedialog.cpp:110
|
||||||
|
msgid "Select Image From Album"
|
||||||
|
msgstr "Marker et bilde fra albumet"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:128
|
||||||
|
msgid "Image selector dialog"
|
||||||
|
msgstr "Bildevelgerdialog"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:130
|
||||||
|
msgid "A Kipi dialog for image selection"
|
||||||
|
msgstr "Et KIPI-tillegg til bildevalg"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:139
|
||||||
|
msgid "Kipi Plugins Handbooks"
|
||||||
|
msgstr "Håndbøker til KIPI-tillegg"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:147
|
||||||
|
msgid "Album Name"
|
||||||
|
msgstr "Albumnavn"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:152
|
||||||
|
msgid "Image Name"
|
||||||
|
msgstr "Bildenavn"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:161 libkipi/imagedialog.cpp:240
|
||||||
|
msgid "No image selected"
|
||||||
|
msgstr "Inget bilde markert"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:274
|
||||||
|
msgid "No images selected"
|
||||||
|
msgstr "Ingen bilder markert"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:293
|
||||||
|
#, c-format
|
||||||
|
msgid ""
|
||||||
|
"_n: 1 image selected\n"
|
||||||
|
"%n images selected"
|
||||||
|
msgstr ""
|
||||||
|
"1 bilde markert\n"
|
||||||
|
"%n bilder markert"
|
||||||
|
|
||||||
|
#: _translatorinfo.cpp:1
|
||||||
|
msgid ""
|
||||||
|
"_: NAME OF TRANSLATORS\n"
|
||||||
|
"Your names"
|
||||||
|
msgstr "Nils Kristian Tomren"
|
||||||
|
|
||||||
|
#: _translatorinfo.cpp:3
|
||||||
|
msgid ""
|
||||||
|
"_: EMAIL OF TRANSLATORS\n"
|
||||||
|
"Your emails"
|
||||||
|
msgstr "project@nilsk.net"
|
||||||
|
|
||||||
|
#~ msgid "Batch process dialog"
|
||||||
|
#~ msgstr "Dialog for flerbildevektøy"
|
||||||
|
|
||||||
|
#~ msgid "A Kipi dialog for batch process operations"
|
||||||
|
#~ msgstr "Et KIPI-tillegg til gruppevis behandling av bilder"
|
@ -0,0 +1,3 @@
|
|||||||
|
KDE_LANG = nl
|
||||||
|
SUBDIRS = $(AUTODIRS)
|
||||||
|
POFILES = AUTO
|
@ -0,0 +1,138 @@
|
|||||||
|
# translation of libkipi.po to
|
||||||
|
# translation of libkipi.po to Dutch
|
||||||
|
# translation of libkipi.po to Nederlands
|
||||||
|
# Wilbert Berendsen <wbsoft@xs4all.nl>, 2004.
|
||||||
|
# Rinse de Vries <rinsedevries@kde.nl>, 2004, 2005.
|
||||||
|
# Rinse de Vries <RinseDeVries@home.nl>, 2005.
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: libkipi\n"
|
||||||
|
"POT-Creation-Date: 2006-10-03 08:51+0200\n"
|
||||||
|
"PO-Revision-Date: 2005-05-15 23:46+0200\n"
|
||||||
|
"Last-Translator: Rinse de Vries <RinseDeVries@home.nl>\n"
|
||||||
|
"Language-Team: <nl@li.org>\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"X-Generator: KBabel 1.10\n"
|
||||||
|
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:171
|
||||||
|
msgid "Status"
|
||||||
|
msgstr "Status"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:172
|
||||||
|
msgid "Current Actions"
|
||||||
|
msgstr "Huidige acties"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:177
|
||||||
|
msgid "<p>This is the current tasks list released."
|
||||||
|
msgstr "<p>Dit is de lijst met voltooide taken."
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:184
|
||||||
|
msgid "<p>This is the list current percent task released."
|
||||||
|
msgstr "<p>Dit is het percentage voltooide taken."
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:85
|
||||||
|
msgid "Folder"
|
||||||
|
msgstr "Map"
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:176
|
||||||
|
msgid "Please select a directory first."
|
||||||
|
msgstr "Selecteer eerst een map."
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:181
|
||||||
|
msgid "Create Directory"
|
||||||
|
msgstr "Map aanmaken"
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:182
|
||||||
|
msgid "<qt>Enter new directory name (to be created as subdir of %1):</qt>"
|
||||||
|
msgstr ""
|
||||||
|
"<qt>Voer de nieuwe mapnaam in (deze wordt aangemaakt als submap van %1)</qt>"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionshared.cpp:81
|
||||||
|
msgid "Images"
|
||||||
|
msgstr "Afbeeldingen"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:109
|
||||||
|
msgid "Invert Selection"
|
||||||
|
msgstr "Selectie omkeren"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:110
|
||||||
|
msgid "Select None"
|
||||||
|
msgstr "Niets selecteren"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:283
|
||||||
|
msgid "Images:"
|
||||||
|
msgstr "Afbeeldingen:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:300
|
||||||
|
msgid "Comments:"
|
||||||
|
msgstr "Commentaar:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:308
|
||||||
|
msgid "Category:"
|
||||||
|
msgstr "Categorie:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:317
|
||||||
|
msgid "Date:"
|
||||||
|
msgstr "Datum:"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:90 libkipi/imagedialog.cpp:110
|
||||||
|
msgid "Select Image From Album"
|
||||||
|
msgstr "Afbeelding uit album selecteren"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:128
|
||||||
|
msgid "Image selector dialog"
|
||||||
|
msgstr "KIPI-dialoog voor afbeeldingsselectie"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:130
|
||||||
|
msgid "A Kipi dialog for image selection"
|
||||||
|
msgstr "Een KIPI-dialoog voor het selecteren van afbeeldingen"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:139
|
||||||
|
msgid "Kipi Plugins Handbooks"
|
||||||
|
msgstr "KIPI-plugins-handboeken"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:147
|
||||||
|
msgid "Album Name"
|
||||||
|
msgstr "Albumnaam"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:152
|
||||||
|
msgid "Image Name"
|
||||||
|
msgstr "Afbeeldingnaam"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:161 libkipi/imagedialog.cpp:240
|
||||||
|
msgid "No image selected"
|
||||||
|
msgstr "Geen afbeelding geselecteerd"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:274
|
||||||
|
msgid "No images selected"
|
||||||
|
msgstr "Geen afbeeldingen geselecteerd"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:293
|
||||||
|
#, c-format
|
||||||
|
msgid ""
|
||||||
|
"_n: 1 image selected\n"
|
||||||
|
"%n images selected"
|
||||||
|
msgstr ""
|
||||||
|
"%n afbeelding geselecteerd\n"
|
||||||
|
"%n afbeeldingen geselecteerd"
|
||||||
|
|
||||||
|
#: _translatorinfo.cpp:1
|
||||||
|
msgid ""
|
||||||
|
"_: NAME OF TRANSLATORS\n"
|
||||||
|
"Your names"
|
||||||
|
msgstr "Wilbert Berendsen,Rinse de Vries"
|
||||||
|
|
||||||
|
#: _translatorinfo.cpp:3
|
||||||
|
msgid ""
|
||||||
|
"_: EMAIL OF TRANSLATORS\n"
|
||||||
|
"Your emails"
|
||||||
|
msgstr "wbsoft@xs4all.nl,rinsedevries@kde.nl"
|
||||||
|
|
||||||
|
#~ msgid "Batch process dialog"
|
||||||
|
#~ msgstr "KIPI' verwerkingsdialoog"
|
||||||
|
|
||||||
|
#~ msgid "A Kipi dialog for batch process operations"
|
||||||
|
#~ msgstr "Een KIPI-dialoog voor verwerkingsoperaties"
|
@ -0,0 +1,3 @@
|
|||||||
|
KDE_LANG = pa
|
||||||
|
SUBDIRS = $(AUTODIRS)
|
||||||
|
POFILES = AUTO
|
@ -0,0 +1,136 @@
|
|||||||
|
# translation of libkipi.po to Punjabi
|
||||||
|
# translation of libkipi.po to Panjabi
|
||||||
|
# Amanpreet Singh Alam <aalam@redhat.com>, 2005.
|
||||||
|
# Amanpreet Singh Alam <amanpreetalam@yahoo.com>, 2005.
|
||||||
|
#
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: libkipi\n"
|
||||||
|
"POT-Creation-Date: 2006-10-03 08:51+0200\n"
|
||||||
|
"PO-Revision-Date: 2005-10-30 12:32+0530\n"
|
||||||
|
"Last-Translator: Amanpreet Singh Alam <amanpreetalam@yahoo.com>\n"
|
||||||
|
"Language-Team: Punjabi <fedora-trans-pa@redhat.com>\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"X-Generator: KBabel 1.9.1\n"
|
||||||
|
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:171
|
||||||
|
msgid "Status"
|
||||||
|
msgstr "ਹਾਲਤ"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:172
|
||||||
|
msgid "Current Actions"
|
||||||
|
msgstr "ਮੌਜੂਦਾ ਕਾਰਵਾਈ"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:177
|
||||||
|
msgid "<p>This is the current tasks list released."
|
||||||
|
msgstr "<p>ਇਹ ਮੌਜੂਦਾ ਕੰਮ ਸੂਚੀ ਜਾਰੀ ਹੈ।"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:184
|
||||||
|
msgid "<p>This is the list current percent task released."
|
||||||
|
msgstr "<p>ਇਹ ਫ਼ੀ-ਸਦੀ ਜਾਰੀ ਕੰਮਾਂ ਦੀ ਸੂਚੀ ਹੈ।"
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:85
|
||||||
|
msgid "Folder"
|
||||||
|
msgstr "ਫੋਲਡਰ"
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:176
|
||||||
|
msgid "Please select a directory first."
|
||||||
|
msgstr "ਕਿਰਪਾ ਕਰਕੇ ਪਹਿਲਾਂ ਇੱਕ ਡਾਇਰੈਕਟਰੀ ਚੁਣੋ।"
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:181
|
||||||
|
msgid "Create Directory"
|
||||||
|
msgstr "ਡਾਇਰੈਕਟਰੀ ਬਣਾਓ"
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:182
|
||||||
|
msgid "<qt>Enter new directory name (to be created as subdir of %1):</qt>"
|
||||||
|
msgstr "<qt>ਇੱਕ ਨਵਾਂ ਡਾਇਰੈਕਟਰੀ ਨਾਂ (%1 ਦੀ ਸਬ-ਡਾਇ ਬਣਾਉਣ ਲਈ) ਦਿਓ:</qt>"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionshared.cpp:81
|
||||||
|
msgid "Images"
|
||||||
|
msgstr "ਚਿੱਤਰ"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:109
|
||||||
|
msgid "Invert Selection"
|
||||||
|
msgstr "ਉਲਟ ਚੋਣ"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:110
|
||||||
|
msgid "Select None"
|
||||||
|
msgstr "ਕੋਈ ਨਾ ਚੁਣੋ"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:283
|
||||||
|
msgid "Images:"
|
||||||
|
msgstr "ਚਿੱਤਰ:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:300
|
||||||
|
msgid "Comments:"
|
||||||
|
msgstr "ਟਿੱਪਣੀ:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:308
|
||||||
|
msgid "Category:"
|
||||||
|
msgstr "ਵਰਗ:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:317
|
||||||
|
msgid "Date:"
|
||||||
|
msgstr "ਮਿਤੀ:"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:90 libkipi/imagedialog.cpp:110
|
||||||
|
msgid "Select Image From Album"
|
||||||
|
msgstr "ਐਲਬਮ ਤੋਂ ਚਿੱਤਰ ਚੁਣੋ"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:128
|
||||||
|
msgid "Image selector dialog"
|
||||||
|
msgstr "ਚਿੱਤਰ ਚੋਣਕਾਰ ਵਾਰਤਾਲਾਪ"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:130
|
||||||
|
msgid "A Kipi dialog for image selection"
|
||||||
|
msgstr "ਚਿੱਤਰ ਚੋਣ ਲਈ ਕਿੱਪੀ ਵਾਰਤਾਲਾਪ"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:139
|
||||||
|
msgid "Kipi Plugins Handbooks"
|
||||||
|
msgstr "ਕਿੱਪੀ ਪਲੱਗਿੰਨ ਹੱਥਲੀ ਕਿਤਾਬ"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:147
|
||||||
|
msgid "Album Name"
|
||||||
|
msgstr "ਐਲਬਮ ਨਾਂ"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:152
|
||||||
|
msgid "Image Name"
|
||||||
|
msgstr "ਚਿੱਤਰ ਨਾਂ"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:161 libkipi/imagedialog.cpp:240
|
||||||
|
msgid "No image selected"
|
||||||
|
msgstr "ਕੋਈ ਚਿੱਤਰ ਨਹੀਂ ਚੁਣਿਆ"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:274
|
||||||
|
msgid "No images selected"
|
||||||
|
msgstr "ਕੋਈ ਚਿੱਤਰ ਨਹੀਂ ਚੁਣੇ"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:293
|
||||||
|
#, c-format
|
||||||
|
msgid ""
|
||||||
|
"_n: 1 image selected\n"
|
||||||
|
"%n images selected"
|
||||||
|
msgstr ""
|
||||||
|
"1 ਚਿੱਤਰ ਚੁਣਿਆ\n"
|
||||||
|
"%n ਚਿੱਤਰ ਚੁਣੇ"
|
||||||
|
|
||||||
|
#: _translatorinfo.cpp:1
|
||||||
|
msgid ""
|
||||||
|
"_: NAME OF TRANSLATORS\n"
|
||||||
|
"Your names"
|
||||||
|
msgstr "ਅਮਨਪਰੀਤ ਸਿੰਘ ਆਲਮ"
|
||||||
|
|
||||||
|
#: _translatorinfo.cpp:3
|
||||||
|
msgid ""
|
||||||
|
"_: EMAIL OF TRANSLATORS\n"
|
||||||
|
"Your emails"
|
||||||
|
msgstr "aalam@redhat.com"
|
||||||
|
|
||||||
|
#~ msgid "Batch process dialog"
|
||||||
|
#~ msgstr "ਬੈਂਚ ਕਾਰਵਾਈ ਵਾਰਤਾਲਾਪ"
|
||||||
|
|
||||||
|
#~ msgid "A Kipi dialog for batch process operations"
|
||||||
|
#~ msgstr "ਬੈਂਚ ਕਾਰਵਾਈ ਲਈ ਕਿੱਪੀ ਵਾਰਤਾਲਾਪ"
|
@ -0,0 +1,3 @@
|
|||||||
|
KDE_LANG = pl
|
||||||
|
SUBDIRS = $(AUTODIRS)
|
||||||
|
POFILES = AUTO
|
@ -0,0 +1,136 @@
|
|||||||
|
# translation of libkipi.po to
|
||||||
|
# translation of libkipi.po to Polish
|
||||||
|
# Igor Klimer <kigro@op.pl>, 2004.
|
||||||
|
# Igor Klimer <kigro@vp.pl>, 2005.
|
||||||
|
# Igor Klimer <igro@localhost.localdomain>, 2005.
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: libkipi\n"
|
||||||
|
"POT-Creation-Date: 2006-10-03 08:51+0200\n"
|
||||||
|
"PO-Revision-Date: 2005-09-04 19:57+0200\n"
|
||||||
|
"Last-Translator: Igor Klimer <igro@localhost.localdomain>\n"
|
||||||
|
"Language-Team: Polish <pl@li.org>\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"X-Generator: KBabel 1.10.2\n"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:171
|
||||||
|
msgid "Status"
|
||||||
|
msgstr "Status"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:172
|
||||||
|
msgid "Current Actions"
|
||||||
|
msgstr "Aktualne operacje"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:177
|
||||||
|
msgid "<p>This is the current tasks list released."
|
||||||
|
msgstr "<p>To jest lista aktualnych zadań."
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:184
|
||||||
|
msgid "<p>This is the list current percent task released."
|
||||||
|
msgstr "<p>To jest lista procentowego ukończenia aktualnych zadań."
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:85
|
||||||
|
msgid "Folder"
|
||||||
|
msgstr "Folder"
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:176
|
||||||
|
msgid "Please select a directory first."
|
||||||
|
msgstr "Proszę najpierw wybrać katalog."
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:181
|
||||||
|
msgid "Create Directory"
|
||||||
|
msgstr "Utwórz katalog"
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:182
|
||||||
|
msgid "<qt>Enter new directory name (to be created as subdir of %1):</qt>"
|
||||||
|
msgstr "<qt>Wpisywanie nowej nazwy katalogu (jako podkatalog %1):</qt>"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionshared.cpp:81
|
||||||
|
msgid "Images"
|
||||||
|
msgstr "Zdjęcia"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:109
|
||||||
|
msgid "Invert Selection"
|
||||||
|
msgstr "Odwróć zaznaczenie"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:110
|
||||||
|
msgid "Select None"
|
||||||
|
msgstr "Odznacz wszystko"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:283
|
||||||
|
msgid "Images:"
|
||||||
|
msgstr "Zdjęcia:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:300
|
||||||
|
msgid "Comments:"
|
||||||
|
msgstr "Komentarze:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:308
|
||||||
|
msgid "Category:"
|
||||||
|
msgstr "Kategoria:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:317
|
||||||
|
msgid "Date:"
|
||||||
|
msgstr "Data:"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:90 libkipi/imagedialog.cpp:110
|
||||||
|
msgid "Select Image From Album"
|
||||||
|
msgstr "Wybierz zdjęcie z albumu"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:128
|
||||||
|
msgid "Image selector dialog"
|
||||||
|
msgstr "Okno wyboru zdjęcia"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:130
|
||||||
|
msgid "A Kipi dialog for image selection"
|
||||||
|
msgstr "Okno Kipi do wyboru zdjęcia"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:139
|
||||||
|
msgid "Kipi Plugins Handbooks"
|
||||||
|
msgstr "Podręczniki wtyczek Kipi"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:147
|
||||||
|
msgid "Album Name"
|
||||||
|
msgstr "Nazwa albumu"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:152
|
||||||
|
msgid "Image Name"
|
||||||
|
msgstr "Nazwa zdjęcia"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:161 libkipi/imagedialog.cpp:240
|
||||||
|
msgid "No image selected"
|
||||||
|
msgstr "Nie wybrano żadnego zdjęcia"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:274
|
||||||
|
msgid "No images selected"
|
||||||
|
msgstr "Nie wybrano żadnych zdjęć"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:293
|
||||||
|
#, c-format
|
||||||
|
msgid ""
|
||||||
|
"_n: 1 image selected\n"
|
||||||
|
"%n images selected"
|
||||||
|
msgstr ""
|
||||||
|
"Wybrano jedno zdjęcie\n"
|
||||||
|
"Wybrano %n zdjęcia\n"
|
||||||
|
"Wybrano %n zdjęć"
|
||||||
|
|
||||||
|
#: _translatorinfo.cpp:1
|
||||||
|
msgid ""
|
||||||
|
"_: NAME OF TRANSLATORS\n"
|
||||||
|
"Your names"
|
||||||
|
msgstr "Igor Klimer"
|
||||||
|
|
||||||
|
#: _translatorinfo.cpp:3
|
||||||
|
msgid ""
|
||||||
|
"_: EMAIL OF TRANSLATORS\n"
|
||||||
|
"Your emails"
|
||||||
|
msgstr "kigro@vp.pl"
|
||||||
|
|
||||||
|
#~ msgid "Batch process dialog"
|
||||||
|
#~ msgstr "Okno operacji grupowych"
|
||||||
|
|
||||||
|
#~ msgid "A Kipi dialog for batch process operations"
|
||||||
|
#~ msgstr "Okno Kipi do operacji grupowych"
|
@ -0,0 +1,3 @@
|
|||||||
|
KDE_LANG = pt
|
||||||
|
SUBDIRS = $(AUTODIRS)
|
||||||
|
POFILES = AUTO
|
@ -0,0 +1,381 @@
|
|||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: libkipi\n"
|
||||||
|
"POT-Creation-Date: 2006-10-03 08:51+0200\n"
|
||||||
|
"PO-Revision-Date: 2005-06-05 23:03+0100\n"
|
||||||
|
"Last-Translator: Pedro Morais <morais@kde.org>\n"
|
||||||
|
"Language-Team: pt <kde-i18n-pt@kde.org>\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"X-POFile-SpellExtra: Kipi \n"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:171
|
||||||
|
msgid "Status"
|
||||||
|
msgstr "Estado"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:172
|
||||||
|
msgid "Current Actions"
|
||||||
|
msgstr "Acções Actuais"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:177
|
||||||
|
msgid "<p>This is the current tasks list released."
|
||||||
|
msgstr "<p>Esta é a lista de libertação das tarefas actuais."
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:184
|
||||||
|
msgid "<p>This is the list current percent task released."
|
||||||
|
msgstr "<p>Esta é a lista de libertação percentual das tarefas actuais."
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:85
|
||||||
|
msgid "Folder"
|
||||||
|
msgstr "Pasta"
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:176
|
||||||
|
msgid "Please select a directory first."
|
||||||
|
msgstr "Por favor seleccione primeiro uma pasta."
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:181
|
||||||
|
msgid "Create Directory"
|
||||||
|
msgstr "Criar a Pasta"
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:182
|
||||||
|
msgid "<qt>Enter new directory name (to be created as subdir of %1):</qt>"
|
||||||
|
msgstr ""
|
||||||
|
"<qt>Indique o nome da nova pasta (a ser criada como subpasta de %1):</qt>"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionshared.cpp:81
|
||||||
|
msgid "Images"
|
||||||
|
msgstr "Imagens"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:109
|
||||||
|
msgid "Invert Selection"
|
||||||
|
msgstr "Inverter a Selecção"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:110
|
||||||
|
msgid "Select None"
|
||||||
|
msgstr "Seleccionar Nada"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:283
|
||||||
|
msgid "Images:"
|
||||||
|
msgstr "Imagens:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:300
|
||||||
|
msgid "Comments:"
|
||||||
|
msgstr "Comentários:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:308
|
||||||
|
msgid "Category:"
|
||||||
|
msgstr "Categoria:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:317
|
||||||
|
msgid "Date:"
|
||||||
|
msgstr "Data:"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:90 libkipi/imagedialog.cpp:110
|
||||||
|
msgid "Select Image From Album"
|
||||||
|
msgstr "Seleccione uma Imagem do Álbum"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:128
|
||||||
|
msgid "Image selector dialog"
|
||||||
|
msgstr "Janela de selecção de imagens"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:130
|
||||||
|
msgid "A Kipi dialog for image selection"
|
||||||
|
msgstr "Uma janela do Kipi para seleccionar imagens"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:139
|
||||||
|
msgid "Kipi Plugins Handbooks"
|
||||||
|
msgstr "Manuais dos 'Plugins' Kipi"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:147
|
||||||
|
msgid "Album Name"
|
||||||
|
msgstr "Nome do Álbum"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:152
|
||||||
|
msgid "Image Name"
|
||||||
|
msgstr "Nome da Imagem"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:161 libkipi/imagedialog.cpp:240
|
||||||
|
msgid "No image selected"
|
||||||
|
msgstr "Nenhuma imagem seleccionada"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:274
|
||||||
|
msgid "No images selected"
|
||||||
|
msgstr "Nenhuma imagem seleccionada"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:293
|
||||||
|
#, c-format
|
||||||
|
msgid ""
|
||||||
|
"_n: 1 image selected\n"
|
||||||
|
"%n images selected"
|
||||||
|
msgstr ""
|
||||||
|
"%n imagem seleccionada<\n"
|
||||||
|
"%n imagens seleccionadas"
|
||||||
|
|
||||||
|
#: _translatorinfo.cpp:1
|
||||||
|
msgid ""
|
||||||
|
"_: NAME OF TRANSLATORS\n"
|
||||||
|
"Your names"
|
||||||
|
msgstr "José Nuno Pires"
|
||||||
|
|
||||||
|
#: _translatorinfo.cpp:3
|
||||||
|
msgid ""
|
||||||
|
"_: EMAIL OF TRANSLATORS\n"
|
||||||
|
"Your emails"
|
||||||
|
msgstr "jncp@netcabo.pt"
|
||||||
|
|
||||||
|
#~ msgid "Batch process dialog"
|
||||||
|
#~ msgstr "Janela de processamento em lote"
|
||||||
|
|
||||||
|
#~ msgid "A Kipi dialog for batch process operations"
|
||||||
|
#~ msgstr "Uma janela do Kipi para operações de processamento em lote"
|
||||||
|
|
||||||
|
#~ msgid ""
|
||||||
|
#~ "<p>\n"
|
||||||
|
#~ "<table border=\"0\" cellpadding=\"0\" cellspacing=\"10\" align=\"center\">\n"
|
||||||
|
#~ "<tr>\n"
|
||||||
|
#~ "<td>\n"
|
||||||
|
#~ "<img src=\"hicolor/48x48/apps/kipi.png\">\n"
|
||||||
|
#~ "</td>\n"
|
||||||
|
#~ "<td>\n"
|
||||||
|
#~ "Did you know that you could brighten up your images using Batch Color Images plugin for increased contrast?\n"
|
||||||
|
#~ "</td>\n"
|
||||||
|
#~ "</tr>\n"
|
||||||
|
#~ "</table>\n"
|
||||||
|
#~ "</p>\n"
|
||||||
|
#~ msgstr ""
|
||||||
|
#~ "<p>\n"
|
||||||
|
#~ "<table border=\"0\" cellpadding=\"0\" cellspacing=\"10\" align=\"center\">\n"
|
||||||
|
#~ "<tr>\n"
|
||||||
|
#~ "<td>\n"
|
||||||
|
#~ "<img src=\"hicolor/48x48/apps/kipi.png\">\n"
|
||||||
|
#~ "</td>\n"
|
||||||
|
#~ "<td>\n"
|
||||||
|
#~ "Sabia que pode aumentar o brilho das suas imagens utilizando o 'plugin' de cor de de imagens em lote para melhoria de contraste?\n"
|
||||||
|
#~ "</td>\n"
|
||||||
|
#~ "</tr>\n"
|
||||||
|
#~ "</table>\n"
|
||||||
|
#~ "</p>\n"
|
||||||
|
|
||||||
|
#~ msgid ""
|
||||||
|
#~ "<p>\n"
|
||||||
|
#~ "<table border=\"0\" cellpadding=\"0\" cellspacing=\"10\" align=\"center\">\n"
|
||||||
|
#~ "<tr>\n"
|
||||||
|
#~ "<td>\n"
|
||||||
|
#~ "<img src=\"hicolor/48x48/apps/kipi.png\">\n"
|
||||||
|
#~ "</td>\n"
|
||||||
|
#~ "<td>\n"
|
||||||
|
#~ "Did you know that you could abort a slideshow using <b>ESC</b>?\n"
|
||||||
|
#~ "</td>\n"
|
||||||
|
#~ "</tr>\n"
|
||||||
|
#~ "</table>\n"
|
||||||
|
#~ "</p>\n"
|
||||||
|
#~ msgstr ""
|
||||||
|
#~ "<p>\n"
|
||||||
|
#~ "<table border=\"0\" cellpadding=\"0\" cellspacing=\"10\" align=\"center\">\n"
|
||||||
|
#~ "<tr>\n"
|
||||||
|
#~ "<td>\n"
|
||||||
|
#~ "<img src=\"hicolor/48x48/apps/kipi.png\">\n"
|
||||||
|
#~ "</td>\n"
|
||||||
|
#~ "<td>\n"
|
||||||
|
#~ "Sabia que pode cancelar uma apresentação utilizando o <b>ESC</b>?\n"
|
||||||
|
#~ "</td>\n"
|
||||||
|
#~ "</tr>\n"
|
||||||
|
#~ "</table>\n"
|
||||||
|
#~ "</p>\n"
|
||||||
|
|
||||||
|
#~ msgid ""
|
||||||
|
#~ "<p>Did you know that you could brighten up your images using Batch Color Images plugin for increased contrast?\n"
|
||||||
|
#~ "</p>\n"
|
||||||
|
#~ "<br>\n"
|
||||||
|
#~ "<center>\n"
|
||||||
|
#~ "<img src=\"hicolor/48x48/apps/kipi.png\">\n"
|
||||||
|
#~ "</center>\n"
|
||||||
|
#~ msgstr ""
|
||||||
|
#~ "<p>Sabia que pode aumentar o brilho das suas imagens utilizando o 'plugin' de aumento de contraste em lote de imagens?\n"
|
||||||
|
#~ "</p>\n"
|
||||||
|
#~ "<br>\n"
|
||||||
|
#~ "<center>\n"
|
||||||
|
#~ "<img src=\"hicolor/48x48/apps/kipi.png\">\n"
|
||||||
|
#~ "</center>\n"
|
||||||
|
|
||||||
|
#~ msgid ""
|
||||||
|
#~ "<p>Did you know that you could abort a slideshow using <b>ESC</b>?\n"
|
||||||
|
#~ "</p>\n"
|
||||||
|
#~ "<br>\n"
|
||||||
|
#~ "<center>\n"
|
||||||
|
#~ "<img src=\"hicolor/48x48/apps/kipi.png\">\n"
|
||||||
|
#~ "</center>\n"
|
||||||
|
#~ msgstr ""
|
||||||
|
#~ "<p>Sabia que pode cancelar uma apresentação utilizando o <b>ESC</b>?\n"
|
||||||
|
#~ "</p>\n"
|
||||||
|
#~ "<br>\n"
|
||||||
|
#~ "<center>\n"
|
||||||
|
#~ "<img src=\"hicolor/48x48/apps/kipi.png\">\n"
|
||||||
|
#~ "</center>\n"
|
||||||
|
|
||||||
|
#~ msgid ""
|
||||||
|
#~ "<p>Did you know that Kipi library provide a scanner plugin that gives you direct access to your scanner?\n"
|
||||||
|
#~ "</p>\n"
|
||||||
|
#~ "<br>\n"
|
||||||
|
#~ "<center>\n"
|
||||||
|
#~ "<img src=\"hicolor/48x48/apps/kipi.png\">\n"
|
||||||
|
#~ "</center>\n"
|
||||||
|
#~ msgstr ""
|
||||||
|
#~ "<p>Sabia que a biblioteca Kipi fornece um 'plugin' de digitalização que lhe dá acesso directo ao seu digitalizador?\n"
|
||||||
|
#~ "</p>\n"
|
||||||
|
#~ "<br>\n"
|
||||||
|
#~ "<center>\n"
|
||||||
|
#~ "<img src=\"hicolor/48x48/apps/kipi.png\">\n"
|
||||||
|
#~ "</center>\n"
|
||||||
|
|
||||||
|
#~ msgid ""
|
||||||
|
#~ "<p>Did you know that you can take a screenshoot with Kipi library and save the result to an Album with some comments?\n"
|
||||||
|
#~ "</p>\n"
|
||||||
|
#~ "<br>\n"
|
||||||
|
#~ "<center>\n"
|
||||||
|
#~ "<img src=\"hicolor/48x48/apps/kipi.png\">\n"
|
||||||
|
#~ "</center>\n"
|
||||||
|
#~ msgstr ""
|
||||||
|
#~ "<p>Sabia que pode fazer uma captura de ecrã com a biblioteca Kipi e gravar o resultado para um Álbum com comentários?\n"
|
||||||
|
#~ "</p>\n"
|
||||||
|
#~ "<br>\n"
|
||||||
|
#~ "<center>\n"
|
||||||
|
#~ "<img src=\"hicolor/48x48/apps/kipi.png\">\n"
|
||||||
|
#~ "</center>\n"
|
||||||
|
|
||||||
|
#~ msgid ""
|
||||||
|
#~ "<p>Did you know that you can use the <b>LZW</b> compression to reduce the size of the <b>TIFF</b> image files in the Convert Images plugin?\n"
|
||||||
|
#~ "</p>\n"
|
||||||
|
#~ "<br>\n"
|
||||||
|
#~ "<center>\n"
|
||||||
|
#~ "<img src=\"hicolor/48x48/apps/kipi.png\">\n"
|
||||||
|
#~ "</center>\n"
|
||||||
|
#~ msgstr ""
|
||||||
|
#~ "<p>Sabia que pode utilizar a compressão <b>LZW</b> para reduzir o tamanho dos ficheiros de imagem <b>TIFF</b> no 'plugin' Converter Imagens?\n"
|
||||||
|
#~ "</p>\n"
|
||||||
|
#~ "<br>\n"
|
||||||
|
#~ "<center>\n"
|
||||||
|
#~ "<img src=\"hicolor/48x48/apps/kipi.png\">\n"
|
||||||
|
#~ "</center>\n"
|
||||||
|
|
||||||
|
#~ msgid ""
|
||||||
|
#~ "<p>Did you know that all images operations in the batch processing images plugins run without losing the <b>EXIF</b> information in the <b>JPEG</b> files?\n"
|
||||||
|
#~ "</p>\n"
|
||||||
|
#~ "<br>\n"
|
||||||
|
#~ "<center>\n"
|
||||||
|
#~ "<img src=\"hicolor/48x48/apps/kipi.png\">\n"
|
||||||
|
#~ "</center>\n"
|
||||||
|
#~ msgstr ""
|
||||||
|
#~ "<p>Sabia que todas as operações sobre imagens nos 'plugins' de processamento de imagens em lote correm sem perder os dados <b>EXIF</b> dos ficheiros <b>JPEG</b>?\n"
|
||||||
|
#~ "</p>\n"
|
||||||
|
#~ "<br>\n"
|
||||||
|
#~ "<center>\n"
|
||||||
|
#~ "<img src=\"hicolor/48x48/apps/kipi.png\">\n"
|
||||||
|
#~ "</center>\n"
|
||||||
|
|
||||||
|
#~ msgid ""
|
||||||
|
#~ "<p>Did you know that the <b>Noise Reduction</b> option in the <b>Filter Images</b> plugin can be used to improve the rendering of images taken with an analog camera?\n"
|
||||||
|
#~ "</p>\n"
|
||||||
|
#~ "<br>\n"
|
||||||
|
#~ "<center>\n"
|
||||||
|
#~ "<img src=\"hicolor/48x48/apps/kipi.png\">\n"
|
||||||
|
#~ "</center>\n"
|
||||||
|
#~ msgstr ""
|
||||||
|
#~ "<p>Sabia que pode utilizar a opção de <b>Redução de Ruído</b> no 'plugin' <b>Filtrar Imagem</b> pode ser utilizado para melhorar a aparência de imagens tiradas com uma máquina analógica?\n"
|
||||||
|
#~ "</p>\n"
|
||||||
|
#~ "<br>\n"
|
||||||
|
#~ "<center>\n"
|
||||||
|
#~ "<img src=\"hicolor/48x48/apps/kipi.png\">\n"
|
||||||
|
#~ "</center>\n"
|
||||||
|
|
||||||
|
#~ msgid ""
|
||||||
|
#~ "<p>Did you know that you can use the drag and drop feature in e-mail images to add some items to the list?\n"
|
||||||
|
#~ "</p>\n"
|
||||||
|
#~ "<br>\n"
|
||||||
|
#~ "<center>\n"
|
||||||
|
#~ "<img src=\"hicolor/48x48/apps/kipi.png\">\n"
|
||||||
|
#~ "</center>\n"
|
||||||
|
#~ msgstr ""
|
||||||
|
#~ "<p>Sabia que pode utilizar o arrastar e largar nas imagens e-mail para adicionar alguns itens à lista?\n"
|
||||||
|
#~ "</p>\n"
|
||||||
|
#~ "<br>\n"
|
||||||
|
#~ "<center>\n"
|
||||||
|
#~ "<img src=\"hicolor/48x48/apps/kipi.png\">\n"
|
||||||
|
#~ "</center>\n"
|
||||||
|
|
||||||
|
#~ msgid ""
|
||||||
|
#~ "<p>Did you know that if you want reduce the space disk used by your images in the Albums database, you could try using the recompressImages plugin?\n"
|
||||||
|
#~ "</p>\n"
|
||||||
|
#~ "<br>\n"
|
||||||
|
#~ "<center>\n"
|
||||||
|
#~ "<img src=\"hicolor/48x48/apps/kipi.png\">\n"
|
||||||
|
#~ "</center>\n"
|
||||||
|
#~ msgstr ""
|
||||||
|
#~ "<p>Sabia que se quiser reduzir o espaço em disco utilizado pelas suas imagens na base de dados de Álbuns pode tentar utilizar o 'plugin' recomprimir imagens?\n"
|
||||||
|
#~ "</p>\n"
|
||||||
|
#~ "<br>\n"
|
||||||
|
#~ "<center>\n"
|
||||||
|
#~ "<img src=\"hicolor/48x48/apps/kipi.png\">\n"
|
||||||
|
#~ "</center>\n"
|
||||||
|
|
||||||
|
#~ msgid ""
|
||||||
|
#~ "<p>Did you know that if you want to resize images to prepare them for printing on photographic paper sizes, you could use the resizeImages plugin?\n"
|
||||||
|
#~ "</p>\n"
|
||||||
|
#~ "<br>\n"
|
||||||
|
#~ "<center>\n"
|
||||||
|
#~ "<img src=\"hicolor/48x48/apps/kipi.png\">\n"
|
||||||
|
#~ "</center>\n"
|
||||||
|
#~ msgstr ""
|
||||||
|
#~ "<p>Sabia que se quiser mudar o tamanho das imagens para as preparar para impressão em papel fotográfico, pode utilizar o 'plugin' mudar o tamanho de imagens?\n"
|
||||||
|
#~ "</p>\n"
|
||||||
|
#~ "<br>\n"
|
||||||
|
#~ "<center>\n"
|
||||||
|
#~ "<img src=\"hicolor/48x48/apps/kipi.png\">\n"
|
||||||
|
#~ "</center>\n"
|
||||||
|
|
||||||
|
#~ msgid ""
|
||||||
|
#~ "<p>Did you know that you could use image files from different Albums in the 'batch-process images' \n"
|
||||||
|
#~ "plugin? The processed results will then be merged in the selected target Album.\n"
|
||||||
|
#~ "</p>\n"
|
||||||
|
#~ "<br>\n"
|
||||||
|
#~ "<center>\n"
|
||||||
|
#~ "<img src=\"hicolor/48x48/apps/kipi.png\">\n"
|
||||||
|
#~ "</center>\n"
|
||||||
|
#~ msgstr ""
|
||||||
|
#~ "<p>Sabia que pode utilizar os ficheiros de imagens de vários álbuns no 'plugin' de processamento de imagens em lote? O resultado do processamento será então reunido no álbum alvo seleccionado.\n"
|
||||||
|
#~ "</p>\n"
|
||||||
|
#~ "<br>\n"
|
||||||
|
#~ "<center>\n"
|
||||||
|
#~ "<img src=\"hicolor/48x48/apps/kipi.png\">\n"
|
||||||
|
#~ "</center>\n"
|
||||||
|
|
||||||
|
#~ msgid ""
|
||||||
|
#~ "<p>Did you know that you can change the timeStamp of the target images files in the batch-rename images plugin?\n"
|
||||||
|
#~ "</p>\n"
|
||||||
|
#~ "<br>\n"
|
||||||
|
#~ "<center>\n"
|
||||||
|
#~ "<img src=\"hicolor/48x48/apps/kipi.png\">\n"
|
||||||
|
#~ "</center>\n"
|
||||||
|
#~ msgstr ""
|
||||||
|
#~ "<p>Sabia que pode mudar a data dos ficheiros no 'plugin' de mudança de nome de imagens em lote?\n"
|
||||||
|
#~ "</p>\n"
|
||||||
|
#~ "<br>\n"
|
||||||
|
#~ "<center>\n"
|
||||||
|
#~ "<img src=\"hicolor/48x48/apps/kipi.png\">\n"
|
||||||
|
#~ "</center>\n"
|
||||||
|
|
||||||
|
#~ msgid ""
|
||||||
|
#~ "<p>Did you know that you can navigate on the slideshow with the left and right mouse buttons?\n"
|
||||||
|
#~ "</p>\n"
|
||||||
|
#~ "<br>\n"
|
||||||
|
#~ "<center>\n"
|
||||||
|
#~ "<img src=\"hicolor/48x48/apps/kipi.png\">\n"
|
||||||
|
#~ "</center>\n"
|
||||||
|
#~ msgstr ""
|
||||||
|
#~ "<p>Sabia que pode navegar a apresentação com o botão direito e esquerdo do rato?\n"
|
||||||
|
#~ "</p>\n"
|
||||||
|
#~ "<br>\n"
|
||||||
|
#~ "<center>\n"
|
||||||
|
#~ "<img src=\"hicolor/48x48/apps/kipi.png\">\n"
|
||||||
|
#~ "</center>\n"
|
@ -0,0 +1,3 @@
|
|||||||
|
KDE_LANG = pt_BR
|
||||||
|
SUBDIRS = $(AUTODIRS)
|
||||||
|
POFILES = AUTO
|
@ -0,0 +1,139 @@
|
|||||||
|
# translation of libkipi.po to Brazilian Portuguese
|
||||||
|
# tradução de libkipi.po para Brazilian portuguese
|
||||||
|
# tradução de libkipi.po para Brazilian Portuguese
|
||||||
|
# Lisiane Sztoltz Teixeira <lisiane@kdemail.net>, 2004.
|
||||||
|
# Marcus Gama <marcus_gama@uol.com.br>, 2005.
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: libkipi\n"
|
||||||
|
"POT-Creation-Date: 2006-10-03 08:51+0200\n"
|
||||||
|
"PO-Revision-Date: 2005-02-17 21:56+0000\n"
|
||||||
|
"Last-Translator: Marcus Gama <marcus_gama@uol.com.br>\n"
|
||||||
|
"Language-Team: Brazilian Portuguese <ldp-br@bazar.conectiva.com.br>\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"X-Generator: KBabel 1.3.1\n"
|
||||||
|
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:171
|
||||||
|
msgid "Status"
|
||||||
|
msgstr "Estado"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:172
|
||||||
|
#, fuzzy
|
||||||
|
msgid "Current Actions"
|
||||||
|
msgstr "Ações atuais"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:177
|
||||||
|
msgid "<p>This is the current tasks list released."
|
||||||
|
msgstr "<p>Esta é a lista atual de tarefas liberadas."
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:184
|
||||||
|
msgid "<p>This is the list current percent task released."
|
||||||
|
msgstr "<p>Esta é a lista da porcentagem atual liberada da tarefa."
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:85
|
||||||
|
msgid "Folder"
|
||||||
|
msgstr "Pasta"
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:176
|
||||||
|
#, fuzzy
|
||||||
|
msgid "Please select a directory first."
|
||||||
|
msgstr "Por favor, selecione uma pasta primeiro"
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:181
|
||||||
|
msgid "Create Directory"
|
||||||
|
msgstr "Criar Pasta"
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:182
|
||||||
|
msgid "<qt>Enter new directory name (to be created as subdir of %1):</qt>"
|
||||||
|
msgstr ""
|
||||||
|
"<qt>Digite o nome da nova pasta (a ser criada como sub-pasta de %1):</qt>"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionshared.cpp:81
|
||||||
|
msgid "Images"
|
||||||
|
msgstr "Imagens"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:109
|
||||||
|
msgid "Invert Selection"
|
||||||
|
msgstr "Inverter Seleção"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:110
|
||||||
|
msgid "Select None"
|
||||||
|
msgstr "Não selecionar"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:283
|
||||||
|
msgid "Images:"
|
||||||
|
msgstr "Imagens:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:300
|
||||||
|
msgid "Comments:"
|
||||||
|
msgstr "Comentários:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:308
|
||||||
|
msgid "Category:"
|
||||||
|
msgstr "Categoria:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:317
|
||||||
|
msgid "Date:"
|
||||||
|
msgstr "Data:"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:90 libkipi/imagedialog.cpp:110
|
||||||
|
msgid "Select Image From Album"
|
||||||
|
msgstr "Selecione uma imagem do álbum"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:128
|
||||||
|
msgid "Image selector dialog"
|
||||||
|
msgstr "Diálogo de seleção de imagens"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:130
|
||||||
|
msgid "A Kipi dialog for image selection"
|
||||||
|
msgstr "Um diálogo do Kipi para a seleção de imagens"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:139
|
||||||
|
msgid "Kipi Plugins Handbooks"
|
||||||
|
msgstr "Manual dos Plug-ins do Kipi"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:147
|
||||||
|
msgid "Album Name"
|
||||||
|
msgstr "Nome do Álbum"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:152
|
||||||
|
msgid "Image Name"
|
||||||
|
msgstr "Nome da Imagem"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:161 libkipi/imagedialog.cpp:240
|
||||||
|
msgid "No image selected"
|
||||||
|
msgstr "Nenhuma imagem selecionada"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:274
|
||||||
|
msgid "No images selected"
|
||||||
|
msgstr "Nenhuma imagem selecionada"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:293
|
||||||
|
#, c-format
|
||||||
|
msgid ""
|
||||||
|
"_n: 1 image selected\n"
|
||||||
|
"%n images selected"
|
||||||
|
msgstr ""
|
||||||
|
"1 imagem selecionada\n"
|
||||||
|
"%n imagens selecionadas"
|
||||||
|
|
||||||
|
#: _translatorinfo.cpp:1
|
||||||
|
msgid ""
|
||||||
|
"_: NAME OF TRANSLATORS\n"
|
||||||
|
"Your names"
|
||||||
|
msgstr "Lisiane S. Teixeira"
|
||||||
|
|
||||||
|
#: _translatorinfo.cpp:3
|
||||||
|
msgid ""
|
||||||
|
"_: EMAIL OF TRANSLATORS\n"
|
||||||
|
"Your emails"
|
||||||
|
msgstr "lisiane@kdemail.net"
|
||||||
|
|
||||||
|
#~ msgid "Batch process dialog"
|
||||||
|
#~ msgstr "Diálogo de processo em lote"
|
||||||
|
|
||||||
|
#~ msgid "A Kipi dialog for batch process operations"
|
||||||
|
#~ msgstr "Um diálogo do Kipi para operações em lote"
|
@ -0,0 +1,3 @@
|
|||||||
|
KDE_LANG = ru
|
||||||
|
SUBDIRS = $(AUTODIRS)
|
||||||
|
POFILES = AUTO
|
@ -0,0 +1,131 @@
|
|||||||
|
# translation of libkipi.po to russian
|
||||||
|
#
|
||||||
|
# Nick Shaforostoff <shafff@ukr.net>, 2006.
|
||||||
|
# Dmitry A. Bugay <sam@vhnet.ru>, 2006.
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: libkipi\n"
|
||||||
|
"POT-Creation-Date: 2006-10-03 08:51+0200\n"
|
||||||
|
"PO-Revision-Date: 2006-10-04 02:03+0300\n"
|
||||||
|
"Last-Translator: Nick Shaforostoff <shafff@ukr.net>\n"
|
||||||
|
"Language-Team: Russian <kde-russian@lists.kde.ru>\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"X-Generator: KBabel 1.11.2\n"
|
||||||
|
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>"
|
||||||
|
"=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:171
|
||||||
|
msgid "Status"
|
||||||
|
msgstr "Состояние"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:172
|
||||||
|
msgid "Current Actions"
|
||||||
|
msgstr "Текущие действия"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:177
|
||||||
|
msgid "<p>This is the current tasks list released."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:184
|
||||||
|
msgid "<p>This is the list current percent task released."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:85
|
||||||
|
msgid "Folder"
|
||||||
|
msgstr "Папка"
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:176
|
||||||
|
msgid "Please select a directory first."
|
||||||
|
msgstr "Выберите каталог."
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:181
|
||||||
|
msgid "Create Directory"
|
||||||
|
msgstr "Создать каталог"
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:182
|
||||||
|
msgid "<qt>Enter new directory name (to be created as subdir of %1):</qt>"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionshared.cpp:81
|
||||||
|
msgid "Images"
|
||||||
|
msgstr "Изображения"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:109
|
||||||
|
msgid "Invert Selection"
|
||||||
|
msgstr "Обратить выделение"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:110
|
||||||
|
msgid "Select None"
|
||||||
|
msgstr "Снять выбор"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:283
|
||||||
|
msgid "Images:"
|
||||||
|
msgstr "Изображения:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:300
|
||||||
|
msgid "Comments:"
|
||||||
|
msgstr "Комментарии:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:308
|
||||||
|
msgid "Category:"
|
||||||
|
msgstr "Категория:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:317
|
||||||
|
msgid "Date:"
|
||||||
|
msgstr "Дата:"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:90 libkipi/imagedialog.cpp:110
|
||||||
|
msgid "Select Image From Album"
|
||||||
|
msgstr "Выбрать изображение из альбома"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:128
|
||||||
|
msgid "Image selector dialog"
|
||||||
|
msgstr "Диалог выбора изображений"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:130
|
||||||
|
msgid "A Kipi dialog for image selection"
|
||||||
|
msgstr "Диалог Kipi для выбора изображения"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:139
|
||||||
|
msgid "Kipi Plugins Handbooks"
|
||||||
|
msgstr "Руководство по модулям Kipi"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:147
|
||||||
|
msgid "Album Name"
|
||||||
|
msgstr "Имя альбома"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:152
|
||||||
|
msgid "Image Name"
|
||||||
|
msgstr "Имя изображения"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:161 libkipi/imagedialog.cpp:240
|
||||||
|
msgid "No image selected"
|
||||||
|
msgstr "Нет выбранного изображения"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:274
|
||||||
|
msgid "No images selected"
|
||||||
|
msgstr "Нет выбранных изображений"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:293
|
||||||
|
#, c-format
|
||||||
|
msgid ""
|
||||||
|
"_n: 1 image selected\n"
|
||||||
|
"%n images selected"
|
||||||
|
msgstr ""
|
||||||
|
"%n изображение выбрано\n"
|
||||||
|
"%n изображения выбрано\n"
|
||||||
|
"%n изображений выбрано"
|
||||||
|
|
||||||
|
#: _translatorinfo.cpp:1
|
||||||
|
msgid ""
|
||||||
|
"_: NAME OF TRANSLATORS\n"
|
||||||
|
"Your names"
|
||||||
|
msgstr "Николай Шафоростов,Дмитрий Бугай"
|
||||||
|
|
||||||
|
#: _translatorinfo.cpp:3
|
||||||
|
msgid ""
|
||||||
|
"_: EMAIL OF TRANSLATORS\n"
|
||||||
|
"Your emails"
|
||||||
|
msgstr "shafff@ukr.net,sam@vhnet.ru"
|
@ -0,0 +1,3 @@
|
|||||||
|
KDE_LANG = rw
|
||||||
|
SUBDIRS = $(AUTODIRS)
|
||||||
|
POFILES = AUTO
|
@ -0,0 +1,163 @@
|
|||||||
|
# translation of libkipi to Kinyarwanda.
|
||||||
|
# Copyright (C)
|
||||||
|
# This file is distributed under the same license as the libkipi package.
|
||||||
|
# Steve Murphy <murf@e-tools.com>, 2005.
|
||||||
|
# Steve performed initial rough translation from compendium built from translations provided by the following translators:
|
||||||
|
# Philibert Ndandali <ndandali@yahoo.fr>, 2005.
|
||||||
|
# Viateur MUGENZI <muvia1@yahoo.fr>, 2005.
|
||||||
|
# Noëlla Mupole <s24211045@tuks.co.za>, 2005.
|
||||||
|
# Carole Karema <karemacarole@hotmail.com>, 2005.
|
||||||
|
# JEAN BAPTISTE NGENDAHAYO <ngenda_denis@yahoo.co.uk>, 2005.
|
||||||
|
# Augustin KIBERWA <akiberwa@yahoo.co.uk>, 2005.
|
||||||
|
# Donatien NSENGIYUMVA <ndonatienuk@yahoo.co.uk>, 2005.
|
||||||
|
# Antoine Bigirimana <antoine@e-tools.com>, 2005.
|
||||||
|
#
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: libkipi 3.4\n"
|
||||||
|
"POT-Creation-Date: 2006-10-03 08:51+0200\n"
|
||||||
|
"PO-Revision-Date: 2005-05-25 18:44-0600\n"
|
||||||
|
"Last-Translator: Steve Murphy <murf@e-tools.com>\n"
|
||||||
|
"Language-Team: Kinyarwanda <translation-team-rw@lists.sourceforge.net>\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:171
|
||||||
|
msgid "Status"
|
||||||
|
msgstr "Imimerere"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:172
|
||||||
|
#, fuzzy
|
||||||
|
msgid "Current Actions"
|
||||||
|
msgstr "Ibikorwa biriho:"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:177
|
||||||
|
#, fuzzy
|
||||||
|
msgid "<p>This is the current tasks list released."
|
||||||
|
msgstr "<p> ni i KIGEZWEHO Ibikorwa Urutonde . "
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:184
|
||||||
|
#, fuzzy
|
||||||
|
msgid "<p>This is the list current percent task released."
|
||||||
|
msgstr "<p> ni i Urutonde KIGEZWEHO ku ijana Igikorwa . "
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:85
|
||||||
|
msgid "Folder"
|
||||||
|
msgstr "Ububiko"
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:176
|
||||||
|
#, fuzzy
|
||||||
|
msgid "Please select a directory first."
|
||||||
|
msgstr "Guhitamo A Ububiko Itangira . "
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:181
|
||||||
|
msgid "Create Directory"
|
||||||
|
msgstr "Guhanga ububiko "
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:182
|
||||||
|
#, fuzzy
|
||||||
|
msgid "<qt>Enter new directory name (to be created as subdir of %1):</qt>"
|
||||||
|
msgstr "<qt> Gishya Ububiko Izina: ( Kuri Byaremwe Nka Bya %1 ) : </qt> "
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionshared.cpp:81
|
||||||
|
msgid "Images"
|
||||||
|
msgstr "Ishusho"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:109
|
||||||
|
#, fuzzy
|
||||||
|
msgid "Invert Selection"
|
||||||
|
msgstr "Gucurika Itoranya"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:110
|
||||||
|
#, fuzzy
|
||||||
|
msgid "Select None"
|
||||||
|
msgstr "Guhitamo Umanuka"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:283
|
||||||
|
msgid "Images:"
|
||||||
|
msgstr "Amashusho:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:300
|
||||||
|
msgid "Comments:"
|
||||||
|
msgstr "Ibisobanuro:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:308
|
||||||
|
#, fuzzy
|
||||||
|
msgid "Category:"
|
||||||
|
msgstr "Icyiciro"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:317
|
||||||
|
msgid "Date:"
|
||||||
|
msgstr "Itariki:"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:90 libkipi/imagedialog.cpp:110
|
||||||
|
#, fuzzy
|
||||||
|
msgid "Select Image From Album"
|
||||||
|
msgstr "Hitamo Idosiye y'Ishusho"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:128
|
||||||
|
#, fuzzy
|
||||||
|
msgid "Image selector dialog"
|
||||||
|
msgstr "itoranya Ikiganiro "
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:130
|
||||||
|
#, fuzzy
|
||||||
|
msgid "A Kipi dialog for image selection"
|
||||||
|
msgstr "A Ikiganiro ya: Ishusho Ihitamo "
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:139
|
||||||
|
#, fuzzy
|
||||||
|
msgid "Kipi Plugins Handbooks"
|
||||||
|
msgstr "&Agatabo k'Amacomeka"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:147
|
||||||
|
#, fuzzy
|
||||||
|
msgid "Album Name"
|
||||||
|
msgstr "Izina ry'Inyumvo"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:152
|
||||||
|
#, fuzzy
|
||||||
|
msgid "Image Name"
|
||||||
|
msgstr "Nomero y'Ishusho"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:161 libkipi/imagedialog.cpp:240
|
||||||
|
#, fuzzy
|
||||||
|
msgid "No image selected"
|
||||||
|
msgstr "Ishusho Byahiswemo "
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:274
|
||||||
|
#, fuzzy
|
||||||
|
msgid "No images selected"
|
||||||
|
msgstr "Ishusho Byahiswemo "
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:293
|
||||||
|
#, fuzzy, c-format
|
||||||
|
msgid ""
|
||||||
|
"_n: 1 image selected\n"
|
||||||
|
"%n images selected"
|
||||||
|
msgstr "1 Ishusho %n Ishusho Byahiswemo "
|
||||||
|
|
||||||
|
#: _translatorinfo.cpp:1
|
||||||
|
msgid ""
|
||||||
|
"_: NAME OF TRANSLATORS\n"
|
||||||
|
"Your names"
|
||||||
|
msgstr ""
|
||||||
|
"Viateur MUGENZI, JEAN BAPTISTE NGENDAHAYO, Augustin KIBERWA, Donatien "
|
||||||
|
"NSENGIYUMVA"
|
||||||
|
|
||||||
|
#: _translatorinfo.cpp:3
|
||||||
|
msgid ""
|
||||||
|
"_: EMAIL OF TRANSLATORS\n"
|
||||||
|
"Your emails"
|
||||||
|
msgstr ""
|
||||||
|
"muvia1@yahoo.fr, ngenda_denis@yahoo.co.uk, akiberwa@yahoo.co.uk, "
|
||||||
|
"ndonatienuk@yahoo.co.uk"
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
#~ msgid "Batch process dialog"
|
||||||
|
#~ msgstr "Ikiganiro "
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
#~ msgid "A Kipi dialog for batch process operations"
|
||||||
|
#~ msgstr "A Ikiganiro ya: Ibikorwa: "
|
@ -0,0 +1,3 @@
|
|||||||
|
KDE_LANG = sk
|
||||||
|
SUBDIRS = $(AUTODIRS)
|
||||||
|
POFILES = AUTO
|
@ -0,0 +1,126 @@
|
|||||||
|
# translation of libkipi.po to Slovak
|
||||||
|
#
|
||||||
|
# Richard Fric <Richard.Fric@kdemail.net>, 2006.
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: libkipi\n"
|
||||||
|
"POT-Creation-Date: 2006-10-03 08:51+0200\n"
|
||||||
|
"PO-Revision-Date: 2006-09-15 18:49+0200\n"
|
||||||
|
"Last-Translator: Richard Fric <Richard.Fric@kdemail.net>\n"
|
||||||
|
"Language-Team: Slovak <sk@li.org>\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"X-Generator: KBabel 1.11.4\n"
|
||||||
|
"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:171
|
||||||
|
msgid "Status"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:172
|
||||||
|
msgid "Current Actions"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:177
|
||||||
|
msgid "<p>This is the current tasks list released."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:184
|
||||||
|
msgid "<p>This is the list current percent task released."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:85
|
||||||
|
msgid "Folder"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:176
|
||||||
|
msgid "Please select a directory first."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:181
|
||||||
|
msgid "Create Directory"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:182
|
||||||
|
msgid "<qt>Enter new directory name (to be created as subdir of %1):</qt>"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionshared.cpp:81
|
||||||
|
msgid "Images"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:109
|
||||||
|
msgid "Invert Selection"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:110
|
||||||
|
msgid "Select None"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:283
|
||||||
|
msgid "Images:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:300
|
||||||
|
msgid "Comments:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:308
|
||||||
|
msgid "Category:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:317
|
||||||
|
msgid "Date:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:90 libkipi/imagedialog.cpp:110
|
||||||
|
msgid "Select Image From Album"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:128
|
||||||
|
msgid "Image selector dialog"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:130
|
||||||
|
msgid "A Kipi dialog for image selection"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:139
|
||||||
|
msgid "Kipi Plugins Handbooks"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:147
|
||||||
|
msgid "Album Name"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:152
|
||||||
|
msgid "Image Name"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:161 libkipi/imagedialog.cpp:240
|
||||||
|
msgid "No image selected"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:274
|
||||||
|
msgid "No images selected"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:293
|
||||||
|
#, c-format
|
||||||
|
msgid ""
|
||||||
|
"_n: 1 image selected\n"
|
||||||
|
"%n images selected"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: _translatorinfo.cpp:1
|
||||||
|
msgid ""
|
||||||
|
"_: NAME OF TRANSLATORS\n"
|
||||||
|
"Your names"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: _translatorinfo.cpp:3
|
||||||
|
msgid ""
|
||||||
|
"_: EMAIL OF TRANSLATORS\n"
|
||||||
|
"Your emails"
|
||||||
|
msgstr ""
|
@ -0,0 +1,3 @@
|
|||||||
|
KDE_LANG = sl
|
||||||
|
SUBDIRS = $(AUTODIRS)
|
||||||
|
POFILES = AUTO
|
@ -0,0 +1,135 @@
|
|||||||
|
# Translation of libkipi.po to Slovenian
|
||||||
|
# translation of libkipi.po to Slovenian
|
||||||
|
# Andrej Vernekar <andrej.vernekar@moj.net>, 2004.
|
||||||
|
# Gregor Rakar <gregor.rakar@kiss.si>, 2005.
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: libkipi\n"
|
||||||
|
"POT-Creation-Date: 2006-10-03 08:51+0200\n"
|
||||||
|
"PO-Revision-Date: 2005-04-05 15:53+0200\n"
|
||||||
|
"Last-Translator: Gregor Rakar <gregor.rakar@kiss.si>\n"
|
||||||
|
"Language-Team: Slovenian <translation-team-sl@lists.sourceforge.net>\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"X-Generator: KBabel 1.3.1\n"
|
||||||
|
"Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || "
|
||||||
|
"n%100==4 ? 2 : 3);\n"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:171
|
||||||
|
msgid "Status"
|
||||||
|
msgstr "Stanje"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:172
|
||||||
|
#, fuzzy
|
||||||
|
msgid "Current Actions"
|
||||||
|
msgstr "Trenutna dejanja"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:177
|
||||||
|
msgid "<p>This is the current tasks list released."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:184
|
||||||
|
msgid "<p>This is the list current percent task released."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:85
|
||||||
|
msgid "Folder"
|
||||||
|
msgstr "Mapa"
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:176
|
||||||
|
#, fuzzy
|
||||||
|
msgid "Please select a directory first."
|
||||||
|
msgstr "Prosim, najprej izberite imenik"
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:181
|
||||||
|
msgid "Create Directory"
|
||||||
|
msgstr "Ustvari mapo"
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:182
|
||||||
|
msgid "<qt>Enter new directory name (to be created as subdir of %1):</qt>"
|
||||||
|
msgstr ""
|
||||||
|
"<qt>Vnesite ime novega imenika (ustvarjen bo kot podimenik od %1):</qt>"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionshared.cpp:81
|
||||||
|
msgid "Images"
|
||||||
|
msgstr "Slike"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:109
|
||||||
|
msgid "Invert Selection"
|
||||||
|
msgstr "Obrni izbiro"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:110
|
||||||
|
msgid "Select None"
|
||||||
|
msgstr "Izberi brez"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:283
|
||||||
|
msgid "Images:"
|
||||||
|
msgstr "Slike:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:300
|
||||||
|
msgid "Comments:"
|
||||||
|
msgstr "Komentarji:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:308
|
||||||
|
msgid "Category:"
|
||||||
|
msgstr "Kategorija:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:317
|
||||||
|
msgid "Date:"
|
||||||
|
msgstr "Datum:"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:90 libkipi/imagedialog.cpp:110
|
||||||
|
msgid "Select Image From Album"
|
||||||
|
msgstr "Izberite sliko iz albuma"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:128
|
||||||
|
msgid "Image selector dialog"
|
||||||
|
msgstr "Pogovorno okno izbiranja slik"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:130
|
||||||
|
msgid "A Kipi dialog for image selection"
|
||||||
|
msgstr "Pogovorno okno Kipi za izbiranje slik"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:139
|
||||||
|
msgid "Kipi Plugins Handbooks"
|
||||||
|
msgstr "Priročniki vstavkov Kipi"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:147
|
||||||
|
msgid "Album Name"
|
||||||
|
msgstr "Ime albuma"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:152
|
||||||
|
msgid "Image Name"
|
||||||
|
msgstr "Ime slike"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:161 libkipi/imagedialog.cpp:240
|
||||||
|
msgid "No image selected"
|
||||||
|
msgstr "Slika ni izbrana"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:274
|
||||||
|
msgid "No images selected"
|
||||||
|
msgstr "Ni izbranih slik"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:293
|
||||||
|
#, c-format
|
||||||
|
msgid ""
|
||||||
|
"_n: 1 image selected\n"
|
||||||
|
"%n images selected"
|
||||||
|
msgstr ""
|
||||||
|
"%n izbranih slik\n"
|
||||||
|
"%n izbrana slika\n"
|
||||||
|
"%n izbrani sliki\n"
|
||||||
|
"%n izbrane slike"
|
||||||
|
|
||||||
|
#: _translatorinfo.cpp:1
|
||||||
|
msgid ""
|
||||||
|
"_: NAME OF TRANSLATORS\n"
|
||||||
|
"Your names"
|
||||||
|
msgstr "Gregor Rakar"
|
||||||
|
|
||||||
|
#: _translatorinfo.cpp:3
|
||||||
|
msgid ""
|
||||||
|
"_: EMAIL OF TRANSLATORS\n"
|
||||||
|
"Your emails"
|
||||||
|
msgstr "gregor.rakar@kiss.si"
|
@ -0,0 +1,3 @@
|
|||||||
|
KDE_LANG = sr
|
||||||
|
SUBDIRS = $(AUTODIRS)
|
||||||
|
POFILES = AUTO
|
@ -0,0 +1,3 @@
|
|||||||
|
KDE_LANG = sr@Latn
|
||||||
|
SUBDIRS = $(AUTODIRS)
|
||||||
|
POFILES = AUTO
|
@ -0,0 +1,136 @@
|
|||||||
|
# translation of libkipi.po to Serbian
|
||||||
|
# Chusslove Illich <caslav.ilic@gmx.net>, 2004.
|
||||||
|
# Slobodan Simic <simicsl@verat.net>, 2005.
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: libkipi\n"
|
||||||
|
"POT-Creation-Date: 2006-10-03 08:51+0200\n"
|
||||||
|
"PO-Revision-Date: 2005-05-30 23:07+0200\n"
|
||||||
|
"Last-Translator: Slobodan Simic <simicsl@verat.net>\n"
|
||||||
|
"Language-Team: Serbian <kde-yu@kde.org.yu>\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"X-Generator: KBabel 1.9\n"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:171
|
||||||
|
msgid "Status"
|
||||||
|
msgstr "Stanje"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:172
|
||||||
|
msgid "Current Actions"
|
||||||
|
msgstr "Trenutne radnje"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:177
|
||||||
|
msgid "<p>This is the current tasks list released."
|
||||||
|
msgstr "<p>Ovo je izdata lista tekućih zadataka."
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:184
|
||||||
|
msgid "<p>This is the list current percent task released."
|
||||||
|
msgstr "<p>Ovo je izdata lista procenata tekućih zadataka."
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:85
|
||||||
|
msgid "Folder"
|
||||||
|
msgstr "Fascikla"
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:176
|
||||||
|
msgid "Please select a directory first."
|
||||||
|
msgstr "Izaberite prvo direktorijum."
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:181
|
||||||
|
msgid "Create Directory"
|
||||||
|
msgstr "Napravi direktorijum"
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:182
|
||||||
|
msgid "<qt>Enter new directory name (to be created as subdir of %1):</qt>"
|
||||||
|
msgstr ""
|
||||||
|
"<qt>Unesite ime novog direktorijuma (biće poddirektorijum direktorijuma "
|
||||||
|
"%1):</qt>"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionshared.cpp:81
|
||||||
|
msgid "Images"
|
||||||
|
msgstr "Slike"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:109
|
||||||
|
msgid "Invert Selection"
|
||||||
|
msgstr "Obrni izbor"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:110
|
||||||
|
msgid "Select None"
|
||||||
|
msgstr "Poništi sav izbor"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:283
|
||||||
|
msgid "Images:"
|
||||||
|
msgstr "Slike:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:300
|
||||||
|
msgid "Comments:"
|
||||||
|
msgstr "Komentari:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:308
|
||||||
|
msgid "Category:"
|
||||||
|
msgstr "Kategorija:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:317
|
||||||
|
msgid "Date:"
|
||||||
|
msgstr "Datum:"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:90 libkipi/imagedialog.cpp:110
|
||||||
|
msgid "Select Image From Album"
|
||||||
|
msgstr "Izaberite slike iz albuma"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:128
|
||||||
|
msgid "Image selector dialog"
|
||||||
|
msgstr "Dijalog izbora slike"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:130
|
||||||
|
msgid "A Kipi dialog for image selection"
|
||||||
|
msgstr "Kipi-jev dijalog za izbor slike"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:139
|
||||||
|
msgid "Kipi Plugins Handbooks"
|
||||||
|
msgstr "Priručnici za Kipi-jeve priključke"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:147
|
||||||
|
msgid "Album Name"
|
||||||
|
msgstr "Ime albuma"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:152
|
||||||
|
msgid "Image Name"
|
||||||
|
msgstr "Ime slike"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:161 libkipi/imagedialog.cpp:240
|
||||||
|
msgid "No image selected"
|
||||||
|
msgstr "Nijedna slika nije izabrana"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:274
|
||||||
|
msgid "No images selected"
|
||||||
|
msgstr "Nema izabranih slika"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:293
|
||||||
|
#, c-format
|
||||||
|
msgid ""
|
||||||
|
"_n: 1 image selected\n"
|
||||||
|
"%n images selected"
|
||||||
|
msgstr ""
|
||||||
|
"%n slika je izabrana\n"
|
||||||
|
"%n slike su izabrane\n"
|
||||||
|
"%n slika je izabrano"
|
||||||
|
|
||||||
|
#: _translatorinfo.cpp:1
|
||||||
|
msgid ""
|
||||||
|
"_: NAME OF TRANSLATORS\n"
|
||||||
|
"Your names"
|
||||||
|
msgstr "Slobodan Simić"
|
||||||
|
|
||||||
|
#: _translatorinfo.cpp:3
|
||||||
|
msgid ""
|
||||||
|
"_: EMAIL OF TRANSLATORS\n"
|
||||||
|
"Your emails"
|
||||||
|
msgstr "simicsl@verat.net"
|
||||||
|
|
||||||
|
#~ msgid "Batch process dialog"
|
||||||
|
#~ msgstr "Dijalog paketne obrade"
|
||||||
|
|
||||||
|
#~ msgid "A Kipi dialog for batch process operations"
|
||||||
|
#~ msgstr "Kipi-jev dijalog za operacije paketne obrade"
|
@ -0,0 +1,3 @@
|
|||||||
|
KDE_LANG = ta
|
||||||
|
SUBDIRS = $(AUTODIRS)
|
||||||
|
POFILES = AUTO
|
@ -0,0 +1,130 @@
|
|||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: PACKAGE VERSION\n"
|
||||||
|
"POT-Creation-Date: 2006-10-03 08:51+0200\n"
|
||||||
|
"PO-Revision-Date: 2005-03-22 03:04-0800\n"
|
||||||
|
"Last-Translator: Tamil PC <tamilpc@ambalam.com>\n"
|
||||||
|
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:171
|
||||||
|
msgid "Status"
|
||||||
|
msgstr "நிலை"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:172
|
||||||
|
#, fuzzy
|
||||||
|
msgid "Current Actions"
|
||||||
|
msgstr "நடப்பு செயல்கள்"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:177
|
||||||
|
msgid "<p>This is the current tasks list released."
|
||||||
|
msgstr "<p>இது வெளியிடப்பட்ட தற்போதைய பணிகளின் பட்டியல்"
|
||||||
|
|
||||||
|
#: libkipi/batchprogressdialog.cpp:184
|
||||||
|
msgid "<p>This is the list current percent task released."
|
||||||
|
msgstr "<p>இது வெளியிடப்பட்ட பணி தற்போதையை விகித பட்டியல்"
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:85
|
||||||
|
msgid "Folder"
|
||||||
|
msgstr "அடைவு"
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:176
|
||||||
|
#, fuzzy
|
||||||
|
msgid "Please select a directory first."
|
||||||
|
msgstr "முதலில் ஒரு அடைவை தேர்ந்தெடுக்கவும்"
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:181
|
||||||
|
msgid "Create Directory"
|
||||||
|
msgstr "அடைவை உருவாக்கு"
|
||||||
|
|
||||||
|
#: libkipi/uploadwidget.cpp:182
|
||||||
|
msgid "<qt>Enter new directory name (to be created as subdir of %1):</qt>"
|
||||||
|
msgstr ""
|
||||||
|
"<qt>புதிய அடைவு பெயரை உள்ளிடவும் (%1ன் துணை அடைவாக உருவாக்கப்படவேண்டும்):</qt>"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionshared.cpp:81
|
||||||
|
msgid "Images"
|
||||||
|
msgstr "பிம்பங்கள்"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:109
|
||||||
|
msgid "Invert Selection"
|
||||||
|
msgstr "தேர்ந்தெடுத்ததைப் புரட்டு"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:110
|
||||||
|
msgid "Select None"
|
||||||
|
msgstr "எதுவும் தேர்ந்தெடுக்கப்படவில்லை"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:283
|
||||||
|
msgid "Images:"
|
||||||
|
msgstr "பிம்பங்கள்"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:300
|
||||||
|
msgid "Comments:"
|
||||||
|
msgstr "குறிப்புகள்:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:308
|
||||||
|
msgid "Category:"
|
||||||
|
msgstr "வகை:"
|
||||||
|
|
||||||
|
#: libkipi/imagecollectionselector.cpp:317
|
||||||
|
msgid "Date:"
|
||||||
|
msgstr "தேதி:"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:90 libkipi/imagedialog.cpp:110
|
||||||
|
msgid "Select Image From Album"
|
||||||
|
msgstr "ஆல்பத்தில் இருந்து பிம்பத்தை தேர்ந்தெடு"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:128
|
||||||
|
msgid "Image selector dialog"
|
||||||
|
msgstr "பிம்ப தேர்ந்தெடுப்பான் உரையாடல் பெட்டி"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:130
|
||||||
|
msgid "A Kipi dialog for image selection"
|
||||||
|
msgstr "பிம்ப தேர்வுக்கான ஒரு கிபி உரையாடல் பெட்டி"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:139
|
||||||
|
msgid "Kipi Plugins Handbooks"
|
||||||
|
msgstr "கிபி சொருகுப்பொருள்கள் கைப்புத்தகங்கள்"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:147
|
||||||
|
msgid "Album Name"
|
||||||
|
msgstr "ஆல்பம் பெயர்"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:152
|
||||||
|
msgid "Image Name"
|
||||||
|
msgstr "பிம்பத்தின் பெயர்"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:161 libkipi/imagedialog.cpp:240
|
||||||
|
msgid "No image selected"
|
||||||
|
msgstr "பிம்பம் தேர்ந்தெடுக்கப்படவில்லை"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:274
|
||||||
|
msgid "No images selected"
|
||||||
|
msgstr "எந்த பிம்பமும் தேர்ந்தெடுக்கப்படவில்லை"
|
||||||
|
|
||||||
|
#: libkipi/imagedialog.cpp:293
|
||||||
|
#, fuzzy, c-format
|
||||||
|
msgid ""
|
||||||
|
"_n: 1 image selected\n"
|
||||||
|
"%n images selected"
|
||||||
|
msgstr "%n பிம்பங்கள் தேர்ந்தெடுக்கப்பட்டுள்ளது"
|
||||||
|
|
||||||
|
#: _translatorinfo.cpp:1
|
||||||
|
msgid ""
|
||||||
|
"_: NAME OF TRANSLATORS\n"
|
||||||
|
"Your names"
|
||||||
|
msgstr "tamilpcteam"
|
||||||
|
|
||||||
|
#: _translatorinfo.cpp:3
|
||||||
|
msgid ""
|
||||||
|
"_: EMAIL OF TRANSLATORS\n"
|
||||||
|
"Your emails"
|
||||||
|
msgstr "tamilpc@ambalam.com"
|
||||||
|
|
||||||
|
#~ msgid "Batch process dialog"
|
||||||
|
#~ msgstr "தொகுதி செயல்பாட்டு உரையாடல் பெட்டி"
|
||||||
|
|
||||||
|
#~ msgid "A Kipi dialog for batch process operations"
|
||||||
|
#~ msgstr "தொகுதி செயல்பாட்டு செயல்களுக்கான ஒரு கிபி உரையாடல் பெட்டி"
|
@ -0,0 +1,3 @@
|
|||||||
|
KDE_LANG = tr
|
||||||
|
SUBDIRS = $(AUTODIRS)
|
||||||
|
POFILES = AUTO
|
@ -0,0 +1,3 @@
|
|||||||
|
KDE_LANG = uk
|
||||||
|
SUBDIRS = $(AUTODIRS)
|
||||||
|
POFILES = AUTO
|
@ -0,0 +1,3 @@
|
|||||||
|
KDE_LANG = zh_CN
|
||||||
|
SUBDIRS = $(AUTODIRS)
|
||||||
|
POFILES = AUTO
|