The IDL Workbench > Menubar and Toolbar Reference

# Menubar and Toolbar Reference

This topic is a quick reference guide to the Menubar and Toolbar of the IDL Workbench.

## The Menubar

The Menubar for the IDL Workbench contains standard dropdown menu controls as outlined below.

Note: This list describes the items in the Menubar view as they appear on Microsoft Windows. There are some differences between the Menubar on Windows and Mac platforms. On Mac, the Menubar appears separately, across the top of the screen (not part of the Workbench window). Also on Mac, there is an additional 'IDL' menu item within the Menubar view. Items listed below with (*) next to them are relocated to the 'IDL' menu item on Mac. In addition, on Windows, many of the keybindings use the <CTRL> key. On Mac, these key bindings use the <COMMAND> key.

### FILE

- New File - Opens a new file in the Editor View.
- New Project - Opens the "New IDL Project" dialog that can be used to generate a new project.
- New ENVI extension - Starts a wizard to generate a new ENVI extension.
- New Task - Creates a new Task for use with ENVI Services Engine and generates the template JSON and PRO code.
- Open - Opens a file. If you select a ".PRO" it will open in the Editor View.
- Close - Closes the currently-selected file in the Editor.
- Close All - Closes all files in the Editor.
- Save - Saves any changes to current file selected in the Editor.
- Save As - Save current file in the Editor to new file name.
- Save All - Save all currently opened files.
- Rename - Allows your to rename the file currently selected in the Project Explorer.
- Refresh - Renews the display of the contents in the Project Explorer.
- Print - Prints the file currently selected in Editor window.
- Switch Workspace - Restarts IDL in different workspace.
- Import - Allows user to import files, project, preferences, etc.
- Export - Allows user to export files, preferences, etc.
- Properties - Provides information about the file selected in the Editor.
- Recent File History - Displays the most recently-accessed program files.

### EDIT

Note: The keybindings listed in this sections (and elsewhere in the article) are the default settings and can be customized through Preferences.

- Undo - Cancels the previous action (<CTRL><Z>) (<COMMAND>+<Z> on Mac).
- Redo - Cancels the previous Undo command (<CTRL><Y>).
- Cut - Cuts the text currently selected in the Editor (<CTRL><X>).
- Copy - Copies selected text from the Editor or Console. Can also copy files from the Project View, and variable information (as text) in the Variables View. Can also copy commands from the Command History (<CTRL><C>).
- Paste - Used to "paste" whatever you just copied using the Copy button, <CTRL><C>, or EDIT > Copy (<CTRL><V>).
- Delete - Deletes selected item/text (<DELETE>).
- Select All - Selects everything in the active view (i.e., Editor, Console, Command History, etc.) (<CTRL><A>).
- Find/Replace -Search or replace specified text in the Editor or Console(<CTRL><F>).
- Find Next - Locate the next instance of the text specified in Find/Replace (<F3>).
- Find Previous - Locate the previous instance of the text specified in Find/Replace (<F4>).
- Search - Seeks files containing specified string in a scope selected by the user. The Search view will appear with the results (<CTRL><H>).
- Go to Matching Bracket - If the cursor is on a bracket in the editor, this will move the cursor the matching bracket (<CTRL><]>).
- Go to line - Moves cursor to specified line (<CTRL><L>).
- Back - Moves cursor to previous location (<ALT><Left Arrow>).
- Forward - Inverts the Back command (<ALT><Right Arrow>).
- Set Encoding - Sets the encoding (default UTF-8) for the file selected in the Editor.

### SOURCE

- Format - Automatically format file in Editor or the selected text.
- Shift Right - Tab selected text (or whole file) to the right.
- Shift Left - Tab selected text (or whole file) to the left.
- Content Assist - This will help you enter commands (<CTRL><SPACE>).
- Code Templates - Templates to help you write IDL code.
- Toggle Comment - Toggles selected line between comment and code (<CTRL><;>).
- To Lowercase - Change selected text to lowercase (<CTRL><U>).
- To Uppercase - Change selected text to uppercase (<CTRL><SHIFT><U>).
- Open Declaration - Opens the ".PRO" code for a selected call to a user defined routine (<CTRL><F3>).
- Add Routine Comments - Helps input IDLdoc style comments for routine.
- Add File Comments - Helps input IDLdoc style comments for file (http://idldoc.idldev.com/).

### PROJECT

- Open Project - Opens a selected "closed" Project from the Project Explorer.
- Close Project - Closes a selected "open" project. Resource files in a closed project cannot be changed or accessed by the development environment. Closed projects take up a lot less memory.
- Build All - Builds all Projects that are currently open in the Project Explorer.
- Build Project - Builds the selected open project according to the IDL Build Properties. By default, IDL will compile all .PRO code in the project, execute RESOLVE_ALL, and create a save file with the project's name (<CTRL><B>).
- Set Selection as current working directory - Set the current working directory to the location of the project.
- Properties - Produces dialog that allows user to edit properties for selected project. The properties include:
  - Resource - Setting for file encoding and file line delimiters.
  - IDL Build Properties - Build option such as resetting IDL, creating SAV files, and build scripts.
  - IDL Compile Order - Set the order to compile PRO code in your project.
  - IDL Project Properties - Resetting IDL and updating the IDL path.
  - JSON Properties - Enable JSON validation for ENVI Services Engine Tasks.
  - Project References - Specify other projects referenced by current project.

### MACROS (IDL 8.2.1 and up)

Macros allow you to assign IDL code to icons and keyboard shortcuts. You can use macros for tasks that you repeat often or want to simplify. When you add custom macros, you can define:

- The IDL code that the macro runs
- The macro name and menu label
- An icon to display on the macro toolbar
- A custom tooltip to display on the toolbar icon
- A keyboard shortcut to run the macro

### RUN

- Resume - Continue to run paused program.
- Pause - Suspends code execution in the debugger.
- Stop - Stops execution (<CTRL><F2>).
- Step In - Steps through code line by line. If a command is defined in .PRO code, the file will be opened in the editor and it step though this code line by line (<F5>).
- Step Over - Steps through code in current scope line by line (<F6>).
- Step Out - Executes remaining code in current scope, then moves to next line of higher scope (<F7>).
- Skip - Skips line when debugging (<CTRL><SHIFT><F6>).
- Run to line - Will execute code until location of cursor when debugging (<CTRL><R>).
- Compile - Compile file selected in the Editor (<CTRL><F8>).
- Run selected text - Executes the commands selected in the editor view (<SHIFT><F8>).
- Compile and run - Compile and execute file selected in the Editor (<F8>).
- Run Project - Executes the save file created by Build Project (<CTRL><SHIFT><F8>).
- Toggle Breakpoint - Add or Remove breakpoint from line selected by cursor (<CTRL><SHIFT><B>).
- Remove all Breakpoints

### WINDOW

- Hide/Show Toolbar - Toggles the display of the Toolbar.
- Breakpoints - Shows the location of breakpoints in code (<ALT><SHIFT><Q>, <b>).
- Class Hierarchy - Displays a hierarchy of all of the objects used in the current program in the Editor.
- Command History - Displays the Command History view.
- IDL Console - Shows the IDL Console view (<CTRL><I>).
- Outline - Shows a view presenting a tree hierarchy of procedures and functions included in the program file currently selected (active) in your Editor view (<ALT><SHIFT><Q>, <o>).
- Profiler - Shows the Profiler view. This can be used to test the speed of your code.
- Project Explorer - Show Directory tree for projects in the IDL-DE.
- Variables - Shows the Variables view which displays information about the variables currently defined (<ALT><SHIFT>Q, <v>).
- Show View - Displays a popup allowing you to select from among other views available in the IDL-DE.
- Source Control Tools - Allows you to access code repositories.
- Reset Views - Sets your IDL-DE back to its default layout.
- Increase Font Size - Affects the Editor and IDL Console (<CTRL><+>).
- Decrease Font size - Affects the Editor and IDL Console (<CTRL><->).
- Preferences - Launches dialog box that allows you to adjust IDL Preferences (*).

### HELP

- Help on selected item - Displays the IDL on-line help on the page corresponding to the item selected by the cursor.
- Help Contents - Displays the full IDL Online Help.
- Key Assists - Shows the keyboard shortcuts available in the development environment.
- About IDL - Gives version, build ID, and copyright information for your current version of IDL (*).

### IDL (MAC Only)

- About IDL - Gives version, build ID, and copyright information for your current version of IDL.
- Preferences - Launches dialog box that allows you to adjust IDL preferences.
- Services -
- Hide IDL - Minimize the IDL-DE (<COMMAND><H>).
- Hide Others - Minimize all open programs other than IDL.
- Show All - Maximize all open programs.
- Quit IDL - Close the IDL Development Environment (<COMMAND><Q>).

## The Toolbar

The Toolbar duplicates many of the Menubar commands, but stores them in a place where they are quick to find and use.

| Name | Description
--- | --- | ---
| Open | Opens a file. If you select a ".PRO" file, it will open in the IDL-DE Editor. If you select an image it will open in an IMAGE window. If you select an ASCII file it will open in the ASCII template.
| New File | Opens a blank file in the Editor.
| New Project | Opens the "New IDL Project" prompt which allows you to create a new project in the workspace or from a existing directory
| Save | Save any changes to the current file selected in the Editor.
| Cut | Cuts the text currently selected in the Editor view.
| Copy | Copies selected text from the Editor or Console. Can also copy files from the Project view, and variable information (as text) in the Variables view. Can also copy commands from the Command History.
| Paste | Used to "paste" whatever you just copied using the Copy button, <CTRL><C>, or <EDIT > Copy.
| Undo | Cancels the previous action.
| Redo | Cancels the previous Undo command.
| Back | Go back to the previous file opened in the Editor.
| Forward | Go to the previous file opened before the "Back" button was pressed. In other words, reverse the action of the Back button.
| Compile | Compiles the current file selected in the Editor.
| Run | Compiles and executes current program selected in the Editor.
| Resume | If the program you are executing hits a break point, this button can be used to resume running the program.
| Stop | This button can be used to stop a program from executing.
| In | Steps through code line by line. If a command is defined in .PRO code, the file will be opened in the editor and it step though this code line by line.
| Over | Steps through code in current scope line by line.
| Out | Executes remaining code in current scope then moves to next line of higher scope.
| Call Stack | Display hierarchy of ".PRO" routines that are currently being called.
| Reset | Resets the current session of IDL. For more information, see .RESET_SESSION.

Note: If you have Macros defined and you select "Show Toolbar", a toolbar with your Macros will appear in the Toolbar view.

## See Also

Class Hierarchy, Command History, Console View, Preferences, Editor View, Outline View, Problems View, Profiler View, Project Explorer, Workbench Overview, Variables View