[Date Prev][Date Next][Thread Prev][Thread Next] [Search] [Date Index] [Thread Index]

[MacPerl] more questions about glue




I played a little more with Glue finaly grasping AppleEvent and simple
modules now.

I have few more questions :

looking at the code if I want to make something like
# Applescript :
# get word 2 of line 3 of document 1
#
# AEGizmo  stringDescriptor
# core\getd{'----':obj
#            {form:indx, want:type(cwor), seld:2, from:obj
#                 {form:indx, want:type(clin), seld:3, from:obj
#                       {form:indx, want:type(docu), seld:1, from:'null'()}
#                 }
#             },
#             &inte:cans,
#             &timo:3600
#          }

with glue I lend to
  $DocRef = $StyleObj->_obj(word=>2,line=>3,document=>1);
  $myEvent = $StyleObj->get($DocRef);
  $dobj = AEGetParamDesc($myEvent->{REP}, keyDirectObject());
  $result = $dobj->get();


It took me some time to discover that reverse call in _obj because my first
thought was to specify from the less specific to the most specific like in
  $DocRef = $StyleObj->_obj(document=>1, line=>3,word=>2);
but anyway that make sense when comparing to AEBuild.

Now when browsing to the Glue code I see that the _do_obj method apply a simple
pattern to detect (as the doc say) between a number to make a index or a
String to make name form selection.

its sound like if we want to make other selection form we need that
obj_form blessing my question is about the syntax for selecting objects by
other allowed selector like by ID by range or by test.

For range selection would it be ok to consider that if we got an anonymous
array then we assume that we are encountering a range selection like in :
  $DocRef = $StyleObj->_obj(word=>[1,3],line=>3,document=>1);
or
 $DocRef = $StyleObj->_obj(word=>1,line=>[1..3],document=>1);

ID ref could be done by prefixing the value parameters to something like '\#'

Do you have some advanced thoughts about 'test' selection and boolean
comparisons
expressions ?


Could you give some Glue syntax example for making selections like in the
AEGizmo :

"first line od document "Spinaker" whose first word is 'April' and whose
second word is "is'"
I tried but gave up ressorting to the AEBuild library as the only solution.





---------------------------------------------------------------------
Vincent Nonnenmacher
DPI SA
116 Av de la Republique
38320 BRESSON
tel :  (33) 476 33 25 06        mailto:dpi@pobox.oleane.com
fax : (33) 476 33 25 01        http://worldserver.oleane.com/DPI



***** Want to unsubscribe from this list?
***** Send mail with body "unsubscribe" to mac-perl-request@iis.ee.ethz.ch