Thanks,
This is seems great, however, I have some problems :
I have tried to load labels with a button (I would have preferred that labels would have loaded automatically - I don't know if this is possible) :
Code:
<control type="button" id="790">
<visible>Container(9000).HasFocus(5) + String.IsEmpty(Control.GetLabel(740).Index(1))</visible>
<label>$LOCALIZE[31903]</label>
<right>20</right>
<bottom>60</bottom>
<width>220</width>
<height>70</height>
<onup>640</onup>
<ondown>640</ondown>
<onleft>9000</onleft>
<align>center</align>
<aligny>center</aligny>
<invalidcolor>invalid</invalidcolor>
<selectedcolor>selected</selectedcolor>
<texturefocus colordiffuse="button_focus">lists/focus.png</texturefocus>
<texturenofocus colordiffuse="dialog_tint">colors/white.png</texturenofocus>
<enable>String.IsEmpty(Control.GetLabel(740).Index(1))</enable>
<onclick>RunScript(script.skinvariables,set_editcontrol=740,text=$INFO[Skin.String(SpecialFolder01)])</onclick>
<onclick>RunScript(script.skinvariables,set_editcontrol=741,text=$INFO[Skin.String(SpecialFolder02)])</onclick>
<onclick>RunScript(script.skinvariables,set_editcontrol=742,text=$INFO[Skin.String(SpecialFolder03)])</onclick>
</control>
However, only Control 740 is defined.... with the control 742 value
I had a look to your code. I am absolutely not a python dev, however I know coding (C++, C#), so I can vaguely understand how it works
I see that you are focusing the edit control before sending text to it. I don't know why, but the SetFocus method seems to work randomly with Id.
I tried this also to set focus on parent (control 640) after defining the label2 :
Code:
<onclick>RunScript(script.skinvariables,set_editcontrol=740,text=$INFO[Skin.String(SpecialFolder01)],setfocus=640,setfocus_wait=00:00)</onclick>
<onclick>RunScript(script.skinvariables,set_editcontrol=741,text=$INFO[Skin.String(SpecialFolder02)],setfocus=640,setfocus_wait=00:00)</onclick>
<onclick>RunScript(script.skinvariables,set_editcontrol=742,text=$INFO[Skin.String(SpecialFolder03)],setfocus=640,setfocus_wait=00:00)</onclick>
and that to set focus on next edit control :
Code:
<onclick>RunScript(script.skinvariables,set_editcontrol=740,text=$INFO[Skin.String(SpecialFolder01)],setfocus=741,setfocus_wait=00:00)</onclick>
<onclick>RunScript(script.skinvariables,set_editcontrol=741,text=$INFO[Skin.String(SpecialFolder02)],setfocus=742,setfocus_wait=00:00)</onclick>
<onclick>RunScript(script.skinvariables,set_editcontrol=742,text=$INFO[Skin.String(SpecialFolder03)],setfocus=743,setfocus_wait=00:00)</onclick>
with no luck.
Yesterday, while I was looking to set label2 directly into the edit control, I found this setLabel method for edit control, but, as I said, I don't know python and I don't know if it is still usable in Nexus, nor if the label2 param could work. Apparently, the drawback is you need to define many params already setted.
After testing, last one seems not to be the way, label2 is not set despite the syntax would let you think it can.
May be I should add that each edit control is inside a grouplist control.