C++. See Visual C++
C#. See Visual C#
Call Browser, 43
Callers Graph, 43
captions, finding windows with, 241
characters, selecting, 37
Class Name combo box, 35
Class View window, 8
Close method of UndoContext, 257
closing solutions programmatically, 155
CLR (common language runtime), 2
CLS (Common Language Specification), 2
cls command, 49
code analysis tools, adding to Task List, 211
Code Definition Window, 43
Code Editor. See also text editing; Text Editor
breakpoint indicators, 35
Class Name combo box, 35
Code Panes, 35
components of, 34-36
defined, 34
editing shortcuts, 36, 38
extensibility of, 5
file shortcuts, 37
importance of, 5, 33, 36
Indicator Margin, 35-36
line numbering, 44-46
MDI view, 36
Members drop-down list, 35
Method Name combo box, 35
multiple windows for, opening, 35
Navigation Bar, 35
navigation shortcuts, 37-38
outlining feature, 46-47
outlining indicator, 35
purpose of, 33
selecting code along margin, 35
tabbed view, 36
tabbing feature, 6
Text Editor, compared to, 34
transposition shortcuts, 38-39
Types drop-down list, 35
code formatting. See formatting
code samples, download web site, xviii
code snippets, 42-43, 63-64
collaboration. See community content
collapsing code, 46-47
collections, Windows,197-200
COM, 171-173
command bars
AddCommandBar method, 148
bitmaps for, 148-150
button objects, 145-147
CommandBarButton objects, 145
controls, adding to, 147-148
controls collection, 145
elements, adding to, 147
indexes of controls, 147
logical groups in, 147
main menu bar item collection, 146
main menu bar object collection, 147
main point of access to objects, 144
modifying existing items, 150-151
multiple items with same name, 146
new, creating, 148
object model of, 145-146
persisting, 148
popup controls, 145
purpose of, 144
separators, 147
ShowPopup method, 148
Command command, creating, 13
command line
add-in safety indicator values, 129
builds, setting environmental variables, 13
CommandLineSafe values, 129
references, adding, 115
command prompt
Find combo box for, 50
placement of, 13
command state
determining programmatically, 143
drop-down combo boxes, 141-143
MRU button commands, 139-141
MRU combo boxes, 141-143
options of, 138
QueryStatus method, 138-141
Command Window. See also commands
alias creation, 44
arguments in commands, 50
clearing, 49
Command mode, 10
completion feature, 50
defined, 9-10
GUID constant for, 200
Intermediate mode, 10
named commands in, 49
new file creation, 37
object type of, 200
searching with, 49
shortcut key to, 33
Vim, emulating, 49
CommandLoad add-in value, 128-129
commands. See also commands, custom
add-on programs, routing to, 131
AddControl method, 147-148
AddNamedCommand2 method, 135-137
alias creation for macros, 98
aliases, 44
arguments in, 50
bars. See command bars
buttons, adding to command bars, 147-148
collection for, 132-133
Command Windows execution of, 134
creating add-in commands, 135-137
custom. See commands, custom
custom keyboard shortcuts for, 39-40
defined, 131-132
determining command state, 143
disabling, 138
drop-down combo boxes, 141-143
DTE.ExecuteCommand method, 134
editing, 38
enabling, 138
enumerating, 132-133
error loading messages, 144
execution methods, 134-135
file operation shortcuts, 37
GUIDs of, 132-133, 137
handlers, finding, 144
handling custom, 137-138
IDs of, 132, 133, 137
independence from user interface, 132
invoking, 134-135
Item method, 132-133
keystroke shortcuts for macros, 98
latched state, 138
line. See command line
listing in Options box, 133
locating, 132-133
macro names as, 92
macro project, table of, 94-95
macros for executing, 134-135
modifying existing, 150-151
MRU button commands, 139-141
MRU combo boxes, 141-143
nameless, 134
names of, 133-134
notification method, 131-132
object model of, 132
passing data to, 138
placing in command bars, 146
prompts, methods for obtaining, 50
QueryStatus method, 138-141
routing, 131-132
running, 134-135
state of. See command state
transposition, 38-39
user interface. See command bars
commands, custom
add-in handlers, finding, 144
AddNamedCommand method, 137
AddNamedCommand method2, 135
availability state, 136
button text for, 135
buttons for, 147-148
control type parameter, 136
creating, 135-137
demand loading of, 137
determining state programmatically, 143
drop-down combo boxes, 141-143
error loading messages, 144
Exec method arguments, 137-138
graphics for buttons, 136
GUIDs for, 136, 137
handling, 137-138
IDs of, 137
interface for invoking, 137-138
invoking, 137
MRU button commands, 139-141
MRU combo boxes, 141-143
names of, 136
naming, 135
passing data to, 138
placing in command bars, 146
state of. See command state target for, 135
tooltips for, 136
Commands collection, 132-133
comments, searching with Task List, 218-221
common language runtime (CLR), 2
Common Language Specification (CLS), 2
Common Properties folder, 21
common type system (CTS), 2
Common User Accessibility (CUA) shortcuts, 36
community content
add-ins, installing, 64
code samples, web site location, xviii
code snippets, installing, 63-64
ContentBuilder utility, 67
controls, installing, 61-63
creation overview, 58
destination path specification, 60
file format for. See .vsi files
installer for. See Content Installer
item specification, 58
listing files to install, 59
macros, installing, 65
overview of, 55
sample .vscontent file, 59
security issues, 58
signing for distribution, 66
starter kits, 61
templates, installing, 59
testing files, 66
type identification tags, 59
user-defined types. See custom content installers
.vscontent. See .vscontent files
wizard templates. See VSTemplates
zipping for distribution, 65-66
Community Content Installer. See Content Installer
COM objects, references to, 171-173
compiling
add-ins, 115
builds, configuring. See build configurations
Configuration Manager
accessing, 24
ConfigurationManager object, 190-192
solution configurations, 21
specifying projects for builds, 30
configurations
build. See build configurations
project. See project configuration
project properties, 24
solution, storage of, 22
solutions, properties of, 21-22
companion web site, xviii
Connect.cs sample add-in code, 109-110
connectMode parameter, 121
Content Installer
add-ins, installing, 64
code snippets, installing, 63-64. See also code samples, download web site
configuration step, 56
ContentBuilder utility, 67
controls, installing, 61-63
custom type creation. See custom content installers
defined, 55
destination path specification, 60
Export Template Wizard, 75
extensions. See custom content installers
hyperlinks to items, 57
IImportCommunityContent interface, 67-69
installation step, 57
listing files to install, 59
macros, installing, 65
opening .vsi files, 56
registering custom installers, 72-74
security attributes, 74-75
security issues, 58
signing files, 66
starter kits, 61
templates, installing, 59-61
testing files before distributing, 66
type identification tags, 59
types of installable data, 56
UI controls, 70-71
.vscontent file sample, 59
.vsi files, 56
wizard templates. See VSTemplates
zipping process, 65-66
ContentBuilder utility, 67
controls
command bar type, 145
Content Installer, installing with, 61-63
defined, 61
finding existing in forms, 225-226
finding properties, 226
forms, adding to, 225
Parent property, 225
properties collection, 225
Type objects for, 225
UI controls, 70-71
.vscontent files for, 62-63
CreateEditPoint method, 250, 253
CreateToolWindow2 method, 230-231
CTS (common type system), 2
CUA (Common User Accessibility) shortcuts, 36
CurrentTab property of HTMLWindow, 243
custom content installers
AddContentItem method, 68, 69
CopyFile method, 70-75
defined, 67
GetApplicationData method, 70-71
GetImportPages method, 69
IApplicationHostData properties, 71
IContentInstallerSite objects, 69, 70-71
IContentItem objects, 68
interface implementation, 67-69
Next button control, 70
project creation, 67
registration, 72-74
samples installer, 74
security attributes, 74-75
setup execution, 69
ShouldContinue method, 71
site interfaces, 70-71
starter kits for, 67
UI, first page of, 69
UI control, 70-71
custom tool windows
add-in sponsor for, 228
bitmaps for tabs, 232
captions, 228
CreateToolWindow method, 228-229
CreateToolWindow2 method, 230-231
creating, 227-231
GUIDs, 228
OnConnection method issues, 229
OnStartupComplete method, creating in, 229-230
parent window requirements, 229
ProgID of control, 228, 230
programmable objects, 228
Properties window with, 232-233
purpose of, 227
tab-linking of, 231-232
user control objects, 231
VSMediaPlayer sample project, 228
cyclic dependencies, 187