Index

*, 400

., 400, 438, 453–454

/, 165, 400, 412, 416

{ } braces, 500–501

+ plus sign, 36

+ character (keystrokes), 180

$ dollar sign, 500

= sign, 296

A

About dialog text and images, 125

About image format, 125

About information, 87, 124–126, 209

AbstractHandler, 300–301

AbstractPresentationFactory, 322–323

AbstractTextEditor, 498–499

Accelerators, 179, 386–387

ActionBarAdvisor, 55, 85–86, 97–99, 220–223, 267

ActionFactory, 91, 172, 183, 274–276, 278

ActionFactory.PREFERENCES, 172

Action(s)

declarative, 265–273, 277–278

extension points, 234–235

global action handler, 277

Hyperbola, 83–87

progress reporting, 282–289

registering, 86

responsibilites, 264–265

retargetable actions, 275–277

standard actions, 274–275

and the status line, 281–282

toolbar actions, 278–281

actionSetPartAssociation, 234

actionSets, 23–24, 234

Activators, 462–468

Active (bundle), 461

activeWhen, 301

activities extension point, 235

Adapter factory, 75–77, 80–81, 149

Adapter mechanism, 75–78

add() and remove() methods, 365

addActionSet(), 246, 270

AddContactAction, 88–93, 181, 200, 300–301

AddContactAction.ID, 179

addExtension(), 361

addFastView(), 245

addNewWizardShortcut(), 246, 278

addPart(), 323, 331

addPerspectiveShortcut(), 246, 248–249

addPlaceholder(), 245, 252

addRepository, 349

AddSelectionListener(), 255, 265

addShowInPart(), 246

addStandaloneView(), 69, 245

addView(), 69–70, 242, 245, 251–252, 501

Adobe Flash/AIR, 4

Advisors. See Workbench advisors

Agent, 338

alloc(), 365

all-permissions, 436–437

Alt key, 180

Alt+Shift+F1, 43, 296

Alt+Shift+F2, 296

Anchor, 195–196

Anonymous extensions, 393–394

Ant pattern syntax, 400

Ant properties, 406, 409

Ant script generator, 398

Ant scripts, 409

Antrunner, 408

Apache, 138

Application (Eclipse), 52

ApplicationActionBarAdvisor, 91, 182, 190

Applications (Equinox), 22

Applications extension point, 52

ApplicationWorkbenchAdvisor, 52–53, 65, 144, 147, 219, 221, 244

Architecture, 338–341, 474–475

archivePrefix, 402–403

Archives, 431–432

Archiving Hyperbola, 132

Arguments, 296

Arrows, in plug-ins list, 50

Artifacts, 340

ASCII characters (key sequences), 180

Auto-login preferences, 170–175

Automatic updates, 214–215

Auto-substitution, version numbers, 414

B

Back button, 276

base (property), 404

baseLocation (property), 404

baseos, ws, arch (properties), 402, 404

BasicLoginDialog, 156

BeanProperties, 481

BeansObservables, 477

Binary build specification, 130

Binding, 264–265, 475, 484–487

Bin.excludes, 399–400

Bin.includes, 399–400, 415, 436

bmp images, 122–123

bootclasspath (property), 406

Branding Hyperbola

About dialog (text and images), 124–126

product configuration, 115–120

program launcher, 121–122

splash screen, 122–124

window images, 120–121

Breakpoint, 57–60, 409

Browser plug-in, 502

Bug warning, 37

Build scripts, 399–400, 410

buildDirectory, 402–403, 407–408, 412–413, 417–419

buildID, 402–404

buildLabel, 402–404

Build.properties, 399–404, 407, 417–418

buildType, 402–404

build.xml, 417, 419

Bundle cleanup, 465

Bundle lifecycle, 460–465

Bundle listeners, 363–364

Bundle pooling, 443–444

Bundle singleton, 460

BundleActivator, 451–452, 462–463

BundleContext, 451, 503

BundleContext.getService*(), 459

Bundle.getEntry(String), 80

Bundles and plug-ins, 20, 27, 450

Bundle-symbolic name, 20, 47, 140, 206, 455–458, 460

Bundling Smack, 138–141

C

C Development Tooling (CDT), 22

Cache management, 132

Caching, 356–359

Callbacks, 410

Cancel button, 283

Capability mechanism, 26, 339

Categories (commands), 178–179

Chat Editor, 103–114, 147

Chat Model, 70–71

ChatAction class, 110–112

ChatEditorInput, 259

chmod, 348

-clean command-line argument, 132

cleanupcopy, 348

cleanupzip, 347

Clear workspace data before launching, 70

Closable/nonclosable, 103, 242, 246, 252–253, 323

closePart(), 325

Code reuse, 138

Code structure

Hyperbola layering, 383–384

icons and images, 389

key bindings, 386–387

optional dependencies, 388–389

preferences, 388

property pages, 388

views and editors, 387–389

wizards, 388

workbench contributions, 384–386

Colors, 317

Command key (Mac OS X), 180

commandId, 179–180, 184, 296–299, 301

Command-line arguments, 60, 132, 435

Commands

and actions, 386

command category, 293

defining, 177–182

extension points, 235

framework, 291–292, 297

handlers, 299–301

Workbench, 291–301

Common Navigator Framework (CNF), 502

Compare editor, 35–36

Compile errors, 146

compilelogs directory, 408

compilerArg (property), 403, 406

Composites, 328, 331, 350–351

configs (property), 402, 405, 418, 422

Configuration area (data area), 469–471

Configuration elements, 391

Configuration location, 20

Configuration methods, 228–229

Configuration scope, 166, 171, 173–175

ConfigureShell(Shell), 160

Configuring the Help plug-ins, 190

ConnectionDetails, 146–147, 152, 162–164, 424

ConnectionDetailsTestCase, 425

connectWithProgress(Session), 158

-console, 457, 461

-consoleLog, 60, 408

Console plug-in, 499–500

Console view, 242–244

ContactsDecorator, 256–257

ContactsGroup, 71, 73–78, 90–91, 145–146

ContactsList, 65, 74

ContactsView, 65–70, 72–79, 81, 113, 252, 256, 272

ContactsView icons, 67, 79

Content categorization, 350

Content provider, 73–77, 150

contentArea, 329–331

Context menus, 272–273

contextID, 184, 197

Context-sensitive Help (Hyperbola), 196–197

contexts.xml, 197–198

Contribution extension points, 236–237

Contributions, 294–299

Contributions area (status line), 96

Control properties, 399–401

Converters, 484–485

Coolbar, 55, 85, 92, 280

copy, 348

create(), 365

createActionBarAdvisor(), 55

createCoolBarControl(), 306

createDocument(), 499

createExecutableExtension(), 361, 392, 468

createFieldEditors(), 172

createFolder(), 245, 252

createFromURL(url), 80

createInitialLayout(), 242

createMenuBar(), 305–306

createMonitor(), 288

createPageComposite(), 306

createPartControl(Composite), 72

createPlaceholderFolder(), 245

createStatusLine(), 306

createWindowContents(), 85, 305–306

createWorkbenchWindowAdvisor(), 222, 224

Cross-platform building, 134, 187, 398, 405, 422

Ctrl+, 146

Ctrl-3, 43

Ctrl key, 180

Custom build.xml, 400–401, 410

customAssembly, 410

Customizable toolbars, 93

Customizing

the build scripts, 410

the Launcher, 121–122

metadata, 346

Workbench windows, 303–318 See also Presentations (Workbench)

CustomPresentationFactory, 323

customTargets.xml, 412–413

CVS, 276, 403, 411, 413, 422

D

Data areas, 469–471

Data location, 470

Databinding

architecture, 474–475

bindings, 484–487

observables, 475–480

properties, 480–483

Debug perspective, 241–243

DebugConsole, 243–244

Debugger stepping functions, 59–60

Debugging, 55–62, 409

Declarative actions, 101, 265–273, 277–278

Declarative Services (DS), 213, 503

decorators extension point, 236

Decoupling pattern, 387, 394–395

Default scope, 166, 174

Defining commands, 177–182

Defining target platforms, 38–42

Delta pack, 37, 40, 133, 402

Dependencies, 50, 204, 383

Dependency analysis, 50

Deployed (bundle), 460

Deprecated actions, 100, 292

Descriptive extensions, 356

Descriptors (images), 79–81

Development environment installation, 33–34

Dialog.buttonPressed(), 167

DialogPageSupport, 487

DIP (Dependency Inversion Principle), 387n

Director (p2), 341, 350

Display, 156

Display.asyncExec(), 148, 283, 480

Display.syncExec(), 148, 283

dispose(), 85, 91, 231, 274, 325, 329, 365

doSaveDocument(), 499

Drag and drop, 259–262

Drop adapters, 259–260

dropAction extension points, 235

Dynamic classpaths, 141

Dynamic plug-ins

dynamic awareness, 355–364

dynamic enablement, 364–366

dynamic extension scenarios, 355–362

object handling, 362–363

Dynamic variable, 500–501

E

Early activation extensions, 465–466

earlyStartup(), 465–466

Eclipse

configuration location, 20

databinding, 474–487

Equinox, 21–24

FAQs, 27

install location, 19–20

JFace, 25

and OSGi, 20–22

platform, 491

plug-ins, 15–20, 491

runtime, 21, 52, 166, 450–452

SWT, 6, 25, 27, 460

tools, 490

touchpoint actions, 348–349

UI Workbench, 25–27

Eclipse Classic (SDK), 16–17, 19, 33–34, 56, 351, 453, 489–491

Eclipse Community Forums, 44, 490

Eclipse Java Integrated Development Environment (IDE), 5

Eclipse Modeling Framework (EMF), 22, 388, 474, 478, 490

Eclipse Rich Ajax Platform (RAP), 4

Eclipse Technology, 490

Eclipse Tutorial videos, 62

Eclipse Update Manager, 337

Eclipse User Interface Guidelines, 127

eclipse.exe, 19

Editor ID, 108

editorAction extension points, 235

editorInputTransfer, 260–261

EDITOR_MINIMUM_CHARACTERS, 226

Editors, 26–27, 65, 69, 147, 251–255, 387–388

editors extension point, 237

elementFactories extension point, 235

emergencyClose(), 225–228

emergencyClosing(), 224–225

enabledWhen, 301

enableMultiple, 251

Encrypting passwords, 168–170

Engine, 341

Equinox

applications, 22

extension registry, 23–24

offerings, 22

products, 22–23

Equinox p2, 199–200, 208, 211, 214–215, 337–351, 433, 439

Event loops, 57, 222, 224–225, 227–228

Exception, 57, 227

Executable extensions, 356

Executables feature, 401–402

execute(), 300

Export Contacts, 269–272

Export wizards, 345

Exporting Hyperbola, 129–134

Exporting/reexporting, 21, 50

Export-Package, 21, 141, 456

exportWizards extension point, 236

Extensibility, 32

Extensible Hypertext Markup Language (XHTML), 32, 202

Extensible Messaging and Presence Protocol (XMPP), 32, 137, 144, 243

Extension(s)

caching, 357–358

early activation, 465–466

factories, 185, 275, 392–393

Hyperbola, 66, 68, 191–192

identifier, 51, 53, 393

named and anonymous, 393–394

offering, 22

registry, 23–24, 278, 357, 392, 394, 460

trackers, 360

Extension configuration (IDE), 371, 379–380

Extension delta (IExtensionDelta), 357

Extension Element Details, 51, 66, 68, 105, 184

Extension point(s)

action, 234–235

contribution, 236–237

New Extension wizard, 66, 192

perspective, 237

scalability, 235–236

startup, 238

Extension Point Reference, 234

Extension point schema, 390–391

Externalize strings, 89

Extra.library, 400

F

FAQs (Eclipse), 27

Fast Views (status line), 95

Feature builder, 417–419

Feature dependencies, 204

Feature IDs, 201, 205–206

Feature Name, 206

Feature properties, 205

Feature Provider, 206

Feature.xml, 201, 205, 346, 380–381, 414, 420

Fetching, 403–404, 411–413

Field editors, 171–172

FileLocator.resolve(URL), 441

Fill*(), 85

fillCoolBar(), 85, 92, 97, 113, 231

fillMenu(), 267, 294, 297

fillMenuBar(), 85–88, 92, 97, 113, 191, 231

fillStatusLine(), 85, 95, 97, 231, 281

Fixed layout, 246

Focus changes, 325

Fonts, 223, 236, 256–257, 282, 496–497

FormAttachment, 307–309

FormLayout, 307–308

Forms plug-in, 501

Forward button, 276

Foundation Java class libraries, 16–17

Fragments, 123, 133–134, 202, 424, 454–457

Framework plug-ins, 371–374, 378, 385–386, 390, 394–395

free(), 365

Free Moving perspective, 240–242, 252

“Friendly” plug-ins, 394–395

G

Galileo, 7, 188

Galileo SR1, 37

Galileo SR2, 34

getCache(), 358

getChildren(), 74–76

getData(), 225, 230

getDefaultPageInput(), 229

getExtension(), 358, 394

getExtensionDeltas(), 358, 360

getExtensionRegistry(), 392

getFactoryId(), 261

getInitialWindowPerspectiveId(), 229

getMainPreferencePageId(), 229

getMapFiles, 413

getNames(), 261

getObjects(), 362

getProgressMonitor(), 95

getProvider(), 361

getTransparencyMask(), 315

getViewRegistry(), 254

getWorkbenchConfigurer(), 225

getWorkbenchErrorHandler(), 229

GIF images, 78, 120, 125

Global action handler, 277

Globally unique identifiers, 47

Google Web Toolkit (GWT), 4, 474

Graphical Editing Framework (GEF), 22

GroupMarkers, 268–270

H

handleException(), 228

Handlers, 277, 299–301

HandlerUtil, 300

headless-build/customTargets, 410

“Hello, World” application, 45–55

Help (Hyperbola)

actions, 190–191

adding to the target platform, 187–189

configuring the plug-ins, 189

content, 191–196

context-sensitive, 196–197

exporting plug-ins, 197–198

infopops (F1 help), 196–197

hookMinimize(), 98–100

Hospital IM scenario, 370–371

Host plug-in, 454–456

HTML, 126, 191–196

html/, 197

Hyperbola, 31–33

About information, 87, 124–126, 209

ActionBarAdvisor, 55, 85–86

Actions, 83–87

AddContact action, 88–93, 181, 200, 300–301

auto-login preferences, 170–175

automatic updates, 214–215

branding, 115–127

Chat editor, 103–114

chat model, 70–71

chatting with Eliza, 152–153

ContactsView, 65–70, 72–79, 81, 113, 197, 252, 256, 272

customizable toolbars, 93

debugging, 55–60

development environment installation, 33–34

examples to browse, 42–43

exporting, 129–134

extensions, 51, 66, 68, 191–192, 393

“Hello, World” application, 45–55

Help. See Help (Hyperbola)

Help menu, 85–87

images, 78–81, 389

IWorkbenchAdapters, 75–77

key bindings, 177–186

label provider, 77–78

launch configuration, 59–61

launcher, 121–122

login dialog, 155–161

login settings, 161–170

menus, 85–88

messaging support, 137–154

packaging, 129–135

perspective, 53–54, 67

project names, 47

prototype, 63–65

refactoring the model, 143–148

running and debugging, 55–62

sample code, 34–36

software management, 199–215

splash screen, 122–124

status line, 93–96

system tray integration, 96–100

target platform setup, 36–42

testing, 424–428

third-party library, 138–143

top-level menu, 85–87

updating the UI, 149–151

using commands, 294–299

using views, 251–258

WorkbenchAdvisor, 53

WorkbenchWindowAdvisor, 54

Hyperbola kiosk, 381–383

Hyperbola layering, 383–384

Hyperbola plug-in structure, 354

Hyperbola product configurations

Extension configuration (IDE), 379–380

Hyperbola kiosk, 381–383

JFace configuration, 377–379

PDA configuration, 379

Workbench configuration, 380–381

Hyperbola projects, 374–375

hyperbola.builder, 401–402, 407, 415, 422, 439

HyperbolaProviderManager, 360

Hyperbola.target, 37

I

IAction, 292

IActionBarConfigurer, 232

IAction.setDefinitionId(String), 186

IApplication, 52

IArtifactRepositoryManager, 342–344

IBM Lotus and Eclipse RCP, 7–10

IBM Lotus Expeditor client for desktop, 9

IBM Lotus Notes, 10

ICommandService, 294, 300

Icon/Message (status line), 96

Icons, 67, 79, 120, 389

IDE, 374, 379

IDE platform, 16–17

Idleness, 227

IDocument, 497–498

ID/version pairing, 20

IEditorInput, 107, 109, 259–261, 499

IEngine, 342–344

IExtensionChangeHandler, 360

IExtensionDelta, 357

IExtensionRegistry, 394

IFontProvider, 257

IHandlerService, 300

IImageKeys, 79

IInstallableUnit, 342–344

Image path, 161

ImageDescriptorFromPlugin(), 80–81, 160–161

ImageDescriptors, 79–81

ImageRegistry, 389, 465

Images

bmp, 122–123

GIF, 78, 120, 125

Hyperbola, 78–81, 389

login dialog, 160–161

IMetadataRepositoryManager, 342–343

Import Contacts, 269–272

importWizards extension point, 236

Include required software (checkbox), 40, 189

Included Features, 202–203, 208, 420, 436

Infopops (F1 help), 196–197

-initialize, 440

initialize(), 224, 226

initializeSession(), 72

initializeTracker(), 360–361

initializeUsers(), 163

initTaskItem(), 98

Install area (data area), 469–471

Install location, Eclipse system, 19–20

Installable units (IUs), 339–340, 343–350

Installation and updates. See p2

Installation Details list, 86–87, 126, 211

Installation management. See p2

installBundle, 348

Installed (bundle), 460–461

Installers, 432–433

installFeature, 348

installShield, 432

Instance area, 441, 469–471

Instance data, 60, 471

Instance scope, 166

Instant messaging client. See Hyperbola

Internationalize strings, 89

Internet Engineering Task Force (IETF), 32, 144

intro extension point, 238

intro parts, 238, 491–492

Inversion of Control (IoC), 387n

IPageLayout, 244–247

IPageLayout.addView(), 69, 242, 501

IPartService, 255

IPersistableElement, 259, 261

IPerspectiveFactory, 53, 70, 242

IPerspectiveListeners, 250

IPerspectiveRegistry, 250

IPlanner, 342–343

IProfileRegistry, 342

iqProviders, 391

IRegistryChangeEvent, 357

IRegistryChangeListener, 357

ISafeRunnable, 228, 363

ISelectionService, 255

isModifiable(), 499

isReadOnly(), 499

IUViewQueryContext, 212

IViewDescriptor, 254

IWorkbenchAdapters, 75–77, 150

IWorkbench.close(), 225, 227

IWorkbenchConfigurer, 225–229

IWorkbenchConfigurer.emergencyClose(), 226

IWorkbenchPage, 109, 229, 250

IWorkbench.restart(), 225

IWorkbenchSite, 255

IWorkbenchWindow, 67, 109, 182–183, 229–231, 252

IWorkbenchWindow.close(), 222

IWorkbenchWindowConfigurer, 54, 230, 305

J

Jabber Enhancement Proposals (JEPs), 32, 144, 391

JAR (Java Archive), 18–19

files, 126, 140, 203, 452–454

signing, 436–437

jarsigner, 34, 143, 437

Java class libraries (JCL), 16–17, 403, 406

Java development tooling (JDT), 16, 33, 141, 490

Java Network Launch Protocol. See JNLP (Java Network Launch Protocol)

Java Runtime Environment (JRE), 16–17, 34, 60, 409, 431

Java search, 43

Java Virtual Machine (JVM), 6, 16, 49

Java Web Start. See JNLP (Java Network Launch Protocol)

JavaBeans, 477, 481

JDK (Java SDK), 34, 437

Jetty, 190

JFace, 25, 73, 374, 377–379, 388

Jive Software, 138–141, 146, 206

JNLP (Java Network Launch Protocol), 397, 433–439

Jobs, 284–285

Jobs Progress area (status line), 96

JUnit, 424–428

junit.jar, 452

K

Key bindings, 386–387

categories, 178–179

defining commands, 178–182

extension point description, 178–179

key schemes, 184–185

key sequences, 180

keys preference page, 185

for Workbench items, 182–184

Key configuration, 226

KEY_CONFIGURATION_ID, 226

Keys without ASCII representation, 180

Keystore, 436–437

Keystroke, 180

Keytool, 437–438

Kiosk, 381–383

Kiosk (RCP) product configuration, 372–374

L

Label provider, 73, 77–78, 151

Launch configurations, 59–61

Launcher, 121–122

layoutNormal(), 308

Lazy activation, 467–468

LDAP (Lightweight Directory Access Protocol), 455

Legal Info, 126

License agreement, 204

LicenseManager, 212

Lifecycle, bundle, 460–465

Lifecycle, Workbench, 221–225

link, 347

Locale-specific files, 123–125, 454

locationURI, 294–299

Locking error, 38

login(), 156

Login dialog, 155

auto-login, 170–175

connectWithProgress(Session), 157–158

icons, 159–160

images, 160–161

preferences, 164–170

progress reports, 157

ProgressMonitorDialog, 158

settings, 161–170

splash screen, 158–159

timing the login prompt, 155–156

user ID combo box, 161–164

window images, 160–161

login(session), 150, 156–159

M

M modifier keys, 180

Mac OS X modifier keys, 180

Maestro, 10–12

makeActions(), 85–86, 97, 183, 222, 231, 272, 311

manifest.mf, 18–19

Map files, 405, 411–414

mapsCheckoutTag, 405, 413

mapsRepo, 403, 405

mapsRoot, 403, 405, 413

Marker properties, 406

markStarted, 349

Mask, 314–315

MasterDetailObservables, 479

Menu accelerator, 179

Menu managers, 87–88, 267, 294

menus extension points, 235

Messaging library, 31–32

Messaging support

chatting with Eliza, 152–153

message types, 144

refactoring, 143–148

Smack, 138–145

third-party library integration, 138–143

updating the UI, 149–151

Metadata management

customizing, 346

publishing, 345–346

touchpoint instructions, 347–349

Microsoft Silverlight, 4

Middleware, 5

Minimizing to the task tray, 97–100

Minus sign, 36

Mirroring repositories, 349–350

mkdir, 347

Modeling and reporting (BIRT), 490

Modifier keys, 180

mouseListener, 332–333

Multiple configurations, 420–422

Multiple views, 251–252

Multiple windows, 258–259

Multiuser chat (MUC), 32, 354

Multiuser installs, 441–444

MultiValidator, 486

N

Named and anonymous extensions, 393–394

Namespace, 339, 375, 460

Naming convention, 375

Naming, project/plug-in ID, 139–140

NASA, 10–11

Native installers, 432

Native touchpoint actions, 347–348

Native user experience, 5–6

Navigate >, 42–43

Navigator Content Extensions (NCE), 502

Nested JARs, 454

Nested menu managers, 88

New Extension wizard, 66, 192

New Product Configuration wizard, 115–116

New Product Definition dialog, 118

New Project wizard, 48

newWizards extension point, 236

nl directory, 123, 455

nl/en, 123

NL (National Language) fragment, 455

Node structure, 165

@nodefault, 470

@none, 470

Nonmodal progress, 284

Nonrectangular windows, 304, 312–318

NSIS, 432

NullPointerException, 57

O

Object caching, 359

Object handling, 362–363

Observables, 475–480

Observer pattern, 475

Offerings, 22

Online Help, 233

openChatEditor, 148

OpenInNewWindow, 258

Open-source code, 138

OpenViewAction, 252

openWindows(), 224, 258

openWorkbenchWindow(), 258, 274

Operations, 386

Option key (Mac OS X), 180

Optional dependencies, 388–389

org.apache.lucene, 190

org.eclipse.core.expressions, 499

org.eclipse.core.resources, 492

org.eclipse.core.runtime, 50, 491, 492, 495, 499–502

org.eclipse.core.variables, 500

org.eclipse.equinox.ds, 503

org.eclipse.equinox.internal.provisional.p2.ui.policy.Policy, 212

org.eclipse.equinox.preferences, 164

org.eclipse.equinox.p2.user.ui, 208, 211

org.eclipse.equinox.util, 503

org.eclipse.help, 190, 208, 491, 501

org.eclipse.help.appserver, 190

org.eclipse.help.base, 190

org.eclipse.jface, 495

org.eclipse.jface/ITreeContentProvider, 74

org.eclipse.jface.text, 243, 495–496, 498–499

org.eclipse.osgi, 503

org.eclipse.rcp, 208

org.eclipse.rcp/feature.xml, 201

org.eclipsercp.hyperbola, 24, 46–48, 52–60, 115, 129, 206, 210, 384

org.eclipsercp.hyperbola.Application, 52

org.eclipsercp.hyperbola/ContactsView, 72

org.eclipsercp.hyperbola/DebugConsole, 243

org.eclipsercp.hyperbola.extensionProviders, 356, 358

org.eclipsercp.hyperbola.iqProviders, 356

org.eclipsercp.hyperbola.model, 71

org.eclipsercp.hyperbola/Perspective, 70

org.eclipsercp.hyperbola.target, 37

org.eclipsercp.hyperbola.ui, 384

org.eclipsercp.hyperbola.ui.workbench, 380–381, 384

org.eclipse.swt, 495

org.eclipse.text, 243, 495–496

org.eclipse.ui, 20, 50

org.eclipse.ui, 491, 495, 499, 501–502

org.eclipse.ui.actionSets, 23, 246, 266, 292

org.eclipse.ui.bindings, 179, 184, 293

org.eclipse.ui.browser, 502

org.eclipse.ui.console, 243–244, 499–500

org.eclipse.ui.editorActions, 266

org.eclipse.ui.forms, 206, 491, 501

org.eclipse.ui.handlers, 299, 301

org.eclipse.ui.intro, 491–492

org.eclipse.ui.main.menu, 294–297

org.eclipse.ui.main.toolbar, 295–297

org.eclipse.ui.navigator, 502

org.eclipse.ui.popup.any, 295

org.eclipse.ui.popupMenus, 266, 273, 292

org.eclipse.ui.presentationFactories, 320, 322, 327

org.eclipse.ui.presentations, 323

org.eclipse.ui.presentations.r21, 321–322

org.eclipse.ui.viewActions, 266, 292

org.eclipse.ui.views, 501

org.eclipse.ui.views.ContentOutline, 295

org.eclipse.ui.views.ProblemView, 295

org.eclipse.ui.workbench.texteditor, 243, 495, 496, 499

org.jivesoftware.smack, 206

OSGi

bundle lifecycle, 460–465

console, 457

data areas, 469–471

early activation extensions, 465–466

and the Eclipse runtime, 450–452

fragments, 454–457

framework, 20–21

lazy activation, 467–468

and lazy activation, 468

plugins, 452–454

services, 459–460

start level, 467

version numbering, 457–459

OSGi Alliance, 21

OSGi and Equinox, 215

OSGi Framework Specification Release 4, 450

osgi.bundles, 466

Outline view, 501

P

p2

agent, 339, 341, 443

API, 342–344

artifacts, 340

director, 341, 350

engine, 341

installable units (IUs), 339–340, 343–350

installation phases, 346–347

installer, 433

metadata management, 345–349

profiles, 341

repositories, 340, 349–350, 405–406

roles, 337–338

touchpoints, 341, 347–349

p2.artifact.repo, 406, 418

p2.compress, 406

p2.gathering, 403, 405–406, 418–419, 422

p2.metadata.repo, 406, 418

Packaging Hyperbola

archive file, 132

binary build specification, 130

cache management, 132

delta pack, 133

exporting, 129–134

platform-specific code, 132–134

Product Export wizard, 131, 134

synchronization, 131

Packet listener, 145

Paint listener, 330

Part list menu, 333

Part listeners, 255–256

PartTab, 331–333

Passwords, 157–158, 161–163, 166–170, 437–439

PDA configuration, 374, 379

PDE Build, 345, 397

benefits, 398

debugging, 409

plug-in build.properties, 399–401

root files, 415–416

templates, 410

Persistence (stack), 325

Perspective

factory, 68–70, 237, 242, 251–252

Hyperbola, 53–54, 65, 67, 69

IPerspectiveFactory, 53, 70, 242

IPerspectiveListeners, 250

menu, 248–249

registry, 250

Workbench, 26–27

PerspectiveDebug, 242, 244, 249

perspectiveExtensions extension point, 237

PerspectiveFreeMoving, 242, 249, 252

Perspectives (Workbench)

adding, 240–242

Console view, 242–244

debugging, 250

IPageLayout, 244–247

IPerspectiveListeners, 250

IPerspectiveRegistry, 250

IWorkbenchPage, 250

perspective bar, 226–227, 247–250, 304, 312

perspective extension points, 237

perspective menu, 248–249

SwitchPerspectiveAction, 249–250

Placeholder, 231, 245, 252–253, 267–272

Platform design, 390–394

Platform Developer Guide, 233

Platform.getAdapterManager(), 77, 150–151

Platform.getExtensionRegistry(), 392

Platform.getProduct(), 160

Platform.getStateLocation(Bundle), 164

Platform-specific code, 132–134

Plug-in(s)

arrows, 50

build.properties, 399–401

and bundles, 20, 27, 450

content, 49

content definitions, 46–47

Eclipse, 15–19, 491

editor, 48–50

fragments, 454–457

Help, 188–190, 197–198

ID, 20, 47, 140, 206, 455–458, 460

ID and project name, 139

ID and version, 20–21

RCP-friendly, 394

reexported, 50

sources, 490

store, 20

Plugin class, 462–463

Plug-in Development Environment (PDE), 33, 36–37

Plug-in Spy, 43, 296

pluginPath (property), 402, 405, 410–411

plugins/customBuildCallbacks, 410

plug-in.xml, 19, 320

/plugin-id/preference-name, 194

POJO, 424, 475–476

PojoObservables, 475–476

PojoProperties, 481

popupMenu extension point, 235

Portability of clients, 6

postSetup, 412

postShutdown(), 222, 224

postStartup(), 224

postWindowCreate(), 316

postWindowOpen(), 230

preferenceCustomization property, 194

preferencePages extension point, 236

PreferencePageSupport, 487

Preferences, 388

auto-login, 170–175

help system, 193

initializer, 174

login dialog, 164–170

node structure, 165–166, 168

Workbench, 226–227, 274–275

Preferences.flush(), 167

preferences.ini, 194, 198, 227, 247, 321

Preinitialized configurations, 440

presenceToKey(), 80–81

Presentable parts, 319

presentationFactories extension point, 237, 320–321

presentationFactoryID, 322

PRESENTATION_FACTORY_ID, 226, 321

Presentations (Workbench)

adding, selecting, removing parts, 331–333

classes, 323

default features, 324–325, 325–326

menus, 333

plug-in, 322

presentation factory, 327

samples, 320–322

size and position, 330–331

StackPresentation, 324–330

widgets, 324

preShutdown(), 222, 224

preStartup(), 222, 224, 287

preWindowOpen(), 54, 94, 230, 305

Product configuration, 115–120, 205, 371–383

Product definitions, 376

Product Export wizard, 131, 134

Product (property), 403

productBuild.xml, 401, 408–409, 419

ProfileChangeRequest, 344

Profiles, 341

Program launcher, 121–122

Progress area (status line), 96

Progress reports, 157, 282–289

Progress view, 285–287

ProgressMonitorDialog, 158, 288

ProgressProvider, 287–288

Project name and plug-in ID, 139

Project names, 47, 375

Properties, databinding, 480–483

Property listener, 332

Property pages, 388

Property view, 501

propertyPages extension point, 236

Prototype, 63–65

Prototype classes, 146–147

Providers (content and label), 73–78

ProvisioningContext, 343–344

Publisher, 345–346

Publishing metadata, 345–346

Q

qualifier, 414–415, 458

$qualifier$, 346

Qualifying version numbers, 414

Quick fix, 191

Quick search panel, 307, 311–312

Quit action, 177, 183, 275

R

Realm.asyncExec(), 480

Realms, 480

Rectangular windows, 304, 312–318

Reexported plug-ins, 50

Refactoring, 143–148

Region (shell), 313

Register adapters, 77

RegisterContextMenu(), 273

Registering Actions, 86

Registering listeners, 464

Registering services, 464

registerObject(), 361–362

Registry change events, 357

Registry change listeners, 357

Release engineering builds, 350, 397–399, 417

remove(), 365

remove (touchpoint action), 348

removeExtension(), 361–362

removePart(), 331

Rendering, 264–265

repoBaseLocation, 411, 418

Repositories, 212, 340, 342–344, 411

repository directory, 408

Repository management, 349–350

RepositoryManipulator, 212

Resolved (bundle), 461

Resources plug-in, 492–493

ResourcesPlugin.getWorkspace(), 451, 494

Restore, 162, 221–222, 224–225, 323, 325

restoreState(), 224, 323, 325

Restructuring Hyperbola, 372–374

Retargetable actions, 275–277

Reverse domain name convention, 47

revertPerspective(), 250

Rich client, 3–5

Rich client platform (RCP), 5–10

Rich client platform (RCP) SDK, 37

Rich Internet applications (RIAs), 4

rmdir, 347

root.os.ws.arch, 416

Root files, 415–416

Roster classes, 144–150

rowLayout, 328–330

RPM, 432

R21 presentation, 320–322

run(), 52, 89, 112, 228

Run Configurations (dialog), 61

Run in background, 284–285

Run menu, 61

Runtime widget parenting, 324

S

Sample code, 34–36, 369

Samples Manager, 35–36

SAT4J, 341

saveState(), 224–225, 261, 323, 325

Scalability extension points, 235–236

schemeId, 180, 184

ScopedPreferenceStore(), 171–172

Scopes, 165–168, 172–175

scriptsproductBuild productBuild.xml, 401

SDK features, 420–422, 453

search >, 43

Secondary ID, 251–253

SecurePreferencesFactory, 168–169

Selection listener, 89

selectionChanged(), 89–90, 271

selectPart(), 323, 325

Separator, 93, 268

Services, 459–460

ServiceTracker, 459

Session, 71, 146–147

setActionDefinitionId(), 181, 183

setActive(), 323, 325

setAfterConvertValidator(), 486

setAfterGetValidator(), 486

setBounds(), 317, 323, 324, 329–331

setCloseable(), 242, 246, 252

setConnection(), 152

setConnectionDetails(), 152, 156, 173

setContentProvider(), 73–74

setControl(), 280

setConverter, 484

setData(), 225, 230

setEditorAreaVisible(), 69, 113, 246

setErrorMessage(), 95

setExitOnLastWindowClose(), 225

setFixed, 246

setInitialSize(), 229

setMessage(), 95

setProgramProperty, 349

setProperty(), 286

setQueryContext(), 212

setRegion(), 313–314, 317

setRepositoryManipulator(), 212

setSaveAndRestore(), 65, 221, 224

setSelectionProvider(), 255

setShowMenuBar(), 229

setShowStatusLine(), 94

setShowToolbar(), 229

setStartLevel, 348

setTitle(), 54, 119, 229

setVisible(), 323–324

Shared installs, 442–444

Shift key, 180

Short status (ss) command, 456–457

Shortlist, 246, 248, 254, 278

Show In prompter, 246

showMenu(), 325

showPart(), 331

SHOW_PROGRESS_ON_STARTUP, 226

SHOW_TRADITIONAL_STYLE_TABS, 226–227

Simple clients, 3

Singleton, 456, 460

skipBase (property), 402, 404, 407

skipFetch, 405, 422

skipMaps, 403, 405, 412–413

Smack, 32, 206

APIs, 144–145

bundling, 138–141

chat editors, 147–148

Jive Software, 138

library, 138, 154

message types, 144

naming conventions, 139–140

refactoring, 146–147

Roster classes, 145

stream management, 144

testing, 141–143

Software Configuration Management (SCM) access control, 405, 411–414

Software management

automatic updates, 214–215

branding Features, 209–210

categories, 213–214

customizing the p2 UI, 211–213

Equinox p2, 199–200

features, 200–210

Hyperbola, 199–215

updating, 210–211, 214–215

Software sites, 38

source.library, 400

Splash screen, 122–124, 158–159

Stack persistence, 325

StackPresentation, 324–330

Stand-alone offering, 22

Stand-alone product configuration, 371–374

Standalone views, 69, 245

Standard actions, 274–275

Start level, 467

Start(BundleContext), 450–452, 461–464, 467

startChat(), 147–148

Starting (bundle), 461

startup extension point, 238

Startup time, 464

State location, 470

Status line, 93–96, 281–282

statusHandlers extension point, 237

Step functions, debugging, 59–60

Sticky views, 253–254

Stop(BundleContext), 450, 452, 461–464

stopMethod(), 365

Stopping (bundle), 461

Stream management, 144

Strings, externalize, 89

StyledText, 497

Support classes, 487

SVN, 411, 413

SwitchPerspectiveAction, 249–250

SWT (Standard Widget Toolkit), 6, 25, 27, 460

display, 156

fragments, 202

SWTBot, 426–428

SWTObservables, 478–479

SWTWorkbenchBot, 427

Synchronization, 118, 131

Synchronization error, 38

System menu, 333

System tray integration, 96–100

systemSummarySections extension point, 237

T

Tab styles, 226

TAR, 431–432

Target content, 42

Target Definition wizard, 39

Target editor warning, 37

Target Export wizard, 402

.target files, 37

Target platform setup, 36–42

Task tray, 64, 84, 97–100

Templates, 410

templatesheadless-build, 401

Test and performance tools platform (TPTP), 490

Test case, 424–426

Testing Hyperbola, 424–428

Text control, 497

Text editing, 495–499

Text plug-ins, 495–496

TextEditors, 498

TextViewer, 498

themes extension point, 236

Thin clients, 4–6

Third-party library, 31–32, 138–143

titleArea, 328–333

TitleAreaDialogSupport, 487

TOC files (Help), 191, 195–197

tocgettingstarted.xml, 195, 197

toctasks.xml, 195–197

toc.xml, 195–197

Toggle actions, 309

Toolbars

customization, 93

Hyperbola, 93

show/hide, 309

text, 279

Workbench, 278–281 See also Coolbar

Top-level feature, 376

Top-level menu, 84–87

Top-level toolbar, 92

topLevelElementID, 417–418

topLevelElementType, 417–418

Touchpoints, 341–342, 347–349

Transfer types, 259

transformedRepoLocation, 411, 418

Translations, 89, 123, 125, 210

TrayItem, 97–99

TreeViewer, 72–73, 90

U

UI Workbench, 25–27

Unhandled event loop exception, 57

uninstallBundle, 348

Uninstalled (bundle), 461

uninstallFeature, 348

Unit testing, 424–426

Unregister adapters, 77

unzip, 347

updateEnablements(), 310–311

UpdateValueStrategy, 483–484, 486

Updating Hyperbola, 210–211

Updating software, 210, 214

Updating the UI, 149–151

User area (data area), 469–471

User interface testing, 426–429

@user.dir, 471

@user.home, 470

V

validateBeforeSet(), 486

Validation, 485–486

Validity testing, 362–363

Value variable, 500–501

Variable manager, 500–501

Variables, 500–501

$version$, 346

Version numbers, 414, 457–459

Version substitution, 346

View icons, 67

View ID, 66, 251–252, 254, 275, 501

View pane menu, 333

View registry, 254

View shortlist, 254, 278

viewActions extension point, 235

Viewers, compared with Views, 73

ViewersObservables, 479

ViewerSupport, 487

ViewPart, 65–66

Views, 65

compared with editors, 104

compared with viewers, 73

and editors, 251–258, 387–389

Workbench, 26–27

views extension point, 237

visibleWhen, 294, 299

W

Weak references, 361–363

Web tools platform (WTP), 490

WidgetProperties, 482

Widgets, 25, 85, 156, 170

Wildcards, 42–43, 253

Window images, 120–121

Windows, customizing, 303–318

WizardPageSupport, 487

Wizards, 388

Workbench

action responsibilites, 265

actions, 263–289

advisor types, 220–221

closing, 225–226

commands, 291–301

configuration, 228–229, 374, 380–381

contributions, 294–299, 384–386

declarative actions, 265–273

drag and drop, 259–262

extension factory, 185

extension points, 232–238

handlers, 299–301

Keys preference page, 185

lifecycle, 221–225

multiple windows, 258–259

perspectives, 240–250

preferences, 226–227, 274–275

presentations, 319–334

progress reports (feedback), 282–289

retargetable actions, 275–277

standard actions, 274–275

status line, 281–282

toolbars, 278–281

Views and Editors, 251–258

windows, customizing, 303–318

Workbench advisors

ActionBarAdvisor, 55, 85–86, 97–99, 220–223, 267

IActionBarConfigurer, 232

IWorkbenchConfigurer, 225–229

IWorkbenchWindowConfigurer, 230, 305

WorkbenchAdvisor, 53–54, 220–229, 260

WorkbenchAdvisor.eventLoopException(), 227

WorkbenchWindowAdvisor, 52–55, 85, 97–99, 220–225, 229–230, 305, 310

WorkbenchAdvisor.initialize(), 65, 222

WorkbenchObservables, 480

WorkbenchProperties, 482

WorkbenchWindow, 85, 97, 222

workingSets extension point, 236

Workspace, 494

Workspace Data, 60, 70

X

XHTML (Extensible Hypertext Markup Language), 32, 202

XML, 24, 144, 149, 243, 392, 433, 503

XMPP (Extensible Messaging and Presence Protocol), 32, 137, 144, 243

XMPPConnection, 142, 144, 147

XULRunner, 4

Z

Zero-argument constructor, 392

ZIP, 431–432

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset