Feeds

Discover OS X's hidden artistic side

Jobs' past revisited

Intelligent flash storage arrays

For example, NSWinSliderKnobAbove will give you a circa Windows-95 horizontal slider knob, with the indicator pointing upwards. NSWinSliderKnobAbovePressed will give you the pressed-in variant of the same image. Among the others, there's NSWinRadio that's a radio button in its unselected state. It's a mystery why this set of bitmaps were added to AppKit and why they're still there.

Heads-up

Now, you might think the built-in icon list only contains only images from the distant past, but not so. With Leopard, Apple recently introduced official support for Heads Up Display (HUD) windows. The new Interface Builder makes it dead easy to crate a HUD window for your own app, but I guess we'll have to wait until Snow Leopard before Apple give us some nice HUD controls.

As you might expect, the glyphs used to build HUD windows are contained within the built-in icon list. Thus, NSHUDActiveTitleBarFill will give you a vertical strip that's used to provide the graduated fill for an active HUD window's title bar.

All the image names are provided in a file called NSImage Names, which I've included along with this month's demo project. You'll find that some of them are old, and some are very new. For example, Apple introduced a new AppKit class called NSDockTile along with Leopard. Amongst other things, this class allows you to customize the appearance of your application's icon as it sits in the Dock.

If you look at the images entitled NSBadge1&2, NSBadge3, NSBadge4, and NSBadge5, you should gain some understanding of how NSDockTile works internally: rather than rendering that jagged-edged red lozenge from scratch, it selects the appropriate glyph depending on how many characters you've asked to display on the icon badge. Clever, eh?

Scrollbar image

ThemeWidget delivers a scrollbar glyph

Finally, as promised, this month's demo project demonstrates another mechanism whereby AppKit obtains the necessary glyphs used to support the Aqua interface.

My little ThemeWidget application makes use of an undocumented routine, _NSGetThemeWidgetImage, which is very heavily used "under the hood". It takes an image identity and retrieves the requested glyph.

Now, I haven't totally figured this out yet and you'll see from my code the list of valid image ID's is non-contiguous, hence the need to scan forwards or backwards until a new image is found. With that proviso in mind, you can download the demo application and source code here

Beginner's guide to SSL certificates

More from The Register

next story
Download alert: Nearly ALL top 100 Android, iOS paid apps hacked
Attack of the Clones? Yeah, but much, much scarier – report
NSA SOURCE CODE LEAK: Information slurp tools to appear online
Now you can run your own intelligence agency
Microsoft: Your Linux Docker containers are now OURS to command
New tool lets admins wrangle Linux apps from Windows
Microsoft adds video offering to Office 365. Oh NOES, you'll need Adobe Flash
Lovely presentations... but not on your Flash-hating mobe
You stupid BRICK! PCs running Avast AV can't handle Windows fixes
Fix issued, fingers pointed, forums in flames
HTML5 vs native: Harry Coder and the mudblood mobile app princes
Developers just want their ideas to generate money
prev story

Whitepapers

Designing and building an open ITOA architecture
Learn about a new IT data taxonomy defined by the four data sources of IT visibility: wire, machine, agent, and synthetic data sets.
The total economic impact of Druva inSync
Examining the ROI enterprises may realize by implementing inSync, as they look to improve backup and recovery of endpoint data in a cost-effective manner.
A strategic approach to identity relationship management
ForgeRock commissioned Forrester to evaluate companies’ IAM practices and requirements when it comes to customer-facing scenarios versus employee-facing ones.
Reg Reader Research: SaaS based Email and Office Productivity Tools
Read this Reg reader report which provides advice and guidance for SMBs towards the use of SaaS based email and Office productivity tools.
Business security measures using SSL
Examines the major types of threats to information security that businesses face today and the techniques for mitigating those threats.