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

List:       kde-panel-devel
Subject:    Re: can buttons know what happens to programs they launch?
From:       Eric Mesa <ericsbinaryworld () gmail ! com>
Date:       2012-02-17 5:21:11
Message-ID: CAKYHq8JSSCX+TPgMBCRSBE8V7oiPVqyDp6mdvsF7wOfqP3dk_g () mail ! gmail ! com
[Download RAW message or body]

[Attachment #2 (multipart/alternative)]


On Mon, Feb 13, 2012 at 9:45 AM, Eric Mesa <ericsbinaryworld@gmail.com>wrote:

> On Tue, Feb 7, 2012 at 3:12 PM, Hans Chen <hanswchen@gmail.com> wrote:
> 
> > You may want to take a look at KProcess:
> > http://api.kde.org/4.x-api/kdelibs-apidocs/kdecore/html/classKProcess.html
> > For example, here's a Python plasmoid that uses it:
> > http://kde-look.org/content/show.php/Redshift+plasmoid?content=148737
> > 
> 
> Took a look at that but I wasn't sure how to do that based on QML.  Here
> are the ideas I've come up with, I'm not sure if they'll work.
> 
> Some of them involve my python helper program using sys.exit() with a 0 or
> 1 to denote success or failure.
> 
> 1) The command I'm using *runCommand(string exe[, array args])* says in
> http://techbase.kde.org/Development/Tutorials/Plasma/JavaScript/API-LaunchAppthat it returns true on \
> success and false on failure.  I know it returns false if I put a program there that doesn't exist.  If \
> I made my program exist on sys.exit(1) (which to the commandline is a failed program) would
> that make this command false?  Then I could just use an if statement to
> change the button color.
> 
> 2) Put a javascript function in my QML that calls my helper python
> script.  Then I can have it return 0 or 1.  And I can have the button
> change its color based on the output of the javascript.
> 
> 3) Based on what I found here ( http://wiki.maemo.org/Quick_Widgets ),
> but have found little documentation elsewhere about, I could use the
> Process from the first example and then for onCompleted and onFailed, make
> THAT change the button.  Again, that would mean that sys.exit() anything
> but 0 should be onFailed, right?
> 
> Any suggestions on which would easiest/most correct for the QML
> programming paradigm?  If it's #3, I am curious about how my button would
> call the process and evaluate the results.
> 
> --
> Eric Mesa
> http://about.me/ericmesa
> http://www.ericsbinaryworld.com
> 


None of those approaches worked for me.  Is there no way to get the python
helper program to be able to contribute data back to the QML plasmoid?  All
the data I want to communicate back is whether they succeeded or failed.
 That way I can communicate that back to the user.

Eric Mesa
http://about.me/ericmesa
http://www.ericsbinaryworld.com


[Attachment #5 (text/html)]

<div class="gmail_quote">On Mon, Feb 13, 2012 at 9:45 AM, Eric Mesa <span dir="ltr">&lt;<a \
href="mailto:ericsbinaryworld@gmail.com">ericsbinaryworld@gmail.com</a>&gt;</span> wrote:<br><blockquote \
class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"> <div \
class="im"><div class="gmail_quote">On Tue, Feb 7, 2012 at 3:12 PM, Hans Chen <span dir="ltr">&lt;<a \
href="mailto:hanswchen@gmail.com" target="_blank">hanswchen@gmail.com</a>&gt;</span> \
wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc \
solid;padding-left:1ex">

You may want to take a look at KProcess: <a \
href="http://api.kde.org/4.x-api/kdelibs-apidocs/kdecore/html/classKProcess.html" \
target="_blank">http://api.kde.org/4.x-api/kdelibs-apidocs/kdecore/html/classKProcess.html</a><br>

For example, here&#39;s a Python plasmoid that uses it: <a \
href="http://kde-look.org/content/show.php/Redshift+plasmoid?content=148737" \
target="_blank">http://kde-look.org/content/show.php/Redshift+plasmoid?content=148737</a><br>

</blockquote><div> </div></div></div>Took a look at that but I wasn&#39;t sure how to do that based on \
QML.  Here  are the ideas I&#39;ve come up with, I&#39;m not sure if they&#39;ll work.<br><br>Some of \
them involve my python helper program using sys.exit() with a 0 or 1 to denote success or \
failure.<br><br>1) The command I&#39;m using  <b>runCommand(string exe[, array args])</b>  says in 
<a href="http://techbase.kde.org/Development/Tutorials/Plasma/JavaScript/API-LaunchApp" \
target="_blank">http://techbase.kde.org/Development/Tutorials/Plasma/JavaScript/API-LaunchApp</a>  that \
it returns true on success and false on failure.  I know it  returns false if I put a program there that \
doesn&#39;t exist.  If I made my  program exist on sys.exit(1) (which to the commandline is a failed 
program) would that make this command false?  Then I could just use an if statement to change the button \
color.<br><br>2) Put a javascript  function in my QML that calls my helper python script.  Then I can \
have  it return 0 or 1.  And I can have the button change its color based on 
the output of the javascript.<br><br>3) Based on what I found here ( 
<a href="http://wiki.maemo.org/Quick_Widgets" target="_blank">http://wiki.maemo.org/Quick_Widgets</a> ), \
but have found little  documentation elsewhere about, I could use the Process from the first example and 
then for onCompleted and onFailed, make THAT change the button.  Again, 
that would mean that sys.exit() anything but 0 should be onFailed, 
right?<br>
<br>
Any suggestions on which would easiest/most correct for the QML programming paradigm?  If it&#39;s #3, I \
am curious about how my button would call the process and evaluate the results.<div class="HOEnZb"><div \
class="h5"> <br clear="all">--<br>Eric Mesa<div>
<a href="http://about.me/ericmesa" target="_blank">http://about.me/ericmesa</a><br><a \
href="http://www.ericsbinaryworld.com/" target="_blank">http://www.ericsbinaryworld.com</a></div> \
</div></div></blockquote></div><br><div><br></div><div>None of those approaches worked for me.  Is there \
no way to get the python helper program to be able to contribute data back to the QML plasmoid?  All the \
data I want to communicate back is whether they succeeded or failed.  That way I can communicate that \
back to the user.</div> <div><br></div><div>Eric Mesa<div><a href="http://about.me/ericmesa" \
target="_blank">http://about.me/ericmesa</a><br><a href="http://www.ericsbinaryworld.com/" \
target="_blank">http://www.ericsbinaryworld.com</a></div></div>



_______________________________________________
Plasma-devel mailing list
Plasma-devel@kde.org
https://mail.kde.org/mailman/listinfo/plasma-devel


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

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