Development/Tutorials (es): Difference between revisions

From KDE TechBase
No edit summary
No edit summary
Line 10: Line 10:


;[[Development/Tutorials/Using KXmlGuiWindow_(es)|Crear la ventana principal]]
;[[Development/Tutorials/Using KXmlGuiWindow_(es)|Crear la ventana principal]]
:''Este tutorial te muestra la magia de la cosa mas importante en una aplicación: la ventana principal''
:''Este tutorial te muestra la magia de la cosa mas importante en una aplicación: la ventana principal''


;[[Development/Tutorials/Using KActions_(es)|Usar KActions]]
;[[Development/Tutorials/Using KActions_(es)|Usar KActions]]
:''Como añadir acciones a los menús y a las barras de herramientas (toolbars).''
:''Como añadir acciones a los menús y a las barras de herramientas (toolbars).''


;[[Development/Tutorials/Saving and loading_(es)|Guardar y Abrir]]
;[[Development/Tutorials/Saving and loading_(es)|Guardar y Abrir]]
:''Introducción a la biblioteca KIO mientras añades soporte para guardar y abrir en tu aplicación.''
:''Introducción a la biblioteca KIO mientras añades soporte para guardar y abrir en tu aplicación.''


;[[Development/Tutorials/KCmdLineArgs_(es)|Argumentos en la línea de órdenes]]
;[[Development/Tutorials/KCmdLineArgs_(es)|Argumentos en la línea de órdenes]]
:''Añade la capacidad de especificar a nuestro editor que archivo abrir desde la línea de ordenes.''
:''Añade la capacidad de especificar a nuestro editor que archivo abrir desde la línea de ordenes.''


;[[Development/Tutorials/Session_Management_(es)|Administración de sesiones]]
;[[Development/Tutorials/Session_Management_(es)|Administración de sesiones]]
:''Haz que tu aplicación sea consciente de las sesiones X''
:''Haz que tu aplicación sea consciente de las sesiones X''


Line 112: Line 117:
:''Una vez que tu aplicación está lista para ser localizada, el siguiente paso es asegurarse que los archivos de traducción se construyen automáticamente y que estos estén actualizados. Este tutorial cubre los añadidos necesarios en CMakeLists.txt, así como el proceso de distribuir el catálogo de mensajes resultante junto a tu aplicación.''
:''Una vez que tu aplicación está lista para ser localizada, el siguiente paso es asegurarse que los archivos de traducción se construyen automáticamente y que estos estén actualizados. Este tutorial cubre los añadidos necesarios en CMakeLists.txt, así como el proceso de distribuir el catálogo de mensajes resultante junto a tu aplicación.''


; [[Development/Tutorials/Localization/i18n Challenges|Retos comunes en [http://www.debian.org/doc/manuals/intro-i18n/ i18n] y soluciones]]
; [[Development/Tutorials/Localization/i18n Challenges|Retos comunes en i18n y soluciones]]


:''Este tutorial trata sobre cambios que se pueden introducir eventualmente en tareas tales como traducir manuales (handbooks) y otros datos que existen fuera del código fuente, fusionando , manejando ficheros .po obsoletos, tratando con freezes, codificando en idiomas distintos del Inglés y creando releases independientes de o moviendo aplicaciones entre módulos de KDE.''
:''Este tutorial trata sobre cambios que se pueden introducir eventualmente en tareas tales como traducir manuales (handbooks) y otros datos que existen fuera del código fuente, fusionando , manejando ficheros .po obsoletos, tratando con freezes, codificando en idiomas distintos del Inglés y creando releases independientes de o moviendo aplicaciones entre módulos de KDE.''
Line 140: Line 145:
; [[Development/Tutorials/D-Bus/Introduction|Introduction to D-Bus]]
; [[Development/Tutorials/D-Bus/Introduction|Introduction to D-Bus]]


:''A straight-forward introduction to the core concepts in D-Bus desde una perspectiva del diseñador de aplicaciones, este tutorial trata sobre que es D-Bus y como puede ser utilizado por las aplicaciones.''
:''Una introducción dirigida a comprender los conceptos relacionados con D-Bus desde una perspectiva del diseñador de aplicaciones, este tutorial trata sobre que es D-Bus y como puede ser utilizado por las aplicaciones.''


; [[Development/Tutorials/D-Bus/Accessing Interfaces|Accessing D-Bus Interfaces]]
; [[Development/Tutorials/D-Bus/Accessing Interfaces|Accessing D-Bus Interfaces]]
Line 171: Line 176:


; [[Development/Tutorials/Kross/Introduction|Introduction to Kross]]
; [[Development/Tutorials/Kross/Introduction|Introduction to Kross]]
:''An introduction to the Kross Scripting Framework.''
:''An introduction to the Kross Scripting Framework.''


; [[Development/Tutorials/Kross/Hello_World|Hello World]]
; [[Development/Tutorials/Kross/Hello_World|Hello World]]
:''A first application with working kross code.''
:''A first application with working kross code.''


; [[Development/Tutorials/Kross/Call_Functions_in_Kross|Calling Functions in Kross]]
; [[Development/Tutorials/Kross/Call_Functions_in_Kross|Calling Functions in Kross]]
:''Simple demonstration of calling scripting functions''
:''Simple demonstration of calling scripting functions''


; [[Development/Tutorials/Kross/Connecting_Signals_and_slots_in_Kross|Connecting Signals and Slots in Kross]]
; [[Development/Tutorials/Kross/Connecting_Signals_and_slots_in_Kross|Connecting Signals and Slots in Kross]]
:''Simple demonstration of connecting object signals with script slots''
:''Simple demonstration of connecting object signals with script slots''


; [[Development/Tutorials/Kross/Scripts-as-Plugins|Scripts as Plugins with Kross]]
; [[Development/Tutorials/Kross/Scripts-as-Plugins|Scripts as Plugins with Kross]]
:''This tutorial provides a step-by-step introduction how to integrate scripts as plugins into a KDE application.''
:''This tutorial provides a step-by-step introduction how to integrate scripts as plugins into a KDE application.''


; [[Development/Tutorials/Kross/Scripts-as-KPlugins|Load Kross Scripts as KPlugins]]
; [[Development/Tutorials/Kross/Scripts-as-KPlugins|Load Kross Scripts as KPlugins]]
:''This tutorial provides a step-by-step introduction how to load scripts as KPlugins.''
:''This tutorial provides a step-by-step introduction how to load scripts as KPlugins.''


; [[Development/Tutorials/Kross/Script-Actions|Placing script actions in your application menus ]]
; [[Development/Tutorials/Kross/Script-Actions|Placing script actions in your application menus ]]
:''Simple demonstration on how to extend you application menus to execute script files.''
:''Simple demonstration on how to extend you application menus to execute script files.''


Line 194: Line 206:


; [[Development/Tutorials/KOffice Overview|KOffice Overview]]
; [[Development/Tutorials/KOffice Overview|KOffice Overview]]
:''This document shows an overview of the different KOffice plugin types and tells you what each of their purpose and strengths are.''  If you are new with KOffice plugins, this is the place to start.
 
:''This document shows an overview of the different KOffice plugin types and tells you what each of their purpose and strengths are.''  Si eres nuevo en el tema de plugins de KOffice, este es el lugar correcto para comenzar el aprendizaje.


; [[Development/Tutorials/Write a Flake Plugin|Creating KOffice Flake Plugins]]
; [[Development/Tutorials/Write a Flake Plugin|Creating KOffice Flake Plugins]]
:''This tutorial shows you how you can build a plugin for KOffice applications to allow you embed content in ODF documents using Flake.''
:''This tutorial shows you how you can build a plugin for KOffice applications to allow you embed content in ODF documents using Flake.''


; [[Development/Tutorials/KWord Scripting|KWord Scripting]]
; [[Development/Tutorials/KWord Scripting|KWord Scripting]]
:''This tutorial shows how to script KWord with Python, Ruby or JavaScript using Kross.''
:''This tutorial shows how to script KWord with Python, Ruby or JavaScript using Kross.''


; [[Development/Tutorials/KSpread Scripting|KSpread Scripting]]
; [[Development/Tutorials/KSpread Scripting|KSpread Scripting]]
:''This tutorial shows how to script KSpread with Python, Ruby or JavaScript using Kross.''
:''This tutorial shows how to script KSpread with Python, Ruby or JavaScript using Kross.''


; [[Development/Tutorials/Krita Scripting|Krita Scripting]]
; [[Development/Tutorials/Krita Scripting|Krita Scripting]]
:''This tutorial shows how to script Krita with Python, Ruby or JavaScript using Kross.''
:''This tutorial shows how to script Krita with Python, Ruby or JavaScript using Kross.''


=== SuperKaramba ===
=== SuperKaramba ===
; [[Development/Tutorials/SuperKaramba|SuperKaramba Tutorial]]
; [[Development/Tutorials/SuperKaramba|SuperKaramba Tutorial]]
:''This tutorial provides an overview of SuperKaramba, theme files and scripting with Python, Ruby and JavaScript.''
:''This tutorial provides an overview of SuperKaramba, theme files and scripting with Python, Ruby and JavaScript.''


== Plugins y KParts ==
== Plugins y KParts ==


; [[Development/Tutorials/Writing kontact plugins|Writing kontact plugins]]:''Kontact plugins are KParts. This tutorial describes how you can write one.''
; [[Development/Tutorials/Writing kontact plugins|Writing kontact plugins]]:


; [[Development/Tutorials/Using KParts|Using KParts]]:''Learn how to load a KPart into an application window.''
''Kontact plugins are KParts. This tutorial describes how you can write one.''
 
; [[Development/Tutorials/Using KParts|Using KParts]]:
 
''Learn how to load a KPart into an application window.''


== Búsqueda y Metadatos ==
== Búsqueda y Metadatos ==
Line 223: Line 246:


; [[Development/Tutorials/Writing file analyzers|Writing file analyzers]]
; [[Development/Tutorials/Writing file analyzers|Writing file analyzers]]
:''File analyzers extract data from files to display in the file dialogs and file managers. The data gathered this way is also used to search for files. KDE4 allows the use of multiple analyzers per file type. This tutorial describes how you can write new analyzers.''
:''File analyzers extract data from files to display in the file dialogs and file managers. The data gathered this way is also used to search for files. KDE4 allows the use of multiple analyzers per file type. This tutorial describes how you can write new analyzers.''


Line 228: Line 252:


; [[Development/Tutorials/Metadata/Nepomuk/Quickstart|Nepomuk Quickstart]]
; [[Development/Tutorials/Metadata/Nepomuk/Quickstart|Nepomuk Quickstart]]
:''How to use Nepomuk resources in a quick and painless way without much fuss.''
:''How to use Nepomuk resources in a quick and painless way without much fuss.''


; [[Development/Tutorials/Metadata/Nepomuk/RDFIntroduction|RDF and Ontologies in Nepomuk]]
; [[Development/Tutorials/Metadata/Nepomuk/RDFIntroduction|RDF and Ontologies in Nepomuk]]
:''An introduction to RDF and the usage of ontologies in Nepomuk.''
:''An introduction to RDF and the usage of ontologies in Nepomuk.''


; [[Development/Tutorials/Metadata/Nepomuk/Resources|Handling Resources with Nepomuk]]
; [[Development/Tutorials/Metadata/Nepomuk/Resources|Handling Resources with Nepomuk]]
:''Nepomuk is the KDE library which provides easy access to metadata in the Nepomuk system. Learn how to make your application create and read metadata using the Nepomuk system.''
:''Nepomuk is the KDE library which provides easy access to metadata in the Nepomuk system. Learn how to make your application create and read metadata using the Nepomuk system.''


; [[Development/Tutorials/Metadata/Nepomuk/ResourceGenerator|Using the Nepomuk Resource Generator]]
; [[Development/Tutorials/Metadata/Nepomuk/ResourceGenerator|Using the Nepomuk Resource Generator]]
:''Nepomuk includes a resource generator which creates convenience classes for handling metadata.''
:''Nepomuk includes a resource generator which creates convenience classes for handling metadata.''


; [[Development/Tutorials/Metadata/Nepomuk/AdvancedQueries|Advanced Queries]]
; [[Development/Tutorials/Metadata/Nepomuk/AdvancedQueries|Advanced Queries]]
:''The real power of Nepomuk can only be exposed when performing fancy queries on the data repository. This tutorial provides an introduction to semantic and full text queries in Nepomuk.''
:''The real power of Nepomuk can only be exposed when performing fancy queries on the data repository. This tutorial provides an introduction to semantic and full text queries in Nepomuk.''


; [[Development/Tutorials/Metadata/Nepomuk/NepomukServer|The Nepomuk Server and the Architecture of the Nepomuk subsystem]]
; [[Development/Tutorials/Metadata/Nepomuk/NepomukServer|The Nepomuk Server and the Architecture of the Nepomuk subsystem]]
:''The Nepomuk Server hosts the main Nepomuk data repository and can be accessed directly via a Soprano API.''
:''The Nepomuk Server hosts the main Nepomuk data repository and can be accessed directly via a Soprano API.''


; [[Development/Tutorials/Metadata/Nepomuk/NepomukServices|Nepomuk Services]]
; [[Development/Tutorials/Metadata/Nepomuk/NepomukServices|Nepomuk Services]]
:''The Nepomuk Server manages a set of Nepomuk services.''
:''The Nepomuk Server manages a set of Nepomuk services.''
:* [[Development/Tutorials/Metadata/Nepomuk/StorageService|Storage Service]] ''The probably most important service hosts the Nepomuk data repository using [http://soprano.sourceforge.net Soprano].''
:* [[Development/Tutorials/Metadata/Nepomuk/StorageService|Storage Service]] ''The probably most important service hosts the Nepomuk data repository using [http://soprano.sourceforge.net Soprano].''
:* [[Development/Tutorials/Metadata/Nepomuk/OntologyLoaderService|Ontology Loader]] ''Makes sure installed ontologies such as RDF, RDFS, NRL, or Xesam are loaded into the storage repository.''
:* [[Development/Tutorials/Metadata/Nepomuk/OntologyLoaderService|Ontology Loader]] ''Makes sure installed ontologies such as RDF, RDFS, NRL, or Xesam are loaded into the storage repository.''
:* [[Development/Tutorials/Metadata/Nepomuk/FileWatchService|File Watch Service]] ''Monitors the file system for changes and updates the file resource paths and URIs in Nepomuk.''
:* [[Development/Tutorials/Metadata/Nepomuk/FileWatchService|File Watch Service]] ''Monitors the file system for changes and updates the file resource paths and URIs in Nepomuk.''
:* [[Development/Tutorials/Metadata/Nepomuk/StrigiService|Strigi Service]] ''Controls Strigi, the file indexing tool which extracts metadata from files and stores it into the storage repository.''
 
:* [[Development/Tutorials/Metadata/Nepomuk/StrigiService|Strigi Service]]
 
''Controls Strigi, the file indexing tool which extracts metadata from files and stores it into the storage repository.''
:* [[Development/Tutorials/Metadata/Nepomuk/QueryService|Query Service]] ''Provides persistant query folders.''
:* [[Development/Tutorials/Metadata/Nepomuk/QueryService|Query Service]] ''Provides persistant query folders.''


Line 256: Line 293:


;[[Development/Tutorials/Solid_Tutorials|Introduction to Solid]]
;[[Development/Tutorials/Solid_Tutorials|Introduction to Solid]]
:''An introduction to using the Solid hardware discovery and interaction system in KDE applications.''
 
:''Una introducción sobre como usar el robusto sistema para descubrir hardware e interactuar con el sistema en aplicaciones KDE.''


;[[Development/Tutorials/Solid_Network_Tutorial|Accessing Network Information]]
;[[Development/Tutorials/Solid_Network_Tutorial|Accessing Network Information]]
:''How to use the Solid system to get information about the network''
 
:''Como utilizar el robusto sistema de KDE para obtener información sobre la red (network)''


== Aplicaciones con privilegios (PolicyKit) ==
== Aplicaciones con privilegios (PolicyKit) ==
; [[Development/Tutorials/PolicyKit/Introduction|Introduction to PolicyKit]]
; [[Development/Tutorials/PolicyKit/Introduction|Introduction to PolicyKit]]
:''A straight-forward introduction to what PolicyKit is, and how it can be useful for your next application requiring super-user privileges or user authentication''
:''A straight-forward introduction to what PolicyKit is, and how it can be useful for your next application requiring super-user privileges or user authentication''
; [[Development/Tutorials/PolicyKit/Helper_HowTo|Using the caller-helper model to perform actions as root]]
; [[Development/Tutorials/PolicyKit/Helper_HowTo|Using the caller-helper model to perform actions as root]]
:''This tutorial will teach you how to get your application to perform some actions as root in a completely safe and easy manner, if the user is authorized to, by using PolicyKit and the caller-helper technique''
:''This tutorial will teach you how to get your application to perform some actions as root in a completely safe and easy manner, if the user is authorized to, by using PolicyKit and the caller-helper technique''
; [[Development/Tutorials/PolicyKit/KCM_HowTo|Getting root privileges in KCM Modules]]
; [[Development/Tutorials/PolicyKit/KCM_HowTo|Getting root privileges in KCM Modules]]
:''This tutorial will teach you how to create KCModules able to save settings as root''
:''This tutorial will teach you how to create KCModules able to save settings as root''


Line 272: Line 317:


;[[Development/Tutorials/Phonon/Introduction|Phonon]]
;[[Development/Tutorials/Phonon/Introduction|Phonon]]
:''How to start with the multimedia API''
 
:''Como iniciarse en la API multimedia''


:''How to compile and use Phonon and its GStreamer backend on Linux using Qt 4.3.x''
:''How to compile and use Phonon and its GStreamer backend on Linux using Qt 4.3.x''
::''This article gives you a quick brief of how you can use checkout, compile Phonon and its GStreamer backend on GNU/Linux with just Qt 4.3.x. Towards the end, the article also describes how a developer can make use of Phonon to create simple audio and video players. You can read the article [http://www.vcreatelogic.com/oss/docs/CompilingPhononOnLinux.pdf here]. You can download the editable OpenDocumentText file from [http://www.prashanthudupa.com/phonon/CompilingPhononOnLinux.odt here].''
::''This article gives you a quick brief of how you can use checkout, compile Phonon and its GStreamer backend on GNU/Linux with just Qt 4.3.x. Towards the end, the article also describes how a developer can make use of Phonon to create simple audio and video players. You can read the article [http://www.vcreatelogic.com/oss/docs/CompilingPhononOnLinux.pdf here]. You can download the editable OpenDocumentText file from [http://www.prashanthudupa.com/phonon/CompilingPhononOnLinux.odt here].''


Line 284: Line 331:


;[[Development/Tutorials/Decibel/GettingStarted|Getting started with Decibel]]
;[[Development/Tutorials/Decibel/GettingStarted|Getting started with Decibel]]
:''This tutorial describes how to set up Decibel.''
 
:''Este tutorial describe como configurar Decibel.''


;[[Development/Tutorials/Decibel/Handling_TextChannels|Handling TextChannels]]
;[[Development/Tutorials/Decibel/Handling_TextChannels|Handling TextChannels]]
:''This tutorial introduces the basics of handling incoming TextChannels by guiding you through building a simple text chat application.''
:''This tutorial introduces the basics of handling incoming TextChannels by guiding you through building a simple text chat application.''


Line 292: Line 341:


;[[Development/Tutorials/Akonadi/Application|Using Akonadi in Applications]]
;[[Development/Tutorials/Akonadi/Application|Using Akonadi in Applications]]
:''Displaying and modifying data provided by Akonadi''
 
:''Mostrando y modificando datos aportados por Akonadi''


;[[Development/Tutorials/Akonadi/Resources|Developing Akonadi Resources]]
;[[Development/Tutorials/Akonadi/Resources|Developing Akonadi Resources]]
:''Akonadi Resources are agent programs which transport PIM data between Akonadi and a backend (files, servers, etc)''
:''Akonadi Resources are agent programs which transport PIM data between Akonadi and a backend (files, servers, etc)''


;[[Development/Tutorials/Akonadi/SerializerPlugin|Using custom data types with Akonadi]]
;[[Development/Tutorials/Akonadi/SerializerPlugin|Using custom data types with Akonadi]]
:''Akonadi can handle arbitrary data as item payloads through the use of a plugin based serialization framework''
:''Akonadi can handle arbitrary data as item payloads through the use of a plugin based serialization framework''


Line 303: Line 355:


;[[Development/Tutorials/Kate/KTextEditor Plugins|Getting started with KTextEditor plugins]]
;[[Development/Tutorials/Kate/KTextEditor Plugins|Getting started with KTextEditor plugins]]
:''Creating your first KTextEditor plugin''
 
:''Creando tu primer plugin de KTextEditor''


;[[Development/Tutorials/Kate/KTextEditor_Plugins_Advanced|Developing a plugin with configuration dialog]]
;[[Development/Tutorials/Kate/KTextEditor_Plugins_Advanced|Developing a plugin with configuration dialog]]
:''Adding a configuration dialog to the Time & Date example''
 
:''Añadiendo un diálogo de configuración al ejemplo de hora y fecha (Time & Date)''


;[[Development/Tutorials/Kate/KTextEditor_Example|A small Editor]]
;[[Development/Tutorials/Kate/KTextEditor_Example|A small Editor]]
:''Create a small application using KTextEditor''
 
:''Crear una pequeña aplicación utilizando KTextEditor''


== Impresión ==
== Impresión ==


;[[Development/Tutorials/Printing Hello World|Hello World]]
;[[Development/Tutorials/Printing Hello World|Hello World]]
:''Introduction to the KDE printing system''
 
:''Introducción al sistema de impresión de KDE''


;[[Development/Tutorials/Printing Print Dialog|Print Dialog]]
;[[Development/Tutorials/Printing Print Dialog|Print Dialog]]
:''Using the KDE print dialog''
 
:''Utilizando el diálogo de impresión de KDE''


== kioslaves ==
== kioslaves ==
* [[Development/Tutorials/KIO Slaves/Using KIO Slaves in your Program|Using kioslaves in your Program]]
* [[Development/Tutorials/KIO Slaves/Using KIO Slaves in your Program|Using kioslaves in your Program]]
* [[Development/Tutorials/KIO Slaves/Hello World|Creating a Hello-World kioslave]]
* [[Development/Tutorials/KIO Slaves/Hello World|Creating a Hello-World kioslave]]


== Obtener nuevas características (Hot New Stuff) ==
== Obtener nuevas características (Hot New Stuff) ==
; [[Development/Tutorials/K_Hot_New_Stuff2|New introduction to Get Hot New Stuff 2]]
; [[Development/Tutorials/K_Hot_New_Stuff2|New introduction to Get Hot New Stuff 2]]
:''A short tutorial about how to use KHotNewStuff2 in your application.''
:''A short tutorial about how to use KHotNewStuff2 in your application.''


* old links for KNS1 content:
* old links for KNS1 content:
; [[Development/Tutorials/Introduction to Get Hot New Stuff|Introduction to Get Hot New Stuff]]
; [[Development/Tutorials/Introduction to Get Hot New Stuff|Introduction to Get Hot New Stuff]]
:''An introduction to the developer-friendly network update system that allows KDE applications to fetch new application data at runtime in a user friendly manner.''
:''An introduction to the developer-friendly network update system that allows KDE applications to fetch new application data at runtime in a user friendly manner.''


;[[Development/Tutorials/KNewStuffSecure|KNewStuff Secure]] ([http://developer.kde.org/documentation/tutorials/knewstuffsecure/index.html Original Link])
;[[Development/Tutorials/KNewStuffSecure|KNewStuff Secure]]  
 
([http://developer.kde.org/documentation/tutorials/knewstuffsecure/index.html Original Link])
 
:''Tutorial showing how to share resources in a secured way (KDE 3.4 and later).''  By András Mantia <[email protected]>.
:''Tutorial showing how to share resources in a secured way (KDE 3.4 and later).''  By András Mantia <[email protected]>.


== Goya ==
== Goya ==
; [[Development/Tutorials/Introduction to Goya usage|Introduction to Goya usage]]
; [[Development/Tutorials/Introduction to Goya usage|Introduction to Goya usage]]
:''An introduction for the Goya subsystem usage, which allows you to easily add widgets to your itemviews and connect their signals to your code, as they were real widgets.''
:''An introduction for the Goya subsystem usage, which allows you to easily add widgets to your itemviews and connect their signals to your code, as they were real widgets.''


; [[Development/Tutorials/Introduction to Goya usage 2|Introduction to Goya usage (part 2)]]
; [[Development/Tutorials/Introduction to Goya usage 2|Introduction to Goya usage (part 2)]]
:''The second part of the tutorial, with a slightly more complex example than the first part.''
 
:''La segunda parte del tutorial, con un ejemplo ligeramente más complejo que el de la primera parte.''


== Otros lenguajes de programación ==
== Otros lenguajes de programación ==
Line 346: Line 415:


;[http://www.learningpython.com/2008/09/20/an-introduction-to-pyqt/ An Introduction to PyQt]
;[http://www.learningpython.com/2008/09/20/an-introduction-to-pyqt/ An Introduction to PyQt]
:''Starting off''
:''Starting off''


;[[Development/Languages/Python/PyKDE_WebKit_Tutorial|PyKDE WebKit Tutorial]]
;[[Development/Languages/Python/PyKDE_WebKit_Tutorial|PyKDE WebKit Tutorial]]
:''A simple web browser application in PyKDE''
 
:''Una simple aplicación de navegador WEB en PyKDE''


;[[Development/Tutorials/Python introduction to signals and slots|101 Introduction to signals and slots]]
;[[Development/Tutorials/Python introduction to signals and slots|101 Introduction to signals and slots]]
:''A simple introduction to Qt's signal and slot architecture.''
:''A simple introduction to Qt's signal and slot architecture.''


Line 357: Line 429:


;[http://developer.kde.org/language-bindings/ruby/kde3tutorial/index.html KDE Ruby Korundum tutorial]
;[http://developer.kde.org/language-bindings/ruby/kde3tutorial/index.html KDE Ruby Korundum tutorial]
:''A ruby version of Antonio Larrosa Jiménez's KDE tutorial by Richard Dale. See the [http://developer.kde.org/language-bindings/ruby/index.html Ruby Developers Corner] for Qt tutorials and other info.''
:''A ruby version of Antonio Larrosa Jiménez's KDE tutorial by Richard Dale. See the [http://developer.kde.org/language-bindings/ruby/index.html Ruby Developers Corner] for Qt tutorials and other info.''


;[[Development/Tutorials/Qt4_Ruby_Tutorial|Qt4 Ruby Tutorial]]
;[[Development/Tutorials/Qt4_Ruby_Tutorial|Qt4 Ruby Tutorial]]
:''Trolltech's fabulous introductory tutorial to Qt, translated to Ruby.''
:''Trolltech's fabulous introductory tutorial to Qt, translated to Ruby.''


;[[Development/Tutorials/Plasma/RubyApplet|Creating a Plasma Widget in Ruby]]
;[[Development/Tutorials/Plasma/RubyApplet|Creating a Plasma Widget in Ruby]]
:''Tutorial that shows how to create your first Plasma Applet using the Ruby language.''
 
:''Tutorial que muestra como crear tu primer Applet de Plasma utilizando el lenguaje Ruby.''


=== Shell ===
=== Shell ===


;[[Development/Tutorials/Shell_Scripting_with_KDE_Dialogs|Shell Scripting with KDE dialogs]] ([http://developer.kde.org/documentation/tutorials/kdialog/t1.html Original Link])  
;[[Development/Tutorials/Shell_Scripting_with_KDE_Dialogs|Shell Scripting with KDE dialogs]] ([http://developer.kde.org/documentation/tutorials/kdialog/t1.html Enlace original])  
 
:''Tutorial by [mailto:[email protected] Brad Hards] that describes how to use KDE dialogs in shell scripts with kdialog. It is presented as an example based tutorial.''
:''Tutorial by [mailto:[email protected] Brad Hards] that describes how to use KDE dialogs in shell scripts with kdialog. It is presented as an example based tutorial.''


Line 373: Line 449:


;[[Development/Tutorials/Graphics/Performance|QPainter Perfomance]]
;[[Development/Tutorials/Graphics/Performance|QPainter Perfomance]]
:''Hints on avoiding common mistakes leading to poor performance when using QPainter''
 
:''Sugerencias sobre como evitar errores habituales relacionados con bajos rendimientos en el uso de QPainter''


== Uso de las bibliotecas de KDE para juegos ==
== Uso de las bibliotecas de KDE para juegos ==
;[[Development/Tutorials/Games/KStandardGameAction| KStandardGameAction]]
;[[Development/Tutorials/Games/KStandardGameAction| KStandardGameAction]]
:''Using libkdegames to make your game fit the kdegames standard''
:''Using libkdegames to make your game fit the kdegames standard''
;[[Development/Tutorials/Games/Highscores| Highscores]]
;[[Development/Tutorials/Games/Highscores| Highscores]]
:''Implementing a simple highscore table into your game''
:''Implementing a simple highscore table into your game''
;[[Development/Tutorials/Games/Theme Selector| Theme Selector]]
;[[Development/Tutorials/Games/Theme Selector| Theme Selector]]
:''Using the libkdegames theme selection dialog''
:''Using the libkdegames theme selection dialog''
;[[Development/Tutorials/Games/Palapeli Patterns| Palapeli Patterns]]
;[[Development/Tutorials/Games/Palapeli Patterns| Palapeli Patterns]]
:''Creating a pattern for Palapeli''
:''Creating a pattern for Palapeli''
=== KGLEngine ===
=== KGLEngine ===
;[[Development/Tutorials/Games/kglengine/kglengine-simpleBox| installation and your first KGLItem]]
;[[Development/Tutorials/Games/kglengine/kglengine-simpleBox| installation and your first KGLItem]]
:''start your first kglengine application''
 
:''Comenzar tu primera aplicación kglengine''
 
;[[Development/Tutorials/Games/kglengine/kglengine-motion| item motion]]
;[[Development/Tutorials/Games/kglengine/kglengine-motion| item motion]]
:''how to move kglitem''
 
:''Como mover kglitem''
 
;[[Development/Tutorials/Games/kglengine/kglengine-collision| collision detection]]
;[[Development/Tutorials/Games/kglengine/kglengine-collision| collision detection]]
:''how to detect collision and interact ''
:''how to detect collision and interact ''
;[[Development/Tutorials/Games/kglengine/kglengine-texture| texture and color]]
;[[Development/Tutorials/Games/kglengine/kglengine-texture| texture and color]]
:''apply texture and color for your items ''
 
:''aplicar texturas y colores a tus elementos''
 
;[[Development/Tutorials/Games/kglengine/kglengine-effects| particles and shadow effects]]
;[[Development/Tutorials/Games/kglengine/kglengine-effects| particles and shadow effects]]
:''add some nice effects ''
 
;[[Development/Tutorials/Games/KGLEngine2d| kglpong]]
:''añade algunos efectos agradables '';
 
[[Development/Tutorials/Games/KGLEngine2d| kglpong]]
 
:''Now use our knowledge to make a pong''
:''Now use our knowledge to make a pong''


Line 421: Line 519:


=== Cache Pixmap (KPixmapCache) ===
=== Cache Pixmap (KPixmapCache) ===
;[[Development/Tutorials/KPixmapCache|Using the KDE pixmap cache]]
;[[Development/Tutorials/KPixmapCache|Using the KDE pixmap cache]]
:''This tutorial shows how to use KPixmapCache to cache e.g. pixmaps generated from SVGs or some data.''
:''This tutorial shows how to use KPixmapCache to cache e.g. pixmaps generated from SVGs or some data.''


=== Uso de  MarbleWidget (Marble) ===
=== Uso de  MarbleWidget (Marble) ===
;[[Development/Tutorials/MarbleWidget|Using MarbleWidget]]
;[[Development/Tutorials/MarbleWidget|Using MarbleWidget]]
:''This short tutorial describes how to use the MarbleWidget in your project''
:''This short tutorial describes how to use the MarbleWidget in your project''


Line 433: Line 535:


=== Implementación de un sensor para KSysGuard ===
=== Implementación de un sensor para KSysGuard ===
;[[Development/Tutorials/Sensors]]
;[[Development/Tutorials/Sensors]]
:''This tutorial shows how to write and KSysGuard sensor and connect it to the systray.''
:''This tutorial shows how to write and KSysGuard sensor and connect it to the systray.''
Runners
Runners
== Material para KDE2 y KDE3 ==
== Material para KDE2 y KDE3 ==


;[[Development/Tutorials/KDE3|KDE3 Tutorials]]
;[[Development/Tutorials/KDE3|KDE3 Tutorials]]

Revision as of 11:06, 10 September 2009


Development/Tutorials


Los tutoriales son la forma más rápida de encontrar lo que KDE puede hacer por usted y como hacerlo. Aquí tienes una lista de los tutoriales disponibles actualmente para KDE4. El material para KDE3 y KDE2 está disponible al final de la página.

Introducción a la programación en KDE4

¿Estás interesado en escribir aplicación en KDE4? Esta serie de tutoriales están dirigidos a personas totalmente novatas en la programación en KDE4.

Hola Mundo
Una introducción preliminar a los aspectos básicos de la programación en KDE4.
Crear la ventana principal
Este tutorial te muestra la magia de la cosa mas importante en una aplicación: la ventana principal
Usar KActions
Como añadir acciones a los menús y a las barras de herramientas (toolbars).
Guardar y Abrir
Introducción a la biblioteca KIO mientras añades soporte para guardar y abrir en tu aplicación.
Argumentos en la línea de órdenes
Añade la capacidad de especificar a nuestro editor que archivo abrir desde la línea de ordenes.
Administración de sesiones
Haz que tu aplicación sea consciente de las sesiones X

Básicos

Portar tu aplicación
Ayuda para portar aplicaciones de Qt3/KDE3 a Qt4/KDE4.
Introducción a CMake
Como usar el sistema de construcción CMake usado por KDE4.
Errores comunes de programación
Varios errores comunes que se presentan en el desarrollo de aplicaciones Qt y KDE y como evitarlos.
Usar Qt Designer para diseñar interfaces de usuario
Como crear archivos UI con el diseñador, y como integrarlos después en un programa KDE.
Crear bibliotecas para compartir código
Como añadir la biblioteca al sistema de construcción "buildsystem" y como preparar el código fuente.

Comprobación y depurado

Depurar tu aplicación
Consejos, herramientas y técnicas para depurar tu aplicación KDE.
Escribir "unittests" para Qt4 y KDE4 con QTestLib

(enlace original)

Tutorial de Brad Hards que describe como escribir unittests mediante la framework QTestLib. El tutorial se realiza con un ejemplo, y aun está en desarrollo.
Maneras semiautomáticas de detectar errores en el código
Técnicas que puedes usar para detectar errores en el código KDE.

Gestión de los datos de configuración con KConfig

Introducción a KConfig
Una sinopsis de las clases de KConfig y como usarlas en el código de tu aplicación.
Uso de KConfig XT
Tutorial sobre como usar eficientemente el framework KConfig XT
Actualizando archivos con KConfig
Tutorial sobre como escribir un script de actualización para conservar los cambios de tu archivo de configuración de tu aplicación y sincronizarlo con el archivo de configuración del usuario

Servicios: Aplicaciones y Plugins

Introducción al framework de Servicios
Una visión general del framework de Servicios en KDE y qué proporciona a los desarrolladores de aplicaciones. Trata sobre la cache de configuración del sistema (SyCoCa), los archivos de datos fuente y el uso que puede darse a la información indexada.
Encontrar Servicios usando consultas con operadores (Trader Queries)
Como encontrar servicios, como plugins o tipos MIME (mimetypes), que están indexados en SyCoCa, usando la sintaxis de preguntas con operadores (Trader Query Syntax).
Crear y cargar Plugins mediante KService
Aprende como definir plugins propios, encontrar plugins instalados (incluidos plugins de terceras partes) y cargarlos de forma fácil y portable usando KService.

Localización

Véase también el Portal de Localización.

Introducción a Unicode
Una introducción a Unicode, así como la forma de manejar datos Unicode en las aplicaciones de KDE.
Escribir aplicaciones teniendo en cuenta la Localización
Este tutorial trata sobre que es la localización, por que es importante y como asegurarse de que tu aplicación está lista para ser localizada. Una lectura obligatoria para todos los desarrolladores de aplicaciones.
Evitar errores comunes en la localización
Existen algunos errores comunes que impiden que las aplicaciones sean localizadas correctamente. Descubre cuales son y como evitarlos facilmente en este tutorial.
Construir el módulo de Localización de KDE
Construir e instalar el soporte de idiomas del módulo de localización de KDE (l10n) es una buena idea para aquellos que están trabajando en aplicaciones del repositorio principal de KDE. Si lo haces, te permitirá probar tu aplicación en otro idioma y tratar los posibles errores. Aprende como llevarlo a cabo en este tutorial.
Incorporar l18n a la construcción del sistema
Una vez que tu aplicación está lista para ser localizada, el siguiente paso es asegurarse que los archivos de traducción se construyen automáticamente y que estos estén actualizados. Este tutorial cubre los añadidos necesarios en CMakeLists.txt, así como el proceso de distribuir el catálogo de mensajes resultante junto a tu aplicación.
Retos comunes en i18n y soluciones
Este tutorial trata sobre cambios que se pueden introducir eventualmente en tareas tales como traducir manuales (handbooks) y otros datos que existen fuera del código fuente, fusionando , manejando ficheros .po obsoletos, tratando con freezes, codificando en idiomas distintos del Inglés y creando releases independientes de o moviendo aplicaciones entre módulos de KDE.
Marcado semántico de los mensajes
Para garantizar una presentación consistente y una representación más significativa de los mensajes en las aplicaciones, el marcado semántico puede aplicarse a los mensajes marcados para la traducción utilizando el sistema KUIT. Este tutorial describe como trabaja este sistema.
Comprobación automática de código i18n
El "Krazy code checker" comprueba el código e informa de los errores comunes de i18n.

Documentación

API Documentation
Este tutorial explica como documentar las APIs correctamente.
Man Pages
Escribiendo y Generando Páginas del Manual de Referencia.

Automatización de aplicaciones y Scripting

D-Bus

Introduction to D-Bus
Una introducción dirigida a comprender los conceptos relacionados con D-Bus desde una perspectiva del diseñador de aplicaciones, este tutorial trata sobre que es D-Bus y como puede ser utilizado por las aplicaciones.
Accessing D-Bus Interfaces
Una guia paso a paso sobre como llamar a métodos D-Bus y conectar con señales de D-Bus utilizando para ello QtDBus.
Intermediate D-Bus
Tips to make use of QtDBus when faced with problematic real-world interfaces.
Creating D-Bus Interfaces
Learn how to expose functionality in your application by creating and using custom D-Bus interfaces. Covers generating the XML descriptions, instantiating interfaces at run time and setting up the build system with CMake.
D-Bus Autostart Services
Convierte tu aplicación en un servicio autoarrancable D-Bus con este tutorial. Esta característica de D-Bus, también conocida como "activación de servicio D-Bus", will ensure that even when your application isn't running that D-Bus calls made to it will work by relying on the D-Bus daemon itself para iniciar tu aplicación cuando sea necesario.
Porting from DCOP to D-Bus
Porta tus aplicaciones desde DCOP a D-Bus con esta sencilla guía.

Konqueror

Creating Konqueror Service Menus
This tutorial shows you how to create mimetype-specific actions in Konqueror's context menu (aka "servicemenus").

Kross

Introduction to Kross
An introduction to the Kross Scripting Framework.
Hello World
A first application with working kross code.
Calling Functions in Kross
Simple demonstration of calling scripting functions
Connecting Signals and Slots in Kross
Simple demonstration of connecting object signals with script slots
Scripts as Plugins with Kross
This tutorial provides a step-by-step introduction how to integrate scripts as plugins into a KDE application.
Load Kross Scripts as KPlugins
This tutorial provides a step-by-step introduction how to load scripts as KPlugins.
Placing script actions in your application menus
Simple demonstration on how to extend you application menus to execute script files.

Plugins para KOffice

KOffice Overview
This document shows an overview of the different KOffice plugin types and tells you what each of their purpose and strengths are. Si eres nuevo en el tema de plugins de KOffice, este es el lugar correcto para comenzar el aprendizaje.
Creating KOffice Flake Plugins
This tutorial shows you how you can build a plugin for KOffice applications to allow you embed content in ODF documents using Flake.
KWord Scripting
This tutorial shows how to script KWord with Python, Ruby or JavaScript using Kross.
KSpread Scripting
This tutorial shows how to script KSpread with Python, Ruby or JavaScript using Kross.
Krita Scripting
This tutorial shows how to script Krita with Python, Ruby or JavaScript using Kross.

SuperKaramba

SuperKaramba Tutorial
This tutorial provides an overview of SuperKaramba, theme files and scripting with Python, Ruby and JavaScript.

Plugins y KParts

Writing kontact plugins

Kontact plugins are KParts. This tutorial describes how you can write one.

Using KParts

Learn how to load a KPart into an application window.

Búsqueda y Metadatos

Strigi

Writing file analyzers
File analyzers extract data from files to display in the file dialogs and file managers. The data gathered this way is also used to search for files. KDE4 allows the use of multiple analyzers per file type. This tutorial describes how you can write new analyzers.

Nepomuk

Nepomuk Quickstart
How to use Nepomuk resources in a quick and painless way without much fuss.
RDF and Ontologies in Nepomuk
An introduction to RDF and the usage of ontologies in Nepomuk.
Handling Resources with Nepomuk
Nepomuk is the KDE library which provides easy access to metadata in the Nepomuk system. Learn how to make your application create and read metadata using the Nepomuk system.
Using the Nepomuk Resource Generator
Nepomuk includes a resource generator which creates convenience classes for handling metadata.
Advanced Queries
The real power of Nepomuk can only be exposed when performing fancy queries on the data repository. This tutorial provides an introduction to semantic and full text queries in Nepomuk.
The Nepomuk Server and the Architecture of the Nepomuk subsystem
The Nepomuk Server hosts the main Nepomuk data repository and can be accessed directly via a Soprano API.
Nepomuk Services
The Nepomuk Server manages a set of Nepomuk services.
  • Ontology Loader Makes sure installed ontologies such as RDF, RDFS, NRL, or Xesam are loaded into the storage repository.
  • File Watch Service Monitors the file system for changes and updates the file resource paths and URIs in Nepomuk.

Controls Strigi, the file indexing tool which extracts metadata from files and stores it into the storage repository.

Conciencia del Hardware (Solid)

Introduction to Solid
Una introducción sobre como usar el robusto sistema para descubrir hardware e interactuar con el sistema en aplicaciones KDE.
Accessing Network Information
Como utilizar el robusto sistema de KDE para obtener información sobre la red (network)

Aplicaciones con privilegios (PolicyKit)

Introduction to PolicyKit
A straight-forward introduction to what PolicyKit is, and how it can be useful for your next application requiring super-user privileges or user authentication
Using the caller-helper model to perform actions as root
This tutorial will teach you how to get your application to perform some actions as root in a completely safe and easy manner, if the user is authorized to, by using PolicyKit and the caller-helper technique
Getting root privileges in KCM Modules
This tutorial will teach you how to create KCModules able to save settings as root

Multimedia (Phonon)

Phonon
Como iniciarse en la API multimedia
How to compile and use Phonon and its GStreamer backend on Linux using Qt 4.3.x
This article gives you a quick brief of how you can use checkout, compile Phonon and its GStreamer backend on GNU/Linux with just Qt 4.3.x. Towards the end, the article also describes how a developer can make use of Phonon to create simple audio and video players. You can read the article here. You can download the editable OpenDocumentText file from here.

Plasma

See Development/Tutorials/Plasma_(es) for Plasma tutorials.

Comunicación (Decibel)

Getting started with Decibel
Este tutorial describe como configurar Decibel.
Handling TextChannels
This tutorial introduces the basics of handling incoming TextChannels by guiding you through building a simple text chat application.

Administración de información personal (Akonadi)

Using Akonadi in Applications
Mostrando y modificando datos aportados por Akonadi
Developing Akonadi Resources
Akonadi Resources are agent programs which transport PIM data between Akonadi and a backend (files, servers, etc)
Using custom data types with Akonadi
Akonadi can handle arbitrary data as item payloads through the use of a plugin based serialization framework

Kate / Kwrite

Getting started with KTextEditor plugins
Creando tu primer plugin de KTextEditor
Developing a plugin with configuration dialog
Añadiendo un diálogo de configuración al ejemplo de hora y fecha (Time & Date)
A small Editor
Crear una pequeña aplicación utilizando KTextEditor

Impresión

Hello World
Introducción al sistema de impresión de KDE
Print Dialog
Utilizando el diálogo de impresión de KDE

kioslaves

Obtener nuevas características (Hot New Stuff)

New introduction to Get Hot New Stuff 2
A short tutorial about how to use KHotNewStuff2 in your application.
  • old links for KNS1 content:
Introduction to Get Hot New Stuff
An introduction to the developer-friendly network update system that allows KDE applications to fetch new application data at runtime in a user friendly manner.
KNewStuff Secure

(Original Link)

Tutorial showing how to share resources in a secured way (KDE 3.4 and later). By András Mantia <[email protected]>.

Goya

Introduction to Goya usage
An introduction for the Goya subsystem usage, which allows you to easily add widgets to your itemviews and connect their signals to your code, as they were real widgets.
Introduction to Goya usage (part 2)
La segunda parte del tutorial, con un ejemplo ligeramente más complejo que el de la primera parte.

Otros lenguajes de programación

Python

An Introduction to PyQt
Starting off
PyKDE WebKit Tutorial
Una simple aplicación de navegador WEB en PyKDE
101 Introduction to signals and slots
A simple introduction to Qt's signal and slot architecture.

Ruby

KDE Ruby Korundum tutorial
A ruby version of Antonio Larrosa Jiménez's KDE tutorial by Richard Dale. See the Ruby Developers Corner for Qt tutorials and other info.
Qt4 Ruby Tutorial
Trolltech's fabulous introductory tutorial to Qt, translated to Ruby.
Creating a Plasma Widget in Ruby
Tutorial que muestra como crear tu primer Applet de Plasma utilizando el lenguaje Ruby.

Shell

Shell Scripting with KDE dialogs (Enlace original)
Tutorial by Brad Hards that describes how to use KDE dialogs in shell scripts with kdialog. It is presented as an example based tutorial.

Programación gráfica

QPainter Perfomance
Sugerencias sobre como evitar errores habituales relacionados con bajos rendimientos en el uso de QPainter

Uso de las bibliotecas de KDE para juegos

KStandardGameAction
Using libkdegames to make your game fit the kdegames standard
Highscores
Implementing a simple highscore table into your game
Theme Selector
Using the libkdegames theme selection dialog
Palapeli Patterns
Creating a pattern for Palapeli

KGLEngine

installation and your first KGLItem
Comenzar tu primera aplicación kglengine
item motion
Como mover kglitem
collision detection
how to detect collision and interact
texture and color
aplicar texturas y colores a tus elementos
particles and shadow effects
añade algunos efectos agradables ;

kglpong

Now use our knowledge to make a pong


KALEngine

Play hello word sound
Using KALEngine for games sound development using openAL
Play music
Using KALEngine to play music in a stream

Uso de las bibliotecas PIM de KDE

iCalendar functionality
Using kcal to manage iCalendar files

Otros tutoriales

Dibujado de 2D (KPlotWidget)

Using the KDE data-plotting widget
This tutorial introduces KPlotWidget, which is used for 2-D data plotting. It includes information on simple usage of the widget (including adding and modifying data sets, and customizing the plot axes and labels), and advanced customization (including extending the widget through sub-classing).

Comprobación de ortografía y gramática (Sonnet)

Adding spell-checking or grammar-checking to KDE applications
This tutorial introduces Sonnet and how one may use it to add language correction to your KDE application. Sonnet's auxiliary features shall be described in a separate tutorial.

Cache Pixmap (KPixmapCache)

Using the KDE pixmap cache
This tutorial shows how to use KPixmapCache to cache e.g. pixmaps generated from SVGs or some data.

Uso de MarbleWidget (Marble)

Using MarbleWidget
This short tutorial describes how to use the MarbleWidget in your project

Uso de SCM local para el desarrollo en KDE

Using Git to develop for KDE
This tutorial shows how to use Git to develop for KDE

Implementación de un sensor para KSysGuard

Development/Tutorials/Sensors
This tutorial shows how to write and KSysGuard sensor and connect it to the systray.

Runners

Material para KDE2 y KDE3

KDE3 Tutorials
These tutorials cover topics related to KDE3.
KDE2 Tutorials
These tutorials cover topics related to KDE2.