On Tue, Jun 26, 2012 at 8:31 AM, Eric Mesa <ericsbinarywo...@gmail.com>wrote:
> Thanks to everyone who's helped me over the last year or so with my > program. I have one more thing to fix on my engine and then it will be > "perfect". The recent help I got helped me finally perfect the GUI. So my > data engine's running a function over and over with different arguments to > populate the sources. Here's what it looks like: > Please always use pastebin.com or paste.kde.org to show your codes instead of putting them in emails. Viranch > > from PyQt4.QtCore import * > from PyKDE4.kdecore import * > from PyKDE4 import plasmascript > #for flickr > import views > > > class PyFlickrEngine(plasmascript.DataEngine): > def __init__(self,parent,args=None): > plasmascript.DataEngine.__init__(self,parent) > > def init(self): > self.setMinimumPollingInterval(333) > #for flickr > views.initialize() > > #adding this back in 24 jan to see if it helps > def sources(self): > sources = ["25", "50", "75", "100", "200", "300", "400", "500", "600", > "700", "800", "900", "1000", "1250", "1500", "1750", "2000","3000", "4000", > "5000", "10000"] > return sources > > def sourceRequestEvent(self, name): > #print "source request event" #debugging > return self.updateSourceEvent(name) > > def updateSourceEvent(self,group): > print "updateSourceEvent" > #grouplist = [] > if group == "25": > grouplist = views.analyzeviews(views.views25, views.views50) > self.setData("25", "Group 25", grouplist) > elif group == "50": > grouplist = views.analyzeviews(views.views50, views.views75) > self.setData("50","Group 50", grouplist) > elif group == "75": > grouplist = views.analyzeviews(views.views75,views.views100) > self.setData("75","Group 75", grouplist) > elif group == "100": > print "i'm @ 100" #debug > grouplist = views.analyzeviews(views.views100,views.views200) > self.setData("100","Group 100", grouplist) > elif group == "200": > print "i'm @ 200" #debug > grouplist = views.analyzeviews(views.views200, views.views300) > self.setData("200","Group 200", grouplist) > *... (cut a snippet out - I think you get the point)* > elif group == "10000": > print "i'm @ 10000" #debug > grouplist = views.analyzeviews(views.views10000, views.views10000) > self.setData("10000","Group 10000", grouplist) > return True > > def CreateDataEngine(parent): > return PyFlickrEngine(parent) > > So that function it's calling, views.analyzeviews(arg, arg) is calling a > web API and sometimes that API fails. The cool thing about data engines vs > when I used to do this on the commandline is that if it fails at 25, it > doesn't crash the whole program. It just moves on to 50. So I can end up > in the end where when I click on 25 it tells me that there's nothing in the > source and then I click on 50 and I can use the data from that source. So, > right now if I want the data from 25, the only way I know how to do that is > by re-running the program and hoping the API doesn't fail that time > around. Is there a way for me to tell the data engine to update group 25 > again from within the QML gui? > > Thanks! > -- > Eric Mesa > http://about.me/ericmesa > http://www.ericsbinaryworld.com > > > _______________________________________________ > Plasma-devel mailing list > Plasma-devel@kde.org > https://mail.kde.org/mailman/listinfo/plasma-devel > >
_______________________________________________ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel