https://community.kde.org/api.php?action=feedcontributions&user=Nicolas17&feedformat=atomKDE Community Wiki - User contributions [en]2024-03-28T19:51:35ZUser contributionsMediaWiki 1.40.2https://community.kde.org/index.php?title=KDE_Utils&diff=61660KDE Utils2012-05-09T19:36:59Z<p>Nicolas17: /* Utilities */ Reformat whole page :)</p>
<hr />
<div>{{Template:I18n/Language Navigation Bar|KDE_Utils}}<br />
<br />
The module kdeutils is a compilation of various desktop utilities.<br />
<br />
== Resources ==<br />
*[http://utils.kde.org/ Homepage of the KDE Utilities]<br />
*[mailto:kde-utils-devel@kde.org kde-utils-devel@kde.org] mailing list (for developers): [https://mail.kde.org/mailman/listinfo/kde-utils-devel subscribe], [http://lists.kde.org/?l=kde-utils-devel&r=1&w=2 archives]<br />
<br />
== Utilities ==<br />
<br />
{| class="wikitable"<br />
| width="40" | [[Image:ark-logo.png|noframe|40px]]<br />
| [[KDE_Utils/Ark|Ark]]<br />
| Archiving tool<br />
|-<br />
| [[Image:accessories-calculator.png|noframe|40px]]<br />
| kcalc<br />
| Scientific calculator<br />
|-<br />
| [[Image:kcharselect-logo.svg|noframe|40px]]<br />
| kcharselect<br />
| Select special characters from any fonts and put them into the clipboard.<br />
|-<br />
| [[Image:kdf-logo.png|noframe|40px]]<br />
| kdf<br />
| Like 'df', a graphical free disk space viewer.<br />
|-<br />
| [[Image:Kdelirc-logo.svg|noframe|40px]]<br />
| [[KDE_Utils/kdelirc|kdelirc]]<br />
| A lirc frontend for kde<br />
|-<br />
| [[Image:kfloppy-logo.png|noframe|40px]]<br />
| kfloppy<br />
| Format a floppy disk with this program.<br />
|-<br />
| [[Image:kgpg-logo.png|noframe|40px]]<br />
| kgpg<br />
| Graphical GPG frontend.<br />
|-<br />
| [[Image:ktimer-logo.png|noframe|40px]]<br />
| ktimer<br />
| Execute programs after some time.<br />
|-<br />
| [[Image:kwalletmanager-logo.svg|noframe|40px]]<br />
| [[KDE_Utils/kwallet|kwallet]]<br />
| KDE wallet management tool<br />
|-<br />
| [[Image:kwalletmanager-logo.svg|noframe|40px]]<br />
| [[KDE_Utils/ksecretsservice|ksecretsservice]]<br />
| KDE secrets management infrastructure, aiming to replace KDE wallet<br />
|-<br />
| [[Image:printer-applet-logo.png|noframe|40px]]<br />
| printer-applet<br />
| A system tray utility that shows current print jobs, shows printer warnings and errors and shows when printers that have been plugged in for the first time are being auto-configured by hal-cups-utils.<br />
|-<br />
| [[Image:superkarama-logo.svg|noframe|40px]]<br />
| [[KDE_Utils/SuperKaramba|SuperKaramba]]<br />
| Version of Karamba with python scripting<br />
|-<br />
| [[Image:sweeper-logo.png|noframe|40px]]<br />
| sweeper<br />
| Cleans unwanted traces the user leaves on the system.<br />
|}</div>Nicolas17https://community.kde.org/index.php?title=KDE_Utils&diff=61659KDE Utils2012-05-09T18:48:16Z<p>Nicolas17: Just testing edit [using an external editor]</p>
<hr />
<div>{{Template:I18n/Language Navigation Bar|KDE_Utils}}<br />
<br />
The module kdeutils is a compilation of various desktop utilities.<br />
<br />
== Resources ==<br />
*[http://utils.kde.org/ Homepage of the KDE Utilities]<br />
*[mailto:kde-utils-devel@kde.org kde-utils-devel@kde.org] mailing list (for developers): [https://mail.kde.org/mailman/listinfo/kde-utils-devel subscribe], [http://lists.kde.org/?l=kde-utils-devel&r=1&w=2 archives]<br />
<br />
== Utilities ==<br />
<br />
=== [[KDE_Utils/Ark|Ark]] ===<br />
[[Image:ark-logo.png|noframe|right|40px]]<br />
<br />
Archiving tool<br />
<br />
<br />
=== kcalc ===<br />
[[Image:accessories-calculator.png|noframe|right|40px]]<br />
<br />
Scientific calculator<br />
<br />
<br />
=== kcharselect ===<br />
[[Image:kcharselect-logo.svg|noframe|right|40px]]<br />
<br />
Select special characters from any fonts and put them into the clipboard.<br />
<br />
<br />
=== kdf ===<br />
[[Image:kdf-logo.png|noframe|right|40px]]<br />
<br />
Like 'df', a graphical free disk space viewer.<br />
<br />
<br />
=== kfloppy ===<br />
[[Image:kfloppy-logo.png|noframe|right|40px]]<br />
<br />
Format a floppy disk with this program.<br />
<br />
<br />
=== kgpg ===<br />
[[Image:kgpg-logo.png|noframe|right|40px]]<br />
<br />
Graphical GPG frontend.<br />
<br />
<br />
=== KRemoteControl ===<br />
[[Image:Kdelirc-logo.svg|noframe|right|40px]]<br />
<br />
A KDE frontend for your remote controls.<br />
<br />
<br />
=== ktimer ===<br />
[[Image:ktimer-logo.png|noframe|right|40px]]<br />
<br />
Execute programs after some time.<br />
<br />
<br />
=== kwallet ===<br />
[[Image:kwalletmanager-logo.svg|noframe|right|40px]]<br />
<br />
KDE wallet management tool<br />
<br />
* [[KDE_Utils/kwallet|Developer information]]<br />
<br />
<br />
=== ksecretsservice ===<br />
[[Image:kwalletmanager-logo.svg|noframe|right|40px]]<br />
<br />
KDE secrets management infrastructure, aiming to replace KDE wallet<br />
<br />
* [[KDE_Utils/ksecretsservice|Developer information]]<br />
<br />
<br />
=== printer-applet ===<br />
[[Image:printer-applet-logo.png|noframe|right|40px]]<br />
<br />
A system tray utility that shows current print jobs, shows printer warnings and errors and shows when printers that have been plugged in for the first time are being auto-configured by hal-cups-utils.<br />
<br />
<br />
=== SuperKaramba ===<br />
[[Image:superkarama-logo.svg|noframe|right|40px]]<br />
<br />
Version of Karamba with python scripting<br />
<br />
* [[KDE_Utils/SuperKaramba|SuperKaramba]]<br />
<br />
<br />
=== sweeper ===<br />
[[Image:sweeper-logo.png|noframe|right|40px]]<br />
<br />
Cleans unwanted traces the user leaves on the system.</div>Nicolas17https://community.kde.org/index.php?title=KDE_Utils&diff=61655KDE Utils2012-05-09T18:13:36Z<p>Nicolas17: Remove useless top-level heading</p>
<hr />
<div>{{Template:I18n/Language Navigation Bar|KDE_Utils}}<br />
<br />
The module kdeutils is a compilation of various desktop utilities.<br />
<br />
== Resources ==<br />
*[http://utils.kde.org/ Homepage of the KDE Utilities]<br />
*[mailto:kde-utils-devel@kde.org kde-utils-devel@kde.org] mailing list (for developers): [https://mail.kde.org/mailman/listinfo/kde-utils-devel subscribe], [http://lists.kde.org/?l=kde-utils-devel&r=1&w=2 archives]<br />
<br />
== Utilities ==<br />
<br />
=== [[KDE_Utils/Ark|Ark]] ===<br />
[[Image:ark-logo.png|noframe|right|40px]]<br />
<br />
Archiving tool<br />
<br />
<br />
=== kcalc ===<br />
[[Image:kcalc-logo.svg|noframe|right|40px]]<br />
<br />
Scientific calculator<br />
<br />
<br />
=== kcharselect ===<br />
[[Image:kcharselect-logo.svg|noframe|right|40px]]<br />
<br />
Select special characters from any fonts and put them into the clipboard.<br />
<br />
<br />
=== kdessh ===<br />
<!-- [[Image:kdessh-logo.svg|noframe|right|40px]] --><br />
<br />
Front end to ssh<br />
<br />
<br />
=== kdf ===<br />
[[Image:kdf-logo.png|noframe|right|40px]]<br />
<br />
Like 'df', a graphical free disk space viewer.<br />
<br />
<br />
=== [[KDE_Utils/kdelirc|kdelirc]] ===<br />
[[Image:Kdelirc-logo.svg|noframe|right|40px]]<br />
<br />
A lirc frontend for kde<br />
<br />
<br />
=== kfloppy ===<br />
[[Image:kfloppy-logo.png|noframe|right|40px]]<br />
<br />
Format a floppy disk with this program.<br />
<br />
<br />
=== kgpg ===<br />
[[Image:kgpg-logo.png|noframe|right|40px]]<br />
<br />
Graphical GPG frontend.<br />
<br />
<br />
=== ktimer ===<br />
[[Image:ktimer-logo.png|noframe|right|40px]]<br />
<br />
Execute programs after some time.<br />
<br />
<br />
=== kwallet ===<br />
[[Image:kwalletmanager-logo.svg|noframe|right|40px]]<br />
<br />
KDE wallet management tool<br />
<br />
* [[KDE_Utils/kwallet|Developer information]]<br />
<br />
<br />
=== ksecretsservice ===<br />
[[Image:kwalletmanager-logo.svg|noframe|right|40px]]<br />
<br />
KDE secrets management infrastructure, aiming to replace KDE wallet<br />
<br />
* [[KDE_Utils/ksecretsservice|Developer information]]<br />
<br />
<br />
=== printer-applet ===<br />
[[Image:printer-applet-logo.png|noframe|right|40px]]<br />
<br />
A system tray utility that shows current print jobs, shows printer warnings and errors and shows when printers that have been plugged in for the first time are being auto-configured by hal-cups-utils.<br />
<br />
<br />
=== SuperKaramba ===<br />
[[Image:superkarama-logo.svg|noframe|right|40px]]<br />
<br />
Version of Karamba with python scripting<br />
<br />
* [[KDE_Utils/SuperKaramba|SuperKaramba]]<br />
<br />
<br />
=== sweeper ===<br />
[[Image:sweeper-logo.png|noframe|right|40px]]<br />
<br />
Cleans unwanted traces the user leaves on the system.</div>Nicolas17https://community.kde.org/index.php?title=Infrastructure/Git&diff=51971Infrastructure/Git2011-07-24T20:12:35Z<p>Nicolas17: /* Cheat Sheets */ add alternate link for the cheat sheet</p>
<hr />
<div>This is the hub page for all information about the use of Git by KDE.<br />
<br />
This page is a work in progress where all new Git material is being organised. Most of these sections will eventually be moved to their own pages. Feel free to add stuff.<br />
<br />
== KDE and Git ==<br />
<br />
This section provides details on using the KDE Git infrastructure.<br />
<br />
A primary resource is still http://community.kde.org/Sysadmin/GitKdeOrgManual<br />
<br />
=== KDE Git Configuration ===<br />
<br />
How to configure Git for use with the KDE infrastructure.<br />
<br />
Please see the [[/Configuration|Git Configuration]] page.<br />
<br />
=== KDE Git Policies ===<br />
<br />
KDE policies on Git. More generic development policies go elsewhere.<br />
<br />
=== KDE Git Recipes ===<br />
<br />
Short recipes for using Git with the KDE infrastructure.<br />
<br />
Please see the [[/Recipes|Git Recipes]] page.<br />
<br />
=== KDE Git Tutorials ===<br />
<br />
More in-depth instructions in using Git.<br />
<br />
* [[Infrastructure/Tutorials/Git/GitQuickStart|A quick step-by-step guide for getting started]]<br />
* [[Infrastructure/Tutorials/Git/Create a patch|Creating a patch]]<br />
<br />
Please help filling this section by <br />
* checking the links at the bottom of the page and see which still have valid content<br />
* write tutorials yourself<br />
<br />
== External Git Resources ==<br />
<br />
Links to useful external sites about Git<br />
<br />
=== Official Documentation ===<br />
<br />
* http://git-scm.com/documentation<br />
<br />
<br />
=== Git for SVN Users ===<br />
<br />
* http://git-scm.com/course/svn.html<br />
* https://git.wiki.kernel.org/index.php/GitSvnCrashCourse<br />
<br />
=== Git books ===<br />
<br />
* [http://progit.org/book/ Pro Git] - An easy to understand book on git (CC licensed).<br />
* [http://book.git-scm.com/ The git community book], also as [http://book.git-scm.com/book.pdf pdf]<br />
<br />
=== Tutorials ===<br />
<br />
* [http://www.kernel.org/pub/software/scm/git/docs/gittutorial.html The official tutorial introduction to Git]<br />
* [http://www-cs-students.stanford.edu/~blynn/gitmagic/ Git Magic] - A good intro to git (in several languages!) <br />
*[http://tom.preston-werner.com/2009/05/19/the-git-parable.html The Git Parable] - Essential reading if you want to truly understand git.<br />
* [http://www.gitcasts.com/ Git Screencasts]<br />
<br />
=== Cheat Sheets ===<br />
<br />
* [http://cheat.errtheblog.com/s/git Quick reference]<br />
* [http://zrusin.blogspot.com/2007/09/git-cheat-sheet.html Illustrated git cheat sheet] (broken image, get it from [[Media:Zrusin-git-cheat-sheet-medium.png]])<br />
<br />
= Documentation Changes =<br />
<br />
== KDE Documentation Review ==<br />
<br />
=== Existing Pages For Review ===<br />
<br />
Existing KDE pages about Git, SVN, and/or buildinga KDE that need to be revised. When revising pages try to split the generic development and revision control policies separate from Git specific stuff. Do not refer to "the KDE Git Repository" but instead the "KDE Code Repository". Lots of small simple pages that are less daunting to newbies and can be linked to from multiple locations are preferred to massive walls of text.<br />
<br />
Keep:<br />
* [[Infrastructure/Tutorials/Git/Basics]]<br />
* [[Infrastructure/Tutorials/Git/git-svn]]<br />
* [[Infrastructure/Tutorials/Git/kde-qt]]<br />
* [[Getting Started/Sources/Amarok Git Tutorial]]<br />
<br />
<br />
On community.kde.org:<br />
* http://community.kde.org/Sysadmin/GitKdeOrgManual<br />
* http://community.kde.org/20110213_GitWorkflowAgenda<br />
* http://community.kde.org/20110213_GitWorkflowAgenda/StevesIdea<br />
<br />
On techbase.kde.org:<br />
* [[Getting Started]]<br />
* [[Getting Started/Build/KDE4]]<br />
* [[Getting Started/Build/KDE4.x]]<br />
* [[Getting Started/Build/KDE4/Prerequisites]]<br />
* [[Getting Started/Build/KDE4/Windows/subversion]]<br />
* [[Getting_Started/Increased_Productivity_in_KDE4_with_Scripts]]<br />
* [[Getting_Started/Build/kdesrc-build]]<br />
* [[Getting Started/Sources/Anonymous SVN]]<br />
* [[Getting_Started/Sources/Using_Subversion_with_KDE]]<br />
* [[Getting_Started/Set_up_KDE_4_for_development]]<br />
* [[Getting_Started/Using_an_IDE_with_KDE4]]<br />
* [[Policies/SVN_Commit_Policy]]<br />
* [[Policies/SVN_Guidelines]]<br />
* [[Infrastructure/Tools]]<br />
* [[Infrastructure/Tutorials/Git/Recipes]]<br />
* [[Infrastructure/Tutorials/Git/decoding-git]]<br />
* [[Projects/rekonq/Git_with_rekonq_HowTo]]<br />
* [[Projects/Related/Subversion]]<br />
* [[Projects/MovetoGit]]<br />
* [[Projects/MoveToGit/StepsToMove]]<br />
* [[Contribute/Get a SVN Account]]<br />
* [[Contribute/First Steps with your KDE SVN Account]]<br />
<br />
There are also numerous other pages referring to "the KDE SVN/subversion repositories" which should be replaced with the generic "KDE code repositories".<br />
<br />
There are also numerous translated pages which will need to be updated once the original pages are completed.<br />
<br />
=== New Page Structure ===<br />
<br />
* [[Getting_Started]]<br />
* [[Getting_Started/Build]]<br />
* [[Getting_Started/Build/Environment]]<br />
* [[Getting_Started/Build/Requirements]]<br />
* [[Getting_Started/Build/Qt]]<br />
* [[Getting_Started/Build/KdeSupport]]<br />
* [[Getting_Started/Build/Windows]]<br />
* [[Getting_Started/Build/Mac_OS_X]]<br />
* [[Getting_Started/Run]]<br />
* [[Getting_Started/Run/Shell]]<br />
* [[Getting_Started/Run/Nested_Session]]<br />
* [[Getting_Started/Run/Full_Session]]<br />
<br />
=== For Deletion ===<br />
<br />
The following pages can now be deleted and/or redirected:<br />
* [[Infrastructure/Tutorials/Git]]<br />
* [[Infrastructure/Tutorials/Git/KdeOnGit]]<br />
* [[Infrastructure/Tutorials/Git/Pushing]]<br />
* [[Infrastructure/Tutorials/Git/BestPractices]]<br />
* [[Infrastructure/Tutorials/Git/Intermediate]]</div>Nicolas17https://community.kde.org/index.php?title=Policies/CMake_Coding_Style&diff=47660Policies/CMake Coding Style2011-06-29T19:49:04Z<p>Nicolas17: /* Upper/lower casing */ update to new syntaxhighlighter</p>
<hr />
<div>This document describes the recommended coding style for CMake files in KDE, i.e. CMakeLists.txt files and *.cmake files.<br />
<br />
==Indentation==<br />
<br />
Indent all code correctly, i.e. the body of <br />
* IF/ELSE/ENDIF<br />
* FOREACH/ENDFOREACH<br />
* WHILE/ENDWHILE<br />
* MACRO/ENDMACRO<br />
* FUNCTION/ENDFUNCTION (CMake 2.6)<br />
<br />
Use spaces for indenting, 2, 3 or 4 spaces preferably. Use the same amount<br />
of spaces for indenting as is used in the rest of the file.<br />
<br />
==Upper/lower casing==<br />
<br />
CMake commands are case-insensitive (only the commands, not the arguments or variable names). So all the following versions work:<br />
<syntaxhighlight lang="cmake"><br />
add_executable(foo foo.c)<br />
ADD_EXECUTABLE(bar bar.c)<br />
Add_Executable(hello hello.c)<br />
aDd_ExEcUtAbLe(blub blub.c)<br />
</syntaxhighlight><br />
<br />
But this would be ugly.<br />
<br />
In KDE the ''all-lowercase style is preferred''. The all-uppercase style is also ok. Mixing upper- and lowercase should not be done in KDE CMake files.<br />
Although all-lowercase is preferred, if a file is apparently in all-uppercase style, then stay consistent and also use all-uppercase in this file.<br />
<br />
==(Not) Using pkg-config==<br />
<br />
You are free to use pkg-config in FindXXX.cmake modules, as long as the following conditions are met:<br />
* the FindXXX.cmake must also work without pkg-config, as long as the package is either installed to one of the default locations (as /usr or /usr/local) or if CMAKE_PREFIX_PATH is set accordingly<br />
* use only FIND_PACKAGE(PkgConfig), don't use INCLUDE(UsePkgConfig), this one is deprecated<br />
* make sure the variables created by PKG_CHECK_MODULES() are all prefixed with "PC_", so they don't mix up with other variables, e.g. set via FIND_PATH() etc.<br />
<br />
<br />
==Writing CMake Find-modules==<br />
<br />
Follow the style guide from CMake when writing some FindFoo.cmake module: <br />
[http://www.cmake.org/cgi-bin/viewcvs.cgi/Modules/readme.txt?root=CMake&view=markup readme.txt]</div>Nicolas17https://community.kde.org/index.php?title=Get_Involved/development/Tutorials/Writing_Qt_Designer_Plugins&diff=84322Get Involved/development/Tutorials/Writing Qt Designer Plugins2011-06-29T19:44:35Z<p>Nicolas17: update to new syntaxhighlighter</p>
<hr />
<div>== Abstract ==<br />
<br />
This tutorial shows how to add support for custom GUI elements to Qt Designer. In the first section you learn how to write a Qt Designer plugin for a simple custom widget. The second section then presents how to support more than one widget in a plugin.<br />
<br />
== Creating a simple Plugin for a custom Widget ==<br />
<br />
We assume you have written a nice widget which you also want to be able to use in Qt Designer and the ui files. For this to achieve you have to write a plugin module for Qt Designer. It consists of just a single object of a class you have to write. <br />
<br />
=== The Interface to the Plugin ===<br />
The class, a factory, needs to be subclassed from {{qt|QObject}} and to implement the interface {{qt|QDesignerCustomWidgetInterface}}, as given by example for the widget MyWidget in the file "mywidgetdesignerfactory.h":<br />
<br />
<syntaxhighlight lang="cpp-qt" line=""><br />
#ifndef MYWIDGETDESIGNERFACTORY_H<br />
#define MYWIDGETDESIGNERFACTORY_H<br />
<br />
// Qt<br />
#include <QtDesigner/QDesignerCustomWidgetInterface><br />
#include <QtCore/QObject><br />
<br />
class MyWidgetDesignerFactory : public QObject, public QDesignerCustomWidgetInterface<br />
{<br />
Q_OBJECT<br />
Q_INTERFACES( QDesignerCustomWidgetInterface )<br />
<br />
public:<br />
explicit MyWidgetDesignerFactory( QObject* parent = 0 );<br />
<br />
public: // QDesignerCustomWidgetInterface API<br />
virtual QWidget* createWidget( QWidget* parent );<br />
virtual QString group() const;<br />
virtual QIcon icon() const;<br />
virtual QString includeFile() const;<br />
virtual bool isContainer() const;<br />
virtual QString name() const;<br />
virtual QString toolTip() const;<br />
virtual QString whatsThis() const;<br />
};<br />
<br />
#endif<br />
</syntaxhighlight><br />
<br />
=== Creating the Data as needed by the Interface ===<br />
<br />
The definition of the methods is done as shown in the file "mywidgetdesignerfactory.cpp":<br />
<br />
<syntaxhighlight lang="cpp-qt" line=""><br />
#include "mywidgetdesignerfactory.h"<br />
<br />
// my lib<br />
#include <mywidget.h><br />
// Qt<br />
#include <QtCore/QtPlugin><br />
<br />
<br />
MyWidgetDesignerFactory::MyWidgetDesignerFactory( QObject* parent )<br />
: QObject( parent )<br />
{<br />
}<br />
<br />
QWidget* MyWidgetDesignerFactory::createWidget( QWidget* parent )<br />
{<br />
MyNamespace::MyWidget* widget = new MyNamespace::MyWidget( parent );<br />
// init with some example data useful in the preview inside Qt Designer<br />
// this data will be only used there, not in the resulting view in the program.<br />
return widget;<br />
}<br />
<br />
QString MyWidgetDesignerFactory::group() const<br />
{<br />
return QString::fromLatin1("Some group (KDE)");<br />
}<br />
<br />
QIcon MyWidgetDesignerFactory::icon() const<br />
{<br />
return QIcon();<br />
}<br />
<br />
QString MyWidgetDesignerFactory::includeFile() const<br />
{<br />
return QString::fromLatin1("neededincludepathprefix/mywidget.h");<br />
}<br />
<br />
QString MyWidgetDesignerFactory::toolTip() const<br />
{<br />
return QString::fromLatin1("Useful Widget of Mine");<br />
}<br />
<br />
QString MyWidgetDesignerFactory::whatsThis() const<br />
{<br />
return QString::fromLatin1("Some description of my widget.");<br />
}<br />
<br />
bool MyWidgetDesignerFactory::isContainer() const<br />
{<br />
return false;<br />
}<br />
<br />
QString MyWidgetDesignerFactory::name() const<br />
{<br />
return QString::fromLatin1("MyNamespace::MyWidget");<br />
}<br />
<br />
// export macro, takes the name of the plugin module and the class name<br />
Q_EXPORT_PLUGIN2( mydesignerplugin, MyWidgetDesignerFactory )<br />
</syntaxhighlight><br />
<br />
For detailed information about the purpose of all the methods of the API you might want to read [http://qt.nokia.com/doc/designer-creating-custom-widgets.html the related page] from the Qt documentation.<br />
<br />
=== Adding to the Buildsystem ===<br />
<br />
After you created the two files above you need to tell the buildsystem how to build the Qt Designer plugin from them and where to install it. This needs a CMakeLists.txt file in the same directory with such content:<br />
<br />
<syntaxhighlight lang="cmake"><br />
set( mydesignerplugin_SRCS<br />
mywidgetdesignerfactory.cpp<br />
)<br />
<br />
# the name of the plugin module is the same name as used in the macro Q_EXPORT_PLUGIN2 in the file mywidgetdesignerfactory.cpp<br />
kde4_add_plugin( mydesignerplugin ${mydesignerplugin_SRCS} )<br />
<br />
target_link_libraries( mydesignerplugin<br />
mylib<br />
# other needed libs<br />
)<br />
<br />
install( TARGETS mydesignerplugin DESTINATION ${PLUGIN_INSTALL_DIR}/plugins/designer )<br />
</syntaxhighlight><br />
<br />
=== Finding your Widget in Qt Designer ===<br />
If you successfully compiled and installed your plugin, (re-)start Qt Designer and have a look in the Widgetbox (on the left side by default). If everything worked perfectly you will see a new entry "MyNamespace::MyWidget" (as defined by <tt>MyWidgetDesignerFactory::name()</tt>) in the group "Some group (KDE)" (as defined by <tt>MyWidgetDesignerFactory::group()</tt>). Now drag and drop the entry to the currently edited view in Qt Designer, and voilà, your widget should be added to that view.<br />
<br />
<br />
== Creating a Bundle Plugin for several Widgets ==<br />
<br />
You may have created not just one, but several widgets which you would like to enable support for in Qt Designer. Instead of writing a plugin for each widget you can collect the factories for all widgets in a single plugin, by using a helper class.<br />
<br />
In the next subsections it is assumed you have already written factories for your two widgets <tt>MyWidget</tt> and <tt>MyOtherWidget</tt> as described in the previous section, namely <tt>MyWidgetDesignerFactory</tt> and <tt>MyOtherWidgetDesignerFactory</tt>, using the headers "mywidgetdesignerfactory.h" and "myotherwidgetdesignerfactory.h" and the implementation files "mywidgetdesignerfactory.cpp" and "myotherwidgetdesignerfactory.cpp".<br />
<br />
=== The Interface to the Bundle ===<br />
<br />
The helper class, which is used to hold all factories, needs to be subclassed from {{qt|QObject}} and to implement the interface {{qt|QDesignerCustomWidgetCollectionInterface}}, as in the following example MyWidgetDesignerFactoryCollection in the file "mywidgetdesignerfactorycollection.h":<br />
<br />
<syntaxhighlight lang="cpp-qt" line=""><br />
#ifndef MYWIDGETDESIGNERFACTORYCOLLECTION_H<br />
#define MYWIDGETDESIGNERFACTORYCOLLECTION_H<br />
<br />
// Qt<br />
#include <QtDesigner/QDesignerCustomWidgetCollectionInterface><br />
#include <QtCore/QObject><br />
<br />
class MyWidgetDesignerFactoryCollection : public QObject, public QDesignerCustomWidgetCollectionInterface<br />
{<br />
Q_OBJECT<br />
Q_INTERFACES( QDesignerCustomWidgetCollectionInterface<br />
<br />
public:<br />
explicit MyWidgetDesignerFactoryCollection( QObject* parent = 0 );<br />
<br />
public: // QDesignerCustomWidgetCollectionInterface API<br />
virtual QList<QDesignerCustomWidgetInterface*> customWidgets() const;<br />
<br />
private:<br />
QList<QDesignerCustomWidgetInterface*> mWidgetFactories;<br />
};<br />
<br />
#endif<br />
</syntaxhighlight><br />
<br />
<br />
=== Putting the Factories into the Collection ===<br />
<br />
The implementation of the helper class is pretty simple. You just have to create all widget factories in the constructor and add them to the list member. This list is then returned in the method <tt>MyWidgetDesignerFactoryCollection::customWidgets()</tt>. See the example code of the file "mywidgetdesignerfactorycollection.cpp":<br />
<br />
<syntaxhighlight lang="cpp-qt" line=""><br />
#include "mywidgetdesignerfactorycollection.h"<br />
<br />
// plugin<br />
#include "mywidgetdesignerfactory.h"<br />
#include "myotherwidgetdesignerfactory.h"<br />
// Qt<br />
#include <QtCore/QtPlugin><br />
<br />
MyWidgetDesignerFactoryCollection::MyWidgetDesignerFactoryCollection( QObject* parent )<br />
: QObject( parent )<br />
{<br />
mWidgetFactories.append( new MyWidgetDesignerFactory(this) );<br />
mWidgetFactories.append( new MyOtherWidgetDesignerFactory(this) );<br />
}<br />
<br />
QList<QDesignerCustomWidgetInterface*> MyWidgetDesignerFactoryCollection::customWidgets() const<br />
{<br />
return mWidgetFactories;<br />
}<br />
<br />
Q_EXPORT_PLUGIN2( mydesignerplugin, MyWidgetDesignerFactoryCollection )<br />
</syntaxhighlight><br />
<br />
Important: As the <tt>MyWidgetDesignerFactoryCollection</tt> is now the central class of the plugin and not any of the widget factories, the source files of the widget factories should no more contain the macro <tt>Q_EXPORT_PLUGIN2</tt>. Otherwise the build will fail.<br />
<br />
=== Adapting the Buildsystem ===<br />
<br />
The CMakeLists.txt content is similar to the one for the single widget factory plugin. The two differences are in the files listed for <tt>mydesignerplugin_SRCS</tt>, here you put all the source files of the factories and the one of the helper class, and the libraries listed in <tt>target_link_libraries( ... )</tt>, here you collect all libraries as needed by the single widget factories:<br />
<br />
<syntaxhighlight lang="cmake"><br />
set( mydesignerplugin_SRCS<br />
mywidgetdesignerfactory.cpp<br />
myotherwidgetdesignerfactory.cpp<br />
# and any other factory source file<br />
mywidgetdesignerfactorycollection.cpp<br />
)<br />
<br />
# the name of the plugin module is the same name as used in the macro Q_EXPORT_PLUGIN2 in the file mywidgetdesignerfactorycollection.cpp<br />
kde4_add_plugin( mydesignerplugin ${mydesignerplugin_SRCS} )<br />
<br />
target_link_libraries( mydesignerplugin<br />
mylib<br />
# other needed libs<br />
)<br />
<br />
install( TARGETS mydesignerplugin DESTINATION ${PLUGIN_INSTALL_DIR}/plugins/designer )<br />
</syntaxhighlight><br />
<br />
Now if you compile and install this new bundle plugin, after the (re-)start of Qt Designer you should find all your widgets in the Widgetbox. Make sure you have removed any previously installed plugins with a single widget factory for any of the widgets before to avoid conflicts.</div>Nicolas17https://community.kde.org/index.php?title=Marble/MacPackaging&diff=74479Marble/MacPackaging2011-06-29T19:41:50Z<p>Nicolas17: update to new syntaxhighlighter</p>
<hr />
<div>== Packaging Marble ==<br />
<br />
Here is some advice about how packaging is supposed to happen on the mac platform.<br />
<br />
==== Qt-Only ====<br />
<br />
Configure Marble with:<br />
<pre><br />
cmake -DCMAKE_BUILD_TYPE=release -DQTONLY=ON -DCMAKE_INSTALL_PREFIX=/Applications/ ../marble<br />
</pre><br />
<br />
To generate a Diskimage (.dmg) one can use this script (based on parts by Tim Sutton, thanks!):<br />
<br />
<syntaxhighlight lang="bash"><br />
VERSION=0.8<br />
APPNAME=Marble<br />
<br />
VOLNAME=${APPNAME}-${VERSION}<br />
DMGNAME=${VOLNAME}Uncompressed.dmg<br />
COMPRESSEDDMGNAME=${VOLNAME}.dmg<br />
<br />
function deploy_file() {<br />
for n in $(otool -L $1 | grep -E \(Qt\|phonon\)); do<br />
path=`echo $n | grep -E \(Qt\|phonon\)`<br />
if [ $path ] ; then<br />
name=$(basename $path)<br />
FRAMEWORKS="$FRAMEWORKS $name"<br />
fi<br />
done<br />
<br />
for framework in $FRAMEWORKS ; do<br />
install_name_tool -change \<br />
$framework.framework/Versions/4/$framework \<br />
@executable_path/../Frameworks/$framework.framework/Versions/4/$framework \<br />
$1<br />
done<br />
}<br />
<br />
function deploy_plugins() {<br />
for plugin in $1/Contents/Resources/plugins/*; do<br />
deploy_file $plugin<br />
done<br />
}<br />
<br />
function set_bundle_display_options() {<br />
osascript <<-EOF<br />
tell application "Finder"<br />
set f to POSIX file ("${1}" as string) as alias<br />
tell folder f<br />
open<br />
tell container window<br />
set toolbar visible to false<br />
set statusbar visible to false<br />
set current view to icon view<br />
delay 1 -- sync<br />
set the bounds to {20, 50, 300, 400}<br />
end tell<br />
delay 1 -- sync<br />
set icon size of the icon view options of container window to 64<br />
set arrangement of the icon view options of container window to not arranged<br />
set position of item "Marble.app" to {100,150}<br />
set position of item "Applications" to {280, 150}<br />
set background picture of the icon view options of container window to file "background.png" of folder "Pictures"<br />
set the bounds of the container window to {0, 0, 300, 400}<br />
update without registering applications<br />
delay 5 -- sync<br />
close<br />
end tell<br />
delay 5 -- sync<br />
end tell<br />
EOF<br />
<br />
}<br />
<br />
function create_symlinks() {<br />
cd "$1/Contents/Resources"<br />
ln -s "../MacOS/resources/data/" "data"<br />
ln -s "../MacOS/resources/plugins/" "plugins"<br />
cd -<br />
}<br />
<br />
<br />
<br />
<br />
rm ~/Desktop/${DMGNAME}<br />
rm ~/Desktop/${COMPRESSEDDMGNAME}<br />
hdiutil create -size 250m -fs HFS+ -volname ${VOLNAME} ~/Desktop/${DMGNAME}<br />
<br />
# Mount the disk image<br />
hdiutil attach ~/Desktop/${DMGNAME}<br />
<br />
# Obtain device information<br />
DEVS=$(hdiutil attach ~/Desktop/${DMGNAME} | cut -f 1)<br />
DEV=$(echo $DEVS | cut -f 1 -d ' ')<br />
VOLUME=$(mount |grep ${DEV} | cut -f 3 -d ' ')<br />
<br />
# copy in the application bundle<br />
cp -Rp /Applications/${APPNAME}.app ${VOLUME}/${APPNAME}.app<br />
<br />
# fix the libs<br />
macdeployqt ${VOLUME}/${APPNAME}.app<br />
create_symlinks ${VOLUME}/${APPNAME}.app<br />
deploy_file "${VOLUME}/${APPNAME}.app/Contents/MacOS/lib/libmarblewidget.8.dylib"<br />
deploy_plugins ${VOLUME}/${APPNAME}.app<br />
<br />
# copy in background image<br />
mkdir -p ${VOLUME}/Pictures<br />
# fixme: path<br />
cp ~/Desktop/marble-dmg-background.png ${VOLUME}/Pictures/background.png<br />
# symlink applications<br />
ln -s /Applications/ ${VOLUME}/Applications<br />
set_bundle_display_options ${VOLUME}<br />
mv ${VOLUME}/Pictures ${VOLUME}/.Pictures<br />
<br />
# Unmount the disk image<br />
hdiutil detach $DEV<br />
<br />
# Convert the disk image to read-only<br />
hdiutil convert ~/Desktop/${DMGNAME} -format UDBZ -o ~/Desktop/${COMPRESSEDDMGNAME}<br />
<br />
</syntaxhighlight><br />
<br />
<br />
It uses the macdeployqt tool which copies Qt and its plugins into the App Bundle.<br />
macdeployqt also tells the main application to link against the libs contained in the bundle, instead of the system libs.<br />
This does not happen to the libmarblewidget and the Marble plugins, so it has to be done by the script.<br />
The script also sets a background Image for the dmg. (Place it at ~/Desktop/marble-dmg-background.png or change the path in the script)<br />
<br />
After that you should have Marble-version.dmg on you Desktop.</div>Nicolas17https://community.kde.org/index.php?title=Policies/CMake_and_Source_Compatibility&diff=47682Policies/CMake and Source Compatibility2010-07-31T02:49:15Z<p>Nicolas17: Shorten section title</p>
<hr />
<div>= Introduction =<br />
<br />
All KDE 4 releases need to keep binary and source compatibility with KDE 4.0.0. This doesn't affect only the C++ code, but also the CMake modules installed with kdelibs (also the cmake modules of the other KDE modules ?).<br />
<br />
== What does CMake source compatibility mean? ==<br />
<br />
A program which was developed against KDE 4.0.0, must also build against let's say KDE 4.5.9. The CMakeLists.txt may look like that (ignoring KDE specific stuff):<br />
<br />
<code><br />
find_package(FooBar)<br />
<br />
set(MySources main.cpp)<br />
set(MyLinkLibs ...)<br />
<br />
if(FOOBAR_FOUND)<br />
add_definitions(-D_USE_FOOBAR ${FOOBAR_DEFINITIONS} )<br />
set(MySources ${MySources} foobarwidget.cpp)<br />
include_directories(${FOOBAR_INCLUDES})<br />
set(MyLinkLibs ${MyLinkLibs} ${FOOBAR_LIBRARIES})<br />
<br />
foobar_do_stuff()<br />
endif(FOOBAR_FOUND)<br />
<br />
...<br />
add_executable(kapp ${MySources})<br />
...<br />
<br />
target_link_libraries(kapp ${MyLinkLibs})<br />
</code><br />
<br />
<br />
So here we have a CMakeLists.txt which uses the library/package "FooBar", you can exchange FooBar <br />
with ANY CMake module, e.g. KDE4, Qt4, GIF, Freetype, etc.<br />
<br />
== Source compatibility rules ==<br />
<br />
In order to stay source compatible, the following has to be kept:<br />
<br />
* '''1. The CMake module FindFooBar.cmake must stay available'''<br />
Otherwise CMake will fail with "could not find FindFooBar.cmake".<br />
This means either it has to stay in the KDE module, or in the case that KDE would require a newer <br />
version of CMake which comes with a (for KDE) usable version of that module, that the minimum required<br />
version of CMake must ship this module (which must be fully compatible).<br />
<br />
* '''2. The file name of the CMake module must stay exactly the same'''<br />
<br />
E.g. in KDE 4.0.0 we have a FindFreetype.cmake installed by kdelibs. This filename must stay <br />
exactly the same, also the case must not change (e.g. FindFreeType.cmake).<br />
Otherwise the same as in 1) will happen.<br />
<br />
* '''3. Macros coming with the module must stay compatible'''<br />
<br />
So if FindFooBar.cmake in kdelibs 4.0.0 has a macro <tt>FOOBAR_DO_STUFF()</tt>, this macro<br />
must be available in all KDE4 versions, with exactly the same name and the arguments <br />
supported in KDE 4.0.0 must be supported in all KDE4 versions.<br />
It is possible to add new or alternative arguments to a macro, but the old behaviour<br />
must stay supported.<br />
<br />
* '''4. Variables coming with the module must stay compatible'''<br />
<br />
In the example above several variables from FindFooBar.cmake are used:<br />
<tt>FOOBAR_DEFINITIONS, FOOBAR_INCLUDES, FOOBAR_LIBRARIES</tt> and <tt>FOOBAR_FOUND</tt>. <br />
At least all "public" variables (i.e. those documented in the header of the cmake<br />
module) must be available from this module in all releases of KDE4.<br />
This means<br />
<br />
* their case must not change<br />
* they must have equivalent values<br />
<br />
This means that e.g. <tt>FOOBAR_LIBRARIES</tt> must always contain all libraries required to link to in order to use the package FooBar. <br />
Maybe this would be in KDE 4.0.0 something like "-lfoobar -lz".<br />
This could be changed later on to the recommended format: "/usr/lib/libfoobar.so;/usr/lib/libz.so"<br />
It must not be changed in a way so that then additional variables would be required for successful linking.<br />
E.g. the following change would be wrong:<br />
<pre><br />
FOOBAR_LIBRARIES="/usr/lib/libfoobar.so"<br />
FOOBAR_EXTRA_LIBRARIES="/usr/lib/libz.so"<br />
</pre><br />
<br />
== What changes are possible? ==<br />
<br />
* '''1. New modules can be added'''<br />
<br />
* '''2. New variables can be added to existing modules'''<br />
<br />
It has to be made sure that the existing ones stay working, s.a.<br />
<br />
* '''3. New macros can be added'''<br />
<br />
It has to be made sure that the existing ones stay working, s.a.<br />
If a new and better alternative to an existing macro is added, the old one may be marked as deprecated like this:<br />
<br />
<code><br />
macro(OLD_SIMPLE_MACRO args...)<br />
message(STATUS "OLD_SIMPLE_MACRO() is deprecated, <br />
use NEW_FANCY_MACRO() instead")<br />
# ...keep the macro implementation here, <br />
# so the macro keeps working<br />
endmacro(OLD_SIMPLE_MACRO)<br />
<br />
macro(NEW_FANCY_MACRO args...)<br />
# ... new fancy implementation<br />
endmacro(NEW_FANCY_MACRO)<br />
</code><br />
<br />
* '''4. More arguments can be added to existing macros'''<br />
<br />
It has to be made sure that the macro stays working as it did before with the old set of arguments.<br />
<br />
==If nothing else helps...==<br />
<br />
If you are developing an application with the KDE 4, but don't trust the KDE developer team that they will be able to keep the one CMake module you are<br />
interested in compatible, there is still an option left for you.<br />
<br />
We take the same example as above, i.e. your application uses package<br />
FooBar. If you want to make sure that one specific version of FindFooBar.cmake<br />
is used, just add this module to your application, put it e.g. in myapp/cmake/FindFooBar.cmake. To make CMake look in this directory if it searches the file FindFooBar.cmake, you have to adjust the <tt>CMAKE_MODULE_PATH</tt> CMake variable, so that the top of your top level<br />
CMakeLists.txt will look something like this:<br />
<code><br />
set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake <br />
${CMAKE_MODULE_PATH})<br />
<br />
find_package(KDE4)<br />
<br />
find_package(FooBar)<br />
<br />
...<br />
<br />
</code></div>Nicolas17https://community.kde.org/index.php?title=Policies/CMake_Commit_Policy&diff=47692Policies/CMake Commit Policy2010-07-31T02:38:09Z<p>Nicolas17: Replace underscores with spaces in page links</p>
<hr />
<div>The policies outlined here apply to the CMake files in kdelibs/cmake/modules/, i.e. they don't apply to CMake files in other KDE modules.<br />
<br />
The files located in kdelibs/cmake/modules/ are installed and can be used by other applications. This means they are part of the public interface of kdelibs and we have to keep compatibility. Committing there also has the potential to break the build of whole KDE for everybody.<br />
<br />
When committing changes in kdelibs/cmake/modules/, the following rules must be followed:<br />
<br />
# '''Adding new files''': new files must be sent to kde-buildsystem@kde.org for review. They may only be added after an explicit Ok. <br />
# Patches which '''refactor multiple modules''' at once or which change how something is done in general for multiple files must be posted first. They may only be committed after an explicit Ok.<br />
# '''Adding public macros or functions''': they must be posted for review first. If there is NO answer at all within two weeks they may be committed anyway.<br />
# Documentation must never be removed as long as it is valid and not replaced.<br />
# Other patches can always be committed without review.<br />
# All patches must maintain [[Policies/CMake and Source Compatibility|source compatibility]].<br />
# All patches must follow the [[Policies/CMake Coding Style|coding style]] for CMake files in KDE.</div>Nicolas17https://community.kde.org/index.php?title=Policies/CMake_Commit_Policy&diff=47691Policies/CMake Commit Policy2010-07-31T02:37:10Z<p>Nicolas17: grammar fix</p>
<hr />
<div>The policies outlined here apply to the CMake files in kdelibs/cmake/modules/, i.e. they don't apply to CMake files in other KDE modules.<br />
<br />
The files located in kdelibs/cmake/modules/ are installed and can be used by other applications. This means they are part of the public interface of kdelibs and we have to keep compatibility. Committing there also has the potential to break the build of whole KDE for everybody.<br />
<br />
When committing changes in kdelibs/cmake/modules/, the following rules must be followed:<br />
<br />
# '''Adding new files''': new files must be sent to kde-buildsystem@kde.org for review. They may only be added after an explicit Ok. <br />
# Patches which '''refactor multiple modules''' at once or which change how something is done in general for multiple files must be posted first. They may only be committed after an explicit Ok.<br />
# '''Adding public macros or functions''': they must be posted for review first. If there is NO answer at all within two weeks they may be committed anyway.<br />
# Documentation must never be removed as long as it is valid and not replaced.<br />
# Other patches can always be committed without review.<br />
# All patches must maintain [[Policies/CMake_and_Source_Compatibility|source compatibility]].<br />
# All patches must follow the [[Policies/CMake_Coding_Style|coding style]] for CMake files in KDE.</div>Nicolas17https://community.kde.org/index.php?title=KDE-AR/Sprint_de_traducci%C3%B3n_2009&diff=569KDE-AR/Sprint de traducción 20092009-12-27T20:28:22Z<p>Nicolas17: /* Lista de asignaciones de traducciones */ convertida la lista de traducciones a una tabla (pruebas hechas en User:Nicolas17/Tabla_Sprint)</p>
<hr />
<div>Sprint de traducción al español a realizarse el 27 de diciembre de 2009 desde las 2pm (UTC -3). Para coordinar, entrar al canal [irc://irc.freenode.net/#kde-ar #kde-ar] en la red freenode de IRC.<br />
<br />
== ¿Qué se puede traducir? ==<br />
<br />
=== Techbase ===<br />
<br />
Es un wiki que contiene información técnica para desarrolladores o administradores de sistemas.<br />
* Enlace: http://techbase.kde.org.<br />
<br />
Actividades posibles a realizar:<br />
* Traducir artículos sin empezar.<br />
* Actualizar artículos traducidos pero obsoletos.<br />
* Controlar que los enlaces sean correctos.<br />
<br />
Antes de traducir, leer: http://techbase.kde.org/Help:Wiki_Translation_%28es%29.<br />
<br />
Ante cada cambio, actualizar la lista en: http://techbase.kde.org/User:Edumardo.<br />
<br />
==== Páginas a traducir ====<br />
<br />
* completar<br />
<br />
=== Userbase ===<br />
<br />
Es un wiki que contiene información para usuarios de KDE o entusiastas.<br />
* Enlace: http://userbase.kde.org.<br />
<br />
Actividades posibles a realizar:<br />
* Traducir artículos sin empezar.<br />
* Actualizar artículos traducidos pero obsoletos.<br />
* Controlar que los enlaces sean correctos.<br />
<br />
==== Páginas a traducir ====<br />
<br />
* completar<br />
<br />
=== Aplicaciones ===<br />
<br />
==== ¿Qué tenemos permiso para traducir? ====<br />
<br />
* Todos los kipi-plugins y kgrab.<br />
** Buscar y descargar un .po que falte traducir desde [http://l10n.kde.org/stats/gui/trunk-kde4/team/es/extragear-graphics/]<br />
** Agregar a la lista de abajo el .po a traducir y el nick entre paréntesis.<br />
<br />
* KMyMoney (si queda algo).<br />
<br />
==== Lista de asignaciones de traducciones ====<br />
<br />
{|<br />
! style="width: 15em"|Archivo<br />
! Traductor<br />
! Estado<br />
|-<br />
| kipiplugin_calendar.po || mctpyt || bgcolor=lime|terminado<br />
|-<br />
| kipiplugin_facebook.po || faktorqm || bgcolor=yellow|en progreso<br />
|-<br />
| kipiplugin_flickrexport.po || juanman || bgcolor=yellow|en progreso<br />
|-<br />
| kipiplugin_galleryexport.po || mctpyt || bgcolor=lime|terminado<br />
|-<br />
| kipiplugin_ipodexport.po || juanman || bgcolor=lime|terminado<br />
|-<br />
| kipiplugin_kioexportimport.po || mctpyt || bgcolor=lime|terminado<br />
|-<br />
| kipiplugin_removeredeyes.po || mctpyt || bgcolor=yellow|en progreso<br />
|-<br />
| kgrab.po || leo_rockway || bgcolor=yellow|en progreso<br />
|}<br />
<br />
<br />
Antes de traducir, leer:<br />
* http://es.l10n.kde.org/empezar.php.<br />
* http://es.l10n.kde.org/faq.php.<br />
* http://es.l10n.kde.org/normas_generales.php.<br />
* pueden ayudarse desde la traducción portuguesa, que es de buena calidad, desde [http://l10n.kde.org/stats/gui/trunk-kde4/team/pt/extragear-graphics/]<br />
<br />
=== Documentación ===<br />
<br />
==== ¿Qué tenemos permiso para traducir? ====<br />
<br />
* Todos los kipi-plugins.<br />
** Buscar y descargar un .po que falte traducir desde [http://l10n.kde.org/stats/doc/trunk-kde4/team/es/extragear-graphics/]<br />
** Agregar a la lista de abajo el .po a traducir y el nick entre paréntesis.<br />
<br />
==== Lista de asignaciones de traducciones ====<br />
<br />
* kipi-plugins_acquireimages.po (juanman). Estado: sin empezar.<br />
* completar<br />
<br />
Antes de traducir, leer: <br />
* http://es.l10n.kde.org/empezar.php.<br />
* http://es.l10n.kde.org/faq.php.<br />
* http://es.l10n.kde.org/normas_generales.php.<br />
* pueden ayudarse desde la traducción portuguesa, que es de buena calidad, desde [http://l10n.kde.org/stats/doc/trunk-kde4/team/pt/extragear-graphics/]</div>Nicolas17https://community.kde.org/index.php?title=KDE-AR/Sprint_de_traducci%C3%B3n_2009&diff=564KDE-AR/Sprint de traducción 20092009-12-27T19:57:18Z<p>Nicolas17: Agregado: leo_rockway traduciendo kgrab</p>
<hr />
<div>Sprint de traducción al español a realizarse el 27 de diciembre de 2009 desde las 2pm (UTC -3). Para coordinar, entrar al canal [irc://irc.freenode.net/#kde-ar #kde-ar] en la red freenode de IRC.<br />
<br />
== ¿Qué se puede traducir? ==<br />
<br />
=== Techbase ===<br />
<br />
Es un wiki que contiene información técnica para desarrolladores o administradores de sistemas.<br />
* Enlace: http://techbase.kde.org.<br />
<br />
Actividades posibles a realizar:<br />
* Traducir artículos sin empezar.<br />
* Actualizar artículos traducidos pero obsoletos.<br />
* Controlar que los enlaces sean correctos.<br />
<br />
Antes de traducir, leer: http://techbase.kde.org/Help:Wiki_Translation_%28es%29.<br />
<br />
Ante cada cambio, actualizar la lista en: http://techbase.kde.org/User:Edumardo.<br />
<br />
==== Páginas a traducir ====<br />
<br />
* completar<br />
<br />
=== Userbase ===<br />
<br />
Es un wiki que contiene información para usuarios de KDE o entusiastas.<br />
* Enlace: http://userbase.kde.org.<br />
<br />
Actividades posibles a realizar:<br />
* Traducir artículos sin empezar.<br />
* Actualizar artículos traducidos pero obsoletos.<br />
* Controlar que los enlaces sean correctos.<br />
<br />
==== Páginas a traducir ====<br />
<br />
* completar<br />
<br />
=== Aplicaciones ===<br />
<br />
==== ¿Qué tenemos permiso para traducir? ====<br />
<br />
* Todos los kipi-plugins y kgrab.<br />
** Buscar y descargar un .po que falte traducir desde [http://l10n.kde.org/stats/gui/trunk-kde4/team/es/extragear-graphics/]<br />
** Agregar a la lista de abajo el .po a traducir y el nick entre paréntesis.<br />
<br />
* KMyMoney (si queda algo).<br />
<br />
==== Lista de asignaciones de traducciones ====<br />
<br />
* kipiplugin_calendar.po (mctpyt). Estado: terminado.<br />
* kipiplugin_facebook.po (faktorqm). Estado: en progreso.<br />
* kipiplugin_flickrexport.po (juanman). Estado: en progreso.<br />
* kipiplugin_galleryexport.po (mctpyt). Estado: terminado.<br />
* kipiplugin_ipodexport.po (juanman). Estado: terminado.<br />
* kipiplugin_kioexportimport.po (mctpyt). Estado: terminado.<br />
* kipiplugin_removeredeyes.po (mctpyt). Estado: en progreso.<br />
* kgrab.po (leo_rockway). Estado: en progreso.<br />
* completar<br />
<br />
Antes de traducir, leer:<br />
* http://es.l10n.kde.org/empezar.php.<br />
* http://es.l10n.kde.org/faq.php.<br />
* http://es.l10n.kde.org/normas_generales.php.<br />
* pueden ayudarse desde la traducción portuguesa, que es de buena calidad, desde [http://l10n.kde.org/stats/gui/trunk-kde4/team/pt/extragear-graphics/]<br />
<br />
=== Documentación ===<br />
<br />
==== ¿Qué tenemos permiso para traducir? ====<br />
<br />
* Todos los kipi-plugins.<br />
** Buscar y descargar un .po que falte traducir desde [http://l10n.kde.org/stats/doc/trunk-kde4/team/es/extragear-graphics/]<br />
** Agregar a la lista de abajo el .po a traducir y el nick entre paréntesis.<br />
<br />
==== Lista de asignaciones de traducciones ====<br />
<br />
* kipi-plugins_acquireimages.po (juanman). Estado: sin empezar.<br />
* completar<br />
<br />
Antes de traducir, leer: <br />
* http://es.l10n.kde.org/empezar.php.<br />
* http://es.l10n.kde.org/faq.php.<br />
* http://es.l10n.kde.org/normas_generales.php.<br />
* pueden ayudarse desde la traducción portuguesa, que es de buena calidad, desde [http://l10n.kde.org/stats/doc/trunk-kde4/team/pt/extragear-graphics/]</div>Nicolas17