07 Temmuz 2009 ~ 0 Comments

Son Dakika Haberleri Gösteren Python Plasmoid Yapımı

Son Dakika Haberleri Gösteren Python Plasmoid Yapımı

Mayıs 11th, 2009 | Devel, Linux, Python

Birkaç yazı okuduktan sonra yapmaya çalıştığım, son dakika haberlerini gösteren bu Plasmoid’ i paylaşmak istedim.

Öncelikle, Eger aktif değilse Plasma ‘nın Python destegini aktif etmemiz gerekecek. Debian, Ubuntu kullananlar için;

apt-get install python-plasma

yazmamız yeterli. Ayrıtısı burada.

Bir Plasmoid arşivinin yapısı ise şu şekilde;

$ tree haberler/
haberler/
|-- contents
|   `-- code
|       `-- main.py
`-- metadata.desktop

metadata.desktop  dosyası yapılan Plasmoid hakkındaki bilgileri tutar. Haber Plasmoid ‘imizin metadata sı ise şöyle;

[Desktop Entry]
Encoding=UTF-8
Name=Haberler
Type=Service
Comment=Son dakika haberlerini gormenize yariyan bir plasmoid.
ServiceTypes=Plasma/Applet
Icon=office-calendar
X-Plasma-API=python
X-Plasma-MainScript=code/main.py
X-KDE-PluginInfo-Author=Kaan Ozdincer
X-KDE-PluginInfo-Email=kaanozdincer@hotmail.com
X-KDE-PluginInfo-Name=haberler
X-KDE-PluginInfo-Version=1.0
X-KDE-PluginInfo-Website=http://kaan.ozdincer.com/
X-KDE-PluginInfo-Category=News
X-KDE-PluginInfo-Depends=
X-KDE-PluginInfo-License=GPL
X-KDE-PluginInfo-EnabledByDefault=true

main.py dosyasınada gerekli kodlar yazılıyor.

from PyQt4.QtCore import *
from PyQt4.QtGui import *
from PyKDE4.plasma import Plasma
from PyKDE4 import plasmascript
from PyKDE4.kdecore import KUrl

class Haberler(plasmascript.Applet):
def __init__(self,parent,args=None):
plasmascript.Applet.__init__(self,parent)

def init(self):
self.setHasConfigurationInterface(False)

self.theme = Plasma.Svg(self)
self.theme.setImagePath(”widgets/background”)
self.setBackgroundHints(Plasma.Applet.DefaultBackground)
self.setAspectRatioMode(Plasma.IgnoreAspectRatio)

self.layout = QGraphicsLinearLayout(Qt.Horizontal, self.applet)
webView = Plasma.WebView(self.applet)
webView.setUrl(KUrl(”http://siteneekle.milliyet.com.tr/”))
self.layout.addItem(webView)
self.setLayout(self.layout)
self.resize(270,360)

def CreateApplet(parent):
return Haberler(parent)

Plasmoid ler bir zip arşivi özelliğinde. Aşağıdaki komutu çalıştırarak Plasmoid ‘i yüklenebilir hale getirebiliyoruz.

$ zip -r ../haberler.plasmoid .

Plasmoid ‘i yüklemek için olan komut; (-r parametresi ile plasmoid ‘i silebiliriz. -u ile de silmeden upgrade yapabiliriz.)

plasmapkg -i haberler.plasmoid

Yüklediğimiz Plasmoid ‘i Plasma’ da “Add Widget” demeden görmek için;

$ plasmoidviewer haberler

NOT: Her seferinde bu komutları yazarak denemeler yaptıktan sonra öğrendimki tek bir komutla hepsini gerçekleştirebililyormuşuz; (Klasor dışındayken…)

$ mkplasma haberler

Haberler Plasmoid ‘i buradan indirebilirsiniz.

Daha fazla bilgi için şu yazılarada bakabilirsiniz;

Leave a Reply