Скриптове на настолни компютри за Linux, част 1
Използване на Python и Screenlets за създаване на полезни настолни приложения на Linux

Серия съдържание:
Това съдържание е част 1 от # от поредицата: Скриптове за настолни компютри на Linux.
Това съдържание е част 1 от 2 от поредицата: Скриптове за настолни компютри на Linux.
Следете за още статии от тази поредица.
Обикновено GUI рамка от някакъв вид се използва като основа за разработване на приложения за работния плот на Linux. Работният плот на GNOME обикновено използва библиотеката GTK +, а KDE (K Desktop Environment) използва Qt библиотеката. И двете платформи съдържат цялата функционалност, необходима за разработване на GUI приложения, включително библиотеки и инструменти за проектиране на прозорци на приложения, които потребителите да използват. Тази статия ви показва как да използвате набор от скрийнлети (вижте Ресурси за връзка) за разработване на приложения, които ефективно взаимодействат с работния плот на Linux.
Списъкът с приложения за подобряване на ефективността при използване на работния плот включва програми като GNOME Do и Tomboy. Обикновено потребителите могат да използват тези приложения директно от работния плот, като използват специална клавишна комбинация или плъзгане и пускане от други приложения като Mozilla Firefox. Tomboy работи като инструмент за водене на бележки на работния плот и има способността да извлича текст от други прозорци.
Първи стъпки със скрилети
За да започнете да разработвате скрилети, трябва да инсталирате няколко компонента. Първо ще трябва да инсталирате пакета на скрийнлетите, като използвате Центъра за управление на софтуера на Ubuntu или директно от командния ред. За да изтеглите необходимия пакет в полето Търсене въведете скрилети в прозореца на контролния център на софтуера. Резултатите от търсенето ще имат две опции: инсталирайте основния пакет или инсталирайте само документацията на скрийнлета.
Python и Ubuntu
Използваме Python за разработване на скрийнлети. Стандартната инсталация на Ubuntu 10.04 вече има Python 2.6, тъй като голям брой помощни програми зависят от нея. Въпреки това, в зависимост от изискванията на приложението, може да са необходими допълнителни библиотеки. Всички примери, предоставени в тази статия, са разработени и тествани на Ubuntu 10.04.
След като изпълните тези стъпки, трябва да изтеглите изходния код за тестовите скрилети от уебсайта screenlets.org. Тестовият екран е в папката src/share/screenlets/Test и използва библиотеките Cairo и GTK, които също ще трябва да бъдат инсталирани. Структурата на стандартен скрийнлет може да бъде проучена на примера на тестова програма, чийто изходен код е във файла TestScreenlet.py.
Python е обектно-ориентиран език за програмиране на високо ниво, така че използва ключовата дума class за дефиниране на обекти. В показания пример класът се нарича TestScreenlet и той дефинира няколко метода. На ред 42 във файла TestScreenlet.py съдържа следния код:
Създаване на обикновен скрийнлет
Основните компоненти на скрийнлета са файлът с икони, изходният файл и директорията теми. Тази директория съдържа допълнителни директории с различни стилове на показване (или теми). Можете да изтеглите стандартен шаблон за скрийнлет от уебсайта screenlets.org с всички необходими файлове и директории.
Първият скрийнлет, базиран на този шаблон, ще бъде стандартно приложение "Hello World". Изходният код за екрана "Hello World" е показан в Листинг 1.
Листинг 1. Python код за екрана Hello World
Всяко приложение трябва да импортира библиотеката на скрийнлетите и да създаде нова сесия. Има и други предпоставки, включително стъпки за инициализация и основна функция за изтегляне за показване на приспособлението на екрана. В примера TestScreenlet.py има метод __init__, който инициализира обекта. Този метод съдържа един израз, който извиква метода __init__ screenlet'a, който задава началните стойности за височината и ширината на прозореца, създаден за това приложение.
Втората функция, необходима за работа на приложението, е методът on_draw. Тази процедура задава цвета на фона на правоъгълника на бял и го показва в предварително определен размер. След това този метод задава цвета на шрифта на черен и инициализира текста на "Hello World", който след това се изобразява в прозореца на приложението. Фигура 1 показва резултата от стартирането на този скрийнлет. Тази стандартна структура ще бъде използвана по-късно в тази статия като отправна точка за създаване на по-сложни приложения.