Cover image for Beginning Mac OS X Tiger dashboard widget development
Title:
Beginning Mac OS X Tiger dashboard widget development
Personal Author:
Series:
Wrox beginning guides
Publication Information:
Indianapolis, IN : Wiley, 2006
ISBN:
9780471778257
General Note:
"Programmer to programmer"--Cover

Available:*

Library
Item Barcode
Call Number
Material Type
Item Category 1
Status
Searching...
30000010115920 QA76.76.O63 T474 2006 Open Access Book Book
Searching...
Searching...
30000010115921 QA76.76.O63 T474 2006 Open Access Book Book
Searching...

On Order

Summary

Summary

Aimed at the estimated 300,000 Mac OS X developers who are interested in customizing and creating widgets for their Dashboards, this timely book shows them how to tap into the power of Mac OS X Tiger to create and customize Dashboard widgets The expert author uses program examples and exercises to illustrate the different ways to customize the Dashboard through widget development using simple authoring tools, Internet plug-ins, and text editors Begins with a discussion of the Dashboard concept and configuration and progresses to coverage of advanced functionality Covers tools, protecting code, configuration, properties, bundles, resources, extensions, and much more


Author Notes

Fred Terry has been involved in the computer industry since making a left-hand turn into it from Ph.D. work in medieval languages and literature. He has written a number of software manuals and articles and has worked as a systems and network administrator, web developer, programmer, and quality assurance engineer. In addition to his ongoing love affairs with AppleScript and Perl, his current programming infatuations are Ruby and Ajax. Currently, Fred is a project manager for the Information Management Group at Burns & McDonnell. He has a B.A. in English from Southwestern Oklahoma State University and an M.A. in English from Oklahoma State University. He lives in Lawrence, Kansas, with his family and dog. Fred can be contacted at pfterry@deadtrees.net.


Table of Contents

Introductionp. xiii
Part I An Introduction to Widgetsp. 1
Chapter 1 Tiger, Dashboard, and Widgetsp. 3
OS X Tigerp. 3
Dashboard and Widgetsp. 4
Managing Dashboard's Widgetsp. 8
Installing Widgetsp. 9
Installing Local Widgetsp. 9
Downloading and Installingp. 11
Reloading Widgetsp. 13
What Widgets Are Notp. 13
Summaryp. 14
Exercisesp. 14
Chapter 2 The Basics of Widgetryp. 15
What a Widget Is Composed Ofp. 15
HTML, CSS, and JavaScriptp. 17
HTMLp. 18
CSSp. 19
JavaScriptp. 21
Property Listsp. 23
Widget Propertiesp. 24
Creating Property Listsp. 26
Icons and Imagesp. 30
How to Bundle Your Widgetp. 31
Summaryp. 33
Exercisesp. 33
Chapter 3 Widget Development Environmentp. 35
An Editor and a Browserp. 35
TextEdit and Safarip. 36
BBEditp. 38
Using an Integrated Development Environmentp. 39
Widgetariump. 40
Xcodep. 41
Starting Xcodep. 41
Building a Pluginp. 42
Enabling Dashboard Developer Modep. 47
Debugging Toolsp. 49
Using Safari as Your Debuggerp. 49
Third-Party Debugging Toolsp. 50
Summaryp. 53
Exercisesp. 53
Chapter 4 Creating a Widgetp. 55
HTML Beginningsp. 55
Beginning the Projectp. 55
Begin with HTMLp. 57
Adding a Backgroundp. 59
Creating Widget Structure with CSSp. 61
[left angle bracket]div[right angle bracket] Regionsp. 63
Doing the Work with JavaScriptp. 69
Building the Widgetp. 72
Making Sure It Worksp. 75
Summaryp. 75
Exercisesp. 76
Chapter 5 Debugging and Testingp. 77
First Stepsp. 77
Debugging Tipsp. 77
Syntax and Logic Errorsp. 78
Widget Errorsp. 79
Debugging Tricksp. 79
Use a Helpful Editorp. 79
Simplifyp. 79
Log Filesp. 80
Printing Debug Information with Alert Statementsp. 81
Using a Debuggerp. 83
Debugging Toolsp. 83
Stepping Through a Widgetp. 83
Testing Your Widgetp. 86
Testing Tipsp. 86
Don't Test Your Own Stuffp. 86
Break Your Widgetp. 86
Keep a Logp. 86
What Now?p. 87
Fixing Bugsp. 87
Summaryp. 88
Exercisesp. 88
Part II Providing User Interactionp. 89
Chapter 6 Giving a Widget Preferencesp. 91
Adding Preferences to Your Widgetp. 91
How to Show Preferencesp. 93
Creating a Back Side Panelp. 94
Widget Resourcesp. 95
Flipping a Widgetp. 95
The Widget's HTML Filep. 95
The Widget's CSS Filep. 97
The Widget's JavaScript Filep. 99
Testing Your Changesp. 101
Adding Preferencesp. 102
Adding Preference Selectionp. 102
Saving and Reading Preferencesp. 108
Summaryp. 111
Exercisesp. 111
Chapter 7 Widget Eventsp. 113
The Dashboard Activation Eventp. 113
Activation Propertiesp. 114
System Resourcesp. 117
Removing Widget Preferencesp. 119
Setting Widget Focusp. 123
Dragging a Widgetp. 124
Control Regionsp. 125
Summaryp. 127
Exercisesp. 127
Chapter 8 Adding to the Widget Interfacep. 129
Resizingp. 129
When to Resize the Widgetp. 132
How to Resize a Widgetp. 132
The HTML Filep. 135
The CSS Filep. 136
The JavaScript Filep. 140
Moving the Close Boxp. 145
Scrollingp. 146
When to Add Scrollingp. 146
The HTML Filep. 146
The CSS Filep. 147
The JavaScript Filep. 148
Summaryp. 151
Exercisesp. 151
Chapter 9 Adding Cut, Copy, and Paste to Your Widgetp. 153
Pasteboardp. 153
Pasteboard Eventsp. 153
Pasteboard Handlersp. 154
Adding Pasteboard Handlersp. 156
Summaryp. 157
Exercisesp. 157
Chapter 10 Adding Drag and Drop to the Widgetp. 159
Drag-and-Drop Eventsp. 160
Dragging and Dropping from the Finderp. 160
Using Drag and Dropp. 161
HTMLp. 162
CSSp. 163
JavaScriptp. 164
Dragging Between Widgetsp. 166
Summaryp. 167
Exercisesp. 167
Chapter 11 Access Keysp. 169
Using Access Keysp. 169
File System Accessp. 170
Command-Line Accessp. 171
Synchronous Usagep. 173
Asynchronous Usagep. 173
Network Accessp. 174
WebKit and Internet Plugin Accessp. 176
Widget Plugin Accessp. 177
Java Applet Accessp. 178
Full Accessp. 179
Summaryp. 180
Exercisesp. 181
Chapter 12 Using Plugins and Appletsp. 183
Plugins, Widgets, and Sharingp. 183
Sharing Etiquettep. 183
Why Use Plugins?p. 184
Using Plugins in a Widgetp. 185
Finding Plugins on Your Macp. 185
QuickTimep. 186
Incorporating Widget Pluginsp. 188
Using Java Appletsp. 190
Summaryp. 195
Exercisesp. 195
Part III Example Widgetsp. 197
Chapter 13 Easy Envelopesp. 199
Easy Envelopesp. 199
The Interfacep. 199
Easy Envelopes Internalsp. 203
Info.plistp. 203
HTML/CSSp. 204
JavaScript Functionalityp. 206
Minimizep. 206
Return Addressp. 207
Page Setup and Font Panelsp. 208
Summaryp. 210
Chapter 14 SecureCopy Widgetp. 211
SSH & scpp. 211
The SecureCopy Widgetp. 212
The Interfacep. 212
SecureCopy Internalsp. 213
Info.plistp. 214
HTML/CSSp. 214
JavaScript Functionalityp. 220
Using SecureCopyp. 221
Summaryp. 223
Chapter 15 Amazon Album Artp. 225
Amazon Album Artp. 226
The Interfacep. 226
Amazon Album Art Internalsp. 229
Info.plistp. 230
HTML/CSSp. 230
JavaScript Functionalityp. 234
Get Details from iTunesp. 236
Processing the Downloaded Imagep. 237
Summaryp. 240
Chapter 16 Timbuktu Quick Connectp. 241
The Interfacep. 242
Timbuktu Quick Connect Internalsp. 244
Info.plistp. 245
HTML/CSSp. 246
JavaScript Functionalityp. 250
Summaryp. 252
Chapter 17 iPhoto Minip. 253
iPhoto Minip. 253
The Interfacep. 254
iPhoto Mini Internalsp. 255
Info.plistp. 256
HTML/CSSp. 257
JavaScript Functionalityp. 261
Summaryp. 264
Chapter 18 iTunes Connection Monitorp. 265
iTunes Connection Monitorp. 265
The Interfacep. 266
iTunes Connection Monitor Internalsp. 267
Info.plistp. 268
HTML/CSSp. 268
JavaScript Functionalityp. 270
Summaryp. 273
Chapter 19 More Widgetsp. 275
More Widgetsp. 275
The Interfacep. 275
More Widgets Internalsp. 278
Info.plistp. 279
HTML/CSSp. 280
JavaScript Functionalityp. 285
Summaryp. 289
Appendix A Answers to Exercisesp. 291
Appendix B Additional Dashboard Programming Informationp. 295
Appendix C Widget Distributionp. 301
Indexp. 305