Re André,

Le 4 févr. 06 à 16:45, André.Bisseret a écrit :

Le Saturday, 4 Feb 2006, à 15:34 Europe/Paris, Eric Chatonet a écrit :

Bonjour André,

You could have a look at the way by which this problem is handled in the IDE (searching in a script): the answer is there :-)
Bonjour Éric,
I am really sorry, but I don't catch what you are suggesting to me by that first sentence ; where should I have had a look to find how this problem is handled in the IDE? I get the feeling that I am missing some information source !?

YES!
As you know it the IDE is built with Rev.
THIS is of great value: it means that you can modify it and first study it :-) To access all IDE scripts, check the "Contextual menus work in Revolution windows" in the General pane of the Preferences.
Then use a right/control click to open this world :-)

For your convenience:

function FindNext pDoSelect -- returns a boolean according to a successful next find
Anyway thanks a lot for the function ; I am going to study it before choosing (likely more "pro" than my handler, but it is a bit complex isnt' it ?)

It's very complete but you can simplify it:

local lDidFind,lStartChar
-----
function FindNext pDoSelect -- returns a boolean according to a successful next find
  local tNotFound,tOffset,tOChar
  -----
  put false into lDidFind
  put true into tNotFound
  -----
  if lStartChar = empty then put 0 into lStartChar
  repeat while tNotFound
    put offset(field "Find", field "Result", lStartChar) into tOffset
    if tOffset is 0 and lStartChar is not 0 then
      put offset(field "Find", field "Result") into tOffset
      if tOffset >= lStartChar then put 0 into tOffset
      put 0 into lStartChar
      beep
    end if
    add tOffset to lStartChar
    if tOffset is 0 or lStartChar is tOChar then return false
    if tOChar is empty then put lStartChar into tOChar
  end repeat
  if pDoSelect then
select char lStartChar to (lStartChar + the length of field "find" - 1) of field "Result"
  end if
  put true into lDidFind
  return true
end FindNext

Sorry: I forgot the two local script variables in my previous post
Here field "Result" is the searched field and field "Find" contains the string to find.
And the function is used in a handler as the following:

on MakeMySearch -- mouseUp in a button, etc.
  if not FindNext(true) then beep
end MakeMySearch

Best Regards from Paris,
Eric Chatonet
------------------------------------------------------------------------ ----------------------
http://www.sosmartsoftware.com/    [EMAIL PROTECTED]/


_______________________________________________
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution

Reply via email to