NXP IDE 5.6 CodeWarrior Development Studio User’s Guide
Publicité
Publicité
CodeWarrior
™
Development Studio
IDE 5.6 User’s Guide
Revised: May 30, 2006
Revised 20030610
Freescale, the Freescale logo, and CodeWarrior are trademarks or registered trademarks of Freescale Corporation in the
United States and/or other countries. All other trade names and trademarks are the property of their respective owners.
Copyright © 2006 by Freescale Semiconductor company. All rights reserved.
No portion of this document may be reproduced or transmitted in any form or by any means, electronic or mechanical, without prior written permission from Freescale. Use of this document and related materials is governed by the license agreement that accompanied the product to which this manual pertains. This document may be printed for non-commercial personal use only in accordance with the aforementioned license agreement. If you do not have a copy of the license agreement, contact your Freescale representative or call 1-800-377-5416 (if outside the U.S., call +1-512-996-5300).
Freescale reserves the right to make changes to any product described or referred to in this document without further notice. Freescale makes no warranty, representation or guarantee regarding the merchantability or fitness of its products for any particular purpose, nor does Freescale assume any liability arising out of the application or use of any product described herein and specifically disclaims any and all liability. Freescale software is not authorized for and has not
been designed, tested, manufactured, or intended for use in developing applications where the failure, malfunction, or any inaccuracy of the application carries a risk of death, serious bodily injury, or damage to tangible property, including, but not limited to, use in factory control systems, medical devices or facilities, nuclear facilities, aircraft navigation or communication, emergency systems, or other applications with a similar degree of potential hazard.
How to Contact Freescale
Corporate Headquarters
World Wide Web
Technical Support
Freescale Corporation
7700 West Parmer Lane
Austin, TX 78729
U.S.A.
http://www.freescale.com/codewarrior http://www.freescale.com/support
2
IDE 5.6 User’s Guide
Table of Contents
I Introduction
Special note for Solaris and Linux users
II Projects
IDE 5.6 User’s Guide
3
Table of Contents
File, Group, Layout, and Target Management
4
III Editor
8 Creating Console Applications
IDE 5.6 User’s Guide
Other Editor Window Components
Finding Interface Files, Functions, and Lines
Reference Templates (Macintosh)
Multiple-File Find and Replace
IDE 5.6 User’s Guide
Table of Contents
5
Table of Contents
Using the Find String in the Replace String
6
IV Browser
14 Using Class Browser Windows
15 Using Other Browser Windows
Multiple-Class Hierarchy Window
IDE 5.6 User’s Guide
The New Member Function Wizard
V Debugger
About the CodeWarrior Debugger
18 Manipulating Program Execution
Working with Breakpoint Templates
IDE 5.6 User’s Guide
Table of Contents
7
Table of Contents
Register Details Window (Windows OS)
22 Working with Hardware Tools
8
IDE 5.6 User’s Guide
VI Compilers and Linkers
Table of Contents
VII Preferences and Target Settings
IDE 5.6 User’s Guide
9
Table of Contents
Pre-defined Variables in Command Definitions
26 Working with IDE Preferences
27 Working with Target Settings
10
IDE 5.6 User’s Guide
28 Preference and Target Settings Options
VIII Menus
IDE 5.6 User’s Guide
Table of Contents
11
Table of Contents
12
IDE 5.6 User’s Guide
Introduction
This section contains these chapters:
•
IDE User’s Guide Overview on page 15
•
CodeWarrior IDE Overview on page 21
I
IDE 5.6 User’s Guide
13
14
IDE 5.6 User’s Guide
1
IDE User’s Guide
Overview
This chapter of the CodeWarrior™ IDE User’s Guide is a high-level description of documentation and training resources for learning to use the IDE.
•
—free, Internet-based instruction for
CodeWarrior products. Use this resource to learn more about the
CodeWarrior Integrated Development Environment (IDE) and computer programming.
•
“Documentation Structure” on page 18 —a guide to the various
CodeWarrior manuals available. This guide notes the location of generic and specific product documentation.
•
“Manual Conventions” on page 19
—some common typographical conventions used in this manual and other Freescale documentation.
Release Notes
Please read the release notes. They contain important last-minute additions to the documentation. The Release Notes folder is located on the CodeWarrior CD.
Licensing
Web-based licensing is available. It is a server licensing solution that generates
FlexLM v8 or later based license keys automatically over the world wide web through a registration/activation process. You can register and activate permanent, node-locked license keys.
Freescale products are shipped to customers with registration cards that contain a unique registration number. Products that ship with a one year annual support certificate will also have a unique registration number.
IDE 5.6 User’s Guide
15
IDE User’s Guide Overview
CodeWarriorU.com
During product installation you will be instructed to register at http:// www.Freescale.com/mw/register
. You can also reach the registration website by selecting the
Help > Register Product menu command from the
IDE’s main menu. Registration from the website collects the registration code and verifies it against the correct product and gathers contact information.
An email will be sent to you with the License Authorization Code and instructions. In the IDE you can select Help > License Authorization... to
display the License Authorization dialog box. Figure 1.1 on page 16
shows the
License Authorization dialog box.
Figure 1.1 License Authorization
Enter the License Authorization Code and select an ethernet address from the
Node lock ID for license dropdown list, if one exists. After entering the authorization code, the CodeWarrior IDE will make an HTTP call to the
Freescale licensing server with the activation code and generate the permanent license keys. The resulting license keys are automatically updated into the license.dat text file of the CodeWarrior product executing the authorization. You can also manually edit the license.dat file per instructions provided in the
License_Install.txt file in the root folder of your CodeWarrior installation path. If the IDE evaluation period expires prior to activation, you will have to manually edit the license.dat file.
CodeWarriorU.com
CodeWarriorU.com offers a wide range of free, Internet-based courses in a wide variety of computer programming topics. Use this supplement to the
16
IDE 5.6 User’s Guide
IDE User’s Guide Overview
CodeWarriorU.com
CodeWarrior documentation to acquire more experience using CodeWarrior products.
IDE 5.6 User’s Guide
17
IDE User’s Guide Overview
Documentation Structure
CodeWarriorU.com courses include:
• Text-based instruction
• Expert instructors
• A variety of self-assessment and study materials
• Interactive message boards for communicating with instructors and students
CodeWarriorU offers many courses, such as:
• Learn Programming in C
For beginning programmers.
• Introduction to Java
For beginning and experienced programmers. Take this course to learn how to create Java software.
• Introduction to C++
For beginning and experienced programmers. Take this course to learn how to create C++ software.
• Intermediate C++
For programmers who completed the Introduction to C++ course and have basic C++ programming knowledge. Take this course to learn the foundation needed to create more sophisticated C++ software.
To find out more, visit this web site: http://www.CodeWarriorU.com/
Documentation Structure
CodeWarrior products include an extensive documentation library of user guides, targeting manuals, and reference manuals. Take advantage of this library to learn how to efficiently develop software using the CodeWarrior programming environment.
Documentation Formats
CodeWarrior documentation presents information in various formats:
• Print—Printed versions of CodeWarrior manuals, including the IDE User’s
Guide, MSL C Reference, C/C++ Reference, and product-focused
Targeting manuals.
18
IDE 5.6 User’s Guide
IDE User’s Guide Overview
Manual Conventions
• PDF (Portable Document Format)—Electronic versions of CodeWarrior manuals. The CodeWarrior CD Documentation folder contains the electronic PDF manuals.
• HTML (Hypertext Markup Language)—HTML or Compressed HTML
(.CHM) versions of CodeWarrior manuals.
Documentation Types
Each CodeWarrior manual focuses on a particular information type:
• User guides—User guides provide basic information about the
CodeWarrior user interface. User guides include information that supports all host platforms on which the software operates, but do not include indepth platform-specific information.
• Targeting manuals—Targeting manuals provide specific information required to create software that operates on a particular platform or microprocessor. Examples include the Targeting Windows, Targeting Java, and Targeting DSP56800 manuals.
• Reference manuals—Reference manuals provide specialized information that supports coding libraries, programming languages, and the IDE.
Examples include the C Compiler Reference, MSL C Reference, and
Extending the CodeWarrior IDE manuals.
• Core manuals—Core manuals explain the core technologies available in the CodeWarrior IDE. Examples include:
– IDE User’s Guide
– C/C++ Compilers Reference
– MSL C Reference and MSL C++ Reference
– Extending the CodeWarrior IDE
– Command-Line Tools Reference
Manual Conventions
This section explains conventions in the IDE User’s Guide.
IDE 5.6 User’s Guide
19
IDE User’s Guide Overview
Manual Conventions
Figure Conventions
The CodeWarrior IDE employs a virtually identical user interface across multiple hosts. For this reason, illustrations of common interface elements use images from any host. However, some interface elements are unique to a particular host.
In such cases, clearly labelled images identify the specific host.
Keyboard Conventions
The CodeWarrior IDE accepts keyboard shortcuts, or key bindings, for frequently used operations. For each operation, this manual lists corresponding key bindings by platform. Hyphens separate multiple keystrokes in each key binding.
Special note for Solaris and Linux users
The Solaris and Linux IDE use Macintosh symbols to represent modifier keys in
key bindings. Table 1.1 on page 20
shows the relationship between the
Macintosh symbols and the equivalent modifier keys on Solaris and Linux computers. Solaris and Linux computers can map a modifier key to any key on the keyboard. The preceding table reflects the default modifier key configuration for these computers. Remember that custom mappings supersede the default configuration noted in the table.
Table 1.1 Macintosh modifier-key equivalents for Solaris and Linux
Symbol Macintosh
Name
Control
Solaris
Equivalent
Control
Linux
Equivalent
Ctrl
Option Alt Alt
Command Meta Alt
Shift Shift Shift
20
IDE 5.6 User’s Guide
2
CodeWarrior IDE
Overview
The CodeWarrior
™
Integrated Development Environment (IDE) provides an efficient and flexible software-development tool suite. This chapter explains the advantages of using the CodeWarrior IDE and provides brief descriptions of the major tools that make up the IDE.
This chapter contains these sections:
•
“Development Cycle” on page 21
•
“CodeWarrior IDE Advantages” on page 23
•
“IDE Tools Overview” on page 24
Development Cycle
A software developer follows a general development process:
• Begin with an idea for new software
• Implement new idea in source code
• Have the IDE compile source code into machine code
• Have the IDE link machine code and form an executable file
• Correct errors (debug)
• Compile, link, and release a final executable file.
The stages of the development cycle correspond to one or more chapters in this manual.
depicts the development cycle as a flowchart. Table 2.1 on page 23
details the different stages and their corresponding sections in this manual.
IDE 5.6 User’s Guide
21
CodeWarrior IDE Overview
Development Cycle
Figure 2.1 The Development Cycle diagram
Start
Create
Edit
Compile
Yes
Compile
Errors?
No
Link
Yes
Link Errors?
No
Debug
Legend
Start or End of the process
Development
Cycle stage
Decision stage
Process flow
22
Yes
Debug
Errors?
No
Release
End
IDE 5.6 User’s Guide
CodeWarrior IDE Overview
CodeWarrior IDE Advantages
Table 2.1 Stage descriptions and related sections in the IDE User’s Guide
Stage Description
Create
Edit
Compile
Link
Debug
Release
Related Sections
Create the initial project, source files, and build targets.
•
•
•
•
•
Transform your project into working source code, organize interface elements, and correct errors.
Compile the source code into machine format that operates on the target host.
Link the separate compiled modules into a single binary executable file.
Find and resolve all coding and logic errors that prevent the program from operating as designed.
Release for public use.
“Compilers and Linkers” on page 323
“Compilers and Linkers” on page 323
Beyond the scope of this manual.
CodeWarrior IDE Advantages
• Cross-platform development
Develop software to run on multiple operating systems, or use multiple hosts to develop the same software project. The IDE runs on popular operating systems, including Windows, Macintosh, Solaris, and Linux. The
IDE uses virtually the same graphical user interface (GUI) across all hosts.
• Multiple-language support
Choose from multiple programming languages when developing software.
The IDE supports high-level languages, such as C, C++, and Java, as well as in-line assemblers for most processors.
IDE 5.6 User’s Guide
23
CodeWarrior IDE Overview
IDE Tools Overview
• Consistent development environment
Port software to new processors without having to learn new tools or lose an existing code base. The IDE supports many common desktop and embedded processor families, including x86, PowerPC, MIPS, and many others.
• Plug-in tool support
Extend the capabilities of the IDE by adding a plug-in tool that supports new services. The IDE currently supports plug-ins for compilers, linkers, pre-linkers, post-linkers, preference panels, version controls, and other tools. Plug-ins make it possible for the CodeWarrior IDE to process different languages and support different processor families.
IDE Tools Overview
The CodeWarrior IDE is a tool suite that provides sophisticated tools for software development. This section explains the standard tools available in the
IDE:
• a project manager
• an editor
• a search engine
• a source browser
• a build system
• a debugger
Table 2.2 on page 25 explains the purpose of these tools and lists corresponding
CodeWarrior IDE features.
24
IDE 5.6 User’s Guide
CodeWarrior IDE Overview
IDE Tools Overview
Table 2.2 IDE tools and features
Tool
Project
Manager
Editor
Search
Engine
Source
Browser
Build
System
Debugger
Purpose
Manipulate items associated with a project
Create and modify source code
Find and replace text
Manage and view program symbols
Convert source code into an executable file
Resolve errors
CodeWarrior IDE Features
• Handles top-level file management for the software developer
• Organizes project items by major group, such as files and targets
• Tracks state information (such as filemodification dates)
• Determines build order and files to be included in each build
• Coordinates with plug-ins to provide versioncontrol services
• Uses color to differentiate programminglanguage keywords
• Allows definition of custom keywords for additional color schemes
• Automatically verifies parenthesis, brace, and bracket balance
• Allows use of menus for navigation to any function or into the header files used by the program
• Finds a specific text string
• Replaces found text with substitute text
• Allows use of regular expressions
• Provides file-comparison and differencing functionality
• Maintains a symbolics database for the program. Sample symbols include names and values of variables and functions.
• Uses the symbolics database to assist code navigation
• Links every symbol to other locations in the code related to that symbol
• Processes both object-oriented and procedural languages
• Uses compiler to generate object code from source code
• Uses linker to generate final executable file from object code
• Uses symbolics database to provide sourcelevel debugging
• Supports symbol formats such as CodeView,
DWARF (Debug With Arbitrary Records
Format), and SYM (SYMbolic information format)
IDE 5.6 User’s Guide
25
CodeWarrior IDE Overview
IDE Tools Overview
26
IDE 5.6 User’s Guide
Projects
This section contains these chapters:
•
Working with Projects on page 29
•
•
•
•
•
Creating Console Applications on page 85
II
IDE 5.6 User’s Guide
27
28
IDE 5.6 User’s Guide
3
Working with Projects
This chapter explains how to work with projects in the CodeWarrior
™
IDE.
Projects organize several file types associated with a computer program:
• Text files—files that contain any kind of text. Sample text files include Read
Me files and source files.
• Source files—files that contain source code only. Sample source files include C++ files and Java files.
• Library files—files that contain special code designed to work together with a particular programming language or operating environment.
• Generated files—files created by the IDE while building or debugging the project.
This chapter contains these sections:
•
•
“Managing Projects” on page 33
•
“Advanced Projects” on page 39
About Projects
The IDE uses build targets and a Project Manager to organize source code and support files. This section explains both components.
Project Manager
The IDE gathers source, library, resource, and other files into a project. The
Project Manager manipulates the information stored in the project.
Figure 3.1 on page 30 diagrams Project Manager interactions with IDE tools.
Table 3.1 on page 30 explains the interactions.
IDE 5.6 User’s Guide
29
Working with Projects
About Projects
Figure 3.1 Project Manager
Search
Engine
Source
Browser
Symbolics
Information
The build system generates symbolics information for a program. The debugger generates a database from the symbolics information.
Editor
Compiler
Linker
Build System
Main IDE
Legend
Debugger
Development
Support tool
Information that the IDE generates
IDE internal data
Additional information
Table 3.1 Project Manager interactions
IDE Tool Project Manager Interactions
Editor
Compiler
• Coordinates internal data flow among editor windows, search engine, and source browser
• Matches find-and-replace results between related header files and source files
• Associates functions and variables with corresponding source code
• Synchronizes a symbolics database of program functions, variables, and values with source code
• Coordinates internal data flow between symbolics database and source browser
• Determines files to include in build process
30
IDE 5.6 User’s Guide
Working with Projects
About Projects
Table 3.1 Project Manager interactions (continued)
IDE Tool Project Manager Interactions
Linker
Debugger
• Sends compiled object code to linker for conversion to executable code
• Sets the link order for processing compiled object code
• Matches debugging data to source code
• Updates symbolics database to reflect changing values during a debug session
Build Targets
For any given build, the project manager tracks:
• files and libraries
• link order
• dependencies
• compiler, linker, and other settings
The IDE stores this information in a build target. As the project changes, the project manager automatically updates the build target. The project manager also coordinates program builds, using the build-target information to call the appropriate tools in the correct order with the specified settings.
For example, the project manager directs the build system to compile only those source files that rely on information in a modified file.
Note that all of this operation happens automatically. The software developer does not need to remember makefile syntax or semantics, and never has to debug makefile syntax errors. The IDE simplifies the process, making it easier to develop software.
The project manager also supports multiple build targets within the same project file. Each build target can have its own unique settings, and even use different source and library files. For example, it is common to have both debug and release build targets in a project.
Figure 3.2 on page 32 shows a sample project with debug and release build
targets.
IDE 5.6 User’s Guide
31
Working with Projects
About Projects
Figure 3.2 Project with multiple build targets
Project
Build Target - Debug
File #1 File #2
File #3 Object Code
Settings Browser Data
Note that both build targets share
File #1 and File #2.
Build Target - Release
File #1 File #2
File #4 Object Code
Settings Browser Data
32
IDE 5.6 User’s Guide
Working with Projects
Managing Projects
Managing Projects
Use these tasks to manage projects:
• Create a new project
• Open existing project
• Save project
• Close project
• Inspect an open project
• Print an open project
Creating New Projects using Project Stationery
Use the project stationery provided with the IDE to quickly create new projects.
The stationery contains everything needed for a minimal, ready-to-run project.
Use project stationery as a foundation upon which to add features for each new project.
1. Choose File > New.
2. Click the Project tab and select a project type.
3. Enter a project name (include the
.mcp
extension) in the Project Name field and set the Location for the new project.
4. Click OK in the New window.
5. Select the appropriate project stationery from the New Project window.
6. Click OK in the New Project window.
The IDE uses the selected stationery as a template to create a new project.
IDE 5.6 User’s Guide
33
Working with Projects
Managing Projects
34
Creating New Projects from Makefiles
Use the Makefile Importer wizard to convert most Visual C
nmake
or GNU
make
files into projects. The wizard performs these tasks:
• Parses the makefile to determine source files and build targets
• Creates a project
• Adds the source files and build targets determined during parsing
• Matches makefile information, such as output name, output directory, and access paths, with the newly created build targets.
• Selects a project linker
1. Choose File > New.
2. Click the Project tab.
3. Select Makefile Importer Wizard.
4. Enter a project name (include the
.mcp
extension) in the Project Name field and set the Location for the new project.
5. Click OK in the New window.
6. Enter the path to the makefile in the Makefile location field or click Browse to navigate to the makefile.
7. Choose the tool set used for makefile conversion and linker selection.
• Tool Set Used In Makefile—Choose the tool set whose build rules form the basis of the makefile.
• Freescale Tool Set—Choose the linker tool set to use with the generated project.
8. Select the desired diagnostic settings.
• Log Targets Bypassed—Select to log information about makefile build targets that the IDE fails to convert to project build targets.
• Log Build Rules Discarded—Select to log information about makefile rules that the IDE discards during conversion.
• Log All Statements Bypassed—Select to log targets bypassed, build rules discarded, and other makefile items that the IDE fails to convert.
9. Click Finish, then Generate.
IDE 5.6 User’s Guide
Working with Projects
Managing Projects
The Makefile Importer wizard performs the conversion process and displays additional information.
Creating Empty Projects
Unlike project stationery, empty projects do not contain a pre-configured collection of template source files, library files, or build targets. Empty projects allow advanced software engineers to custom-build new projects from scratch.
NOTE
Avoid creating empty projects. Instead, modify a project created with project stationery. Project stationery pre-configures complicated settings to quickly get started.
1. Choose File > New.
2. Click the Project tab and select Empty Project.
3. Enter a project name (include the
.mcp
extension) in the Project Name field and set the Location for the new project.
4. Click OK in the New window.
The IDE creates an empty project. Add files and libraries, create build targets, and choose the appropriate target settings to complete the new project.
Opening Projects
Use the IDE to open previously saved projects. CodeWarrior projects normally end in the Freescale CodeWarrior Project extension of
.mcp
. Open projects to add, remove, or modify files to enhance the capabilities of the final executable file.
1. Choose File > Open.
2. Find and select the project to open.
3. Click Open.
The IDE opens the project and displays its Project window.
NOTE
The IDE prompts you for confirmation to update projects created in older CodeWarrior versions.
IDE 5.6 User’s Guide
35
Working with Projects
Managing Projects
Opening Projects Created on Other Hosts
CodeWarrior projects whose names end in
.mcp
are cross-platform. However, the object code stored inside each project folder is not cross-platform. Use these procedures to properly open the project on a different host computer.
1. If not present, add the
.mcp
filename extension to the project name.
2. Copy the project folder from the original host to the new host.
3. Delete the
Data
folder inside the newly copied project folder.
4. Open the newly copied project on the new host IDE.
5. Recompile the project to generate new object code.
Saving Projects
The IDE automatically saves projects and updates project information after performing these actions:
• Closing the project
• Applying or saving a preference or target-setting option
• Adding, deleting, or compiling a file
• Editing group information
• Removing or compacting object code
• Quitting the IDE
Inspecting Project Files
Use the Project Inspector command to review and configure source-file attributes and target information in the Project Inspector window.
1. Select a file in the Project window.
2. Open the Project Inspector window, as explained in
36
IDE 5.6 User’s Guide
Working with Projects
Managing Projects
Table 3.2 Opening the Project Inspector window
On this host… Do this…
Windows
Macintosh
Solaris
Linux
Select
View > Project Inspector
.
Select
Window > Project Inspector
.
Select
Window > Project Inspector
.
Select
Window > Project Inspector
.
3. Examine the source-file attributes and target settings.
• Click the Attributes tab to view the file attributes.
• Click the Targets tab to view the build targets that use the file.
Printing Projects
The Project Manager can print a complete listing of the Files, Designs, Link
Order, or Targets tab currently displayed in the Project window.
1. Select the Project window.
2. Click the Files, Designs, Link Order, or Targets tab.
3. Choose File > Print.
4. Set the print options in the print dialog.
5. Print the Project window contents.
The IDE prints the contents of the selected tab.
Choosing a Default Project
The IDE allows multiple open projects at the same time. However, a given source file can belong to more than one open project, making it ambiguous as to which project a source-file operation applies.
To resolve ambiguity, choose the default project to which the IDE applies operations.
IDE 5.6 User’s Guide
37
Working with Projects
Managing Projects
1. If only one project is open, it automatically becomes the default project.
2. If more than one project is open, choose Project > Set Default Project to select the desired default project.
In ambiguous situations, the IDE applies operations to the selected default project.
38
Exporting Projects to XML Files
The IDE can export a project to an Extensible Markup Language (XML) file. Use this capability to store projects in text-oriented environments, such as a version control system.
1. Bring the project to export forward (in focus).
2. Choose
File > Export Project.
3. Name the exported XML file and save it in the desired location.
The IDE converts the project to an XML file.
Importing Projects Saved as XML Files
The IDE can import a project previously saved in Extensible Markup Language
(XML) format. Use this capability to recreate projects stored in text-oriented environments, such as a version control system.
1. Choose File > Import Project.
2. Create a new folder in which to save the converted project and all of its generated files.
3. Find the XML file that you want to import.
4. Save the XML file in the newly created folder.
The IDE converts the XML file to a project.
Closing Projects
Use the Close command to close a CodeWarrior project file at the end of a programming session. The IDE automatically saves changes to a closed project.
1. Select the Project window to close.
IDE 5.6 User’s Guide
Working with Projects
Advanced Projects
2. Close the project.
• Choose File > Close.
• Click the close box in the Project window.
Advanced Projects
Advanced projects deal with these topics:
• Custom project stationery—modified project stationery tailored to advanced programming needs.
• Subprojects—projects within projects.
• Strategies—obtaining the maximum benefit from advanced projects.
Custom Project Stationery
Use custom project stationery to develop streamlined templates to meet advanced programming needs.
• Pre-configure new project stationery to include often-used files, libraries, and source code
• Configure build targets and options to any desired state
• Set up a reusable template to use for creating projects
NOTE
Custom project stationery requires in-depth knowledge about project structure and operation. Before creating custom stationery, be sure to fully understand existing project stationery included with the
CodeWarrior product.
Creating Custom Project Stationery
Use custom project stationery to develop a convenient template for creating new projects. An efficient way to develop custom stationery is to modify existing project stationery and save it under a new name in the Stationery or Project
Stationery folder.
IDE 5.6 User’s Guide
39
Working with Projects
Advanced Projects
1. Follow the usual process for creating a project from project stationery.
See “Creating New Projects using Project Stationery” on page 33 for more
information.
2. Choose
File > Save A Copy As.
3. Find the Project Stationery folder in the CodeWarrior installation.
4. Create a folder inside the Project Stationery folder to store the newly created project.
5. Save the project to its new folder. Use a descriptive project name with the
.mcp
extension.
6. Customize the newly saved project so that it becomes a template for creating other projects:
• Add source files to the project. Save these files in the same folder as the project itself.
• Add build targets for building the project with frequently used settings.
• Configure other project preferences as desired.
7. Close the customized project to save it.
8. Open the customized project folder inside the Project Stationery folder.
9. Find and delete the
_Data
folder.
The IDE now treats the customized project as project stationery. The descriptive name appears in the Project tab of the New window.
Subprojects
A subproject is a project nested inside a parent project. Subprojects organize source code for the IDE to build prior to building the parent project. For example, the IDE builds subprojects for an application’s plug-ins before building the parent project for the application itself.
40
Adding Subprojects to a Project
Use a subproject to organize a separate set of source files and build targets inside a parent project.
1. Open the parent project in which to add a subproject.
IDE 5.6 User’s Guide
Working with Projects
Advanced Projects
2. Click the Files tab in the Project window.
3. If the parent project has more than one build target, use the build-target list box in the Project window toolbar to choose the desired build target.
4. Add a separate project to the Project window:
• Drag and drop the
.mcp
file of the separate project into the Project window, or
• Choose Project > Add Files to add the
.mcp
file of the separate project.
The IDE treats the added project as a subproject. The subproject appears in the Files view of the parent Project window.
Opening Subprojects
The IDE can open a subproject from the parent Project window. Use this feature to more conveniently open the subproject.
1. Double-click the subproject in the Files view of the parent Project window.
2. The IDE opens the subproject in its own Project window.
Strategies
Projects can organize files into build targets or subprojects. Each of these structures has its own advantages. Choose the structure best suited to the programming need.
Build Targets
Build targets organize collections of files inside a project. Build targets have these advantages:
• Using multiple build targets inside a single project allows access to all source code for that project.
• Build targets organize different collections of build settings for a single project.
• Each project accommodates up to 255 build targets.
IDE 5.6 User’s Guide
41
Working with Projects
Advanced Projects
Subprojects
Subprojects incorporate separate, standalone projects into parent projects.
Subprojects have these advantages:
• Subprojects separate distinct parts of a complex program, such as an application and its various plug-ins.
• Using subprojects streamlines a complicated build. For example, create a project that builds all plug-ins for an application. Add this project as a subproject of the main application. The IDE then builds all plug-ins before building the main application.
• Use subprojects to break down a complicated project that approaches the
255 build-target limit. Organize related build targets into different subprojects to improve build speed.
42
IDE 5.6 User’s Guide
4
Project Window
This chapter explains how to work with the Project window in the
CodeWarrior
™
IDE. The Project window provides these features:
• view and modify all files created for use with a computer program.
• manipulate files arranged by type.
• control the way the IDE handles files.
This chapter contains these sections:
•
“About the Project Window” on page 43
•
“Project Window Pages” on page 45
•
“File, Group, Layout, and Target Management” on page 51
•
“Build-Target Management” on page 56
About the Project Window
The Project window organizes files in a computer program. Use this window to control various aspects of each file. The window includes these items:
• Project window toolbar
• Tabs
• Columns
Figure 4.1 on page 44 shows a sample Project window. Table 4.1 on page 44
explains the items in the Project window.
NOTE
The number and names of the tabs in the Project window depend on the current build target and on the installed IDE plug-ins.
IDE 5.6 User’s Guide
43
Project Window
About the Project Window
Figure 4.1 Project window
Table 4.1 Project window—items
Item
Current Target
Icon
Target
Settings
Synchronize
Modification
Dates
Make
Explanation
Use to specify the build target that you want to modify.
Click to view and edit the settings for the current build target. You can also display settings for a target selected in Targets tab.
Click to check the modification dates of each project file and mark those files that need compilation.
Click to compile and link all modified and manually selected (touched) project files.
44
IDE 5.6 User’s Guide
Project Window
Project Window Pages
Table 4.1 Project window—items (continued)
Item
Debug
Icon Explanation
Click to debug the current build target.
Run
Project
Inspector
Files
Link Order
Frameworks
(Mac OS only)
Targets
Click to compile and link the current build target, then run the program.
Click to view project information and edit file-specific information.
Click to display the Files page. This page shows a list of files in the project and their associated properties.
Click to display the Link Order page. This page shows the link order of files in the current build target.
Click to display the Frameworks page.
This page shows available programming frameworks to link against. The
Frameworks tab appears only for projects that support frameworks.
Click to display the Targets page. This page shows a list of all build targets, subprojects, and target-linking information.
Project Window Pages
The Project window uses pages to organize items:
• Files
• Link Order
• Targets
• Frameworks (for projects supporting code frameworks - Mac OS only)
IDE 5.6 User’s Guide
45
Project Window
Project Window Pages
Files Page
The Files page shows information about individual files in a project. The Files page shows information about these file types:
• Text files—files that contain any type of text. Sample text files include Read
Me files and source files.
• Source files—files that contain source code only. Sample source files include C++ files and Java files.
• Library files—files that contain special code designed to work together with a particular programming language or operating environment.
Table 4.2 on page 46 explains the items in the Files page.
Table 4.2 Files page—items
Item Icon Explanation
Touch
File
Code
Data
Target
Debug
Indicates the touch status of each file. Click in this column to toggle touching a file. Touching a file manually selects it for compilation during the next build. Click the Touch icon to sort files by touch status.
Displays a hierarchical view of the file and group names used by the project. Click the column title to sort files by name.
Double-click a file to open it. Use the hierarchical controls to display and hide group contents.
Displays the size, in bytes or kilobytes, of the compiled executable object code for files and groups. Click the column title to sort files by code size.
Displays the size, in bytes or kilobytes, of non-executable data in the object code for files in the project. Click the column title to sort files by data size.
Indicates whether each file belongs to the current build target.
Click in this column to toggle inclusion status. A black dot indicates that a file is included with current build target. Click the Target icon to sort files by inclusion status. The Target column appears only when the project has more than one build target.
Displays debugging status. Click in this column to toggle generation of debugging information for a file or group. Click the Debug icon to sort files by debugging status.
46
IDE 5.6 User’s Guide
Project Window
Project Window Pages
Table 4.2 Files page—items (continued)
Item Icon Explanation
Checkou t Status
Interface s
Sort
Order
Displays icons representing the current file status in a versioncontrol system. The Checkout Status column appears only when the project uses a version-control system to manage files.
Click to display a list of files inside a group or a list of
#include
files inside a source file. Choose a file to open it.
Click to toggle sorting between ascending and descending order for the active column. The icon indicates the current sort order.
Viewing a File Path
To distinguish between two files that have identical names but reside in different folders, examine the file path.
To view the complete path of a file, perform the task explained in
.
Table 4.3 Viewing a file path
On this host… Do this…
Windows
Macintosh
Right-click the filename and select
Open in Windows Explorer
Control-click the filename and select
File Path
.
Solaris
Linux
Click and hold on the filename, then select
File Path
.
Click and hold on the filename, then select
File Path
.
The File Path submenu shows the path to the file.
IDE 5.6 User’s Guide
47
Project Window
Project Window Pages
File Management
The project window lists all files found for all targets. If access paths are different for each target and a file with the same name exists in each path, the project window will list the occurrence of each file.
For example, if two header files named example.h are used with two targets
(TargetA and TargetB) and exist in separate locations for each target, you will see two entries of example.h in the project window. If both targets use the same file in one location, then a single entry will appear in the project window.
Select a file in the Files tab of the project window and view the Project Inspector window to reveal the path for the selected file, and which targets use the file. You can also select a file and click the right mouse button to display a context menu.
Select Open in Windows Explorer (Windows) or File Path (Linux/Solaris/Mac) to display the path.
If a black dot is present in the target column for a listed file, then it is in the current target. You can select this dot to toggle whether or not to include this file with the current target. Double-click a source file to open it in the editor.
If you enable the Save project entries using relative paths option in the Target
Settings panel, file locations will be stored using a relative path from the access paths defined in the Access Paths panel. If disabled, the IDE remembers project entries only by name. This can cause unexpected results if two or more files share the same name. In this case, re-searching for files by selecting the Project > Research for Files menu command could cause the IDE to find the file in a different access path.
NOTE
If you use source files with the same name in different locations, you should enable the Save project entries using relative paths option.
Duplicate file names can also appear in the Files tab of the project window if a file is not found on one of the access paths. This can happen if an access path has been removed from the User Paths group in the Access Paths target settings panel. When the access path is removed, a duplicate appears in the project window. The duplicate entry remains displayed until the access path is restored.
If a project with several targets (for example Debug and Release target) uses the same file, that file is shown as a single entry. If you remove the access path for that file, then a duplicate entry will appear in the file list. This duplicate represents a missing file for the current target. The second file entry is still
48
IDE 5.6 User’s Guide
Project Window
Project Window Pages
avaiable for the other target. Restore the access path and choose Project > Re-
search for Files to remove the duplicate entry in the list.
The Project > Re-search for Files command speeds up builds and other project operations. The IDE caches the location of project files after finding them in the access paths. Re-search for Files forces the IDE to forget the cached locations and re-search for them in the access paths. This command is useful if you moved several files and you want the IDE to find the files in their new locations.
If the Save project entries using relative paths option is enabled, the IDE does not reset the relative-path information stored with each project entry, so researching for files looks for source files in the same location. If the files are not there, the IDE only re-searches for header files. To force the IDE to also research for source files, choose the Project > Reset Project Entry Paths menu command. If the Save project entries using relative paths option is disabled, the IDE re-searches for both header files and source files.
The Reset Project Entry Paths command resets the location information stored with each project entry and forces the IDE to re-search for project entries in the access paths. This command does nothing if the Save project entries using
relative paths option is disabled.
NOTE
If the IDE is unable to locate or resolve the location of project files, a
Rescued items folder will appear. The IDE trys to locate the missing files and creates new references. This can happen when project data information, access paths. or other location settings in target settings panels are missing or have been compromised, for example, if the location of a project and related data directory have changed. One way this can happen is if a project has been committed to a source repository by one person and checked out to a different location by another person and a new project data folder is created.
Link Order Page
The Link Order page shows information about the order in which the IDE links project files. Manipulate the files in this page to change the link order. For example, if file B depends on file A in order to function, move file B below file A in the
Link Order page.
Table 4.4 on page 50 explains the items in the Link Order page.
IDE 5.6 User’s Guide
49
Project Window
Project Window Pages
Table 4.4 Link Order page—items
Item
Synchronize
Modification
Dates
Explanation
To update the modification dates of files stored in a project, click the checkmark icon.
Synchronize
Status
Use the Synchronize Modification Dates command to update files modified outside of the CodeWarrior IDE, perhaps by a third-party editor that cannot notify the CodeWarrior IDE of changes.
To update version-control status information, click the Pencil icon.
Targets Page
The Targets page presents information about the build targets in a project. Use this page to create, manage, or remove build targets. Different build targets can store different IDE settings. For example, two build targets can handle the same project. One build target handles debugging the software, while the other build target handles building the software for final release.
Table 4.5 on page 50 explains items in the Targets page.
Table 4.5 Targets page—items
Item Explanation
Targets Displays all build targets and subprojects that the IDE processes to create a binary file. These icons denote build-target status:
• active build target
Link
• inactive build target
Indicates the dependencies between build targets and subprojects.
50
IDE 5.6 User’s Guide
Project Window
File, Group, Layout, and Target Management
File, Group, Layout, and Target
Management
Use these tasks to manage files, groups, layouts, and targets:
• Create an item.
• Delete an item.
• Move an item.
• Rename an item.
• Touch an item.
• Manage items.
• Set default items.
• Configure item settings.
Removing Files/Groups/Layouts/Targets
The Remove command deletes files, groups, layouts, and build targets from the
Project window. Removing files from the Files tab removes them from the project itself and from all build targets that use the files. Removing a file from the
Link Order, Segments, or Overlays tab only removes the file from the current build target.
Removing files/groups/layouts/targets from a project
1. Click the Files, Designs, or Targets tab in the Project window.
2. Select the item to remove.
3. Remove the selected item from the project, as explained in
.
IDE 5.6 User’s Guide
51
Project Window
File, Group, Layout, and Target Management
Table 4.6 Removing a selected item from a project
On this host… Do this…
Windows
Macintosh
Solaris
Linux
Select
Edit > Delete
Select
Edit > Clear
Select
Edit > Remove
Select
Edit > Remove
The IDE removes the selected item from the project. For deleted files, the IDE updates all build targets that formerly used the file. For deleted build targets, the
IDE deletes build-target information and leaves files intact.
Removing files from a build target
1. Click the Link Order, Segments, or Overlays tab in the Project window.
2. Select the item to remove.
3. Remove the selected item from the active build target, as explained in
.
Table 4.7 Removing a selected item from the active build target
On this host… Do this…
Windows
Macintosh
Solaris
Linux
Select
Edit > Delete
Select
Edit > Clear
Select
Edit > Remove
Select
Edit > Remove
The IDE removes the file from the build target, but leaves the file itself intact.
The file can be re-assigned to other build targets in the project.
52
IDE 5.6 User’s Guide
Project Window
File, Group, Layout, and Target Management
Moving Files/Groups/Layouts/Targets
Reposition files, groups, layouts, or build targets in the Files, Design, Link
Order, or Targets pages with the cursor.
1. Select one or more files, groups, layouts, or build targets to move with the pointer.
2. Drag the selected items to a new position in the current page, using the focus bar as a guide.
3. Release the mouse button.
The IDE repositions the selected files, groups, layouts, or build targets to the new location.
NOTE
In the Link Order page, repositioning files changes the link order that the Make command uses to build the final executable file.
Renaming Files/Groups/Targets
The Rename command renames files, groups, or build targets in the project.
Rename files
1. Open the file to rename.
2. Choose File > Save As.
3. Type a new filename in the Name text box.
4. Click Save.
The IDE saves the file under the new name. The new filename appears in the
Project window. Subsequent modifications affect the renamed file, leaving the original file intact.
Rename one or more groups
1. Click the Files tab in the Project window.
2. Select the group(s) to rename.
3. Press the Enter key.
IDE 5.6 User’s Guide
53
Project Window
File, Group, Layout, and Target Management
4. Type a new name into the Enter Group Name text box of the Rename
Group window.
5. Click OK.
The IDE renames the group. For selections of more than one group, the
Rename Group window appears for each group.
Rename build targets
1. Click the Targets tab in the Project window.
2. Choose Edit > targetname Settings.
3. Select Target Settings in the Target Settings Panels list.
4. Type a new name in the Target Name text box.
5. Click Save.
The Project window displays the new build target name.
Touching Files and Groups
The Touch command manually selects source files or groups for compilation during the next Bring Up To Date, Make, Run, or Debug operation. A red check mark in the Touch column of the Project window indicates a touched file.
1. Click the Files tab in the Project window.
2. Touch a source file or group for compilation.
Click the Touch column next to the file or group name.
OR
Choose Touch from the Interface menu for the file or group.
A red check mark appears in the Touch column next to the file or group name.
Touch all project files for recompiling
1. Perform the task explained in Table 4.8 on page 55
.
54
IDE 5.6 User’s Guide
Project Window
File, Group, Layout, and Target Management
Table 4.8 Touching all project files for recompiling
On this host… Do this…
Windows
Macintosh
Solaris
Linux
Alt-click the Touch column.
Option-click the Touch column.
Alt-click the Touch column.
Alt-click the Touch column.
2. Red check marks appear next to all files and groups.
Untouching Files and Groups
The Untouch command manually excludes source files or groups from compilation during the next Bring Up To Date, Make, Run, or Debug operation.
1. Click the Files tab in the Project window.
2. Untouch a source file or group to remove it from the compilation list.
Click the red check mark in the Touch column next to the file or group name.
OR
Choose Untouch from the Interface menu for the file or group.
The red check mark disappears from the Touch column next to the file or group name.
Untouch all project files
1. Perform the task explained in Table 4.9 on page 55
.
Table 4.9 Untouching all project files
On this host… Do this…
Windows
Macintosh
Alt-click a red checkmark in the Touch column.
Option-click a red checkmark in the Touch column.
IDE 5.6 User’s Guide
55
Project Window
Build-Target Management
Table 4.9 Untouching all project files (continued)
On this host… Do this…
Solaris
Linux
Alt-click a red checkmark in the Touch column.
Alt-click a red checkmark in the Touch column.
2. The red checkmarks next to all files and groups disappear.
Build-Target Management
These tasks help you manage build targets:
• Create a build target.
• Remove a build target.
• Set the default build target.
• Rename a build target.
• Configure build-target settings.
Creating Build Targets
The Create Target command adds new build targets to a project.
1. Open the Project window.
2. Click the Targets tab in the Project window.
3. Choose Project > Create Target.
4. Type a name in the Name text box of the New Target window.
5. Select the Empty target or Clone Existing Target radio button as desired.
• Empty Target—create a new build target from scratch.
• Clone Existing Target—duplicate an existing build target in the New
Target window.
6. Click OK.
The IDE adds the new build target to the project.
56
IDE 5.6 User’s Guide
Project Window
Build-Target Management
Removing Build Targets from a Project
You can remove unneeded build targets from the Project window.
1. Click the Targets tab in the Project window.
2. Select the item to remove.
3. Remove the selected build target, as explained in
.
Table 4.10 Removing the selected build target
On this host… Do this…
Windows
Macintosh
Solaris
Linux
Select
Edit > Delete
Select
Edit > Clear
Select
Edit > Delete
Select
Edit > Delete
The IDE removes the build target.
Setting the Default Build Target
The CodeWarrior Project Manager can handle up to 255 build targets in a single project. One build target must be defined as the default target when more than one project is open. The default target is the target affected by project commands, such as Make and Run.
The Project menu
1. Choose Project > Set Default Target > buildtarget.
2. A checkmark indicates the default target.
Using the Project window toolbar
1. Enable the Project window.
2. Choose the build-target name from the Current Target pop-up menu.
IDE 5.6 User’s Guide
57
Project Window
Build-Target Management
The Targets page
1. Enable the Project window.
2. Click the Targets tab.
3. Click the desired build-target icon.
The icon changes to indicate that the build target is now the default.
Renaming Build Targets
The Rename command renames build targets in a project.
1. Click the Targets tab in the Project window.
2. Choose Edit > targetname Settings.
3. Select Target Settings in the Target Settings Panels list.
4. Type a new name in the Target Name text box.
5. Save the new name.
The new build-target name appears in the Project window.
Configuring Build Target Settings
The Target Settings panel options determine:
• The compiler used to process the project and produce object code
• The linker used to combine object code and produce a binary file
• The pre-linker and post-linker options that further process the object code
• The name assigned to a build target
Follow these steps to configure build-target settings.
1. Choose Edit > targetname Settings.
2. Select Target Settings from the Target Setting Panels list.
3. Specify target options as desired.
4. Save the new options
The panels available in the Target Settings Panels list update to reflect the choices in the Target Settings panel.
58
IDE 5.6 User’s Guide
5
Working with Files
This chapter explains how to work with files in the CodeWarrior
™
IDE. Most computer programs use these file types:
• Text files—files that contain any type of text. Example text files include
Read Me files and source files.
• Source files—files that contain source code only. Example source files include C++ files and Java files.
Managing Files
These tasks manage files:
• Create a new file.
• Open an existing file.
• Save a file.
• Close a file.
• Print a file.
• Revert a file to a previously saved state.
Creating Text Files (Windows)
The New command opens a window from which you create new text files. You can use new text files as source files in a project or as plain-text files.
1. Select File > New.
The New window appears.
2. Click the File tab in the New window.
3. Select Text File in the list.
4. Type a filename in the File name text box.
IDE 5.6 User’s Guide
59
Working with Files
Managing Files
5. Click Set to specify the location to save the new file.
6. Click OK.
The IDE creates the new text file and displays its contents in a new editor window.
TIP
Use the Customize IDE Commands window to add the New Text File menu command to the File menu. Adding this menu command reduces the process of creating a new text file to one step: select
File > New Text
File. See “Customizing the IDE” on page 335
for more information about using the Customize IDE Commands window.
Creating Text Files (Macintosh, Solaris, Linux)
The New Text File command creates new text files. You can use new text files as source files in a project or as plain-text files.
Select File > New Text File to create a new text file. The IDE creates the new text file and displays its contents in a new editor window.
Opening Source Files
The Open command opens one or more editable source files. Each open file appears in its own editor window.
NOTE
The CodeWarrior editor cannot open files that prohibit editing. For example, the editor cannot open library files.
From the File menu
1. Choose File > Open.
2. Windows: Use the Files of type pop-up menu to select All Files.
3. Select a file.
4. Click Open.
The IDE displays the file in an editor window.
60
IDE 5.6 User’s Guide
Working with Files
Managing Files
From the Project window
1. Perform one of these:
• Double-click a filename in the Files tab of the Project window, or
• Select an interface filename from the Interface menu.
2. The IDE finds, opens, and displays the selected source file in an editor window.
From an editor window
1. Select an interface filename from the Interface menu.
2. The IDE selects, opens, and displays the source file in an editor window.
NOTE
The menu does not show files that do not contain source code or are not yet compiled.
Using Find and Open Files
1. In an editor window, select the name of an interface file, for example stdio.h
.
2. Choose File > Find and Open File.
The IDE finds, opens, and displays the source file in an editor window.
To open a recent file or project
1. Choose File > Open Recent > recentfilename | recentprojectname.
2. The IDE finds and opens the selected source file or project.
Saving Files
Use the Save command to save source files to ensure their continued existence between development sessions.
1. Choose File > Save.
IDE 5.6 User’s Guide
61
Working with Files
Managing Files
NOTE
If the file has no title, a save dialog appears. Type a filename and specify a location for the file, then click Save.
2. The IDE saves the file.
Saving All Modified Files
Use the Save All command to save the contents of all modified files. This command is useful for saving all files at the same time, rather than saving each file individually.
1. Save all currently opened and modified files, as explained in
.
Table 5.1 Saving all currently opened and modified files
On this host… Do this…
Windows
Macintosh
Solaris
Linux
Select
File > Save All
While pressing Option, select
File > Save All
Select
File > Save All
Select
File > Save All
2. The IDE saves the files.
Saving File Copies
Use the Save a Copy As command to save a back-up copy of a project or file before modifying the original. Working on a copy of the original file provides a way to return to the original copy should modifications fail.
1. Choose File > Save A Copy As.
2. Type a new filename in the Name text box.
3. Click Save.
62
IDE 5.6 User’s Guide
Working with Files
Managing Files
The IDE creates a copy of the file under the new name, leaving the original file unchanged.
Closing Files
The Close command closes open source files. Close editor windows to close a file.
1. Select an editor window to close.
2. Close the file window.
• Choose File > Close, or
• Click the close box.
NOTE
The IDE displays an alert if the file is modified. The alert asks whether to save changes to the file.
The IDE closes the file window.
Closing All Files
The Close All command closes all currently open files. This command is useful for closing all files at the same time, rather than closing each file individually.
1. Close all currently open files, as explained in Table 5.2 on page 63 .
Table 5.2 Closing all currently open files
On this host… Do this…
Windows
Macintosh
Select
Window > Close All
or
Window > Close All Editor Windows
.
While pressing Option, select
File > Close All
.
IDE 5.6 User’s Guide
63
Working with Files
Managing Files
Table 5.2 Closing all currently open files (continued)
On this host… Do this…
Solaris
Linux
Select
File > Close All
or
File > Close All
Editor Windows
Select
File > Close All
or
File > Close All
Editor Windows
2. The IDE closes the files.
Printing Source Files
The Print command prints the entire contents of a selected file window.
1. Activate the desired editor window to print.
2. Choose File > Print.
3. Set print options in the Print dialog.
4. Click OK or Print to print the file.
The IDE prints the selected file.
NOTE
Use the same process to print the contents of a window, such as a
Project window.
64
Printing Source-File Selections
The Print command prints the currently selected contents in an editor window.
1. Activate the desired editor window to print.
2. Select the portion of text to print.
3. Choose File > Print.
4. Set print options in the Print dialog.
5. Click OK or Print
The IDE prints the selected text in the file.
IDE 5.6 User’s Guide
Working with Files
Managing Files
Reverting Files
Use the Revert command to replace the current file with its previously saved version.
1. Choose File > Revert.
2. Click OK in the Revert changes to file dialog.
IDE 5.6 User’s Guide
65
Working with Files
Managing Files
66
IDE 5.6 User’s Guide
Editor
This section contains these chapters:
•
The CodeWarrior Editor on page 89
•
Editing Source Code on page 97
•
Navigating Source Code on page 113
•
Finding and Replacing Text on page 123
III
IDE 5.6 User’s Guide
67
68
IDE 5.6 User’s Guide
6
Dockable Windows
This chapter explains how to work with dockable windows in the Windowshosted CodeWarrior
™
IDE.
NOTE
Dockable windows is not available on Linux and Solaris platforms.
Use dockable windows to do these tasks:
• Organize—attach, or dock, various windows to the edges of the screen for quick access.
• Group—dock windows of the same type to create a single window with multiple tabs, where each tab represents one of the original docked windows.
NOTE
The dockable windows feature is available in Multiple Document
Interface (MDI) mode only. This feature is not available in Floating
Document Interface (FDI) mode. Toggle the
option in the
preference panel to change between these two modes.
This chapter contains these sections:
•
“About Dockable Windows” on page 69
•
“Working with Dockable Windows” on page 72
•
About Dockable Windows
You can dock certain windows to the edges of the main frame window of the
IDE.
explains possible states for dockable windows.
6.1 on page 71 shows the different window states.
IDE 5.6 User’s Guide
69
Dockable Windows
About Dockable Windows
In MDI mode, the IDE occupies a main window frame, or client area. IDE windows normally appear within this client area as you work. These windows are called child windows of the IDE’s client area.
Table 6.1 Window states
State Characteristics
Docked
Floating
MDI Child
• Attached to the left, right, top, or bottom edge of the client area
• restricted to the client area
• resizable
• has a dock bar instead of a title bar
• Rests above all docked windows and MDI child windows
• movable outside the client area, like a floating palette
• has a thin title bar
• does not have Minimize or Maximize buttons
• Normal child window of the client area, when running in
MDI mode
• restricted to the client area
70
IDE 5.6 User’s Guide
Figure 6.1 Window states
Dockable Windows
About Dockable Windows
Docked window
MDI child window
Table 6.2 on page 71 explains the difference between dockable windows and
non-dockable windows. In this table, the term non-modal refers to a window that does not require your attention before allowing the IDE to proceed with other operations.
Table 6.2 Differences between dockable and non-dockable windows
Window Type Required Criteria Sample Windows
Dockable
Non-dockable
All of these:
• non-modal
• resizable
• maximizable
Any of these:
• modal
• non-resizable
• non-maximizable
• Thread
• Project
• Component Catalog
• IDE Preferences
• Find
• About Box
IDE 5.6 User’s Guide
71
Dockable Windows
Working with Dockable Windows
NOTE
The default setting for project windows is to dock to an edge of the client area. You can undock these windows.
Compound windows that have more than one pane dock as a group.
You cannot separately dock individual panes from these windows. For example, you can dock the Thread Window, but you cannot dock the
Stack Crawl pane separately from the Thread Window.
Working with Dockable Windows
You can dock windows in one of two ways:
• dragging a floating window to a docking position
• using a contextual menu to dock a window
You can resize docked windows and undock them to floating windows or MDI child windows.
This section explains how to perform tasks with dockable windows.
Docking a Window By Using a Contextual Menu
Use a contextual menu to dock a floating window or MDI child window to one of the four edges of the client area.
1. Right-click the window title bar.
A contextual menu appears.
2. Choose Docked from the contextual menu.
NOTE
The Docked command appears in the contextual menu for dockable windows only.
The window docks to an edge of the client area. You can resize the docked window or move it to a different edge of the client area.
72
IDE 5.6 User’s Guide
Dockable Windows
Working with Dockable Windows
Docking a Window By Using Drag and Drop
You can drag a docked window or a floating window to one of the four edges of the client area to dock it.
1. Drag the window to one edge of the client area.
Drag a floating window by its title bar. Drag a docked window by its dock bar.
2. A window outline appears near the client-area edge, showing the final position after you release the window.
Use the outline as a visual cue that the IDE will dock the window. If an outline does not appear, you cannot dock the window.
3. Release the window to dock it to the edge.
The window appears in the position indicated by the window outline.
IDE 5.6 User’s Guide
73
Dockable Windows
Working with Dockable Windows
Docking Windows of the Same Kind
You can dock two or more windows of the same kind inside a single docked window. In this arrangement, tabs inside the single docked window represent each of the original docked windows. You can undock each tab individually from the single docked window.
1. Dock the first of two or more windows of the same kind to an edge of the client area.
2. Dock the second window to the same edge as the first window.
Use the window outline that appears as a visual cue that the IDE will dock the second window to the same edge as the first window.
3. Dock subsequent windows to the same edge as the first window.
Each additional docked window appears as a tab inside the first docked window. Click a tab to view its contents. The frontmost tab appears in bold font.
Figure 6.2 on page 75 shows two projects represented as tabs in a single docked
window.
74
IDE 5.6 User’s Guide
Figure 6.2 Two projects in a single docked window
Dockable Windows
Working with Dockable Windows
Undocking a Window
Use a contextual menu to undock a window from an edge of the client area to a floating window or MDI child window.
1. Right-click the tab inside the docked window that represents the window you want to undock.
A contextual menu appears.
IDE 5.6 User’s Guide
75
Dockable Windows
Working with Dockable Windows
Figure 6.3 Contextual menu
76
2. Choose Floating or MDI Child from the contextual menu.
• Floating—undock the window so that it becomes a floating window
• MDI child—undock the window so that it becomes an MDI child window of the client area
The window undocks and becomes the chosen window type.
Alternately, double-click the tab to undock the corresponding window to a floating window.
Floating a Window
Use a contextual menu to float a docked window or MDI child window.
1. Right-click the tab in the docked window or the title bar of the MDI child window.
A contextual menu appears.
2. Choose Floating from the contextual menu.
NOTE
The Floating command appears in the contextual menu for floatable windows only.
The window becomes a floating window (that you can drag outside the client area).
Alternately, double-click the tab in a docked window to float its corresponding window.
IDE 5.6 User’s Guide
Dockable Windows
Working with Dockable Windows
Unfloating a Window
Use a contextual menu to dock a floating window or make it an MDI child window.
1. Right-click the title bar of the floating window.
A contextual menu appears.
2. Choose Docked or MDI Child from the contextual menu.
• Docked—dock the floating window
• MDI child—unfloat the window so that it becomes an MDI child window
The window unfloats and becomes the chosen window type.
Alternately, drag the floating window to an edge of the client area to dock it.
Making a Window an MDI Child
Use a contextual menu to make a docked window or floating window an MDI child window.
1. Right-click the tab in the docked window or the title bar of the floating window.
A contextual menu appears.
2. Choose MDI Child from the contextual menu.
The docked window or floating window becomes an MDI child window.
Suppressing Dockable Windows
Suppress dockable windows to drag a window to any location onscreen without docking it to an edge of the client area.
1. Hold down the Ctrl key while dragging or floating an MDI child window.
The thin window outline that normally indicates docked-window placement becomes a heavy window outline. Use this heavy outline as a visual cue that the IDE suppresses dockable windows.
IDE 5.6 User’s Guide
77
Dockable Windows
Dock Bars
2. Release the window at its final position.
The window appears in the position indicated by the heavy window outline.
3. Release the Ctrl key.
Dock Bars
A docked window has a dock bar instead of a title bar. Use the dock bar to perform these tasks:
• move the docked window to a different edge of the client area
• collapse or expand view of the docked window
• close the docked window
Figure 6.4 on page 78 shows a dock bar.
Figure 6.4 Dock Bar
78
Collapsing a Docked Window
If two or more distinct docked windows occupy the same edge of the client area, you can collapse one docked window to view contents of other docked windows.
1. Dock two or more windows to the same edge of the client area.
The windows’ contents must appear in separate docked windows, not as tabs in a single docked window.
2. Click the collapse button you want to collapse.
on the dock bar of the docked window that
3. The docked window collapses to hide its contents.
Expanding a Docked Window
If you previously collapsed a docked window, you can expand it and view its contents.
IDE 5.6 User’s Guide
Dockable Windows
Dock Bars
1. Click the expand button on the dock bar:
2. The docked window expands to restore its original view.
Moving a Docked Window
Use the gripper in a docked window’s dock bar to move the docked window to a different edge of the client area.
1. Drag the docked window by the gripper in its dock bar:
2. Release the docked window at its new position.
Closing a Docked Window
Close a docked window directly from its dock bar.
1. Click the close button on the dock bar:
2. The docked window closes.
Re-opening the window restores its docked position.
IDE 5.6 User’s Guide
79
Dockable Windows
Dock Bars
80
IDE 5.6 User’s Guide
7
Workspaces
This chapter explains how to work with workspaces in the CodeWarrior
™
IDE.
Use workspaces to do these tasks:
• Organize—save the state of all windows onscreen for later reuse
• Migrate across computers—transfer your workspace from one computer to another
This chapter contains these sections:
•
•
About Workspaces
A workspace stores information about the current state of the IDE. This information consists of the size, location, and the docked state (Windows) of IDE windows. If you save a workspace during an active debugging session, the workspace also stores information about the state of debugging windows.
The IDE can use a default workspace, or it can use a workspace that you create.
The IDE works with one workspace at a time. You can save and re-apply a workspace from one IDE session to the next.
Using Workspaces
Use menu commands to perform these workspace tasks:
• save a new workspace
• open an existing workspace
• close the current workspace
IDE 5.6 User’s Guide
81
Workspaces
Using Workspaces
82
Using the Default Workspace
Use the default workspace to preserve IDE state from one session to the next.
The IDE saves and restores the default workspace automatically.
1. Choose
Edit > Preferences.
The IDE Preferences window opens.
2. Select IDE Extras in the IDE Preference Panels list.
The IDE Extras preference panel appears.
Use default workspace on page 456
option.
• Checked—the IDE saves its state at the time you quit, then restores that state the next time you launch the IDE
• Unchecked—the IDE always launches with the same default state: no windows visible
Saving a Workspace
Save a workspace to store information about the current state of onscreen windows, recent items, and debugging.
1. Arrange your workspace.
Move windows to your favorite positions and start or finish a debugging session.
2. Choose File > Save Workspace.
A Save dialog box appears.
3. Enter a name for the current workspace
NOTE
Add the extension
.cww
to the end of the workspace name, for example,
myworkspace.cww
. This extension helps you readily identify the workspace file. The Windows-hosted IDE requires this extension to recognize the file as a CodeWarrior workspace.
4. Save the workspace to a location on your hard disk.
The IDE now uses your saved workspace. In subsequent programming sessions, you can open the workspace.
IDE 5.6 User’s Guide
Workspaces
Using Workspaces
Opening a Workspace
Open a workspace to apply its settings to the IDE.
1. Choose
File > Open Workspace.
An Open dialog box appears.
2. Open the workspace.
Use this dialog box to navigate your hard disk and select a workspace file.
These files end in the
.cww
extension.
The IDE opens the selected workspace and applies its settings.
Saving a Copy of a Workspace
Save a copy of a current workspace under a different name.
1. Open an existing workspace.
2. Choose
File > Save Workspace As.
A Save As dialog box appears.
3. Enter a name for the copy of the current workspace
NOTE
Add the extension
.cww
to the end of the workspace name, for example,
myworkspace.cww
. This extension helps you readily identify the workspace file. The Windows-hosted IDE requires this extension to recognize the file as a CodeWarrior workspace.
4. Save the workspace to a location on your hard disk.
The IDE saves a copy of the current workspace under the name you specified.
Closing a Workspace
Close the current workspace after you finish working with it.
1. Choose
File > Close Workspace.
2. The IDE closes the current workspace.
IDE 5.6 User’s Guide
83
Workspaces
Using Workspaces
NOTE
You cannot close the default workspace, however, the IDE Extras preference panel contains an option that determines whether the IDE uses the default workspace.
You can now open a different workspace or quit the IDE.
Opening a Recent Workspace
You can list recently used workspaces in the Open Recent submenu. The
IDE Extras preference panel contains an option that determines the number of recent workspaces that the submenu will list.
1. Choose
File > Open Recent.
A submenu appears. This submenu lists recently opened projects, files, and workspaces. A checkmark appears next to the active workspace.
2. Choose a recent workspace from the Open Recent submenu.
The IDE applies the workspace that you select.
84
IDE 5.6 User’s Guide
8
Creating Console
Applications
This chapter explains how to work with console applications in the
CodeWarrior
™
IDE. Console applications provide these benefits to novice programmers:
• Simplicity—console applications are computer programs that use a simple text-mode interface. The simplicity of console-mode applications free novice programmers to learn a programming language without having to learn graphical user interface programming at the same time.
• Foundation—understanding console applications provides the basis for more advanced computer programming. Advanced programmers readily understand console applications.
Read this chapter to learn more about typical tasks for working with console applications.
This chapter contains these sections:
•
About Console Applications on page 85
•
Creating Console Applications on page 86
About Console Applications
A console application is a simple, text-based computer program. Console applications do not usually employ a graphical user interface (GUI). Instead, the applications rely on plain-text input and output in a terminal window.
Console applications are ideal for novice programmers. The applications are easier to program because they lack a GUI. If problems arise, the programmer can use text-based feedback together with the debugger to correct problems.
IDE 5.6 User’s Guide
85
Creating Console Applications
Creating Console Applications
Creating Console Applications
Create a console application to begin working with a text-based computer program. The CodeWarrior IDE provides pre-configured project stationery for creating console applications. Project stationery simplifies the project-creation process. This section explains how to create a console application.
Creating a Console Application
Use the New command to create a new project. The project stores information about the files in the console application.
1. Choose File > New.
The New window appears.
2. Click the Project tab.
3. Select a project stationery file.
4. Enter a project name in the Project name field and add the
.mcp
extension.
For example, name the project
test.mcp
.
5. Click Set.
Save the project in the desired location.
6. Click OK.
The New Project window appears.
7. Select a specific stationery file.
8. Click OK.
The IDE creates a console application from the selected stationery. The
Project window for the console application appears.
9. Expand the Sources group.
This group contains placeholder source files.
10.Remove placeholder source files.
For example, select
main.c
and choose Edit > Remove.
11.Create a new source file, as explained in
.
86
IDE 5.6 User’s Guide
Creating Console Applications
Creating Console Applications
Table 8.1 Creating a new source file
On this host… Do this…
Windows
Macintosh
Solaris
Linux
Press Ctrl-N
Press Command-N
Press Meta-N
Press Meta-N (File > New Text File)
12.Enter source code.
For example, enter this source code shown in Listing 8.1 on page 87 .
Listing 8.1 Sample source code
#include <stdio.h> int main( void )
{
printf(“Hello World!”);
return 0;
}
13.Save the source file, as explained in
.
Table 8.2 Saving the source file
On this host… Do this…
Windows
Macintosh
Solaris
Linux
Press Ctrl-S (File > Save)
Press Command-S
Press Meta-S
Press Meta-S (File > Save)
Enter a name for the source code. For example, enter
Hello.c
. Then click
Save.
IDE 5.6 User’s Guide
87
Creating Console Applications
Creating Console Applications
14.Choose Project > Add Hello.c to Project...
The Add Files window appears.
15.Add the file to all build targets in the project.
Select all checkboxes to add the file to all build targets, then click OK.
16.Drag the source file inside the Sources group.
17.Choose Project > Run.
The IDE compiles, links, then runs the console application.
88
IDE 5.6 User’s Guide
9
The CodeWarrior Editor
This chapter explains how to work with the editor in the CodeWarrior
™
IDE. Use the editor to perform these tasks:
• Manage text files—the editor includes common word-processing features for creating and editing text files. Sample text files include Read Me files and release notes.
• Manage source files—the editor includes additional features for creating and editing source files. The IDE processes source files to produce a program.
This chapter contains these sections:
•
•
•
“Other Editor Window Components” on page 94
Editor Window
Use the editor window to create and manage text files or source files. The window contains these major parts:
• Editor toolbar
• Text-editing area
• Line and column indicator
• Pane splitter controls
Figure 9.1 on page 90 shows the editor window. Table 9.1 on page 90
explains the items in the editor window.
IDE 5.6 User’s Guide
89
The CodeWarrior Editor
Editor Window
Figure 9.1 Editor window
Table 9.1 Editor window—items
Item
Icon
90
Explanation
Displays a list of referenced interface files or header files for the source file.
Displays a list of functions defined in the source file.
Displays a list of markers defined in the file.
IDE 5.6 User’s Guide
The CodeWarrior Editor
Editor Window
Table 9.1 Editor window—items (continued)
Item
Icon Explanation
Displays file-format options and a syntax-coloring toggle.
Displays a list of available Version
Control System (VCS) commands.
Choose a command to apply to the source file.
Displays the complete path to the file.
This icon indicates an unchanged file since the last save.
This icon indicates a file with modifications not yet saved.
Displays breakpoints for the file. Red dot indicates a user-specified breakpoint. Right-click on breakpoints column to bring up context menu.
IDE 5.6 User’s Guide
Shows the text or source-code content of the file.
91
The CodeWarrior Editor
Editor Toolbar
Table 9.1 Editor window—items (continued)
Item
Icon Explanation
Displays the current line and column number of the text-insertion cursor
Drag to split the window into panes.
Editor Toolbar
Use the editor toolbar to complete these tasks:
• Open interface and header files
• Find function definitions
• Set and clear markers
• Modify file formats
• Control syntax coloring
• Execute version-control operations
• Determine a file’s save state
This section explains how to expand and collapse the toolbar, and how to perform each toolbar task.
Expanding and Collapsing the Editor Window Toolbar
To expand the editor window toolbar, click this icon in the right-hand top corner of the editor window.
To collapse the Editor Window Toolbar, click this icon in the right-hand top corner of the Editor window.
Interfaces Menu
The Interfaces menu lists the source files included in the current source file.
92
IDE 5.6 User’s Guide
The CodeWarrior Editor
Editor Toolbar
See
“Finding Interface Files” on page 114 for information on navigating source
code with the Interfaces menu.
Functions Menu
The Functions menu lists the functions (routines) defined in the current file.
See “Locating Functions” on page 114
for information on navigating source code with the Functions pop-up.
Markers Menu
The Marker menu lists markers placed in the current file. Use markers to scroll to specific items in source code and find code segments by intuitive names.
See
“Using Markers” on page 116 for information on navigating source code
with Markers.
Document Settings Menu
The Document Settings menu shows whether the IDE applies syntax coloring to the window text, as well as the format in which the IDE saves the file.
Using the Document Settings Menu
Use the Document Settings pop-up to toggle syntax coloring on or off for the current file, and set the EOL (end-of-line) format for saving a text file.
The EOL formats are:
• Macintosh: <CR>
• DOS: <CR><LF>
• UNIX: <LF>
To toggle syntax coloring
• Choose Document Settings > Syntax Coloring.
The editor window updates to display the new syntax color setting.
IDE 5.6 User’s Guide
93
The CodeWarrior Editor
Other Editor Window Components
To specify the EOL format for the file
• Choose the EOL format for the file.
The IDE applies the specified EOL format to the file the next time it gets saved.
Version Control System Menu
In editor windows, the version control pop-up menu lists options provided by a version control system (VCS) compatible with the IDE. Use a VCS to manage multiple versions of files. VCS packages are available separately for use with the
IDE.
Using the Version Control System Menu
Use the Version Control System (VCS) pop-up menu to access version control commands related to the editor window’s file. If a version control system is not enabled for a project, the only item on the VCS menu is No Version Control
Available.
• Choose VCS > VCScommand
The IDE executes the VCS command.
Other Editor Window Components
Use other editor window components to perform these tasks:
• Determine the path to a file.
• Determine the modification status of a file.
• Set or clear breakpoints.
• Edit text or source code.
• Find the text-insertion point.
This section explains these additional editor window components.
94
IDE 5.6 User’s Guide
The CodeWarrior Editor
Other Editor Window Components
Path Caption
The Path caption shows the path to the active file. The directory delimiters follow host conventions. For example, slashes separate directories for a path on a
Windows computer and backslashes are used on Linux and Solaris.
File Modification Icon
The File Modification icon indicates the save status of the file:
• The icon indicates an unchanged file since the last Save.
• The icon indicates a file with modifications not yet saved.
Breakpoints Column
The Breakpoints column shows breakpoints defined in the current file. Each marker in the column indicates the line of source code at which the debugger suspends program execution.
Text Editing Area
The text editing area behaves the same way as it does in a word processor. Enter text or source code, perform edits, and copy or paste selections.
Line and Column Indicator
The Line and Column indicator shows the current position of the text-insertion point. Click the indicator to specify a line to scroll into view.
Pane Splitter Controls
Use the pane splitter controls to perform these tasks:
• Add panes to editor windows.
• Adjust pane size.
• Remove panes from editor windows.
This section explains how to perform each task.
IDE 5.6 User’s Guide
95
The CodeWarrior Editor
Other Editor Window Components
Adding Panes to an Editor Window
Use the Pane Splitter controls to add additional view panes in an editor window and view two or more sections of a source file at the same time.
1. Click and drag a Pane Splitter control to add a view pane.
2. The IDE adds a new view pane to the editor window.
Resizing Panes in an Editor Window
Use the Pane Resize controls to resize the panes in an editor window.
1. Click and drag a vertical or horizontal Pane Resize control.
2. The IDE resizes the selected view pane.
Removing Panes from an Editor Window
Use the Pane Resize controls to remove additional view panes from an editor window.
1. Remove an editor window pane.
• Double-click the Pane Resize control to remove the pane, or
• Click and drag the Pane Resize control to the left or top edge of the editor window.
2. The IDE removes the view pane from the editor window.
96
IDE 5.6 User’s Guide
10
Editing Source Code
This chapter explains how to edit source code in the CodeWarrior
™
IDE. The
IDE provides these features to help you edit source code:
• Select and indent text—the editor can select text by line, routine, or rectangular selection. The editor also handles text indentation.
• Balance punctuation—the editor can find matching pairs of parentheses, brackets, and braces. Most programming languages, such as C++, produce syntax errors for punctuation that lacks a counterpart.
• Complete code—the IDE can suggest ways to complete the symbols you enter in a source file
This chapter contains these sections:
•
“Text Manipulation” on page 97
•
“Punctuation Balancing” on page 100
•
Text Manipulation
Use these tasks to manipulate text files:
• Select text
• Overstrike text
• Use virtual space
• Indent text
This section explains how to perform each task.
Selecting Text in Editor Windows
The editor lets you select text in several ways while you edit source files.
IDE 5.6 User’s Guide
97
Editing Source Code
Text Manipulation
NOTE
Enable the Left margin click selects line option in the Editor
Settings preference panel to use the right-pointing arrow cursor.
Lines
Follow these steps to select a line of text:
• Triple-click anywhere on a line, or
• Click the right-pointing cursor in the left margin of the line.
Multiple lines
Follow these steps to select multiple lines of text:
• Drag the cursor over several lines of text and release, or
• Position the cursor at the beginning of a selection range, then Shift-click the end of the selection range to select all text between the two points, or
• Drag the right-pointing cursor to select lines of text.
Rectangular text selections
explains how to select rectangular portions of text.
Table 10.1 Selecting a rectangular portion of text
On this host...
Do this...
Windows
Macintosh
Solaris
Linux
Alt-drag the cursor over the portion of text.
Command-drag the cursor over the portion of text.
Alt-drag the cursor over the portion of text.
Alt-drag the cursor over the portion of text.
Entire routines
Follow these steps to select an entire routine:
1. Hold down the Shift key.
2. Choose a function name from the Function list menu.
98
IDE 5.6 User’s Guide
Editing Source Code
Text Manipulation
Overstriking Text (Windows OS)
Use the Overstrike command to toggle between text insertion and text overwriting mode when entering text. Press the Ins key to toggle overstrike mode.
Using Virtual Space
Use the Virtual Space feature to place the cursor anywhere in the white space of a line of source code and enter text at that position.
For example, consider the line of C++ code shown in Listing 10.1 on page 99
.
Listing 10.1 Sample C++ source code
void aFunction (const char * inMessage)
virtualspace
Toggling virtual space changes the cursor behavior:
• enabled—clicking in the virtualspace places the cursor at the location that you clicked. You can enter text at that location.
• disabled—clicking in the virtualspace places the cursor after the last character on the line (in the example, after the closing parenthesis). To place the cursor beyond this character, you must repeatedly press the space bar on your keyboard.
To use virtual space, follow these steps:
1. Select
Edit > Preferences.
The IDE Preferences window opens.
2. Select Editor Settings in the IDE Preference Panels list.
The Editor Settings preference panel appears.
3. Select the Enable Virtual Space option:
4. Click Apply or Save to save your changes to the preference panel.
5. Close the IDE Preferences window.
IDE 5.6 User’s Guide
99
Editing Source Code
Punctuation Balancing
Indenting and Unindenting Text Blocks
Use the Shift Left and Shift Right commands to shift a selected block of text to the left or right. You can indent or unindent one or more lines using these commands. The Tab Size option specifies the amount of indentation.
1. Select the text to be shifted.
2. Indent or unindent the selected text.
• To unindent text: Choose Edit > Shift-Left.
• To indent text: Choose Edit > Shift-Right.
Symbol Editing Shortcuts
You can use the browser contextual menu to enhance source-code editing in the
IDE. Use this menu to streamline text entry in editor windows. You can enter the first few letters of a function name, then use the browser contextual menu to complete the entry.
The IDE also provides these keyboard shortcuts with the browser enabled:
• Find symbols with prefix—find symbols matching the selected prefix
• Find symbols with substring—find symbols matching the selected substring
• Get next symbol—obtain the next symbol from the browser database
• Get previous symbol—obtain the previous symbol from the browser database
See the IDE Quick Reference card for more information about these keyboard shortcuts.
Punctuation Balancing
Balance punctuation to ensure that each opening parenthesis, bracket, or brace has a corresponding closing counterpart. This section explains how to balance punctuation.
100
IDE 5.6 User’s Guide
Editing Source Code
Punctuation Balancing
Balancing Punctuation
Use the Balance option when editing source code to make sure that every parenthesis (( )), bracket ([ ]), and brace ({ }) has a mate.
1. Position the cursor between the suspect punctuation.
2. Check for the matching punctuation.
• Choose Edit > Balance
OR
• Double-click the parenthesis, bracket, or brace character to check for a matching character.
From a text insertion point, the editor searches forward until it finds a parenthesis, bracket, or brace, then it searches in the opposite direction until it finds the matching punctuation. When double-clicking on a parenthesis, bracket, or brace, the editor searches in the opposite direction until it finds the matching punctuation.
When it finds a match, it highlights the text between the matching characters. If the insertion point is not enclosed or if the punctuation is unbalanced, the computer beeps.
Toggling Automatic Punctuation Balancing
Use the Editor Settings to enable or disable the punctuation balancing feature.
IDE 5.6 User’s Guide
101
Editing Source Code
Code Completion
Figure 10.1 Editor Settings (Balance While Typing)
To toggle automatic punctuation balancing, follow these steps:
1. Select Edit > Preferences.
This opens the IDE Preferences window.
2. In the IDE Preference Panels list, select Editor Settings.
3. In the Other Settings area of Editor Settings, select or clear the Balance
While Typing checkbox.
Code Completion
Use code completion to have the IDE automatically suggest ways to complete the symbols you enter in a source file. By using code completion, you avoid referring to other files to remember available symbols.
C/C++ Code Completion will function more effectively when “Language Parser” is selected for the “Generate Browser Data From” option in the Build Extras target settings panel for a project. Java Code Completion is not affected by this setting.
102
IDE 5.6 User’s Guide
Editing Source Code
Code Completion
Code Completion Configuration
You can activate, deactivate, and customize code-completion operation. These tasks are associated with code completion:
• Activate automatic code completion
• Trigger code completion from the IDE menu bar
• Trigger code completion from the keyboard
• Deactivate automatic code completion
Activating Automatic Code Completion
Activate automatic code completion to have the IDE display a Code Completion window that helps you complete the symbols you enter in source code. The Code
Completion preference panel configures the Code Completion window behavior.
1. Choose
Edit > Preferences.
The IDE Preferences window appears.
2. Select the Code Completion preference panel in the IDE Preference Panels list.
Automatic Invocation on page 425
option.
Selecting this option configures the IDE to automatically open the Code
Completion window.
Code Completion Delay on page 428
field.
This delay determines how long the IDE waits between the time you type a trigger character and the time the Code Completion window appears. If you perform any action during this delay time, the IDE cancels the Code
Completion operation.
5. Save your preferences.
Click the Save or Apply button.
The Code Completion window now appears automatically to help you complete code in editor windows.
IDE 5.6 User’s Guide
103
Editing Source Code
Code Completion
Triggering Code Completion from the IDE Menu
Trigger code completion from the main menu to open the Code Completion window.
1. Bring forward an editor window.
2. Begin typing or place insertion point at end of source code that you want to complete.
3. Choose
Edit > Complete Code
The Code Completion window appears. Use it to complete the symbol at the insertion point.
Triggering Code Completion from the Keyboard
To open code completion from the keyboard:
1. Bring forward an editor window.
2. Begin typing or place insertion point at end of source code to complete.
3. Press the appropriate code completion shortcut key combination.
lists the default code completion key bindings for each IDE host. Use the Customize IDE Commands panel to change these key bindings.
Table 10.2 Code Completion key bindings
Host
Windows
Macintosh
Linux/Solaris
Get Next
Completion
Alt-/
Control-/
Control-/
Get Previous
Completion
Alt-Shift-/
Control-Shift-/
Control-Shift-/
Complete
Code
Alt-.
Control-.
Control-.
104
IDE 5.6 User’s Guide
Editing Source Code
Code Completion
Deactivating Automatic Code Completion
Deactivate automatic code completion to prevent the IDE from displaying the
Code Completion window as you edit source code. The Code Completion preference panel configures Code Completion window behavior.
You can still manually trigger code-completion functionality from the keyboard or from the main menu.
NOTE
To dismiss the Code Completion window after it automatically opens, press the Esc key or click outside the active editor window.
1. Choose
Edit > Preferences.
2. Select the Code Completion preference panel in the IDE Preference Panels list.
3. Disable the
Automatic Invocation on page 425
Clearing this option prevents the IDE from automatically opening the Code
Completion window.
4. Save your preferences.
Click the Save or Apply button.
Code Completion Window
The Code Completion window displays possible symbols based on the context of the insertion point. For example, in Java you can complete code for any Java class, method, and variable from any package that has been imported or is being used elsewhere in the project.
Figure 10.2 on page 106 shows the Code Completion window. Table 10.3 on page 106
explains the items in the Code Completion window. Table 10.4 on page 107
explains the icons that appear in the Code Completion list.
IDE 5.6 User’s Guide
105
Editing Source Code
Code Completion
Figure 10.2 Code Completion window
Table 10.3 Code Completion window—items
Item
Code
Completion list
Icon
Disclosure
Triangle
Explanation
Lists available variables and methods or functions along with their corresponding return types or parameters. This list changes based on the context of the insertion point in the active editor window. Icons help distinguish items in the list.
Click to toggle display of Documentation pane for programming languages that support it.
Resize Bar Drag to resize the Code Completion list and the
Documentation pane.
Documentation pane
Displays summary information or documentation for the selected item in the
Code Completion list. This pane appears only for programming languages that support summary information or documentation.
106
IDE 5.6 User’s Guide
Editing Source Code
Code Completion
Table 10.4 Code Completion window—icons
Icon Code Type Icon Code Type
Class Method
Function
Global Variable
Namespace
None
Language
Keyword
Local Variable
Constant
Package
Variable
Navigating the Code Completion Window
Navigate the Code Completion window by mouse or keyboard. You can perform these tasks:
• Resize the window
• Navigate the window by keyboard
• Refine the Code Completion list by keyboard
1. Bring forward an editor window.
2. Place the insertion point at the end of the source code to complete.
3. Choose Edit > Complete Code or use keyboard shortcut.
The Code Completion window appears.
4. Use the mouse to resize the Code Completion window (Mac and Windows).
The new window size remains in effect until you refine the Code Completion list or close the Code Completion window. You refine the Code Completion list by typing additional characters in the active editor window.
IDE 5.6 User’s Guide
107
Editing Source Code
Code Completion
5. Use the keyboard to navigate the Code Completion list.
explains how to navigate the Code Completion list by keyboard.
Table 10.5 Navigating the Code Completion list by keyboard
Key
Up Arrow
Down Arrow
Page Up
Page Down
Action
Select the previous item
Select the next item
Scroll to the previous page
Scroll to the next page
6. Use the keyboard to refine the Code Completion list.
The Code Completion list updates as you add or delete characters in the active editor window. Continue adding characters to narrow the list, or delete existing characters to broaden the list. Press the Backspace key to delete characters.
Selecting an Item in the Code Completion Window
Select an item in the Code Completion window to have the IDE enter that item in the active editor window at the insertion point.
1. Bring forward an editor window.
2. Place the insertion point at the end of the source code to complete.
3. Choose Edit > Complete Code.
4. Select an item in the Code Completion list.
5. Enter the item into the active editor window.
Press the Return or Enter keys on the keyboard or double-click the item to have the IDE insert that item into the editor window.
108
IDE 5.6 User’s Guide
Editing Source Code
Code Completion
Completing Code for Data Members and Data Types
Complete code for data members for programming languages that support it. For a list of data members type the period (
.)
character and activate the code completion window.
Figure 10.3 on page 109 shows an example of helping you
select the correct data type depending on what code has been typed in the source file.
Figure 10.3 Code Completion List of Data Types
Completing Code for Parameter Lists
Complete code for parameter lists for programming languages that support it. For example, you can complete code for parameter lists by typing the open parenthesis
(
character.
1. Bring forward an editor window.
2. Place the insertion point at the end of the function or method to complete.
3. Type an open parenthesis to trigger a parameter-list.
IDE 5.6 User’s Guide
109
Editing Source Code
Code Completion
4. The Code Completion window appears.
The upper portion of this window lists different (overloaded) versions of the function or method. The lower portion shows possible parameter lists for the selected function or method in the top portion. Use this window to complete the parameter list for the function or method.
Figure 10.4 Code Completion for Parameter Lists
110
Completing Code for Pragmas
In the Mac or Windows hosted IDE you can display a list of pragmas in the code completion window.
1. Bring forward an editor window.
2. In your source file, type #pragma followed by a space.
3. Activate the code completion window (cntrl . or Alt .).
The code completion window will display list of pragmas.
IDE 5.6 User’s Guide
Figure 10.5 Code Completion for Pragmas
Editing Source Code
Code Completion
IDE 5.6 User’s Guide
111
Editing Source Code
Code Completion
112
IDE 5.6 User’s Guide
11
Navigating Source Code
This chapter explains how to navigate source code in the CodeWarrior
™
IDE.
Navigate source code to accomplish these tasks:
• Find specific items—the editor finds interface files, functions, and lines of source code.
• Go to a specific line—the editor can scroll to a specific line of source code.
• Use markers—the editor allows labelling of specific items of text. These labels, or markers, provide intuitive navigation of text.
Read this chapter to learn more about typical tasks for navigating source code.
This chapter contains these sections:
•
“Finding Interface Files, Functions, and Lines” on page 113
•
“Going Back and Forward” on page 116
•
•
“Symbol Definitions” on page 119
•
“Reference Templates (Macintosh)” on page 120
Finding Interface Files, Functions, and
Lines
Find interface files, functions, and lines of source code to expedite programming.
You can find these types of items:
• interface files
• functions
• lines of source code
IDE 5.6 User’s Guide
113
Navigating Source Code
Finding Interface Files, Functions, and Lines
Finding Interface Files
Find interface (header) files referenced by the current source code. Some programming languages, such as C++, use interface files in conjunction with source code. Interface files typically define functions or objects used in the source code. Interface files also separate function or object declarations from implementations. This section explains how to find interface files.
Using the Interface Menu
Use the Interface menu in editor windows to open interface or header files referenced by the current file. The project file must be open for the Interface menu to operate.
1. Click the Interface menu.
2. Select the filename of the interface file that you want to open.
If found, the file is opened in an editor window. If not found, an alert sounds.
NOTE
Only source code interface files can be opened. Libraries and precompiled header files can not be opened.
Locating Functions
Find functions to expedite source-code editing. Most source files contain several functions that divide a complicated task into a series of simpler tasks. The editor allows scrolling to individual functions within the current source file. This section explains how to find functions.
Using the Functions Menu
Use the Functions menu in editor windows to quickly navigate to specific functions or routines in the current source file.
1. Click the Functions menu.
2. Select the function name to view.
The editor scrolls to display the selected function.
114
IDE 5.6 User’s Guide
Navigating Source Code
Finding Interface Files, Functions, and Lines
Alphabetizing Functions Menu with the Mouse and Keyboard
The default behavior of the Functions menu is to list functions in order of appearance in the source file. You can use the mouse and keyboard to list functions in alphabetical order.
Table 11.1 on page 115 Alphabetizing the Functions list on page 115 explains
how to use the mouse and keyboard to alphabetize functions in the Functions menu.
Table 11.1 Alphabetizing the Functions list
On this host...
Do this...
Windows
Macintosh
Solaris
Linux
Ctrl-click the Functions menu.
Option-click the Functions menu.
Alt-click the Functions menu.
Alt-click the Functions menu.
Alphabetizing Functions Menu Order
The default behavior of the Functions menu is to list functions in order of appearance in the source file. You can select the
Sort function popup on page 453
option in the Editor Settings preference panel to list functions in
alphabetical order.
1. Open the IDE Preferences window.
Choose Edit > Preferences.
2. Select the Editor Settings preference panel.
Sort function popup on page 453
option.
4. Save your modifications to the Editor Settings panel.
IDE 5.6 User’s Guide
115
Navigating Source Code
Going Back and Forward
Going Back and Forward
Go back and forward in source files to edit existing code. Most source files contain more than one screen of code. The editor always counts the number of lines in the source files. Go to a particular line to scroll a particular item into view.
Going to a Line
Use the Goto Line command to navigate to a specific source line in an editor window if you know its number. Lines are numbered consecutively, with the first line designated as line 1. The Line Number control at the bottom of the editor window shows the line number where the text insertion point is positioned.
1. Open the Line Number window.
• Click the Line and Column Indicator control in bottom left corner of editor window, or
• Choose Search > Go To Line
2. Type a line number in the Line Number text box.
3. Click OK.
NOTE
If a line number does not exist, the insertion point jumps to the last line of the source file.
Using Markers
Markers behave like labels in the editor, identifying specific parts of source code.
Use these tasks to work with markers:
• Add markers to a source file
• Navigate to a marker
• Remove some or all markers from a source file
116
IDE 5.6 User’s Guide
Navigating Source Code
Using Markers
Remove Markers Window
Use the Remove Markers window to manage the use of destination markers in source files.
Figure 11.1 on page 117 shows the Remove Markers window. Table
11.2 on page 117 explains the items in the window.
Figure 11.1 Remove Marker window
Table 11.2 Remove Markers window—items
Item
Markers list
Remove button
Cancel button
Done button
Explanation
Displays a list of all markers in the current source file.
Click to remove all selected markers.
Click to close the Remove Markers window without applying changes.
Click to close the Remove Markers window and apply changes.
Adding Markers to a Source File
Use the Add Marker command to add a marker to a file to identify specific line locations by name.
1. Position the cursor on a line.
2. Click on Marker icon and select Add Marker.
IDE 5.6 User’s Guide
117
Navigating Source Code
Using Markers
3. Type a name for the new marker.
4. Click Add.
The IDE adds the marker to the file.
Navigating to a Marker
Once you add a marker, you can use the Marker menu to return to it later.
1. Select the marker name from the Marker menu.
2. The editor window scrolls to display the selected marker.
Removing a Marker from a Source File
Use the Remove Marker command to remove one or more markers from a source file.
1. Click Marker icon and select Remove Markers
2. Select the marker name to remove from the list.
3. Click Remove.
The IDE removes the selected marker.
Removing All Markers from a Source File
Use the Remove Marker command to remove one or more markers from a source file.
1. Click Marker icon and select Remove Markers
2. Select all markers in the Markers list, as explained in
.
118
IDE 5.6 User’s Guide
Navigating Source Code
Symbol Definitions
Table 11.3 Selecting all markers in the Markers list
On this host… Do this…
Windows
Macintosh
Solaris
Linux
Shift-click each marker name in the list.
Select
Edit > Select All
.
Select
Edit > Select All
.
Select
Edit > Select All
.
3. Click Remove.
The IDE removes all markers.
Symbol Definitions
You can find a symbol definition in your project’s source code. For the Mac OS, you can also look up a symbol definition using the online documentation viewer in the IDE Extras selection in the IDE Preferences panel.
Supported online reference viewers include HTMLHelp (Windows) and
QuickHelp (Mac OS), as well as older online help systems such as QuickView
(Mac OS) and THINK Reference (Mac OS).
TIP
You can also use the browser to look up symbol definitions.
Figure 11.2 Find Definition
IDE 5.6 User’s Guide
119
Navigating Source Code
Reference Templates (Macintosh)
Looking Up Symbol Definitions
To look up the definition of a selected symbol, follow these steps:
1. Choose
Search > Find Definition
2. Enter the symbol definition.
3. Click OK.
CodeWarrior searches all files in your project for the symbol definition.
If CodeWarrior finds a definition, it opens an editor window and highlights the definition for you to examine.
TIP
To return to your original location after viewing a symbol definition, press Shift-Ctrl B (Windows) or Shift-Command B (Mac OS) or Meta-
Shift B (Linux/Solaris). This key binding is equivalent to the Go Back menu command.
Mac OS, Solaris, and Linux You can also use the Find Reference and Find
Definition & Reference commands to look up symbol definitions. After you select a symbol and choose the Find Reference command, CodeWarrior searches the online documentation for the symbol definition. After you select a symbol and choose the Find Definition & Reference command, the IDE searches both the project files and the online documentation for the symbol definition. If
CodeWarrior does not find a definition or reference, it notifies you with a beep.
Reference Templates (Macintosh)
If you look up a routine (such as an operating system call) in the QuickView or
THINK Reference online viewers, you can paste the template for the call into the editor window at the text-insertion point. If you know the name of the call that you want to add, but are not familiar with the call parameters, this technique is useful.
shows a sample routine template.
Listing 11.1 Sample routine template
SetRect (r, left, top, right, bottom);
120
IDE 5.6 User’s Guide
Navigating Source Code
Reference Templates (Macintosh)
Inserting a Reference Template
To insert a reference template into your code, follow these steps:
1. From the online viewer window, type the routine name that you want to insert.
2. Select the name you just typed.
3. Choose Insert Reference Template from the Edit menu.
The IDE searches for the routine in either QuickView (Mac OS) or THINK
Reference (Mac OS), starting the required application if it is not already running. If the IDE finds the routine, the IDE copies the template to the active editor window and replaces the text you selected with the template.
IDE 5.6 User’s Guide
121
Navigating Source Code
Reference Templates (Macintosh)
122
IDE 5.6 User’s Guide
Finding and Replacing
Text
12
This chapter explains how to work with the find-and-replace features in the
CodeWarrior
™
IDE.
This chapter contains these sections:
•
“Single-File Find” on page 123
•
“Single-File Find and Replace” on page 126
•
“Multiple-File Find and Replace” on page 129
•
“Search Results Window” on page 141
•
“Text-Selection Find” on page 143
•
“Regular-Expression Find” on page 145
•
“Comparing Files and Folders” on page 148
Single-File Find
Use the Find window to search for text within a single file:
• The Find operation returns a single instance of matching text.
• The Find All operation returns all instances of matching text.
Figure 12.1 on page 124 shows the Find window. Table 12.1 on page 124
explains the items in the Find window.
IDE 5.6 User’s Guide
123
Finding and Replacing Text
Single-File Find
Figure 12.1 Find window
Table 12.1 Find window—items
Item
Find text/list box
Find button
Find All button
Cancel button
Match whole word checkbox
Explanation
Enter a search string. Click the arrow symbol to select a search string that you entered previously.
Click to start a search operation using the string in the Find text/list box.
Click to search for all matches in the active editor window.
Click to close the Find window without performing a search.
Check to search for whole-word matches only, ignoring matches within words.
Case sensitive checkbox
Regular expression checkbox
Clear to search for all matches of the search string, including matches within words.
Check to consider text case during the search. The search operation distinguishes between a capital letter and the same letter in lower case.
Clear to disregard text case during the search. The search operation does not distinguish between a capital letter and the same letter in lower case.
Check to treat the search string as a regular expression.
Clear to treat the search string as plain text.
124
IDE 5.6 User’s Guide
Finding and Replacing Text
Single-File Find
Table 12.1 Find window—items (continued)
Item
Stop at end of file checkbox
Search up checkbox
Explanation
Check to stop a search at the end of a file and not wrap around to the beginning of the file.
Clear to wrap around to the beginning of the file and continue a search. The search stops at the first match or at the current cursor position.
Check to perform a search operation back from the current selection.
Search selection only checkbox
Clear to perform a search operation forward of the current selection
Check to search only the currently selected text and not the entire file.
Clear to search the entire file.
Select to search all text in the file.
All text option button
Code only option button
Comments only option button
Select to search only source code in the file.
Select to search only comments in the file.
Searching Text in a Single File
Use the Find command to search for text in the active editor window.
1. Click Search >
Find.
The Find window appears.
NOTE
(Mac OS, Solaris, and Linux) Use the Customize IDE Commands window to activate the Find menu command.
2. Enter search text into Find text/list box.
3. Set search options.
IDE 5.6 User’s Guide
125
Finding and Replacing Text
Single-File Find and Replace
4. Click the Find or Find All button to start the search.
The IDE searches the current file until it finds a match or reaches the end of the search. A single match appears highlighted in the editor window, or multiple matches appear in a Search Results window. The IDE beeps if it does not find any matching text.
TIP
If you clicked the Find button to start the search, click
Search >
Find Next to find the next match in the file.
Single-File Find and Replace
Use the Find and Replace window to perform these tasks:
• Search a single file.
• Replace found text in a single file.
shows the Find and Replace window. Table 12.2 on page 127
explains the items in the Find and Replace window.
Figure 12.2 Find and Replace window
126
IDE 5.6 User’s Guide
Finding and Replacing Text
Single-File Find and Replace
Table 12.2 Find and Replace window—items
Item
Find text/list box
Replace with text/list box
Find button
Replace button
Replace All button
Cancel button
Match whole word checkbox
Explanation
Enter a search string. Click the arrow symbol to select a search string that you entered previously.
Enter the replacement string. Click the arrow symbol to select a replacement string that you entered previously.
Click to start a search operation using the string in the Find text/list box.
Click to replace the current match with the replacement string.
Click to replace all matches with the replacement string.
Click to close the Find and Replace window without performing a search.
Check to search for whole-word matches only, ignoring matches within words.
Case sensitive checkbox
Clear to search for all matches of the search string, including matches within words.
Check to consider text case during the search. The search operation distinguishes between a capital letter and the same letter in lower case.
Regular expression checkbox
Stop at end of file checkbox
Clear to disregard text case during the search. The search operation does not distinguish between a capital letter and the same letter in lower case.
Check to treat the search string as a regular expression.
Clear to treat the search string as plain text.
Check to stop a search at the end of a file and not wrap around to the beginning of the file.
Clear to wrap around to the beginning of the file and continue a search. The search stops at the first match or at the current cursor position.
IDE 5.6 User’s Guide
127
Finding and Replacing Text
Single-File Find and Replace
Table 12.2 Find and Replace window—items (continued)
Item
Search up checkbox
Search selection only checkbox
Explanation
Check to perform a search operation back from the current selection.
Clear to perform a search operation forward of the current selection
Check to search only the currently selected text and not the entire file.
Clear to search the entire file.
Select to search all text in the file.
All text option button
Code only option button
Comments only option button
Select to search only source code in the file.
Select to search only comments in the file.
Replacing Text in a Single File
Use the Replace command to replace matching text.
1. Click
Search > Replace or Search > Find and Replace.
The Find window appears.
2. Enter search text into the Find text/list box.
3. Enter replacement text into the Replace with text/list box.
4. Set search options.
5. Find and replace text: a. Click the Find button to search for matching text.
The IDE searches the current file until it finds a match or reaches the end of the search. A single match appears highlighted in the editor window.
The IDE beeps if it does not find any matching text.
128
IDE 5.6 User’s Guide
Finding and Replacing Text
Multiple-File Find and Replace
b. Click the Replace or Replace All button to replace the matching text.
Click the Replace button to replace the current match. Click the Replace button repeatedly to replace subsequent matches. Click the Replace All button to replace all matching text in the file.
To replace consecutive matches, click the Find button to find the first match, then repeatedly click the Replace button. To replace one match at a time, or to replace non-consecutive matches, click the Find button to find a match, then click the
Replace button as needed.
TIP
If you clicked the Find button to start the search, click
Search >
Find Next to find the next match in the file.
Multiple-File Find and Replace
Use the Find in Files window to perform these tasks:
• Search several files.
• Replace found text in multiple files, folders, symbolics files, or projects.
• Replace found text in files within a specific build target.
Figure 12.3 on page 130 shows the Find in Files window. Table 12.3 on page 130
explains the items in the window.
IDE 5.6 User’s Guide
129
Finding and Replacing Text
Multiple-File Find and Replace
Figure 12.3 Find in Files window
Table 12.3 Find in Files window—items
Item Explanation
Find text/list box
Replace with text/list box
Find button
Enter a search string. Click the arrow symbol to select a search string that you entered previously.
Enter the replacement string. Click the arrow symbol to select a replacement string that you entered previously.
Click to start a search operation using the string in the Find text/ list box.
Find All button
Replace button
Click to search for all matches in the selected items.
Click to replace the current match with the replacement string.
Replace All button Click to replace all matches with the replacement string.
130
IDE 5.6 User’s Guide
Finding and Replacing Text
Multiple-File Find and Replace
Table 12.3 Find in Files window—items (continued)
Item
Stop button
Match whole word checkbox
Case sensitive checkbox
Explanation
Click to stop the current operation.
Check to search for whole-word matches only, ignoring matches within words.
Clear to search for all matches of the search string, including matches within words.
Check to consider text case during the search. The search operation distinguishes between a capital letter and the same letter in lower case.
Clear to disregard text case during the search. The search operation does not distinguish between a capital letter and the same letter in lower case.
Check to treat the search string as a regular expression.
Clear to treat the search string as plain text.
Select to search all text in the selected items.
Regular expression checkbox
All text option button
Code only option button
Comments only option button
Select to search only source code in selected items.
Select to search only comments in selected items.
Click to bring forward the In Folders page. Use this page to search specific folders in the host file system.
Click to bring forward the In Projects page. Use this page to search active projects and build targets.
Click to bring forward the In Symbolics page. Use this page to search files containing symbolics (debugging and browsing) information generated by the IDE.
Click to bring forward the In Files page. Use this page to search files contained in custom file sets.
IDE 5.6 User’s Guide
131
Finding and Replacing Text
Multiple-File Find and Replace
In Folders
Use the In Folders page to search folder contents for matching text. Figure
12.4 on page 132 shows the In Folders page. Table 12.4 on page 132
explains the items in the page.
Figure 12.4 Find in Files window—In Folders page
Table 12.4 Find in Files window—In Folders items
Item
Search in text/list box
Browse button
Search sub-folders checkbox
Explanation
Enter the path to the folder that you want to search. Click the arrow symbol to select a path that you entered previously.
Click to open a dialog box that lets you pick the folder that you want to search.
Check to search sub-folders of the selected folder.
By type text/list box
Clear to search the selected folder only, ignoring any subfolders it may contain.
Enter the filename extensions of the files that you want to search. Click the arrow symbol to select a set of filename extensions.
The search ignores files whose filename extensions do not appear in this text/list box.
132
IDE 5.6 User’s Guide
Finding and Replacing Text
Multiple-File Find and Replace
Searching for Text Across Multiple Folders
Use the In Folders page to search for text in folder contents.
1. Click Search >
Find in Files.
The Find in Files window appears.
2. Enter search text into the Find text/list box.
3. Enter replacement text into the Replace with text/list box.
4. Set general search options.
5. Set the In Folders page search options: a. Enter a folder path into the Search in text/list box, or click the Browse button to select a folder.
b. Check or clear the Search sub-folders checkbox.
c. Enter filename extensions into the By type text/list box.
6. Find and replace text: a. Click the Find or Find All button to search for matching text.
The IDE searches the specified folder contents until it finds a match or reaches the end of the search. A single match appears highlighted in an editor window, or multiple matches appear in a Search Results window.
The IDE beeps if it does not find any matching text.
b. Click the Replace or Replace All button to replace the matching text.
Click the Replace button to replace the current match. Click the Replace button repeatedly to replace subsequent matches. Click the Replace All button to replace all matching text.
To replace consecutive matches, click the Find button to find the first match, then repeatedly click the Replace button. To replace one match at a time, or to replace non-consecutive matches, click the Find button to find a match, then click the
Replace button as needed.
TIP
If you clicked the Find button to start the search, click
Search >
Find Next to find the next match.
IDE 5.6 User’s Guide
133
Finding and Replacing Text
Multiple-File Find and Replace
In Projects
Use the In Projects page to search active projects and build targets for matching
text. Figure 12.5 on page 134 shows the In Projects page. Table 12.5 on page 134
explains the items in the page.
Figure 12.5 Find in Files window—In Projects page
Table 12.5 Find in Files window—In Projects items
Item
Project list box
Target list box
Project sources checkbox
Project headers checkbox
System headers checkbox
Search cached subtargets checkbox
File list
Explanation
Specify the projects that you want to search.
Specify the build targets that you want to search.
Check to search the source-code files of selected projects.
Clear to ignore source-code files of selected projects.
Check to search the header files of selected projects.
Clear to ignore header files of selected projects.
Check to search system header files.
Clear to ignore system header files.
Check to search sub-targets that the IDE cached for the selected build targets.
Clear to ignore the sub-targets that the IDE cached for the selected build targets.
This list shows files that the IDE will search. To remove a file from this list, select it and press Backspace or Delete. To open a file in this list, double-click its name.
134
IDE 5.6 User’s Guide
Finding and Replacing Text
Multiple-File Find and Replace
Searching for Text Across Multiple Projects
Use the In Projects page to search for text in active projects and build targets.
1. Click
Project > Make.
The IDE updates the project data to correctly list source-code files, header files, and build targets in the In Projects page of the Find in Files window.
2. Click Search >
Find in Files.
The Find in Files window appears.
3. Enter search text into the Find text/list box.
4. Enter replacement text into the Replace with text/list box.
5. Set general search options.
6. Set the In Projects page search options: a. Use the Project list box to specify the projects that you want to search.
b. Use the Target list box to specify the build targets that you want to search.
c. Check or clear the checkboxes to refine your search criteria.
d. Remove files from the File list as needed.
7. Find and replace text: a. Click the Find or Find All button to search for matching text.
The IDE searches the specified projects and build targets until it finds a match or reaches the end of the search. A single match appears highlighted in an editor window, or multiple matches appear in a Search Results window. The IDE beeps if it does not find any matching text.
b. Click the Replace or Replace All button to replace the matching text.
Click the Replace button to replace the current match. Click the Replace button repeatedly to replace subsequent matches. Click the Replace All button to replace all matching text.
To replace consecutive matches, click the Find button to find the first match, then repeatedly click the Replace button. To replace one match at a time, or to replace non-consecutive matches, click the Find button to find a match, then click the
Replace button as needed.
IDE 5.6 User’s Guide
135
Finding and Replacing Text
Multiple-File Find and Replace
TIP
If you clicked the Find button to start the search, click
Search >
Find Next to find the next match.
In Symbolics
Use the In Symbolics page to search files containing symbolics information for
matching text. Figure 12.6 on page 136 shows the In Symbolics page. Table
12.6 on page 136 explains the items in the page.
Figure 12.6 Find in Files window—In Symbolics page
Table 12.6 Find in Files window—In Symbolics items
Item
Symbolics list box
Symbolics list
Explanation
Specify the symbolics files that you want to search.
This list shows the symbolics files that the IDE will search. To remove a file from this list, select it and press Backspace or
Delete. To open a file in this list, double-click its name.
136
IDE 5.6 User’s Guide
Finding and Replacing Text
Multiple-File Find and Replace
Searching for Text Across Multiple Symbolics Files
Use the In Symbolics page to search for text in symbolics files. You must generate browser data in order to search symbolics files.
1. Enable browser data for the build targets that you want to search.
Use the Build Extras target settings panel to Generate Browser Data From a compiler or language parser, then Apply or Save your changes. Configuring this option enables browser data.
2. Click Project > Debug.
Starting a debugging session causes the IDE to generate browser data for the project.
NOTE
The IDE does not generate browser data for some files, such as libraries.
3. Click Debug > Kill.
The debugging session ends.
4. Click Search > Find in Files.
The Find in Files window appears.
5. Enter search text into the Find text/list box.
6. Enter replacement text into the Replace with text/list box.
7. Set general search options.
8. Set the In Symbolics page search options: a. Use the Symbolics list box to specify the symbolics files that you want to search.
b. Remove symbolics files from the Symbolics list as needed.
9. Find and replace text: a. Click the Find or Find All button to search for matching text.
The IDE searches the specified symbolics files until it finds a match or reaches the end of the search. A single match appears highlighted in an editor window, or multiple matches appear in a Search Results window.
The IDE beeps if it does not find any matching text.
IDE 5.6 User’s Guide
137
Finding and Replacing Text
Multiple-File Find and Replace
b. Click the Replace or Replace All button to replace the matching text.
Click the Replace button to replace the current match. Click the Replace button repeatedly to replace subsequent matches. Click the Replace All button to replace all matching text.
To replace consecutive matches, click the Find button to find the first match, then repeatedly click the Replace button. To replace one match at a time, or to replace non-consecutive matches, click the Find button to find a match, then click the
Replace button as needed.
TIP
If you clicked the Find button to start the search, click
Search >
Find Next to find the next match.
In Files
Use the In Files page to search file sets for matching text.
shows the In Files page.
explains the items in the page.
Figure 12.7 Find in Files window—In Files page
138
IDE 5.6 User’s Guide
Finding and Replacing Text
Multiple-File Find and Replace
Table 12.7 Find in Files window—In Files items
Item Explanation
File Set list box Specify the file set that you want to search. Select New File Set to create a new set.
File Set list This list shows the files that the IDE will search. To remove a file from this list, select it and press Backspace or Delete. To add files to this list, click the Add Files button, or drag and drop files and folders into the list. To open a file in this list, double-click its name.
Add Files button
Clear List button
Save This Set button
Click to open a dialog box that lets you add files to the current file set. To enable this button, select from the File Set list box an existing file set or the New File Set option.
Click to clear the current File Set list. To enable this button, select from the File Set list box a file set that has at least one file.
Remove a Set button
Click to save the current file set under a specific name. The file set must have at least one file. The name appears in the File Set list box. To enable this button, modify the current file set or select an existing file set from the File Set list box.
Click to open a dialog box that lets you remove file sets that you created previously. The removed file sets no longer appear in the
File Set list box. To enable this button, select from the File Set list box an existing file set or the New File Set option.
Searching for Text Across Multiple Files
Use the In Files page to search for text in file sets.
1. Click Search >
Find in Files.
The Find in Files window appears.
2. Enter search text into the Find text/list box.
3. Enter replacement text into the Replace with text/list box.
4. Set general search options.
5. Set the In Files page search options: a. Use the File Set list box to specify the file set that you want to search.
b. Use the buttons to manage the File Set list as needed.
IDE 5.6 User’s Guide
139
Finding and Replacing Text
Multiple-File Find and Replace
c. Remove files from the File Set list as needed.
6. Find and replace text: a. Click the Find or Find All button to search for matching text.
The IDE searches the specified files until it finds a match or reaches the end of the search. A single match appears highlighted in an editor window, or multiple matches appear in a Search Results window. The IDE beeps if it does not find any matching text.
b. Click the Replace or Replace All button to replace the matching text.
Click the Replace button to replace the current match. Click the Replace button repeatedly to replace subsequent matches. Click the Replace All button to replace all matching text.
To replace consecutive matches, click the Find button to find the first match, then repeatedly click the Replace button. To replace one match at a time, or to replace non-consecutive matches, click the Find button to find a match, then click the
Replace button as needed.
TIP
If you clicked the Find button to start the search, click
Search >
Find Next to find the next match in the file.
140
IDE 5.6 User’s Guide
Finding and Replacing Text
Search Results Window
Search Results Window
Use the Search Results window to explore multiple matches that the IDE finds.
The IDE opens this window automatically after it finds multiple matches. Also use this window to stop searches in progress.
Figure 12.8 on page 141 shows the Search Results window.
explains the items in the window.
Figure 12.8 Search Results window
IDE 5.6 User’s Guide
141
Finding and Replacing Text
Search Results Window
Table 12.8 Search Results window—items
Icon Item
Result Count text box
Search Criteria text box
Warnings button
Stop button
Previous Result button
Next Result button
Results pane
Source Code pane disclosure triangle
Pane resize bar
Source Code pane
Explanation
Shows the total number of search results.
Shows the search criteria.
Click to display complier and linker warnings in the Results pane. The text box to the right of this button shows the total number of warnings.
Click to stop the search in progress.
Click to select the previous search result.
Click to select the next search result.
Lists individual search results.
Click to show or hide the Source
Code pane.
Drag to resize the Results and
Source Code panes.
Shows the source code corresponding to the selected item in the Results pane. This pane operates the same as an editor window without pane-splitter controls.
142
IDE 5.6 User’s Guide
Finding and Replacing Text
Text-Selection Find
Text-Selection Find
After you use the Find, Find and Replace, or Find in Files windows to perform a successful search, you can use menu commands to apply the same search criteria to additional searches. This way, you do not have to open the windows again to use the same search criteria. You select text in the active editor window to define the search string.
Using the Find Next Command
When searching for text, you can use the Find Next command to have the IDE find the next match:
1. Start a search with the Find, Find and Replace, or Find in Files windows.
2. After the IDE finds a match, click Search > Find Next to find a subsequent match.
NOTE
Find Next always searches forward and ignores the Search up checkbox.
Using the Find Previous Command
When searching for text, you can use the Find Previous command to have the
IDE find the previous match. You must enable the Find Previous command in the
Customize IDE Commands window.
1. Click Edit > Commands & Key Bindings.
The Customize IDE Commands window opens.
2. Click the Commands tab in the Customize IDE Commands window.
3. Expand the Search item in the Commands pane tree structure.
4. Select the Find Previous item in the expanded list.
Scroll as needed in order to see the Find Previous item. After you select the
Find Previous item, its settings appear in Details pane.
IDE 5.6 User’s Guide
143
Finding and Replacing Text
Text-Selection Find
5. Check the Appears in Menus checkbox.
The Find Previous command will appear in the Search menu in the main IDE menu bar.
6. Click Save to confirm your changes.
7. Close the Customize IDE Commands window.
You can now select the Find Previous command in the Search menu. You can also use the key binding associated with the command.
NOTE
(Macintosh) Hold down the Shift key in order to click
Search > Find Previous.
Changing the Find String
Use the Enter Find String command to change the current find string.
1. Select the text that you want to use as the new find string.
2. Click Search > Enter Find String.
The selected text replaces the find string that you specified in the Find, Find
and Replace, or Find in Files windows.
You can now use the new find string to perform find and replace operations.
Searching with a Text Selection
Use the Find Selection command to search the active editor window for selected text.
1. Select the text that you want to use as the search string.
2. Click Search > Find Selection.
The IDE searches the active editor window until it finds a match or reaches the end of the search. A single match appears highlighted in the editor window. The
IDE beeps if it does not find any matching text.
You can also use the Find Next and Find Previous commands to search for additional matching text.
144
IDE 5.6 User’s Guide
Finding and Replacing Text
Regular-Expression Find
Regular-Expression Find
Use regular expressions to search text according to sophisticated text-matching rules. A regular expression is a text string used as a mask for matching text in a file. To use regular expressions, select Regular expression in the Find, Find
and Replace, or Find in Files windows. Certain characters are operators with special meanings in a regular expression.
TIP
For an in-depth description of regular expressions, refer to Mastering
Regular Expressions by Jeffrey E.F. Friedl, published by O’Reilly &
Associates, Inc. On a UNIX system, also refer to the
man
pages for
regexp
.
Table 12.9 on page 145 explains the regular-expression operators that the IDE
recognizes.
Table 12.9 Regular-expression operators recognized by the IDE
Operator Name
.
match any
*
+
?
\n
| match zero or more match one or more match zero or one back reference alternation
Explanation
Matches any single printing or non-printing character except
newline
and
null
.
Replaces the smallest/preceding regular expression with a sub-expression.
Repeats the preceding regular expression at least once and then as many times as necessary to match the pattern.
Repeats the preceding regular expression once or not at all.
Refers to a specified group (a unit expression enclosed in parentheses) in the find string. The digit
n
identifies the
n
th group, from left to right, with a number from 1 to 9.
Matches one of a choice of regular expressions. If this operator appears between two regular expressions, the IDE matches the largest union of strings.
IDE 5.6 User’s Guide
145
Finding and Replacing Text
Regular-Expression Find
Table 12.9 Regular-expression operators recognized by the IDE (continued)
Operator Name
^ match beginning of line
$
[...]
(...)
match end of line list group range
Explanation
Matches items from the beginning of a string or following a
newline
character. This operator also represents a NOT operator when enclosed within brackets.
Matches items from the end of a string or preceding a
newline
character.
Defines a set of items to use as a match. The IDE does not allow empty lists.
Defines an expression to be treated as a single unit elsewhere in the regular expression.
Specifies a range. The range starts with the character preceding the operator and ends with the character following the operator.
shows various examples of using regular expressions to match particular text in a text sample.
Table 12.10 Examples of using regular expressions
Example
Type
Matching simple expressions
Matching any character
This regular expression...
ex
[(][.]stack[)] var.
c.t
Repeating expressions s*ion s+ion
...matches this text...
ex
(.stack) var1 var2 cut cot ion ssion sion ssion
...in this text sample:
sample text
ADDR(.stack) cout << var1; cout << var2; cin >> cutF; cin >> cotG; information the session confusion the session
146
IDE 5.6 User’s Guide
Finding and Replacing Text
Regular-Expression Find
Table 12.10 Examples of using regular expressions (continued)
Example
Type
Grouping expressions
Choosing one character from many
This regular expression...
ris r( i)s
[bls]ag
[[aeiou][0-9]
[^bls]ag
Matching line beginnings and endings
[-ab]V
^([\t]*cout)
(l*;)$
...matches this text...
ris r is sag bag lag
[2 u9 rag aV -V cout
cout l;
;
...in this text sample:
surprise theVar is sagging bag lagged cout << a[2] << u9; sagging rag lagged aVal-Val; cout << "no tab";
cout <<
"tab"; a-ct; a = battLvl; b-ct;
Using the Find String in the Replace String
Use the
&
operator to incorporate matching text into a replacement string. The
IDE substitutes the matching text for the
&
operator. Use
\&
to indicate a literal ampersand in the replacement string.
shows examples of using the find string in the replace string of regular expressions.
.
Table 12.11 Examples of using the find string in the replace string
After replacement Find string Replace string
var[0-9] tgt my_&
\&target
Matching text
var1 tgt my_var1
&target
IDE 5.6 User’s Guide
147
Finding and Replacing Text
Comparing Files and Folders
Remembering Sub-expressions
Use the
\n
construct to recall sub-expressions from the find string in the replacement string. The digit
n
ranges from 1 to 9 and represents the
n
th subexpression in the find string, counting from left to right. Enclose each subexpression in parentheses.
Consider these sample definitions:
• Find string:
\#define[ \t]+(.+)[ \t]+([0-9]+);
• Replace string:
const int \1 = \2;
• Sub-expression
\1
:
(.+)
• Sub-expression
\2
:
([0-9]+)
These definitions show a replacement operation that recalls two sub-expressions.
Table 12.12 on page 148 shows the result of applying these sample definitions to
some text.
Table 12.12 Remembering sub-expressions
Before replacement
\1
matches this text
#define var1 10; var1
#define a 100; a
\2
matches this text
10
100
After replacement
const int var1 = 10; const int a = 100;
Comparing Files and Folders
The IDE can compare files or folder contents and graphically show you the differences between them. You can perform these tasks:
• Compare two files.
• Compare the contents of two folders.
You perform the comparison by specifying a source item and a destination item.
You can apply or unapply the changes in the source item to the destination item.
148
IDE 5.6 User’s Guide
Finding and Replacing Text
Comparing Files and Folders
Comparison Setup
You use the Compare Files Setup window to enter information about the files or folders that you want to compare.
Figure 12.9 on page 149 shows the Compare
Files Setup window. Table 12.13 on page 149 explains items in the window.
Figure 12.9 Compare Files Setup window
Table 12.13 Compare Files Setup window—items
Item
Source box
Destination box
Case sensitive checkbox
Explanation
Click the Choose button to specify the source file or folder for the comparison, or drag and drop a file or folder into the box. Click the selector to the left of the Choose button to specify a file in an open editor window.
Click the Choose button to specify the destination file or folder for the comparison, or drag and drop a file or folder into the box. Click the selector to the left of the Choose button to specify a file in an open editor window.
Check to consider text case during the compare operation.
The comparison distinguishes between a capital letter and the same letter in lower case.
Clear to disregard text case during the compare operation.
The comparison does not distinguish between a capital letter and the same letter in lower case.
IDE 5.6 User’s Guide
149
Finding and Replacing Text
Comparing Files and Folders
Table 12.13 Compare Files Setup window—items (continued)
Item
Ignore extra space checkbox
Explanation
Check to consider extra spaces and tabs during the compare operation.
The comparison distinguishes differences in the number of spaces and tabs in the compared files.
Only show different files checkbox
Compare text file contents checkbox
Compare button
Clear to disregard extra spaces and tabs during the compare operation.
The comparison does not distinguish differences in the number of spaces and tabs in the compared files.
Check to have the Folder Compare Results window show only the differences between the compared folders. The Files in Both Folders pane stays blank.
Clear to have the Folder Compare Results window show all files from the compared folders as well as the differences between those folders.
The Files in Both Folders pane shows the common files between the compared folders.
Check to identify differences in terms of a byte-by-byte comparison of the files.
Clear to identify differences in terms of only the sizes and modification dates of the files.
Click to compare the specified files or folders.
Choosing Files to Compare
Use the Compare Files command to specify two files that you want to compare.
1. Click
Search > Compare Files.
The Compare Files Setup window appears.
2. Specify a source file for the comparison.
Click the Choose button in the Source box or drag and drop the file into the
Source box. To specify a file in an open editor window, click the selector in the Source box.
150
IDE 5.6 User’s Guide
Finding and Replacing Text
Comparing Files and Folders
3. Specify a destination file for the comparison.
Click the Choose button in the Destination box or drag and drop the file into the Destination box. To specify a file in an open editor window, click the selector in the Destination box.
4. Configure the checkboxes in the Text Compare Options group.
Check the Case sensitive checkbox to distinguish between a capital letter and the same letter in lower case. Check the Ignore extra space checkbox to disregard extra spaces or tabs in the files.
5. Click the Compare button.
The IDE performs the file comparison. The File Compare Results window appears.
Choosing Folders to Compare
Follow these steps to specify two folders that you want to compare:
1. Click
Search > Compare Files.
The Compare Files Setup window appears.
2. Specify a source folder for the comparison.
Click the Choose button in the Source box or drag and drop the folder into the Source box.
3. Specify a destination folder for the comparison.
Click the Choose button in the Destination box or drag and drop the folder into the Destination box.
4. Configure the checkboxes in the Text Compare Options group.
These options apply to the files inside the compared folders. Check the
Case sensitive checkbox to distinguish between a capital letter and the same letter in lower case. Check the Ignore extra space checkbox to disregard extra spaces or tabs in the files.
5. Configure the checkboxes in the Folder Compare Options group.
These options apply to the contents of the compared folders. Check the
Only show different files checkbox to have the Folder Compare Results window show only the files that differ between the source folder and
IDE 5.6 User’s Guide
151
Finding and Replacing Text
Comparing Files and Folders
destination folder. Check this option to have the Files in Both Folders pane of the Folder Compare Results window stay blank.
Check the Compare text file contents checkbox to have the IDE perform a content-based comparison of the text files in the compared folders. Check this option to have the Folder Compare Results window show differences in terms of file content instead of file sizes and modification dates.
6. Click the Compare button.
The IDE performs the folder comparison. The Folder Compare Results window appears.
CAUTION
The compare operation ignores folders matching the criteria that you specify in the Shielded Folders preference panel.
File Comparison
The IDE file-comparison feature identifies additions, changes, and deletions between two text files. In addition, this feature allows you to apply the differences in the source file to the destination file.
You can also use this feature to merge changes between two versions of the same text file. Specify one version of the text file as the source file and the other version of the text file as the destination file. Then you can apply changes from the source file to the destination file. The destination file becomes the merged file.
After you use the Compare Files Setup window to specify two files for comparison, click the Compare button. The File Compare Results window appears. This window shows the differences between the source file and destination file. You can apply or unapply those differences to the destination file.
The File Compare Results window shows file differences in the form of highlighted portions of text. The highlighting tracks with the text as you scroll through the compared files.
shows the File Compare Results window.
explains the items in the window.
152
IDE 5.6 User’s Guide
Figure 12.10 File Compare Results window
Finding and Replacing Text
Comparing Files and Folders
Table 12.14 File Compare Results window—items
Item
Source pane
Pane resize bar
Icon
N/A
Destination pane N/A
Explanation
Shows the contents of the source file.
You cannot edit the contents of this pane.
Shows the contents of the destination file.
You can edit the contents of this pane.
Drag to resize the Source and
Destination panes.
Apply button
Unapply button
Undo button
Click to apply the selected Differences pane items to the destination file.
Click to unapply the selected Differences pane items from the destination file.
Click to undo your last text edit in the
Destination pane.
IDE 5.6 User’s Guide
153
Finding and Replacing Text
Comparing Files and Folders
Table 12.14 File Compare Results window—items (continued)
Item
Redo button
Icon Explanation
Click to redo your last text edit in the
Destination pane.
Differences pane
N/A Shows the differences between the Source pane and the Destination pane. Select an item to highlight it in the Source and
Destination panes. Applied items appear in an italicized font
Applying File Differences
Use the Apply Difference command to apply the selected items in the
Differences pane to the destination file.
NOTE
You cannot alter the source file. You can change the destination file by applying differences from the source file or by editing the contents of the Destination pane.
1. Select the items in the Differences pane that you want to apply to the destination file.
2. Click
Search > Apply Difference or click the Apply button in the File
Compare Results window.
The Destination pane updates to reflect the differences that you applied to the destination file. The applied items in the Differences pane change to an italicized font.
TIP
Use the Customize IDE Commands window to assign a key binding to the Apply Difference command. This way, you can use the keyboard to apply differences.
154
IDE 5.6 User’s Guide
Finding and Replacing Text
Comparing Files and Folders
Unapplying File Differences
Use the Unapply Difference command to unapply the selected items in the
Differences pane from the destination file.
NOTE
You cannot alter the source file. You can change the destination file by unapplying differences from the source file or by editing the contents of the Destination pane.
1. Select the items in the Differences pane that you want to unapply from the destination file.
Items that you can unapply appear in an italicized font.
2. Click Search > Unapply Difference or click the Unapply button in the File
Compare Results window.
The Destination pane updates to reflect the differences that you unapplied from the destination file. The unapplied items in the Differences pane no longer appear in an italicized font.
TIP
Use the Customize IDE Commands window to assign a key binding to the Unapply Difference command. This way, you can use the keyboard to unapply differences.
Folder Comparison
The IDE folder-comparison feature identifies the differences between the contents of two folders. It reports the files in both folders, the files only in the source folder, and the files only in the destination folder.
You can also use this feature to analyze the differences between two different releases of a folder of software. Specify one release of the software folder as the source folder and the other release of the software folder as the destination folder.
Then you can analyze the differences between the source and destination folders.
After you use the Compare Files Setup window to specify two folders for comparison, click the Compare button. The Folder Compare Results window appears and shows the differences between the source folder and destination folder.
IDE 5.6 User’s Guide
155
Finding and Replacing Text
Comparing Files and Folders
The Folder Compare Results window shows folder differences in the form of three panes. Italicized items in these panes indicate non-text files.
shows the Folder Compare Results window.
explains the items in the window.
Figure 12.11 Folder Compare Results window
Table 12.15 Folder Compare Results window—items
Item
Pane Expand box
Pane
Collapse box
Icon Explanation
Click to enlarge the pane to fill the window.
Click to reduce an expanded pane to its original size.
156
IDE 5.6 User’s Guide
Finding and Replacing Text
Comparing Files and Folders
Table 12.15 Folder Compare Results window—items (continued)
Icon Item
Pane resize bar
Explanation
Drag to resize the panes on either side of the bar.
Files in Both
Folders pane
N/A
Files Only in
Source pane
Files Only in
Destination pane
Selected item group
N/A
N/A
N/A
Shows the items that are in both the source folder and the destination folder. A bullet next to an item indicates that the item content differs between the two folders.
Shows the items that are in the source folder only.
Shows the items that are in the destination folder only.
Shows file and difference information for the selected item in the window panes.
Examining Items in the Folder Compare Results Window
You can use the Folder Compare Results window to open text files and compare file differences.
Double-click a text file to view and change its contents in an editor window.
A file whose contents differ between the source and destination folders has a bullet next to its name. Double click the file to open a File Comparison Results window. Use this window to examine the differences between the file contents.
IDE 5.6 User’s Guide
157
Finding and Replacing Text
Comparing Files and Folders
158
IDE 5.6 User’s Guide
Browser
This section contains these chapters:
•
•
Using Class Browser Windows on page 167
•
Using Other Browser Windows on page 179
•
Using Browser Wizards on page 189
IV
IDE 5.6 User’s Guide
159
160
IDE 5.6 User’s Guide
13
Using the Browser
This chapter explains how to work with the browser in the CodeWarrior
™
IDE.
Use the browser to perform these tasks:
• Generate a browser database—the browser stores collected symbol information in a browser database for the project. You can generate browser data from the compiler or the language parser.
• Collect symbol information—symbols include functions, variables, and objects. Enable the browser to collect information about the symbols in a project.
Read this chapter to learn more about typical tasks for working with the browser.
This chapter contains these sections:
•
“Browser Database” on page 161
•
Browser Database
The browser database contains information about symbols in a program, which include (depending on program language) global variables, functions, classes, and type declarations, among others.
Some IDE windows require that the project contain a browser database. For example, the Class Hierarchy window only displays information for a project that contains a browser database. This section explains how to configure a project to generate its browser database.
NOTE
Generating a browser database increases the project’s size. To minimize the project’s size, generate the browser database only for targets you frequently use.
IDE 5.6 User’s Guide
161
Using the Browser
Browser Database
Browser Data
Browser data contains symbolic and relationship information about the project code. The browser uses this data to access the code information.
Use the
Generate Browser Data From menu (
) in the
Build Extras target settings panel to enable and disable browser data generation.
This drop-down menu provides these options, which determine how the IDE generates browser data:
• None—The IDE does not generate browser data. Use None to disable browser data. Select None to generate faster compiles (with no browser features).
• Compiler—The Compiler generates the browser data. While it compiles more slowly, the compiler generates the most accurate browser data.
• Language Parser—The Code Completion plug-in associated with the project’s programming language generates the browser data.
Figure 13.1 Generate Browser Data From menu
162
Generating Browser Data
You can select an option in the Generate Browser Data From drop-down menu to establish what the IDE uses to generate browser data for a project file.
To generate browser data, follow these steps:
1. Choose Edit > Target Settings.
2. From the Target Settings Panels list, select Build Extras.
IDE 5.6 User’s Guide
Using the Browser
Browser Database
3. Choose Compiler or Language Parser from the
Generate Browser Data
From menu.
NOTE
Some compilers do not generate browser data.
a. Compiler—The compiler generates browser data and the following associated item appears.
If you enable Dump internal browse information after compile, the generated browser data appears in a log window after you compile a file.
b. Language Parser—The Code Completion plug-in associated with the project’s programming language generates the browser data. Browser data and the #include pop-up window update as you edit.
NOTE
Choose Language Parser for C/C++ code completion.
The Prefix and Macro files ( Figure 13.2 on page 163
) are applicable to C/
C++ Code Completion.
Figure 13.2 Generate browser data from language parser
• Prefix file—Similar to that used in the C/C++ Language Settings panel, the Prefix file contains header files that help the C/C++ Code
Completion plug-in parse code. The Prefix file should only include text files (not pre-compiled header files).
• Macro file—Contains C/C++ macro files that help the Code
Completion plug-in resolve any
#ifdefs
found in the source code or in the header files.
4. If you selected Compiler, choose Project > Bring Up To Date or Make.
The IDE generates browser data for the project.
If you selected Language Parser, the IDE generates browser data in the background.
IDE 5.6 User’s Guide
163
Using the Browser
Browser Symbols
Disabling Browser Data
Select None to disable browser data and stop the IDE from generating browser information for the project.
1. Choose Edit > Target Settings.
2. Select Build Extras from the Target Settings Panels list.
3. In the Generate Browser Data From drop-down menu, select None.
4. Click Save.
5. Choose Project > Make.
The IDE stops generating browser information.
Browser Symbols
Navigate browser symbols to open browser views, find symbol definitions, and examine inheritance.
You can navigate browser symbols in these ways:
• Use the Browser contextual menu to open various browser windows for a selected symbol.
• Double-click a symbol name in the Class Browser window to open the file that contains the declaration of that symbol.
• Use the class hierarchy windows to determine the ancestors or descendants of a selected symbol.
Browser Contextual Menu
Use the IDE’s browser contextual menu to enhance source-code editing in the
IDE. Use this menu to streamline text entry in editor windows. You can enter the first few letters of a function name, then use the browser contextual menu to complete the entry.
164
IDE 5.6 User’s Guide
Using the Browser
Browser Symbols
Using the Browser Contextual Menu
1. Open the browser contextual menu, as explained in
.
Table 13.1 Opening a browser contextual menu
On this host...
Do this...
Windows
Macintosh
Solaris
Linux
Right-click a symbol name.
Click and hold on a symbol name.
Click and hold on a symbol name.
Click and hold on a symbol name.
2. Select a command from the contextual menu.
Identifying Symbols in the Browser Database
As a shortcut, you can use browser coloring to help recognize if a symbol resides in the browser database. When you activate a browser, you can see browserdatabase symbols because they appear in the editor and browser windows according to the colors you select.
TIP
The default color setting is identical for all eight types of browserdatabase symbols. You can choose a different color for each symbol type.
To change the browser symbol colors the editor uses, follow these steps:
1. Choose Edit > Preferences.
2. Select the Text Colors panel from the IDE Preference Panels list.
3. Select the Activate Syntax Coloring option.
4. Select the Activate Browser Coloring option.
5. Click the color swatch next to the symbol name to set that symbol's color.
6. Click Save.
IDE 5.6 User’s Guide
165
Using the Browser
Browser Symbols
166
IDE 5.6 User’s Guide
14
Using Class Browser
Windows
This chapter explains how to work with the Class Browser windows in the
CodeWarrior
™
IDE. Use the Class Browser to perform these tasks:
• View browser data—the class browser collects information about the elements of a computer program. Such elements include functions, variables, and classes. The class browser displays these elements in organized lists.
• Show data relationships—the class browser shows the relationships between classes, data members, and methods. The class browser also updates the display to reflect changes in class scope.
Read this chapter to learn more about typical tasks for working with Class
Browser windows.
This chapter contains these sections:
•
“Class Browser window” on page 167
•
•
“Member Functions pane” on page 176
•
“Data Members pane” on page 177
•
•
Class Browser window
Use the Class Browser window to view information about the elements of a computer program. This section explains how to use the Class Browser window to view browser data.
IDE 5.6 User’s Guide
167
Using Class Browser Windows
Class Browser window
Figure 14.1 on page 168 shows the Class Browser window. Table 14.1 on page 168
explains the items in the window. Table 14.2 on page 170
explains the options in the Browser Access Filters list box.
Figure 14.1 Class Browser window
Table 14.1 Class Browser window—items
Item
Go Back button
Icon
Go Forward button
Browser
Contents button
Explanation
Click to return to the preceding browser view.
Click to move to the succeeding browser view.
Click to open the Browser Contents window.
168
IDE 5.6 User’s Guide
Using Class Browser Windows
Class Browser window
Table 14.1 Class Browser window—items (continued)
Item
Class
Hierarchy button
Single Class
Hierarchy
Window button
Browser
Access Filters list box
Show Inherited
Icon Explanation
Click to open the Multi-class Hierarchy window.
Click to open the Single-class
Hierarchy window for the selected class.
Select filters for displaying items in class-browser panes.
Select to show inherited items in the
Member Functions pane on page 176
and Data Members pane on page 177 .
Clear to hide inherited items from these panes.
Lists all classes in the project browser database.
Display toggle buttons
Alphabetical
Lists all member functions defined in the currently selected class.
Lists all data members defined in the selected class.
Displays source code for the currently selected item.
Displays various status messages and other information.
Toggles the Classes display between alphabetical and hierarchical listings.
Hierarchical
IDE 5.6 User’s Guide
169
Using Class Browser Windows
Class Browser window
Table 14.1 Class Browser window—items (continued)
Item
New Item button
Pane Expand box
Pane Collapse
Box
Classes Pane button
Icon Explanation
Opens wizards to create new items
(e.g., classes, data members, member functions).
Expands the pane to the width of the full window.
Collapses the pane to its original size.
Lists all classes in the project browser database.
Class
Declaration button
Open File button
VCS list pop-up
Opens a window that shows declarations for all classes in the project.
Opens the current source file in a new editor window.
With a version control system enabled, choose the version-control command to execute on the displayed source file.
Table 14.2 Browser access filters
Filter
View as implementor
Icon Show items with this access:
Public Private Protected
• • •
• View as subclass
View as user
Show public
•
•
•
170
IDE 5.6 User’s Guide
Using Class Browser Windows
Class Browser window
Table 14.2 Browser access filters (continued)
Filter
Show protected
Icon Show items with this access:
Public Private Protected
•
Show private •
Viewing Class Data from Browser Contents Window
To view class data for a project in the Browser Contents window, follow these steps:
1. Open the Browser Contents window, as explained in
.
Table 14.3 Opening the Browser Contents window
On this host… Do this…
Windows
Macintosh
Solaris
Linux
Select
View > Browser Contents
.
Select
Window > Browser Contents
.
Select
Window > Browser Contents
.
Select
Window > Browser Contents
.
2. Select a class in the Browser Contents window.
3. Open a contextual menu for the selected class, as explained in
.
IDE 5.6 User’s Guide
171
Using Class Browser Windows
Class Browser window
Table 14.4 Opening a contextual menu for the selected class
On this host… Do this…
Windows
Macintosh
Solaris
Linux
Right-click the selected class.
Control-click the selected class.
Click and hold on the selected class.
Click and hold on the selected class.
A contextual menu like the one shown in
Figure 14.2 on page 172 appears.
Figure 14.2 Browser Contents window—contextual menu
172
4. Select
Open browser for class classname from the contextual menu.
The classname is the name of the class that you selected.
A Class Browser window appears.
Viewing Class Data from Hierarchy Windows
To view class data from a hierarchy window, follow these steps:
1. Open a Single-Hierarchy or Multi-Class Hierarchy window:
IDE 5.6 User’s Guide
Using Class Browser Windows
Class Browser window
a. Click the Single Class Hierarchy Window button toolbar, or
in the browser b. Click the Class Hierarchy button in the browser toolbar .
2. In the Single- or Multi-Class Hierarchy window, double-click a class name.
A Class Browser window appears.
Expanding Browser Panes
Click the Pane Expand box (just above the scroll bar in the upper right-hand corner of the pane) to expand the Classes, Function Members, Data Members, or
Source panes in a Browser window.
1. Click the Pane Expand box to expand a pane.
This pane expands to fill the Browser window.
2. Use the enlarged pane to view data.
Alternately, you can use the resize bar between the panes to enlarge each pane.
1. Rest the cursor over the resize bar.
The cursor icon changes to this:
2. Hold down the mouse button.
3. Drag the resize bar to enlarge or shrink the pane.
Collapsing Browser Panes
Click the Pane Collapse box (just above the scroll bar in the upper right-hand corner of the pane) to collapse the Classes, Function Members, Data Members, or
Source panes in a Browser window.
1. Click the Pane Collapse box to collapse a pane.
The chosen pane collapses to its original size.
2. You can now view other panes in a Browser window.
Alternately, you can use the resize bar between the panes to collapse each pane.
IDE 5.6 User’s Guide
173
Using Class Browser Windows
Classes pane
1. Rest the cursor over the resize bar.
The cursor icon changes to this:
2. Hold down the mouse button.
3. Drag the resize bar to collapse the pane.
Classes pane
Use the Classes pane to perform these tasks:
• Create a new class
• Toggle viewing of classes
• Sort classes
shows the Classes pane. Table 14.5 on page 174
explains the items in the pane.
Table 14.5 Classes pane—items
Item
New Item
Icon Explanation
Click to create a new class using the New Class Wizard.
Sort
Alphabetical
Sort
Hierarchical
Click to sort the Classes list in alphabetical order.
Click to sort the Classes list in hierarchical order.
174
Creating a New Class
Use the New Class wizard to specify the name, declaration, and location for a new class. Click Finish in any screen to apply default values to any remaining parameters and complete the process. The New Class wizard creates the files that define the class.
IDE 5.6 User’s Guide
Using Class Browser Windows
Classes pane
1. From the Classes pane, click the New Item button .
2. Enter the Name and Location in the New Class window.
3. To create a more complex class, click Next (optional).
Follow the on-screen directions to further define the class.
4. Click Finish to complete the New Class process.
Showing the Classes Pane
Use the Show Classes button to expand the Classes pane.
1. Click the Show Classes button:
2. The Classes pane appears in the Class Browser window.
Hiding the Classes Pane
Use the Hide Classes button to collapse the Classes pane.
1. Click the Hide Classes button:
2. The Classes pane disappears from the Class Browser window.
Sorting the Classes List
Use the Sort Alphabetical and Sort Hierarchical commands to specify the sort order of classes in the Classes pane. The displayed icon always represents the alternate sort order. For example, when the Classes list appears in alphabetical order, the Sort Hierarchical icon is visible.
• Click the Sort Alphabetical icon .
The IDE sorts the Classes list in alphabetical order.
• Click the Sort Hierarchical icon .
The IDE sorts the Classes list in hierarchical order.
IDE 5.6 User’s Guide
175
Using Class Browser Windows
Member Functions pane
Member Functions pane
Use the Member Functions pane to perform these tasks:
• Create a new member function
• Determine the inheritance type of a member function
Table 14.6 Member Function and Data Member identifier icons
Meaning Icon The member is…
static a static member virtual pure virtual or abstract a virtual function that can be overridden, or an override of an inherited function a member function that must be overridden in a subclass to create instances of that subclass
Creating a New Member Function
Use the New Member Function wizard to specify the name, return type, and parameters for a new member function. Click Finish in any screen to apply default values to any remaining parameters and complete the process.
1. Click the New Item button in the Member Functions pane.
2. Enter the Member Function Declarations in the New Member Function window.
3. Click Next.
4. Enter Member function file locations and Include Files information.
5. Click Finish.
6. Review the settings summary, then click Generate.
The IDE adds the new member function to the class declaration.
176
IDE 5.6 User’s Guide
Using Class Browser Windows
Data Members pane
Data Members pane
Use the Data Members pane to create a new data member. This section explains how to create the data member.
Click the New Item button in the Data Members pane to open the New Data
Member wizard. See
Table 14.6 on page 176 for a complete list of identifier
icons that appear in the Data Members pane.
Creating a New Data Member
Use the New Data Member wizard to specify the name, type, and initializer for the new data member. Specify other options to further refine the data member.
Click Finish in any screen to apply default values to any remaining parameters and complete the process.
1. From the Data Members pane, click the New Item button:
2. Enter the Data Member Declarations in the New Data Member window.
3. Click Next.
4. Enter Data Member file locations and
#include files
information.
5. Click Finish.
6. Review the settings summary, then click Generate.
The IDE adds the new data member to the class declaration.
Source pane
Use the Source pane to view the source code that corresponds to the selected class, member function, or data member. This section explains the items in the
Source pane.
shows the Source pane. Table 14.7 on page 178
explains the items in the pane.
For information on editing source code, see “Editing Source Code” on page 97
.
IDE 5.6 User’s Guide
177
Using Class Browser Windows
Status Area
Table 14.7 Source pane—items
Item
Open File
Icon Explanation
Click to open the current source file in a new editor window.
VCS menu Enable a version-control system in order to activate this menu. Use this menu to select and execute a versioncontrol command on the source file.
Status Area
Use the status area to perform these tasks:
• Toggle viewing of the Classes pane
• View class declarations
• View classes according to public, private, or protected access
Figure 14.1 on page 168 shows the status area.
explains items in the status area.
Table 14.8 Status area—items
Item
Show Classes Pane
Icon Explanation
Click to display the Classes pane in the Class
Browser window.
Hide Classes Pane Click to hide the Classes pane in the Class
Browser window.
Class Declaration
Access Filter Display
Click to show the declaration of the current class.
Displays the access state of the current class.
178
IDE 5.6 User’s Guide
15
Using Other Browser
Windows
This chapter explains how to work with the Class Hierarchy windows in the
CodeWarrior
™
IDE. Use Class Hierarchy windows to perform these tasks:
• View hierarchical browser data—the class hierarchy window shows a graphical representation of hierarchical structure. Object-oriented languages, such as C++ and Java, allow hierarchical relationships between classes.
• Analyze inheritance structure—the class hierarchy window shows the inheritance structure of classes. This structure reveals the data-handling capabilities of a particular class.
Read this chapter to learn more about typical tasks for working with Class
Hierarchy windows.
This chapter contains these sections:
•
on page 182“Multiple-Class Hierarchy Window” on page 179
•
“Single-Class Hierarchy Window” on page 182
•
“Browser Contents window” on page 183
•
Multiple-Class Hierarchy Window
Use the Multi-Class Hierarchy window to visually examine the structure of every class in the browser database. Each class name appears in a box, and lines connect boxes to indicate related classes. The left-most box is the base class, and subclasses appear to the right.
Figure 15.1 on page 180 shows the Multi-Class Hierarchy window. Table
15.1 on page 180 explains the items in the window.
IDE 5.6 User’s Guide
179
Using Other Browser Windows
Multiple-Class Hierarchy Window
Figure 15.1 Multi-Class Hierarchy window
Table 15.1 Multi-class hierarchy window—items
Item
Hierarchy Control
Icon Explanation
Click to expand or collapse the subclasses displayed for a specific class.
Ancestor menu
Line button
Click and hold on class or subclass box to display a menu. Select a class from menu to display that class.
Click to toggle the lines that connect classes between diagonal and straight lines.
180
Viewing Browser Data by Inheritance
Use a Hierarchy window to view data in graphical form and better understand class relationships. Use the expand and collapse arrows to enlarge or shrink the class views.
IDE 5.6 User’s Guide
Using Other Browser Windows
Multiple-Class Hierarchy Window
1. Activate the browser.
2. Update the browser database by using the Bring Up To Date, Make, Run, or
Debug command.
3. Open a graphical Hierarchy window, as explained in Table 15.2 on page 181 .
Table 15.2 Opening the Hierarchy window
On this host… Do this…
Windows
Macintosh
Solaris
Linux
Select
View > Class Hierarchy
Select
Window > Class Hierarchy
Select
Window > Class Hierarchy
Select
Window > Class Hierarchy
Window
Printing Class Hierarchies
To print the contents of a Class Hierarchy window, save an image of the window contents, then print the image file from a graphics-processing application.
The IDE saves the image in a graphics-file format based on the host platform, as shown in
Table 15.3 Graphics-file format for host platforms
Host
Windows
Macintosh
Solaris
Linux
Graphics-file Format
EMF (Enhanced Metafile)
PICT (Picture)
PICT (Picture)
PICT (Picture)
IDE 5.6 User’s Guide
181
Using Other Browser Windows
Single-Class Hierarchy Window
1. Open the Class Hierarchy window.
2. Choose File > Save a Copy As.
3. Save the image to a file.
4. Open the image file in an graphics-processing application.
5. Print the image file.
The graphics-processing application prints the image of the class hierarchy.
Changing Line Views in a Hierarchical Window
Use the Diagonal Line and Straight Line commands to change the appearance of the connecting lines between classes and subclasses in a hierarchical window display.
• Click the Diagonal Line icon .
The Hierarchical window display updates to use diagonal lines.
• Click the Straight Line icon .
The Hierarchical window display updates to use straight lines.
Single-Class Hierarchy Window
Use the Single-Class Hierarchy window to examine the structure of a single class in the browser database. The Single-Class Hierarchy window operates identically to the Multi-Class Hierarchy window, but restricts the display to a single class.
The Single-Class Hierarchy window contains the same components as the Multi-
Class Hierarchy window.
182
IDE 5.6 User’s Guide
Figure 15.2 Single-Class Hierarchy window
Using Other Browser Windows
Browser Contents window
Opening a Single-Class Hierarchical window
Use one of these methods to open a Single-Class Hierarchical window:
• Click the Show Single-Class Hierarchy icon in a Browser toolbar.
• Use the Browser Contextual menu in one of these windows:
– New Class Browser window
– Browser Contents window
– Multi-Class Hierarchical window
A Single-Class Hierarchical window appears
Browser Contents window
Use the Browser Contents window to view browser data sorted by category into an alphabetical list. This section explains how to use the Browser Contents window to view browser data.
IDE 5.6 User’s Guide
183
Using Other Browser Windows
Browser Contents window
Figure 15.3 on page 184 shows the Browser Contents window. Table 15.4 on page 184
explains the items in the window.
Figure 15.3 Browser Contents window
Table 15.4 Browser Contents window—items
Item
Symbols list box
Icon Explanation
Select the type of symbol to display in the Symbols list.
Symbols list Double-click a symbol name to display the source file in a new editor window that defines the symbol.
184
Viewing Browser Data by Contents
Use the Browser Contents window to display symbol information stored in the browser database, listed in alphabetical order. You can choose from these categories:
• classes
IDE 5.6 User’s Guide
Using Other Browser Windows
Symbols window
• constants
• enumerations
• functions
• global variables
• macros
• function templates
• type definitions
1. Activate the browser.
2. Use the Bring Up To Date, Make, Run, or Debug command to update the browser database.
3. Open the Browser Contents window, as explained in Table 15.5 on page 185 .
Table 15.5 Opening the Browser Contents window
On this host… Do this…
Windows
Select
View > Browser Contents
Macintosh
Solaris
Linux
Select
Window > Browser Contents
Select
Window > Browser Contents
Select
Window > Browser Contents
4. Select a category from the Category list pop-up.
The symbol information for the selected category appears in alphabetical order in the Symbols list.
Symbols window
The Symbols window displays information from project browser databases. With the browser enabled, the IDE generates a browser database for a project during the build process.
IDE 5.6 User’s Guide
185
Using Other Browser Windows
Symbols window
The Symbols window displays symbols that have multiple definitions in the browser database. For example, the window displays information about multiple versions of overridden functions in object-oriented code.
Figure 15.4 on page 186 shows the Symbols window.
explains the items in the window.
Figure 15.4 Symbols window
Table 15.6 Symbols window—items
Item
Explanation
Provides one-click access to common browser commands and class-filtering commands.
186
IDE 5.6 User’s Guide
Using Other Browser Windows
Symbols window
Table 15.6 Symbols window—items (continued)
Item
Explanation
Displays a list of all symbols with multiple declarations.
Displays the source code for the currently selected item.
Opening the Symbols Window
Use the Symbols window to list all implementations, whether overridden or not, of any symbol that has multiple definitions. You can access the Symbols window by using a contextual menu.
1. Open a contextual menu, as explained in Table 15.7 on page 187 .
Table 15.7 Opening the Symbols window
On this host… Do this…
Windows
Macintosh
Solaris
Linux
Right-click the symbol name.
Control-click the symbol name.
Click and hold on the symbol name.
Click and hold on the symbol name.
2. Select Find all implementations of from the contextual menu that appears.
3. The Symbols window opens.
Symbols toolbar
Most of the Symbol toolbar items are identical to those in the Class Browser window on page 167 .
IDE 5.6 User’s Guide
187
Using Other Browser Windows
Symbols window
Symbols pane
The Symbols pane lists symbols with multiple definitions in the browser database. Select a symbol from the list to view its definition in the Source pane.
Source pane
The Source pane used in the Symbols window is identical to the one used by the
Class Browser window on page 167 . See
“Source pane” on page 177 for more
details.
188
IDE 5.6 User’s Guide
Using Browser Wizards
16
When you create a new class, member function, or data member in the IDE, you use browser wizards. These wizards provide the steps to help you complete the process.
This chapter provides information on these wizards:
•
“The New Class Wizard” on page 189
•
“The New Member Function Wizard” on page 194
•
“The New Data Member Wizard” on page 197
NOTE
Most wizard pages contain default settings. To accept all current settings in the wizard, click Finish in any screen. The wizard displays a summary of all current settings for the new project. Click Generate to accept the current settings and create the new item, or click Cancel to return to the wizard to modify settings.
The New Class Wizard
Use the New Class wizard to specify the name, declaration, and location for a new class. Click Finish in any screen to apply default values to remaining parameters to complete the process. The New Class wizard creates the files that define the class.
IDE 5.6 User’s Guide
189
Using Browser Wizards
The New Class Wizard
Figure 16.1 New Class wizard—Name and Location
Using the New Class Wizard
To use the New Class Wizard, follow these steps:
1. Open the Class Browser window, as explained in
Table 16.1 Opening the Class Browser window
On this host...
Windows
Macintosh
Solaris
Linux
Do this...
Select
View > Class Browser
Select
Window > Class Browser
Select
Window > New Class Browser
Select
Window > New Class Browser
190
IDE 5.6 User’s Guide
Using Browser Wizards
The New Class Wizard
2. Select
Browser > New Class.
NOTE
You can also click the New Item icon in the Class Browser window to create a new class.
3. In the New C++ Class wizard, enter Name and Location information: a. Class Name—Enter a name for the class in this field.
b. Declaration File—This menu lets you specify whether the file is a New
File, which is a new declaration file, or Relative to class, which is a declaration that depends on an existing file in the project.
If you choose the New File option, type in the path where you want to save the file. Alternatively, click Set next to the field to choose the path in which to save the file.
If you choose the Relative to class option, select Before or After to establish the order of the new class in relation to existing classes. In the field next to the Before and After drop-down selection, type the name of the class you want to relate to the new class. Alternatively, click Set next to this field, type the name of a class in the window that opens, and then click Select.
NOTE
If you want to use a separate file to define the members of the new class, type the path to the separate file in the field below the Use
separate file for member definitions checkbox. Alternatively, choose Existing to use a standard dialog box to select the file. To create a new, separate file, choose New and save the new file to a location on your hard disk.
4. Click Next.
IDE 5.6 User’s Guide
191
Using Browser Wizards
The New Class Wizard
Figure 16.2 New Class wizard—Base Class and Methods
192
5. Enter Base Classes and Methods information.
Enter a list of base classes for the new class: a. Access—From this drop-down menu, choose an access type, Public,
Protected, or Private, for the constructor and destructor.
b. Constructor parameters—Enter a list of parameters for the constructor.
c. Virtual destructor—Click this checkbox to create a virtual destructor for the new class.
d. As an option, you can enter the required namespaces for the base classes and the constructor parameters in the field labeled Namespaces required
for the base classes and constructor parameters.
Or,
If needed, you can specify the base classes and constructor parameters.
6. Click Next.
IDE 5.6 User’s Guide
Figure 16.3 New Class wizard—Include Files
Using Browser Wizards
The New Class Wizard
7. Enter Include Files information.
Specify additional header #include files for the new class: a. Include files that will automatically be added for base classes—This field shows you a list of #include files that the IDE automatically adds to find the base classes.
b. Additional header include files—Enter a list of other include files for the new class in addition to those in the previous field. Separate each file in the list with a comma.
8. Click Next.
IDE 5.6 User’s Guide
193
Using Browser Wizards
The New Member Function Wizard
Figure 16.4 New Class wizard—Targets
9. Enter Targets information:
Select the checkbox next to the build target’s name in the list to add the class files to a specific build target.
10.Click Finish.
Review the settings summary.
11.Click Generate.
The New Member Function Wizard
Use the New Member Function wizard to specify the name, return type, and parameters for a new member function. Enter additional information in the wizard fields to refine the function definition.
194
IDE 5.6 User’s Guide
Figure 16.5 New Member Function wizard
Using Browser Wizards
The New Member Function Wizard
Using the New Member Function Wizard
To use the New Member Function wizard, follow these steps:
1. Open the Class Browser window, as explained in
Table 16.2 Opening the Class Browser window
On this host...
Do this...
Windows
Macintosh
Solaris
Linux
Select
View > Class Browser
Select
Window > Class Browser
Select
Window > New Class Browser
Select
Window > New Class Browser
IDE 5.6 User’s Guide
195
Using Browser Wizards
The New Member Function Wizard
2. Select
Browser > New Member Function.
3. In the New C++ Member Function window, enter the Member Function
Declaration.
a. Name—Type a name for the member function.
b. Return Type—Enter an appropriate function return type.
c. Parameters—Type a list of function parameters.
d. Namespaces required for parameters (optional)—Type a list of namespaces required for parameters.
4. Click Next.
Figure 16.6 New Member Function wizard—File Locations
196
5. Enter Member Function File Locations and Include Files information.
6. Click Finish.
7. Review settings summary, then click Generate.
IDE 5.6 User’s Guide
Using Browser Wizards
The New Data Member Wizard
The New Data Member Wizard
Use the New Data Member wizard to define the new data-member declaration, and to specify new data member file locations. The wizard offers additional options to further define the function.
Figure 16.7 New Data Member wizard
Using the New Data Member Wizard
To use the New Data Member wizard, follow these steps:
1. Open the Class Browser window, as explained in
IDE 5.6 User’s Guide
197
Using Browser Wizards
The New Data Member Wizard
Table 16.3 Opening the Class Browser window
On this host...
Do this...
Windows
Macintosh
Solaris
Linux
Select
View > Class Browser
Select
Window > Class Browser
Select
Window > New Class Browser
Select
Window > New Class Browser
2. Select
Browser > New Data Member.
3. In the New C++ Data Member window, enter the Name, Type, Namespaces
required for type (optional), Initializer, and Modifiers.
a. Name—Type a name for the data member in this field.
b. Type—Enter an appropriate data-member type in this field.
c. Namespaces required for type (optional)—(Optional) Enter a list of namespaces required for the type in the Type field. A sample namespace is
std
.
d. Initializer—(Optional) Enter an initial value for the data member in this field. Sample initializers are
100
and
inConstructorParameterName
.
e. Modifiers—Select the access level and type for the new data member.
4. Click Next.
5. Specify Data Member File Locations.
This section lets you specify file locations associated with the new member functions, including these fields: Declaration, Definition, Include file
automatically added for member type, and Additional header include
files.
a. Declaration—This field shows you the data member’s declaration file
location.
b. Definition—This field is not available in this wizard.
198
IDE 5.6 User’s Guide
Using Browser Wizards
The New Data Member Wizard
c. Include file automatically added for member type—This field indicates whether an include file will be automatically added for the data-member type.
d. Additional header include files—Enter in this field a list of other include files for the new data member, in addition to the file listed in the previous field. Example files are
<string>
and
YourHeader.h
.
6. Click Finish.
7. Review settings summary, then click Generate.
IDE 5.6 User’s Guide
199
Using Browser Wizards
The New Data Member Wizard
200
IDE 5.6 User’s Guide
Debugger
This section contains these chapters:
•
Working with the Debugger on page 203
•
Manipulating Program Execution on page 221
•
Working with Variables on page 251
•
Working with Memory on page 261
•
Working with Debugger Data on page 279
•
Working with Hardware Tools on page 289
V
IDE 5.6 User’s Guide
201
202
IDE 5.6 User’s Guide
17
Working with the
Debugger
This chapter explains how to work with the debugger in the CodeWarrior™ IDE to control program execution. The main component of the debugger is the Thread window, which shows these items:
• Common debugging controls—step, kill, start, and stop program execution
• Variable information—see the variables in the executing code, their values, and their addresses
• Source code—see the source code under debugger control
This chapter contains these sections:
•
“About the CodeWarrior Debugger” on page 203
•
“About Symbolics Files” on page 204
•
•
“Common Debugging Actions” on page 208
•
•
“Contextual Menus” on page 212
•
“Multi-core Debugging” on page 214
•
About the CodeWarrior Debugger
A debugger controls program execution and shows the internal operation of a computer program. Use the debugger to find problems while the program executes. Also use the debugger to observe how a program uses memory to complete tasks.
The CodeWarrior debugger provides these levels of control over a computer program:
IDE 5.6 User’s Guide
203
Working with the Debugger
About Symbolics Files
• Execution of one statement at a time
• Suspension of execution after reaching a specific point in the program
• Suspension of execution after changing a specified memory value
After the debugger suspends program execution, use various windows to perform these tasks:
• View the function-call chain
• Manipulate variable values
• View register values in the computer processor
About Symbolics Files
A symbolics file contains debugging information that the IDE generates for a computer program. The debugger uses this information to control program execution. For example, the debugger uses the symbolics file to find the source code that corresponds to the executing object code of the computer program.
Symbolics files contain this information:
• Routine names
• Variables names
• Variable locations in source code
• Variable locations in object code
The IDE supports several types of symbolics files. Some programs generate separate symbolic files, while others do not. For example, when you use
CodeView on Windows, the IDE places the symbolics file inside the generated binary file.
Thread Window
The debugger suspends execution of processes in a computer program. The
Thread window displays information about a suspended process during a debug session.
Use the Thread window to perform these tasks:
• View the call chain for a routine
• View routine variables, both local and global
204
IDE 5.6 User’s Guide
Working with the Debugger
Thread Window
• View a routine in terms of its source code, assembly code, or a mix of both types of code
Figure 17.1 on page 205 shows the Thread window.
explains the items in the window.
Figure 17.1 Thread window
IDE 5.6 User’s Guide
205
Working with the Debugger
Thread Window
Table 17.1 Thread window—items
Item
Debug / Run
/ Resume button
Icon
Stop button
Kill button
Step Over button
Step Into button
Step Out button
Breakpoints button
Expressions button
Symbolics button
Pane
Expand box
Pane
Collapse box
206
Explanation
Click to perform these tasks:
• Continue execution up to the next breakpoint, watchpoint, or eventpoint
• Run the program until it exits
• Continue execution of a currently stopped program
Click to stop (pause) program execution.
Click to terminate program execution and close the Thread window.
Click to execute the current line, including any routines, and proceed to the next statement.
Click to execute the current line, following execution inside a routine.
Click to continue execution to the end of the current routine, then follow execution to the routine’s caller.
Click to open the Breakpoints window.
Click to open the Expressions window.
Click to open the Symbolics window.
Click to enlarge the pane to fill the window.
Click to reduce an expanded pane to its original size.
IDE 5.6 User’s Guide
Working with the Debugger
Thread Window
Table 17.1 Thread window—items (continued)
Item
Pane resize bar
Icon Explanation
Drag to resize the panes on either side of the bar.
Stack pane
Variables pane
Variables
Pane Listing button
Shows the current routine calling chain, with the most current routine name at the bottom
Shows local and global variables that the current routine uses.
Click this icon to switch among these display states:
• All—show all local and global variables in the code
• Auto—show only the local variables of the routine pointed to by the current-statement arrow
• None—show no variables. Use this display state to improve stepping performance for slow remote connections
Click to show or hide the Source pane.
Source pane disclosure triangle
Source pane
Source File button
Currentstatement arrow
Dash
Shows the executing source code. This pane operates the same way as an editor window, however, you cannot edit the contents of the pane or use pane-splitter controls.
Click to edit the contents of the Source pane in an editor window.
Points to statement that debugger will execute next.
Appears to left of each line at which you can set a breakpoint or eventpoint. Click the dash to set a breakpoint on that line.
IDE 5.6 User’s Guide
207
Working with the Debugger
Common Debugging Actions
Table 17.1 Thread window—items (continued)
Item
Functions list box
Line and
Column button
Source list box
Icon Explanation
Click to show a list of functions declared in the file. Select a function to highlight it in the Source pane.
Shows the current line and column number of the text-insertion cursor. Click to specify a line to show in the Source pane.
Click to specify how to display source code in the Source pane:
• Source—programming-language statements appear exclusively in the pane
• Assembler—assembly-language instructions appear exclusively in the pane
• Mixed—each programminglanguage statement shows its corresponding assemblylanguage instructions
Common Debugging Actions
This section explains how to perform common debugging actions that correct source-code errors, control program execution, and observe memory behavior:
• Start the debugger
• Step into, out of, or over routines
• Stop, resume, or kill program execution
• Run the program
• Restart the debugger
208
Starting the Debugger
Use the Debug command to begin a debugging session. The debugger takes control of program execution, starting at the main entry point of the program.
Select Project > Debug or click the Debug button (shown at left) to start the debugger.
IDE 5.6 User’s Guide
Working with the Debugger
Common Debugging Actions
After you start the debugging session, the IDE opens a new Thread window.
NOTE
Some projects require additional configuration before the debugging session can begin. The IDE might prompt you for permission to perform this configuration automatically.
Stepping Into a Routine
Use the Step Into command to execute one source-code statement at a time and follow execution into a routine call.
Select
Debug > Step Into or click the Step Into button to step into a routine.
After the debugger executes the source-code statement, the current-statement arrow moves to the next statement determined by these rules:
• If the executed statement did not call a routine, the current-statement arrow moves to the next statement in the source code.
• If the executed statement called a routine, the current-statement arrow moves to the first statement in the called routine.
• If the executed statement is the last statement in a called routine, the currentstatement arrow moves to the statement that follows the calling routine.
Stepping Out of a Routine
Use the Step Out command to execute the rest of the current routine and stop program execution after the routine returns to its caller. This command causes execution to return up the calling chain.
Select
Debug > Step Out or click the Step Out button to step out of a routine.
The current routine executes and returns to its caller, then program execution stops.
IDE 5.6 User’s Guide
209
Working with the Debugger
Common Debugging Actions
Stepping Over a Routine
Use the Step Over command to execute the current statement and advance to the next statement in the source code. If the current statement is a routine call, program execution continues until reaching one of these points:
• the end of the called routine
• a breakpoint
• a watchpoint
• an eventpoint that stops execution
Select
Debug > Step Over or click the Step Over button to step over a routine.
The current statement or routine executes, then program execution stops.
Stopping Program Execution
Use the Break or Stop command to suspend program execution during a debugging session.
Select
Debug > Break, Debug > Stop, or click the Stop button to stop program execution.
The operating system surrenders control to the debugger, which stops program execution.
Resuming Program Execution
Use the Resume command to continue executing a suspended debugging session. If the debugging session is already active, use this command to switch view from the Thread window to the executing program.
Select
Project > Resume or click the Debug button to resume program execution.
The suspended session resumes, or the view changes to the running program.
210
IDE 5.6 User’s Guide
Working with the Debugger
Symbol Hint
NOTE
The Resume command appears only for those platforms that support it. If your platform does not support this command, you must stop the current debugging session and start a new session.
Killing Program Execution
Use the Kill command to completely terminate program execution and end the debugging session. This behavior differs from stopping a program, as stopping temporarily suspends execution.
Select Debug > Kill or click the Kill button to kill program execution.
The debugger terminates program execution and ends the debugging session.
Running a Program
Use the Run command to execute a program normally, without debugger control.
Select Project > Run or click the Run button to begin program execution.
The debugger does not control program execution as the program runs.
Restarting the Debugger
Use the Restart command after stopping program execution. The debugger goes back to the beginning of the program and begins execution again. This behavior is equivalent to killing execution, then starting a new debugging session.
Select Debug > Restart to restart the debugger.
Symbol Hint
The symbol hint shows information about variable values. This information appears automatically while the debugger is active.
Select the
Show variable values in source code on page 452
option in the
preference panel to use the symbol hint.
IDE 5.6 User’s Guide
211
Working with the Debugger
Contextual Menus
Figure 17.2 Symbol hint
The symbol hint shows the current variable value.
Toggling the Symbol Hint
Turn on the symbol hint to view information about program variables in source views.
1. Click
Edit > Preferences.
The IDE Preferences window appears.
2. Select Display Settings in the IDE Preference Panels list.
3. Check or clear the Show variable values in source code checkbox.
Check the checkbox to use the symbol hint. Clear the checkbox to stop using the symbol hint.
4. Click Apply or Save to confirm your changes to the preference panel.
5. Close the IDE Preferences window.
Using the Symbol Hint
During a debugging session, use the symbol hint to view information about program variables.
To use the symbol hint, rest the cursor over a variable in a source view. After a brief pause, the symbol hint appears and shows the current variable value.
Contextual Menus
The contextual menu provides a shortcut to frequently used menu commands.
The available menu commands change, based on the context of the selected item.
212
IDE 5.6 User’s Guide
Working with the Debugger
Contextual Menus
Sample uses of the contextual menu for debugging tasks include:
• changing the format of variables displayed in variable panes
• manipulating breakpoints and the program counter in source panes
• viewing memory in separate windows
TIP
Experiment using the contextual menu in various IDE windows to discover additional features.
Figure 17.3 on page 213 shows a sample contextual menu in a source view.
Figure 17.3 Contextual menus
IDE 5.6 User’s Guide
213
Working with the Debugger
Multi-core Debugging
Using Contextual Menus
Use contextual menus to apply context-specific commands to selected items.
Right-click, Control-click, or click and hold on an item to open a contextual menu for that item. The contextual menu appears, displaying menu commands applicable to the selected item.
Multi-core Debugging
The IDE allows simultaneous debugging of multiple projects. This feature provides multi-core debugging capability for some embedded processors. By configuring each project to operate on a single core, the IDE can debug multiple cores by debugging multiple projects.
Configuring multi-core debugging involves these tasks:
• configuring specific target settings for each project
• for some cores, specifying a configuration file for initializing multi-core debugging
For more information, see the Targeting documentation.
Data Viewer Plug-ins
Data Viewers are plug-ins that include an user interface to show a custom view of data. These plug-ins are often platform specific. Data editors are data viewers that also let you modify and write data.
The IDE will keep a registry of plug-ins that can view particular types. The plugins will register themselves with the IDE and indicate which formats and platforms they support. When a variable or memory address is selected, you can choose the plugin from the Data menu.
A Data Viewer plugin may also designed without a custom user interface. This type of viewer would override the built in debugger methods of showing a variable value as text and parsing an edited value back into variable data.
214
IDE 5.6 User’s Guide
Working with the Debugger
External Builds Support
External Builds Support
The IDE will perform the following tasks on external makefiles:
• Build
• Debug
• File Management in Project Manager window
• Source Browsing
• Error Lookup
The IDE can build an external makefile and debug its output. A linker plugin will enable the IDE to manage a command line and targets associated with a makefile.
The command line is executed when a build step is initiated. The linker plugin will also supply the executable to use for debugging.
The linker plugin will provide a preference panel named External Build Target that is used to configure a target. The preference panel provides text fields for you to configure the command line for the target (which will enable building), specify the working directory and the output file used to launch a debugging session, and the debug platform.
The linker plugin is generic so that it can be used regardless of the target CPU and OS. The list of available debugger preference panels will be updated by the
IDE when you select the debug platform.
IDE 5.6 User’s Guide
215
Working with the Debugger
External Builds Support
Figure 17.4 External Build Target panel
216
The External Build Target preference panel will collect the following information:
• Command line to be executed in the build step
The command line will be sent to the OS shell and will contain all parameters and/or switches that are necessary for proper building of the make file.
• Working directory in which command line will be executed.
• Output file name - Executable to be launched in the debug step. The file will be relative to the output directory specified in the Target Settings preference panel.
• Debugger Platform - The debug platform represents the combination of OS and CPU that your build is targeting. “Not specified” is the default, which indicates you have not specified a debug platform. In most cases, not specifying a platform will result in not being able to debug. However, some platforms may allow debugging if no additional debugger preference panel is used. If only one platform entry exists with the “Not specified” option, then it will become the default entry.
After the IDE converts the makefile into a CodeWarrior project, source files can be added in the project manager window. Files that appear in the project manager
IDE 5.6 User’s Guide
Working with the Debugger
External Builds Support
will be parsed by the language parser and will supply Source Browsing information, such as code completion.
When a build step is initiated, the linker plugin will gather output after the command line begins executing. Output is directed to the IDE and displayed in a read-only Build Output Window. A build output window is displayed for each target. The build output window can be displayed manually by selecting the menu command View > Build Output (Windows) or Window > Build
Output (Linux/Solaris/Mac). This command is enabled for targets that use the external build linker.
Figure 17.5 Build Output Window
If multiple build steps are performed on the same target, the output from each build step will be appended to the build output window. Each block of output will be separated by “----Build started----” and “----Done----” tags.
The build output window will allow users to navigate directly to the location of a compilation error. Double-click a line that contains an error message or press
Enter when the cursor is in the line. If the IDE determines that a valid error message exists on the selected line, the source file is opened to the line on which the error occurred.
Click the right mouse button in the build output window to display a context menu.
• The Copy command will copy selected text to the clipboard. If no text is selected then the line that contains the cursor will be copied.
• The Clear All command will clear contents of output window.
IDE 5.6 User’s Guide
217
Working with the Debugger
External Builds Support
• The Go To Error command will navigate to the error location. This is identical to double-clicking.
External Build Wizard
A wizard prompts you for information used to create projects based on external make files. The wizard collects data about the make file and creates a
CodeWarrior project with a single target. The target is then configured to build the user-specified make file.
The wizard can be launched by selecting
File > New... and selecting External
MakeFile Wizard. The New... dialog will collect the name and location of the project before launching the wizard.
Figure 17.6 External Build Wizard - page 1 of 3
218
IDE 5.6 User’s Guide
Figure 17.7 External Build Wizard - page 2 of 3
Working with the Debugger
External Builds Support
IDE 5.6 User’s Guide
219
Working with the Debugger
External Builds Support
Figure 17.8 External Build Wizard - page 3 of 3
220
If the Output file entry is blank, you can still finish the wizard, but no debugging can be done until you enter an output file in the External Build target panel. You can also finish the wizard if the Debug platform choice is set to "Not specified".
Although, no debugging can be performed until you specify a debug platform in the External Build target panel.
Completing the wizard will generate a new CodeWarrior IDE project and configure it for use with the external make file. The wizard will automate these tasks:
• Create project with single target named "External makefile"
• Set Linker to external make file linker
• Define settings in External Build target panel based on data collected from wizard
IDE 5.6 User’s Guide
Manipulating Program
Execution
18
This chapter explains how to use breakpoints, watchpoints, and eventpoints to manipulate execution of your program in the CodeWarrior
™
IDE:
• Breakpoints—halt program execution on a line of source code that you specify. You can set a breakpoint that always halts program execution, or you can set a breakpoint that halts program execution if a condition that you specify is true.
• Eventpoints—perform a task during program execution on a line of source code that you specify. Eventpoints can play sounds, run scripts, log data, and perform other operations.
• Watchpoints—halt program execution after a location in memory changes value
• Special breakpoints—these internal breakpoints halt program execution in special cases, such as halting program execution at the
main()
function or for a C++ exception.
After you set these items in your source code, you start a debugging session to use them. As program execution arrives at each of these items, the debugger can halt execution, perform a task, or update data.
This chapter contains these sections:
•
•
•
•
“Special Breakpoints” on page 248
IDE 5.6 User’s Guide
221
Manipulating Program Execution
Breakpoints
Breakpoints
You use breakpoints to halt program execution on a specific line of source code.
After you set a breakpoint at a key point in the program, you can halt its execution, examine its current state, and check register and variable values. You can also change values and alter the flow of normal program execution. Setting breakpoints helps you debug your program and verify its efficiency.
You can use these types of breakpoints:
• regular breakpoints—halt program execution
• conditional breakpoints—halt program execution after meeting a condition that you specify
• temporary breakpoints—halt program execution and then remove the breakpoint that caused the halt
You can also create breakpoint templates to simplify the process of setting complex breakpoints. A breakpoint template has all the properties of a breakpoint, except for its location in source code. After you define a breakpoint template, you can have the debugger use the template as the basis for each breakpoint you set in your source code.
Breakpoints have enabled and disabled states.
Table 18.1 on page 222 explains
these states.
Table 18.1 Breakpoints—states
State
Enabled
Disabled
Icon Explanation
Indicates that the breakpoint is currently enabled.
The debugger halts program execution at an enabled breakpoint. Click the icon to disable the breakpoint.
Indicates that the breakpoint is currently disabled.
The debugger does not halt program execution at a disabled breakpoint. Click the icon to enable the breakpoint.
Breakpoints Window
Use the Breakpoints window to set breakpoints.
this window.
Table 18.2 on page 224 explains items in the window.
222
IDE 5.6 User’s Guide
You can change the sort order of items in the Breakpoints window by clicking the column titles. Click the sort order button next to the rightmost column title to toggle between ascending and descending sort order.
Figure 18.1 Breakpoints window
Manipulating Program Execution
Breakpoints
Click an icon in this column to disable or enable a group
Click an icon in this column to disable or enable the Condition associated with the item.
Shows projects that the item affects (when it affects more than one project).
IDE 5.6 User’s Guide
223
Manipulating Program Execution
Breakpoints
Table 18.2 Breakpoints window—items
Item
Create
Breakpoint
Template
Icon
Create
Breakpoint
Group
Set Default
Breakpoint
Template
Rename
Breakpoint
Breakpoint
Properties
Explanation
Click to create a new breakpoint template in the Templates page.
You can create complex breakpoints based on properties you define in the breakpoint template.
Click to create a new group in the
Groups page of the Breakpoints window.
Clicking this button is equivalent to clicking
Breakpoints > Create
Breakpoint Group
.
Click to designate the selected item in the Templates page as the default breakpoint template. The debugger uses this template as the basis for creating new breakpoints.
Clicking this button is equivalent to clicking
Breakpoints > Set
Default Breakpoint Template
with the Breakpoints window frontmost.
Click to rename the selected item in the
Breakpoints window.
Clicking this button is equivalent to clicking
Breakpoints > Rename
Breakpoint
with the Breakpoints window frontmost.
Click to view more information about the selected breakpoint, such as name, associated condition, and number of hits during execution.
Clicking this button is equivalent to clicking
Breakpoints >
Breakpoint Properties
with the
Breakpoints window frontmost.
224
IDE 5.6 User’s Guide
Manipulating Program Execution
Breakpoints
Table 18.2 Breakpoints window—items (continued)
Item
Groups tab
Instances tab
Templates tab
Active
Inactive
Icon Explanation
Click to display the Groups page. This page lets you work with breakpoints, eventpoints, watchpoints, and internal breakpoints.
Click to display the Instances page. This page lets you set breakpoints, eventpoints, and watchpoints on a perthread or per-process basis.
Click to display the Templates page.
This page lets you define breakpoint templates and specify a default breakpoint template.
These items affect program execution.
Click the icon to make inactive.
These items do not affect program execution. Click the icon to make active.
Opening the Breakpoints Window
Use the Breakpoints window to view a list of breakpoints currently set in your projects.
To open the Breakpoints window, click
View > Breakpoints or Window >
Breakpoints Window.
NOTE
Double-click a breakpoint in the Breakpoints window to display its associated source-code line in an editor window.
Saving the Contents of the Breakpoints Window
You can save the contents of the Breakpoints window. This feature is useful for saving sets of breakpoint data, then later re-opening those sets.
IDE 5.6 User’s Guide
225
Manipulating Program Execution
Breakpoints
To save contents of the Breakpoints window, click
File > Save or File > Save
As. Clicking File > Save As lets you specify the name and path to save the file that stores the contents.
Working with Breakpoints
This section explains how to work with breakpoints in your source code and in the Breakpoints window.
Setting a Breakpoint
Use the Set Breakpoint command to set a breakpoint. A regular breakpoint suspends program execution. The debugger does not execute the line of source code that contains the regular breakpoint.
The default breakpoint template in the Templates page of the Breakpoints window determines the type of breakpoint that the debugger sets. The Auto
Breakpoint default breakpoint template defines a breakpoint that halts program execution at a line of source code. You can change the default breakpoint template to a breakpoint template that you specify.
shows some source code and the Breakpoints column to the left of the source code. Breakpoint icons appear in this column.
Figure 18.2 Setting Breakpoints
Breakpoints column
226
Click the dash icon to set an active breakpoint at this line.
To set a breakpoint at a line of source code, click the Breakpoints column next to that line. The active breakpoint icon appears in the column. After you debug the project, the debugger halts program execution at the line that has the active breakpoint icon.
IDE 5.6 User’s Guide
Manipulating Program Execution
Breakpoints
TIP
You can also set a breakpoint for selected results in the Search Results window and for selected items in the Symbolics window.
If you debug your project first, dash icons appear in the Breakpoints column next to source-code lines at which you can set breakpoints. Click a dash icon to set a breakpoint at that line. The dash changes to an active breakpoint icon.
NOTE
Setting a breakpoint in a file affects execution of all build targets that include that file.
Viewing Breakpoint Properties
After you set a breakpoint, you can view and modify its properties.
explains breakpoint properties.
To view properties for a breakpoint, select its name in the Breakpoints window and click Breakpoints > Breakpoint Properties.
Table 18.3 Breakpoint properties
Property Explanation
Breakpoint Type
Serial number
Condition
Hit Count
File-Info
Name
The type of item, such as Auto Breakpoint.
The non-persistent serial number that uniquely identifies the item in the IDE. Use this number to identify the item in scripting languages. This number is not the same number that the debugger plug-ins use to identify the item.
The conditional expression associated with the item. This conditional expression must evaluate to true in order for the item to perform its specified action.
Displays the number of times that program execution arrived at the breakpoint before the program stopped.
The path to the file that contains the item.
The name of the item, which appears in the Breakpoints window.
The IDE creates a default name based on the item properties, but you can change this name to a more meaningful one. Use this name to identify the item in scripting languages.
IDE 5.6 User’s Guide
227
Manipulating Program Execution
Breakpoints
Table 18.3 Breakpoint properties (continued)
Property Explanation
Original Process The persistent identifier for the active process at the time you set the item. If information about the active process was not available at the time you set the item, this identifier shows the process at the time the item affected program execution.
Original-Target
Times Hit
Times Left
The path to the build target that contains the item.
The number of times that this item affected program execution.
The number of times remaining for this item to affect program execution.
The thread in which the item takes effect.
Thread
Hardware The hardware on which to use the item. For example, set this property to Prefer Hardware to specify that the breakpoint is a hardware breakpoint.
Disabling a Breakpoint
Disable a breakpoint to prevent it from affecting program execution. The disabled breakpoint remains at the source-code line at which you set it, so that you can enable it later. Disabling the breakpoint is easier than clearing it and recreating it from scratch.
To disable a breakpoint, select its name in the Breakpoints window, or click the cursor on the source-code line that contains the breakpoint, and click
Debug >
Disable Breakpoint.
The enabled breakpoint icon changes to a disabled breakpoint icon (shown at left). The disabled breakpoint icon indicates that the breakpoint does not halt program execution.
Enabling a Breakpoint
Enable a breakpoint to have it halt program execution. Enabling a breakpoint that you previously disabled is easier than clearing it and re-creating it from scratch.
228
IDE 5.6 User’s Guide
Manipulating Program Execution
Breakpoints
To enable a breakpoint, select its name in the Breakpoints window, or click the cursor on the source-code line that contains the breakpoint, and click
Debug >
Enable Breakpoint.
The disabled breakpoint icon changes to an enabled breakpoint icon
(shown at left). The enabled breakpoint icon indicates that the breakpoint halts program execution.
Clearing a Breakpoint
Use the Clear Breakpoint command to clear a breakpoint.
To clear a breakpoint in source code, click the cursor on the source-code line that contains the breakpoint and click
Debug > Clear Breakpoint. You can also click the active breakpoint icon in the Breakpoints column to clear the breakpoint.
To clear a breakpoint in the Breakpoints window, select its name from the list in the Groups, Instances, or Templates pages and press Delete.
Clearing All Breakpoints
Use the Clear All Breakpoints command to clear all breakpoints from your projects.
To clear all breakpoints, click
Debug > Clear All Breakpoints. The
Breakpoints window reflects your changes.
Setting a Temporary Breakpoint
Use the Temporary Breakpoint command to set temporary breakpoints. Unlike a regular breakpoint that halts execution each time you debug a project, a
temporary breakpoint halts execution only once. The debugger removes the temporary breakpoint after halting program execution. Setting a temporary breakpoint is equivalent to using the
Run To Cursor command.
To set a temporary breakpoint at a line of source code, Alt-click or Option-click the dash icon next to that line. The dash icon changes to an active breakpoint icon. After you debug the project, the debugger halts program execution at the
IDE 5.6 User’s Guide
229
Manipulating Program Execution
Breakpoints
line that has the active breakpoint icon. After execution halts, the active breakpoint icon reverts to a dash icon.
Setting a Conditional Breakpoint
Use the Condition column of the Breakpoints window to set a conditional breakpoint. A conditional breakpoint has an associated conditional expression.
The debugger evaluates the expression to determine whether to halt program execution at that breakpoint.
A conditional breakpoint behaves in two different ways:
• If the expression evaluates to true (a non-zero value), the debugger halts program execution.
• If the expression evaluates to false (a zero value), program execution continues without stopping.
Follow these steps to set a conditional breakpoint:
1. Set a breakpoint that you want to associate with a conditional expression.
2. Depending upon operating system, click
View > Breakpoints or Window
> Breakpoints Window .
3. In the Groups or Instances pages of the Breakpoints window, find the breakpoint that you want to associate with a conditional expression.
4. In the Condition column adjacent to a specific breakpoint, double-click to display a text box in the blank area.
5. Enter an expression in the text box.
During subsequent debugging sessions, the debugger evaluates the expression to determine whether to halt program execution at the conditional breakpoint.
NOTE
Alternatively, drag-and-drop an expression from a source view or from the Expression window into the Breakpoints window.
To signal a breakpoint to happen after the nth execution of the instruction, you can enter the keywords "Hit Count" in the condition text box. For example, enter
Hit Count > 5 for the breakpoint action to occur after the instruction has executed five times.
230
IDE 5.6 User’s Guide
Manipulating Program Execution
Breakpoints
Setting a thread-specific conditional breakpoint
CodeWarrior's debugger supports thread-specific breakpoints. Depending on what the protocol supports, there are several different ways it's supported. You can setup a special condition on a breakpoint. Enter mwThreadID ==
threadID
, where mwThreadID is a keyword recognized by the core debugger and threadID is the number that represents the ID of the thread that you want to stop.
Working with Breakpoint Templates
This section explains how to define breakpoint templates, specify a default template, and delete templates.
A breakpoint template defines all properties of a breakpoint except for its location in source code. For example, you can define a breakpoint template that stops execution only 10 times, and only if an associated conditional expression evaluates to false.
The default breakpoint template is the breakpoint template that the debugger uses as the basis for new breakpoints that you set. For example, if you define a breakpoint template named Thread Break, you can specify it as the default breakpoint template. After you do this, the Thread Break template properties apply to all new breakpoints that you set in your source code.
The initial default breakpoint template is Auto Breakpoint, which defines the regular breakpoint that halts program execution at a line of source code. You can change the default breakpoint template from Auto Breakpoint to any of your breakpoint templates. You can also change the default breakpoint template back to
Auto Breakpoint.
Creating a Breakpoint Template
Use the Templates page of the Breakpoints window to define breakpoint templates. You define a breakpoint template by using an existing breakpoint as a starting point.
To define a breakpoint template, follow these steps:
1. Set a breakpoint in your source code.
IDE 5.6 User’s Guide
231
Manipulating Program Execution
Breakpoints
2. Click
View > Breakpoints or Window > Breakpoints Window.
The Breakpoints window appears.
3. Click the Groups tab.
4. Select the name of the breakpoint that you just set.
The debugger gives the breakpoint a default name that includes the name of the file in which you set the breakpoint and the line at which you set the breakpoint.
5. Click the Create Breakpoint Template button in the toolbar of the
Breakpoints window.
6. Click the Templates tab of the Breakpoints window.
The new breakpoint template appears in this page with the name New
Template.
You can rename the breakpoint template by selecting it and clicking
Breakpoints > Rename Breakpoint, or clicking the Rename Breakpoint button in the Breakpoints window toolbar.
NOTE
You cannot rename the Auto Breakpoint template.
Deleting a Breakpoint Template
Use the Templates page of the Breakpoints window to delete breakpoint templates that you no longer need.
To delete a breakpoint template, follow these steps:
1. Click View > Breakpoints or Window > Breakpoints Window.
The Breakpoints window appears.
2. Click the Templates tab of the Breakpoints window.
3. Select the breakpoint template that you want to delete.
4. Click Edit > Delete or Edit > Clear.
NOTE
You cannot delete the Auto Breakpoint template, because it defines the regular breakpoint.
232
IDE 5.6 User’s Guide
Manipulating Program Execution
Eventpoints
Specifying the Default Breakpoint Template
Use the Templates page of the Breakpoints window to specify the default breakpoint template. The debugger uses this template as the basis for creating new breakpoints in your source code.
The initial default breakpoint template is Auto Breakpoint, which defines the regular breakpoint. You can specify any one of your breakpoint templates, or
Auto Breakpoint, as the default breakpoint template.
To specify the default breakpoint template, follow these steps:
1. Click
View > Breakpoints or Window > Breakpoints Window.
The Breakpoints window appears.
2. Click the Templates tab of the Breakpoints window.
3. Select the breakpoint template that you want to specify as the default breakpoint template.
4. Click
Breakpoints > Set Default Breakpoint Template or click the Set
Default Breakpoint Template icon in the Breakpoints window toolbar.
The debugger now uses the breakpoint template that you specified as the basis for creating new breakpoints in your source code.
Eventpoints
You use eventpoints to perform a task when program execution arrives at a specific line of source code or when an associated conditional expression evaluates to true. You can set an eventpoint that performs a task such as running a script, playing a sound, or collecting trace data. An eventpoint is equivalent to a breakpoint that performs a task other than halting program execution.
You can use several kinds of eventpoints. The Breakpoints column represents these eventpoints with various icons. You can set more than one eventpoint on the same line of source code. The Breakpoints column shows all eventpoints that
you set for each line. Table 18.4 on page 234 explains the eventpoints and shows
their corresponding icons.
IDE 5.6 User’s Guide
233
Manipulating Program Execution
Eventpoints
Table 18.4 Eventpoints
Eventpoint
Icon Explanation
Logs or speaks a string or expression and records messages to the Log window
Pauses execution long enough to refresh debugger data
Runs a script, application, or other item
Skips execution of a line of source code
Plays a sound
Stops collecting trace data for the Trace window
Starts collecting trace data for the Trace window
You can also create breakpoint templates to simplify the process of setting complex eventpoints. Creating a breakpoint template for an eventpoint is nearly identical to creating a breakpoint template for a breakpoint. The difference is using an eventpoint instead of a breakpoint as the starting point for creating the breakpoint template.
Eventpoints have enabled and disabled states.
Table 18.5 on page 235 explains
these states.
234
IDE 5.6 User’s Guide
Manipulating Program Execution
Eventpoints
Table 18.5 Eventpoints—states
State Icon Explanation
Enabled See
Disabled
Indicates that the eventpoint is currently enabled. The debugger performs the specified task at an enabled eventpoint. Click the icon to disable the eventpoint.
Indicates that the eventpoint is currently disabled. The debugger does not perform the specified task at a disabled eventpoint. Click the icon to enable the eventpoint.
TIP
You can set an eventpoint in the Thread window and for selected variables in the Symbolics window.
Log Point
A Log Point logs or speaks a string or expression. A Log Point can also record messages to the Log window. You can configure the message that appears in the log window.
Setting a Log Point
To set a Log Point, follow these steps:
1. Click the cursor on the line of source code at which you want to set the Log
Point.
2. Click Debug > Set Eventpoint > Set Log Point.
The Log Point Settings window appears (
3. Enter the text of your log message in the Message text box.
IDE 5.6 User’s Guide
235
Manipulating Program Execution
Eventpoints
Figure 18.3 Log Point Settings window
236
4. Check at least one of these checkboxes:
• Log Message—check to have the IDE display your message in a Message window when program execution reaches the Log Point
• Speak Message (Windows OS)—check to have the IDE use the sound capabilities of the host operating system to speak the message that you enter in the Message text box.
NOTE
(Windows) Install the Speech software development kit (SDK) in order to have the Speak Message feature work correctly.
• Treat as Expression—check to have the IDE evaluate the text you enter in the Message text box as an expression. For example, if you enter the name of a variable in the Message text, the debugger writes the value of that variable in the console output window.
• Stop in Debugger—check to stop program execution in the debugger
5. Click the OK button to confirm your settings.
Example use: If you want to display the value of a variable each time some code is executed, set a log point, check the Log Message and Treat as expression boxes and enter the variable name in the edit box, then click OK.
Clearing a Log Point
To clear a Log Point, follow these steps:
IDE 5.6 User’s Guide
Manipulating Program Execution
Eventpoints
1. Select the Log Point that you want to clear.
Click the cursor on the line of source code that has the Log Point, or select the
Log Point by name in the Breakpoints window.
2. Click
Debug > Clear Eventpoint > Clear Log Point.
Pause Point
A Pause Point suspends program execution long enough to refresh debugger data. For example, without setting a pause point, you must wait for the debugger to halt program execution before it can refresh data. Setting a Pause Point, however, lets you pause the debugging session to give the debugger time to refresh the data.
Setting a Pause Point
To set a Pause Point, follow these steps:
1. Click the cursor on the line of source code at which you want to set the
Pause Point.
2. Click Debug > Set Eventpoint > Set Pause Point.
Clearing a Pause Point
To clear a Pause Point, follow these steps:
1. Select the Pause Point that you want to clear.
Click the cursor on the line of source code that has the Pause Point, or select the Pause Point by name in the Breakpoints window.
2. Click
Debug > Clear Eventpoint > Clear Pause Point.
Script Point
A Script Point runs a script, application, or other item. After you set a Script
Point at a line of source code, its associated action occurs when program execution arrives at that line. For example, you can set a Script Point that performs these actions:
• (Windows) execute a file as if you had used a Windows command line
IDE 5.6 User’s Guide
237
Manipulating Program Execution
Eventpoints
• (Mac OS) launch an AppleScript or application
Setting a Script Point
To set a Script Point, follow these steps:
1. Click the cursor on the line of source code at which you want to set the
Script Point.
2. Click
Debug > Set Eventpoint > Set Script Point.
The Script Point Settings window appears (
).
Figure 18.4 Script Point Settings window
238
3. Use the list box to specify Commands or Script File.
Specify Commands (Windows) if you intend to enter a command line that executes a file. Specify Script File if you intend to enter a path to a script file.
4. Enter the text of your Script Point in the text box.
Enter a command line or a path to a script file.
5. Check Stop in Debugger if you want to stop program execution in the debugger.
6. Click the OK button to confirm your settings.
Clearing a Script Point
To clear a Script Point, follow these steps:
IDE 5.6 User’s Guide
Manipulating Program Execution
Eventpoints
1. Select the Script Point that you want to clear.
Click the cursor on the line of source code that has the Script Point, or select the Script Point by name in the Breakpoints window.
2. Click
Debug > Clear Eventpoint > Clear Script Point.
Skip Point
A Skip Point prevents the debugger from executing a line of source code. This eventpoint is useful when you are aware of a line that you need to fix, but would like to go ahead and debug the rest of the program. You can set a Skip Point at that line and have the debugger execute the rest of the project without executing that particular line.
NOTE
Skip Points do not work with the Java programming language.
Setting a Skip Point
To set a Skip Point, follow these steps:
1. Click the cursor on the line of source code at which you want to set the Skip
Point.
2. Click
Debug > Set Eventpoint > Set Skip Point.
Clearing a Skip Point
To clear a Skip Point, follow these steps:
1. Select the Skip Point that you want to clear.
Click the cursor on the line of source code that has the Skip Point, or select the Skip Point by name in the Breakpoints window.
2. Click Debug > Clear Eventpoint > Clear Skip Point.
Sound Point (Windows OS)
A Sound Point is an audible alert. You can set a Sound Point so that when you step or run through code, the IDE plays a sound when program execution arrives at the line that has a Sound Point. Unlike a Log Point set to
Speak Message,
IDE 5.6 User’s Guide
239
Manipulating Program Execution
Eventpoints
which speaks the message you specify, the Sound Point plays a simple notification sound.
Setting a Sound Point
To set a Sound Point, follow these steps:
1. Click the cursor on the line of source code at which you want to set the
Sound Point.
2. Click
Debug > Set Eventpoint > Set Sound Point.
The Sound Point Settings window appears (
Figure 18.5 Sound point settings
240
3. Use the Sound to Play list box to specify the notification sound that you want the IDE to play when program execution arrives at the Sound Point.
4. Check Stop in Debugger if you want to stop program execution in the debugger.
5. Click the OK button to confirm your settings.
Clearing a Sound Point
To clear a Sound Point, follow these steps:
1. Select the Sound Point that you want to clear.
Click the cursor on the line of source code that has the Sound Point, or select the Sound Point by name in the Breakpoints window.
IDE 5.6 User’s Guide
Manipulating Program Execution
Eventpoints
2. Click
Debug > Clear Eventpoint > Clear Sound Point.
Trace Collection Off
A Trace Collection Off eventpoint stops the collection of trace data. This eventpoint is useful when you want trace collection to stop when program execution reaches a line of source code that you specify.
Setting a Trace Collection Off Eventpoint
To set a Trace Collection Off eventpoint, follow these steps:
1. Click the cursor on the line of source code at which you want to set the
Trace Collection Off eventpoint.
2. Click Debug > Set Eventpoint > Set Trace Collection Off.
Clearing a Trace Collection Off Eventpoint
To clear a Trace Collection Off eventpoint, follow these steps:
1. Select the Trace Collection Off eventpoint that you want to clear.
Click the cursor on the line of source code that has the Trace Collection Off eventpoint, or select the Trace Collection Off eventpoint by name in the
Breakpoints window.
2. Click
Debug > Clear Eventpoint > Clear Trace Collection Off.
Trace Collection On
A Trace Collection On eventpoint starts the collection of trace data. This eventpoint is useful when you want trace collection to start when program execution reaches a line of source code that you specify.
Setting a Trace Collection On Eventpoint
To set a Trace Collection On eventpoint, follow these steps:
1. Click the cursor on the line of source code at which you want to set the
Trace Collection On eventpoint.
IDE 5.6 User’s Guide
241
Manipulating Program Execution
Eventpoints
2. Click
Debug > Set Eventpoint > Set Trace Collection On.
Clearing a Trace Collection On Eventpoint
To clear a Trace Collection On eventpoint, follow these steps:
1. Select the Trace Collection On eventpoint that you want to clear.
Click the cursor on the line of source code that has the Trace Collection On eventpoint, or select the Trace Collection On eventpoint by name in the
Breakpoints window.
2. Click Debug > Clear Eventpoint > Clear Trace Collection On.
Working with Eventpoints
This section explains how to work with eventpoints in your source code and in the Breakpoints window.
242
Viewing Eventpoint Properties
After you set an eventpoint, you can view and modify its properties.
To view properties for an eventpoint, select its name in the Breakpoints window and click Breakpoints > Breakpoint Properties.
Disabling an Eventpoint
Disable an eventpoint to prevent it from performing its specified action. The disabled eventpoint remains at the source-code line at which you set it, so that you can enable it later. Disabling the eventpoint is easier than clearing it and recreating it from scratch.
To disable an eventpoint, follow these steps:
1. Select the eventpoint that you want to disable.
Select the eventpoint by name in the Breakpoints window, or click the cursor on the source-code line that contains the eventpoint.
2. Click Debug > Disable Eventpoint.
The
Disable Eventpoint menu appears.
IDE 5.6 User’s Guide
Manipulating Program Execution
Eventpoints
3. From the menu, click the
Disable Eventpoint command, where Eventpoint is the type of eventpoint that you want to disable.
The enabled eventpoint icon changes to a disabled eventpoint icon (shown at left). The disabled eventpoint icon indicates that the eventpoint does not perform its specified action.
Enabling an Eventpoint
Enable an eventpoint to have it perform its specified action during program execution. Enabling an eventpoint that you previously disabled is easier than clearing it and re-creating it from scratch.
To enable an eventpoint, follow these steps:
1. Select the eventpoint that you want to enable.
Select the eventpoint by name in the Breakpoints window, or click the cursor on the source-code line that contains the eventpoint.
2. Click Debug > Enable Eventpoint.
The
Enable Eventpoint menu appears.
3. From the menu, click the Enable Eventpoint command, where Eventpoint is the type of eventpoint that you want to enable.
The disabled eventpoint icon changes to its original eventpoint icon ( Table
). The enabled eventpoint icon indicates that the eventpoint will perform its specified action.
Setting a Conditional Eventpoint
Use the Condition column of the Breakpoints window to set a conditional eventpoint. A conditional eventpoint has an associated conditional expression.
The debugger evaluates the expression to determine whether the eventpoint performs its specified action.
A conditional eventpoint behaves in two different ways:
• If the expression evaluates to true (a non-zero value), the eventpoint performs its specified action.
• If the expression evaluates to false (a zero value), the eventpoint does not perform its specified action.
IDE 5.6 User’s Guide
243
Manipulating Program Execution
Watchpoints
Follow these steps to set a conditional eventpoint:
1. Set an eventpoint that you want to associate with a conditional expression.
2. Click
View > Breakpoints or Window > Breakpoints Window.
The Breakpoints window appears.
3. In the Groups or Instances pages of the Breakpoints window, find the eventpoint that you want to associate with a conditional expression.
4. Double-click the Condition column in align with the eventpoint.
5. Enter an expression in the Condition text box.
During subsequent debugging sessions, the debugger evaluates the expression to determine whether the eventpoint performs its specified action.
NOTE
Alternatively, drag-and-drop an expression from a source view or from the Expression window into the Breakpoints window.
Watchpoints
You use watchpoints (sometimes referred to as access breakpoints) to halt program execution when a specific location in memory changes value. After you set a watchpoint at a key point in memory, you can halt program execution when that point in memory changes value. You can then examine the call chain, check register and variable values, and step through your code. You can also change values and alter the flow of normal program execution. A watchpoint is equivalent to a memory breakpoint.
Unlike a breakpoint, a watchpoint can detect when any part of your program affects memory. When the program writes a new value to the address or area of memory that has the watchpoint, the debugger suspends program execution.
NOTE
You cannot set a watchpoint on a local variable, because the debugger cannot detect watchpoints for variables stored on the stack or in registers.
You can also create breakpoint templates to simplify the process of setting complex watchpoints. Creating a breakpoint template for a watchpoint is nearly identical to creating a breakpoint template for a breakpoint. The difference is
244
IDE 5.6 User’s Guide
Manipulating Program Execution
Watchpoints
using a watchpoint instead of a breakpoint as the starting point for creating the breakpoint template.
Watchpoints have enabled and disabled states.
explains these states.
Table 18.6 Watchpoints—states
State
Enabled
Disabled
Icon Explanation
Indicates that the watchpoint is currently enabled. The debugger halts program execution at an enabled watchpoint. Click the icon to disable the watchpoint.
Icon disappears, indicating that the watchpoint is currently disabled. The debugger does not halt program execution at a disabled watchpoint. Click the icon to enable the watchpoint.
TIP
You can set a watchoint in the Thread window and for selected variables in the Symbolics window.
A project can have a different maximum number of watchpoints, depending on the build target. The IDE generally limits the acceptable range for watchpoints to memory that it can write-protect. This range also depends on the host and on the application. For more information, see the Targeting documentation.
Setting a Watchpoint
Use the Set Watchpoint command to set a watchpoint. A watchpoint suspends program execution when the memory location that you specify changes value.
The debugger does not execute the line of source code that contains the watchpoint.
To set a watchpoint, follow these steps:
1. Click
Project > Debug.
A debugging session starts.
2. Click
Data > View Memory.
A Memory window appears.
IDE 5.6 User’s Guide
245
Manipulating Program Execution
Watchpoints
3. Select a range of bytes in the Memory window.
Do not double-click the range of bytes.
4. Click
Debug > Set Watchpoint.
An underline appears beneath the selected range of bytes, indicating that you set a watchpoint in that range.
TIP
You can change the color of the watchpoint underline in the Display
Settings panel of the IDE Preferences window
When you debug the project, the debugger halts program execution if the specified memory location changes value.
TIP
You can also set a watchpoint for selected variables in the Thread,
Variable, and Symbolics windows.
Viewing Watchpoint Properties
After you set a watchpoint, you can view and modify its properties.
To view properties for a watchpoint, select its name in the Breakpoints window and click Breakpoints > Breakpoint Properties.
Disabling a Watchpoint
Disable a watchpoint to prevent it from affecting program execution. The disabled watchpoint remains at the memory location at which you set it, so that you can enable it later.
To disable a watchpoint, select its name in the Breakpoints window, or select the range of bytes in the Memory window at which you set the watchpoint, and click
Debug > Disable Watchpoint.
The enabled watchpoint icon disappears, which indicates a disabled watchpoint.
246
IDE 5.6 User’s Guide
Manipulating Program Execution
Watchpoints
Enabling a Watchpoint
Enable a watchpoint to have it halt program execution when its associated memory location changes value. Enabling a watchpoint that you previously disabled is easier than clearing it and re-creating it from scratch.
To enable a watchpoint, select its name in the Breakpoints window, or select the range of bytes in the Memory window at which you set the watchpoint, and click
Debug > Enable Watchpoint.
The enabled watchpoint icon appears (shown at left), which indicates an enabled watchpoint.
Clearing a Watchpoint
Use the Clear Watchpoint command to clear a watchpoint.
To clear a watchpoint in the Memory window, select range of bytes at which you set the watchpoint and click
Debug > Clear Watchpoint.
To clear a watchpoint in the Breakpoints window, select its name from the list in the Groups or Instances pages and press Delete.
Clearing All Watchpoints
Use the Clear All Watchpoints command to clear all watchpoints from your projects.
To clear all watchpoints, click
Debug > Clear All Watchpoints. The
Breakpoints window reflects your changes.
Setting a Conditional Watchpoint
Use the Condition column of the Breakpoints window to set a conditional watchpoint. A conditional watchpoint has an associated conditional expression.
The debugger evaluates the expression to determine whether to halt program execution at that watchpoint.
A conditional watchpoint behaves in two different ways:
IDE 5.6 User’s Guide
247
Manipulating Program Execution
Special Breakpoints
• If the expression evaluates to true (a non-zero value), the debugger halts program execution when the memory location associated with the watchpoint changes value.
• If the expression evaluates to false (a zero value), program execution continues without stopping.
Follow these steps to set a conditional watchpoint:
1. Set a watchpoint that you want to associate with a conditional expression.
2. Click View > Breakpoints or Window > Breakpoints Window.
The Breakpoints window appears.
3. In the Groups or Instances pages of the Breakpoints window, find the watchpoint that you want to associate with a conditional expression.
4. Double-click the Condition column adjacent to the watchpoint.
5. Enter an expression in the Condition text box.
During subsequent debugging sessions, the debugger evaluates the expression to determine whether to halt program execution at the conditional watchpoint.
NOTE
Alternatively, drag-and-drop an expression from a source view or from the Expression window into the Breakpoints window.
Special Breakpoints
Special breakpoints halt program execution for very specific reasons:
• program execution arrives at the beginning of the function
main()
• a C++ or Java exception occurs
• an event occurs that the debugger plug-in defines as a break event
You cannot change or delete special breakpoints, but you can enable and disable them.
Disabling Special Breakpoints
Disable special breakpoints to prevent them from affecting program execution.
248
IDE 5.6 User’s Guide
Manipulating Program Execution
Special Breakpoints
To disable special breakpoints, click the Active icon to the left of the
Special group in the Groups page of the Breakpoints window.
The active icon changes to an inactive icon, which indicates that the special breakpoints are disabled.
Enabling Special Breakpoints
Enable special breakpoints to have them halt program execution.
To enable special breakpoints, click the Inactive icon (shown at left) to the left of the Special group in the Groups page of the Breakpoints window.
The inactive icon changes to an active icon, which indicates that the special breakpoints are enabled.
IDE 5.6 User’s Guide
249
Manipulating Program Execution
Special Breakpoints
250
IDE 5.6 User’s Guide
Working with Variables
19
This chapter explains how to work with variables in a CodeWarrior
™
IDE debugging session. The following windows show various types of information about variables.
• Global Variables window—shows information about global and static variables in your project
• Variable window—shows information for an individual variable in your project
• Expressions window—shows variable values and lets you form calculation expressions based on those values
This chapter contains these sections:
•
“Global Variables Window” on page 251
•
•
“Expressions Window” on page 256
Global Variables Window
The Global Variables window shows all global and static variables for each process that you debug. You can open separate Global Variables windows for each process in the same build target. Use the window to observe changes in variable values as the program executes.
Figure 19.1 on page 252 shows the Global Variables window. Table 19.1 on page 252
explains the items in the window.
IDE 5.6 User’s Guide
251
Working with Variables
Global Variables Window
Figure 19.1 Global Variables window
Table 19.1 Global Variables window—items
Item
File
Variables
Explanation
Lists source files that declare global or static variables. Click a source file to view its static variables. Click Global Variables to view all global variables declared in the program.
Lists variables according to the file selected in the File pane.
Double-click a variable to display it in a separate
Variable window.
252
Opening the Global Variables Window
Use the Global Variables window to display global variables declared in a program or static variables declared in source files that comprise the program.
To open the Global Variables window, select View > Global Variables or
Window > Global Variables Window.
Viewing Global Variables for Different Processes
You can open a separate Global Variables window for each process that the same parent application creates.
To open the Global Variables window for a particular process, follow these steps:
IDE 5.6 User’s Guide
Working with Variables
Variable Window
1. Click
Project > Debug.
A debugging session starts.
2. In the Thread window toolbar, use the Process list box to specify the process that has the global variables that you want to examine.
3. Click View > Global Variables or Window > Global Variables
Window.
Repeat these steps for each process that has global variables that you want to examine.
Variable Window
A Variable window allows manipulation of a single variable or variable hierarchy used in source code. For a local variable, the window closes after program execution exits the routine that defines the variable.
Figure 19.2 on page 253 shows the Variable window.
Figure 19.2 Variable window
Opening a Variable Window
1. Select a variable in any window pane that lists variables.
2. Open a Variable window:
• Select
Data > View Variable, or
• Double-click the variable.
A Variable window appears. Double-click a value to change it.
IDE 5.6 User’s Guide
253
Working with Variables
Variable Window
TIP
Use Variable windows to monitor individual variables independently of other windows. For example, use a Variable window to continue monitoring a variable that leaves the current scope of program execution in the Thread window.
Alternatively, use a contextual menu to open a variable window, as explained in
Table 19.2 Opening a Variable window by using a contextual menu
On this host…
Windows
Do this…
Macintosh
Solaris
Linux
Right-click the variable and select
View Variable
.
Control-click the variable and select
View Variable
.
Click and hold on the variable, then select
View
Variable
.
Click and hold on the variable, then select
View
Variable
.
Manipulating Variable Formats
You can change the way the Variables window displays data. For example, you can add labels to variable data so that those labels appear in the Variables window and clarify the displayed data.
For example, suppose you have the structure defined in
254
IDE 5.6 User’s Guide
Working with Variables
Variable Window
Listing 19.1 Sample structure definition
struct Rect {
short top;
short left;
short bottom;
short right;
};
The Variables window might show an instance of the
Rect
structure like this: myRect 0x000DCEA8
You can create an XML file that defines a new way to display the structure, as shown in
.
Listing 19.2 Sample variable format definition
<variableformats>
<variableformat>
<osname>osWin32</osname>
<runtimename>runtimeWin32</runtimename>
<typename>Rect</typename>
<expression>
"{T: " + ^var.top +
" L: " + ^var.left +
" B: " + ^var.bottom +
" R: " + ^var.right +
"}{H: " + (^var.bottom - ^var.top) +
" W: " + (^var.right - ^var.left) + "}"
</expression>
</variableformat>
</variableformats>
Given this new variable format definition, the Variables window now shows the same
myRect
instance like this: myRect {T: 30 L: 30 B: 120 R: 120}{H: 90 W: 90}
To manipulate variable formats, you place an XML file that defines the new format inside the
VariableFormats
directory at
CodeWarrior/Bin/Plugins/Support/VariableFormats/ where
CodeWarrior
is the path to your CodeWarrior installation.
IDE 5.6 User’s Guide
255
Working with Variables
Expressions Window
The IDE reads the XML files in this directory to determine how to display variable data.
explains the main XML tags that the IDE recognizes.
Table 19.3 Variable formats—XML tags
Tag
variableformats variableformat osname runtimename typename expression
Explanation
A group of variable format records.
An individual variable format record.
The operating system that defines the scope of this record.
The runtime that defines the scope of this record.
The name of the Type that this record will format.
The expression that reformats the variable display. The IDE evaluates this expression to determine the format that it applies to the variable. The IDE replaces all occurrences of the
^var
placeholder with the name of the variable.
Expressions Window
The Expressions window helps you monitor and manipulate these kinds of items:
• global and local variables
• structure members
• array elements
Figure 19.3 on page 257 shows the Expressions window. Table 19.4 on page 257
explains items in window.
256
IDE 5.6 User’s Guide
Figure 19.3 Expressions window
Working with Variables
Expressions Window
Table 19.4 Expressions window—items
Item
Expression column
Value column
Explanation
Lists expressions and expression hierarchies. Click the hierarchical controls to expand or collapse the expression view.
Shows the current value of each corresponding expression. Doubleclick a value to change it.
Opening the Expressions Window
Use the Expressions window to inspect frequently used variables as their values change during a debugging session.
To open the Expressions window, select
View > Expressions or Window >
Expressions Window.
Alternatively, click the Expressions button in the Thread window toolbar to open the Expressions window.
IDE 5.6 User’s Guide
257
Working with Variables
Expressions Window
258
Adding Expressions
The Expressions window handles various ways of adding expressions for inspection.
To add an expression to the Expressions window, do this:
• Select the desired expression and choose
Data > Copy to Expression, or
• Use the contextual menu with a selected expression, or
• Drag and drop an expression from another window into the Expressions window.
The Expressions window reflects the added expression. Drag expressions within the window to reorder them.
Adding a Constant Value to a Variable
You can enter an expression in the Expressions window that adds a constant value to a variable. Suppose
x
is a short integer type in the variable context of some function scope in C++ code. You can enter the expression
x+1
and the
IDE computes the resulting value just as you would compute it on a calculator.
1. Select the variable to which you want to add a constant value.
For example, select
x
.
2. Enter an expression that adds a constant value to the variable.
For example, append
+1
to
x
so that the resulting expression is
x+1
.
The IDE adds the constant value to the variable and displays the result in the
Expressions window.
Making a Summation of Two Variables
You can enter an expression in the Expressions window that computes the sum of two variables. Suppose
x
is a short integer type in the variable context of some function scope in C++ code. You can enter the expression
x+y
and the IDE computes the resulting value just as you would compute it on a calculator.
1. Select the variable to which you want to add another variable.
For example, select
x
.
IDE 5.6 User’s Guide
Working with Variables
Expressions Window
2. Enter an expression that adds a second variable to the first variable.
For example, append
+y
to
x
so that the resulting expression is
x+y
.
The IDE computes the sum of the two variables and displays the result in the
Expressions window.
Removing Expressions
The Expressions window handles various ways of removing expressions that no longer require inspection.
To remove an expression from the Expressions window:
• Select the expression and choose Edit > Delete or Edit > Clear, or
• Select the expression and press the Backspace or Delete key.
The Expressions window updates to reflect the removed expression.
NOTE
Unlike the Variable window, the Expressions window does not remove a local variable after program execution exits the routine that defines the variable.
IDE 5.6 User’s Guide
259
Working with Variables
Expressions Window
260
IDE 5.6 User’s Guide
20
Working with Memory
This chapter explains how to work with variables in a CodeWarrior
™
IDE debugging session. The following windows show various types of information about variables:
• Memory window—shows the memory that your project manipulates as it executes
• Array window—shows the contents of arrays that your project manipulates as it executes
• Registers window—shows the register contents of a processor
• Register Details window—shows a graphical representation of processor registers and explains register contents
• Cache window—shows processor or instructor cache data
• Trace window—shows collected trace information
This chapter contains these sections:
•
•
•
“Registers Window” on page 269
•
“Register Details Window (Windows OS)” on page 272
Memory Window
The Memory window manipulates program memory content in various data types. Use this resizable window to perform these tasks:
• View memory
• Change individual memory bytes
• Set watchpoints
IDE 5.6 User’s Guide
261
Working with Memory
Memory Window
CAUTION
Arbitrarily changing memory contents could degrade the stability of the IDE, another program, or the operating system itself. Understand the consequences of manipulating memory.
Figure 20.1 on page 262 shows the Memory window. Table 20.1 on page 262
explains the items in the window.
Figure 20.1 Memory window
Table 20.1 Memory window—items
Item
Display
Icon
View
Memory Space
(for processors that support multiple memory spaces)
262
Explanation
Enter a symbol representing the starting address of memory to display. Valid symbols include addresses and non-evaluating expressions, such as
main
or
x
.
Select the data format in which to view memory contents.
Choose the memory space in which to view selected variables or source code.
IDE 5.6 User’s Guide
Working with Memory
Memory Window
Table 20.1 Memory window—items (continued)
Item
Previous Memory
Block
Icon Explanation
Click to view the preceding block of memory.
Next Memory
Block
Address
Hex
Ascii
Word Size
Page
(for processors that support multiple pages)
Click to view the succeeding block of memory.
Displays a contiguous range of memory addresses, beginning with the address entered in the Display field.
Displays a hexadecimal representation of the memory addresses shown in the Address pane.
Displays an ASCII representation of the memory addresses shown in the
Address pane.
Select the bit size of displayed words.
Select the memory-space page in which to view source code.
Viewing and Changing Raw Memory
Use the View Memory command to view and change the raw contents of memory.
1. Select an item or expression that resides at the memory address to be examined.
2. Choose Data > View Memory.
A new Memory window appears.
IDE 5.6 User’s Guide
263
Working with Memory
Memory Window
3. Select Raw data from the View list pop-up.
The contents of memory at the selected location appears in both hexadecimal and ASCII.
Scroll through memory by selecting the Address, Hex, or ASCII pane of the
Memory window and then use the up and down arrow keys. Display a different memory location by changing the expression in the Display field.
Change the word size displayed in the Memory window by using the Word
Size list pop-up. The choices are 8, 16, and 32 bits.
Change the contents of a particular memory location by double-clicking on that location in either the hexadecimal or ASCII pane of the Memory window.
Replace the current value by entering a hexadecimal value in the Hex pane or a string of ASCII characters in the ASCII pane.
Alternatively, use a contextual menu to view and change memory, as explained in
.
Table 20.2 Opening a Memory window by using a contextual menu
On this host… Do this…
Windows
Macintosh
Solaris
Linux
Right-click the item and select
View Memory
.
Control-click the item and select
View Memory
.
Click and hold on the item, then select
View Memory
.
Click and hold on the item, then select
View Memory
.
Viewing Memory Referenced by a Pointer
Use the View Memory command to inspect memory referenced by a pointer; including an address stored in a register.
1. Select a pointer in a source window.
2. Choose Data > View Memory.
A new Memory window appears.
264
IDE 5.6 User’s Guide
Working with Memory
Memory Window
3. Select Raw data from the View list pop-up.
The contents of memory referenced by the pointer appears in both hexadecimal and ASCII.
Viewing Different Memory Spaces
Use the Page list pop-up to view a particular memory space.
NOTE
This feature is available only for processors that support multiple memory spaces.
1. Select the name of a variable or function in a source window.
2. Choose Data > View Memory.
A Memory window appears.
3. Select a memory space from the Page list pop-up.
4. Select Raw data from the View list pop-up if inspecting a variable. Select
Disassembly, Source, or Mixed from the View list pop-up if inspecting source code.
The Memory window displays the selected memory-space page.
Setting a Watchpoint in the Memory Window
To set a Watchpoint using the Memory window, follow these steps:
1.
Run/Debug your program.
2. Choose Data
> View Memory.
This opens the Memory window.
3. Select a range of bytes in the Memory window.
Do not double-click the range of bytes.
4. Choose
Debug > Set Watchpoint.
NOTE
A red line appears under the selected variable in the Variable window, indicating that you have set a Watchpoint. You can change the color
IDE 5.6 User’s Guide
265
Working with Memory
Array Window
of this line in the Display Settings panel of the IDE Preferences window (Edit > IDE Preferences).
Clearing Watchpoints from the Memory window
To clear a Watchpoint from the Memory window, follow these steps:
1. Select a range of bytes in the Memory window.
2. Choose Debug > Clear Watchpoint.
To clear all Watchpoints from the Memory window:
1. Open the Memory window.
You do not have to select a range of bytes.
2. Choose Debug > Clear All Watchpoints.
NOTE
All Watchpoints clear automatically when the target program terminates or the debugger terminates the program. Watchpoints will reset next time the program runs.
Array Window
An Array window allows manipulation of a contiguous block of memory, displayed as an array of elements. The window lists array contents sequentially, starting at element 0.
The Array window title shows the base address bound to the array. The base address can bind to an address, a variable, or a register. An array bound to a local variable closes after the routine that defines the variable returns to the calling routine.
For array elements cast as structured types, a hierarchical control appears to the left of each element. Use these hierarchical controls to expand or collapse the display of each element’s contents.
Figure 20.2 on page 267 shows an Array window. Table 20.3 on page 267
explains the items in the window.
266
IDE 5.6 User’s Guide
Figure 20.2 Array window
Working with Memory
Array Window
Table 20.3 Array window—items
Item
Hierarchical control
Bind To
Icon
Array size
Struct
Member
Element
IDE 5.6 User’s Guide
Explanation
Click to collapse the view of the information pane.
Select the base address of the array: Address, Variable, or
Register.
Enter the number of elements to display in the Array window.
Select a specific member to show in each element, or show all members.
Shows the array elements in a hierarchical list.
267
Working with Memory
Array Window
Table 20.3 Array window—items (continued)
Item
Value
Icon
Location
Explanation
Shows the value of each array element.
Shows the address in memory of each array element.
Opening an Array Window
Use the View Array command to manipulate a memory block in an Array window.
1. Select the array that you want to view.
2. Select Data > View Array.
A new Array window appears.
TIP
Drag and drop a register or variable name into an Array window to set the base address. Use the View Memory As command to interpret memory displayed in an Array window as a different type.
Alternatively, use a contextual menu to open an Array window, as explained in
Table 20.4 Opening an Array window by using a contextual menu
On this host… Do this…
Windows
Macintosh
Solaris
Linux
Right-click the array and select
View Array
.
Control-click the array and select
View Array
.
Click and hold on the array, then select
View Array
.
Click and hold on the array, then select
View Array
.
268
IDE 5.6 User’s Guide
Working with Memory
Registers Window
Registers Window
The Registers window reveals a hierarchical view of these register types:
• general registers—contents of the central processing unit (CPU) of the host computer
• floating-point unit (FPU) registers—contents of the FPU registers
• registers specific to the host computer
You can use the Register window to perform these tasks:
• expand the hierarchical items in the window and view their contents
• select and modify register values
• view documentation for individual registers (depending on the register)
Figure 20.3 on page 269 shows a sample Registers window.
Figure 20.3 Registers Window
General Registers
The General Registers are the register contents of the central processing unit
(CPU) of the host computer. The exact listing of these registers depends on the host CPU and current build target. See the Targeting documentation for additional information.
IDE 5.6 User’s Guide
269
Working with Memory
Registers Window
FPU Registers
The FPU Registers are the register contents of the floating-point unit (FPU) of the host computer. The exact listing of these registers depends on the host FPU and current build target. See the Targeting documentation for additional information.
Host-specific Registers
The Registers window also lists additional register contents for registers specific to the host. The exact listing of these registers depends on the host computer and current build target. See the Targeting documentation for additional information.
Opening the Registers Window
Open the Registers window to inspect and modify various register contents.
Table 20.5 on page 270 explains how to open the Registers window.
Table 20.5 Opening the Registers window
On this host… Do this…
Windows
Macintosh
Solaris
Linux
Select
View > Registers
Select
Window > Registers Window
Select
Window > Registers Window
Select
Window > Registers Window
270
Viewing Registers
View registers to inspect and modify their contents.
1. Open the Registers window.
2. Expand the hierarchical list to view register groups.
Expanding the list shows the register groups that you can view or change.
IDE 5.6 User’s Guide
Working with Memory
Registers Window
3. Expand a register group.
Expanding a group shows its contents, by register name and corresponding value.
Changing Register Values
Change register values during program execution in order to examine program behavior.
1. Open the Registers window.
2. Expand the hierarchical list to view the names and corresponding values of the register that you want to modify.
3. Double-click the register value that you want to change.
The value highlights.
4. Enter a new register value.
5. Press Enter or Return.
The register value changes.
Changing Register Data Views
Change register data views to see register contents in a different format. For example, you can change the view of a register from binary to hexadecimal format.
1. Open the Registers window.
2. Expand the hierarchical list to view the names and corresponding values of the register.
3. Select the register value that you want to view in a different format.
The value highlights.
4. Select Data > View as format, where format is the data format in which you want to view the register value. The register value changes format.
Available formats depend on the selected register value.
5. Select Data > View as Default to restore the original data format.
IDE 5.6 User’s Guide
271
Working with Memory
Register Details Window (Windows OS)
Alternatively, you can use a contextual menu to change the data format, as explained in
.
Table 20.6 Changing the data format by using a contextual menu
On this host… Do this…
Windows
Macintosh
Solaris
Linux
Right-click the register value and select
View as
format
.
Control-click the register value and select
View as
format
.
Click and hold on the register value and select
View as
format
.
Click and hold on the register value and select
View as
format
.
Opening Registers in a Separate Registers Window
Open registers in a separate Register Window to narrow the scope of registers that appear in a single window.
1. Open the Registers window.
2. Expand the hierarchical list to view the register or register group that you want to view in a separate Registers window.
3. Double-click the register or register group.
4. A new Registers window opens.
The new Registers window lists the name and value of the register that you double-clicked, or the names and values of the register group that you doubleclicked.
Register Details Window (Windows OS)
The Register Details window lets you view detailed information about individual bits of registers from 2 bits to 32 bits in size. This window shows information for both system registers and memory-mapped registers. To open the
Register Details window, click View > Register Details or Window >
Register Details Window.
272
IDE 5.6 User’s Guide
Working with Memory
Register Details Window (Windows OS)
The Register Details window has fields that describe the register, its bitfields, and the values of those bitfields. XML files in the Registers folder of your
CodeWarrior installation provide the information that appears in the window.
The Registers folder is inside the Support folder. The Support folder is inside the
Plugins folder of your CodeWarrior installation.
Figure 20.4 on page 273 shows the Register Details window. Table 20.7 on page 273
explains items in the window.
Figure 20.4 Register Details window
Table 20.7 Register Details window—items
Item
text box
Register
Name
Address text box
Icon Explanation
Enter the name or full path to the XML file for the register you want to view, or click the
Browse button to open a dialog box that you can use to specify the file.
Shows the name of the register depicted in the window.
Enter the starting address of the register values that you want to see in the Register
Display.
An error message appears if you enter an invalid starting address.
IDE 5.6 User’s Guide
273
Working with Memory
Register Details Window (Windows OS)
Table 20.7 Register Details window—items (continued)
Item
Format list box
Icon Explanation
Specify the data format for bit values in the
Register Display:
• Binary
• Character
• Decimal
• Unsigned Decimal
• Hexadeccimal
• Default—have the IDE determine the best format
Shows a depiction of the register that you specify in the Description File text box, including individual register bits and their values.
Bitfield
Name list box
Bit Value text box
Bit Value
Modifier list box
Specify a bitfield to highlight in the Register
Display. The Description portion of the window reflects available information for the bitfield.
Select None to have the Description portion of the window reflect information for the entire register and not a bitfield in that register.
Shows the current value of the bits in the
Bitfield Name list box, according to the format that you specify in the Format list box.
Click the spin buttons to increment or decrement the current value, or enter a new value in the text box.
Changing the value changes only the
Register Display. You must click the Write button to write the new value to the register itself.
Specify a new value for the selected bitfield, or view a brief explanation of specific bitfield values.
Changing the value changes only the
Register Display. You must click the Write button to write the new value to the register.
274
IDE 5.6 User’s Guide
Working with Memory
Register Details Window (Windows OS)
Table 20.7 Register Details window—items (continued)
Item
Description
Revert button
Read button
Write button
Reset
Value button
list box
Icon Explanation
Shows a description of the register or a selected bitfield in the register.
Use the Description File on page 275 text
box to specify the register.
Use the Text View list box to view specific register information, such as register descriptions, bitfield descriptions, and register details.
Click to change a modified value in the
Register Display to its original value.
If you clicked the Write button to write a new value to the register, you cannot revert that value.
Click to have the Register Display reflect current bit values from the register itself.
Click to write the bit values in the Register
Display to the register.
After you write new values to the register, you cannot revert them.
Click to restore the default value for the selected bitfield.
The IDE disables this button if the selected bitfield does not have a default value.
Use to specify information that appears in the Description portion of the window.
Description File
Enter in this text box the name of the register that you want to see in the Register
Display of the Register Details window. Alternatively, enter the full path to the register description file on your computer, or click the Browse button to open a dialog box that lets you specify the register description file. The text box is not case sensitive.
IDE 5.6 User’s Guide
275
Working with Memory
Register Details Window (Windows OS)
After you enter a name or path, the debugger searches for a matching register description file in the Registers folder of your CodeWarrior installation and the project access paths. If the debugger finds a matching file, the Register Display updates the information in the Register Details window. If the debugger does not find a matching name, an error message appears.
For example, to view the contents of the Opcode register, you can:
• type Opcode in the Description File text box and press Enter or Return, or
• type the full path to the opcode.xml file in the Registers folder and press
Enter or Return.
The debugger matches your entry with the opcode.xml file in the Registers folder. The Register Display in the Register Details window updates its information to show Opcode register details.
The debugger also updates the Register Display to show the current values in the register. If the debugger fails to update the display, an error message appears.
Register Display
This display shows the current contents of 32 bits of register data, starting at the address that you specify in the Address text box. The data appears according to the format that you specify in the Format list box.
The Register Display groups the 32 bits of data into register bitfields. Clicking one of the bits selects its associated bitfield. Additional information about the bitfield, such as its name and permissions, appears in the Description portion of the Register Details window.
Text View
Use this list box to change the information that appears in the Description portion of the Register Details window:
• Auto—select to have the IDE determine which information to display in the window
• Register Description—select to show information about the entire register, such as the name of the register itself and the meaning of its contents
• Bitfield Description—select to show information about the selected bitfield in the
Register Display on page 276 , such as the name of the bitfield and its
access permissions
276
IDE 5.6 User’s Guide
Working with Memory
Register Details Window (Windows OS)
• Register Details—select to show in-depth information about the current register, such as its name, its bit values, and bit-value explanations
IDE 5.6 User’s Guide
277
Working with Memory
Register Details Window (Windows OS)
278
IDE 5.6 User’s Guide
Working with Debugger
Data
21
This chapter explains how to work with data that the CodeWarrior
™
IDE debugger generates. The following windows show various types of debugger data.
• Symbolics window—shows information that the debugger generates for a program
• Processes window—shows individual processes and tasks that the debugger can control
• Log window—shows messages generated during the debugging session
This chapter contains these sections:
•
“Symbolics Window” on page 279
•
“System Browser Window” on page 282
•
Symbolics Window
The Symbolics window displays information that the debugger generates for the active file. Symbolics information includes data about program variables, functions, data structures, and source files.
Select whether you want browser data generated by the compiler or the language parser, by choosing Edit > targetname Settings... and selecting the Build
Extras target settings panel. Select the option from the Generate Browser Data
From dropdown list. Symbolics information will be generated during the next build or debugging session.
Figure 21.1 on page 280 shows the Symbolics window. Table 21.1 on page 280
explains items in the window.
IDE 5.6 User’s Guide
279
Working with Debugger Data
Symbolics Window
Figure 21.1 Symbolics window
Table 21.1 Symbolics window—items
Item
Debugger toolbar
Icon
Executables pane
Files pane
Explanation
Contains buttons that represent common debugging commands, such as stepping through code.
Lists recently used executable files that contain symbolics information.
Lists source files in build target being debugged, for selected executable file.
280
IDE 5.6 User’s Guide
Working with Debugger Data
Symbolics Window
Table 21.1 Symbolics window—items (continued)
Item
Functions pane
Icon
Source pane
Explanation
Lists functions declared in the file selected in the Files pane.
Displays source code in the file selected in the Files pane.
Opening the Symbolics Window
The Symbolics window displays information generated by the IDE for a file.
To open the Symbolics window, do one of these tasks:
• Select
View > Symbolics or Window > Symbolics window.
• Open a symbolics file. The IDE typically appends
.xSYM
or
.iSYM
, to the names of these files.
• Open an executable file for which the IDE previously generated symbolics information. The IDE typically appends
.exe
or
.app
to these files.
Alternatively, click the Symbolics button in the Thread window toolbar to open the Symbolics window.
Using the Executables Pane
The Executables pane lists recently opened executable files for which the IDE generated symbolics information.
To use the pane, select an executable file in the list. The Files pane updates to display information for the selected executable file.
Using the Files Pane
For the selected executable file, the Files pane lists the source files in the build target being debugged.
To use the pane, select a file in the list. The Functions pane and Source pane update to display information for the selected file.
IDE 5.6 User’s Guide
281
Working with Debugger Data
System Browser Window
Using the Functions Pane
The Functions pane lists functions declared in the selected file in the Files pane.
To use the pane, select a function in the list. The Source pane updates to display source code for the selected function.
Using the Source Pane
The Source pane displays source code for the selected function in the Functions pane, using the fonts and colors specified in the IDE Preferences window.
To use the pane, select a function in the Functions pane. The corresponding source code appears in the Source pane.
If the selected function does not contain source code, the Source pane displays the message Source text or disassembly not available.
NOTE
Use the Source pane in the Symbolics window to view source code, copy source code, and set breakpoints. Use an editor window to modify the source code. Use a Thread window to view the currently executing statement.
System Browser Window
The System Browser window shows system level information about processes executing on various machines, like the host computer or the hardware under debugger control. The window shows this information:
• running processes
• tasks for selected processes
• some hidden processes
Click on the expand icon for a process to view all tasks assigned to the selected process. Processes under debugger control appear in bold. Double-click a task to open it in a new Thread window, or choose the task name and click the Stack
Crawl Window button.
Figure 21.2 on page 283 shows the System Browser window.
explains items in the window.
282
IDE 5.6 User’s Guide
NOTE
If the System Browser window does not show processes for a sepcific machine, you will need to start a debugging session for that machine.
For example, you might need to debug a project that runs on external hardware in order to see executing processes for that hardware.
Figure 21.2 System Browser window
Working with Debugger Data
System Browser Window
IDE 5.6 User’s Guide
283
Working with Debugger Data
System Browser Window
Table 21.2 System Browser window—items
Item
Attach to
Process
Icon Explanation
Click to have the debugger control the selected process.
Stack
Crawl window
Refresh
No
Refresh
Expand
Click to open a Thread window for the selected process.
This icon indicates that information for selected item is periodically updated. Click this icon to toggle between refresh and no refresh.
This icon indicates that information is not updated for the selected item.
Click to expand a process and list related tasks.
Opening the System Browser Window
Use the System Windows or System menu command to view and manipulate active processes on a selected machine. If multiple machines are available, select each machine from the System Windows submenu to display multiple System
Browser windows. If you choose a machine that is already open, the existing window will be brought to the front.
NOTE
The System Browser window appears on platforms that support it.
Table 21.3 on page 285 explains how to open the System Browser window.
284
IDE 5.6 User’s Guide
Working with Debugger Data
Log Window
Table 21.3 Opening the System Browser window
Menu Bar
Layout
Windows
Do this…
Macintosh (also applies to
Linux/Solaris)
Select
View > System
Select
Window > System Windows
Attaching Debugger to a Process
Click the Attach to Process button to assign a selected process to a new debugging session. This assignment allows the debugger to control processes that it does not otherwise recognize. For example, you can click the Attach to Process button to assign dynamic link libraries or shared libraries to the debugger.
1. Select a process to attach to the debugger.
2. Click Attach to Process
3. Select an executable to attach to the process.
4. Click OK to display the Stack Crawl (Thread) window for the process.
The debugger assumes control of the selected process. Processes under debugger control appear in bold.
Log Window
The Log window displays messages during program execution. Select the Log
System Messages option in the Debugger Settings panel to activate the Log window.
The IDE allows you to save Log window contents to a
.txt
(text) file and copy text from the Log window to the system clipboard.
Windows-hosted Log window messages include:
• Dynamic Link Library (DLL) loading and unloading
• debugging
printf()
messages
IDE 5.6 User’s Guide
285
Working with Debugger Data
Log Window
Macintosh-hosted Log window messages include:
• PowerPC
™
code fragments
•
DebugStr()
messages
Figure 21.3 on page 286 shows a Windows-hosted Log window.
Figure 21.3 Log window
286
Opening the Log Window
Use the Debugger Settings preference panel to enable the message logging option. The Log window records these types of messages for a program during a debugging session:
• the start of new tasks
• routine entry and exit
• Windows: DLL loading and unloading, and debug
printf()
messages
• Macintosh: PowerPC code-fragment loading and
DebugStr()
messages
1. Select the Log System Messages option in the Debugger Settings target settings preference panel.
IDE 5.6 User’s Guide
Working with Debugger Data
Log Window
2. Select Project > Debug.
The Log window appears. It allows you to select, copy, and save logged text to a file for later analysis. See the Targeting documentation for additional information.
IDE 5.6 User’s Guide
287
Working with Debugger Data
Log Window
288
IDE 5.6 User’s Guide
Working with Hardware
Tools
22
This chapter explains the CodeWarrior™ IDE hardware tools. Use these tools for board bring-up, test, and analysis.
NOTE
Some of the IDE features described in this chapter are not supported by all products, such as, the Flash programmer window, hardware diagnostic window, and logic analyzer. Some screen captures in this chapter were taken on a Windows PC and used as examples only, actual appearance will vary slightly on other host platforms.
This chapter contains these sections:
•
“Flash Programmer Window” on page 289
•
“Hardware Diagnostics Window” on page 301
•
“Working with a Logic Analyzer” on page 313
•
•
•
•
Flash Programmer Window
The Flash Programmer window lists global options for the flash programmer hardware tool. These preferences apply to every open project file.
shows the Flash Programmer window. Table 22.1 on page 291
explains the items in the window.
To open the Flash Programmer window, click Tools > Flash Programmer.
The Flash Programmer window contains these panels:
IDE 5.6 User’s Guide
289
Working with Hardware Tools
Flash Programmer Window
•
Target Configuration on page 291
•
Flash Configuration on page 294
•
•
Erase / Blank Check on page 298
•
Figure 22.1 Flash Programmer window
290
IDE 5.6 User’s Guide
Working with Hardware Tools
Flash Programmer Window
Table 22.1 Flash Programmer window—items
Item
Flash
Programmer pane
Show Log
Explanation
Shows a list of panel names. Click a panel name to display that panel.
Load Settings
Save Settings
OK
Cancel
Click to display a text file that logs flash programmer actions. Check the Enable Logging checkbox in the Options group to enable this button.
Click to restore previously saved settings for the current panel.
Click to save settings for the current panel to a file.
Click to save changes to all panels and close the window.
Click to discard changes to all panels and close the window.
Target Configuration
The Target Configuration panel configures general flash programmer settings.
Figure 22.2 on page 292 shows the Target Configuration panel. Table 22.2 on page 292
explains items in the panel.
IDE 5.6 User’s Guide
291
Working with Hardware Tools
Flash Programmer Window
Figure 22.2 Target Configuration panel
Table 22.2 Target Configuration panel—items
Item
Default Project
Default Target
Use Custom
Settings checkbox.
Explanation
Shows the current default project in the IDE.
Shows the default build target. Clear the Use Custom Settings checkbox to have the IDE use connection settings from the build target for connecting to the hardware.
Check to specify the connection information that you want to use for connecting to the hardware. In this case, the IDE can connect to the hardware without using settings from a project.
Clear to use the connection information stored in the default project for connecting to the hardware. You cannot clear the checkbox if you do not have an active default project or default target.
Connection information includes the information that you specify in the Target Processor list box, the Connection list box, and the Use Target Initialization text box.
292
IDE 5.6 User’s Guide
Working with Hardware Tools
Flash Programmer Window
Table 22.2 Target Configuration panel—items (continued)
Item
Target Processor text/list box
Connection list box
Explanation
Use to specify the hardware processor.
Use Target
Initialization checkbox and text box
Target Memory
Buffer Address text box
Target Memory
Buffer Size text box
Enable Logging checkbox
Verify Target
Memory Writes checkbox
Use to specify the method that the IDE uses to connect to the hardware.
Check to specify an initialization file for the hardware connection.
Enter the initialization file path in the text box, or click the
Browse button to open a dialog box that you can use to specify the initialization file path.
Clear if you do not want to use an initialization file for the hardware connection.
Specify the starting address of an area in RAM that the flash programmer can use as a scratch area. The flash programmer must be able to access this starting address through the remote connection (after the hardware initializes).
The flash programmer should not modify any memory location other than the target memory buffer and flash memory.
For example, the flash programmer uses the target memory buffer to download and execute the flash device driver.
Specify the size of an area in RAM that the flash programmer can use as a scratch area, starting at the address you specify in the Target Memory Buffer Address text box.
The flash programmer should not modify any memory location other than the target memory buffer and flash memory.
Check to have the IDE generate detailed status information during flash operations. Checking this checkbox enables the
Show Log button.
Clear to disable logging of detailed status information during flash operations. Clearing this checkbox disables the
Show Log button.
Click the Show Log button to view the status information.
Check to have the IDE verify all write operations to the hardware
RAM by reading the result of each write operation.
Clear to have the IDE perform write operations without verifying them.
IDE 5.6 User’s Guide
293
Working with Hardware Tools
Flash Programmer Window
Flash Configuration
The Flash Configuration panel configures settings for the flash device on the hardware device.
Figure 22.3 on page 294 shows the Flash Configuration panel.
Table 22.3 on page 294 explains the items in the panel.
Figure 22.3 Flash Configuration panel
Table 22.3 Flash Configuration panel—items
Item
Flash Memory
Base Address text box
Device pane
Explanation
Enter the base address of the beginning of flash memory on the hardware device. Enter the address based on the perspective of the hardware device.
Shows an alphabetical list of supported flash device types. Select a device type from this pane. Your selection determines the contents of the Organization and Sector Address Map panes.
294
IDE 5.6 User’s Guide
Working with Hardware Tools
Flash Programmer Window
Table 22.3 Flash Configuration panel—items (continued)
Item Explanation
Organization pane Shows a list of supported layouts of flash memory in the hardware design, based on your selection in the Device pane. Each list item is of the form
ChipCapacityxDataBusWidthxNumberOfChipsInLayout. Select an organization from this pane. Your selection determines the contents of the Sector Address Map pane.
Sector Address
Map pane
For example, 2048Kx8x2 indicates a chip capacity of 2048 kilobytes, a byte-wide interface to the data bus, and a 2-chip hardware layout.
For hardware layouts of 2 or more chips, assume an interleaved organization. For example, for a 2048Kx16x2 organization, there are 2 chips on a 32-bit bus, and each chip provides 16 bits of data.
Shows a map of sector addresses that reflects your selections in the Device and Organization panes and your entry in the Flash
Memory Base Address text box. This map is for informational purposes only.
Program / Verify
The Program / Verify panel lets you program an image into flash memory and verify the programming operation.
Figure 22.4 on page 296 shows the Program /
Verify panel. Table 22.4 on page 296
explains the items in the panel.
IDE 5.6 User’s Guide
295
Working with Hardware Tools
Flash Programmer Window
Figure 22.4 Program / Verify panel
Table 22.4 Program / Verify panel—items
Item
Use Selected
File checkbox and text box
Restrict Address
Range checkbox
Explanation
Check to specify a file to program into flash memory. Enter the file path in the text box, or click the Browse button to locate the file path.
Clear to have the IDE program flash memory with the file that the default build target determines.
The file determines the address to which the IDE programs flash memory. If you specify a file that does not contain address information, such as a binary file, the IDE programs flash memory at address zero. Check the Apply Address Offset checkbox to specify an address offset from zero.
Check to use the Start and End text boxes to specify the address range in which you want the IDE to program flash data. If you use a binary file to program flash data, the flash programmer ignores data outside the address range that you specify.
Clear to have the IDE determine the address range in which to program flash data.
296
IDE 5.6 User’s Guide
Working with Hardware Tools
Flash Programmer Window
Table 22.4 Program / Verify panel—items (continued)
Item
Start text box
End text box
Apply Address
Offset checkbox
Offset text box
Flash Base
Address
Flash Base +
Offset
Status
Explanation
Enter the starting address of the range that you want the flash programmer to use for programming flash data.
Check the Restrict Address Range checkbox to enable this text box.
Enter the ending address of the range that you want the flash programmer to use for programming flash data.
Check the Restrict Address Range checkbox to enable this text box.
Check to specify an offset at which to program flash data. The IDE adds this offset to the starting address that the file specifies. The flash programmer begins programming flash data at the starting address plus the offset.
Clear to have the flash programmer begin programming flash data at the starting address that the file specifies. In this case, the IDE does not add an offset to the starting address.
Enter the offset to add to the starting address that the file specifies.
The flash programmer begins programming flash data at the resulting address.
Check the Apply Address Offset checkbox to enable this text box.
Shows the base address of the beginning of flash memory on the hardware device. This address is the same address that you specify in the Flash Memory Base Address text box of the Flash
Configuration panel.
Shows the resulting address of adding the offset value that you specify in the Offset text box to the Flash Base Address value.
The flash programmer begins programming flash data at this resulting address.
Shows flash programmer progress information. Click the Details button to show more thorough progress information.
IDE 5.6 User’s Guide
297
Working with Hardware Tools
Flash Programmer Window
Table 22.4 Program / Verify panel—items (continued)
Item
Program button
Verify button
Explanation
Click to have the flash programmer program flash data into the hardware device. The Status reflects flash programmer progress.
The flash programmer does not check for blank flash memory before it begins programming the flash data.
Click to have the IDE verify the data that the flash programmer programmed into the hardware device. The verify operation reads the flash data from the hardware device and compares that data against the image file on disk. The Status reflects flash programmer progress.
Erase / Blank Check
The Erase / Blank Check panel lets you erase an image from flash memory and
check for blank memory. Figure 22.5 on page 298
shows the Erase / Blank Check
panel. Table 22.5 on page 299 explains items in the panel.
Figure 22.5 Erase / Blank Check panel
298
IDE 5.6 User’s Guide
Working with Hardware Tools
Flash Programmer Window
Table 22.5 Erase / Blank Check panel—items
Item
All Sectors checkbox and list
Erase Sectors
Individually checkbox
Status
Erase button
Blank Check button
Explanation
Check to apply the erase or blank check operation to the entire flash memory.
Clear to specify sectors that you want to erase or check for blanks. Select sectors in the list below the checkbox.
Check to have the flash programmer ignore chip erase commands and erase each individual sector instead.
Clear to have the flash programmer obey chip erase commands and erase all sectors at once.
Check the All Sectors checkbox to enable this checkbox.
Shows flash programmer progress information. Click the Details button to show more thorough progress information.
Click to have the flash programmer erase the sectors that you specified. The Status reflects flash programmer progress.
Click to have the flash programmer perform these tasks:
• upload the sectors that you specified to the hardware device
• compare the uploaded sectors against
0xff
• report the values that do not match
0xff
.
The Status reflects flash programmer progress.
Checksum
explains items in the panel.
IDE 5.6 User’s Guide
299
Working with Hardware Tools
Flash Programmer Window
Figure 22.6 Checksum panel
Table 22.6 Checksum panel—items
Item
File on Target
File on Host
Memory
Range on
Target
Entire Flash
Explanation
Select to have the flash programmer read the file that you specified in the Use Selected File text box of the Program / Verify panel. The flash programmer reads this file to determine the required memory regions of the flash device for the checksum operation.
The Restrict Address Range and Apply Address Offset information that you specify in the Program / Verify panel also apply to this option button.
Select to have the flash programmer read the file on the host computer. The flash programmer reads this file to determine the required memory regions of the flash device for the checksum operation.
The Restrict Address Range and Apply Address Offset information that you specify in the Program / Verify panel also apply to this option button.
Select to have the flash programmer read the range that you specify in the Start and Size values in the Address Range group. The flash programmer uses this memory range for the checksum operation.
Select to have the flash programmer read the entire contents of flash memory. The flash programmer uses this data for the checksum operation.
300
IDE 5.6 User’s Guide
Working with Hardware Tools
Hardware Diagnostics Window
Table 22.6 Checksum panel—items (continued)
Item
Start text box
Size text box
Status
Calculate
Checksum
Explanation
Enter the starting address of the range that you want the flash programmer to use for the checksum operation.
Select Memory Range on Target option to enable this text box.
Enter the size of the address range that you want the flash programmer to use for the checksum operation. This size is relative to the starting address that you specify in the Start text box.
Select Memory Range on Target option to enable this text box.
Shows flash programmer progress information. Click the Details button to show more thorough progress information.
Click to have the flash programmer calculate the checksum according to your specifications. At the end of the checksum operation, the
Status shows the calculated checksum.
Hardware Diagnostics Window
The Hardware Diagnostics window lists global options for the hardware diagnostic tools. These preferences apply to every open project file.
Figure 22.7 on page 302 shows the Hardware Diagnostics window. Table 22.7 on page 302
explains items in the window.
To open the Hardware Diagnostics window, click Tools > Hardware
Diagnostics.
The Hardware Diagnostics window has these panels:
•
•
Memory Read / Write on page 304
•
•
IDE 5.6 User’s Guide
301
Working with Hardware Tools
Hardware Diagnostics Window
Figure 22.7 Hardware Diagnostics window
Table 22.7 Hardware Diagnostics window—items
Item
Hardware
Diagnostics pane
Load Settings
Save Settings
OK button
Cancel button
Explanation
Shows a list of panel names. Click a panel name to display that panel in the Hardware Diagnostics window.
Click to restore previously saved settings for the current panel.
Click to save settings for the current panel to a file.
Click to save changes to all panels and close the window.
Click to discard changes to all panels and close the window.
302
IDE 5.6 User’s Guide
Working with Hardware Tools
Hardware Diagnostics Window
Configuration
The Configuration panel configures general flash programmer settings. Figure
22.8 on page 303 shows the Configuration panel. Table 22.8 on page 303
explains items in the panel.
Figure 22.8 Configuration panel
Table 22.8 Configuration panel—items
Item
Default Project
Default Target
Use Custom
Settings checkbox.
Explanation
Shows the current default project in the IDE.
Shows the default build target in the IDE. Clear the Use Custom
Settings checkbox to have the IDE use the connection settings from the build target for diagnosing the hardware.
Check to specify the connection information that you want to use for diagnosing the hardware. In this case, the IDE can connect to the hardware without using settings from a project.
Clear to use the connection information stored in the default project for connecting to the hardware. You cannot clear the checkbox if you do not have an active default project or default target.
Connection information includes information that you specify in the
Target Processor list box, the Connection list box, and the Use
Target Initialization text box.
IDE 5.6 User’s Guide
303
Working with Hardware Tools
Hardware Diagnostics Window
Table 22.8 Configuration panel—items (continued)
Item
Target
Processor text/list box
Connection list box
Use Target
Initialization checkbox and text box
Explanation
Use to specify the hardware processor.
Use to specify the method that the IDE uses to connect to the hardware.
Check to specify an initialization file for the hardware connection.
Enter the initialization file path in the text box, or click the Browse button to locate the initialization file path.
Clear if you do not want to use an initialization file for the hardware connection.
Memory Read / Write
The Memory Read / Write panel configures diagnostic tests for performing memory reads and writes over the remote connection interface.
shows the Memory Read / Write panel.
explains items in the panel.
Figure 22.9 Memory Read / Write panel
304
IDE 5.6 User’s Guide
Working with Hardware Tools
Hardware Diagnostics Window
Table 22.9 Memory Read / Write panel—items
Item
Read
Write
Byte
Word
Long Word
Target Address
Value to Write
Status
Access Target button
Explanation
Select to have the hardware diagnostic tools perform read tests.
Select to have the hardware diagnostic tools perform write tests.
Select to have the hardware diagnostic tools perform bytesize operations.
Select to have the hardware diagnostic tools perform word-size operations.
Select to have the hardware diagnostic tools perform long-wordsize operations.
Specify the address of an area in RAM that the hardware diagnostic tools should analyze. The tools must be able to access this starting address through the remote connection (after the hardware initializes).
Specify the value that the hardware diagnostic tools write during testing.
Select the Write option to enable this text box.
Shows hardware diagnostic progress information. Click the Details button to show more progress information.
Click to have the hardware diagnostic tools perform specified tests.
The Status shows test results.
Scope Loop
The Scope Loop panel configures diagnostic tests for performing repeated memory reads and writes over the remote connection interface. The tests repeat until you stop them. By performing repeated read and write operations, you can use a scope analyzer or logic analyzer to debug the hardware device.
Figure 22.10 on page 306 shows the Scope Loop panel. Table 22.10 on page 306
explains items in the panel.
After the first 1000 operations, the Status shows the estimated time between operations.
IDE 5.6 User’s Guide
305
Working with Hardware Tools
Hardware Diagnostics Window
NOTE
For all values of Speed, the time between operations depends heavily on the processing speed of the host computer.
For Read operations, the Scope Loop test has an additional feature. During the first read operation, the hardware diagnostic tools store the value read from the hardware. For all successive read operations, the hardware diagnostic tools compare the read value to the stored value from the first read operation. If the
Scope Loop test determines that the value read from the hardware is not stable, the diagnostic tools report the number of times that the read value differs from the first read value.
Figure 22.10 Scope Loop panel
Table 22.10 Scope Loop panel—items
Item
Read
Write
Byte
Explanation
Select to have the hardware diagnostic tools perform read tests.
Select to perform write tests.
Select to have the hardware diagnostic tools perform bytesize operations.
306
IDE 5.6 User’s Guide
Working with Hardware Tools
Hardware Diagnostics Window
Table 22.10 Scope Loop panel—items (continued)
Item
Word
Long Word
Target
Address
Value to Write
Speed slider
Status
Begin Scope
Loop button
Explanation
Select to perform word-size operations.
Select to perform long-word-size operations.
Specify the address of an area in RAM that the hardware diagnostic tools should analyze. The tools must be able to access this starting address through the remote connection (after the hardware initializes).
Specify the value that the hardware diagnostic tools write during testing.
Select the Write option to enable this text box.
Move to adjust the speed at which the hardware diagnostic tools repeat successive read and write operations. Lower speeds increase the delay between successive operations. Higher speeds decrease the delay between successive operations.
Shows hardware diagnostic progress information. Click the Details button to show more thorough progress information.
Click to have the hardware diagnostic tools perform your specified tests. The Status shows test results.
Memory Tests
The Memory Tests panel lets you perform three different tests on the hardware:
•
•
•
shows the Memory Tests panel.
explains items in the panel.
You can specify any combination of tests and number of passes to perform. For each pass, the hardware diagnostic tools perform the tests in turn, until all passes are complete. The tools tally memory test failures and display them in a log window after all passes are complete. Errors resulting from memory test failures do not stop the testing process, however, fatal errors immediately stop the testing process.
IDE 5.6 User’s Guide
307
Working with Hardware Tools
Hardware Diagnostics Window
Figure 22.11 Memory Tests panel
Table 22.11 Memory Tests panel—items
Item
Walking 1’s
Address
Bus Noise
Start:
End:
Explanation
Check to have the hardware diagnostic tools perform the
Clear to have the diagnostic tools skip the
test.
Check to have the hardware diagnostic tools perform the
Clear to have the diagnostic tools skip the Address on page 311
test.
Check to have the hardware diagnostic tools perform the
Clear to have the diagnostic tools skip the Bus Noise on page 311
test.
Enter the starting address of the range that you want to test.
Enter the ending address of the range that you want to test.
308
IDE 5.6 User’s Guide
Working with Hardware Tools
Hardware Diagnostics Window
Table 22.11 Memory Tests panel—items (continued)
Item
Byte
Word
Long Word
Passes
Show Log
Use Target
CPU
Target
Scratch
Memory Start
Target
Scratch
Memory End
Status
Begin Test
Explanation
Select to have the hardware diagnostic tools perform bytesize operations.
Select to have the hardware diagnostic tools perform word-size operations.
Select to have the hardware diagnostic tools perform long-word-size operations.
Enter the number of times that you want to repeat the specified tests.
Click to display a text file that logs memory test actions.
Check to have the hardware diagnostic tools download the test code to the hardware device. Enter in the Target Scratch Memory Start and Target Scratch Memory End text boxes the memory range that you want to use on the hardware device. The CPU on the hardware device executes the test code in this memory range.
Clear to have the hardware diagnostic tools execute the test code through the remote connection interface.
Execution performance improves greatly if you execute the test code on the hardware CPU, but requires that the hardware has enough stability and robustness to execute the test code.
Specify the starting address of an area in RAM that the hardware diagnostic tools can use as a scratch area. The tools must be able to access this starting address through the remote connection (after the hardware initializes).
Specify the ending address of an area in RAM that the hardware diagnostic tools can use as a scratch area. The tools must be able to access this address through the remote connection (after the hardware initializes).
Shows memory test progress information. Click the Details button to show more thorough progress information.
Click to have the hardware diagnostic tools perform the memory tests that you specified. The Status reflects memory test progress.
IDE 5.6 User’s Guide
309
Working with Hardware Tools
Hardware Diagnostics Window
Walking Ones
This test detects these memory faults:
• Address Line—The board or chip address lines are shorting or stuck at 0 or
1. Either condition could result in errors when the hardware reads and writes to the memory location. Because this error occurs on an address line, the data may end up in the wrong location on a write operation, or the hardware may access the wrong data on a read operation.
• Data Line—The board or chip data lines are shorting or stuck at 0 or 1.
Either condition could result in corrupted values as the hardware transfers data to or from memory.
• Retention—The contents of a memory location change over time. The effect is that the memory fails to retain its contents over time.
The Walking Ones test includes four subtests:
• Walking Ones—This subtest first initializes memory to all zeros. Then the subtest writes, reads, and verifies bits, with each bit successively set from the least significant bit (LSB) to the most significant bit (MSB). The subtest configures bits such that by the time it sets the MSB, all bits set to a value of
1. This pattern repeats for each location within the memory range that you specify. For example, the values for a byte-based Walking Ones subtest occur in this order:
0x01
,
0x03
,
0x07
,
0x0F
,
0x1F
,
0x3F
,
0x7F
,
0xFF
• Ones Retention—This subtest immediately follows the Walking Ones subtest. The Walking Ones subtest should leave each memory location with all bits set to 1. The Ones Retention subtest verifies that each location has all bits set to
1.
• Walking Zeros—This subtest first initializes memory to all ones. Then the subtest writes, reads, and verifies bits, with each bit successively set from the LSB to the MSB. The subtest configures bits such that by the time it sets the MSB, all bits are set to a value of 0. This pattern repeats for each location within the memory range that you specify. For example, the values for a byte-based Walking Zeros subtest occur in this order:
0xFE
,
0xFC
,
0xF8
,
0xF0
,
0xE0
,
0xC0
,
0x80
,
0x00
• Zeros Retention—This subtest immediately follows the Walking Zeros subtest. The Walking Zeros subtest should leave each memory location with
310
IDE 5.6 User’s Guide
Working with Hardware Tools
Hardware Diagnostics Window
all bits set to 0. The Zeros Retention subtest verifies that each location has all bits set to 0.
Address
This test detects memory aliasing. Memory aliasing exists when a physical memory block repeats one or more times in a logical memory space. Without knowing about this condition, you might conclude that there is much more physical memory than what actually exists.
The address test uses a simplistic technique to detect memory aliasing. The test writes sequentially increasing data values (starting at one and increasing by one) to each successive memory location. The maximum data value is a prime number and its specific value depends on the addressing mode so as to not overflow the memory location.
The test uses a prime number of elements to avoid coinciding with binary math boundaries:
• For byte mode, the maximum prime number is 2
8
-5 or 251.
• For word mode, the maximum prime number is 2
16
-15 or 65521.
• For long word mode, the maximum prime number is 2
32
-5 or 4294967291.
If the test reaches the maximum value, the value rolls over to 1 and starts incrementing again. This sequential pattern repeats throughout the memory under test. Then the test reads back the resulting memory and verifies it against the written patterns. Any deviation from the written order could indicate a memory aliasing condition.
Bus Noise
This test stresses the memory system by causing many bits to flip from one memory access to the next (both addresses and data values). Bus noise occurs when many bits change consecutively from one memory access to another. This condition can occur on both address and data lines.
Address lines
To force bit flips in address lines, the test uses three approaches:
• Sequential—This approach works sequentially through all of the memory under test, from lowest address to highest address. This sequential approach results in an average number of bit flips from one access to the next.
IDE 5.6 User’s Guide
311
Working with Hardware Tools
Hardware Diagnostics Window
• Full Range Converging—This approach works from the fringes of the memory range toward the middle of the memory range. Memory access proceeds in this pattern, where + number and - number refer to the next item location (the specific increment or decrement depends on byte, word, or long word address mode):
– the lowest address
– the highest address
– (the lowest address) + 1
– (the highest address) - 1
– (the lowest address) + 2
– (the highest address) - 2
• Maximum Invert Convergence—This approach uses calculated end point addresses to maximize the number of bits flipping from one access to the next. This approach involves identifying address end points such that the values have the maximum inverted bits relative to one another. Specifically, the test identifies the lowest address with all
0x5
values in the least significant nibbles and the highest address with all
0xA
values in the least significant nibbles. After the test identifies these end points, memory access alternates between low address and high address, working towards the center of the memory under test. Accessing memory in this manner, the test achieves the maximum number of bits flips from one access to the next.
Data lines
To force bit flips in data lines, the test uses two sets of static data, a pseudorandom set and a fixed-pattern set. Each set contains 31 elements—a prime number. The test uses a prime number of elements to avoid coinciding with binary math boundaries. The sets are unique to each addressing mode so as to occupy the full range of bits.
• The test uses the pseudo-random data set to stress the data lines in a repeatable but pattern-less fashion.
• The test uses the fixed-pattern set to force significant numbers of data bits to flip from one access to the next.
The subtests execute similarly in that each subtest iterates through static data, writing values to memory. The test combines the three address line approaches with the two data sets to produce six unique subtests:
• Sequential with Random Data
312
IDE 5.6 User’s Guide
Working with Hardware Tools
Working with a Logic Analyzer
• Sequential with Fixed Pattern Data
• Full Range Converging with Random Data
• Full Range Converging with Fixed Pattern Data
• Maximum Invert Convergence with Random Data
• Maximum Invert Convergence with Fixed Pattern Data
Working with a Logic Analyzer
(Windows OS) This section explains how to set up your project to connect to a logic analyzer and how to use the IDE to issue commands to the logic analyzer.
For more information about setting up the logic analyzer to transmit information to the IDE, refer to the Targeting documentation.
Configuring the Project
Use the Analyzer Connections target settings panel ( Figure 22.12 on page 314 )
to configure your project to connect to a logic analyzer.
Use the Connection list box to specify the logic analyzer connection that you want to use. Click the Edit Connection button to configure the parameters of the connection.
shows the window that appears when you click the Edit Connection button.
Table 22.12 on page 315 explains options in
this window.
NOTE
Each build target supports only one connection to a logic analyzer. If you want your project to have more logic analyzer connections, create a build target for each additional connection.
IDE 5.6 User’s Guide
313
Working with Hardware Tools
Working with a Logic Analyzer
Figure 22.12 Analyzer Connections settings panel
314
IDE 5.6 User’s Guide
Figure 22.13 Editing a logic analyzer connection
Working with Hardware Tools
Working with a Logic Analyzer
Table 22.12 Logic analyzer connection options
Option
Name
Debugger
Connection Type
Analyzer Type
Host Name
Analyzer
Configuration File
Explanation
Enter the name that you want to assign to this collection of options.
Use to specify the debugger to use with the logic analyzer.
Use to specify the connection method to the logic analyzer.
Use to specify the type of logic analyzer.
Enter the Internet Protocol (IP) address of the logic analyzer.
Enter the name of the configuration file that the logic analyzer requires.
IDE 5.6 User’s Guide
315
Working with Hardware Tools
Working with a Logic Analyzer
Table 22.12 Logic analyzer connection options (continued)
Option
Analyzer Slot
Trace Support
File
Analyzer Can
Cause Target
Breakpoint
Target Breakpoint
Can Cause
Analyzer Trigger
Explanation
Enter the slot name that identifies the logic analyzer location.
Enter the name of the file that the logic analyzer requires to support the collection of trace data.
Check to allow the logic analyzer to cause a hardware breakpoint.
Clear to prevent the logic analyzer from causing a hardware breakpoint.
Check to allow a hardware breakpoint to trigger the logic analyzer.
Clear to prevent a hardware breakpoint from triggering the logic analyzer.
Using the Logic Analyzer
The IDE can work with a logic analyzer in these ways:
•
—establish a connection to the logic analyzer
•
Arm on page 317 —enable the logic analyzer to collect trace data
•
—disable the logic analyzer from collecting trace data
•
—retrieve the latest data from the logic analyzer
•
—close connection to the logic analyzer
Before you can use the IDE to work with a logic analyzer, you must use the
Analyzer Settings target settings panel to configure a connection to the logic analyzer.
The IDE requires this information in order to correlate collected trace data with currently running source code.
Connect
This command uses the connection options that you specified in the Analyzer
Settings target settings panel to perform these tasks:
1. Establish a connection to the logic analyzer.
2. Load the configuration file that you specified in the Analyzer Configuration
File text box (the load process might take several minutes).
316
IDE 5.6 User’s Guide
Working with Hardware Tools
Working with a Logic Analyzer
3. Requests additional information from you as required (for example, for an
Agilent connection, the IDE asks you to select the machine that you want to use).
4. Retrieves all data that will appear in the Trace window.
Click
Tools > Logic Analyzer > Connect to use this command. You cannot use this command if you are already connected to a logic analyzer.
Arm
This command instructs the logic analyzer to perform a Run All operation. This operation prepares the logic analyzer to collect trace data. Click
Tools > Logic
Analyzer > Arm to use this command. You cannot use this command if the IDE has not established a connection to the logic analyzer, or if you already armed the logic analyzer.
Disarm
This command instructs the logic analyzer to perform a Stop All operation, if it is still running. This operation stops the logic analyzer from collecting trace data.
Click
Tools > Logic Analyzer > Disarm to use this command. You cannot use this command if the IDE has not established a connection to the logic analyzer.
NOTE
You must use the Disarm command in order to update trace data in the
IDE.
Update Data
This command retrieves the most recent trace data from the logic analyzer in order to display that data in the Trace window of the IDE. Click
Tools > Logic
Analyzer > Update Data to use this command. The Trace window flushes its previous data and updates its display with the newly retrieved trace data. You cannot use this command until you first Disarm the logic analyzer.
NOTE
The Update Data command does not update the column labels in the
Trace window. If you change the labels in the logic analyzer, you must disconnect from it in the IDE and then reconnect to it. After you disconnect and reconnect, the Trace window reflects your changes to the column labels.
IDE 5.6 User’s Guide
317
Working with Hardware Tools
Trace Window
Disconnect
This command disconnects the IDE from the logic analyzer, it the connection still exists. Click
Tools > Logic Analyzer > Disconnect to use this command.
After you disconnect the IDE from the logic analyzer, the Trace window flushes its data. You cannot use this command if you are not currently connected to a logic analyzer.
Trace Window
After you configure your project to use a logic analyzer and collect trace data, you use the Trace window (
Figure 22.14 on page 319 ) to view the collected data.
The trace window shows up to 100,000 states or trace frames, beginning with the most recent frame.
The IDE determines the column labels that appear in the Trace window at the time it connects to the logic analyzer. If you update these labels in the logic analyzer, your changes do not appear in the Trace window if you update data. In the IDE, you must disconnect from the logic analyzer and reconnect to it in order to update the column labels in the Trace window.
After you use a logic analyzer to collect trace data, open the Trace window by clicking Data > View Trace.
318
IDE 5.6 User’s Guide
Figure 22.14 Trace window
Working with Hardware Tools
Cache Window
Cache Window
Use the Cache window ( Figure 22.15 on page 320 ) to view cache information
for the target processor. Click
Data > View Cache to open the Cache window.
NOTE
The
View Cache menu might have additional supported commands, depending on the target processor. For example, you might be able to click
Data > View Cache > Instruction Cache or Data > View
Cache > Data Cache to view these two types of cache concurrently.
IDE 5.6 User’s Guide
319
Working with Hardware Tools
Profile Window
Figure 22.15 Cache window
Profile Window
Use the Profile window ( Figure 22.16 on page 321 ) to examine profile data that
you collect from executing code. Examining this data helps you improve the performance of your project. You use profiler Application Programming
Interface (API) calls or
#pragma
directives in your source code to turn on the profiler, collect profiling data, and turn off the profiler. For more information, refer to the Profiler User Guide.
NOTE
The Profiler is only available if the target supports it. This feature is dependent upon support by the target-specific compiler and a profiling library.
To open the Profile window, add the appropriate API calls or
#pragma
directives to your source code, then debug your project. The Profile window opens automatically.
320
IDE 5.6 User’s Guide
Figure 22.16 Profile window
Working with Hardware Tools
Command Window
Command Window
The IDE supports a command-line interface to some of its features. You can use the command-line interface together with various scripting engines, such as the
Microsoft
®
Visual Basic
®
script engine, the Java
™
script engine, TCL, Python, and Perl. You can also issue a command line that saves a log file of commandline activity.
The Command window in the IDE shows the standard output and standard error
streams of command-line activity. Figure 22.17 on page 322 shows the
Command window.
IDE 5.6 User’s Guide
321
Working with Hardware Tools
Command Window
Figure 22.17 Command window
322
Opening the Command Window
Use the Command window to view the standard output and standard error streams of command-line activity.
To open the Command window, click View > Command Window.
Issuing Command Lines
Use the Command window to issue command lines to the IDE. For example, enter
debug
to start a debugging session.
To issue a command line, bring forward the Command window, type the command line, and press Enter or Return. The IDE executes the command line that you entered.
If you work with hardware as part of your project, you can use the Command window to issue command lines to the IDE while the hardware is running.
NOTE
Enter
help
to see a list of available commands and a brief explanation of each command. Enter
help command
to see a detailed explanation of the
command
.
IDE 5.6 User’s Guide
VI
Compilers and Linkers
This section contains these chapters:
•
•
IDE 5.6 User’s Guide
323
324
IDE 5.6 User’s Guide
23
Compilers
This chapter explains how to work with compilers in the CodeWarrior
™
IDE.
The IDE uses compilers to complete these tasks:
• Generate object code—the compiler translates source code into object code.
Sample source code includes C++ files and Java files. Object code represents the same source instructions in a language that the computer directly understands.
• Flag syntax errors—the compiler highlights source code that generates syntax errors. Syntax errors result from failing to follow valid structure in a programming language. In C++, a common syntax error is forgetting to end a statement with a semicolon.
Read this chapter to learn more about typical tasks for working with compilers.
This chapter contains these sections:
•
Choosing a Compiler on page 325
•
Compiling Projects on page 326
Choosing a Compiler
Choose a compiler to determine how the IDE interprets source code. The IDE uses a plug-in compiler architecture. This architecture provides these features:
• Modularity—the IDE associates a specific compiler plug-in with a particular programming language or environment. For example, a compiler plug-in exists for C++ source code, and another compiler plug-in exists for Java source code.
• Flexibility—as new programming languages develop, the IDE can use new compiler plug-ins.
The IDE associates common filename extensions with various plug-in compilers.
For example, most Java files have the filename extension
.java
. The IDE associates these files with the Java compiler. The File Mappings panel provides control over such associations.
IDE 5.6 User’s Guide
325
Compilers
Compiling Projects
Compiling Projects
Compile projects to process the source files that comprise a program and generate object code. The compiler flags syntax errors in the source files.
Use these tasks to compile projects:
• Compile source files.
• Set the build order or link order.
• Update a project or its files.
• Create an executable file from a project.
• Run an application created from the project.
• Remove object code.
This section explains how to perform each task.
Compiling Source Files
Use the Compile commands to compile source files into binary files. The IDE can compile a single file, multiple files, or all files in an open project.
1. Enable the Project window that contains the desired files to be compiled.
2. Select one or more files.
3. Choose Project > Compile.
The IDE compiles the selected files.
NOTE
The Project menu contains most commands for compiling and linking projects. However, depending on the project type, some commands might be disabled or renamed.
326
Setting the Build and Link Order of Files
Use the Link Order view in the Project window to specify the order in which the compiler and linker process files. Establishing the proper link order prevents link errors caused by file dependencies. The Link Order view is sometimes called the Segments view or Overlays view, depending on the target.
1. Click the Link Order tab in a Project window.
IDE 5.6 User’s Guide
Compilers
Compiling Projects
2. Click and drag files into the desired link order.
The IDE changes the link order. The build begins at the top of the link order, processes each file, and concludes at the bottom of the link order.
NOTE
The IDE uses the new link order during subsequent Update, Make,
Run, and Debug operations.
Updating Projects
Use the Bring Up To Date command to compile, but not link, the newly added, modified, and touched files in a project. Unlike the Make and Run commands, the Bring Up To Date command does not produce a binary file.
1. Select the project to update.
2. Choose Project > Bring Up To Date.
The IDE compiles all uncompiled project files.
Making Executable Files
Use the Make command to compile the newly-added, modified, and touched files in a project, then link them into a binary file. Unlike the Run command, the
Make command does not execute the binary file. The Make command is useful for creating dynamic link libraries (DLLs), shared libraries, code resources, or tools.
1. Select the project to make.
2. Choose Project > Make.
The IDE processes the project and creates a binary file.
Running Application Projects
Use the Run command to perform these tasks:
• Compile and link a project (if necessary).
• Create a standalone application.
• Change project settings (if required).
IDE 5.6 User’s Guide
327
Compilers
Compiling Projects
• Save the application.
• Run the application.
Note, the Run command is not available if the project creates a non-executable file like a dynamic linked library (DLL), shared library, library, code resource, or tool.
1. Select the project to run.
2. Choose Project > Run.
328
Synchronizing File Modification Dates
Use the Synchronize Modification Dates command to update the modification dates of all files stored in a project. This command is useful for handling files from a third-party editor that does not share file-status information with the IDE.
1. Select the project window.
2. Choose Project > Synchronize Modification Dates.
The IDE checks the file-modification dates and marks modified files for recompilation.
Removing Object Code
Use the Remove Object Code command to remove binary object code stored in the project file and reduce project size.
1. Open the desired project.
2. Choose Project > Remove Object Code.
3. Set compaction options as desired.
• Select Recurse subprojects to remove object code from all subprojects in the project file.
• Select Compact targets to remove these items:
Target data files with the
.tdt
extension.
Browser data.
Dependency information.
Additional data cached by the IDE.
IDE 5.6 User’s Guide
Compilers
Compiling Projects
4. Select the method by which the IDE removes the object code.
• Click All Targets to remove object code from all build targets.
• Click Current Target to remove object code only from the active build target.
The IDE removes the specified object code from the project.
IDE 5.6 User’s Guide
329
Compilers
Compiling Projects
330
IDE 5.6 User’s Guide
24
Linkers
This chapter explains how to work with linkers in the CodeWarrior
™
IDE. The
IDE uses linkers to complete these tasks:
• Combine code—the linker combines source-file object code with object code from library files and other related files. The combined code represents a complete computer program.
• Create a binary file—the linker processes the complete program and generates a binary file. Sample binary files include applications and shared libraries.
Read this chapter to learn more about typical tasks for working with linkers.
This chapter contains these sections:
•
•
Choosing Linkers
Choose a linker to determine the binary file type produced by the IDE. This list describes common binary files:
• Applications—applications, or executable files, represent a wide body of computer programs. Common applications include word processors, web browsers, and multimedia players.
• Libraries—libraries contain code for use in developing new computer programs. Libraries simplify programming tasks and enhance re-usability.
• Specialized files—files designed for highly efficient operation in a specific context. Such files usually support a particular combination of hardware and software to perform tasks.
The IDE provides various linkers for software development. The Target
Settings panel contains an option for selecting a linker. The IDE maps to each linker a group of recognized filename extensions. These mappings determine how the IDE interprets each file.
IDE 5.6 User’s Guide
331
Linkers
Linking Projects
Linking Projects
Link projects to process object code and generate a binary file. Refer to the
CodeWarrior Targeting documentation for more information about linkers for specific computer systems. This section explains general-purpose linker tasks.
Generating Project Link Maps
Use the Generate Link Map command to create a link-map file that contains function and cross-section information about the generated object code. The link map reveals the files, libraries, and functions ignored by the IDE while producing the binary output.
The IDE stores the link-map file in the project folder. The file uses the same name as the build target, with a
.MAP
or
.xMAP
extension.
1. Select the project window.
2. Choose Edit > targetname Settings...
3. Select the linker panel in the Target Settings Panels list.
4. Select the Generate Link Map option.
5. Click Save.
6. Choose Project > Make.
The IDE generates the link-map file.
332
IDE 5.6 User’s Guide
VII
Preferences and Target
Settings
This section contains these chapters:
•
Customizing the IDE on page 335
•
Working with IDE Preferences on page 359
•
Working with Target Settings on page 397
•
Preference and Target Settings Options on page 423
IDE 5.6 User’s Guide
333
334
IDE 5.6 User’s Guide
25
Customizing the IDE
The CodeWarrior
™
IDE enables you to customize menus, toolbars, and key bindings to suit your programming preferences. Use the Customize IDE
Commands window—which consists of the Commands, Toolbar Items, and Key
Bindings tabs—to build your customizations.
This chapter contains these sections:
•
“Customizing IDE Commands” on page 335
•
“Customize Toolbars” on page 345
•
“Customize Key Bindings” on page 351
Customizing IDE Commands
You can customize the menu commands in the IDE’s menu bar, as well as control the appearance of specific menu commands, create new command groups to distinguish menu commands, and associate a command line (Windows,
Solaris, and Linux) or a script or application (Mac OS) with a new menu command. The customized menu commands you create have access to IDE information, such as the current editor selection, the frontmost window, and the current project and its output file.
Select Edit > Commands & Key Bindings to access the Customize IDE
Commands window. Figure 25.1 on page 336
shows the Customize IDE
Commands window. Table 25.1 on page 336 explains each button in the window.
See the tasks in this chapter for more detailed information.
IDE 5.6 User’s Guide
335
Customizing the IDE
Customizing IDE Commands
Figure 25.1 Customize IDE Commands window
Table 25.1 Customize IDE Commands window—button overview
Button name
New Group
New Command
Factory Settings
Revert
Export
Explanation
Click to add a new command group to the Commands list.
Click to add a new command setting within a group.
Click to restore default options for the current Customize IDE
Commands (Commands and Toolbar Items) lists.
Click to restore the most recently saved options for the current
Customize IDE Commands (Commands and Toolbar Items) lists.
Click to save a file that contains commands and key bindings to use later in the Customize IDE Commands lists.
336
IDE 5.6 User’s Guide
Customizing the IDE
Customizing IDE Commands
Table 25.1 Customize IDE Commands window—button overview (continued)
Button name
Import
Save
Explanation
Click to open a file that contains commands and key bindings to use in the current Customize IDE Commands lists.
Click to save customizations to the Customize IDE
Commands list.
Commands Tab
Click the Commands tab at the top of the Customize IDE Commands window to display the commands view. Use this view to modify existing menu commands, and to create and remove command groups and menu commands.
Modifying Existing Commands
You can use the Commands tab of the Customize IDE Commands window to examine and modify existing command groups and menu commands. This view includes a Commands list. This hierarchical list organizes individual menu commands into command groups. Click the hierarchical control next to a command group to expand that group and view its contents.
To examine a particular item, select it in the Commands list. Information for the selected item appears on the right-hand side of the Customize IDE Commands window. This window provides this information for each selected item:
• Name—This field shows the name of the selected item. If the IDE does not permit you to change the name of the selected items, this field is grayed out.
• Appears in Menus—Enable this checkbox to display the selected item in the specified position in the CodeWarrior menu bar. For example, enabling this checkbox for a menu command allows that menu command to appear under the related command group in the menu bar. Disabling the checkbox prevents the menu command from appearing in the menu bar under the command group.
• Action—This section shows information about the action the selected item performs. For default menu commands, this section shows the command type, such as
Command or Hierarchical Menu. For customized menu commands that you create, this section lets you specify a command line
IDE 5.6 User’s Guide
337
Customizing the IDE
Customizing IDE Commands
(Windows, Solaris, and Linux) or a script (Mac OS) that runs after you choose the customized menu command.
• Key Bindings—This area consists of the Key Bindings list, the New
Binding button, and the Auto Repeat checkbox.
Creating a New Command Group
To create a new command group for menu commands, follow these steps:
1. Click the New Group button.
The IDE creates a new command group called New Group, adds it to the
Commands list, and displays its information in the Customize IDE
Commands window.
2. Rename the new command group in the Name field.
3. Use the Appears in Menus checkbox to toggle the availability of the new command group in the IDE menu bar.
Select the Appears in Menus checkbox to display the new command group in the menu bar. Clear the checkbox if you do not want the command group to appear in the menu bar.
4. Click Save.
The IDE saves your new command group. If you selected the Appears in
Menus checkbox, your new command group appears in the menu bar.
Creating a New Menu Command
To create a new menu command, follow these steps:
1. Select the command group you want to contain the new menu command.
You must select an existing command group in the Commands list.
2. Click the New Command button.
The IDE creates a new menu command named New Command and places it within the selected command group. The information for the new menu command appears in the Customize IDE Commands window.
338
IDE 5.6 User’s Guide
Customizing the IDE
Customizing IDE Commands
3. Enter a name for the new menu command.
You can change the default name of New Command. Enter a new name in the Name field of the Customize IDE Commands window.
4. Use the Appears in Menus checkbox to toggle the availibility of the new command within its command group.
5. Define the desired Action for the new menu command.
6. Click Save.
The IDE saves your new menu command. If you enabled the Appears in Menus checkbox, the new menu command appears within the selected command group.
Figure 25.2 Command action fields
IDE 5.6 User’s Guide
339
Customizing the IDE
Customizing IDE Commands
Defining Command Actions (Windows)
These fields help you associate an action with the new menu command:
• Execute—Enter in this field a command to run an application.
Alternatively, click the ellipsis button next to the field to select the application using a standard dialog box.
• Arguments—Enter the arguments that the IDE must pass to the application specified in the Execute field. Alternatively, choose the desired arguments from the pop-up menu next to the field.
• Directory—Enter the working directory the IDE should use when it executes the application specified in the Execute field. Alternatively, choose the desired directory from the pop-up menu next to the field.
Pre-defined Variables in Command
Definitions
The IDE provides pre-defined variables for Windows, Solaris, and Linux (not
Mac OS) to associate actions with commands. When you create a new command, you can use these pre-defined variables in command definitions to provide additional arguments that the IDE passes to the application (which is specified in the Execute field).
NOTE
You can use variables that end with Dir as both argument and directory names.
340
IDE 5.6 User’s Guide
Figure 25.3 Pre-defined Arguments
Customizing the IDE
Customizing IDE Commands
IDE 5.6 User’s Guide
341
Customizing the IDE
Customizing IDE Commands
Figure 25.4 Pre-defined Directory variables
Table 25.2 on page 342 explains the pre-defined variables for command-line
arguments.
Table 25.2 Pre-defined variables in command definitions
Variable
%sourceFilePath
%sourceFileDir
%sourceFileName
%sourceLineNumber
Command-line output sourceFilePath
is the frontmost editor window's full path.
sourceFileDir
is the frontmost editor window's directory.
sourceFileName
is the frontmost editor window's filename.
sourceLineNumber
is the line number of the insertion point in the front window.
342
IDE 5.6 User’s Guide
Customizing the IDE
Customizing IDE Commands
Table 25.2 Pre-defined variables in command definitions (continued)
Variable
%sourceSelection
%sourceSelUpdate
%projectFilePath
%projectFileDir
%projectFileName
%projectSelectedFiles
%targetFilePath
%targetFileDir
%targetFileName
%currentTargetName
%symFilePath
%symFileDir
%symFileName
Command-line output sourceSelection
is the path to a temporary file containing the currently selected text.
sourceSelUpdate
is like
sourceSelection
, except the
IDE waits for the command to finish and updates the selected text with the contents of the file.
projectFilePath
is the full path of the front project window.
projectFileDir
is the directory of the front project window.
projectFileName
is the filename of the front project window.
projectSelectedFiles
passes the selected filenames in the project window.
targetFilePath
is the full path of the output file of the front project.
targetFileDir
is the directory of the output file of the front project.
targetFileNam
e is the filename of the output file of the front project.
currentTargetName
passes the name of the current target of the frontmost window.
symFilePath
is the full path to the symbolics file of the front project (can be the same as targetFile, such as CodeView).
symFileDir
is the full directory to the symbolics file of the front project (can be the same as targetFile, such as
CodeView)
symFileName
is the full filename to the symbolics file of the front project (can be the same as targetFile, such as
CodeView)
IDE 5.6 User’s Guide
343
Customizing the IDE
Customizing IDE Commands
344
Using a Pre-defined Variable
To use a pre-defined variable, follow these steps:
1. Create a new menu command.
The IDE creates a new menu command named New Command and places it within your selected command group. The information for the new menu command appears in the Customize IDE Commands window.
2. Enter a name for the new menu command.
3. Use the Appears in Menus checkbox to toggle the availability of the new command within its command group.
4. Define the Action for the new menu command.
a. Enter in the Execute field a command line to run an application.
b. Next to the Arguments field, click on the arrow icon and select an argument listed in the pop-up menu.
c. Next to the Directory field, click on the arrow icon and select a directory listed in the pop-up menu.
5. Click Save.
The IDE saves your new menu command with the pre-defined variables. If you enabled the Appears in Menus checkbox, the new menu command appears within the selected command group.
Defining Command Actions (Mac OS)
After you create a new menu command, the Customize IDE Commands window shows the Run App/Script field. This field appears in the Action section of the window.
1. Click the Choose button next to the field to display a standard Open dialog box.
2. Use the dialog box to select an application or script.
The IDE launches this application or script each time you choose the menu command. The path to the selected application or script appears in the Run
App/Script field.
IDE 5.6 User’s Guide
Customizing the IDE
Customize Toolbars
Deleting Command Groups and Menu Commands
You can delete the command groups and menu commands that you create for the
IDE. Once removed, the command groups no longer appear in the IDE’s menu bar, and the menu commands no longer activate their associated command lines
(Windows), applications or scripts (Mac OS).
NOTE
If you need to temporarily remove your customized command groups and menu commands, consider exporting your settings. If you export your settings, you do not need to reconstruct them if you want them in the future.
To delete a command group or menu command, follow these steps:
1. Select the command group or menu command you wish to delete.
If necessary, click the hierarchical control next to a group to expand and view its contents.
2. Click Delete.
After clicking the Delete button, the selected command group or menu command disappears from the Commands list.
3. Click Save.
Clicking the Save button confirms the deletion. The IDE removes deleted command groups from its menu bar. Deleted menu commands disappear from their respective command groups.
Customize Toolbars
You can customize your IDE toolbars to contain frequently used commands. The
IDE toolbars contain a series of elements. Each element typically represents a menu command. After you click the element, the IDE executes the associated menu command. The toolbar can also contain elements that execute actions other than menu commands.
IDE 5.6 User’s Guide
345
Customizing the IDE
Customize Toolbars
Figure 25.5 Toolbar Items tab
346
This section explains these topics:
•
“Kinds of Toolbars” on page 346
•
“Toolbar Elements” on page 347
•
“Modify a Toolbar” on page 347
Kinds of Toolbars
The CodeWarrior IDE uses two toolbar types:
• Main toolbar (Windows OS)—This toolbar, also known as the floating toolbar, is always available.
• Window toolbars—These toolbars appear in particular windows, such as the
Project window toolbar and the Browser window toolbar.
This distinction is important because you show, hide, clear, and reset the different toolbar types by using different sets of menu commands. These commands distinguish between the floating toolbar and the other window toolbars.
IDE 5.6 User’s Guide
When you change one of these toolbar types, that change applies to every instance of that toolbar type you subsequently create. For example, if you modify the toolbar in an editor window, your changes appear in all editor windows opened thereafter.
Figure 25.6 Main toolbar (Windows OS)
Customizing the IDE
Customize Toolbars
Figure 25.7 Project window toolbar
Toolbar Elements
A toolbar can contain these elements:
• Commands—buttons that you click to execute IDE menu commands
• Controls—menus, such as Document Settings, Functions, Header Files,
Markers, Version Control, and Current Target
• Miscellaneous—other elements, such as the File Dirty Indicator and File
Path field
• Scripts (Mac OS)—buttons that you click to execute one of the scripts available through the Scripts menu
Click the Toolbar Items tab at the top of the Customize IDE Commands window to display the Toolbar view. Use this view to add new elements to a toolbar.
Modify a Toolbar
You can modify a toolbar in these ways:
• Add a toolbar element
• Remove a toolbar element
• Clear all elements on a toolbar
• Reset a toolbar
IDE 5.6 User’s Guide
347
Customizing the IDE
Customize Toolbars
In certain circumstances there are restrictions on which elements you can add or remove from a toolbar. For example, you cannot add a second instance of an element to the toolbar.
After you modify a toolbar, the changes apply to every instance of that toolbar.
For example, if you customize the Project window toolbar, those changes will affect every Project window that you open, not just the toolbar in the active
Project window. Your changes do not affect windows that are already open.
TIP
To display a ToolTip that names a toolbar element, rest the cursor over the element. On the Mac OS 9-hosted IDE, activate Balloon Help and rest the cursor over the element.
348
Adding a Toolbar Element
You add an element to a toolbar by dragging and dropping it from the Toolbar
Items list onto a toolbar. This list is in the Toolbar Items view in the Customize
IDE Commands window.
To add an element to a toolbar, follow these steps:
1. From the Toolbar Items list, select the icon next to the element that you want to add to a toolbar.
Make sure that the destination toolbar is visible.
2. Drag the element’s icon from the Toolbar Items list to the destination toolbar.
On the Windows-hosted IDE, if the destination toolbar accepts the element, a framing bracket appears in the toolbar. This framing bracket shows you where the new element will appear after you release the cursor. If the destination toolbar does not accept the element, the framing bracket does not appear.
3. Release the element at the desired position.
After you release the element, the IDE inserts the element into the destination toolbar.
The toolbar might not accept an element for these reasons:
• The toolbar is full.
• The element already exists in the toolbar.
• The window does not support that element.
IDE 5.6 User’s Guide
Customizing the IDE
Customize Toolbars
• The following elements can only be added to the editor window toolbar:
Document Settings, Functions, Header Files, Markers, Version Control menus, File Dirty Indicator, and File Path field.
• The Current Target menu element can only be added to the Project window toolbar.
Removing a Toolbar element
To remove an element from a toolbar, follow these steps:
1. Display a contextual menu for the button that you want to remove, as explained in
Table 25.3 Displaying a contextual menu for a toolbar button
On this host...
Windows
Macintosh
Solaris
Linux
Do this...
Right-click the button.
Control-click the button.
Control-click the button.
Ctrl-click the button.
2. Select the Remove Toolbar Item command from the contextual menu.
The IDE removes the button from the toolbar.
Clearing All Buttons on Toolbars
You can clear all elements from a toolbar and build your own toolbar from
scratch. Table 25.4 on page 350 explains how to clear the main (floating) toolbar
and window toolbars.
IDE 5.6 User’s Guide
349
Customizing the IDE
Customize Toolbars
Table 25.4 Clearing toolbars
On this host…
Windows
Macintosh
Solaris
Linux
Do this to clear the main toolbar…
Select
View > Toolbars >
Clear Main Toolbar
.
Select
Window > Toolbar
> Clear Floating Toolbar
.
Select
Window > Toolbar
> Clear Floating Toolbar
.
Select
Window > Toolbar
> Clear Floating Toolbar
.
Do this to clear the window toolbar…
Select
View > Toolbars >
Clear Window Toolbar
.
Select
Window > Toolbar
> Clear Window Toolbar
.
Select
Window > Toolbar
> Clear Window Toolbar
.
Select
Window > Toolbar
> Clear Window Toolbar
.
Reset Toolbars
Reset a toolbar to restore its default button set.
Table 25.5 on page 350 explains
how to reset the main (floating) toolbar and window toolbar by using menu commands.
Table 25.5 Resetting a toolbar by using menu commands
On this host…
Windows
Macintosh
Do this to reset the main toolbar…
Select
View > Toolbars >
Reset Main Toolbar
.
Select
Window > Toolbar
> Reset Floating
Toolbar
.
Do this to reset the window toolbar…
Select
View > Toolbars >
Reset Window Toolbar
.
Select
Window > Toolbar
> Reset Window
Toolbar
.
350
IDE 5.6 User’s Guide
Customizing the IDE
Customize Key Bindings
Table 25.5 Resetting a toolbar by using menu commands (continued)
On this host…
Solaris
Linux
Do this to reset the main toolbar…
Select
Window > Toolbar
> Reset Floating
Toolbar
.
Select
Window > Toolbar
> Reset Floating
Toolbar
.
Do this to reset the window toolbar…
Select
Window > Toolbar
> Reset Window
Toolbar
.
Select
Window > Toolbar
> Reset Window
Toolbar
.
Alternatively, you can use a contextual menu to reset the main toolbar or a window toolbar. Once you reset the toolbar, the IDE restores the default toolbar button set.
Table 25.6 on page 351 explains how to reset the main (floating)
toolbar and window toolbar by using a contextual menu.
Table 25.6 Resetting a toolbar by using a contextual menu
On this host…
Windows
Macintosh
Solaris
Linux
Do this to reset the main toolbar…
Right-click the toolbar and select
Reset Toolbar
.
Control-click the toolbar and select
Reset Toolbar
.
Click and hold on the toolbar, then select
Reset
Toolbar
.
Click and hold on the toolbar, then select
Reset
Toolbar
.
Do this to reset the window toolbar…
Right-click the toolbar and select
Reset Toolbar
.
Control-click the toolbar and select
Reset Toolbar
.
Click and hold on the toolbar, then select
Reset Toolbar
.
Click and hold on the toolbar, then select
Reset Toolbar
.
Customize Key Bindings
You can customize the keyboard shortcuts, known as key bindings, for various commands in the CodeWarrior IDE. You can bind a set of keystrokes to virtually
IDE 5.6 User’s Guide
351
Customizing the IDE
Customize Key Bindings
any command. To activate the command, type its associated key binding. Use the
Customize IDE Commands window to change IDE key bindings.
You can also use the Customize IDE Commands window to look up default key bindings for specific commands, as well as change existing key bindings to better suit your needs.
Click the Commands tab at the top of the Customize IDE Commands window to display the Commands view. Use this view to configure key bindings for menu commands, editor actions, and other actions. You can also specify prefix keys.
This section has these topics:
• Modifying key bindings
• Adding key bindings
• Deleting key bindings
• Setting Auto Repeat for key bindings
• Exporting commands and key bindings
• Importing commands and key bindings
• Quote key prefix
352
IDE 5.6 User’s Guide
Figure 25.8 Customize IDE Commands—Key Bindings
Customizing the IDE
Customize Key Bindings
Adding Key Bindings
Use the Customize IDE Commands window to specify additional key bindings for a particular command.
To add a key binding, follow these steps:
1. From the Commands list, select the command to which you want to add a new key binding.
Click the hierarchical controls next to the command categories to expand them as necessary so that you can see individual commands. Select the individual command you wish to modify.
NOTE
If you want to use your keyboard’s numeric keypad as part of the new key binding, enable the Numeric Keypad Bindings checkbox in the
Customize IDE Commands window.
IDE 5.6 User’s Guide
353
Customizing the IDE
Customize Key Bindings
2. Click New Binding.
After clicking this button, the Edit Key Binding dialog box appears.
Figure 25.9 Edit Key Bindings
354
3. Create the key combination you would like to use for the selected command.
For example, to add the key combination Ctrl-8, hold down the Ctrl key and press the 8 key, then release both keys at the same time.
If you decide against the key combination that you just entered, or if you make a mistake, click Cancel in the Edit Key Binding dialog box. The IDE discards changes and returns you to the Customize IDE Commands window.
4. Click OK in the Edit Key Binding dialog box.
The new key binding appears in the Key Bindings list in the Customize IDE
Commands window.
5. Click Save in the Customize IDE Commands window to save your changes.
The new key binding is now available for use in the IDE.
Exporting Commands and Key Bindings
You can export to a file the custom commands and key bindings that you use with the IDE. You can then import the file into another IDE running on a different computer in order to transfer all of your custom commands and key bindings. This process simplifies your setup on the other computer because you do not have to recreate your custom commands and key bindings manually.
NOTE
After you import your custom commands and key bindings into another computer, the IDE running on that computer first sets all its commands and key bindings to their default values, then imports your custom commands and key bindings.
IDE 5.6 User’s Guide
Customizing the IDE
Customize Key Bindings
To export your custom commands and key bindings, follow these steps:
1. Click Export in the Customize IDE Commands window.
After you click this button, a standard Save dialog box appears.
2. Select a location in which to save the Commands&KeyBindings.mkb file.
This file contains information about your custom commands and key bindings.
3. Click Save.
The IDE saves the Commands&KeyBindings.mkb file at the selected location.
TIP
You can rename the Commands&KeyBindings.mkb file, but remember to preserve the .mkb extension. This extension identifies the file as a Metrowerks Key Bindings file. Furthermore, the
Windows-hosted version of the CodeWarrior IDE uses this extension to properly recognize the commands and key bindings file.
Importing Commands and Key Bindings
You can import custom commands and key bindings from a previously exported file. Commands&KeyBindings.mkb is the default name of an exported file for custom commands and key bindings.
NOTE
After you import your custom commands and key bindings into another computer, the IDE running on that computer first sets all its commands and key bindings to their default values, then imports your custom commands and key bindings.
To import commands and key bindings, follow these steps:
1. Click Import in the Customize IDE Commands window.
After you click this button, a standard Open dialog box appears.
2. Use the dialog box to find and open the Commands&KeyBindings.mkb file that you want to import.
The IDE adds the custom commands and key bindings to the Customize IDE
Commands window.
IDE 5.6 User’s Guide
355
Customizing the IDE
Customize Key Bindings
Quote Key prefix
The Quote Key is a special prefix key that lets you use any character (such as a-z) as a command key without a modifier key, and still retain the ability to use that character normally, as in editor windows.
In typical use, a key equivalent involves two keys: a modifier key (such as the
Ctrl key) combined with a printing key. However, the IDE does not require a modifier key.
For example, you can assign the 2 key (with no modifier) to a command. If you make this assignment, you can no longer type a 2 into your source code in the editor. This conflict occurs because the IDE now interprets the 2 as a command key instead of a printing key. The Quote Key prefix provides the solution to such conflicts.
You can configure the IDE to recognize any key as the Quote Key prefix. Despite its name, the Quote Key prefix does not have to be the key that creates the quote character (").
After typing an assigned Quote Key prefix, the IDE interprets the next keypress as a keystroke, not as a command.
Returning to the earlier example, assume that you assign the 2 key to a command and the tilde key (~) to be your Quote Key prefix. To execute the command, you would type the 2 key. To enter the character 2 into source code, you would type the tilde key first, then the 2 key. To enter the tilde character into source code, you would press the tilde key twice.
WARNING!
The Quote Key only affects the next key or key combination that you type. You must use the Quote Key once for each bound key or key combination for which you want to type.
356
Assigning the Quote Key prefix
To assign the Quote Key prefix:
1. Click the expand control next to the Miscellaneous command group.
Miscellaneous is part of the Commands list in the Customize IDE
Commands window.
IDE 5.6 User’s Guide
Customizing the IDE
Customize Key Bindings
2. Select the Quote Key item.
NOTE
If you want to use the numeric keypad as part of the new key binding, enable the Numeric Keypad Bindings checkbox in the Customize
IDE Commands window.
3. Click New Binding to display the Edit Key Bindings dialog box.
4. Type the desired Quote Key prefix.
The keys you type appear in the dialog box. If you make a mistake or decide against the keys you typed, click Cancel to return to the Customize IDE
Commands window.
5. Click OK in the Edit Key Binding dialog box.
The new Quote Key prefix appears in the Key Bindings list.
IDE 5.6 User’s Guide
357
Customizing the IDE
Customize Key Bindings
358
IDE 5.6 User’s Guide
26
Working with IDE
Preferences
This chapter explains core CodeWarrior
™
IDE preference panels and provides basic information on global- and project-level preference options. Consult the
Targeting documentation for information on platform-specific preference panels.
This chapter contains these sections:
•
“IDE Preferences Window” on page 359
•
•
•
Abbreviated descriptions appear in this chapter. See “Preference and Target
Settings Options” on page 423 for more information on preference-panel options.
IDE Preferences Window
The IDE Preferences window lists global IDE options. These preferences, unless superseded by a Target Settings option, apply to every open project file.
Select Edit > Preferences to open the IDE Preferences window.
The IDE Preferences window lists preferences by group:
• General—configures overall IDE preferences, such as project builds, recent items, and third-party tools
• Editor—configures editor preferences, such as fonts, tabs, and syntax coloring
• Debugger—configures debugger preferences, such as window hiding during debugging sessions, low-level interactions, and variable highlighting
IDE 5.6 User’s Guide
359
Working with IDE Preferences
IDE Preferences Window
Figure 26.1 IDE Preferences window
Table 26.1 IDE Preferences window
Item
IDE Preference
Panels list
Preference panel
Explanation
Lists preference panels, organized by group. Click the hierarchical control next to a group name to show or hide individual preference panels.
Shows options for the selected item in the IDE Preference Panels list.
Click to restore the default options for the current preference panel.
Click to restore the most recently saved options for the current preference panel.
Click to save an XML file that contains options for the current preference panel.
360
IDE 5.6 User’s Guide
Working with IDE Preferences
General Panels
Table 26.1 IDE Preferences window (continued)
Item
OK (Windows)
Cancel
(Windows)
Apply (Windows)
Save (Macintosh,
Solaris, and
Linux)
Explanation
Click to open an XML file that contains options for the current preference panel.
Click to save modifications to all preference panels and close the window.
Click to discard modifications to all preference panels and close the window.
Click to confirm modifications to all preference panels.
Click to save modifications to all preference panels.
General Panels
The General section of the IDE Preference Panels defines basic options assigned to a new project.
The General preference panels available on most IDE hosts include:
•
•
“Concurrent Compiles” on page 363
•
•
“Help Preferences” on page 368
•
•
“Shielded Folders” on page 369
•
Build Settings
The Build Settings preference panel provides options for customizing various aspects of project builds, including:
• file actions during project builds
• memory usage to accelerate builds
• local data storage of projects stored on read-only volumes
IDE 5.6 User’s Guide
361
Working with IDE Preferences
General Panels
Figure 26.2 Build Settings preference panel
Table 26.2 Build Settings preference panel
Item
To Date’ & ‘Make’ on page 445 (Macintosh,
Solaris, and Linux)
(Macintosh, Solaris, and
Linux)
Explanation
Select to have the IDE play an alert sound after completing a
Bring Up To Date
or
Make
command.
(Macintosh, Solaris, and
Linux)
Build before running on page 427
Save open files before build on page 448
Show message after building up-to-date project on page 451
Choose the sound the IDE plays after successfully completing a
Bring Up To Date
or
Make
command.
Choose the sound the IDE plays after failing to complete a
Bring Up To Date
or
Make
command.
Choose to always build the project before running it, never build the project before running it, or ask for the desired action.
Select to automatically save the contents of all editor windows before starting a build.
Select to have the IDE display a message after successfully building a project.
362
IDE 5.6 User’s Guide
Working with IDE Preferences
General Panels
Table 26.2 Build Settings preference panel (continued)
Item
Include file cache on page 440 (Macintosh)
Compiler thread stack on page 429 (Windows and
Macintosh)
Explanation
Enter the kilobytes of memory to allocate to the file cache used for #include files during a project build.
Enter the kilobytes of memory to allocate to the stack for execution of the IDE compiler thread. Increase the size when compiling heavily optimized code.
Select to specify a location to save project data if the project is on a read-only volume. Click Choose to select the location.
Concurrent Compiles
The Concurrent Compiles preference panel controls execution of simultaneous
IDE compilation processes. The IDE lists this panel in the IDE Preference Panels list when the active compiler supports concurrency.
The IDE uses concurrent compiles to compile code more efficiently. The IDE improves its use of available processor capacity by spawning multiple compile processes, which allow the operating system to perform these tasks as needed:
• optimize resource use
• use overlapped input/output
For those compilers that support concurrency, concurrent compiles improve compile time on both single- and multiple-processor systems.
Figure 26.3 Concurrent Compiles preference panel
IDE 5.6 User’s Guide
363
Working with IDE Preferences
General Panels
Table 26.3 Concurrent Compiles preference panel
Item
Explanation
Select to have the IDE run multiple compilation processes simultaneously.
Select to allow the number of concurrent compiles suggested by the IDE.
Select to stipulate the number of concurrent compiles.
IDE Extras
The IDE Extras preference panel provides options for customizing various aspects of the IDE, including:
• menu-bar layout
• the number of recent projects, document files, and symbolics files to remember
• use of a third-party editor
364
IDE 5.6 User’s Guide
Figure 26.4 IDE Extras preference panel
Working with IDE Preferences
General Panels
Table 26.4 IDE Extras preference panel
Item
Explanation
Choose a layout that organizes IDE menus into a typical host-platform menu bar. Restart the IDE in order for menu-bar layout changes to take effect.
Enter the number of recently opened projects for the IDE to display in the
Open Recent
submenu. Enter zero to disable this feature.
Enter the number of recently opened documents for the IDE to display in the
Open Recent
submenu. Enter zero to disable this feature.
Enter the number of recently opened symbolics files for the IDE to display in the
Open
Recent
submenu. Enter zero to disable this feature.
IDE 5.6 User’s Guide
365
Working with IDE Preferences
General Panels
Table 26.4 IDE Extras preference panel (continued)
Item
Context popup delay on page 430
(Macintosh, Solaris, and Linux)
Use Third Party Editor on page 458 (Windows)
(Windows)
Launch Editor w/ Line # on page 442 (Windows)
(Windows)
Zoom windows to full screen on page 461 (Macintosh, Solaris, and
Linux)
(Macintosh, Solaris, and Linux)
Use External Editor on page 456
(Macintosh, Solaris, and Linux)
Use ToolServer menu on page 458
(Classic Macintosh)
Enable automatic Toolbar help on page 433 (Classic Macintosh)
Explanation
Enter the number of recently opened workspaces for the IDE to display in the
Open Recent
submenu. Enter zero to disable this feature.
Enter the number of ticks to wait before displaying contextual menus. A tick is 1/60 of a second.
Select to use a third-party text editor to edit source files.
Enter a command-line expression that runs the desired third-party text editor.
Enter a command-line expression that runs the desired third-party text editor and passes to that editor an initial line of text to display.
Select to have the IDE use the Multiple
Document Interface (MDI). Clear to have the IDE use the Floating Document Interface (FDI).
Restart the IDE in order for interface changes to take effect.
Select to have zoomed windows fill the entire screen. Clear to have zoomed windows in a default size.
Select to display the Scripts menu in the menu bar. Clear to remove the Scripts menu from the menu bar.
Select to use a third-party text editor to edit text files in the current project. Clear to use the editor included with the IDE.
Select to display the ToolServer menu in the menu bar. Clear to remove the ToolServer menu from the menu bar.
Select to display Balloon Help after resting the cursor over a toolbar icon. Clear to prevent
Balloon Help from appearing.
366
IDE 5.6 User’s Guide
Working with IDE Preferences
General Panels
Table 26.4 IDE Extras preference panel (continued)
Item
Use default workspace on page 456
Find Reference using on page 437
(Macintosh)
Show Code and Data Sizes on page 450 (Windows)
Explanation
Select this option to have the IDE use the default workspace to save and restore state information.
Clear this option to have the IDE always start in the same state.
Choose an online browser application to view reference information and definitions.
Displays or hides Code and Data columns in project manager.
Using an External Editor on the Macintosh
To use an external editor on the Macintosh, the IDE sends AppleEvents to an alias file that points to the editor application. Manually configure the IDE to use an external editor.
1. Choose Edit > Preferences.
The IDE Preferences window appears.
2. Select the IDE Extras panel from the IDE Preference Panels list.
3. Select the Use External Editor option.
4. Click Save.
The IDE is now prepared to use an external editor application. To specify the external editor to use:
1. Find and open the CodeWarrior folder.
2. Create a folder named (Helper Apps) inside the CodeWarrior folder (if it does not already exist).
3. Make an alias of the desired editor application.
4. Place the alias file inside the (Helper Apps) folder.
5. Rename the alias file External Editor.
6. Restart the IDE in order for changes to take effect.
The IDE now uses the aliased external editor.
IDE 5.6 User’s Guide
367
Working with IDE Preferences
General Panels
Help Preferences
The Help Preferences panel, available on the Solaris and Linux IDE hosts, specifies the browser used for viewing IDE online help.
Figure 26.5 Help Preferences panel
Table 26.5 Help Preferences panel
Item
Choose...
Explanation
Enter a path to the browser to use for viewing IDE online help.
Alternatively, use the Choose... button.
Click to select the path to the browser to use for viewing IDE online help.
Plugin Settings
The Plugin Settings preference panel contains options for troubleshooting thirdparty IDE plug-ins.
Figure 26.6 Plugin Settings preference panel
368
IDE 5.6 User’s Guide
Working with IDE Preferences
General Panels
Table 26.6 Plugin Settings preference panel
Item
Disable third party COM plugins on page 431
Explanation
Choose the plug-in diagnostics level the IDE generates the next time it loads plug-ins. Restart the
IDE in order for diagnostic-level changes to take effect. Options are None, Errors Only, and All Info.
Select to prevent the IDE from loading third-party
Common Object Model (COM) plug-ins.
Shielded Folders
The Shielded Folder preference panel enables the IDE to ignore specified folders during project operations and find-and-compare operations. The IDE ignores folders based on matching names with regular expressions defined in the preference panel.
NOTE
If the Access Paths settings panel in the Target Settings window contains a path to a shielded folder, the IDE overrides the shielding and includes the folder in project operations and find-and-compare operations.
IDE 5.6 User’s Guide
369
Working with IDE Preferences
General Panels
Figure 26.7 Shielded Folders preference panel
Table 26.7 Shielded Folders preference panel
Item
Shielded folder list
Regular Expression on page 447
Project operations on page 447
Find and compare operations on page 437
Icon Explanation
Lists folders that match the specified regular expression. The IDE skips these folders during project operations, findand-compare operations, or both.
Enter the regular expression used to shield folders from selected operations.
Select to have the IDE skip folders during project operations. A bullet appears in the corresponding column of the shielded folder list.
Select to have the IDE skip folders during find-and-compare operations. A bullet appears in the corresponding column of the shielded folder list.
370
IDE 5.6 User’s Guide
Working with IDE Preferences
General Panels
Table 26.7 Shielded Folders preference panel (continued)
Item
Add
Change
Remove
Icon Explanation
Click to add the current Regular
Expression field entry to the shielded folder list.
Click to replace the selected regular expression in the shielded folder list with the current Regular Expression field entry.
Click to delete the selected regular expression from the shielded folder list.
2
Table 26.8 Default regular expressions in Shielded Folders panel
Regular Expression Explanation
\(.*\)
Matches folders with names that begin and end with parentheses, such as the
(Project Stationery) folder.
CVS
.*[_]Data
Matches folders named CVS . With this regular expression, the IDE skips Concurrent Versions
System (CVS) data files.
Matches the names of folders generated by the
IDE that store target data information, such as a folder named MyProject_Data .
Source Trees
Use the Source Trees panel to add, modify, and remove source trees (root paths) used in projects. Use source trees to define common access paths and build-target outputs to promote sharing of projects across different hosts. Source trees have these scopes:
• Global source trees, defined in the IDE Preferences window, apply to all projects.
IDE 5.6 User’s Guide
371
Working with IDE Preferences
General Panels
• Project source trees, defined in the Target Settings window for a particular project, apply only to files in that project. Project source trees always take precedence over global source trees.
Except for the difference in scope, global and project source trees operate identically.
Figure 26.8 Source Trees panel
Table 26.9 Source Trees panel
Item
Source Tree list
Name
Choose
Add
Explanation
Contains the Name and Path of currently defined source trees.
Enter a name for a new source tree or modify the name of a selected source tree.
Choose the source-tree path type.
Click to select or modify a source-tree path.
Click to add a new source-tree path to the Source Tree list.
372
IDE 5.6 User’s Guide
Working with IDE Preferences
General Panels
Table 26.9 Source Trees panel (continued)
Item
Change
Remove
Explanation
Click to modify the selected source-tree name or path.
Click to delete the selected source tree from the Source Tree list.
Adding Source Trees
Add source trees that define root paths for access paths and build-target output.
1. Choose Edit > Preferences.
The IDE Preferences window appears.
2. Select the Source Trees panel from the IDE Preference Panels list.
3. Enter in the Name field a name for the new source tree.
4. Choose the source tree Type:
• Absolute Path—defines a path from the root level of the hard drive to a desired folder, including all intermediate folders
• Environment Variable—(Windows, Solaris, and Linux) defines an environment variable in the operating environment
• Registry Key—(Windows) defines a key entry in the operatingenvironment registry
5. Enter the source-tree definition:
• For Absolute Path—Click Choose to display a subordinate dialog box.
Use the dialog box to select the desired folder. The absolute path to the selected folder appears in the Source Trees preference panel.
• For Environment Variable—Enter the path to the desired environment variable.
• For Registry Key—Enter the path to the desired key entry in the registry.
6. Click Add.
The IDE adds the new source tree to the Source Trees list.
IDE 5.6 User’s Guide
373
Working with IDE Preferences
General Panels
7. Click OK, Apply, or Save.
The IDE saves the source-tree changes.
Changing Source Trees
Change a source tree to update path information for a project. The IDE must be able to resolve source trees before building the project.
1. Choose Edit > Preferences.
2. Select the Source Trees panel from the IDE Preference Panels list.
3. Select the desired source tree in the Source Trees list.
4. If needed, enter a new name for the selected source tree.
5. If needed, choose a new path type for the selected source tree.
6. Click Change.
The IDE updates the source tree and displays changes in the Source Trees list. A reminder message to update source-tree references in the project appears.
7. Click OK, Apply, or Save.
The IDE saves the source-tree changes.
Removing Source Trees
Remove source trees that the project no longer uses. The IDE must be able to find the remaining source trees before building the project.
1. Choose Edit > Preferences.
2. Select the Source Trees panel from the IDE Preference Panels list.
3. Select the source tree from the Source Trees list.
4. Click Remove.
The IDE updates the Source Trees list. A reminder message to update sourcetree references in the project appears.
5. Click OK, Apply, or Save.
The IDE saves the source-tree changes.
374
IDE 5.6 User’s Guide
Working with IDE Preferences
Editor Panels
Editor Panels
The Editor section of the IDE Preference Panels list defines the editor settings assigned to a new project.
The Editor preference panels available on most IDE hosts include:
•
•
•
•
•
Code Completion
The Code Completion preference panel provides options for customizing the
IDE code-completion behavior, including:
• automatic invocation and indexing
• window positioning and appearance delay
• case sensitivity
Figure 26.9 Code Completion preference panel
IDE 5.6 User’s Guide
375
Working with IDE Preferences
Editor Panels
Table 26.10 Code Completion preference panel
Item
Automatic Invocation on page 425
Window follows insertion point on page 460
Display deprecated items on page 431
Code Completion Delay on page 428 (ticks)
Explanation
Select to automatically open the Code Completion window to complete programming-language symbols. Clear to manually open the window.
Select to have the Code Completion window follow the insertion point as you edit text. Clear to leave the window in place.
Select to have the Code Completion window display obsolete items in gray text. Clear to have the window hide obsolete items.
Select to have the IDE consider case when completing code. Clear to have the IDE ignore case.
Enter the number of ticks to wait before opening the Code Completion window. A tick is 1/60 of a second.
Code Formatting
The Code Formatting preference panel provides options for customizing editor code-formatting behavior, including:
• indenting
• syntax placement
• brace handling
376
IDE 5.6 User’s Guide
Figure 26.10 Code Formatting preference panel
Working with IDE Preferences
Editor Panels
Table 26.11 Code Formatting preference panel
Item
Use Automatic Code
Formatting
Language Settings
Format braces
Explanation
Check to have the editor automatically format your source code according to settings in this panel.
Clear to prevent the editor from automatically formatting your code.
Use to specify the language type that you want to format.
Your selection changes the other options in this panel to their default states for the selected language.
Check to have the editor automatically insert a closing brace when you type an opening brace. The editor places the cursor between the opening brace that you typed and the closing brace that it inserts.
Clear to prevent the editor from automatically inserting a closing brace when you type an opening brace.
IDE 5.6 User’s Guide
377
Working with IDE Preferences
Editor Panels
Table 26.11 Code Formatting preference panel (continued)
Item
Place opening brace on separate line
Indent braces
Place “else” on same line as closing brace
Indent code within braces
Indent “case” within
“switch” statement
Close braces, brackets, and parentheses
Explanation
Check to have the editor place on the next line an opening brace that you type.
Clear to prevent the editor from placing on the next line an opening brace that you type.
Check to have the editor indent braces by one tab stop from the previous line.
Clear to prevent the editor from indenting braces by one tab stop from the previous line.
Check to have the editor place else and else if text on the same line as the closing brace of the if or else if statement.
Clear to prevent the editor from placing else and else if text on the same line as the closing brace of the if or else if statement.
Check to have the editor indent code by one tab stop from the braces.
Clear to prevent the editor from indenting code by one tab stop from the braces.
Check to have the editor indent case statements by one tab stop inside a switch statement.
Clear to prevent the editor from indenting case statements by one tab stop inside a switch statement.
Check to have the editor automatically insert the corresponding closing character when you type an opening brace, bracket, or parenthesis. The editor places the cursor between the opening character and the closing character.
Clear to prevent the editor from automatically inserting the corresponding closing character when you type an opening brace, bracket, or parenthesis.
378
Editor Settings
The Editor Settings preference panel provides options for customizing the editor, including:
• fonts, window locations, and insertion-point positions
IDE 5.6 User’s Guide
• contextual menus
• additional editor-window features
Figure 26.11 Editor Settings preference panel
Working with IDE Preferences
Editor Panels
Table 26.12 Editor Settings preference panel
Item
Selection position on page 450
Window position and size on page 460
Explanation
Select to retain font settings for each source file. Clear to apply default font settings each time the IDE displays the source file.
Select to retain the text-insertion position in each source file.
Select to retain the location and dimensions of each editor window.
Select to add Edit menu commands to contextual menus.
IDE 5.6 User’s Guide
379
Working with IDE Preferences
Editor Panels
Table 26.12 Editor Settings preference panel (continued)
Item
(Macintosh)
Balance while typing on page 426
Relaxed C popup parsing on page 447
Drag and drop editing on page 432
Left margin click selects line on page 442
Sort function popup on page 453
Enable Virtual Space on page 433 (Windows and
Macintosh)
Explanation
Select to add Browser menu commands to contextual menus. Also select in order to use the Insert Template
Commands option.
Select to add the
Insert Template
submenu to contextual menus. The submenu displays sourcedefined function templates.
Select to add Project menu commands to contextual menus.
Select to add VCS (Version Control System) menu commands to contextual menus.
Select to add Debug menu commands to contextual menus.
Select to flash the matching ( , [ , or { after typing ) ,
] , or } in an editor window.
Select to allow multiple undo and redo operations while editing text.
Select to allow the C parser to recognize some nonstandard function formats and avoid skipping or misinterpreting some definition styles.
Select to allow drag-and-drop text editing.
Select to allow selection of an entire line of text by clicking in the left margin of the editor window.
Select to sort function names by alphabetical order in menus. Clear to sort function names by order of appearance in the source file.
Select to allow moving the text-insertion point beyond the end of a source-code line. Entering new text automatically inserts spaces between the former end of the line and the newly entered text.
380
IDE 5.6 User’s Guide
Working with IDE Preferences
Editor Panels
Table 26.12 Editor Settings preference panel (continued)
Item
Balance Flash Delay on page 426
Default file format on page 430
Explanation
Enter the number of ticks to flash a balancing punctuation character. A tick is1/60 of a second.
Choose the default end-of-line format used to save files.
Font & Tabs
The Font & Tabs preference panel provides options for customizing settings used by the editor, including:
• font and font size used in editor windows
• auto indentation and tab size
• tabs on selections and replacing tabs with spaces
Figure 26.12 Font & Tabs preference panel
IDE 5.6 User’s Guide
381
Working with IDE Preferences
Editor Panels
Table 26.13 Font & Tabs preference panel
Item Explanation
(Windows)
Tab indents selection on page 454
Choose the typeface displayed in editor windows.
Choose the font size displayed in editor windows.
Choose the IDE script system. The script system maps keyboard keys to characters of an alphabet.
Select to indent each line of selected text after pressing Tab.
Clear to replace selected text with a tab character after pressing Tab.
Enter the number of spaces to substitute in place of a tab character. This number applies to the Tab Inserts Spaces option.
Select to automatically apply the indentation level from the previous line of text to each new line created by pressing Enter or Return.
Select to insert spaces instead of a tab character after pressing Tab. The Tab Size option determines the number of inserted spaces.
382
Setting the Text Font
To set the text font, follow these steps:
1. Choose Edit > Preferences.
2. Select the Font & Tabs panel in the Editor group in the IDE Preference
Panels list.
3. In the Font Settings area of the IDE Preferences window, select a font type in the drop-down menu in the Font field.
4. Save your font in the IDE Preferences window.
• Windows: Click OK.
• Macintosh/Linux/Solaris: Click Save.
The foreground text changes to the new font.
IDE 5.6 User’s Guide
Working with IDE Preferences
Editor Panels
Setting the Text Size
To set the text size, follow these steps:
1. Choose Edit > Preferences.
2. Select the Font & Tabs panel in the Editor group in the IDE Preference
Panels list.
3. In the Font Settings area of the IDE Preferences window, select the Size drop-down menu and choose a text point size (from 2 to 24 points).
4. Save your text size in the IDE Preferences window.
• Windows: Click OK.
• Macintosh/Linux/Solaris: Click Save.
The foreground text changes to the new size.
Text Colors
The Text Colors preference panel customizes colors applied to elements of source code displayed in editor windows, such as:
• default foreground and background in editor windows
• standard comments, keywords, and strings in source code
• custom-defined keywords
• browser symbols
Default settings provide a simple scheme of at least four source-code colors. If four colors do not provide sufficient detail, modify this preference panel to create more sophisticated color schemes.
IDE 5.6 User’s Guide
383
Working with IDE Preferences
Editor Panels
Figure 26.13 Text Colors preference panel
Table 26.14 Text Colors preference panel
Item
Activate Syntax Coloring on page 423
Explanation
Click the color swatch to display a dialog box. Use the dialog box to set the foreground color used in editor windows for text.
Click the color swatch to set the background color used in editor windows.
Select to apply custom colors to comments, keywords, strings, and custom keywords in text. Clear to use the
Foreground color for all text.
Click the color swatch to set the color used for sourcecode comments.
Click the color swatch to set the color used for sourcecode language keywords.
384
IDE 5.6 User’s Guide
Working with IDE Preferences
Editor Panels
Table 26.14 Text Colors preference panel (continued)
Item
Set 1, Set 2, Set 3, Set 4
Edit
Classes
Constants
Enums
Functions
Globals
Macros
Templates
TypeDefs
Other
Explanation
Click the color swatch to set the color used for sourcecode string literals.
Click a color swatch to set the color used for the corresponding custom-keyword set.
Click to add, modify, or remove keywords from the corresponding custom-keyword set.
Select to apply custom colors to browser symbols in text.
Clear to use the Foreground color for all text.
Click the color swatch to set the color used for sourcecode classes.
Click the color swatch to set the color used for sourcecode constants.
Click the color swatch to set the color used for sourcecode enumerations.
Click the color swatch to set the color used for sourcecode functions.
Click the color swatch to set the color used for sourcecode global variables.
Click the color swatch to set the color used for sourcecode macros.
Click the color swatch to set the color used for sourcecode templates.
Click the color swatch to set the color used for sourcecode type definitions.
Click the color swatch to set the color used for other symbols not specified in the Activate Browser Coloring section.
IDE 5.6 User’s Guide
385
Working with IDE Preferences
Editor Panels
386
Setting the Foreground Text Color
Use the Foreground Color option to configure the foreground text color displayed in editor windows.
1. Choose Edit > Preferences.
2. Select the Text Colors panel in the Editor group in the IDE Preference
Panels list.
3. Click the Foreground color box to set the editor’s foreground color.
4. Pick color.
5. Click OK in the Color Picker window.
6. Click OK or Save
The foreground text color changes to the new color.
Setting the Background Text Color
Use the Background Color option to configure the background color displayed by all editor windows.
1. Choose Edit > Preferences.
2. Select the Text Colors panel in the Editor group in the IDE Preference
Panels list.
3. Click the Background color box to set the editor’s background color.
4. Pick color.
5. Click OK in the Color Picker window.
6. Click OK or Save
The background text color changes to the new color.
Activate Syntax and Browser Coloring
Use the Activate Syntax Coloring and Activate Browser Coloring options to configure the syntax and browser colors that all editor windows display.
1. Choose Edit > Preferences.
IDE 5.6 User’s Guide
Working with IDE Preferences
Debugger Panels
2. Select the Text Colors panel in the Editor group in the IDE Preference
Panels list.
3. Select the checkbox next to the Activate Syntax Coloring or the Activate
Browser Coloring option.
4. Click on the colored box next to the option.
5. Pick color.
6. Click OK in the Color Picker window.
7. Click OK or Save
Debugger Panels
The Debugger section of the IDE Preference Panels defines the basic debugger settings assigned to a new project.
The Debugger preference panels available on most IDE hosts include:
•
“Display Settings” on page 387
•
•
•
“Remote Connections” on page 393
Display Settings
The Display Settings preference panel provides options for customizing various aspects of the IDE Debugger, including:
• assignment of colors to changed variables and watchpoints
• viewing variable types
• displaying local variables
• using decimal values
• sorting functions
• using dynamic objects
shows the Display Settings preference panel.
explains the items in the preference panel.
IDE 5.6 User’s Guide
387
Working with IDE Preferences
Debugger Panels
Figure 26.14 Display Settings preference panel
Table 26.15 Display Settings preference panel
Item
Variable values change on page 459
Watchpoint indicator on page 460
Show variable types on page 452
Show variable location on page 452
Explanation
Click the color swatch to set the color that indicates a changed variable value.
Click the color swatch to set the color that indicates a changed watchpoint value.
Select to always show the type associated with each variable.
Select to display the Location column in the
Variables pane of the Thread window.
Select to show all local variables. Clear to have the debugger show only variables near the program counter.
388
IDE 5.6 User’s Guide
Working with IDE Preferences
Debugger Panels
Table 26.15 Display Settings preference panel (continued)
Item
Smart Variable Formatting
Show hidden locals
Show values as decimal on page 451
Sort functions by method name in symbolics window on page 452
Attempt to show the dynamic runtime type of objects on page 424
Show variable values in source code on page 452
Default size for unbounded arrays on page 431
Scientific Notation for (1-9) or more 0s after “0.”
Explanation
Controls whether variables in variable windows, panes and expression displays are formatted using entries in XML files located in the VariableFormats support folder; such as the Windows_Formats.xml file.
Select to show hidden local variables. A hidden local variable is a variable that is in scope, but is hidden by a variable of the same name in a deeper scope.
Select to always show decimal values instead of hexadecimal values.
Select to sort functions of the form className::methodName in the Symbolics window by methodName . Clear to sort by className .
Select to attempt to display the runtime type of the specified language objects. Clear to display the static type.
Select to show variable values in contextual menus in the source code.
Enter the default number of unbounded array elements to display in a View Array window.
Maximum number of zeros after a decimal point in a float value such as 0.034. For example, a value of 2 means 0.00045 will be displayed in scientific notation as 4.5e-4; a value of 3 will be displayed as 0.00045.
Does not change value precision, only value display.
Window Settings
The Window Settings preference panel provides options for customizing how the debugger displays windows during debugging sessions, including nondebugging and project windows.
IDE 5.6 User’s Guide
389
Working with IDE Preferences
Debugger Panels
Figure 26.15 Window Settings preference panel
Table 26.16 Window Settings preference panel
Item
Minimize non-debugging windows on page 444
(Windows)
Collapse non-debugging windows on page 429
(Macintosh,
Solaris, and Linux)
Hide non-debugging windows on page 439
Close non-debugging windows on page 428
Do nothing to project windows on page 431
Use Debugging Monitor on page 456 (Classic Macintosh)
Monitor for debugging on page 444
(Classic Macintosh)
Explanation
Select to leave all windows in place when starting a debugging session.
Select to minimize all non-debugging windows when starting a debugging session.
Select to collapse all non-debugging windows when starting a debugging session.
Select to hide, but not close, all non-debugging windows when starting a debugging session.
Select to close all non-debugging windows, except for the active project window, when starting a debugging session.
Select to prevent the IDE from hiding project windows when starting a debugging session.
Select to use a second monitor during debugging sessions.
Choose the monitor to display debugging windows. The coordinates in parentheses identify the selected monitor in the QuickDraw
®
coordinate space.
390
IDE 5.6 User’s Guide
Working with IDE Preferences
Debugger Panels
Table 26.16 Window Settings preference panel (continued)
Item
Move open windows to debugging monitor when debugging starts on page 445
(Classic Macintosh)
Open windows on debugging monitor during debugging on page 445 (Classic Macintosh)
Show threads in separate windows on page 451
Explanation
Select to move all open windows to the selected debugging monitor when a debugging session starts.
Select to display on the debugging monitor any window opened during a debugging session.
Show processes in separate windows on page 451
Select to display threads in separate Thread windows. Clear to show all threads in one window. Restart active debugging sessions in order for changes to take effect.
Select to display processes in separate windows.
Clear to show all processes in one window.
Global Settings
The Global Settings preference panel provides options for customizing various global options for the debugger, including:
• file caching to accelerate debugger sessions
• automatic launch of applications and libraries
• confirmation of attempts to close or quit debugging sessions
IDE 5.6 User’s Guide
391
Working with IDE Preferences
Debugger Panels
Figure 26.16 Global Settings preference panel
Table 26.17 Global Settings preference panel
Item
Maintain files in cache on page 444
Confirm invalid file modification dates when debugging on page 429
Automatically launch applications when SYM file opens on page 425
Confirm “Kill Process” when closing or quitting on page 430
Explanation
Select to maintain a cache of modified files between debugging sessions. Use this option to debug through the original source code for files modified since the last build.
Enter the number of days that the IDE maintains its file cache.
Click to delete the file cache maintained by the
IDE, freeing memory and disk space.
Select to have the IDE display a warning message when debugging a project with mismatched file modification dates.
Select to automatically launch the application program associated with an open symbolics file.
Select to prompt for confirmation before killing processes upon quitting a debugging session.
392
IDE 5.6 User’s Guide
Working with IDE Preferences
Debugger Panels
Table 26.17 Global Settings preference panel (continued)
Item
Select stack crawl window when task is stopped on page 450
Don’t step into runtime support code on page 432
Auto Target Libraries on page 424
Explanation
Select to bring forward the Stack Crawl window
(also known as the Thread window) after the debugger stops tasks.
Select to have the IDE not step into Metrowerks
Standard Library (MSL) runtime support code and instead directly step into your own code.
Select to have the IDE attempt to debug dynamically linked libraries (DLLs) loaded by the target application.
Remote Connections
The Remote Connections preference panel configures general network settings for remote-debugging connections between the host computer and other computers. Use these general settings as the basis for defining more specific connections for individual projects in conjunction with the Remote Debugging settings panel. The Target Settings window contains the Remote Debugging settings panel.
IDE 5.6 User’s Guide
393
Working with IDE Preferences
Debugger Panels
Figure 26.17 Remote Connections preference panel
Table 26.18 Remote Connections preference panel
Item
Remote Connection list
Add
Change
Remove
Explanation
Displays the name and connection type of all remote connections currently defined.
Click to add a new remote connection to the Remote
Connection list.
Click to change the settings of the selected remote connection.
Click to remove the selected remote connection from the
Remote Connection list.
394
IDE 5.6 User’s Guide
Working with IDE Preferences
Debugger Panels
Adding Remote Connections
Add a remote connection that defines a general network connection between the host computer and a remote computer.
1. Choose Edit > Preferences.
2. Select the Remote Connections panel from the IDE Preference Panels list.
3. Click Add.
The New Connection dialog box appears.
4. Enter the name for the general remote connection.
5. Choose from the Debugger pop-up menu the desired debugger for use with the remote connection.
6. Configure the Browse in processes window option as desired:
• selected—the IDE filters the Processes window list and the list of available debuggers for an opened symbolics file. The filter prevents an unavailable remote connection from appearing in either list.
• cleared—the IDE does not filter the Processes window list or the list of available debuggers for an opened symbolics file. Both available and unavailable remote connections appear in the lists.
7. Choose from the Connection Type pop-up menu the desired network protocol for the remote connection.
8. Enter the Internet Protocol address of the remote computer in the IP Address field.
9. Click OK.
The IDE adds the new remote connection to the Remote Connections list.
10.Click OK, Apply, or Save.
Changing Remote Connections
Change a remote connection to update network-connection information between the host and remote computer.
1. Choose Edit > Preferences.
IDE 5.6 User’s Guide
395
Working with IDE Preferences
Debugger Panels
2. Select the Remote Connections panel from the IDE Preference Panels list.
3. Select from the Remote Connections list the remote connection that requires modification.
4. Click Change.
A dialog box appears with the current network settings for the selected remote connection.
5. If needed, enter a new name for the general remote connection.
6. If needed, choose from the Debugger pop-up menu a new debugger for use with the remote connection.
7. If needed, toggle the Browse in processes window option.
8. If needed, choose from the Connection Type pop-up menu a new network protocol for the remote connection.
9. If needed, enter a new Internet Protocol address for the remote computer.
10.Click OK.
The IDE updates the remote connection and displays changes in the Remote
Connections list.
11.Click OK, Apply, or Save.
Removing Remote Connections
Remove a remote connection that the project no longer uses.
1. Choose Edit > Preferences.
2. Select the Remote Connections panel from the IDE Preference Panels list.
3. Select from the Remote Connections list the obsolete remote connection.
4. Click Remove.
The IDE updates the Remote Connections list.
5. Click OK, Apply, or Save.
396
IDE 5.6 User’s Guide
27
Working with Target
Settings
This chapter explains core CodeWarrior
™
IDE target settings panels and provides basic information on target settings options for the current project’s build targets. Consult the Targeting documentation for information on platformspecific target settings panels.
This chapter contains these sections:
•
“Target Settings Window” on page 397
•
•
“Code Generation Panels” on page 411
•
•
Abbreviated descriptions appear in this chapter. See “Preference and Target
Settings Options” on page 423 for more information on target settings panel
options.
Target Settings Window
The Target Settings window lists settings for the current project’s build targets.
These target settings supersede global preferences defined in the IDE
Preferences window.
The Target Settings window lists settings by group:
• Target—configures overall build target settings, such as names, browser caching, file mappings, and access paths
• Language Settings—configures programming language settings. Consult the Targeting documentation for more information about these settings panels
IDE 5.6 User’s Guide
397
Working with Target Settings
Target Settings Window
• Code Generation (Windows)—configures processor, disassembler, and optimization settings for generating code
• Linker—configure linker settings for transforming object code into a final executable file. Consult the Targeting documentation for more information about these settings panels.
• Editor—configure custom keyword sets and colors
• Debugger—configure settings for executable files, program suspension, and remote debugging
• Command-Line Extras (Linux/Solaris)—configure environmental variables for user applications and define custom tool commands (if necessary)
Figure 27.1 Target Settings window
398
IDE 5.6 User’s Guide
Working with Target Settings
Target Settings Window
Table 27.1 Target Settings window
Item Explanation
Target Settings Panels list
Settings panel
Lists settings panels, organized by group. Click the hierarchical control next to a group name to show or hide a list of individual settings panels.
Shows options for the selected item in the
Target Settings Panels list.
Click to restore the default options for the current settings panel.
Click to restore the most recently saved options for the current settings panel.
Click to save an XML file that contains set options for the current panel.
OK (Windows)
Click to open an XML file that contains settings for the current panel.
Click to save modifications to all settings panels and close the window.
Cancel (Windows) Click to discard modifications to all settings panels and close the window.
Apply (Windows) Click to confirm modifications to all settings panels.
Save (Macintosh, Solaris, and Linux) Click to save modifications to all settings panels.
Opening the Target Settings Window
Use the Target Settings window to modify build target options for the current project.
Choose Edit > targetname Settings to display the Target Settings window.
IDE 5.6 User’s Guide
399
Working with Target Settings
Target Panels
Target Panels
The Target group of the Target Settings Panels defines general target settings assigned to a new project.
The panels available on most IDE hosts include:
•
•
•
•
“Runtime Settings” on page 406
•
•
Target Settings
The Target Settings panel provides options for:
• setting the name of the current build target
• setting the linker, pre-linker, and post-linker for the build target
• specifying the project output directory for the final output file
Figure 27.2 Target Settings panel
400
IDE 5.6 User’s Guide
Working with Target Settings
Target Panels
Table 27.2 Target Settings panel—items
Item
Choose
Clear
Save project entries using relative paths on page 449
Explanation
Enter a name (26 or fewer characters) for the selected build target as it will appear in the project window.
Select the linker to use on the current build target.
Select the pre-linker to use on the current build target.
Select the post- linker to use on the current build target.
Shows the location where the IDE creates the output binary file. Click Choose to change this location.
Click to select the directory in which the IDE saves the output binary file.
Click to delete the current Output Directory path.
Select to save project file entries using a relative path from a defined access path.
This option is helpful if the project has multiple files with the same name.
Access Paths
The Access Paths settings panel defines the search paths for locating and accessing a build target’s system files and header files.
NOTE
The Windows version of the Access Paths settings panel displays either User Paths or System Paths, depending on the selected radio button. The Macintosh, Solaris, and Linux versions of the Access
Paths settings panel display both User Paths and System Paths.
IDE 5.6 User’s Guide
401
Working with Target Settings
Target Panels
Figure 27.3 Access Paths settings panel
Table 27.3 Access Paths settings panel
Item
Always Search User Paths on page 424
Source relative includes on page 453
Explanation
Select to treat
#include <...>
statements the same as
#include "..."
statements.
Select to search for dependent files in the same location as the source file. If the dependent file is not found in this location, specified User and
System paths are searched. If this option is enabled, the Always Search User Paths should also be enabled.
The User Paths list shows currently defined userlevel access paths searched by
#include
"..."
statements.
402
IDE 5.6 User’s Guide
Working with Target Settings
Target Panels
Table 27.3 Access Paths settings panel (continued)
Item
Interpret DOS and Unix Paths on page 441
(Macintosh)
(Mac OS X)
list popup
Add
Change
Remove
Explanation
The System Paths list shows currently defined system-level access paths searched by
#include <...> statements.
Select to treat
/
and
\
as subfolder separator characters. Clear to treat
/
and
\
as ordinary text.
Select to require
#include
statements of the form
LibraryName/HeaderFile.h
.
Clear to allow statements of the form
HeaderFile.h
.
Click to restore the default user- and system-level access paths.
Choose the host platforms that can use the selected access path.
Click to add a user- or system-level access path.
Click to modify the selected user- or system-level access path.
Click to remove the selected user- or system-level access path.
The User Paths and System Paths lists display columns with status icons for each access path. There are different types of access paths.
explains these items.
Table 27.4 User Paths and System Paths list columns
Name
Search status
Icon Explanation
A checkmark icon indicates an active access path that the IDE searches.
No checkmark icon indicates an inactive access path that the IDE does not search.
IDE 5.6 User’s Guide
403
Working with Target Settings
Target Panels
Table 27.4 User Paths and System Paths list columns (continued)
Name
Recursive search
Icon Explanation
A folder icon indicates that the IDE recursively searches subdirectories of the access path.
Framework
(Mac OS X development)
No folder icon indicates that the IDE does not recursively search the access path.
An ƒ icon indicates that the access path points to a framework. Framework paths are implicitly recursive.
Access path
No ƒ icon indicates that the access path does not point to a framework.
Shows the full access path to the selected directory.
Access paths have these types:
• Absolute—the complete path, from the root level of the hard drive to the directory, including all intermediate directories
• Project—the path from the project file relative to the designated directory
• CodeWarrior—the path from the
CodeWarrior IDE relative to the designated directory
• System—the path from the operating system’s base directory relative to the designated directory
• Source tree—the path from a user-defined source tree relative to the designated directory
Build Extras
The Build Extras settings panel contains options that define how the
CodeWarrior IDE builds a project.
404
IDE 5.6 User’s Guide
Figure 27.4 Build Extras settings panel
Working with Target Settings
Target Panels
Table 27.5 Build Extras settings panel
Item
Use modification date caching on page 457
Explanation
Select to have the IDE cache modification date information and use that information each time it builds a target. Builds are faster if file modification dates are cached.
Note that it is recommended to uncheck this option if you are using an external editor or using mounted directories.
For one-time changes to files (for example, those updated by a VCS tool outside of the IDE or editing a file with an external editor), you should check the modification date by clicking the “Synchronize
Modification Dates” button in the project window toolbar.
Select to improve multi-project updating and linking speed.
IDE 5.6 User’s Guide
405
Working with Target Settings
Target Panels
Table 27.5 Build Extras settings panel (continued)
Item
Dump internal browse information after compile on page 432
Prefix file
Macro file
Use External Debugger on page 456
Explanation
Choose whether the IDE generates browser data for the project, and the method by which the IDE generates that data.
Select to have the IDE dump raw browser information for viewing. This option appears after selecting
Compiler from the
Generate Browser Data From on page 438
Enter the path to your project’s prefix file. This options appears after selecting Language Parser from the
Generate Browser Data From on page 438
pop-up menu.
Enter the path to your project’s macro file. This options appears after selecting Language Parser from the
Generate Browser Data From on page 438
pop-up menu.
Select to use an external debugger instead of the
CodeWarrior debugger.
Click Browse to select the external debugger application. Alternatively, enter the path to the external debugger.
Enter any program arguments to pass to the external debugger when the IDE transfers control.
Click Browse to select an initial directory for the external debugger. Alternatively, enter the path to the initial directory.
Runtime Settings
The Runtime Settings panel specifies a debugging application for nonexecutable files. Dynamic linked libraries (DLLs), shared libraries, and code resources are sample non-executable files.
406
IDE 5.6 User’s Guide
Figure 27.5 Runtime Settings panel
Working with Target Settings
Target Panels
Table 27.6 Runtime Settings panel
Item Explanation
Host Application for Libraries &
Click Choose to select the program for debugging non-executable files. Alternatively, enter the path to the application program. Click Clear to delete the current field entry.
Enter the path to a directory used for debugging the non-executable files. Leave this field blank to use the same directory that contains the non-executable files.
Environment Settings on page 433
Add
Enter a command line of program arguments to pass to the host application when the IDE transfers control.
Lists the environment variables that have been added to the build target.
Click to add the current Variable and Value pair to the Environment Settings list.
IDE 5.6 User’s Guide
407
Working with Target Settings
Target Panels
Table 27.6 Runtime Settings panel (continued)
Item
Change
Remove
Explanation
Click to replace the selected entry in the Environment
Settings list with the current Variable and Value pair.
Click to delete the selected environment variable from the Environment Settings list.
Enter a name for the environment variable. This name pairs with the information in the Value field.
Enter a value for the environment variable. This value pairs with the information in the Variable field.
File Mappings
The File Mappings settings panel associates filename extensions with a
CodeWarrior plug-in compiler. These associations determine whether the IDE recognizes a source file by its filename extension or file type. Use the settings panel to add, change, and remove file mappings.
408
IDE 5.6 User’s Guide
Figure 27.6 File Mappings settings panel
Working with Target Settings
Target Panels
Table 27.7 File Mappings settings panel
Item
File Mappings list
Resource File flag
Icon Explanation
Displays a list of currently defined mappings between filename extensions and plug-in compilers.
Enter a file type (such as
TEXT
) for the file mapping.
Alternatively, click Choose to set the file type by selecting an example file. This file type also appears in the corresponding column of the File Mappings list.
Enter the filename extension (such as
.cpp
) for the file mapping. This filename extension also appears in the corresponding column of the File Mappings list.
A bullet in this column denotes a resource file. The
IDE includes these resource files when building the final output file. Use the Flags pop-up menu to toggle this flag.
IDE 5.6 User’s Guide
409
Working with Target Settings
Target Panels
Table 27.7 File Mappings settings panel (continued)
Item
Launchable flag
Precompiled File flag
Ignored By Make flag
Flags
Add
Change
Remove
Icon Explanation
A bullet in this column denotes a launchable file. The
IDE opens launchable files with the application that created them. Double-click launchable files from the
Project window. Use the Flags pop-up menu to toggle this flag.
A bullet in this column denotes a precompiled file.
The IDE builds precompiled files before building other files. Use the Flags pop-up menu to toggle this flag.
A bullet in this column denotes a file ignored by the compiler during builds. For example, use this option to ignore text ( .txt
) files or document ( .doc
) files. Use the Flags pop-up menu to toggle this flag.
Choose from this list the plug-in compiler to associate with the selected file mapping. This compiler selection also appears in the corresponding column of the File Mappings list.
Choose from this pop-up menu the desired flags for the selected file mapping. A checkmark indicates an active flag. Bullets appear in the corresponding columns of the File Mappings list to reflect flag states.
Choose from this list the desired language to associate with the selected file mapping. The IDE applies the appropriate syntax coloring for the selected language.
Click to add the current File Type, Extension, Flags,
Compiler, and Edit Language entries to the File
Mappings list.
Click to change the selected item in the File
Mappings list to reflect the current File Type,
Extension, Flags, Compiler, and Edit Language entries.
Click to remove the selected item in the File
Mappings list.
410
IDE 5.6 User’s Guide
Working with Target Settings
Code Generation Panels
Source Trees
The Source Trees settings panel in the Target Settings window defines projectspecific root paths. These project-specific paths override the global root paths defined in the Source Trees preference panel of the IDE Preferences window.
Refer to
“Source Trees” on page 371 for information on adding, changing, or
removing paths.
Code Generation Panels
The Code Generation group of the Target Settings Panels provides a single core panel for configuring optimization routines. Consult the Targeting documentation for more information about platform-specific settings panels.
Global Optimizations
The Global Optimizations settings panel configures how the compiler optimizes object code. All optimization routines rearrange object code without affecting its logical execution sequence.
NOTE
Always debug programs with optimization routines disabled. The IDE does not provide source views of optimized code.
The Global Optimizations panel is specific to Freescale compilers.
This panel is not used on the Linux-hosted IDE, since it uses gcc.
IDE 5.6 User’s Guide
411
Working with Target Settings
Code Generation Panels
Figure 27.7 Global Optimizations settings panel
Table 27.8 Global Optimizations settings panel—items
Item Explanation
Faster Execution Speed
Smaller Code Size
Select to favor optimization routines that increase the execution speed of the final object code, at the expense of larger code size.
Select to favor optimization routines that reduce the size of the final object code, at the expense of slower execution speed.
Optimization Level slider Move to the desired optimization level. The IDE applies more optimization routines at higher optimization levels.
The Details field lists the active optimization routines.
The Details field lists individual optimization routines applied at the selected optimization level.
Table 27.9 on page 413 explains these optimizations and their
availability at certain optimization levels.
412
IDE 5.6 User’s Guide
Working with Target Settings
Code Generation Panels
Table 27.9 Optimization routines
Optimization
Routine
Global Register Allocation or
Global Register Allocation
Only for Temporary Values
Dead Code Elimination
Branch Optimizations
Arithmetic Operations
Expression Simplification
Common Subexpression
Elimination
Copy Propagation or
Copy and Expression
Propagation
Peephole Optimization
Explanation
Stores working values of heavily used variables in registers instead of memory.
Optimization
Level
1, 2, 3, 4
Removes statements never logically executed or referred to by other statements.
Merges and restructures portions of the intermediate code translation in order to reduce branch instructions.
Replaces intensive computational instructions with faster equivalent instructions that produce the same result.
Replaces complex arithmetic expressions with simplified equivalent expressions.
Replaces redundant expressions with a single expression.
Replaces multiple occurrences of one variable with a single occurrence.
1, 2, 3, 4
1, 2, 3, 4
1, 2, 3, 4
1, 2, 3, 4
2, 3, 4
2, 3, 4
2, 3, 4
Dead Store Elimination
Live Range Splitting
Applies local optimization routines to small sections of code.
Removes assignments to a variable that goes unused before being reassigned again.
Reduces variable lifetimes to achieve optimal allocation.
Shorter variable lifetimes reduce register spilling.
3, 4
3, 4
IDE 5.6 User’s Guide
413
Working with Target Settings
Editor Panels
Table 27.9 Optimization routines (continued)
Optimization
Routine
Loop-Invariant Code
Motion
Strength Reduction
Loop Transformations
Loop Unrolling or
Loop Unrolling (Opt for
Speed Only)
Vectorization
Lifetime Based Register
Allocation or
Register Coloring
Instruction Scheduling
Repeated
Explanation Optimization
Level
Moves static computations outside of a loop
Inside loops, replaces multiplication instructions with addition instructions.
Reorganizes loop object code in order to reduce setup and completion-test overhead.
Duplicates code inside a loop in order to spread branch and completion-test overhead over more operations.
For processors that support vector optimizations, translates computations with code-loop arrays into equivalent vector instructions.
In a particular routine, uses the same processor register to store different variables, as long as no statement uses those variables simultaneously.
Rearranges the instruction sequence to reduce conflicts among registers and processor resources.
Iterates the optimization routines listed between
{*
and
*}
.
3, 4
3, 4
3, 4
3, 4
3, 4
3, 4
3, 4
4
Editor Panels
The Editor group of the Target Settings Panels provides a single core panel for configuring custom keywords within a project.
414
IDE 5.6 User’s Guide
Working with Target Settings
Editor Panels
Custom Keywords
The Custom Keywords panel configures as many as four keyword sets, each with a list of keywords and syntax coloring for a project. These project-specific settings supersede the global settings defined in the Text Colors preference panel of the IDE Preferences window.
Figure 27.8 Custom Keywords settings panel
Table 27.10 Custom Keywords settings panel—items
Item
Keyword set 1,
Keyword set 2,
Keyword set 3,
Keyword set 4
Edit
Explanation
Click a color swatch to set the color used for the corresponding custom-keyword set.
Click to add, modify, or remove keywords from the corresponding custom-keyword set.
Adding a Keyword to a Keyword Set
To add a keyword to a keyword set, follow these steps:
1. Click Edit next to the desired keyword set.
A dialog box appears. This dialog box lists the current collection of keywords in the keyword set.
2. Enter the new keyword into the field at the top of the dialog box.
3. Click Add.
The new keyword appears in the keyword list.
IDE 5.6 User’s Guide
415
Working with Target Settings
Debugger Panels
4. Select Case Sensitive as desired.
When selected, the IDE treats the case of each keyword in the keyword set as significant. When cleared, the IDE ignores the case of each keyword in the keyword set.
5. Click Done.
The IDE saves the modified keyword set.
Removing a Keyword from a Keyword Set
To remove a keyword from a keyword set, follow these steps:
1. Click Edit next to the desired keyword set.
A dialog box appears. This dialog box lists the current collection of keywords in the keyword set.
2. Select the obsolete keyword in the Custom Keywords list.
3. Press the delete key for your platform.
• Windows, Solaris, and Linux: Backspace
• Macintosh: Delete
4. Click Done.
The IDE saves the modified keyword set.
Debugger Panels
The Debugger group of the Target Settings Panels defines general debugger settings for the project. Consult the Targeting documentation for more information about platform-specific settings panels.
The Debugger panels available on most IDE hosts include:
•
“Other Executables” on page 417
•
“Debugger Settings” on page 419
•
“Remote Debugging” on page 421
416
IDE 5.6 User’s Guide
Working with Target Settings
Debugger Panels
Other Executables
The Other Executables settings panel configures additional executable files for the IDE to debug together with the current build target.
Figure 27.9 Other Executables settings panel
Table 27.11 Other Executables settings panel
Item
File list
Debug column
Icon Explanation
Lists executable files that the IDE can debug together with the current build target.
Click in this column to toggle debugging of the corresponding executable file.
Add
Change
Remove
Click to select an executable file to add to the File list.
Click to change the selected entry in the File list.
Click to remove the selected entry in the File list.
IDE 5.6 User’s Guide
417
Working with Target Settings
Debugger Panels
418
Adding an Executable File to the File List
To add an executable file to the File list, follow these steps:
1. Click Add.
The Debug Additional Executable dialog box appears.
2. Enter in the File Location field the path to the executable file.
Alternatively, click Choose to display a dialog box. Use the dialog box to select the executable file. The path to the selected executable file appears in the File Location field.
3. Select Download file during remote debugging as desired.
When selected, the IDE downloads the executable file from a remote computer during the debugging session. Enter the path to the remote file.
Alternatively, click Choose to select the file. Click Clear to delete the current entry.
4. Select Debug merged executable as desired.
When selected, the IDE debugs an executable file that merged with the project output. Enter the path to the original executable file (prior to merging).
Alternatively, click Choose to select the file. Click Clear to delete the current entry.
5. Click Done.
The IDE adds the executable file to the File list.
Changing an Executable File in the File List
To change an executable file in the File list, follow these steps:
1. Select the desired path.
2. Click Change.
The Debug Additional Executable dialog box appears.
3. Modify the File Location field as desired.
4. Modify the Download file during remote debugging option as desired.
5. Modify the Debug merged executable option as desired.
IDE 5.6 User’s Guide
Working with Target Settings
Debugger Panels
6. Click Done.
The IDE modifies the executable file.
Removing an Executable File from the File List
To remove an executable file from the File list, follow these steps:
1. Select the obsolete path.
2. Click Remove.
The IDE removes the executable file from the File list.
Debugger Settings
The Debugger Settings panel configures activity logs, data-update intervals, and other debugger-related options.
Figure 27.10 Debugger Settings panel
IDE 5.6 User’s Guide
419
Working with Target Settings
Debugger Panels
Table 27.12 Debugger Settings panel
Item Explanation
Location of Relocated Libraries and Code Resources on page 443
Stop on application launch on page 453
Program entry point on page 446
Default language entry point on page 431
User specified
Auto-target Libraries
Cache symbolics between runs on page 428
Enter the path to code resources or relocated libraries required for debugging the project.
Alternatively, click Choose to select the required files.
Select to halt program execution at the beginning of a debugging session. Select the desired stop point:
Program entry point, Default language entry
point, or User specified.
Select to halt program execution upon entering the program.
Select to halt program execution upon entering a default point defined by the programming language.
Select to halt program execution at a specified function or address. Enter the desired function name or address in the corresponding field. If you enter an address, ensure that it is correct and within your program.
Select to debug dynamically linked libraries (DLLs) loaded by the target application, at the expense of slower performance.
Select to have the IDE cache the symbolics information it generates for a project. Clear to have the IDE discard the information after each debugging session ends.
Select to log all system messages to a Log window.
Log System Messages on page 443
Stop at Watchpoints on page 453
Update data every n seconds on page 455
Select to halt program execution at every watchpoint. Clear to halt program execution at watchpoints with changed values.
Enter the number of seconds n to wait before updating the data displayed in debugging-session windows.
420
IDE 5.6 User’s Guide
Working with Target Settings
Debugger Panels
Remote Debugging
The Remote Debugging settings panel configures target-specific network settings for remote-debugging connections between the host computer and other computers. Use this target-specific panel to build on the general connections defined in the Remote Connections panel of the IDE Preferences window.
Figure 27.11 Remote Debugging settings panel
Table 27.13 Remote Debugging settings panel
Item
Enable remote debugging on page 433
Remote download path on page 448
Launch remote host application on page 442
Explanation
Select to define (for the current build target) a remote-debugging connection in terms of a general connection. Choose from the Connection pop-up menu the desired general connection.
Enter the path to the directory in which to store downloaded files.
Select to launch an application on the remote computer to serve as a host application. Enter the path to the remote application.
IDE 5.6 User’s Guide
421
Working with Target Settings
Debugger Panels
422
IDE 5.6 User’s Guide
Preference and Target
Settings Options
28
Use this chapter to look up CodeWarrior
™
IDE preference panel or target setting options and learn more about their capabilities. Option names are arranged in alphabetical order.
NOTE
This chapter covers options for the core IDE preference or target setting panels described in this manual.
A
Activate Browser Coloring
Select this option to activate coloring of browser symbols in editor windows.
Clear the option to apply the default text color to all symbols. Click the color swatch next to a symbol to modify its color.
Activate Syntax Coloring
Select this option to activate coloring of Comments, Keywords, Strings, and
Custom Keyword Sets symbols in editor windows. Clear the option to apply the default text color to all symbols. Click the color swatch next to a symbol to modify its color.
Add Default
Click this button to restore the default user path or system path to the Access
Paths panel.
IDE 5.6 User’s Guide
423
Preference and Target Settings Options
Always Search User Paths
This option controls the search criteria the IDE uses to find system and user files.
• selected—the IDE treats searching for system files (such as
#include
<...>
) the same as user files (
#include "..."
).
• disabled—the IDE treats system paths differently from user paths.
Application
In this field enter the path to the external debugger that the IDE uses in place of the CodeWarrior debugger. Alternatively, click Browse to open a dialog box.
Use the dialog box to select the external debugger.
Arguments
In this field enter command-line arguments to pass to the external debugger at the beginning of a debugging session.
Attempt to show the dynamic runtime type of objects
Select this option to display runtime types for C++, Object Pascal, and SOM objects. Clear the option to display static types.
Auto Indent
Select this option to apply automatically the same indentation as the previous line for each new line of text created by pressing Enter or Return. Clear the option to always return to the left margin for each new line of text.
Auto Target Libraries
Select this option to have the IDE attempt to debug dynamically linked libraries
(DLLs) loaded by the target application. The IDE debugs the DLLs that have symbolics information.
This option applies to non-project debugging sessions, such as debugging an attached process.
424
IDE 5.6 User’s Guide
Preference and Target Settings Options
NOTE
Selecting this option may slow IDE performance. Clear the option to improve speed.
Automatic Invocation
Select this option to have the Code Completion window automatically open after typing specific programming-language characters in the active editor window.
Clear the option to manually open the Code Completion window.
The specific characters that trigger opening of the Code Completion window depend on the programming language that you use. For example, typing a period after a Java class opens the Code Completion window, allowing you to complete the class invocation.
You can change the time it takes for the Code Completion window to appear after you type a trigger character. If you perform any activity during this delay time, the Code Completion window is canceled.
See also:
•
“Code Completion Delay” on page 428
Automatically launch applications when SYM file opens
Select this option to launch an application associated with an open symbolics file.
The IDE sets an implicit breakpoint at the main entry point of the application.
Clear the option to open the symbolics file without launching the associated application.
Table 28.1 on page 425 explains how to skip launching the target program
Table 28.1 Bypass launching the target program
On this host… Do this…
Windows
Macintosh
Solaris
Linux
Press Alt while the IDE opens the symbolics file.
Press Option while the IDE opens the symbolics file.
Press Alt while the IDE opens the symbolics file.
Press Alt while the IDE opens the symbolics file.
IDE 5.6 User’s Guide
425
Preference and Target Settings Options
B
Background
Click this color swatch to configure the background color of editor windows.
Balance Flash Delay
In this field enter the time, in ticks, to highlight a matching punctuation character during a Balance while typing check. Each tick represents 1/60th of a second
(16.67 milliseconds).
Sample tick values include:
• 0 (zero)—disables balance flashing
• 30—the default flash value (1/2 of a second)
• 999—the maximum-flash delay value
Balance while typing
Select this option to have the editor check for balanced parentheses, brackets, and braces in editor windows. For each closing parenthesis, bracket, or brace, the editor attempts to find the opening counterpart.
The IDE behaves differently, depending on whether it finds the counterpart:
• Found—the editor window scrolls to display the matching character, then returns to the insertion point. The Balance Flash Delay option determines how long the editor displays the matching character.
• Not found—the IDE beeps.
Browser Commands
Select this option to add Browser menu commands to contextual menus. Clear the option to remove commands from the contextual menus.
426
IDE 5.6 User’s Guide
Preference and Target Settings Options
Browser Path
In this field enter a path to the browser to use for viewing IDE online help. The
Netscape Navigator
®
browser is the default application. The
PATH
environment variable specifies the path to the browser.
To change the default setting, or if the IDE cannot find Netscape Navigator, in the Browser Path field enter a path to an alternate browser. Alternatively, click
Set to select the path.
Build before running
Choose from this pop-up menu the way in which the IDE handles project builds before running the compiled application:
• Always—always build projects before running them.
• Never—never build projects before running them.
• Ask—ask each time how to proceed.
C
Cache Edited Files Between Debug Sessions
Select this option to maintain a cache of edited files between debugging sessions.
Use this option to debug through the original source code for files modified since the last build.
In the Maintain files in cache field enter the number of days to keep the cached files. Click Purge Cache to delete the current cache.
See also:
•
“Maintain files in cache” on page 444
•
Cache Subprojects
Use this option to improve multi-project updating and linking.
IDE 5.6 User’s Guide
427
Preference and Target Settings Options
• selected—the IDE increases its memory requirements in order to generate symbolics information for both the build targets and the subprojects within each build target.
• cleared—the IDE does not increase its memory requirements and does not generate symbolics information.
Cache symbolics between runs
Select this option to have the IDE maintain a cache of symbolics information generated for the project. The IDE refers to this cached symbolics information during subsequent debugging sessions. The cache improves IDE performance.
Clear the option to force the IDE to discard the symbolics information at the end of each debugging session.
Case sensitive
Select this option to have the IDE consider case when completing code. Clear the option to have the IDE ignore case.
The IDE can determine possible symbol matches according to case. For example, if you clear the Case sensitive option and type
str
in the active editor window, the IDE displays both
string
and
String
as possible matches. Selecting the option causes the IDE to display only
string
as a possible match.
Close non-debugging windows
Select this option to close non-debugging windows, except for the active project window, when starting a debugging session. At the end of the debugging session, the IDE automatically re-opens the closed windows.
Code Completion Delay
In this field enter the number of ticks to have the IDE wait from the time you type a trigger character to the time the Code Completion window opens. A tick is 1/60 of a second.
Performing any activity during this delay time cancels opening of the Code
Completion window.
See also:
•
“Automatic Invocation” on page 425
428
IDE 5.6 User’s Guide
Preference and Target Settings Options
Collapse non-debugging windows
Select this option to collapse non-debugging windows when starting a debugging session. At the end of the debugging session, the IDE automatically restores the collapsed windows.
Comments
Select the Activate Syntax Coloring option in order to configure this option.
Use this option to configure the color of C, C++, and Java comments displayed in editor windows. The IDE then uses the chosen color for comments placed between
/*
and
*/
or from
//
to the end of a line.
Click the color swatch next to Comments to set the color.
Compiler
Choose from this list pop-up the desired compiler for the selected File Type in the File Mappings list. Select None to not associate the selected file type with any compiler.
Compiler thread stack
In this field enter the maximum kilobytes of stack size for the IDE to allocate to compiling and linking thread support.
The IDE threads all build processes, with compiling and linking occurring on a thread separate from the main application thread. This setting controls the compiler-thread stack size.
To avoid frequent compiler crashes, such as when building very large or complex projects, increase the default compiler-thread-stack size.
Confirm invalid file modification dates when debugging
Select this option to keep track of source-file modification dates in a project. The
IDE displays a warning message if the modification dates do not match. The message warns of possible discrepancies between object code and source code.
Clear the option to prevent the IDE from displaying the warning message.
IDE 5.6 User’s Guide
429
Preference and Target Settings Options
Confirm “Kill Process” when closing or quitting
Select the Confirm “Kill Process” when closing or quitting option to have the
IDE prompt for confirmation before killing processes upon closing the Thread window or quitting the IDE. Clear the option to kill processes without prompting.
Context popup delay
In this field enter the minimum time, in ticks, to hold down the mouse button before IDE contextual menus appear. Each tick represents 1/60 of a second
(16.67 milliseconds).
Sample tick values include:
• 0 (zero)—disables appearance of contextual menus
• 40—default popup delay value (2/3 of a second)
• 240—maximum popup delay value
D
Debugger Commands
Select this option to add Debug menu commands to IDE contextual menus. Clear the option to remove commands from the contextual menus.
Default file format
Choose from this list pop-up the default end-of-line (EOL) conventions used by the IDE to save files:
• Macintosh: <CR>
• DOS: <LF><CR>
• UNIX: <LF>
430
IDE 5.6 User’s Guide
Preference and Target Settings Options
Default language entry point
Select this option to halt program execution upon entering a default point defined by the programming language. For example, C++ defines the
main()
function as the default point.
Default size for unbounded arrays
Enter in this field the default number of elements to display in View Array windows for unbounded arrays.
Disable third party COM plugins
Select this option to prevent the IDE from loading third-party Component Object
Model (COM) plugins. Clear the option to have the IDE load the plugins at startup time.
Use this option to help troubleshoot problems with the IDE. If the problem goes away after disabling the plug-ins, then a conflict exists between the third-party plugins and the IDE plugins.
Display deprecated items
Select this option to have the Code Completion window display obsolete programming-language items. Clear the option to have the window hide the obsolete items.
Deprecated items appear in gray text in the Code Completion window.
Do nothing
Select this option to leave all windows in place during a debugging session.
Do nothing to project windows
Select this option to prevent the IDE from manipulating project windows when starting a debugging session. Use this option to help debug multiple build targets or multiple projects.
Documents
In this field enter the number of recent documents to display in the Open Recent submenu.
IDE 5.6 User’s Guide
431
Preference and Target Settings Options
Don’t step into runtime support code
Select this option to have the IDE bypass stepping into the Metrowerks Standard
Library (MSL) runtime support code and instead directly step into your own code. Clear the option to have the IDE step into the MSL runtime setup code, then step into your own code.
Drag and drop editing
Select this option to allow dragging and dropping of text in editor windows.
Clear the option to disable drag-and-drop text editing.
Dump internal browse information after compile
Select this option to view the raw browser information that a plug-in compiler or linker provides for the IDE. Use this option to help develop plug-ins for use with the IDE.
NOTE
After enabling the Dump internal browse information after
compile option, compile only single files or small files. Compiling an entire project can create huge internal browser information for the
IDE to display.
E
432
Edit Commands
Select this option to add Edit menu commands to IDE contextual menus. Clear the option to remove the commands from the contextual menus.
Edit Language
Choose from this pop-up menu the programming language to associate with the selected file mapping. The selected language determines the syntax-color scheme. For example, choose C/C++ to apply the appropriate syntax-color scheme for C or C++ programming-language components.
IDE 5.6 User’s Guide
Preference and Target Settings Options
Enable automatic Toolbar help
Select this option to display Balloon Help after resting the cursor over a toolbar button. Clear the option to prevent Balloon Help from appearing.
Enable remote debugging
Select this option to define a remote-debugging connection specific to the current build target. Choose from the Connection pop-up menu the general connection to use as the basis for the target-specific connection.
Enable Virtual Space
Use this option to configure the editor for handling spaces in different ways.
• selected—the editor allows moving the text-insertion point past the end of a line of text, using either the arrow keys or the mouse. After moving to the desired position, begin entering text. The editor automatically inserts spaces between the former end of the line and the newly entered text.
• cleared—the editor requires manual insertion of spaces to move past the end of a line of text.
Environment Settings
Use this section to specify environment variables to pass to your program as part of the environment parameter in your program’s
main()
function, or as part of environment calls. These environment variables are only available to the target program. When your program terminates, the settings are no longer available.
NOTE
The Environment Settings section appears only when you develop code for a Windows build target. The section does not appear for any other build target.
Export Panel
Click this button to save to an Extensible Markup Language (XML) file the current state of the active preference or settings panel.
IDE 5.6 User’s Guide
433
Preference and Target Settings Options
Extension
In this field enter a filename extension, such as the
.c
or
.h
, for a selected File
Type in the File Mappings list.
lists default filename extensions.
Table 28.2 Default filename extensions
Type
Minimum CodeWarrior
Installation
Assembly
Extension Explanation
.iSYM
.mch
.mcp
.SYM
.xSYM
.dbg
.exp
.iMAP
.MAP
.a
.asm
.dump
CodeWarrior Intel
®
Symbols
CodeWarrior Precompiled Header
CodeWarrior Project File
CodeWarrior Mac OS 68K Debug
Symbols
CodeWarrior Mac OS PPC Debug
Symbols
CodeWarrior Debug Preferences
Exported Symbol File
CodeWarrior Link Map
CodeWarrior Link Map
Assembly Source File (Windows and
Macintosh)
Assembly Source File
CodeWarrior Disassembled File
434
IDE 5.6 User’s Guide
Preference and Target Settings Options
Table 28.2 Default filename extensions (continued)
Type
C and C++
Default C and C++
Default Java
Java
Extension
.c++
.cc
.hh
.hpp
.i
.icc
.m
.mm
.c
.cp
.cpp
.h
.class
.jar
.jav
.java
.JMAP
.jpob
.mf
Explanation
C++ Source File
C++ Source File
C++ Header File
C++ Header File
C Inline Source File
C++ Inline Source File
Object C Source File
Object C++ Source File
C Source File
C++ Source File
C++ Source File
C and C++ Header File
Java Class File
Java Archive File
Java Source File
Java Source File
Java Import
Mapping Dump
Java Constructor File
Java Manifest File
IDE 5.6 User’s Guide
435
Preference and Target Settings Options
Table 28.2 Default filename extensions (continued)
Type
Library
Script
Mac OS X
Extension
.a
.lib
.o
.o
.obj
.pch
.pch++
.so
.sh
.psh
.pl
.dylib
.a
.o
.plist
Explanation
(Static) Archive Library (Solaris and
Linux)
Library File
Object File
(Windows and Macintosh)
Object (Relocatable) Library or Kernel
Module
(Solaris and Linux)
Object File
Precompiled Header Source File
Precompiled Header Source File
Shared Library (Linux)
Shell Script (Linux)
Precompile Shell Script (Linux)
Perl Script (Linux)
Mach-O Dynamic Library
Mach-O Static Library
Mach-O Object File
Property List
F
436
Factory Settings
Click this button to change all modified options to their default values in the current preference or settings panel.
IDE 5.6 User’s Guide
Preference and Target Settings Options
Failure
Choose from this pop-up menu a sound to play after a Bring Up To Date or
Make operation fails.
File Type
Enter in this field the four-character file type for the selected file mapping in the
File Mappings list.
Find and compare operations
A bullet in the Find and compare operations column, whose label appears at left, indicates that the IDE ignores matching folders for findand-compare operations. Such operations include dragging a folder into fields in the Find window, or comparing folder contents.
Find Reference using
Choose from the Find Reference using options, an online browser application to look up references and definitions.
For example, use this option to look up documentation for language keywords:
1. Select an online browser application, such as THINK Reference, with the
Find Reference using option.
2. Select a language keyword, such as
boolean
, in the source code.
3. Choose the Find Reference menu command. The IDE looks up reference information for the
boolean
keyword in the THINK Reference documentation.
Although they are not included with the CodeWarrior product, the IDE supports these online browser formats:
• Apple Help Viewer (CW manuals)
• Apple Help Viewer (Mac OS X API Ref)
• PalmQuest Reference (Palm Pilot)
• QuickView–such as Macintosh Programmer’s Toolbox Assistant (MPTA)
• THINK Reference
IDE 5.6 User’s Guide
437
Preference and Target Settings Options
Font
Choose from the Font options the typeface to use for displaying text in editor windows. This setting behaves in two different ways, depending on the current
IDE state:
• No editor windows open—the setting modifies the default font. All editor windows take on the default font.
• Editor windows open—the setting modifies the font displayed in the frontmost editor window only. Other editor windows remain unaffected.
The default font remains unchanged.
Font preferences
Select the Font preferences option to remember font settings for each file in a project. Clear the option to use the default font settings every time the IDE opens each file. The Font & Tabs preference panel defines the default settings.
Foreground
Use the Foreground option to configure the color of any text not affected by the
Activate Syntax Coloring or Activate Browser Coloring options.
Click the color swatch to change the current color.
G-I
438
Generate Browser Data From
Choose from this pop-up menu whether the IDE generates browser data, and from what source it generates that data.
Choose from these possibilities:
• None—Disable browser-data generation. Certain IDE features that use browser data will be unable to work with the project, but the project’s size will be smaller.
• Compiler—Have the IDE use the compiler to generate browser data. If you choose this option, you must Make the project in order to generate the
IDE 5.6 User’s Guide
Preference and Target Settings Options
browser data. The IDE uses the compiler assigned to the project to generate browser data during the build process.
• Language Parser—Have the IDE use the language parser to generate the browser data. Certain IDE features, such as C/C++ Code Completion, function more effectively if you choose this option. The IDE uses the language parser assigned to the project to generate browser data.
NOTE
If you choose the Language Parser option, you can also have the IDE take into account your custom macro definitions. To do so, enter the path to your prefix file in the Prefix file field and the path to your macro file in the Macro file field.
Grid Size X
In the Grid Size X field enter the number of pixels to space between markings on the x-axis of the Layout Editor grid.
Grid Size Y
In the Grid Size Y field enter the number of pixels to space between markings on the y-axis of the Layout Editor grid.
Hide non-debugging windows
Select the Hide non-debugging windows option to hide, but not close, nondebugging windows when starting a debugging session.
To reveal the hidden windows, do one of these tasks:
• Use the Window menu, or
• Double-click the names of the hidden files in the Project window, or
• Perform lookups for symbols within the hidden windows.
At the end of the debugging session, the IDE automatically reveals the hidden windows.
Host Application for Libraries & Code Resources
The Host Application for Libraries & Code Resources field lets you specify a host application to use when debugging a non-executable file, such as a shared library, dynamic link library (DLL), or code resource. The application that you
IDE 5.6 User’s Guide
439
Preference and Target Settings Options
specify in this field is not the debugger application, but rather the application with which the non-executable file interacts.
Host Flags
The Host Flags list pop-up defines the host platforms which can use the selected access path. The settings include:
• None–no host can use this access path.
• All–all hosts can use this access path.
• Windows–only use this path for Windows build targets.
• Mac OS–only use this path for Mac OS build targets.
NOTE
Multiple hosts can be selected.
Import Panel
Click Import Panel to load the contents of a previously saved Extensible
Markup Language (XML) file into the active preference or settings panel.
Include file cache
Use the Include file cache option to specify the upper limit of kilobytes of memory used by the IDE for caching
#include
files and precompiled headers. The larger the value entered, the more memory the IDE uses to accelerate builds.
Initial directory
In this field enter the initial directory for use with the external debugger.
Alternatively, click Browse to open a dialog box. Use the dialog box to select the initial directory.
Insert Template Commands
Select the Insert Template Commands option to display the Insert Template submenu in contextual menus. The submenu displays source-defined function templates. Clear to remove the submenu from the contextual menus.
440
IDE 5.6 User’s Guide
Preference and Target Settings Options
NOTE
Select the Browser Commands option in order to select the Insert
Template Commands option. Otherwise, the Insert Template
Commands state has no effect.
Interpret DOS and Unix Paths
This option determines how the IDE treats filenames for interface files:
• Selected—the IDE treats the backslash (
\
) and the forward slash (
/
) characters as subfolder separator characters. In the example
#include "sys/socks.h"
the IDE searches for a subfolder called
sys
that contains a
socks.h
file.
• Cleared—the IDE treats both the backslash and forward slash characters as part of the filename. Using the same example, the IDE now searches for a
sys/socks.h
filename.
K-L
Keywords
Use the Keywords option to configure the color of C, C++, and Java programming language’s keywords displayed in editor windows when the
Activate Syntax Coloring option is enabled. Coloring does not include macros, types, variables defined by system interface files, or variables defined in source code. Click the color swatch next to Keywords to set the color.
Launch Editor
Enter in the Launch Editor field a command-line expression that specifies the third-party text editor that the CodeWarrior IDE runs to edit text files.
The IDE expands the
%file
variable of the command-line expression into the full file path. For example, to run the Emacs text editor to edit text files, enter this command-line expression:
runemacs %file
IDE 5.6 User’s Guide
441
Preference and Target Settings Options
Consult the documentation provided with the third-party text editor for more information about using command lines.
Launch Editor w/ Line #
Enter in the Launch Editor w/ Line # field a command-line expression that specifies the third-party text editor that the IDE runs to edit text files, and an initial line of text that the third-party editor displays upon running.
The IDE expands the
%line
variable of the command-line expression into an initial line of text for the third-party text editor to display. For example, to run the
Emacs text editor to edit a text file, and to have the Emacs editor display the line provided to it by the IDE, enter this command-line expression:
emacs %file %line
Consult the documentation provided with the third-party text editor for more information about using command lines.
Launch remote host application
Select this option to launch an application on the remote computer to serve as a host application. Enter the path to the remote host application.
Left margin click selects line
Select the Left margin click selects line option to use a right-pointing cursor, shown at left, to select entire lines of text from the left margin.
Clear the option to disable use of the right-pointing cursor.
With the right-pointing cursor active, click in the left margin to select the current line, or click and drag along the left margin to select multiple lines.
Level
Choose from the Level options the amount of information reported for IDE plugins in development. This information is useful for diagnosing plug-in behavior or for viewing information about the properties of installed plug-ins.
Choose one of these levels of plug-in diagnostic information:
• None
(d
efault)—The IDE does not activate plug-in diagnostics or produce output.
442
IDE 5.6 User’s Guide
Preference and Target Settings Options
• Errors Only—The IDE reports problems encountered while loading plugins. These problems appear in a new text file after the IDE starts up
• All Info—The IDE reports information for each installed plug-in, such as problems with plug-in loading, optional plug-in information, and plug-in properties. This information appears in a new text file after the IDE starts up. The text file also contains a complete list of installed plug-ins and their associated preference panels, compilers, and linkers.
The IDE allows saving and printing the text file. Use the file as an error reference for troubleshooting plug-ins. The text file also provides suggestions for correcting general plug-in errors.
Linker
Use the Linker option menu to select the linker to use with the project. The choices available are always dependent on the plug-in linkers that are available to the CodeWarrior IDE.
To learn more about the linkers, see the appropriate Targeting manual.
Location of Relocated Libraries and Code
Resources
Enter in this field the path to the relocated libraries and code-resource files required for debugging the project. Alternatively, click Choose to display a dialog box. Use the dialog box to select the required files.
Log System Messages
Select this option to have the IDE maintain a log of all system messages generated during the debugging session. The Log window displays this platformspecific information. Clear the option to disable the log.
IDE 5.6 User’s Guide
443
Preference and Target Settings Options
M
444
Maintain files in cache
Enter in the Maintain files in cache text box the number of days that the IDE maintains files in the file cache.
Menu bar layout
Choose from the Menu bar layout options the desired configuration of menus listed in the IDE:
• Windows—organizes the menu bar according to a typical Microsoft
®
Windows
®
arrangement
• Macintosh—organizes the menu bar according to a typical Apple
®
Mac
®
OS arrangement
Minimize non-debugging windows
Select the Minimize non-debugging windows option to minimize nondebugging windows to a reduced size when a debugging session starts. At the end of the debugging session, the IDE automatically restores the minimized windows.
NOTE
The Minimize non-debugging windows option is only available in
MDI mode.
See also:
•
“Use Multiple Document Interface” on page 457
Monitor for debugging
Choose from the Monitor for debugging options the specific monitor to use during debugging sessions. The IDE displays debugging windows in the selected monitor. The coordinates in parentheses identify the selected monitor in
QuickDraw space.
IDE 5.6 User’s Guide
Preference and Target Settings Options
Move open windows to debugging monitor when debugging starts
Select the Move open windows to debugging monitor when debugging starts option to move all open windows to the selected debugging monitor after a debugging session starts. At the end of the debugging session, the IDE restores the moved windows to their original positions.
O
Open windows on debugging monitor during debugging
Select the Open windows on debugging monitor during debugging option to display on the debugging monitor any window that opens during the debugging session.
The IDE does not save the positions of windows closed on the debugging monitor during the debugging session. This behavior prevents window positions from gravitating to the debugging monitor.
Output Directory
Use the Output Directory caption to show the location the IDE places a final linked output file. The default location is the directory that contains your project file. Select Choose to specify the location path.
P
Play sound after ‘Bring Up To Date’ & ‘Make’
Select the Play sound after ‘Bring Up To Date’ & ‘Make’ option to play a sound after a build operation completes. Choose different sounds for successful
IDE 5.6 User’s Guide
445
Preference and Target Settings Options
and unsuccessful builds using the Success and Failure pop-up options, respectively.
See also:
•
•
Post-linker
Use the Post-linker option to select a post-linker that performs additional work
(such as format conversion) on the final executable file.
For more information see the appropriate Targeting manual.
Pre-linker
Use the Pre-linker option to select a pre-linker that performs additional work on the object code in a project. This work takes place before the IDE links the object code into the final executable file.
For more information about the pre-linkers available, see the build targets
Targeting manual.
Program Arguments
Use the Program Arguments field to enter command-line arguments to pass to the project at the beginning of a debugging session. Your program receives these arguments after you choose Project > Run.
Program entry point
Select this option to halt program execution upon entering the program.
Projects
Enter the number of recent projects to display in the Open Recent submenu.
Project Commands
Select the Project Commands option to add Project menu commands to contextual menus. Clear the option to remove the commands from the contextual menus.
446
IDE 5.6 User’s Guide
Preference and Target Settings Options
Project operations
A bullet in the Project operations column, whose label appears at left, indicates that the IDE ignores matching folders for project operations.
Such operations include dragging a folder into the Project window, building a project, or searching access paths after choosing File >
Open.
Purge Cache
Click Purge Cache to delete the contents of the current file cache.
R
Recommended
Select the Recommended option to allow the number of concurrent compiles suggested by the IDE. This suggestion takes into account the number of active
Central Processing Units (CPUs) on the host computer.
Regular Expression
Enter in the Regular Expression field a text pattern to match against folder names. The IDE excludes matching folders and their contents from selected project operations or find-and-compare operations.
Relaxed C popup parsing
Use the Relaxed C popup parsing option to control the strictness of C coding conventions:
• Select the option to have the IDE recognize some non-standard functions that interfere with Kernighan-and-Ritchie conventions. The IDE displays the non-standard functions in the Routine list pop-up.
• Clear the option to have the IDE recognize only functions that conform to
Kernighan-and-Ritchie conventions. The IDE displays only the standard functions in the Routine list pop-up.
IDE 5.6 User’s Guide
447
Preference and Target Settings Options
For more information, refer to “Reference Manual,” of The C Programming
Language, Second Edition, by Kernighan and Ritchie, published by Prentice
Hall.
NOTE
Toggle the Relaxed C popup parsing option to maximize recognition of functions, macros, and routine names in the source code.
Remote download path
Enter the path to the directory in which to store files downloaded from the remote host application.
Require Framework Style Includes
This option determines the strictness with which the IDE treats
#include
statements for frameworks:
• selected—the IDE requires the framework in addition to the referenced header file. In the example
#include <Cocoa/CocoaHeaders.h>
the IDE requires the presence of
Cocoa/
in order to find the
CocoaHeaders.h
file.
• cleared—the IDE requires only the referenced header file. Using the same example,
Cocoa/
becomes optional.
Revert Panel
Click Revert Panel to revert all modified options in the current preference or settings panel to the values present when the panel was originally opened.
S
448
Save open files before build
Select the Save open files before build option to automatically save files during project operations:
IDE 5.6 User’s Guide
Preference and Target Settings Options
• Preprocess
• Precompile
• Compile
• Disassemble
• Bring Up To Date
• Make
• Run
NOTE
(Solaris and Linux) The GNU tools read files from disk before compiling them. Select the Save open files before build option to save changes to modified files before compiling them. Otherwise, the
GNU compilers do not process the file changes.
Save project entries using relative paths
Use the Save project entries using relative paths option to store the location of a file using a relative path from one of the access paths. The settings include:
• enabled–the IDE stores extra location information to distinctly identify different source files with the same name. The IDE remembers the location information even if it needs to re-search for files in the access paths.
• disabled–the IDE remembers project entries only by name. This setting can cause unexpected results if two or more files share the same name. In this case, re-searching for files could cause the IDE to find the project entry in a different access path.
Script
Choose from the Scripts options the script system (language) used to display text in editor windows. This setting behaves in two different ways, depending on the current IDE state:
• No editor windows open—the setting modifies the default script system. All editor windows take on the default script system.
• Editor windows open—the setting modifies the script system displayed in the frontmost editor window only. Other editor windows remain unaffected.
The default script system remains unchanged.
IDE 5.6 User’s Guide
449
Preference and Target Settings Options
Select stack crawl window when task is stopped
Select the Select stack crawl window when task is stopped option to automatically bring the Thread window to the foreground after the debugger stops a task. Clear the option to leave the Thread window in its previous position.
This option is useful for watching variable values change in multiple Variable windows as the debugger steps through code.
Selection position
Select the Selection position option to remember these items for each editor window:
• visible text
• insertion-point location
• selected text
Clear the option to open each editor window according to default settings and place the insertion point at the first line of text.
NOTE
The IDE must be able to write to the file in order to remember selection position.
Show all locals
Select the Show all locals option to display all local variables in Variable windows. Clear the option to show only variables near the program counter.
The Variables pane uses these display settings:
• Variables: All—shows all local variables in the code.
• Variables: Auto—only shows the local variables of the routine to which the current-statement arrow currently points.
• Variables: None—does not show variables. Use this setting to improve stepping performance for slow remote connections.
Show Code and Data Sizes
Enable this option in the IDE Extras panel of the IDE preferences panels to display the Code and Data columns in the project manager window.
450
IDE 5.6 User’s Guide
Preference and Target Settings Options
Show message after building up-to-date project
Select the Show message after building up-to-date project option to have the
IDE display a message after building an up-to-date project.
Show threads in separate windows
Select the Show threads in separate windows option to open a separate Thread window for each task. Clear the option to use one Thread window to display multiple tasks.
Show processes in separate windows
Select the Show processes in separate windows option to open a separate window for each process. Clear the option to use one window to display multiple tasks processes.
Show the component palette when opening a form
Select the Show the component palette when opening a form option to automatically display the Component Palette after opening a form in the Layout
Editor. Clear the option to require manual opening of the Component Palette.
Show the object inspector when opening a form
Select the Show the object inspector when opening a form option to automatically open an Object Inspector window when opening a layout in the
Layout Editor. Clear the option to require manual opening of the Object
Inspector.
Show values as decimal
Select the Show values as decimal instead of hex option to display variable values in decimal form. Clear the option to display the values in hexadecimal form.
IDE 5.6 User’s Guide
451
Preference and Target Settings Options
Show variable location
Select the Show variable location option to display the Location column in the
Variables pane of the Thread window. Clear the option to hide the Location column.
Show variable types
Select the Show variable types option to display the type associated with each variable in Variable windows. Clear the option to hide the variable types.
Show variable values in source code
Select the Show variable values in source code option to show current values for variable names displayed in contextual menus. Clear the option to show variable names only.
Size
Choose from the Size options the font size used to display text in editor windows.
This setting behaves in two different ways, depending on the current IDE state:
• No editor windows open—the setting modifies the default font size. All editor windows take on the default font size.
• Editor windows open—the setting modifies the font size displayed in the frontmost editor window only. Other editor windows remain unaffected.
The default font size remains unchanged.
Sort functions by method name in symbolics window
Select the Sort functions by method name in symbolics window option to alphabetically sort functions by method name. Clear the option to alphabetically sort by class name. The sorting affects functions of the form
className::methodName
that appear in the Symbolics window.
Since most C++ and Java source files contain methods that belong to the same class, select the option to simplify selection of functions by typing method names.
452
IDE 5.6 User’s Guide
Preference and Target Settings Options
Stop at Watchpoints
Select this option to halt program execution at each watchpoint, regardless of whether the watchpoint value changed. Clear the option to halt execution at watchpoints with changed values.
Stop on application launch
Select this option to halt program execution at a specified point each time a debugging session begins.
Strings
Use the Strings option to configure the color of anything that is not a comment, keyword, or custom keyword and displayed in editor windows when the Activate
Syntax Coloring option is enabled. Sample strings include literal values, variable names, routine names, and type names.
Click the color swatch next to Strings to set the color.
Sort function popup
Select the Sort function popup option to sort function names by alphabetical order in list pop-ups. Clear the option to sort function names by order of appearance in the source file.
Source relative includes
Select to search for dependent files in the same location as the source file. If the dependent file is not found in this location, specified User and System paths are searched. If this option is enabled, the Always Search User Paths should also be enabled. For example, if the compiler is currently scanning the main source file and discovers an include header file statement, the header file is searched for in the same location as the main file. If not found, the specified access paths will be searched. If the header file declared in the main file also contains an include statement for another header file, it too will be searched for in the same sequence.
Success
Choose from the Success options a sound to play after a Bring Up To Date or
Make operation succeeds.
IDE 5.6 User’s Guide
453
Preference and Target Settings Options
Symbolics
Enter the number of recent symbolics files to display in the Open Recent submenu.
System Paths
Click the System Paths radio button to display the System Paths pane in the
Access Paths preference panel.
Supported hosts:
• Windows: available.
• Macintosh: not available.
T
454
Tab indents selection
Use the Tab indents selection option to control how the editor inserts tabs into the currently selected lines of text:
• Select the option so that pressing Tab causes the editor to insert tab characters in front of each selected line of text. The editor thereby indents the selected text.
• Clear the option so that pressing Tab causes the editor to replace selected text with a tab character. The editor thereby overwrites the selected text.
Tab Inserts Spaces
Select the Tab Inserts Spaces option to have the editor insert spaces instead of tab characters into text. Clear the option to have the editor use tab characters.
The Tab Size option determines the number of spaces inserted by the editor.
Tab Size
Enter in the Tab Size field the number of spaces to substitute in place of a tab character in text. This number applies to the Tab Inserts Spaces option.
IDE 5.6 User’s Guide
Preference and Target Settings Options
Target Name
Use the Target Name text box to set or modify the name of the current build target. This name appears in the Targets view in the Project window. This name is not the name assigned to the final output file, that is set in the Linker panel for the build target.
Type
Choose from the Type options the desired source-tree path type:
• Absolute Path—This source-tree type is based on a file path.
• Environment Variable—This source-tree type is based on an existing environment-variable definition. The Macintosh-hosted IDE cannot create or modify this source-tree type.
• Registry Key—This source-tree type is based on an existing Windows registry key entry.
U
Update data every n seconds
Select this option to update the information displayed in debugging-session windows after a specified time interval. Enter the number of seconds n to elapse before the next update. Clear this option to prevent data updates and keep the same window information throughout the debugging session.
Use Concurrent Compiles
Select the Use Concurrent Compiles option to run more than one compiling process at a time. Concurrent compiling makes better use of available processor capacity by allowing the operating system to optimize resource utilization, such as taking advantage of over-lapped input/output.
Both single- and multi-processor systems benefit from enabling concurrent compiles. On multiprocessor systems, the speed-up is significant.
IDE 5.6 User’s Guide
455
Preference and Target Settings Options
Use Debugging Monitor
Select the Use Debugging Monitor option to view debugging windows on a second monitor after a debugging session starts. This option only appears when the second monitor is connected to the computer.
Use default workspace
Select this option to have the IDE use the default workspace. The IDE uses the default workspace to save and restore window and debugging states from one session to the next.
For example, if you select this option and close the IDE with a project window visible onscreen, that project window reappears the next time you start the IDE.
Clear this option to have the IDE start with the same default state for each new session: no windows visible onscreen.
For example, if you clear this option and close the IDE with a project window visible onscreen, that project window does not appear the next time you start the
IDE. Instead, the IDE always starts without opening any windows.
Use External Debugger
Select this option to have the IDE use an external debugger application in place of the CodeWarrior debugger.
Use External Editor
Select the Use External Editor option to use an external text editor to modify text files in the current project. Clear the option to use the text editor included with the IDE.
Use Local Project Data Storage
Select the Use Local Project Data Storage option to store (on the host computer) data associated with a project file on a read-only volume. Clear the option to store project data inside the same folder as the project file itself.
After loading a project file, the IDE creates or updates an associated project data folder. The IDE stores intermediate project data in this folder. When building or closing a project, the IDE uses the information in the project data folder to update the project file.
456
IDE 5.6 User’s Guide
Preference and Target Settings Options
By default, the IDE places the project data folder within the same folder as the project file. However, the IDE cannot create or update a project data folder in a location that grants read-only privileges.
If you are creating one project to be accessed by multiple users that are running
CodeWarrior on separate machines, then each user should select this option to create a local data storage folder for the shared project. The folder containing the project file should be set to read-only. This will cause the target information to be stored locally on each user’s machine, instead of inside a folder next to the project file.
Use modification date caching
Use the Use modification date caching option to determine whether the IDE checks the modification date of each project file prior to making the project. The settings include:
• enabled–the IDE caches the modification dates of the files in a project. At compilation time, the IDE refers to this cache to determine whether a specific file should be recompiled. This can shorten compilation time significantly for large projects.
• disabled–the IDE checks every file at each recompile of the project. Use this setting if using third-party editors to ensure that the IDE checks every file at compilation time.
Use Multiple Document Interface
Toggle th
is opti
on to change the IDE interface:
•
Selected—The IDE uses
MDI (Multiple Document Interface). In this interface, the IDE uses a main application window with a gray background.
IDE windows appear inside the main application window. The gray background obscures your view of the desktop.
•
Cleared—The IDE uses
FDI (Floating Document Interface). In this interface, the IDE does not use a main application window. You can see through the IDE user interface to your desktop. IDE windows appear above the desktop.
IDE 5.6 User’s Guide
457
Preference and Target Settings Options
Use multiple undo
Select the Use multiple undo option to remember several undo and redo operations in editor windows. Clear the option to remember only the most recent undo or redo action.
The IDE stores undo and redo actions on a stack in first-in last-out (FILO) order, however, the stack size and capability are limited. For example, assume there are five undo actions on the stack (
ABCDE
). If the IDE redoes two actions (
ABC
), then performs a new action (
ABCF
), the undo events (
DE
) are no longer available.
Use Script menu
Select the Use Script menu option to display the Scripts menu in the IDE menu bar. Clear the option to remove the Scripts menu from the menu bar. The Scripts menu provides convenient access to IDE scripts.
For more information about scripting the IDE, refer to the CodeWarrior
Scripting Reference.
Use Third Party Editor
Select the Use Third Party Editor option to use a third-party text editor to modify text files. Clear the option to use the text editor included with the IDE.
Enter in the Launch Editor and Launch Editor w/ Line # fields command-line expressions that specify information that the IDE passes to the third-party editor.
Consult the documentation provided with the third-party text editor for more information about using command lines.
See also:
•
•
“Launch Editor w/ Line #” on page 442
Use ToolServer menu
Select the Use ToolServer menu option to display the ToolServer menu in the
IDE menu bar. Clear the option to remove the ToolServer menu from the menu bar.
458
IDE 5.6 User’s Guide
Preference and Target Settings Options
User Paths
Click this radio button to display the User Paths pane in the Access Paths preference panel.
User Specified
Select the User Specified option to stipulate the number of concurrent compiles to allow in the IDE. Enter the desired number in the text box beside the option.
NOTE
The IDE accommodates a maximum of 1024 concurrent compiles.
However, there is a point where the host system becomes computebound, and allowing more processes only adds overhead. For a singleprocessor system, the practical limit is approximately 12 concurrent compiles.
V
Value
The Value text box defines the value of the variable defined in the Variable text box that will be passed to a host application when control is transferred to it by the IDE.
Variable
The Variable text box defines the name of a variable to be passed to a host application when control is transferred to it by the IDE.
Variable values change
Use the Variable values change option to configure the color of changed variables that appear in debugger windows. Click the color swatch to change the current color.
IDE 5.6 User’s Guide
459
Preference and Target Settings Options
VCS Commands
Select the VCS Commands option to add VCS menu commands to contextual menus. Clear the option to remove the commands from the contextual menus.
Refer to the documentation that came with the version control system to learn about using it with the CodeWarrior IDE.
W-Z
Watchpoint indicator
Use the Watchpoint indicator option to configure the color of watchpoints that appear in debugger windows. Click the color swatch to change the current color.
Window follows insertion point
Select this option to have the Code Completion window follow the insertion point as you edit text in the active editor window. Clear the option to leave the
Code Completion window in place.
Window position and size
Select the Window position and size option to remember the location and dimensions of each editor window. Clear the option to open each editor window according to default settings.
NOTE
The IDE must be able to write to the file in order to remember window position and size.
Working Directory
Enter the path to the default directory to which the current project has access.
Debugging occurs in this location. If this field is blank, debugging occurs in the same directory as the executable file.
460
IDE 5.6 User’s Guide
Preference and Target Settings Options
Workspaces
Enter the number of recent workspace files to display in the Open Recent submenu.
Zoom windows to full screen
Use the Zoom windows to full screen option to configure the behavior of the zoom box in the upper right-hand corner of all editor windows:
• Select the option to have the IDE resize a zoomed window to fill the entire screen.
• Clear the option to have the IDE resize a zoomed window to its default size.
IDE 5.6 User’s Guide
461
Preference and Target Settings Options
462
IDE 5.6 User’s Guide
Menus
This section contains these chapters:
•
•
VIII
IDE 5.6 User’s Guide
463
464
IDE 5.6 User’s Guide
29
IDE Menus
This chapter provides an overview of CodeWarrior
™
IDE menus and their commands. The IDE provides two different arrangements of IDE menus, configurable in the IDE Extras preference panel:
• Windows menu layout
• Macintosh menu layout
This chapter lists the IDE menus under each menu layout. For each menu, a table shows this information:
• Menu command—the name of each command in the menu.
• Description—a short description of each command.
This chapter has these sections:
•
“Windows Menu Layout” on page 465
•
“Macintosh Menu Layout” on page 480
Windows Menu Layout
This section provides an overview of the menus and menu commands available in the Windows menu layout.
File Menu
The File menu contains commands for opening, creating, saving, closing, and printing source files and projects. The File menu also provides different methods for saving edited files.
IDE 5.6 User’s Guide
465
IDE Menus
Windows Menu Layout
Table 29.1 File menu commands
Menu command Explanation
Find and Open File on page 510
Creates new projects using the New Project wizard or project stationery files.
Opens source and project files for editing and project modification operations.
Opens the file specified in the Find and Open File dialog or from the selected text in the active window.
When using the Windows menu layout on a Macintosh host, hold down the Option key to change this command to
Closes the active window.
Saves the active file using the editor window’s filename.
When using the Windows menu layout on a Macintosh host, hold down the Option key to change this command to
Saves all open editor windows.
When using the Windows menu layout on a Macintosh host, hold down the Option key to substitute this command
Saves a copy of the active file under a new name and closes the original file.
Saves a copy of the active file without closing the file.
Discards all changes made to the active file since the last save operation.
Opens a workspace that you previously saved.
Closes the current workspace. (You cannot close the default workspace.)
Saves the current state of onscreen windows, recent items, and debugging.
Saves an existing workspace under a different name.
466
IDE 5.6 User’s Guide
IDE Menus
Windows Menu Layout
Table 29.1 File menu commands (continued)
Menu command Explanation
Imports the components from another catalog into the current catalog.
Closes the current catalog and its associated Catalog
Components window and Component Palette.
Imports a project file previously saved in extensible markup language format (XML) and converts it into project file format.
Exports the active project file to disk in extensible markup language (XML) format.
Displays the Page Setup dialog for setting paper size, orientation, and other printer options.
Displays the Print dialog for printing active files, and the contents of Project, Message, and Errors & Warning window contents.
Displays a submenu of recently opened files and projects that can be opened in the IDE.
Quits the CodeWarrior IDE.
When using the Windows menu layout on a Macintosh host, this command does not appear. Instead, use the
Quit or Quit CodeWarrior on page 518
command in the File menu or the
CodeWarrior menu.
Edit Menu
The Edit menu contains all customary editing commands, along with some
CodeWarrior additions. This menu also includes commands that open the
Preferences and Target Settings windows.
IDE 5.6 User’s Guide
467
IDE Menus
Windows Menu Layout
Table 29.2 Edit menu commands
Menu command Explanation
Get Next Completion on page 512
Undoes the last cut, paste, clear, or typing operation.
If you cannot undo the action, this command changes to
Can’t Undo
.
Redoes the action of the last Undo operation.
If you cannot redo the action, this command changes to
Can’t Redo
.
Removes the selected text and places a copy of it on the
Clipboard.
Copies the selected text and places a copy of it on the
Clipboard.
Places the contents of the Clipboard at current insertion point or replaces the selected text.
Removes the selected text without placing a copy on the
Clipboard.
When using the Windows menu layout on a Macintosh host, this command does not appear. Instead, use the
Selects all text in current editor window or text box for cut, copy, paste, clear, or typing operations.
Selects text between the nearest set of parenthesis, braces, or brackets.
Moves selected text one tab stop to the left.
Moves selected text one tab stop to the right.
Shortcut for selecting the previous item that appears in the Code Completion window.
Shortcut for selecting the next item that appears in the
Code Completion window.
Opens the Code Completion window.
Opens the IDE Preferences window where you can set general IDE, editor, debugger, and layout options.
468
IDE 5.6 User’s Guide
IDE Menus
Windows Menu Layout
Table 29.2 Edit menu commands (continued)
Menu command Explanation
(the name changes, based on the name of the active build target)
Opens the project’s Target Settings window where you can set target, language, code generation, linker, editor, and debugger options.
Opens the VCS Settings window to enable activation of a version control system and its relevant settings.
Opens the Customize IDE Commands window where you can create, modify, remove menus, menu commands, and key bindings.
View Menu
The View menu contains commands for viewing toolbars, the class browser, the
Message window, and debugging windows.
Table 29.3 View menu commands
Menu command Explanation
Use the Toolbars menu to show, hide, reset, and clear window and main toolbars.
Opens or brings to the front a Project Inspector window.
Opens or brings to the front a Browser Contents window.
Opens or brings to the front a New Class Browser window.
Opens or brings to the front a Class Hierarchy window.
Opens the Build Progress window.
IDE 5.6 User’s Guide
469
IDE Menus
Windows Menu Layout
Table 29.3 View menu commands (continued)
Menu command Explanation
Opens or brings to the front an Errors & Warnings window.
Opens the Symbolics window.
Opens or brings to the front a Processes window.
Opens or brings to the front the Breakpoints window. Use this window to view, create, modify, and remove breakpoints.
Opens or brings to the front a Register window.
Expressions Window on page 509
Opens or brings to the front an Expressions window. Use to view, create, modify, and remove expressions.
Opens or brings to the front a Global Variables window.
Search Menu
The Search menu contains commands for finding text, replacing text, comparing files, and navigating code.
Table 29.4 Search menu commands
Menu command Explanation
Opens the Find and Replace window for performing searches in the active editor window.
Opens the Find and Replace window for replacing text in the active editor window.
Opens the Find in Files window for performing searches in the active editor window.
470
IDE 5.6 User’s Guide
IDE Menus
Windows Menu Layout
Table 29.4 Search menu commands (continued)
Menu command Explanation
Replace and Find Next on page 520
Finds the next occurrence of the find string in the active editor window.
When using the Windows menu layout on a Macintosh host, hold down the Shift key to change this command to
.
Finds the next occurrence of the find string in the next file listed in the Find window’s File Set.
When using the Windows menu layout on a Macintosh host, hold down the Shift key to change this command to
Find In Previous File on page 510
.
Replaces the Find text box string with the selected text.
When using the Windows menu layout on a Macintosh host, hold down the Shift key to change this command to
Enter Replace String on page 507
.
Finds the next occurrence of the selected text in the active editor window.
When using the Windows menu layout on a Macintosh host, hold down the Shift key to change this command to
Find Previous Selection on page 511
.
Replaces the replace string in the Replace text box with the selected text.
Replaces the selected text with the Replace text box string, then performs a Find Next operation.
When using the Windows menu layout on a Macintosh host, hold down the Shift key to change this command to
Replace and Find Previous on page 520
.
Finds all matches of the Find text box string and replaces them with the Replace text box string.
Searches for definition of the routine name selected in the active editor window using the project’s source files.
When using the Windows menu layout on a Macintosh host, hold down the Option key to change this command to
Returns to the previous CodeWarrior browser view.
Moves to the next CodeWarrior browser view.
IDE 5.6 User’s Guide
471
IDE Menus
Windows Menu Layout
Table 29.4 Search menu commands (continued)
Menu command Explanation
Unapply Difference on page 531
Opens the Go To Line dialog where you can specify by line number where to position the text insertion point.
Opens the Compare Files Setup window where you can choose to compare folders or files and merge their contents.
Adds, removes, or changes the selected text in the destination file to match the selected text in the source file.
Reverses the modifications made to the destination file by the Apply Difference command.
Project Menu
The Project menu contains commands for manipulating files, handling libraries, compiling projects, building projects, and linking projects.
Table 29.5 Project menu commands
Menu command Explanation
Adds the active window to the project.
Opens a dialog box that you can use to add multiple files to the active project.
Opens the Create Group dialog box that you can use to add a new file group to the active project. The new file group appears below the selected file or group.
Opens the Create Target dialog box that you can use to add a new build target to the active project. The new build target appears below the selected build target.
or
Opens the Create Segment/Overlay dialog box that you can use to add a new segment or overlay to the active project. The new segment or overlay appears below the selected one.
472
IDE 5.6 User’s Guide
IDE Menus
Windows Menu Layout
Table 29.5 Project menu commands (continued)
Menu command Explanation
Remove Object Code on page 519
Re-search for Files on page 521
Opens the Create New Design dialog box that you can use to add a design to the active project. The new design appears in the Design tab of the project window.
Exports the current project to a GNU makefile.
When using the Windows menu layout on a Macintosh host, this command does not appear.
Checks the active editor window or selected files in the project window for compilation errors.
Preprocesses the active editor window or selected files in the project window and displays results in a new editor window.
Precompiles the active editor window or selected files in the project window and stores results in a new header file.
Compiles the active editor window or selected files in the project window.
Disassembles the active editor window or selected files in the project window and displays results in a new editor window.
Compiles all marked or modified files in the current build target of the active project.
Compiles and links all marked or modified files in the current build target of the active project, saving the executable file.
Stops the current compile and linking operation and cancels the remainder of the build process.
Removes object code from one or more build targets in the project.
When using the Windows menu layout on a Macintosh host, hold down the Shift key to change this command to
Remove Object Code & Compact on page 519
.
Resets the cached locations of source files using the project access paths, and stores them for faster builds and project operations.
IDE 5.6 User’s Guide
473
IDE Menus
Windows Menu Layout
Table 29.5 Project menu commands (continued)
Menu command Explanation
or
Resets the location of all source files in the active project using the project access paths.
Updates the modification dates of all source files in the active project.
Compiles and links all marked or modified files in the current build target of the active window, then runs the built executable file.
Set Default Project on page 525
Set Default Target on page 525
Compiles and links all marked or modified files in the current build target of the active window, then runs the built executable file.
Compiles and links all marked or modified files in the current build target of the active window, then runs the built executable file.
Uses the Set Default Project menu to choose the default project when more than one project is open in the IDE.
Uses the Set Default Target menu to choose the default build target when more than one build target is present in the project file.
Debug Menu
The Debug menu contains commands for managing program execution.
Table 29.6 Debug menu commands
Menu command Explanation
Pauses execution of the program in a debugging session to enable examination of register and variable contents
Terminates the current debugging session returning control to the IDE.
Terminates the current debugging session, then restarts the program from the beginning.
474
IDE 5.6 User’s Guide
IDE Menus
Windows Menu Layout
Table 29.6 Debug menu commands (continued)
Menu command Explanation
Executes each source line in the program, treating routine calls as a single statement and stopping the program at the next line of code.
Executes each source line in the program, following any subroutine calls.
Executes each source line in the subroutine and stops the program when the routine returns to its caller.
Sets a temporary breakpoint on the source line containing the insertion point.
Opens the Change Program Counter dialog box that you can use to move the current statement arrow to an address or symbol.
Sets a breakpoint on the source line containing the insertion point.
Clears the breakpoint on the source line containing the insertion point.
or
Set/Clear Breakpoint on page 525
or
Disable Breakpoint on page 506
Clear All Breakpoints on page 501
Sets an eventpoint on the source line containing the insertion point.
Clears the breakpoint on the source line containing the insertion point.
Opens the Set/Clear Breakpoint dialog box that you can use for setting or clearing breakpoints by address or symbol.
Activates the disabled breakpoint on the source line containing the insertion point.
De-activates the breakpoint on the source line containing the insertion point.
Clears all breakpoints currently set in the default build target of the active project.
IDE 5.6 User’s Guide
475
IDE Menus
Windows Menu Layout
Table 29.6 Debug menu commands (continued)
Menu command Explanation
or
or
or
Disable Watchpoint on page 506
Clear All Watchpoints on page 501
Adds a Breakpoint Column to all project editor windows where you can set, view, or clear breakpoints.
Removes the Breakpoint Column from all project editor windows.
Sets a watchpoint on the source line containing the insertion point.
Clears the watchpoint on the source line containing the insertion point.
Activates the disabled watchpoint on the source line containing the insertion point.
De-activates the watchpoint on the source line containing the insertion point.
Clears all watchpoints currently set in the default build target of the active project.
Configures the debugger to break at
__throw()
each time a C++ exception occurs.
Use this menu to select the Java exceptions on which the debugger breaks.
Establishes communication with an embedded device to start a debugging session.
When using the Windows menu layout on a Macintosh host, this command does not appear.
Data Menu
The Data menu contains commands that control how the CodeWarrior debugger displays data values. This menu appears only during a debugging session.
476
IDE 5.6 User’s Guide
IDE Menus
Windows Menu Layout
Table 29.7 Data menu commands
Menu command Explanation
Toggles the appearance of the data type on local and global variables displayed in Variable panes and Variable windows.
Updates data displays.
Copy to Expression on page 504
Creates a new expression entry in the Expressions window.
Copies the selected variable to the Expressions window.
Displays the View As dialog where the data type of the selected variable can be specified.
Displays the selected variable in a new Variables window.
Displays the selected array variable in a new Arrays window.
Displays the selected variable in a new Memory window.
Displays the View As dialog where the data type of the selected variable can be specified, then shown in a new
Memory window.
Toggles the data view among
,
.
View data as source code.
View data as language disassembly.
View data as source code and its disassembly.
View data without applied formatting.
IDE 5.6 User’s Guide
477
IDE Menus
Windows Menu Layout
Table 29.7 Data menu commands (continued)
Menu command Explanation
Views the selected variable in the default value format.
View As Hexadecimal on page 533
View As Pascal String on page 533
View As Floating Point on page 533
View As Enumeration on page 533
Views the selected variable as a binary value.
Views the selected variable as a signed decimal value.
Views the selected variable as an unsigned decimal value.
Views the selected variable as a hexadecimal value.
Views the selected variable as a character value.
Views the selected variable as a C string.
Views the selected variable as a Pascal string.
Views the selected variable as a Unicode string.
Views the selected variable as a floating point value.
Views the selected variable as an enumerated value.
Views the selected variable as a 32-bit fixed value.
Window Menu
The Window menu contains commands that manipulate IDE windows.
The menu lists the names of all open file and project windows. A checkmark appears beside the active window, and an underline indicates a modified and unsaved file.
478
IDE 5.6 User’s Guide
IDE Menus
Windows Menu Layout
Table 29.8 Window menu commands
Menu command Explanation
Save Default Window on page 524
Closes the active window.
When using the Windows menu layout on a Macintosh host, hold down the Option key to change this command to
.
Closes all non-project windows.
When using the Windows menu layout on a Macintosh host, hold down the Option key to substitute this command for the
Arranges all editor windows so that only the title bar is visible.
Tiles all editor windows horizontally on the screen so none overlap.
Tiles all editor windows vertically on the screen so none overlap.
Saves the active browser windows settings and applies it to other browser windows as they are opened.
Help Menu
The Help menu contains commands for accessing the IDE’s online help.
Table 29.9 Help menu commands
Menu command
Index
Search
Explanation
Launches a help viewer to display the online help.
Click on a link to view a specific IDE topic.
Launches a help viewer to display a glossary of common terms used in the CodeWarrior help and manuals.
Launches a help viewer to a page for searching the
CodeWarrior help and manuals.
IDE 5.6 User’s Guide
479
IDE Menus
Macintosh Menu Layout
Table 29.9 Help menu commands (continued)
Menu command Explanation
Launches a browser and automatically points you to the Freescale web site.
Displays the CodeWarrior IDE version and build number information.
Macintosh Menu Layout
This section provides an overview of the menus and menu commands available in the Macintosh menu layout.
Apple Menu
The Apple menu (Mac OS 9.x.x and earlier) provides access to the CodeWarrior
About box, shows system applications, and lists additional items.
Select
About Freescale CodeWarrior on page 497
to display the IDE version and build-number information.
When using the Macintosh menu layout on a Windows host, this menu does not appear.
CodeWarrior Menu
The CodeWarrior Menu (visible in Mac OS X only) provides access to the
CodeWarrior About box, IDE preferences, and the command that quits the IDE.
When using the Macintosh menu layout on a Windows host, this menu does not appear.
480
IDE 5.6 User’s Guide
IDE Menus
Macintosh Menu Layout
Table 29.10 Apple menu commands
Menu command
Quit or Quit CodeWarrior on page 518
Explanation
Displays the CodeWarrior IDE version and build number information.
Opens the IDE Preferences window where you can set general IDE, editor, debugger, and layout options.
Quits the CodeWarrior IDE.
File Menu
The File menu contains commands for opening, creating, saving, closing, and printing source files and projects. The File menu also provides different methods for saving edited files.
Table 29.11 File menu commands
Menu command Explanation
Creates a new text file and displays it in a new editor window.
Creates new projects using the New Project wizard or project stationery files.
Opens source and project files for editing and project modification operations.
Displays a submenu of recently opened files and projects that can be chosen to open in the IDE.
Find and Open File on page 510
Opens the file specified in the Find and Open File dialog or from the selected text in the active window.
Closes the active window.
When using the Macintosh menu layout on a Macintosh host, hold down the Option key to change this command to
.
IDE 5.6 User’s Guide
481
IDE Menus
Macintosh Menu Layout
Table 29.11 File menu commands (continued)
Menu command Explanation
Saves the active file using the editor window’s filename.
When using the Macintosh menu layout on a Macintosh host, hold down the Option key to change this command to
Saves a copy of the active file under a new name and closes the original file.
Saves a copy of the active file without closing the file.
Discards all changes made to the active file since the last save operation.
Opens a workspace that you previously saved.
Closes the current workspace. (You cannot close the default workspace.)
Saves the current state of onscreen windows, recent items, and debugging.
Saves an existing workspace under a different name.
Imports the components from another catalog into the current catalog.
Closes the current catalog and its associated Catalog
Components window and Component Palette.
Imports a project file previously saved in extensible markup language format (XML) and converts it into project file format.
Exports the active project file to disk in XML format.
Displays the Page Setup dialog for setting paper size, orientation, and other printer options.
482
IDE 5.6 User’s Guide
IDE Menus
Macintosh Menu Layout
Table 29.11 File menu commands (continued)
Menu command Explanation
Displays the Print dialog for printing active files, and the contents of Project, Message, and Errors & Warning window contents.
Quits the CodeWarrior IDE.
(Classic Mac OS)
Edit Menu
The Edit menu contains all customary editing commands, along with some
CodeWarrior additions. This menu also includes the commands that open the
Preferences and Target Settings windows.
Table 29.12 Edit menu commands
Menu command Explanation
Undoes the action of the last cut, paste, clear or typing operation.
If you cannot undo the action, this command changes to
Can’t Undo
.
Redoes the action of the last Undo operation.
If you cannot redo the action, this command changes to
Can’t Redo
.
Removes the selected text and places a copy of it on the
Clipboard.
Copies the selected text and places a copy of it on the
Clipboard.
Places the contents of the Clipboard at current insertion point or replaces the selected text.
Removes the selected text without placing a copy on the
Clipboard.
When using the Macintosh menu layout on a Windows host, this command does not appear. Instead, use the
IDE 5.6 User’s Guide
483
IDE Menus
Macintosh Menu Layout
Table 29.12 Edit menu commands (continued)
Menu command Explanation
Get Next Completion on page 512
Selects all text in the current editor window or text box for cut, copy, paste, clear, or typing operations.
Selects text between the nearest set of parenthesis, braces, or brackets.
Moves selected text one tab stop to the left.
Moves selected text one tab stop to the right.
Shortcut for selecting the previous item that appears in the Code Completion window.
Shortcut for selecting the next item that appears in the
Code Completion window.
Opens the Code Completion window.
Inserts a routine template corresponding to the selected
Mac OS Toolbox call in the active window.
When using the Macintosh menu layout on a Windows host, this command does not appear.
Opens the IDE Preferences window where you can set general IDE, editor, debugger, and layout options.
Opens the project’s Target Settings window where you can set target, language, linker, editor, and debugger options.
(name changes, based on name of active build target)
Version Control Settings on page 532
Opens the VCS Settings window to enable activation of a version control system and its relevant settings.
Opens the Customize IDE Commands window where you can create, modify, remove menus, menu commands, and key bindings.
Search Menu
The Search menu contains commands for finding text, replacing text, comparing files, navigating code, and finding routine definitions.
484
IDE 5.6 User’s Guide
IDE Menus
Macintosh Menu Layout
Table 29.13 Search menu commands
Menu command Explanation
Replace and Find Next on page 520
Opens the Find and Replace window for performing find and replace operations on the active editor window.
Opens the Find in Files window for performing searches in the active editor window.
Finds the next occurrence of the find string in the active editor window.
When using the Macintosh menu layout on a Macintosh host, hold down the Shift key to change this command to
Finds the next occurrence of the find string in the next file listed in the Find window’s File Set.
When using the Macintosh menu layout on a Macintosh host, hold down the Shift key to change this command to
Find In Previous File on page 510
.
Replaces the Find text box string with the selected text.
When using the Macintosh menu layout on a Macintosh host, hold down the Shift key to change this command to
Enter Replace String on page 507
.
Finds the next occurrence of the selected text in the active editor window.
When using the Macintosh menu layout on a Macintosh host, hold down the Shift key to change this command to
Find Previous Selection on page 511
Replaces the replace string in the Replace text box with the selected text.
Replaces the selected text with the Replace text box string, then performs a Find Next operation.
When using the Macintosh menu layout on a Macintosh host, hold down the Shift key to change this command to
Replace and Find Previous on page 520
Finds all matches of the Find text box string and replaces them with the Replace text box string.
IDE 5.6 User’s Guide
485
IDE Menus
Macintosh Menu Layout
Table 29.13 Search menu commands (continued)
Menu command Explanation
Searches for the definition of the routine name selected in the active editor window using the project’s source files.
When using the Macintosh menu layout on a Macintosh host, hold down the Shift key to change this command to
Find Definition & Reference on page 509
Searches for the definition of the routine name selected in the active editor window using the specified online help system.
When using the Macintosh menu layout on a Windows host, this command does not appear.
Returns to the previous CodeWarrior browser view.
Moves to the next CodeWarrior browser view.
Unapply Difference on page 531
Opens the Go To Line dialog where you can specify by line number where to position the text insertion point.
Opens the Compare Files Setup window where you can choose to compare folders or files and merge their contents.
Adds, removes, or changes the selected text in the destination file to match the selected text in the source file.
Reverses the modifications made to the destination file by the Apply Difference command.
Project Menu
The Project menu contains commands for manipulating files, handling libraries, compiling projects, building projects, and linking projects.
486
IDE 5.6 User’s Guide
IDE Menus
Macintosh Menu Layout
Table 29.14 Project menu commands
Menu command Explanation
(name changes, based on name of selected item)
Adds the active window to the project.
or
or
or
Opens a dialog that you can use to add multiple files to the active project.
Displays the Create Group dialog where you can add a new file group to the active project immediately after selected file or group.
Displays the Create Target dialog where you can add a new build target to the active project immediately after selected build target.
Displays the Create Overlay dialog where you can add a new memory overlay to the active project immediately after the selected overlay.
Displays the Create Segment dialog where you can add a new segment to the active project immediately after the selected segment.
Opens the Create New Design dialog box that you can use to add a design to the active project. The new design appears in the Design tab of the project window.
Checks the active editor window or selected files in the project window for compilation errors.
Preprocesses the active editor window or selected files in the project window and displays results in a new editor window.
Precompiles active editor window or selected files in project window and stores results in a new header file.
Compiles the active editor window or selected files in project window.
Disassembles the active editor window or selected files in the project window and displays the results in a new editor window.
Compiles all marked or modified files in the current build target of the active project.
IDE 5.6 User’s Guide
487
IDE Menus
Macintosh Menu Layout
Table 29.14 Project menu commands (continued)
Menu command Explanation
Remove Object Code on page 519
Re-search for Files on page 521
or
Set Default Project on page 525
Set Default Target on page 525
Compiles and links all marked or modified files in the current build target of the active project; saving the executable file.
Stops the current compile and link operation and cancels the remainder of the build process.
Removes the object code from one or more build targets in the project.
When using the Macintosh menu layout on a Macintosh host, hold down the Option key to change this command
Remove Object Code & Compact on page 519
Resets the cached locations of source files using the project access paths, and storing them for faster builds and project operations.
Resets the location of all source files in the active project using the project access paths.
Updates the modification dates of all source files in the active project.
Compiles and links all marked or modified files in the current build target of the active window, then runs the built executable file.
Compiles and links all marked or modified files in the current build target of the active window, then runs the built executable file.
Compiles and links all marked or modified files in the current build target of the active window, then runs the built executable file.
Uses the Set Default Project menu to choose the default project when more than one project is open in the IDE.
Uses the Set Default Target menu to choose the default build target when more than one build target is present in the project file.
488
IDE 5.6 User’s Guide
IDE Menus
Macintosh Menu Layout
Debug Menu
The Debug menu contains commands for managing program execution.
Table 29.15 Debug menu commands
Menu command
or
Set/Clear Breakpoint on page 525
or
Disable Breakpoint on page 506
Explanation
Terminates the current debugging session returning control to the IDE.
Terminates the current debugging session, then restarts the program from the beginning.
Executes each source line in the program, treating routine calls as a single statement and stopping the program at the next line of code.
Executes each source line in the program, following any subroutine calls.
Executes each source line in the subroutine and stops the program when the routine returns to its caller.
Pauses execution of the program in a debugging session to enable examination of register and variable contents.
Sets a breakpoint on the source line containing the insertion point.
Clears the breakpoint on the source line containing the insertion point.
Sets an eventpoint on the source line containing the insertion point.
Clears the breakpoint on the source line containing the insertion point.
Displays the Set/Clear Breakpoint dialog for setting or clearing breakpoints by address or symbol.
Activates the disabled breakpoint on the source line containing the insertion point.
De-activates the breakpoint on the source line containing the insertion point.
IDE 5.6 User’s Guide
489
IDE Menus
Macintosh Menu Layout
Table 29.15 Debug menu commands (continued)
Menu command
Clear All Breakpoints on page 501
or
or
or
Disable Watchpoint on page 506
Clear All Watchpoints on page 501
Explanation
Clears all breakpoints currently set in the default build target of the active project.
Adds a Breakpoint Column to all project editor windows where breakpoints can be set, viewed, and cleared.
Removes the Breakpoint Column from all project editor windows.
Sets a watchpoint on the source line containing the insertion point.
Clears the watchpoint on the source line containing the insertion point.
Activates the disabled watchpoint on the source line containing the insertion point.
De-activates the watchpoint on the source line containing the insertion point.
Change Program Counter on page 500
Break on C++ Exception on page 499
Break on Java Exceptions on page 499
Clears all watchpoints currently set in the default build target of the active project.
Sets a temporary breakpoint on the source line containing the insertion point.
Displays the Change Program Counter dialog where you can move the current statement arrow to an address or symbol.
Configures the debugger to break at
__throw()
each time a C++ exception occurs.
Use this menu to select which Java exceptions the debugger should break on.
Configures the IDE to use an external debugger instead of the CodeWarrior debugger.
When using the Macintosh menu layout on a Windows host, this command does not appear.
490
IDE 5.6 User’s Guide
IDE Menus
Macintosh Menu Layout
Data Menu
The Data menu contains commands that control how the CodeWarrior debugger displays data values. This menu only appears during a debugging session.
Table 29.16 Data menu commands
Menu command Description
Toggles the appearance of the data type on local and global variables displayed in Variable panes and
Variable windows.
Updates data displays.
Creates a new expression entry in the Expressions window.
Copy to Expression on page 504
Copies the selected variable to the Expressions window.
Displays the View As dialog where the data type of the selected variable can be specified.
Displays the selected variable in a new Variables window.
Displays the selected array variable in a new Arrays window.
Displays the selected variable in a new Memory window.
Displays the View As dialog where the data type of the selected variable can be specified, then shown in a new Memory window.
Toggles the data view among
,
.
View data as source code.
View data as disassembled.
View data as source code and disassembled.
IDE 5.6 User’s Guide
491
IDE Menus
Macintosh Menu Layout
Table 29.16 Data menu commands (continued)
Menu command Description
View data without applied formatting.
Views selected variable in default value format.
View As Signed Decimal on page 533
Views selected variable as a binary value.
Views selected variable as a signed decimal value.
Views selected variable as an unsigned decimal value.
View As Hexadecimal on page 533
Views selected variable as a hexadecimal value.
Views selected variable as a character value.
Views selected variable as a C string.
View As Pascal String on page 533
View As Unicode String on page 533
View As Floating Point on page 533
View As Enumeration on page 533
Views selected variable as a Pascal string.
Views selected variable as a Unicode string.
Views selected variable as a floating point value.
Views selected variable as an enumerated value.
Views selected variable as a 32-bit fixed value.
Views selected variable as a fract value.
When using the Macintosh menu layout on a Windows host, this command does not appear.
Window Menu
The Window menu contains commands that manipulate IDE windows. The
Window menu is divided into several sections:
492
IDE 5.6 User’s Guide
IDE Menus
Macintosh Menu Layout
• window commands to stack, tile, zoom, collapse, and save window positions.
• toolbar submenu for showing, hiding, resetting, and clearing window and floating toolbars.
• commands to open specific browser, IDE, and debugger windows.
• names of all open file and project windows.
A check mark appears beside the active window, and an underline denotes a modified and unsaved file.
Table 29.17 Window menu commands
Menu command
Stack Editor Windows on page 526
Tile Editor Windows on page 528
Description
Arranges all editor windows so that only the title bar is visible.
Tiles all editor windows horizontally on the screen so none overlap.
Tiles all editor windows vertically on the screen so none overlap.
Restores the active editor window to its previous size and position.
Collapses the active editor window so that only its title bar is visible.
( Minimize Window on page 515 )
or
( Maximize Window on page 514 )
Save Default Window on page 524
Expands the collapsed editor window to its previous size and position.
Saves the current browser-window settings for later reuse.
Use the Toolbars submenu to show, hide, reset, and clear window, main, and floating toolbars.
Opens or brings to the front a Browser Contents window.
IDE 5.6 User’s Guide
493
IDE Menus
Macintosh Menu Layout
Table 29.17 Window menu commands (continued)
Menu command
ToolServer Worksheet on page 530
Description
Opens or brings to the front a Class Hierarchy window.
Opens or brings to the front a New Class Browser window.
Opens or brings to the front a Build Progress window.
Opens or brings to the front an Errors & Warnings window.
Opens or brings to the front a Project Inspector window.
Opens or brings to the front a ToolServer Worksheet window.
When using the Macintosh menu layout on a Windows host, this command does not appear.
Opens or brings to the front a Symbolics window.
Opens or brings to the front a Processes window.
Opens or brings to the front an Expressions window.
Use to view, create, modify, and remove expressions.
Opens or brings to the front a Global Variables window.
Opens or brings to the front a Breakpoints window. Use to view, create, modify, and remove breakpoints.
Opens or brings to the front a Register window.
494
IDE 5.6 User’s Guide
IDE Menus
Macintosh Menu Layout
VCS Menu
The VCS (Version Control System) menu appears in the IDE’s menu bar when the Use Version Control option is enabled. The CodeWarrior IDE can operate with many difference version control systems including CVS, Visual SourceSafe, and others.
This icon represents the VCS menu in the Macintosh-hosted IDE menu bar.
Refer to the documentation that came with the version control system to learn about using it with the CodeWarrior IDE.
Tools Menu
On the Mac OS hosted IDE, the Tools menu appears in the IDE’s menu bar after you enable the Use ToolServer menu checkbox in the IDE Extras preference panel. The Tools menu contains commands for controlling Apple
®
ToolServer
™
and Macintosh Programmer’s Workbench (MPW).
Macintosh: This icon represents the Tools menu in the Macintosh-hosted
IDE menu bar.
Refer to Targeting Mac OS to learn about using ToolServer and MPW with projects.
Scripts Menu
The Scripts menu appears in the IDE’s menu bar after you enable the Use script
menu checkbox in the IDE Extras preference panel and creates a (Scripts) folder in the Freescale CodeWarrior folder of your IDE installation.
The Scripts menu uses the directory structure of the (Scripts) folder to create a hierarchical menu. This hierarchical menu lists all scripts in the (Scripts) folder. Open a script-editing utility or a text editor to learn more about the scripts that might already exist in the (Scripts) folder.
Refer to the CodeWarrior Scripting Reference to learn about scripting the IDE.
Help Menu
The Help menu contains commands for accessing the IDE’s online help.
IDE 5.6 User’s Guide
495
IDE Menus
Macintosh Menu Layout
Table 29.18 Help menu commands
Menu command
Index (Windows)
Search (Windows)
(Windows)
Description
Launches a help viewer to display the online help. Click on a link to view a specific IDE topic.
Opens the online help to the Index tab.
Opens the online help to the Search tab.
Launches a browser and automatically points you to the Freescale website.
Displays the CodeWarrior IDE version and build number information.
NOTE
Classic Macintosh: The Help menu contains additional menu commands for Balloon Help and accessing Apple’s online help.
496
IDE 5.6 User’s Guide
30
Menu Commands
This section presents an alphabetical listing of all available menu commands in the CodeWarrior
™
IDE. Menu commands that appear only on certain host platforms are documented. A menu command that has no host information is available on all hosts.
Use this listing as a reference to find information about a specific menu command.
A
About Freescale CodeWarrior
This command displays the CodeWarrior IDE version and build number information.
TIP
Click the Installed Products button in this window to view and save information about installed products and plug-ins for the CodeWarrior
IDE. You can also use this window to enable or disable plug-in diagnostics.
Add Files
The Add Files command opens a dialog which allows one or more files to be added to the project.
Add Window
The Add Window command adds the file in the active Editor window to the open project. The name of the menu command changes, based on the name of the
IDE 5.6 User’s Guide
497
Menu Commands
active window. For example, if the name of the active window is
MyFile
, the name of the menu command changes to
Add MyFile to Project.
Align
Reveals the Align submenu with component alignment commands like Right
Edges, Vertical Centers, and others.
See also:
•
•
“Horizontal Center” on page 513
•
•
•
•
•
All Exceptions
The All Exceptions command of the Java submenu tells the debugger to break every time an exception occurs. This behavior includes exceptions thrown by the virtual machine, your own classes, the debugger, classes in
classes.zip
, and so on. Java programs throw many exceptions in the normal course of execution, so catching all exceptions causes the debugger to break often.
Anchor Floating Toolbar
The Anchor Floating Toolbar command attaches the floating toolbar beneath the menu bar. Once attached, the anchored toolbar can not be moved again until it is unanchored.
See also:
“Unanchor Floating Toolbar” on page 531
Apply Difference
The Apply Difference command applies the selected difference from the source file into the destination file.
498
IDE 5.6 User’s Guide
Menu Commands
B
Balance
The Balance command selects all text starting at the current insertion point and enclosed in parentheses
()
, brackets
[]
, or braces
{}
,
Bottom Edges
The Bottom Edges command of the Align submenu aligns the bottom edges of the selected components.
Break
The Break command temporarily suspends execution of the target program and returns control to the debugger.
See also:
Break on C++ Exception
The Break on C++ Exception command tells the debugger to break at
__throw()
each time a C++ exception occurs.
Break on Java Exceptions
The Break on Java Exceptions command reveals the Java Exceptions submenu.
See also:
•
“Exceptions in Targeted Classes” on page 508
•
“Uncaught Exceptions Only” on page 531 .
Breakpoints or Breakpoints Window
These commands open the Breakpoints window.
Bring To Front
The Bring To Front command moves the selected objects so that they are displayed in front of all other objects.
IDE 5.6 User’s Guide
499
Menu Commands
Bring Up To Date
The Bring Up To Date command updates the current build target in the active project by compiling all of the build target’s modified and touched files.
Browser Contents
The Browser Contents command opens the Browser Contents window. This command is not available if the Enable Browser option is not activated.
Build Progress or Build Progress Window
These commands open the Build Progress window. Use it to monitor the IDE’s status as it compiles a project.
C
500
Cascade
The Cascade command arranges open editor windows one on top of another, with their window titles visible.
Change Program Counter
The Change Program Counter command opens a window that lets you move the current-statement arrow to a particular address or symbol.
Check Syntax
The Check Syntax command checks the syntax of the source file in the active
Editor window or the selected files in the open project window. If the IDE detects one or more errors, a Message window appears and shows information about the errors.
The Check Syntax command is not available if the active Editor window is empty or no project file is open.
Check Syntax does not generate object code.
Table 30.1 on page 501 explains how to abort the syntax-checking process:
IDE 5.6 User’s Guide
Menu Commands
Table 30.1 Aborting the syntax-checking process
On this host… Do this…
Windows
Macintosh
Solaris
Linux
Press Esc
Press Command-. (Command-Period)
Press Esc
Press Esc
Class Browser
The Class Browser command opens a Class Browser window. This command is unavailable if the Enable Browser option is not enabled.
Class Hierarchy or Class Hierarchy Window
These commands open a Multi-Class Browser window. This command is unavailable if the Enable Browser option is not enabled.
Clear
The Clear command removes the selected text. This menu command is equivalent to pressing the Backspace or Delete key.
Clear All Breakpoints
The Clear All Breakpoints command clears all breakpoints in all source files belonging to the target program.
Clear All Watchpoints
The Clear All Watchpoints command clears all watchpoints in the current program.
Clear Breakpoint
The Clear Breakpoint command clears the breakpoint at the currently selected line. If the Show Breakpoints option is enabled, the marker in the Breakpoints column of the Editor window disappears.
IDE 5.6 User’s Guide
501
Menu Commands
Clear Eventpoint
This command opens a submenu that lets you remove an eventpoint from the currently selected line. If the Show Breakpoints option is active, the Breakpoints column in the editor windows shows a marker next to each line with an eventpoint. The marker represents the eventpoint type.
Clear Floating Toolbar
The Clear Floating Toolbar command removes all shortcut icons from the floating toolbar. Once the toolbar is cleared, drag shortcut icons from the
Commands and Key Bindings window to the toolbar to create a custom floating toolbar.
Clear Main Toolbar
The Clear Main Toolbar command removes all shortcut icons from the main toolbar. Once the toolbar is cleared, drag shortcut icons from the Commands and
Key Bindings window to the toolbar to create a custom main toolbar.
Clear Watchpoint
The Clear Watchpoint command removes a watchpoint from the selected variable or memory range.
Clear Window Toolbar
The Clear Window Toolbar command removes all shortcut icons from the window toolbar. Once the toolbar is cleared, drag shortcut icons from the
Commands and Key Bindings window to the toolbar to create a custom window toolbar.
Close
The Close command closes the active window.
Close All
The Close All command closes all open windows of a certain type. The name of this menu command changes, based on the type of item selected. For example,
502
IDE 5.6 User’s Guide
Menu Commands
select one of several open editor windows, the menu command changes its name to
Close All Editor Documents.
NOTE
Macintosh: Press the Option key to change Close to Close All.
Close Catalog
The Close Catalog command closes the current catalog and removes the catalog from the Component Catalog window and the Component Palette.
Close Workspace
This command closes the current workspace.
You cannot close the default workspace, but you can choose whether to use it by
Use default workspace on page 456
Commands & Key Bindings
The Commands and Key Bindings command opens the Customize IDE
Commands window.
Complete Code
The Complete Code command opens the Code Completion window. Use this window to help you automatically complete programming-language symbols as you type them in the active editor window.
CodeWarrior Glossary
The CodeWarrior Glossary command opens and displays a list of vocabulary terms used by the CodeWarrior manuals and online help.
CodeWarrior Help
This command opens the online help for the CodeWarrior IDE.
IDE 5.6 User’s Guide
503
Menu Commands
Collapse Window
The Collapse Window command collapses the active window so that only its title is visible.
Compare Files
The Compare Files command opens the Compare Files Setup window. Use it to choose two files or folders for comparison and merging. After choosing the items, a comparison window appears that shows differences between the items.
Compile
The Compile command compiles selected source files into binary files. The IDE compiles source files that are:
• part of the current project and open in the active Editor window, or
• selected files, segments, or groups in a project window.
Connect
The Connect command establishes communication between the IDE and embedded hardware to begin a debugging session.
Copy
The Copy command copies selected text to the system Clipboard. If the Message
Window is active, the Copy command copies all text in the Message Window to the Clipboard.
Copy to Expression
The Copy to Expression command copies the variable selected in the active pane to the Expressions window.
Create Design
This command creates a new design in the current project. The new design appears in the Design tab of the project window. You cannot create a design if each build target in the project already belongs to a design.
504
IDE 5.6 User’s Guide
Menu Commands
Create Group
The Create Group command creates a new group in the current project. This command is active when the Files view is visible in the project window.
Create Overlay or Create Segment
These commands create a new segment or overlay in the current project. This command is active when the Segments view or Overlays view is visible in the project window.
Create Target
The Create Target command creates a new build target in the current project.
This command is active when the Targets view is visible in the project window.
Cut
The Cut command copies the selected text to the system Clipboard, replacing the previous Clipboard contents, and removes it from the current document or text box.
Cycle View
Toggles view among various data formats.
See also:
•
“View Disassembly” on page 534
•
•
•
IDE 5.6 User’s Guide
505
Menu Commands
D
Debug
This command compiles and links a project, then runs the CodeWarrior debugger with the project’s code. If debugging is active, the debugging window appears to examine program information and step through the code as it executes. If debugging is not active, the window appears, but the program executes without stopping in the debugger.
Delete
The Delete command removes selected text without placing it on the system clipboard. This menu command is equivalent to pressing the Backspace or Delete key.
Disable Breakpoint
The Disable Breakpoint command de-activates the breakpoint at the currently selected line.
Disable Watchpoint
The Disable Watchpoint command de-activates a watchpoint for the selected variable or memory range.
Disassemble
The Disassemble command disassembles the compiled source files selected in the project window. After disassembling a file, the IDE creates a
.dump
file that contains the file’s object code. The
.dump
file appears in a new window after the IDE completes the disassembly process.
Display Grid
The Display Grid command toggles the visibility of grid lines in the layout window. When checked, the grid lines appear, otherwise, no grid is visible.
506
IDE 5.6 User’s Guide
Menu Commands
E
Enable Breakpoint
The Enable Breakpoint command activates a breakpoint at the currently selected line. The breakpoint appears in the left side of the editor window if the
Breakpoint column is visible. The states of the breakpoint marker include:
• enabled breakpoint.
• disabled breakpoint.
• no breakpoint in line.
Enable Watchpoint
The Enable Watchpoint command activates a watchpoint for the selected variable or memory range.
Enabled watchpoints are indicated by an underline of the selected variable or range of memory. Disabled watchpoints have a grey underline. The underline’s color can be configured in the Display Settings preference panel of the IDE
Preference window.
Enter Find String
The Enter Find String command copies selected text in the active window directly into the target search string. It will then appear in the Find text box of both the Find and Replace and Find in Files windows. Once done, use any of the find commands to search for matches without opening any Find-related windows.
Enter Replace String
The Enter Replace String command copies the selected text in the active window directly into the target search string. It will then appear in the Replace
with text box of both the Find and Replace and Find in Files windows. Once done, use any of the find commands to search for matches without opening any
Find-related windows.
IDE 5.6 User’s Guide
507
Menu Commands
508
NOTE
Macintosh: Press the Shift key to change the Enter Find String command to the Enter Replace String menu command.
Errors & Warnings or Errors & Warnings Window
These commands open the Errors and Warnings window.
Exceptions in Targeted Classes
The Exceptions in Targeted Classes command of the Java submenu instructs the debugger to break on exceptions thrown by your own classes in the project.
Choose this command to break on exceptions thrown by your classes, rather than exceptions that Java programs throw in the normal course of execution.
Exit
The Exit command exits the CodeWarrior IDE immediately, provided that:
• all changes to the open editor files are already saved, or
• the open editor files are not changed.
If a Project window is open, the IDE saves all changes to the project file before exiting. If an Editor window is open and changes are not saved, the CodeWarrior
IDE asks if you want to save your changes before exiting.
Expand Window
The Expand Window command expands a collapsed window (a window with only its title visible). Only available when a collapsed window is currently active.
Export Project
The Export Project command exports a CodeWarrior project to a file in XML format. The IDE prompts for a name and location to save the new XML file.
Export Project as GNU Makefile
This command exports a CodeWarrior project to a GNU makefile. The IDE displays a message that tells you the name of the makefile and its location on the hard disk.
IDE 5.6 User’s Guide
Menu Commands
Expressions or Expressions Window
These commands open an Expressions window.
F
Find
The Find command opens the Find and Replace window to perform find operations within the active file.
Find Definition & Reference
The Find Definition & Reference command searches for the definition of the selected routine name in the active Editor window. Searching starts within the source files belonging to the open project. If the IDE does not find a definition, a system beep sounds.
If the IDE does not find the routine definition within the project files, searching continues, using the online help system specified in the IDE Extras preference panel.
NOTE
Macintosh: Press the Option key to change the Find Definition menu command to the Find Definition & Reference menu command.
Find Definition
The Find Definition command searches for the definition of the selected routine name in the active window. Searching occurs in the source files belonging to the open project. If the IDE finds the definition, the source file that contains the definition appears in an Editor window, and the routine name appears highlighted.
If the IDE finds more than one definition, a Message window appears warning of multiple definitions. If the IDE does not find a definition, a system beep sounds.
IDE 5.6 User’s Guide
509
Menu Commands
NOTE
Select the Activate Browser option in the Build Extras target settings panel and re-compile the project in order to use the Find
Definition command.
Find in Files
The Find in Files command opens the Find in Files window. This window allows you to perform find-and-replace operations across multiple files using specified search criteria.
Find In Next File
The Find in Next File command searches for the next occurrence of the Find text box string in the next file listed in the Find in Files window.
Find In Previous File
This command searches for the next occurrence of the Find text box string in the previous file listed in the Find in Files window.
NOTE
(Macintosh) Press the Shift key to change the Find In Next File menu command to the Find In Previous File menu command.
Find Next
The Find Next command searches for the next occurrence of the Find text box string in the active window.
Find and Open File
The Find and Open File command opens the Find and Open File dialog. Enter a filename, click OK, and the IDE searches the current project access paths as specified in the Access Paths panel of the Target Settings window.
Find and Open ‘Filename’
The Find and Open ‘Filename’ command opens an existing text file, using the currently selected text in the Editor window as the filename.
510
IDE 5.6 User’s Guide
Menu Commands
Find Previous
The Find Previous command searches for the previous occurrence of the user defined string in the active window.
NOTE
Macintosh: Press the Shift key to change the Find Next menu command to the Find Previous menu command.
Find Previous Selection
The Find Previous Selection searches for the previous occurrence of the selected text in the active editor window.
NOTE
Macintosh: Press the Shift key to change the Find Selection menu command to the Find Previous Selection menu command.
Find Reference
The Find Reference command searches for the definition of the selected routine name in the active Editor window, using the online help system specified in the
IDE Extras preference panel.
If the IDE does not find a definition, a system beep sounds.
Find and Replace
The Find and Replace command opens the Find and Replace window. Use this window to perform find-and-replace operations within the active file.
Find Selection
The Find Selection command searches for the next occurrence of the selected text in the active Editor window.
IDE 5.6 User’s Guide
511
Menu Commands
G
512
Get Next Completion
The Get Next Completion command acts as a shortcut that bypasses using the
Code Completion window. Instead of scrolling through the Code Completion window to select the next symbol from the one currently selected, use this command to insert that next symbol directly into the active editor window.
Get Previous Completion
The Get Previous Completion command acts as a shortcut that bypasses using the Code Completion window. Instead of scrolling through the Code Completion window to select the previous symbol from the one currently selected, use this command to insert that previous symbol directly into the active editor window.
Global Variables or Global Variables Window
These commands open the Global Variables window. Use this window to view global variables for an entire project or for a single file. Click a filename in the
Files list to display the file’s global variables in the Variables list.
Go Back
The Go Back command returns to the previous view in the CodeWarrior browser.
Go Forward
The Go Forward command moves to the next view in the CodeWarrior Browser
(after you select Go Back command to return to previous view).
Go to Line
The Go to Line command opens the Line Number dialog box. Enter a specific line number to move the text-insertion point. If the line number specified exceeds the number of lines in the file, the text-insertion point moves to the last line in the file.
IDE 5.6 User’s Guide
Menu Commands
H
Hide Breakpoints
The Hide Breakpoints command conceals the Breakpoints column, which appears to the left of the source code shown in editor windows.
Hide Floating Toolbar
The Hide Floating Toolbar command conceals the IDE’s floating toolbar. After concealing the floating toolbar, the command changes to Show Floating
Toolbar.
Hide Main Toolbar
The Hide Main Toolbar command conceals the IDE’s main toolbar. After concealing the main toolbar, the command changes to Show Main Toolbar.
Hide Window Toolbar
The Hide Window Toolbar command conceals the toolbar in the active window. After concealing the window toolbar, the command changes to Show
Window Toolbar.
Horizontal Center
The Horizontal Center command of the Align submenu aligns the horizontal centers of the selected components.
I
Import Components
The Import Components command imports components from another catalog for use with the current catalog.
IDE 5.6 User’s Guide
513
Menu Commands
Import Project
The Import Project command imports project files previously saved in a XML file with the Export Project command.
Insert Reference Template
This command inserts a routine template corresponding to the selected Mac OS
Toolbox call in the active window. The IDE uses the online reference database application specified in the Find Reference Using pop-up to search for the routine’s definition.
K-L
Kill
The Kill command terminates the target program and returns control to the debugger.
Left Edges
The Left Edges command of the Align submenu aligns the left edges of the selected components.
M-N
514
Make
The Make command builds the selected project by compiling and linking its modified and touched files. The results of a successful build depend on the selected project type.
Maximize Window
Windows equivalent of Expand Window.
IDE 5.6 User’s Guide
Menu Commands
See also:
Freescale Website
The Freescale Website command launches a web browser and displays the
Freescale web site.
Minimize Window
Windows equivalent of Collapse Window.
See also:
New
The New command opens the New window. Use the New window to create new projects, files, components, and objects.
New Class
The New Class command opens the New Class wizard. Use this wizard to help create new classes in a project.
New Class Browser
The New Class Browser command opens a Browser window. The IDE grays out this menu command if the CodeWarrior browser is not activated. This menu command is equivalent to the Class Browser menu command.
New Data Member
The New Data Member command opens the New Data Member wizard. Use this wizard to help create new data members for a class.
New Event
The New Event command opens the New Event window. Use this window to help create new events for a selected class in a project.
IDE 5.6 User’s Guide
515
Menu Commands
New Event Set
The New Event Set command opens the New Event Set window to create a new event set for a selected class in a project.
New Expression
The New Expression command creates a new entry in the Expressions window, prompting entry of a new expression.
New Member Function
The New Member Function command opens the New Member Function wizard. Use this wizard to help create new member functions for a class.
New Method
The New Method command opens the New Method window. Use this window to create a new method for a selected class in a project.
New Property
The New Property command opens the New Property window. Use this window to create a new property for a selected class in a project.
New Text File
The New Text File command creates a new editable text file and opens an editor window.
No Exceptions
The No Exceptions command of the Java submenu instructs the debugger to not break when exceptions occur.
516
IDE 5.6 User’s Guide
Menu Commands
O
Open
The Open command opens an existing project or source file.
Open Recent
The Open Recent menu item reveals a submenu of recently opened projects and files. Choose a file from the submenu to open that item.
If two or more files in the submenu have identical names, the submenu shows the full paths to those files in order to distinguish between them.
Open Scripts Folder
This command opens the
(Scripts)
folder. This command is only available if the Use Scripts menu option is enabled.
Open Workspace
This command opens a workspace file that you previously saved.
P-Q
Page Setup
The Page Setup command sets the options used for printing CodeWarrior IDE files.
Paste
The Paste command replaces the selected text with contents of the system clipboard into the active Editor window or text box. If no text is selected, the IDE places the clipboard contents at the text-insertion point.
The Paste command is unavailable if the Message window is active.
IDE 5.6 User’s Guide
517
Menu Commands
Precompile
The Precompile command precompiles the text file in the active Editor window into a precompiled header file.
Preferences
The Preferences command opens the IDE Preferences window. Use this window to change the global preferences used by the CodeWarrior IDE.
Preprocess
This command preprocesses selected source files in any language that has a preprocessor, such as C, C++, and Java.
The Print command prints CodeWarrior IDE files, as well as Project, Message, and Errors and Warnings window contents.
Processes or Processes Window
These commands open the Processes window for those platforms that support it.
Project Inspector
Opens the Project Inspector window so that you can view information about your project. You can also use this window to manipulate file-specific information.
Quit or Quit CodeWarrior
Mac OS command equivalent of Exit on page 508 : See “Exit” on page 508 .
518
IDE 5.6 User’s Guide
Menu Commands
R
Redo
After undoing an operation, you can redo it. For example, after choosing the
Undo Typing command to remove some text that you typed, you can choose
Redo Typing to override the undo and restore the text.
You can enable the Use multiple undo option in the Editor Settings preference panel to allow greater flexibility with regard to
Undo and Redo operations.
After enabling this option, you can choose
Undo multiple times to undo multiple actions, and you can
Redo multiple times to redo multiple actions.
Refresh All Data
This command updates the data that appears in all windows.
Register Details Window
The Register Details Window command opens the Register Details window, which allows you to view descriptions of registers, bit fields, and bit values.
Registers or Register Window
These commands reveal the Registers submenu, which can be used to view general registers or FPU registers.
See also:
“Register Details Window” on page 519
Remove Object Code
The Remove Object Code command shows the Remove Object Code dialog box. Use this dialog box to remove binary object code from the active project, or to mark the project’s files for re-compilation.
Remove Object Code & Compact
This command removes all binaries from the project and compacts it.
Compacting the project removes all binary and debugging information and
IDE 5.6 User’s Guide
519
Menu Commands
retains only the information regarding the files that belong to the project and project settings.
Remove Selected Items
The Remove Selected Items command removes the currently selected items from the Project window.
CAUTION
You cannot undo this command.
Replace
The Replace command opens the Find and Replace dialog box. Use this dialog box to perform find-and-replace operations within the active file.
Replace All
The Replace All command finds all occurrences of the Find string and replaces them with the Replace string. If no text is selected in the active Editor window and there is no text in the Find text box, the IDE dims this menu command.
Replace and Find Next
This command substitutes selected text with text in the Replace text box of the
Find window, and then performs a Find Next operation. If no text is selected in the active Editor window and there is no text in the Find field of the Find window, the IDE grays out this menu command.
Replace and Find Previous
This command substitutes selected text with the text in the Replace text box of the Find window, and then performs a Find Previous operation. If no text is selected in the active Editor window and there is no text in the Find field of the
Find window, the IDE grays out this menu command.
NOTE
(Mac OS) Press the Shift key to change the Replace and Find Next menu command to the Replace and Find Previous menu command.
520
IDE 5.6 User’s Guide
Menu Commands
Replace Selection
The Replace Selection command substitutes the selected text in the active window with the text in the Replace text box of the Find window. If no text is selected in the active Editor window, the IDE grays out the menu command.
This menu command replaces one instance of a text string without having to open the Find window. Suppose that you replaced all occurrences of the variable icount
with jcount. While scrolling through your source code, you notice an instance of the variable icount misspelled as icont. To replace this misspelled variable with jcount, select icont and the Replace Selection menu command.
Re-search for Files
The Project > Re-search for Files command speeds up builds and other project operations, the IDE caches the location of project files after finding them in the access paths. Re-search for Files forces the IDE to forget the cached locations and re-search for them in the access paths. This command is useful if you moved several files and you want the IDE to find the files in their new locations.
If the Save project entries using relative paths option is enabled, the IDE does not reset the relative-path information stored with each project entry, so researching for files finds the source files in the same location (the exception is if the file no longer exists in the old location). In this case, the IDE only re-searches for header files. To force the IDE to also re-search for source files, choose the
Project > Reset Project Entry Paths menu command.
If the Save project entries using relative paths option is disabled, the IDE researches for both header files and source files.
Reset
The Reset command resets the program and returns control to the IDE.
Reset Floating Toolbar
The Reset Floating Toolbar command restores the default state of the floating toolbar. Use this command to return the floating toolbar to its original default settings.
IDE 5.6 User’s Guide
521
Menu Commands
Reset Main Toolbar
The Reset Main Toolbar command restores the default state of the main toolbar.
Use this command to return the main toolbar to its original default settings.
Reset Project Entry Paths
The Reset Project Entry Paths command resets the location information stored with each project entry and forces the IDE to re-search for the project entries in the access paths. This command does nothing if the Save project entries using
relative paths option is disabled.
Reset Window Toolbar
The Reset Window Toolbar command restores the default state of the toolbar in the active window. Use this command to return the toolbar to its original default settings.
Resize
The Resize command reveals the Resize submenu.
See also:
•
“To Largest Height” on page 529
•
“To Largest Width” on page 530
•
“To Smallest Height” on page 531
•
“To Smallest Width” on page 531
Restart
The Restart command terminates the current debugging session, then starts a new debugging session.
Restore Window
The Restore Window command restores a minimized window (a window reduced to an item in the task bar).
522
IDE 5.6 User’s Guide
Menu Commands
Resume
The Resume command switches from the IDE to the running application. This menu command only appears after the IDE starts a debugging session and the application being debugged is currently running.
Revert
The Revert command restores the last saved version of the active Editor window.
Right Edges
The Right Edges command of the Align submenu aligns the right edges of the selected components.
Run
The Run command compiles, links, creates a standalone application, and then runs that application. This command is unavailable if the project creates libraries, shared libraries, code resources, and other non-application binaries.
Run to Cursor
The Run to Cursor command sets a temporary breakpoint at the line of source code that has the text-insertion point, then runs the program.
S
Save
The Save command saves the contents of the active window to disk.
Save A Copy As
The Save A Copy As command saves the active window to a separate file. This command operates in different ways, depending on the active window.
IDE 5.6 User’s Guide
523
Menu Commands
Save All
The Save All command saves all currently open editor files.
NOTE
Mac OS: Press the Option key to change the Save command to the
Save All menu command.
Save As
The Save As command saves the contents of the active window to disk under a different name.
Save Default Window
This command saves the window settings, such as position and size, of the active
Browser or Search Results window. The IDE applies the saved settings to subsequently opened windows.
Save Workspace
This command saves the current state of onscreen windows, recent items, and debugging. Use the dialog box that appears to name the workspace and navigate to a location in which to store the workspace file.
Save Workspace As
This command saves a copy of an existing workspace. Use this command to save the workspace under a different name.
Select All
The Select All command selects all text in the active window or text box. This command is usually used in conjunction with other Edit menu commands such as Cut, Copy, and Clear.
Send To Back
The Send To Back command moves the selected window behind all other windows.
524
IDE 5.6 User’s Guide
Menu Commands
Set Breakpoint
The Set Breakpoint command sets a breakpoint at the currently selected line. If the Show Breakpoints option is active, the Breakpoints column in the editor windows will display a marker next to each line with a breakpoint.
Set/Clear Breakpoint
The Set/Clear Breakpoint command displays the Set/Clear Breakpoints dialog that lets you set or clear a breakpoint at a particular address or symbol.
Set Default Project
The Set Default Project command sets a particular project as the default project when more than one project is open. This is the project that all commands are directed.
Set Default Target
The Set Default Target command allows you to specify a different build target within the current project. Choose the build target to work with from the submenu. This menu command is useful for switching between multiple build targets in a project and performing a build for each target.
Set Eventpoint
This command opens a submenu that lets you set an eventpoint at the currently selected line. If the Show Breakpoints option is enabled, the Breakpoints column in the editor windows shows a marker next to each line with an eventpoint. The marker represents the eventpoint type.
Set Watchpoint
The Set Watchpoint command sets a watchpoint for the selected variable or memory range. Watchpoint variables are identified using an underline.
Shift Left
The Shift Left command shifts the selected source code one tab to the left. The amount of shift is controlled by the Tab Size option.
IDE 5.6 User’s Guide
525
Menu Commands
Shift Right
The Shift Right command shifts the selected source code one tab to the right.
The amount of shift is controlled by the Tab Size option.
Show Breakpoints
The Show Breakpoints command displays the Breakpoints column in editor windows. When active, the Breakpoints column appears along the left edge of all editor windows.
Show Floating Toolbar
The Show Floating Toolbar command displays the IDE’s floating toolbar. After displaying the floating toolbar, the command changes to Hide Floating Toolbar.
Show Main Toolbar
The Show Main Toolbar command displays the IDE’s main toolbar. After displaying the main toolbar, the command changes to Hide Main Toolbar.
Show Types
The Show Types command displays the data types of all local and global variables that appear in the active variable pane or variable window.
Show Window Toolbar
The Show Window Toolbar command displays the toolbar in the active window. After displaying the window toolbar, the command changes to Hide
Window Toolbar.
Stack Editor Windows
The Stack Editor Windows command arranges open editor windows one on top of another, with their window titles visible.
Step Into
The Step Into command executes a single statement, stepping into function calls.
526
IDE 5.6 User’s Guide
Menu Commands
Step Out
The Step Out command executes the remainder of the current function, then exits to that function’s caller.
Step Over
The Step Over command executes a single statement, stepping over function calls.
Stop
This command temporarily suspends execution of the target program and returns control to the debugger.
Stop Build
The Stop Build command halts the build currently in progress.
Switch to Monitor
This command transfers control from the CodeWarrior debugger to an external third-party debugger.
Symbolics or Symbolics Window
These commands open the Symbolics window. Use this window to examine the executable files in a project.
Synchronize Modification Dates
The Synchronize Modification Dates command updates the modification dates stored in the project file. The IDE checks the modification date of each file in the project and marks (for recompiling) those files modified since the last successful compile process.
IDE 5.6 User’s Guide
527
Menu Commands
T-U
Target Settings
The Target Settings command displays the Target Settings window. This window contains settings panels used by the active build target. The name of the menu command changes, based on the name of the current build target. For example, if the name of the current build target is
ReleaseTarget
, the name of the menu command changes to ReleaseTarget Settings.
Tile Editor Windows
The Tile Editor Windows command arranges and resizes all open editor windows so that none overlap on the monitor.
Figure 30.1 Tile Editor windows—example
528
Tile Editor Windows Vertically
The Tile Editor Windows Vertically command resizes all open editor windows to be vertically long, and arranged horizontally across the monitor so that all are viewable.
Tile Horizontally
This command arranges open editor windows horizontally so that none overlap.
IDE 5.6 User’s Guide
Menu Commands
Figure 30.2 Tile horizontally—example
Tile Vertically
This command resizes open editor windows vertically and arranges them so that none overlap.
Figure 30.3 Tile vertically—example
To Grid
The To Grid command of the Align submenu aligns selected components to a grid in the layout. You can display or hide the on screen grid.
To Largest Height
The To Largest Height command of the Resize submenu resizes the selected components to match the height of the component with the largest height.
IDE 5.6 User’s Guide
529
Menu Commands
To Largest Width
The To Largest Width command of the Resize submenu resizes the selected components to match the width of the component with the largest width.
Toolbars
The Toolbars command reveals the Toolbars submenu.
See also:
•
“Show Window Toolbar” on page 526
•
“Hide Window Toolbar” on page 513
•
“Reset Window Toolbar” on page 522
•
“Clear Window Toolbar” on page 502
•
“Show Main Toolbar” on page 526
•
“Hide Main Toolbar” on page 513
•
“Reset Main Toolbar” on page 522
•
“Clear Main Toolbar” on page 502
•
“Hide Floating Toolbar” on page 513
•
“Show Floating Toolbar” on page 526
•
“Reset Floating Toolbar” on page 521
•
“Clear Floating Toolbar” on page 502
ToolServer Worksheet
The ToolServer Worksheet command opens the ToolServer Worksheet window for use with the Apple
®
ToolServer
™
application program.
The IDE can disable this command for these reasons:
• You did not install ToolServer on your computer.
• You installed ToolServer on your computer, but you did not start it.
Top Edges
The Top Edges command of the Align submenu aligns the top edges of the selected components.
530
IDE 5.6 User’s Guide
Menu Commands
To Smallest Height
The To Smallest Height command of the Resize submenu resizes the selected components to match the height of the component with the smallest height.
To Smallest Width
The To Smallest Width command of the Resize submenu resizes selected components to match the width of the component with the smallest width.
Unanchor Floating Toolbar
The Unanchor Floating Toolbar command detaches the floating toolbar from beneath the menu bar.
Unapply Difference
The Unapply Difference command reverses the action of the
Apply
Difference command in a file-comparison window.
Uncaught Exceptions Only
The Uncaught Exceptions Only command of the Java submenu instructs the debugger to break only on unhandled exceptions.
Undo
The Undo command reverses the last action. The name of this menu command changes based upon the editor settings as well as the most recent action. For example, after typing text in an open Editor window, the
Undo command changes its name to
Undo Typing. Choose the Undo Typing command to remove the typed text.
By default, only one undo or redo action is allowed. If the Use multiple undo option is enabled, undo and redo can act upon multiple actions.
Ungroup
The Ungroup command separates a selected group so that you can move each component independently.
IDE 5.6 User’s Guide
531
Menu Commands
V-Z
Version Control Settings
The Version Control Settings command opens the VCS Settings window.
Vertical Center
The Vertical Center command of the Align submenu aligns the vertical centers of the selected components.
View Array
The View Array command creates a separate window to display a selected array.
View As
The View As command displays a selected variable in a specified data type.
View As Binary
The View As Binary command displays the selected variable as a binary value.
View As Character
The View As Character command displays the selected variable as a character value.
View As C String
The View As C String command displays the selected variable as a C character string.
View As Default
The View As Default command displays the selected variable in its default format, based on the variable’s type.
532
IDE 5.6 User’s Guide
Menu Commands
View As Enumeration
The View As Enumeration command displays the selected variable as an enumeration.
View As Fixed
The View As Fixed command displays the selected variable as a fixed-type numerical value.
View As Floating Point
The View As Floating Point command displays the selected variable as a floating-point value.
View As Fract
This command displays the selected variable as a fractional data type.
NOTE
The fractional data type is specific to the Mac OS.
View As Hexadecimal
The View As Hexadecimal command displays the selected variable as a hexadecimal value.
View As Pascal String
The View As Pascal String command displays the selected variable as a Pascal character string.
View As Signed Decimal
This command displays the selected variable as a signed decimal value.
View As Unicode String
The View As Unicode String command displays the selected variable as a
Unicode character string.
IDE 5.6 User’s Guide
533
Menu Commands
View As Unsigned Decimal
The View As Unsigned Decimal command displays the selected variable as an unsigned decimal value.
View Disassembly
This command changes the data view to show language disassembly.
View Memory
The View Memory command displays the contents of memory as a hexadecimal/
ASCII character dump.
View Memory As
The View Memory As command displays the memory that a selected variable occupies or the memory to which a selected register points.
View Mixed
This command changes the data view to show source code intermixed with assembly code.
View Raw Data
This command changes the data view to show raw data (instead of formatting that data as source code, disassembly, or another format).
View Source
This command changes the data view to show source code.
View Variable
The View Variable command creates a separate window to display a selected variable.
534
IDE 5.6 User’s Guide
Menu Commands
Zoom Window
The Zoom Window command expands the active window to its previously set size. Choose Zoom Window a second time to return the window to its original size.
IDE 5.6 User’s Guide
535
Menu Commands
536
IDE 5.6 User’s Guide
Index
Symbols
#include
%file
%line
(Scripts)
.*[_]Data
.mcp
\(.*\)
^var
__throw()
A
about
Files page in Project window 46
special breakpoints 221 watchpoints 221
About Freescale CodeWarrior menu
Absolute Path option
in Source Trees preference panel 455 in Type list box 455
access breakpoint - refer to watchpoints 244
Access Paths settings panel 369
columns
options
IDE 5.6 User’s Guide
Interpret DOS and Unix Paths 403
Require Framework Style Includes 403
Activate Browser Coloring option 423
Activate Browser option
and relation to Symbolics window 279
Activate Syntax Coloring option 423
activating automatic code completion 103
adding
gray background behind IDE. See Use
Multiple Document Interface, turning on.
advanced topics
,
,
All Info option, in Plugin Diagnostics 443
537
alphabetical sorting of Functions list pop-up 115
Always Search User Paths option 424
Analyzer Can Cause Target Breakpoint
Analyzer Configuration File text box 315
Analyzer Connections target settings panel 313
Anchor Floating Toolbar command 498
applications
Apply Address Offset checkbox 297
arrays, setting default viewing size for
arrows
assigning
Attempt To Use Dynamic Type of C++, Object
Pascal And SOM Objects option 424
Auto Target Libraries option 424
Auto, of Text View list box 276
auto-complete code. See code completion.
Automatic Invocation option 425
Automatically Launch Applications When SYM
Auto-target Libraries option 424
B
background, desktop
removing from behind IDE. See Use
Multiple Document Interface, turning on.
seeing behind IDE. See Use Multiple
Document Interface, turning off.
Balance Flash Delay option 426
Balance While Typing option 426
Bit Value Modifier list box 274
Bitfield Description option
boxes
Break On C++ Exception menu command 499
Break on Java Exceptions command 499
Breakpoint Properties button 224
breakpoint template, defined 222
breakpoint templates
breakpoints
IDE 5.6 User’s Guide
538
Breakpoints column, in editor window 95
Breakpoint Properties button 224
Create Breakpoint Template button 224
Set Default Breakpoint Template button 224
Breakpoints Window menu command 499
breakpoints, disabling 228 breakpoints, enabling 228
breakpoints, viewing properties for 227
Bring To Front menu command 499
Bring Up To Date
Bring Up To Date menu command 437
Browse In Processes Window option 395
,
creating new member functions 194
,
printing class hierarchies 181
purpose of 161 setting options 161
viewing data by inheritance 180
browser database
Build Before Running option 427
Build Extras panel options
Use modification date caching 457
Build Extras settings panel 279
options
IDE 5.6 User’s Guide
539
Dump internal browse information after
Generate Browser Data From 406
Use modification date caching 405
Build Extras target settings panel 510
Build Progress menu command 500
Build Progress Window menu command 500
Build Settings panel options
Play sound after ‘Bring Up To Date’ &
Save open files before build 448
Show message after building up-to-date
Use Local Project Data Storage 456
Build Settings preference panel 361
options
Play sound after ‘Bring Up To Date’ &
Save open files before build 362
Show message after building up-to-date
Use Local Project Data Storage 363
build system
Bus Noise test subtests
Maximum Invert Convergence 312
Sequential 311 bus noise, defined 311
Button
buttons
,
Create Breakpoint Template 224
IDE 5.6 User’s Guide
540
Set Default Breakpoint Template 224
C
cache
Cache Edited Files Between Debug Sessions
Cache Symbolics Between Runs option 428
caching
#include
files 440 precompiled headers 440
,
IDE 5.6 User’s Guide
Cancel button, in Remove Markers window 117
Change Program Counter menu command 500
changing
line views in a hierarchical window 182
register data views 271 register values 271
Checkbox
checkboxes
Analyzer Can Cause Target Breakpoint 316
Compare text file contents 150
Erase Sectors Individually 299
,
,
Target Breakpoint Can Cause Analyzer
541
Checkout Status column
in Files view of Project window 47
choosing
one character from many in regular
class browser
purpose of windows 167 working with windows 167
Class Browser menu command 501
class data
viewing from hierarchy windows 172
Class Hierarchy menu command 501
Class Hierarchy Window menu command 501
class hierarchy windows
purpose of 179 working with 179
classes
hiding pane for 175 showing pane for 175 sorting list of 175
classes.zip
Clear All Breakpoints menu command 501
Clear All Watchpoints menu command 501
Clear Breakpoint menu command 501
Clear Eventpoint menu command 502
Clear Floating Toolbar command in Toolbar
IDE 5.6 User’s Guide
Clear Main Toolbar menu command 502
Clear Watchpoint menu command 502
Clear Window Toolbar command in Toolbar
clearing
Clone Existing Target option 56
Close All Editor Documents menu command 503
Close Catalog menu command 503
Close Non-debugging Windows option 428
Close Workspace menu command 503
closing
code
disabling special breakpoints 248
enabling special breakpoints 249
viewing breakpoint properties 227
viewing eventpoint properties 242
viewing watchpoint properties 246
Code column
in Files view of Project window 46
542
code completion
activating automatic behavior 103 configuration 103
deactivating automatic behavior 105
for data members 109 for parameter lists 109
triggering by keyboard 104 triggering from IDE menu bar 104
Code Completion Delay option 428
Code Completion preference panel 375
options
Window follows insertion point 376
code completion, triggering from IDE menu
Code Formatting preference panel 376
options
Close Braces, Brackets, And
Indent Case Within Switch
Place Else On Same Line As Closing
Place Opening Brace On Separate
Use Automatic Code Formatting 377
CodeWarrior
CodeWarrior Glossary command 503
CodeWarrior Help menu command 503
CodeWarrior IDE
IDE 5.6 User’s Guide
Collapse Non-debugging Windows option 429
Collapse Window menu command 504
collapsing
Command Actions
Command Group
issuing command lines 322 opening 322
Commands
About Freescale CodeWarrior 497
543
Close All Editor Documents 503
IDE 5.6 User’s Guide
Errors And Warnings Window 508
Export Project as GNU Makefile 508
Find Definition & Reference 120
,
,
,
544
,
Remove Object Code & Compact 519
IDE 5.6 User’s Guide
Single Class Hierarchy Window 169
Synchronize Modification Dates 527
Commands & Key Bindings menu command 503
Commands&KeyBindings.mkb file 355
Comments Only option button 125
545
Common Subexpression Elimination 413
Compare Files menu command 504
Compare Files Setup window 149
Compare Text File Contents checkbox 150
Ignore Extra Space checkbox 150
Only Show Different Files checkbox 150
Compare Text File Contents checkbox 150
comparing files
comparing files, explained 152
comparing folders
comparing folders, explained 155
comparison
destination item 148 source item 148
compiler
Compiler option, in Generate Browser Data From
compiler thread stack
and avoiding compiler crashes 429
Compiler Thread Stack field 429
Complete Code menu command 503
Component Object Model. See COM.
Concurrent Compiles panel options
Concurrent Compiles preference panel 363
options
condition, breakpoint property 227
conditional access breakpoint 247
conditional breakpoint, defined 230
conditional eventpoint, defined 243
conditional eventpoints
conditional watchpoint, defined 247
conditional watchpoints
configuring
projects for a logic analyzer 313
Confirm “Kill Process” When Closing Or
Confirm Invalid File Modification Dates When
Connection pop-up menu, in Remote Debugging
console applications
applications creating console applications
console applications, about 85
constant
contents
Context Popup Delay option 430
Open In Windows Explorer command 47
IDE 5.6 User’s Guide
546
controlling program execution 203
conventions
Copy And Expression Propagation 413
Copy To Expression command 504
Create Breakpoint Template button 224
Create Design menu command 504
Create Target menu command 505
creating
new data member 197 new data members 197
cross-platform migration, and opening
Customize IDE Commands window 143
,
IDE 5.6 User’s Guide
Numeric Keypad Bindings checkbox 357
CVS
D
Data column
in Files view of Project window 46
data members
,
data, for debugger, working with 279
database
deactivating automatic code completion 105
Debug column
in Files view of Project window 46
Clear All Breakpoints command 475
Disable Watchpoint command 475
choosing for an opened symbolics file 395
547
Debugger section, of IDE preference panels 387
options
Cache symbolics between runs 420
Default language entry point 420
Location of Relocated Libraries and
,
Stop on application launch 420
Update data every n seconds 455
Update data every n seconds 420
debugging
default breakpoint template 231
Default File Format option 430
default filename extensions 434
Default Language Entry Point option
default size and position of windows, setting 524
Default Size For Unbounded Arrays option 431
default workspace
definition
of breakpoint template 222 of breakpoints 222
of child windows 70 of client area 70
desktop background
removing from behind IDE. See Use
Multiple Document Interface, turning on.
seeing behind IDE. See Use Multiple
Document Interface, turning off.
destination item, for comparison 148
details
,
development-process cycle for software 21
diagnostics
disabling for plug-ins 497 enabling for plug-ins 497
dialog boxes
difference from Single-Class Hierarchy
Disable Breakpoint menu command 506
IDE 5.6 User’s Guide
548
Disable Third Party COM Plugins option 431
Disable Watchpoint menu command 506
disabling
disclosure triangles
Display Deprecated Items option 431
options
Show tasks in separate windows 451
Show values as decimal instead of
Show variable values in source
Sort functions by method name in
Display Settings preference panel 387
options
Attempt to use dynamic type of C++,
Object Pascal and SOM objects 389
Default size for unbounded arrays 389
Show tasks in separate windows 391
Show values as decimal instead of
Show variable values in source
Sort functions by method name in
Do Nothing To Project Windows option 431
dock, defined 69 dockable windows 69
docking windows of the same kind 74
Document Settings list pop-up 93
document settings pop-up
documentation
Documents option
Don’t Step Into Runtime Support Code 432
Don’t Step Into Runtime Support Code
Done button, in Remove Markers window 117
drag and drop
Drag And Drop Editing option 432
Dump Internal Browse Information After
E
editing
Editor section, of IDE preference panels 375
Editor Settings panel
IDE 5.6 User’s Guide
549
options
Left margin click selects line 442
Editor Settings preference panel 378
options
Left margin click selects line 380
collapsing toolbar in 92 expanding toolbar in 92
line and column indicator 95 pane splitter controls 95
removing panes from 96 resizing panes 96
editor windows
IDE 5.6 User’s Guide
,
empty projects
Enable Automatic Toolbar Help option 433
Enable Breakpoint menu command 507
Enable Remote Debugging option 433
Enable Virtual Space option 433
Enable Watchpoint menu command 507
enabling
enlarging panes, in browser 173
Enter Find String menu command 507
Enter Replace String menu command 507
Entire Flash option button 300
Environment Settings option 433
Environment Variable option
of Source Trees preference panel 455
Environment Variable option, in Type pop-up
environment variables
Erase Sectors Individually checkbox 299
Errors And Warnings menu command 508
Errors And Warnings Window menu
Errors Only option
eventpoints
550
,
Sound Point, Speak Message 239
Trace Collection Off, clearing 241
Trace Collection Off, setting 241
Trace Collection On, clearing 242
Trace Collection On, setting 241
working with 242 eventpoints, disabling 242 eventpoints, viewing properties for 242
Exceptions In Targeted Classes command in Java
executable files
adding to the Other Executables list 418 changing in the Other Executables list 418
removing from the Other Executables
execution
execution, resuming 210 execution, stopping 210
Expand Window menu command 508
expanding
Export Project as GNU Makefile menu
Export Project menu command 508
exporting
Expressions Window menu command 509
external editor
F
,
fields
File
File column
in Files view of Project window 46
%file
File Compare Results window 152
IDE 5.6 User’s Guide
551
File Mappings settings panel 408
options
File On Host option button 300
File On Target option button 300
file paths
file-info, breakpoint property 227
filename extensions
files
destination (for a comparison) 148
print selections 64 printing 64
IDE 5.6 User’s Guide
untouching 55 untouching all 55
Files In Both Folders pane 157
Files Only In Destination pane 157
Find
Find and compare operations option
Find And Open ‘Filename’ menu command 510
Find and Open File command 510
Find and Replace
Find And Replace menu command 511
Find and Replace window
552
Comments Only option button 128
Regular Expression checkbox 127
Replace With text/list box 127
Search Selection Only checkbox 128
Stop At End Of File checkbox 127
Find Definition & Reference command 120
Find Definition & Reference menu command 509
Find Definition menu command 509
Find In Files menu command 510
Find in Files window
Comments Only option button 131
Search Sub-Folders checkbox 132
Search Cached Sub-Targets
Regular Expression checkbox 131
Replace With text/list box 130
Find In Next File menu command 510
Find In Previous File menu command 510
Find Next
Find Previous
enabling in the Customize IDE Commands
Find Previous menu command 511
Find Previous Selection menu command 511
Find Reference menu command 511
Find Reference using option
Find Selection menu command 511
Find symbols with substring 100
Find window
Comments Only option button 125
Regular Expression checkbox 124
Search Selection Only checkbox 125
IDE 5.6 User’s Guide
553
Stop At End Of File checkbox 125
finding text
Flash Memory Base Address text box 294
flash programmer panels
Checksum panel
Entire Flash option button 300
File On Host option button 300
File On Target option button 300
Memory Range On Target option
Erase / Blank Check panel
Erase Sectors individually
Flash Configuration panel
Flash Memory Base Address text
IDE 5.6 User’s Guide
Program / Verify panel
Apply Address Offset checkbox 297
Restrict Address Range checkbox 296
Use Selected File checkbox 296
Use Selected File text box 296
Target Configuration panel
Target Memory Buffer Address text
Target Memory Buffer Size text
Target Processor text/list box 293
Use Custom Settings checkbox 292
Use Target Initialization checkbox 293
Use Target Initialization text box 293
View Target Memory Writes
Floating Document Interface. See FDI.
Folder Compare Results window 155
Files In Both Folders pane 157
Files Only In Destination pane 157
554
folders
options
Font & Tabs preference panel 381
options
Font option
Font Preferences option
Foreground option
format, for end of line (EOL) 430
formats
Framework column, in Access Paths panel 404
Full Range Converging subtest 312
function
functions
IDE 5.6 User’s Guide
G
General section, of IDE preference panels 361
Generate Browser Data From option 438
Language Parser, Macro file 439
Language Parser, Prefix file 439
Generate Constructor and Destructor 192
Get Next Completion menu command 512
Get Previous Completion menu command 512
Global Optimizations settings panel 411
options
Global Register Allocation 413
Global Register Allocation Only For Temporary
Global Settings panel options
Select stack crawl window when task is
Global Settings preference panel options
Automatically launch applications
Cache Edited Files Between Debug
Confirm "Kill Process" when closing or
Confirm invalid file modification dates
Don’t step into runtime support
Select stack crawl window when task is
Global Variables menu command 512
555
opening 252 viewing for different processes 252
Global Variables Window menu command 512
going back 116 going forward 116 going to a particular line 116
gray background, adding behind IDE. See Use
Multiple Document Interface, turning on.
gray background, removing from behind IDE. See
Use Multiple Document Interface, turning off.
Grid Size X option
Grid Size Y option
grouping
groups
untouching 55 untouching all 55
H
hardware diagnostic panels
Bus Noise in address lines 311
Hardware Diagnostics window 301
IDE 5.6 User’s Guide
Configuration panel
Target Processor text/list box 304
Use Custom Settings checkbox 303
Use Target Initialization checkbox 304
Use Target Initialization text box 304
Memory Read / Write panel
Memory Tests panel
Target Scratch Memory End text
Target Scratch Memory Start text
Scope Loop panel
556
hardware tools, working with 289
hardware, breakpoint property 228
headers
caching precompiled headers 440
options
Hide Breakpoints menu command 513
Hide Floating Toolbar command 513
Hide Main Toolbar command in Toolbar
Hide non-debugging windows option
Hide Window Toolbar command 513
hiding
Hierarchy Control 180 hierarchy window 180
hierarchy windows
hit count, breakpoint property 227
Host Application for Libraries & Code Resources option
Host Application For Libraries And Code
Resources field
how to
activate automatic code completion 103
IDE 5.6 User’s Guide
add a constant to a variable 258
add a keyword to a keyword set 415
add expressions (Expressions window) 258
add markers to a source file 117
add panes to an editor window 96
adding subprojects to a project 40
alphabetize Functions list pop-up order 115
attach the debugger to a process 285
change line views in a hierarchical
change register data views 271 change register values 271
clear a Trace Collection Off eventpoint 241
clear a Trace Collection On eventpoint 242
collapse the editor window toolbar 92
complete code for data members 109 complete code for parameter lists 109
connect to a logic analyzer 317
create a breakpoint template 231
create a console application 86
557
create a new member function 176
create custom project stationery 39
create new projects from makefiles 34
create new projects using project
deactivate automatic code completion 105
delete a breakpoint template 232
disconnect from a logic analyzer 318
dock a window by using a contextual
dock a window by using drag and drop 73
dock windows of the same kind 74
examine items in the Folder Compare
expand the editor window toolbar 92
export projects to XML files 38
generate project link maps 332
import projects saved as XML files 38
insert a reference template 121
look up symbol definitions 120
make a summation of two variables 258
manipulate variable formats 254
navigate Code Completion window 107
open a single-class hierarchical window 183
IDE 5.6 User’s Guide
open projects created on other hosts 36
open registers in a separate Registers
open the Breakpoints window 225
open the Expressions window 257
open the Flash Programmer window 289
open the Global Variables window 252
open the Hardware Diagnostics window 301
open the Target Settings window 399
remove a keyword from a keyword set 416
remove a marker from a source file 118 remove all markers from a source file 118
remove panes from an editor window 96
replace text in a single file 128
resize panes in an editor window 96
save the contents of the Breakpoints
search for text across multiple files 139
search for text across multiple folders 133
search for text across multiple projects 135
558
search for text across multiple symbolics
search with a text selection 144
select item in Code Completion window 108
select lines 98 select multiple lines 98 select rectangular portions of lines 98
select text in editor windows 97
set a conditional breakpoint 230
set a conditional eventpoint 243
set a conditional watchpoint 247
set a temporary breakpoint 229
set a Trace Collection Off eventpoint 241 set a Trace Collection On eventpoint 241
show the classes pane 175 sort the classes list 175
specify the default breakpoint template 233
step into a routine 209 step out of a routine 209
step over a routine 210 stop program execution 210
toggle automatic punctuation balancing 101
trigger code completion by keyboard 104
trigger code completion from IDE menu
update data from a logic analyzer 317
use an external editor on the Macintosh 367
use the document settings pop-up 93
use the Executables pane in the Symbolics
use the Files pane in the Symbolics
use the Find Next command 143 use the Find Previous command 143
use the Functions list pop-up 114
use the Functions pane in the Symbolics
use the Interfaces list pop-up 114
view breakpoint properties 227
view browser data by contents 184
view browser data by inheritance 180
view class data from hierarchy window 172
view eventpoint properties 242
view global variables for different
view watchpoint properties 246
I
icon
for Tools menu 495 for VCS menu 495
icons
for data members 176 for member functions 176
IDE
,
Hardware Diagnostics window 301
IDE 5.6 User’s Guide
559
project manager and build targets 29
target settings, working with 397
IDE Extras panel options
Use Multiple Document Interface 457
Zoom windows to full screen 461
IDE Extras preference panel 364
options
Enable automatic Toolbar help 366
Use Multiple Document Interface 366
Zoom windows to full screen 366
Use Third Party Editor option 458
IDE Preference Panels list 360
IDE Preference Panels, Font & Tabs 383
IDE Preference Panels, Font Settings 382
IDE preferences
Attempt to use dynamic type of C++, Object
Automatically launch applications when
Cache Edited Files Between Debug
Close Braces, Brackets, And
Close non-debugging windows 390
Collapse non-debugging windows 390
Confirm "Kill Process" when closing or
Confirm invalid file modification dates when
IDE 5.6 User’s Guide
560
Default size for unbounded arrays 389
Disable third party COM plugins 369
Do nothing to project windows 390
Don’t step into runtime support code 393
Enable automatic Toolbar help 366
Find and compare operations 370
Hide non-debugging windows 390
Indent Case Within Switch Statement 378
Left margin click selects line 380
Minimize non-debugging windows 390
Move open windows to debugging monitor
Open windows on debugging monitor during
Place Else On Same Line As Closing
IDE 5.6 User’s Guide
Place Opening Brace On Separate Line 378
Play sound after ‘Bring Up To Date’ &
Save open files before build 362
Select stack crawl window when task is
Set 1, Set 2, Set 3, Set 4 385
Show message after building up-to-date
Show tasks in separate windows 391
Show values as decimal instead of hex 389
Show variable values in source code 389
Sort functions by method name in symbolics
Use Automatic Code Formatting 377
561
Use Local Project Data Storage 363
Use Multiple Document Interface 366
Window follows insertion point 376
Zoom windows to full screen 366
IDE Preference Panels list 360
Ignore Extra Space checkbox 150
Import Components menu command 513
Import Project menu command 514
importing
projects saved as XML files 38
Include file cache option
#include
IDE 5.6 User’s Guide
indenting
Initial Directory field
Insert Reference Template menu command 514
Insert Template Commands option
inserting a reference template 121
inspecting
Integrated Development Environment. See IDE.
interface files
Interfaces list pop-up
in Files view of Project window 47
J
Java Exceptions Submenu
Java Exceptions submenu
Exceptions In Targeted Classes
Uncaught Exceptions Only command 531
K
keyboard shortcuts
Find symbols with substring 100
keys
562
keywords
removing from a keyword set 416
Keywords option
L
Language Parser option, in Generate Browser
Launch Editor option
Launch Editor w/ Line # option
Launch Remote Host Application option
Remote Debugging settings panel 442
Layout Editor panel options
Show the component palette when
Show the object inspector when
layouts
Left margin click selects line option
Level option
Lifetime Based Register Allocation 414
line
line and column indicator, in editor window 95
%line
IDE 5.6 User’s Guide
lines, selecting 98 lines, selecting multiple 98 lines, selecting rectangular portions of 98
link maps
Linker option
Linux
list of symbols in Browser Contents
list boxes
,
list menus
document settings 93 functions 93
list pop-up menus
list pop-ups
document settings 93 functions 93
563
lists
,
Location of Relocated Libraries and Code
Resources option
Treat as Expression checkbox 236
Log System Messages option
Log Window
Log System Messages option 285
Disarm command 317 disarming 317
Disconnect command 318 disconnect from 318
Update Data command 317 updating data from 317
Logic Analyzer connection options
IDE 5.6 User’s Guide
Analyzer Can Cause Target Breakpoint
Analyzer Configuration File text box 315
Target Breakpoint Can Cause Analyzer
Trace Support File text box 316
looking up symbol definitions 120
Loop Unrolling (Opt For Speed Only) 414
Loop-Invariant Code Motion 414
M
Mac OS
Macintosh
Macro file option, in Generate Browser Data
Maintain Files In Cache option 427
Maintain Files in Cache option
makefiles
managing
564
manipulating program execution 221
navigating to 118 removing all from source files 118 removing from source files 118
Markers list, in Remove Markers window 117
matching
any character with regular expressions 146
replace strings to find strings with regular
with simple regular expressions 146
Maximize Window menu command 514
Maximum Invert Convergence subtest 312
.mcp
making a window an MDI child 77
Member Function Declaration 196
member functions
Memory Range On Target option button 300
memory tests
Bus Noise 311 address lines 311
Bus Noise test
Full Range Converging subtest 312
Maximum Invert Convergence
Walking Ones test
Bus Noise test 311 address lines 311
Memory window 261 memory, working with 261
Menu
menu
Menu bar layout option
menu commands
About Freescale CodeWarrior 497
IDE 5.6 User’s Guide
565
Close All Editor Documents 503
Errors And Warnings Window 508
Export Project as GNU Makefile 508
IDE 5.6 User’s Guide
Find Definition & Reference 509
,
566
,
Remove Object Code & Compact 519
Synchronize Modification Dates 527
menu layouts
IDE 5.6 User’s Guide
menu reference
Minimize non-debugging windows option
Minimize Window menu command 515
Monitor for debugging option
Move open windows to debugging monitor when debugging starts option
moving
files 53 groups 53 layouts 53 targets 53
Multi-Class Hierarchy window 179
Multiple Document Interface. See MDI.
multiple folders, searching 133
multiple projects, searching 135
multiple symbolics files, searching 137
multiple-file Find and Replace window 129
N
navigating
567
New C++ Data Member window 198
New C++ Member Function window 196
New Class Browser menu command 515
,
New Command Group
new data member functions
New Event Set menu command 516
New Expression menu command 516
New Member Function menu command 516
New Member Function wizard 176
new member functions
New Menu Command
New Text File menu command 516
None option
None option, in Generate Browser Data From
notes
Numeric Keypad Bindings checkbox
of Customize IDE Commands window 357
O
,
Only Show Different Files checkbox 150
Open In Windows Explorer command 47
Open Scripts Folder menu command 517
Open windows on debugging monitor during debugging option
Open Workspace menu command 517
a single-class hierarchical window 183
Hardware Diagnostics window 301
opening last project (default workspace) 456
opening last project, preventing (default
openings
registers in a separate Registers window 272
optimizations
Common Subexpression Elimination 413
Copy And Expression Propagation 413
Global Register Allocation 413
Global Register Allocation Only For
Lifetime Based Register Allocation 414
Loop Unrolling (Opt For Speed Only) 414
IDE 5.6 User’s Guide
568
Loop-Invariant Code Motion 414
option buttons
,
,
Access Paths settings panel 369
,
Attempt to use dynamic type of C++, Object
Automatically Launch Applications When
Browse in processes window 395
Build Extras settings panel 404
Build Settings preference panel 361
IDE 5.6 User’s Guide
Cache Edited Files Between Debug
Cache symbolics between runs 428
choosing host application for non-executable
Close non-debugging windows 428
Code Completion preference panel 375
Code Formatting preference panel 376
Collapse non-debugging windows 429
Concurrent Compiles preference panel 363
Confirm “Kill Process” when closing or
Confirm invalid file modification dates when
,
Debugger preference panels 387
Default size for unbounded arrays 431
Disable third party COM plugins 431
Display Settings preference panel 387
Do nothing to project windows 431
Dump internal browse information after
Editor Settings preference panel 378
Enable automatic Toolbar help 433
569
File Mappings settings panel 408
Font & Tabs preference panel 381
Generate Browser Data From 438
Global Optimizations settings panel 411
IDE Extras preference panel 364
Other Executables settings panel 417
Plugin Settings preference panel 368
Remote Connections preference panel 393
Remote Debugging settings panel 421
Require Framework Style Includes 448
Set 1, Set 2, Set 3, Set 4 385
Shielded Folders preference panel 369
Source Trees preference panel 371
Target Configuration panel 291
Use Multiple Document Interface 69
Window Follows Insertion Point 460
Window Settings preference panel 389
original process, breakpoint property 228 original-target, breakpoint property 228
IDE 5.6 User’s Guide
Other Executables settings panel 417
Output Directory option
overstrike 99 overstriking text (Windows) 99 overtype. See overstrike.
overview
of browser 25 of build system 25
of IDE project manager and build targets 29
of project manager 25 of search engine 25
P
pages
,
pane resize bar
in File Compare Results window 153
in Folder Compare Results window 157
pane splitter controls, in editor window 95
panel
panels
panes
570
removing from editor window 96 resizing in an editor window 96
parameter lists
Play sound after ‘Bring Up To Date’ & ‘Make’ option
Plugin Diagnostics
plug-in diagnostics
Plugin Settings panel options
Plugin Settings preference panel 368
options
Disable third party COM plugins 369
plug-ins saving information about those installed in
IDE 497 viewing those installed in IDE 497
pop-up menus
document settings 93 functions 93
pop-ups
Post-linker option
precompiled headers
preference panels
preferences
Attempt to use dynamic type of C++, Object
Automatically launch applications when
IDE 5.6 User’s Guide
571
Cache Edited Files Between Debug
Close Braces, Brackets, And
Close non-debugging windows 390
Collapse non-debugging windows 390
Confirm "Kill Process" when closing or
Confirm invalid file modification dates when
Default size for unbounded arrays 389
Disable third party COM plugins 369
Do nothing to project windows 390
Don’t step into runtime support code 393
Enable automatic Toolbar help 366
Find and compare operations 370
IDE 5.6 User’s Guide
Hide non-debugging windows 390
IDE Preference Panels list 360
Indent Case Within Switch Statement 378
Left margin click selects line 380
Minimize non-debugging windows 390
Move open windows to debugging monitor
Open windows on debugging monitor during
Place Else On Same Line As Closing
Place Opening Brace On Separate Line 378
Play sound after ‘Bring Up To Date’ &
572
Save open files before build 362
Select stack crawl window when task is
Set 1, Set 2, Set 3, Set 4 385
Show message after building up-to-date
Show tasks in separate window 391
Show values as decimal instead of hex 389
Show variable values in source code 389
Sort functions by method name in symbolics
Use Automatic Code Formatting 377
Use Local Project Data Storage 363
Use Multiple Document Interface 366
Window follows insertion point 376
Zoom windows to full screen 366
Prefix file option, in Generate Browser Data From
prefix keys
Pre-linker option
printing
process
process cycle
processes
viewing global variables for 252
Processes Window menu command 518
products saving information about those installed in
IDE 497 viewing those installed in IDE 497
Profile window
program
Program Arguments field
of Runtime Settings panel (Windows) 446
Program Arguments option
Program Entry Point option
program execution, manipulating 221
IDE 5.6 User’s Guide
573
project
configuring for a logic analyzer 313
Project Commands option
Remove Object Code command 473
Project operations option
project stationery
Project window
Files view
Synchronize Modification Dates toolbar
Target Settings toolbar button 44
projects
IDE 5.6 User’s Guide
reopening last one used (default
reopening last one used, preventing (default
subprojects, strategies for 42
Projects option
properties
condition, breakpoint 227 file-info, breakpoint 227
hit count, breakpoint 227 name, breakpoint 227
original process, breakpoint 228 original-target, breakpoint 228
thread, breakpoint 228 times hit, breakpoint 228 times left, breakpoint 228
punctuation balancing, toggling 101
pure virtual
574
purpose
of Browser Contents window 183
of Classes pane in browser 174
of Multi-Class Hierarchy window 179
of Single-Class Hierarchy window 182
Q
QuickView, THINK Reference 120
Quote Key prefix 356 assigning 356
R
,
Recursive Search column, in Access Paths
reference information
reference template, inserting 121
reference templates (Macintosh) 120
Refresh All Data menu command 519
Register Description option
Register Details option
Bit Value Modifier list box 274
IDE 5.6 User’s Guide
Bitfield Description text view option 276
Register Description text view option 276
Register Details text view option 277
,
Register Details Window command 272
Register Details Window menu command 519
Register Windows menu command 519
registers
changing data views of 271 changing values of 271
Registry Key option
of Source Trees preference panel 455
Registry Key option, in Type pop-up menu 455
Regular Expression checkbox 124
Regular Expression option
.*[_]Data
\(.*\)
choosing one character from many 147
575
CVS
matching any character 146 matching simple expressions 146
using the find string in the replace
Relaxed C popup parsing option
remembering last project (default
remembering last project, turning off (default
remote connections
Remote Connections preference panel 393
options
Remote Debugging settings panel 421
options
Launch remote host application 442
Remove button, in Remove Markers window 117
Remove Object Code & Compact menu
Remove Object Code menu command 519
removing
desktop background from behind IDE. See
Use Multiple Document Interface, turning on.
gray background from behind IDE. See Use
Multiple Document Interface, turning off.
renaming
files 53 groups 53 layouts 53 targets 53
reopening last project used
in default workspace 456 suppressing in the default workspace 456
Replace and Find Next menu command 520
Replace and Find Previous command 520
Replace With text/list box 127
replacing
Require Framework Style Includes 448
Reset Window Toolbar command in Toolbar
resetting
resize bars
Resize submenu
To Smallest Height command 531
resizing
restarting
IDE 5.6 User’s Guide
576
Restore Window command (Windows) 522
Restrict Address Range checkbox 296
results
resuming program execution 210
reverting
preference panels 448 settings panels 448
routine
stepping into 209 stepping out of 209
routine, selecting entirely 98
,
,
Run To Cursor menu command 523
running
Host Application For Libraries And Code
options
Host Application for Libraries & Code
Program Arguments field (Windows) 446
S
Save Default Window menu command 524
Save open files before build option
Save project entries using relative paths option
Save Workspace As menu command 524
Save Workspace menu command 524
saving
information about installed plug-ins 497 information about installed products 497
Script Point Settings window
(Scripts)
,
Scripts option
search single characters with regular
using finds strings in replace strings with
Search Cached Sub-Targets checkbox 134
search engine
IDE 5.6 User’s Guide
577
setting default size and position of 524
Source Code Pane disclosure triangle 142
Search Selection Only checkbox 125
Search Status column, in Access Paths panel 403
Search Sub-Folders checkbox 132
searching choosing one character from many in regular
expressions 147 grouping regular expressions 147
single characters with regular
using finds strings in replace strings with
with simple regular expressions 146
seeing desktop background behind IDE. See Use
Multiple Document Interface, turning off.
Select stack crawl window when task is stopped option
selecting
Code Completion window items 108
Selection position option
selections
serial number, breakpoint property 227
Set 1, Set 2, Set 3, Set 4 385
Set Breakpoint menu command 525
Set Default Breakpoint Template button 224
Set Default Project command 38
Set Default Project menu command 525
Set Default Target menu command 525
Set Eventpoint menu command 525
Set Watchpoint menu command 525
setting
setting default size and position of windows 524
settings
Cache symbolics between runs 420
Default language entry point 420
Dump internal browse information after
Generate Browser Data From 406
Host Application for Libraries & Code
IDE 5.6 User’s Guide
578
Interpret DOS and Unix Paths 403
Require Framework Style Includes 403
Save project entries using relative paths 401
Stop on application launch 420
Target Settings Panels list 399
Update data every n seconds 420
Use modification date caching 405
settings panels
,
setup
Shielded Folders panel options
Find and compare operations 437
Shielded Folders preference panel 369
options
Find and compare operations 370
Show all locals option
Show Breakpoints menu command 501
Show Floating Toolbar command 513
Show Floating Toolbar command in Toolbar
Show message after building up-to-date project option
Show tasks in separate windows option
Show the component palette when opening a form option
Show the object inspector when opening a form option
IDE 5.6 User’s Guide
579
Show values as decimal instead of hex option
Show variable location option
Show variable types option
Show variable values in source code option
Show Window Toolbar command 513
Show Window Toolbar command in Toolbar
showing
shrinking panes, in browser 173
Single Class Hierarchy Window 169
single-class hierarchical window
Single-Class Hierarchy window 182
difference from Multi-Class Hierarchy
single-file Find and Replace window 126
size
setting default for unbounded arrays 431
Size option
software
Solaris
Sort function popup option
Sort functions by method name in symbolics window option
Sort Order button
in Files view of Project window 47
sorting
Functions list pop-up (alphabetically) 115
IDE 5.6 User’s Guide
Sound Point Settings window
Sound Point, Speak Message 239
source code
disabling special breakpoints 248
enabling special breakpoints 249
going to a particular line 116
viewing breakpoint properties 227
viewing eventpoint properties 242
viewing watchpoint properties 246
Source Code Pane disclosure triangle 142
source file
source files
removing all markers from 118 removing markers from 118
source item, for comparison 148
,
Source Pane disclosure triangle 207
source trees
Source Trees panel options
580
Source Trees preference panel 371
Environment Variable option 455
Source Trees settings panel 371
special breakpoints
special breakpoints, disabling 248
special breakpoints, enabling 249
Stack Editor Windows menu command 526
starting
state
static
stationery
,
Status area
stepping into a routine 209 stepping out of a routine 209
IDE 5.6 User’s Guide
Stop At End Of File checkbox 125
Stop at Watchpoints option
Stop On Application Launch option
stopping program execution 210
strategies
for build targets 41 for projects 41
Strings option
structure
submenus
,
subprojects
Success option
summation, of two variables 258
Switch To Monitor menu command 527
,
120 symbol definitions, looking up 120
symbol hint
toggling 212 turning off 212 turning on 212 using 212
symbol implementations
symbolics files
581
Symbolics option
opening 281 using the Executables pane 281
,
Symbolics Window menu command 527
symbols
viewing all implementations 187
Symbols list
in Browser Contents window 184
toolbar 187 symbols window 187
Synchronize Modification Dates command 50
Synchronize Modification Dates menu
Synchronize Modification Dates toolbar
System Paths list
System Paths option
T
Tab indents selection option
Tab Inserts Spaces option
Tab Size option
tabs
IDE 5.6 User’s Guide
Target Breakpoint Can Cause Analyzer Trigger
Target column
in Files view of Project window 46
Target Configuration panel 291
Target Memory Buffer Address text box 293
Target Memory Buffer Size text box 293
Target Name option
Target Processor text/list box 293
Target Scratch Memory End text box 309
Target Scratch Memory Start text box 309
target settings
Cache symbolics between runs 420
Default language entry point 420
Dump internal browse information after
582
Generate Browser Data From 406
Host Application for Libraries & Code
Interpret DOS and Unix Paths 403
Require Framework Style Includes 403
Save project entries using relative paths 401
Stop on application launch 420
Target Settings Panels list 399
Update data every n seconds 420
Use modification date caching 405
options
Save project entries using relative
target settings panels
,
Target Settings Panels list 399
Target Settings toolbar button 44
Target Settings Panels list 399
,
tasks
activating automatic code completion 103
IDE 5.6 User’s Guide
583
adding a constant to a variable 258
adding a keyword to a keyword set 415
adding expressions (Expressions
adding markers to a source file 117
adding panes to an editor window 96
adding subprojects to a project 40
alphabetizing Functions list pop-up
attaching the debugger to a process 285
changing an executable file 418
changing line views in a hierarchical
changing register data views 271 changing register values 271
changing remote connections 395
choosing folders to compare 151
clearing a Trace Collection Off
clearing a Trace Collection On
collapsing the editor window toolbar 92
completing code for data members 109
IDE 5.6 User’s Guide
completing code for parameter lists 109
connecting to a logic analyzer 317
creating a breakpoint template 231
creating a console application 86
creating a new data member 177
creating a new member function 176
,
creating custom project stationery 39
creating new projects from makefiles 34
creating new projects using project
deactivating automatic code completion 105
deleting a breakpoint template 232
disarming a logic analyzer 317
disconnecting from a logic analyzer 318
docking a window by using a contextual
docking a window by using drag and
docking windows of the same kind 74
examining items in the Folder Compare
expanding the editor window toolbar 92
exporting projects to XML files 38
generating project link maps 332
going to a particular line 116
importing projects saved as XML files 38
inserting a reference template 121
looking up symbol definitions 120
making a summation of two variables 258
making a window an MDI child 77
manipulating variable formats 254
584
navigating Code Completion window 107
opening a single-class hierarchical
opening projects created on other hosts 36
opening registers in a separate Registers
opening the Breakpoints window 225
opening the Command window 322
opening the Expressions window 257
opening the Flash Programmer window 289
opening the Global Variables window 252
opening the Hardware Diagnostics
opening the Processes window 282
opening the Profile window 320
opening the Registers window 270
opening the Symbolics window 281
opening the symbols window 187
opening the Target Settings window 399
overstriking text (Windows) 99
printing class hierarchies 181
removing a keyword from a keyword
removing a marker from a source file 118 removing all markers from a source file 118
removing an executable file 419
removing panes from an editor window 96
removing remote connections 396
replacing text in a single file 128
resizing panes in an editor window 96
resuming program execution 210
saving a copy of a workspace 83
IDE 5.6 User’s Guide
saving the contents of the Breakpoints
searching for text across multiple files 139
searching for text across multiple
searching for text across multiple
searching for text across multiple symbolics
searching with a text selection 144
selecting item in Code Completion
selecting lines 98 selecting multiple lines 98 selecting rectangular portions of lines 98
selecting text in editor windows 97
setting a conditional breakpoint 230
setting a conditional eventpoint 243
setting a conditional watchpoint 247
setting a temporary breakpoint 229
setting a Trace Collection Off
setting a Trace Collection On
showing the classes pane 175 sorting the classes list 175
specifying the default breakpoint
stepping into a routine 209 stepping out of a routine 209
stepping over a routine 210 stopping program execution 210
suppressing dockable windows 77
toggling automatic punctuation
585
triggering code completion by keyboard 104
triggering code completion from IDE menu
unapplying file differences 155
updating data from a logic analyzer 317
using an external editor on the
using the default workspace 82
using the document settings pop-up 93
using the Executables pane in the Symbolics
using the Files pane in the Symbolics
using the Find Next command 143 using the Find Previous command 143
using the Functions list pop-up 114
using the Functions pane in the Symbolics
using the Interfaces list pop-up 114
viewing breakpoint properties 227
viewing browser data by contents 184
viewing browser data by inheritance 180
viewing class data from hierarchy
viewing eventpoint properties 242
viewing global variables for different
viewing watchpoint properties 246
template, default for breakpoints 231 template, for breakpoints 231
templates, creating for breakpoints 231
templates, deleting for breakpoints 232
templates, reference (Macintosh) 120
templates, specifying the default for
temporary breakpoint, defined 229
text
searching with a selection 144
text blocks, indenting 100 text blocks, unindenting 100
text boxes
Analyzer Configuration File text box 315
,
,
Target Memory Buffer Address 293
Target Scratch Memory Start 309
Text Colors panel options
Text Colors preference panel options
IDE 5.6 User’s Guide
586
Set 1, Set 2, Set 3, Set 4 385
text editing area, in editor window 95
,
Text View pop-up menu
Bitfield Description option 276
Register Description option 276
text/list boxes
,
third-party editor support 458
third-party text editors
Thread window
current-statement arrow 207 dash 207
IDE 5.6 User’s Guide
Resume button 206 run button 206
Source Pane disclosure triangle 207
Variables Pane Listing button 207
thread, breakpoint property 228
__throw()
Tile Editor Windows command 528
Tile Editor Windows Vertically command 528
times hit, breakpoint property 228 times left, breakpoint property 228
To Smallest Height command in Resize
To Smallest Width command in Resize
toggling
toolbar
collapsing in editor window 92 expanding in editor window 92
Toolbar (Editor Window) Elements
toolbar buttons
587
Single Class Hierarchy Window 169
Synchronize Modification Dates 44
Toolbar submenu
Anchor Floating Toolbar command 498
Clear Floating Toolbar command 502
Clear Main Toolbar command 502
Clear Window Toolbar command 502
Hide Floating Toolbar command 513
Reset Window Toolbar command 49
Show Floating Toolbar command 513
Show Window Toolbar command 526
Toolbars
toolbars
tools
browser 25 build system 25 debugger 25 editor 25 project manager 25 search engine 25
ToolServer Worksheet command 530
IDE 5.6 User’s Guide
touch
in Files view of Project window 46
touching
all files 54 all groups 54 files 54 groups 54
trace
working with logic analyzer 313
Trace Collection Off eventpoint 234
Trace Collection Off eventpoint, clearing 241
Trace Collection Off eventpoint, setting 241
Trace Collection On eventpoint 234
Trace Collection On eventpoint, clearing 242
Trace Collection On eventpoint, setting 241
Trace Support File text box 316
Treat as Expression checkbox 236
triggering
code completion by keyboard 104 code completion from IDE menu bar 104
turning off
turning on
Type list box
Type option
Type pop-up menu
Environment Variable option 455
types
U
Unanchor Floating Toolbar command 531
Unapply Difference command 155
588
unbounded arrays, setting default size for
Uncaught Exceptions Only command 531
untouching
a file 55 a group 55 all files 55 all groups 55
Update Data Every n Seconds option 455
Use Concurrent Compiles option 447
Use Custom Settings checkbox 292
Use Debugging Monitor option 456
Use Default Workspace option 456
Use External Debugger option 456
Use External Editor option 456
Use Local Project Data Storage option 456
Use modification date caching option 457
Use Multiple Document Interface option 69
turning off 366 turning on 366
Use Selected File checkbox 296
Use Selected File text box 296
Use Target Initialization checkbox 293
Use Target Initialization text box 293
Use Third Party Editor option 458
Use ToolServer Menu option 495
Use ToolServer menu option
User Paths list
using
Executables pane in the Symbolics
Files pane in the Symbolics window 281
Functions pane in the Symbolics
V
,
Variable Values Change option
variables
^var
adding a constant to 258 making a summation of 258
Variables Pane Listing button 207
VCS Commands option
VCS pop-up
Version Control Settings command 532
IDE 5.6 User’s Guide
589
Version Control System. See VCS.
Vertical Center command in Align submenu 523
View As Unsigned Decimal menu command 532
,
View Disassembly menu command 534
View Target Memory Writes checkbox 293
View Variable menu command 534
viewing
all symbol implementations 187
browser data by inheritance 180
viewing installed plug-ins 497 viewing installed products 497
virtual
W
Walking Ones test
subtests
Watchpoint Indicator option
watchpoints
setting conditional 247 watchpoints, clearing 247
watchpoints, viewing properties for 246
what is
window
Window Follows Insertion Point option 460
Restore Window command (Windows) 522
Window position and size option
Window Settings preference panel 389
options
Close non-debugging windows 390
Collapse non-debugging windows 390
Do nothing to project windows 390
Hide non-debugging windows 390
Minimize non-debugging windows 390
Move open windows to debugging
monitor when debugging starts 391
Open windows on debugging monitor
window types
Windowing panel options
Hide non-debugging windows 439
Minimize non-debugging windows 444
Move open windows to debugging
monitor when debugging starts 445
IDE 5.6 User’s Guide
590
Open windows on debugging monitor
Windows
dock bars in dockable windows 78
dockable 69 dockable, about 69
docking with a contextual menu 72
Find and Replace (multiple-file) 129
Find and Replace (single-file) 126
remembering size and position of 524
saving default size and position of 524
Wizards
wizards
,
,
working
Working Directory option
working with breakpoint templates 231
working with debugger data 279
working with dockable windows 72
workspace, defined 81 workspaces 81
Workspaces option
IDE 5.6 User’s Guide
591
X
XML
exporting projects 38 importing projects 38
Z
Zoom windows to full screen option
IDE 5.6 User’s Guide
592
Télécharger
Publicité