<br><div class="gmail_quote"><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">---------- Messaggio inoltrato ----------<br>From: Richard Dale <<a href="mailto:richard.j.dale@gmail.com">richard.j.dale@gmail.com</a>><br>
To: <a href="mailto:plasma-devel@kde.org">plasma-devel@kde.org</a><br>Date: Fri, 12 Feb 2010 23:59:06 +0000<br>Subject: Re: Subject: Re: [PATCH] Support for arbitrary main script names in Python plasmoids<br>On Fri, Feb 12, 2010 at 10:17 AM, Richard Dale <<a href="mailto:richard.j.dale@gmail.com">richard.j.dale@gmail.com</a>> wrote:<br>
> On Thu, Feb 11, 2010 at 11:34 PM, Diego Casella ([Po]lentino)<br>
> <<a href="mailto:polentino911@gmail.com">polentino911@gmail.com</a>> wrote:<br>
>>> ---------- Messaggio inoltrato ----------<br>
>>> From: Richard Dale <<a href="mailto:richard.j.dale@gmail.com">richard.j.dale@gmail.com</a>><br>
>>> To: <a href="mailto:plasma-devel@kde.org">plasma-devel@kde.org</a><br>
>>> Date: Thu, 11 Feb 2010 18:37:55 +0000<br>
>>> Subject: Re: [PATCH] Support for arbitrary main script names in Python<br>
>>> plasmoids<br>
>>> On Thu, Feb 11, 2010 at 6:02 PM, Luca Beltrame <<a href="mailto:einar@heavensinferno.net">einar@heavensinferno.net</a>><br>
>>> wrote:<br>
>>> > Hello,<br>
>>> ><br>
>>> > currently if you use Python plasmoids the main script *must* be named<br>
>>> > "main.py" because it is hardcoded into pyappletscripts.py. When using a<br>
>>> > different mainscript in the .desktop file (like Plasmate does) this will<br>
>>> > ensure the plasmoid will not run (you get a NameError exception).<br>
>>> Well currently in Plasmate there is not way to specifiy the main<br>
>>> script (or main class).<br>
>><br>
>> Actually, the main script and main class names are taken from the project<br>
>> name; if you create a<br>
>> RubyClock project, Plasmate will create a rubyclock.rb file, with a<br>
>> MainRubyClock class inside it :)<br>
>>><br>
>>> The Ruby plasmoid implementation doesn't use the Ruby equivalent of<br>
>>> __dict__, but simply derives the main class name from the main script<br>
>>> name. So I wasn't sure is you should specifiy a main *class* name in<br>
>>> Plasmate like FooBar which would give a main script name of<br>
>>> foo_bar.rb. Or whether you should give a main script name of<br>
>>> foo_bar.rb the Plasmate form from which the class 'FooBar' is then<br>
>>> derived.<br>
>>><br>
>>> Currently in Plasmate the name of the applet is used to derive both<br>
>>> the module (like a namespace), and the name of the class, which I<br>
>>> think is wrong. For example, if you call your applet FooBar you get:<br>
>>><br>
>>> module FooBar<br>
>>> class FooBar< PlasmaScripting::Applet<br>
>>> ...<br>
>>><br>
>>> I would rather the class was called 'Main' if you don't specifiy a main<br>
>>> script.<br>
>><br>
>> I'm sorry, but this is wrong: I've taken care of avoiding it since the<br>
>> beginning<br>
>> (I also reverted, a couple of days ago, a commit[1] that did exactly what<br>
>> you just<br>
>> described ).<br>
> Ah OK - I was testing what the 'The_User' had just commited, which you<br>
> have reverted. I think the name of the main script was wrong for<br>
> MainForBar - it should be code/main_foo_bar.rb, and fixing that was<br>
> why he made the change. Personally if a main script isn't specified I<br>
> would prefer a class name of 'Main' and main script of 'main.rb' for<br>
> Ruby.<br>
I've just commited some changes to the Ruby folder and main script<br>
name generation in Ruby so that it now works correctly. If you name<br>
you project FooBar it will be put in a folder called 'foo_bar' and the<br>
main script will be called 'main_foo_bar.rb'. If you don't follow this<br>
convention the correct module and class name will not be generated<br>
when the Ruby script engine tries to load the applet. I also enabled<br>
creating Ruby Data Engines, as the Ruby api works file.<br>
<br>
-- Richard<br>
<br>
</blockquote><div>That's great, thanks :)<br> </div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">_______________________________________________<br>
Plasma-devel mailing list<br>
<a href="mailto:Plasma-devel@kde.org">Plasma-devel@kde.org</a><br>
<a href="https://mail.kde.org/mailman/listinfo/plasma-devel" target="_blank">https://mail.kde.org/mailman/listinfo/plasma-devel</a><br>
<br></blockquote></div><br>