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.
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.
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:
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.
| # | Hex Offset | Original Color | Item Description |
|---|---|---|---|
| 1 | 44BF68 | D6D6 DBDB BFBF | Background of "Audio Analyzer" |
| 2 | 44BF70 | 1616 1616 1414 | Level marks of "Audio Analyzer" |
| 3 | 44BF78 | 1616 1616 1414 | Maximum Level Mark of "Audio Analyzer" |
| 4 | 44BF80 | C4C4 C8C8 B0B0 | "Ticks" on background of "Audio Analyzer" |
| 5 | 44BF88 | D6D6 DBDB BFBF | Background between the ticks on "Audio Analyzer" |
| 6 | 44D49C | 2222 2222 2222 | Text on metal (i.e. song totals, etc.) |
| 7 | 44D4A4 | 8888 8888 8888 | Window Title Disabled |
| 8 | 49042C | FFFF FFFF FFFF | Text on selected source and (Active) selected song |
| 9 | 4A2350 | D9D9 D9D9 D9D9 | Vertical separators in playlist |
| 10 | 4A2358 | 3434 6D6D BEBE | Vertical separators for selected song (active) |
| 11 | 4A2360 | ACAC ACAC ACAC | Vertical separators for selected song (inactive) |
| 12 | 4A3B80 | F7F7 F7F7 F7F7 | Background of party shuffle controls |
| 13 | 4B11DC | 6666 6666 6666 | Inside of bevel around source/playlist (red in pic) |
| 14 | 4B11E4 | 9393 9393 9393 | Top of bevel around source/playlist (green in pic) |
| 15 | 4B11EC | F0F0 F0F0 F0F0 | Bottom of bevel around source/playlist (blue in pic) |
| 16 | 4B11F4 | E0E0 E0E0 E0E0 | Left side of bevel around source/playlist (magenta in pic) |
| 17 | 4B11FC | E0E0 E0E0 E0E0 | Right side of bevel around source/playlist (yellow in pic) |
| 18 | 4B1204 | 3D3D 8080 DFDF | Background of row for selected song (active) |
| 19 | 4B120C | C0C0 C0C0 C0C0 | Background of row for selected song (inactive) |
| 20 | 4B1214 | C0C0 C0C0 C0C0 | Bevel on the word "Source" at the top of the source list |
| 21 | 4B121C | EDED F3F3 FEFE | Background color of odd numbered rows in playlists |
| 22 | 4B1224 | FFFF FFFF FFFF | Background color of even numbered rows in playlists |
| 23 | 4B122C | 7D7D AAAA EAEA | Hilite or bevel of selected song row in playlist (active) |
| 22 | 4B1234 | E0E0 E0E0 E0E0 | Hilite or bevel of selected song (inactive) |
| 23 | 4B123C | E8E8 E8E8 E8E8 | Bevel of text on metal (i.e. song totals, etc.) |
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!