Development/Tutorials/Plasma4: Difference between revisions
(nevermind. I'm blind. although my excuse is that somebody else duplicated the first qml entry (and I don't think it was me ;p) |
|||
Line 69: | Line 69: | ||
=== QML (QtQuick) Plasmoids === | === QML (QtQuick) Plasmoids === | ||
It's possible to write Javascript Plasmoids that use the QML declarative language to describe their user interface, while having the logic in JavaScript. | It's possible to write Javascript Plasmoids that use the QML declarative language to describe their user interface, while having the logic in JavaScript. This is now the recommended method of creating plasmoids, if possible. It allows easily the declaring of an interface. It is also what Plasma is leaning the most towards, especially in the Mobile, MediaCenter and KDM shells. | ||
;[[Development/Tutorials/Plasma/QML/GettingStarted|Getting Started]] | ;[[Development/Tutorials/Plasma/QML/GettingStarted|Getting Started]] |
Revision as of 02:52, 23 July 2011
Development/Tutorials/Plasma
Languages: عربي | Asturianu | Català | Česky | Kaszëbsczi | Dansk | Deutsch | English | Esperanto | Español | Eesti | فارسی | Suomi | Français | Galego | Italiano | 日本語 | 한국어 | Norwegian | Polski | Português Brasileiro | Română | Русский | Svenska | Slovenčina | Slovenščina | српски | Türkçe | Tiếng Việt | Українська | 简体中文 | 繁體中文
Plasma Programming with C++
- Getting Started With Plasmoids
- Creating your first plasmoid in C++ with SVG background, icon and text
- Getting Started With Plasmoids..Some more
- A few more starter's tips.
- Writing a DataEngine
- DataEngines provide a standardized interface to various (read only) data sources for visualizations to use. Learn what a DataEngine is and how to write one of your own.
- Writing a Service
- Services provide a standardized interface for visualizations to perform "write operations". This can be for example, uploading pasted test to a pastebin service..
- Writing a PackageStructure Plugin
- PackageStructure plugins allow custom Packages to be defined, installed, removed and listed as well as provide access their contents at runtime. Packages may contain any kind of data addons, including scripts.
- How to use extenders in your Plasmoid
- A simple example that shows how to use extenders in a Plasmoid.
- Creating Runners
- Runners are plugins that provide action-based search functionality in the Plasma workspace "run command" dialog. These plugins can be used by any application that links again libplasma.
- Wallpaper Tutorial 1
- This tutorial shows you how to make a simple Hello World plasma wallpaper plugin.
- Wallpaper Tutorial 2
- This tutorial covers how to add configuration options to the wallpaper.
- Creating a Plasma Shell
- This tutorial covers the essentials of writing a new Plasma shell from scratch. A must-read for anyone creating a new or modifying an existing Plasma Shell. Existing Plasma shells include Plasma Desktop, Plasma Netbook, Plasma Mobile, Plasma Media Center, Plasma Screensaver, Plasma KPart and Plasma KDM, and all follow the patterns documented here.
- Creating Plasmoids
- May 2010 article from Linux Magazine
- Create Plasmoids using KDevelop
- Article explaining the structure of Plasma and how to create a Plasmoid
- Adding configuration to your plasmoid
- Article explaining how to add a configuration dialog to your plasmoid.
- Integrate Plasma in Applications
- This tutorial shows you how to make an application dashboard based on Plasma technologies.
Plasma Programming with JavaScript
Plasma has built-in JavaScript (also known as ECMAScript, and often referred to as QtScript in the context of Qt) scripting support without requiring any external dependencies.
Plasmoids
- Getting Started
- Creating and running your first plasmoid in JavaScript
- Getting Data
- How to retreive data from a data engine
- Now Playing
- Slightly more advanced data engine usage: displaying what's currently playing
- System Monitor
- How to access systemmonitor data engine
- Cheat Sheet
- A cheat sheet, rather than a tutorial, of things to remember and watch out for when developing JavaScript plasmoids
- API Reference
- The Simplified JavaScript Plasmoid API. Useful for referencing what is available in the runtime and as a study aid for the tutorials above.
QML (QtQuick) Plasmoids
It's possible to write Javascript Plasmoids that use the QML declarative language to describe their user interface, while having the logic in JavaScript. This is now the recommended method of creating plasmoids, if possible. It allows easily the declaring of an interface. It is also what Plasma is leaning the most towards, especially in the Mobile, MediaCenter and KDM shells.
- Getting Started
- Creating and running your first plasmoid in QML
- API Reference
- The QML Plasmoid API. Useful for referencing what is available in the runtime, what are the differences with the pure JavaScript scriptengine and as a study aid for the tutorials above.
Other Applications Of Javascript
- Scripting Plasma Shells
- The KDE Plasma Desktop and Netbook provide means to manage the desktop shell (desktop, panels, widget) via scripts written in JavaScript. This article describes how to take advantage of this feature set as well as documents the full API. This is primarily a system administration tool, but may also be of interest to power users.
- Javascript Animations
- How to write Animations using Javascript for use in Plasma applications
- Creating Comic Plugins
- This guide shows you how to create a comic plugin for the comic plasmoid.
Plasma Programming with Python
- Getting Started
- Creating and running your first plasmoid in Python
- Using widgets
- Introduction to using Plasma widgets
- Using DataEngines
- How to use DataEngines from a plasmoid
- Writing DataEngines
- How to write your own Plasma DataEngine
- Writing a Plasmoid in Python
- Writing a simple battery graph in python
- Writing a KRunner plugin in Python
- Writing a simple krunner plugin in python
Plasma Programming with Ruby
- Getting Started
- Creating and running your first plasmoid in Ruby
- Using widgets
- Introduction to using Plasma widgets
- Writing a simple paste applet
- A tutorial explaining how to set up a plasmoid, create a simple paste applet using widgets and add Plasma features seen elsewhere. Complete with tips for those who have never programmed before.
- Writing DataEngines
- How to write your own Plasma DataEngine using Ruby
- Use SVG artwork in the simplest way possible
- Follow a fellow student as he asks around about SVG usage and explains why the code examples work. This is a wiki so feel free to add your own insights until this tutorial can be considered complete.
Plasma Programming with Web Technologies (HTML/JS/CSS etc)
- Getting Started
- Creating and running your first plasmoid in HTML
Plasma integration
- Creating a Device Notifier action
- When your application is interested in removable hardware
Theme development
- Creating a Plasma Theme Quickstart
- A quick guide to creating your first Plasma theme
- The Plasma Theme Structure In Detail
- A comprehensive guide to the contents of a Plasma SVG theme, including configuration options, wallpapers, on-disk layout, names of all standard SVG files and every element in them.
Activity Template development
- Creating a Plasma Activity Template Quickstart
- A quick guide to creating your first Plasma Activity Template
Resources
- Projects: Plasma
- Plasma api documentation
- Plasma Eclipse Integration
- The plasma-devel mailing list and #plasma on IRC (irc.freenode.org).
Presentation Slides
http://chani.wordpress.com/2009/04/25/quick-update-for-my-presentation/ Victory Calendar -- also link to websvn plasma playground in the odp file.