home *** CD-ROM | disk | FTP | other *** search
- !!script
- // Copyright ⌐ 1997-1998 - Modelworks Software
-
- /**
- @Tool: findInOpenDocuments~finds a findWhat expression in all open documents.
- @EndTool:
- @Summary: findInOpenDocuments~finds a findWhat expression in all open documents
- */
-
- var output = getOutput("Find In Files 1");
-
- function DoCommand()
- {
- var findParameters = getGlobal("FindParameters", null);
-
- var findData = chooseFindParameters("Find in open windows", findParameters.findWhat,
- findParameters.caseSensitive, findParameters.wholeWord,
- findParameters.regularExpression, findParameters.searchDown);
-
- if (findData)
- {
- findParameters.findWhat = findData.key;
- findParameters.caseSensitive = findData.caseSensitive;
- findParameters.wholeWord = findData.wholeWord;
- findParameters.regularExpression = findData.regularExpression;
- findParameters.searchDown = findData.searchDown;
- findParameters.updateHistory();
-
- output.clear();
- output.writeLine("Searching for: " + findData.key);
-
- var count = 0;
- var index = 0;
- var lineIndex = -1;
- var editor = getEditor(index++);
- while (editor)
- {
- var fileName = editor.path;
-
- if (findData.searchDown)
- {
- findData.startCharIndex = 0;
- findData.startLineIndex = 0;
- }
- else
- {
- findData.startLineIndex = editor.getLineCount() - 1;
- findData.startCharIndex = 32000;
- }
-
- editor.findNext(findData);
- while (findData && findData.found)
- {
- var range = findData.range;
-
- // Only print out one message per line
- if (lineIndex != range.startLineIndex)
- {
- lineIndex = range.startLineIndex;
- output.writeMessage(fileName, lineIndex, editor.copy(lineIndex));
- count += 1;
- }
-
- editor.findNext(findData);
- }
-
- lineIndex = -1;
- editor = getEditor(index++);
- }
- output.writeLine("Found " + count + " items");
- }
- }
-
- !!/script
-
-