[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    extragear/multimedia/kmid
From:       Pedro Lopez-Cabanillas <pedro.lopez.cabanillas () gmail ! com>
Date:       2010-07-19 22:20:47
Message-ID: 20100719222047.CFBB7AC76D () svn ! kde ! org
[Download RAW message or body]

SVN commit 1151926 by pedrol:

kmid_part: python example

 M  +32 -12    examples/kmidpart.py  
 M  +1 -1      src/kmid_part.rc  


--- trunk/extragear/multimedia/kmid/examples/kmidpart.py #1151925:1151926
@@ -3,32 +3,52 @@
 
 import sys
 
+from PyQt4.QtCore import *
 from PyKDE4.kdecore import *
 from PyKDE4.kdeui import *
 from PyKDE4.kparts import *
+from PyKDE4.kio import *
 
-from PyQt4.QtGui import QLabel
-
-class MainWindow (KMainWindow):
-    def __init__ (self):
-        KMainWindow.__init__(self)
-        self.resize(320, 240)
+class MainWindow (KParts.MainWindow):
+    def __init__ (self, app):
+        KParts.MainWindow.__init__(self)
+        self.app = app
+        self.resize(330, 130)
         factory = KLibLoader.self().factory("kmid_part")
-        part = factory.create(self, "KMidPart")
-        self.setCentralWidget(part.widget())
-        #part.openUrl(KUrl("file://./lindaamiga.mid"))
+        self.part = factory.create(self, "KMidPart")
+        self.setCentralWidget(self.part.widget())
+        self.act('file_open', KStandardAction.Open, self.openDocument)
+        self.act('file_quit', KStandardAction.Quit, self.app.quit)
+        self.setStandardToolBarMenuEnabled(True)
+        self.setupGUI()
+        self.createGUI(self.part)
 
+    def openDocument(self):
+        url = KFileDialog.getOpenUrl(KUrl(),
+            "*.mid|MIDI files", self, "Open File")
+        if not url.isEmpty():
+            self.part.openUrl(url)
+            
+    def act(self, name, texttype, func):
+        if isinstance(texttype, KStandardAction.StandardAction):
+            a = self.actionCollection().addAction(texttype, name)
+        else:
+            a = self.actionCollection().addAction(name)
+            a.setText(texttype)
+        QObject.connect(a, SIGNAL("triggered()"), func)
+        return a
+
 #--------------- main ------------------
 if __name__ == '__main__':
 
     appName     = "kmidpart_example"
     catalog     = ""
     programName = ki18n("KMid Part Example")
-    version     = "1.0"
+    version     = "0.1"
     description = ki18n("Example loading a KMid Part")
     license     = KAboutData.License_GPL
     copyright   = ki18n("(c) 2010 Pedro Lopez-Cabanillas")
-    text        = ki18n("none")
+    text        = ki18n("Hi, there")
     homePage    = "http://kmid2.sourceforge.net"
     bugEmail    = "plcl@users.sf.net"
     
@@ -38,6 +58,6 @@
     KCmdLineArgs.init(sys.argv, aboutData)
         
     app = KApplication()
-    mainWindow = MainWindow()
+    mainWindow = MainWindow(app)
     mainWindow.show()
     app.exec_()
--- trunk/extragear/multimedia/kmid/src/kmid_part.rc #1151925:1151926
@@ -1,7 +1,7 @@
 <!DOCTYPE kpartgui SYSTEM "kpartgui.dtd">
 <kpartgui name="kmid_part" version="1">
 <MenuBar>
-  <Menu name="view">
+  <Menu name="view"><text>&amp;View</text>
     <Action name="play"/>
     <Action name="pause"/>
     <Action name="stop"/>
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic