The Arctic Mac

Modifications for iTunes 4.7.0 for Mac OS X

Keep in mind that these procedures modify the iTunes application, so you should ALWAYS work on a backup copy, just in case. I am NOT responsible for any damage you do to yourself or your computer. I like to make copies of the individual files we work on, but you may prefer to backup the whole thing. I don't care.

PICT Resource edits

I'm not going to go into any depth here, but basically, you want to open iTunes.app/Contents/Resources/iTunes.rsrc in a resource editor. To get there, you can type "/Applications/iTunes.app/Contents/Resources/" in the Finder's goto dialog. Now, you can open it in any resource editor. Keep in mind that if you want to use ResEdit, you'll need to flip the forks first with QuickConvert (please try to get the right one). If you do flip the forks, it's good policy to flip them back when you're done with your mod, but you don't really need to until then, since iTunes can still launch even if the resources are in the resource fork.

Basically, this part's easy. Open the resource file, and navigate to the PICT section and you're set to edit... all you do is copy and paste PICT resources into the editor. One thing I do want to add though... This concerns graphite and aqua variations. If a user's system is set to aqua mode, it uses the aqua colored resources in iTunes. However if it's set to graphite, iTunes looks for a PICT with an ID 2000 higher than the regular aqua resource. This allows you to make graphite variants, even for controls that don't include a graphite variant initially. For example, the source gradient is in ID 300. If you provide an image for ID 2300, that will be used for the graphite source gradient. Make sure the sizes match though.

Color Modification

This part pretty much deals with colors in iTunes. You can change some text colors, the colors of the playlist, and a few other things. This is more advanced editing than the previous section, and is not to be attempted by the weak minded! This means we're going to be messing with long strings of HEX code, so you can't just make pictures...

The idea here is as follows: you will use an editor to edit the DataFork of the iTunes application. You should either download and install Forker, which allows ResEdit to do this, or get something else like HexEdit. Your choice.

Now, first things first, open up your data fork in your editor (I'm using HexEdit, cause ResEdit only allows four hex words per line, but that doesn't mean you have to). We're going to be replacing some 16-bit Hex Colors. If you've worked on web design, you may be familiar with 8-bit hex colors, as they are used on many web sites. Basically, Hexadecimal is a different base system, so it's a different way to represent data. It represents each color as a combination of red, green, and blue, with 0 being black and the max being white. There are extensions for the Mac OS X color picker that allow you to choose web color, and the Photoshop color picker also does it. If you can find the web color (ex "FFCA35"), then it's easy to get the 16-bit hex color... you just double the number of characters for each color. Usually, you just repeat the same two characters again, and I think iTunes just displays 8-bit hex colors anyway, even though you enter 16. So, the example above would be entered as "FFFF CACA 3535". Here's what I recommend that you do:

DO NOT DO THIS IF YOU HAVE ANY VERSION OF ITUNES OTHER THAN 4.7.0.

If you do not have 4.7.0, the original colors listed below are correct, but the locations in the file are not. Feel free to search for the colors and replace them where they are in your version, but do not just change stuff at the offsets listed. If you do have 4.7.0, you should be just fine using these offsets.

  1. Print out the table below.
  2. Make a mockup of what you want your theme to look like (skip this step if you want)
  3. Write the appropriate replacement colors next to the originals on the printed table.
  4. Go through the table a line at a time and enter your colors in at the indicated
#Hex OffsetOriginal ColorItem Description
144BF68D6D6 DBDB BFBFBackground of "Audio Analyzer"
244BF701616 1616 1414Level marks of "Audio Analyzer"
344BF781616 1616 1414Maximum Level Mark of "Audio Analyzer"
444BF80C4C4 C8C8 B0B0"Ticks" on background of "Audio Analyzer"
544BF88D6D6 DBDB BFBFBackground between the ticks on "Audio Analyzer"
644D49C2222 2222 2222Text on metal (i.e. song totals, etc.)
744D4A48888 8888 8888Window Title Disabled
849042CFFFF FFFF FFFFText on selected source and (Active) selected song
94A2350D9D9 D9D9 D9D9Vertical separators in playlist
104A23583434 6D6D BEBEVertical separators for selected song (active)
114A2360ACAC ACAC ACACVertical separators for selected song (inactive)
124A3B80F7F7 F7F7 F7F7Background of party shuffle controls
134B11DC6666 6666 6666Inside of bevel around source/playlist (red in pic)
144B11E49393 9393 9393Top of bevel around source/playlist (green in pic)
154B11ECF0F0 F0F0 F0F0Bottom of bevel around source/playlist (blue in pic)
164B11F4E0E0 E0E0 E0E0Left side of bevel around source/playlist (magenta in pic)
174B11FCE0E0 E0E0 E0E0Right side of bevel around source/playlist (yellow in pic)
184B12043D3D 8080 DFDFBackground of row for selected song (active)
194B120CC0C0 C0C0 C0C0Background of row for selected song (inactive)
204B1214C0C0 C0C0 C0C0Bevel on the word "Source" at the top of the source list
214B121CEDED F3F3 FEFEBackground color of odd numbered rows in playlists
224B1224FFFF FFFF FFFFBackground color of even numbered rows in playlists
234B122C7D7D AAAA EAEAHilite or bevel of selected song row in playlist (active)
224B1234E0E0 E0E0 E0E0Hilite or bevel of selected song (inactive)
234B123CE8E8 E8E8 E8E8Bevel of text on metal (i.e. song totals, etc.)

One more thing...

there are a couple colors that you can change in the resource fork. These are in various resources in "iTunes.app/Contents/Resources/English.lproj/Localized.rsrc". Go ahead and open that file in a resource editor too. Open the list of Txtr resources

Now, these Txtr resources have two things of interest in them. First, they have the font info, and second, they have the font color. As a word of warning, iTunes overrides most of the colors set here, so they do not work. Three that I know work are "LCD", "Mini LCD" and "List Header". I think that "Search" both of the "List Contents" work, but don't count on it. Actually, I should mention, List Header and List Contents (large and small) font size/style affect both the source column AND the playlist. The catch? Color only works for the headers in the playlists columns (not for the word "source") and in the source list items, but not in the playlist. Anyhow, the colors... The colors, are, once again, 16-bit hex colors. They start 8 bytes into each resource. That means that there are 16 individual hex characters before the color starts. (16 hex characters make 8 bytes, which is what the offset is given in). You can edit colors as described above...

For editing the fonts, there are two things you have to do. First, replace the ascii text "Lucida Grande" (must be viewing ascii text version of the resource too) with whatever the name of the font you want is... like, for example, "Myriad Pro" (without quotes obviously). Second, count the number of characters in the font that you just entered. For example, "Myriad Pro" is 10 characters. Now, we need to enter that number as a hex byte in the byte before the font name. This means you have to convert the number to hex. Go do that. For the example, the hex is 0A. So, we enter that in as the byte before the font name. This means you should replace the 0D in the hex (immediately before where your font name data starts) with whatever your hex is (like I said, in the example, we'd replace it with 0A). If you're confused, go here and see if you can figure out how to edit the font name based on the string editing instructions on that page.

Cheers!