thank you so much jamesr. Maybe itS enough for me today:) bec. of not using
this like mod., I have given my hours to it.
I hope i will shorten such hours over time:)
Thanks all of you.

Cem

2010/2/16 jamesr <[email protected]>

> minor mod of this line:
>
> <button datapath="languages:/language/string" 
> text="$path{'@name=\'submit\'/@name'}"/>
>
> to this:
> <button datapath="languages:/language/stri...@name='submit']"
> text="$path{'@name'}"/>
> cem sonmez wrote:
>
>> actually, here my goal is to seek to any node of dataset.
>> Thinks about this please :S
>>
>> <canvas debug="true">
>>    <dataset name="languages">
>>        <language>
>>            <string id="1" name="submit">
>>                <value>submit</value>
>>            </string>
>>            <string id="2" name="login">
>>                <value>login</value>
>>            </string>
>>        </language>
>>    </dataset>
>>    <simplelayout />
>>      <button datapath="languages:/language/string" 
>> text="$path{'@name=\'submit\'/@name'}"/>
>>  </canvas>
>>
>> when i use like that, button text is null(actually buttons). how can i get
>> it work in this way ? Thanks
>> Cem
>>
>> 2010/2/16 jamesr <[email protected] <mailto:[email protected]>>
>>
>>
>>    There seems to be an issue using path outside of a datapath
>>    context being established. try this (tested on SWF8 locally) and
>>    note that i changed the format of the xml to make the access more
>>    readable.
>>
>>    <canvas debug="true">
>>              <dataset name="strings">
>>            <submit>submittosio</submit>
>>            <reset>resettosio</reset>
>>        </dataset>
>>              <button datapath="strings:/submit" text="$path{'text()'}"/>
>>          </canvas>
>>
>>
>>    P T Withington wrote:
>>
>>>    The value of the expression in the $path{} statement needs to be a
>>> string, so I think you would need to say:
>>>
>>>      <button text="$path{'localized:/stri...@name=\'submit\']/@value'}"
>>>
>>>    but I have not tested this.
>>>
>>>    On 2010-02-15, at 18:38, cem sonmez wrote:
>>>
>>>
>>>
>>>>    jamesr, I have used your same notation, but i m getting error
>>>>    *Syntax error: the token ":" was not expected at this position.*
>>>>    I have made lots of changes at the $path expression. Still nothing
>>>> happens
>>>>    Another error that  i m getting
>>>>    *Lexical error. The source location is for the element that contains
>>>> the
>>>>    erroneous script. The error may come from an unterminated comment.*
>>>>    Do you have an idea why this happens? Did you used this code snippet
>>>> before
>>>>    you post it?
>>>>    And also does anyone have an idea about this issue?
>>>>
>>>>    Regards
>>>>    Cem
>>>>
>>>>    2010/2/15 cem sonmez <[email protected]> <mailto:
>>>> [email protected]>
>>>>
>>>>
>>>>
>>>>>    Yes i have seen $path before, but i have never used it for any
>>>>> constraint.
>>>>>
>>>>>
>>>>    $path usage has been explained well at [1].
>>>>
>>>>
>>>>>    I will take a look at it again and try this form.
>>>>>    Thanks a lot
>>>>>    Cem
>>>>>
>>>>>    [1] -
>>>>>
>>>>>
>>>>
>>>> http://www.openlaszlo.org/lps4.7/docs/developers/databinding.html#d0e96468
>>>>
>>>>
>>>>>    2010/2/15 jamesr <[email protected]> <mailto:
>>>>>> [email protected]>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>    Sure! as PT mentioned, there may be overhead for using the $path
>>>>>>> method
>>>>>>>
>>>>>>>
>>>>>>    i'll direct you toward, for very large applications. There are a
>>>> few
>>>>    manager/registry based ways around this overhead, no problem, but the
>>>>    conversation is out of scope to your direct question to get into --
>>>> in this
>>>>    email.
>>>>
>>>>
>>>>>    Have you ever used the $path{} form of constraints? they take a
>>>>>>>
>>>>>>>
>>>>>>    dataset:datapath pair and bind to a specific location in a dataset,
>>>> which
>>>>    will update when the dataset changes. From your code snippets i'm
>>>> guessing
>>>>    you haven't seen them.
>>>>
>>>>
>>>>>    if you have a dataset thus,
>>>>>>>
>>>>>>>    <dataset name="localized">
>>>>>>>     <string name="submit" value="(submit in another language)"/>
>>>>>>>     <string name="resest" value="(reset in another language)"/>
>>>>>>>    </dataset>
>>>>>>>
>>>>>>>    then you can set up a path constraint by saying,
>>>>>>>
>>>>>>>    <button text="$path{localized:/stri...@name='submit']/@value}"
>>>>>>>
>>>>>>>    and this will *find* the string node with name "submit" (be sure
>>>>>>> to have
>>>>>>>
>>>>>>>
>>>>>>    unique names or you'll get mulitple nodes back and the expression
>>>> will be
>>>>    invalid) and use its value attribute as the text for the button.
>>>>
>>>>
>>>>>    more info is in the laszlo docs... i don't have a link to it handy,
>>>>>>>
>>>>>>>
>>>>>>    sorry
>>>>
>>>>
>>>>>    -j
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>    cem sonmez wrote:
>>>>>>>
>>>>>>>
>>>>>>>>    Thanks all for your replies.
>>>>>>>>    But i just can say that i am inexperienced about css. So all
>>>>>>>> along i
>>>>>>>>
>>>>>>>>
>>>>>>>    have thought to use dataset. The problem is to change the texts
>>>> dynamically
>>>>    when i set the datapath's src attribute during runtime.
>>>>
>>>>
>>>>>    But as you said ptw, itS more about skinning, css is more convenient
>>>>>>>> to
>>>>>>>>
>>>>>>>>
>>>>>>>    use. I will look at it as well.
>>>>
>>>>
>>>>>    For the dataset usage. It may looks like :
>>>>>>>>
>>>>>>>>    <dataset name="dset" src="words.xml" />
>>>>>>>>      <datapointer id="dpointer" xpath="dset:/language">
>>>>>>>>          <method name="getMessage" args="textId">
>>>>>>>>              this.setAttribute('xpath', 'dset:/language');
>>>>>>>>              this.selectChild();
>>>>>>>>              do {
>>>>>>>>                  if (this.xpathQuery('@id') == textId) {
>>>>>>>>                      var message = this.xpathQuery('value/text()');
>>>>>>>>                      if ($debug)
>>>>>>>>                          Debug.write("datapointer : " + message);
>>>>>>>>                      return message;
>>>>>>>>                  }
>>>>>>>>              } while (this.selectNext());
>>>>>>>>          </method>
>>>>>>>>      </datapointer>
>>>>>>>>
>>>>>>>>    and i also can use it
>>>>>>>>    <button name="button1" text="${dpointer.getMessage(1)}" />
>>>>>>>>
>>>>>>>>    I havenT just tried, but the problem is going to occur when i
>>>>>>>> want to
>>>>>>>>
>>>>>>>>
>>>>>>>    change the dataset src at runtime. jamesr, the way that u
>>>> mentioned likes
>>>>    mine. Can you instruct a bit more please.
>>>>
>>>>
>>>>>    thanks all again .
>>>>>>>>    Kind regards
>>>>>>>>    Cem
>>>>>>>>
>>>>>>>>    2010/2/15 P T Withington <[email protected] <mailto:[email protected]>
>>>>>>>> <mailto:[email protected]>>
>>>>>>>>
>>>>>>>>
>>>>>>>>      Using a dataset is an equally valid approach, but I think it
>>>>>>>> was
>>>>>>>>      tried and found to require too much overhead.  Of course, if
>>>>>>>> CSS
>>>>>>>>      is made dynamic, perhaps it will have equivalent overhead.
>>>>>>>>
>>>>>>>>      Perhaps the reason some people think of CSS first is because it
>>>>>>>>      seems i18n is like "skinning" or styling your app.
>>>>>>>>
>>>>>>>>      On 2010-02-15, at 12:09, jamesr wrote:
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>    Would it not be more expedient to write a class, called perhaps
>>>>>>>>>
>>>>>>>>>
>>>>>>>>      localtext, that takes a single field to index inside of a
>>>>>>>> dataset
>>>>>>>>      wherein a given real-world language sentence is kept, so that
>>>>>>>> by
>>>>>>>>      changing datasets you change all displayed localized text?
>>>>>>>>
>>>>>>>>
>>>>>>>>>    Why use CSS?
>>>>>>>>>
>>>>>>>>>    P T Withington wrote:
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>    There are two improvements targeted for 5.0 that will help this
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>      situation:
>>>>>>>>
>>>>>>>>
>>>>>>>>>    LPP-8556 Add default CSS style properties to <view>
>>>>>>>>>>    LPP-7359 Make CSS attribute selectors dynamic
>>>>>>>>>>
>>>>>>>>>>    There should also be one to make it so you can load a
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>      stylesheet at runtime, but I can't seem to find that.  Maybe
>>>>>>>> Max
>>>>>>>>      and I only talked about it...
>>>>>>>>
>>>>>>>>
>>>>>>>>>    With all three of those, it should be possible to have a single
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>      app that will be localized when it is loaded.  For now, you
>>>>>>>> are
>>>>>>>>      correct, you need to compile your app for each language.
>>>>>>>>
>>>>>>>>
>>>>>>>>>    ---
>>>>>>>>>>
>>>>>>>>>>    With LPP-7184 Binary libraries don't work in swf9 resolved (and
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>      integrated to 4.7), we believe that LZO's are now fully
>>>>>>>> supported
>>>>>>>>      in swf9 for 4.7.1 (soon to be released) and 5.0.x (in
>>>>>>>>      development).  We'd welcome testing by anyone who needs this
>>>>>>>>      feature.  Grab the latest 4.7.1 here:
>>>>>>>>
>>>>>>>>
>>>>>>>>>    http://download.openlaszlo.org/nightly/4.7/
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>    On 2010-02-15, at 11:39, Raju Bitter wrote:
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>    All the internationalization based on CSS for Webtop (at least
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>      with
>>>>>>>>
>>>>>>>>
>>>>>>>>>    the version I've used) requires you to recompile the app for a
>>>>>>>>>>>    different language. That's not too much of a problem, just
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>      generate
>>>>>>>>
>>>>>>>>
>>>>>>>>>    different versions of the app for different languages.
>>>>>>>>>>>
>>>>>>>>>>>    It would be good to have dynamic CSS support at runtime, but a
>>>>>>>>>>>    workaround could be to put all the strings into an LZO, with
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>      different
>>>>>>>>
>>>>>>>>
>>>>>>>>>    LZOs for different languages. That should work, shouldn't it? Of
>>>>>>>>>>>    course you are limited to SWF8 and DHTML then, since there's
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>      still no
>>>>>>>>
>>>>>>>>
>>>>>>>>>    support for LZOs with AS3 based runtimes, as far as I know.
>>>>>>>>>>>
>>>>>>>>>>>    2010/2/15 P T Withington <[email protected] <mailto:[email protected]>
>>>>>>>>>>> <mailto:[email protected]>>:
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>    I believe some use CSS styles to achieve
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>      internationalization, although currently LZX does not
>>>>>>>> support
>>>>>>>>      dynamically changing styles, so I'm not sure exactly how this
>>>>>>>> is
>>>>>>>>      handled.  Currently, styles need to be pre-processed by the
>>>>>>>>      compiler.  Ideally, you would have your application server
>>>>>>>> looking
>>>>>>>>      at the browser request language preference and serve up
>>>>>>>> different
>>>>>>>>      style sheets based on that.  It may be that people are using a
>>>>>>>>      .jsp to do this kind of dispatching.
>>>>>>>>
>>>>>>>>
>>>>>>>>>    In theory, you would write something like:
>>>>>>>>>>>>
>>>>>>>>>>>>    <!-- supply style sheet based on browser language -->
>>>>>>>>>>>>    <stylesheet>
>>>>>>>>>>>>    i18ntext [label="hi"] { text: "hello" }
>>>>>>>>>>>>    </stylesheet>
>>>>>>>>>>>>
>>>>>>>>>>>>    <class name="i18ntext" extends="text">
>>>>>>>>>>>>    <attribute name="label" type="string" />
>>>>>>>>>>>>    <attribute name="text" style="text" />
>>>>>>>>>>>>    </class>
>>>>>>>>>>>>
>>>>>>>>>>>>    <i18ntext label="hi" />
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>    [...]
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>    --
>>>>>>>>    Cem SONMEZ
>>>>>>>>
>>>>>>>>
>>>>>>>    --
>>>>>>    Cem SONMEZ
>>>>>>
>>>>>>
>>>>>    --
>>>>>    Cem SONMEZ
>>>>>
>>>>>
>>>>    --
>>>>    Cem SONMEZ
>>>>
>>>>
>>>
>>>
>>
>>
>>
>>
>> --
>> Cem SONMEZ
>>
>
>


-- 
Cem SONMEZ

Reply via email to