home *** CD-ROM | disk | FTP | other *** search
/ PC User 2001 August / APC_Aug2001_CD2.iso / features / web_dev / files / mwjpp516.exe / %MAINDIR% / Tools / Smartkeys / completeTry.script < prev    next >
Encoding:
Text File  |  2001-06-19  |  1.8 KB  |  76 lines

  1. !!Script
  2. // Copyright ⌐ 1997-1998 - Modelworks Software
  3. // @Created build 239 cm19981125
  4.  
  5. /**
  6. @Tool: completeTry~completes a try-catch structure and places 
  7. the caret after the opening brace. 
  8. Defined for Java and Script file types. 
  9. Typing <code>try<tab></code> results in:
  10. <pre> 
  11. try
  12. {
  13.     
  14. }
  15. catch (Execption e)
  16. (
  17. }
  18. finally
  19. {
  20. }
  21. </pre>
  22. @EndTool: 
  23. @Summary: completeTry~complets a try statement 
  24. */
  25.  
  26. function DoCommand()
  27. {
  28.     var path = File.getToolsPath() + "\\Smartkeys\\completeTry.script";
  29.     Application.registerSmartKeyHandler("*", "try\t", path, 
  30.     "Complete: try<tab> block");
  31. }
  32.  
  33. function OnEvent(editor,lineBuffer)
  34. {
  35.     var selection = editor.getSelection();
  36.     
  37.     var indentLevel = editor.getIndentLevel(selection.startLineIndex);
  38.     var lineIndex = selection.startLineIndex;
  39.     
  40.     editor.insert(++lineIndex, 0, "{\n");
  41.     editor.setIndentLevel(lineIndex, indentLevel);
  42.  
  43.     editor.insert(++lineIndex, 0, "\n");
  44.     editor.setIndentLevel(lineIndex, indentLevel+1);
  45.     
  46.     editor.insert(++lineIndex, 0, "}\n");
  47.     editor.setIndentLevel(lineIndex, indentLevel);
  48.     
  49.     editor.insert(++lineIndex, 0, "catch(Exception e)\n");
  50.     editor.setIndentLevel(lineIndex, indentLevel);
  51.     
  52.     editor.insert(++lineIndex, 0, "{\n");
  53.     editor.setIndentLevel(lineIndex, indentLevel);
  54.     
  55.     editor.insert(++lineIndex, 0, "}\n");
  56.     editor.setIndentLevel(lineIndex, indentLevel);
  57.     
  58.     editor.insert(++lineIndex, 0, "finally\n");
  59.     editor.setIndentLevel(lineIndex, indentLevel);
  60.     
  61.     editor.insert(++lineIndex, 0, "{\n");
  62.     editor.setIndentLevel(lineIndex, indentLevel);
  63.     
  64.     editor.insert(++lineIndex, 0, "}\n");
  65.     editor.setIndentLevel(lineIndex, indentLevel);
  66.  
  67.     editor.select(selection.startLineIndex + 2, indentLevel + 1);
  68.     
  69.     editor.setActive("Complete try");
  70.     return true;
  71. }
  72.  
  73. !!/Script
  74.  
  75.  
  76.