[XPERIA X10 Themes and Apps] MrRusch:
Images. Sure let me break it down..

framework-res.apk

Here I added the images needed (stat_sys_signal_[5-32].png) to drawable-hdpi. To be able to reference these from services.jar, I also gave them IDs in the public.xml:

<public type="drawable" name="stat_sys_signal_5" id="0x0108048c" />
<public type="drawable" name="stat_sys_signal_6" id="0x0108048d" />
<public type="drawable" name="stat_sys_signal_7" id="0x0108048e" />
<public type="drawable" name="stat_sys_signal_8" id="0x0108048f" />
<public type="drawable" name="stat_sys_signal_9" id="0x01080490" />
<public type="drawable" name="stat_sys_signal_10" id="0x01080491" />
<public type="drawable" name="stat_sys_signal_11" id="0x01080492" />
<public type="drawable" name="stat_sys_signal_12" id="0x01080493" />
<public type="drawable" name="stat_sys_signal_13" id="0x01080494" />
<public type="drawable" name="stat_sys_signal_14" id="0x01080495" />
<public type="drawable" name="stat_sys_signal_15" id="0x01080496" />
<public type="drawable" name="stat_sys_signal_16" id="0x01080497" />
<public type="drawable" name="stat_sys_signal_17" id="0x01080498" />
<public type="drawable" name="stat_sys_signal_18" id="0x01080499" />
<public type="drawable" name="stat_sys_signal_19" id="0x0108049a" />
<public type="drawable" name="stat_sys_signal_20" id="0x0108049b" />
<public type="drawable" name="stat_sys_signal_21" id="0x0108049c" />
<public type="drawable" name="stat_sys_signal_22" id="0x0108049d" />
<public type="drawable" name="stat_sys_signal_23" id="0x0108049e" />
<public type="drawable" name="stat_sys_signal_24" id="0x0108049f" />
<public type="drawable" name="stat_sys_signal_25" id="0x010804a0" />
<public type="drawable" name="stat_sys_signal_26" id="0x010804a1" />
<public type="drawable" name="stat_sys_signal_27" id="0x010804a2" />
<public type="drawable" name="stat_sys_signal_28" id="0x010804a3" />
<public type="drawable" name="stat_sys_signal_29" id="0x010804a4" />
<public type="drawable" name="stat_sys_signal_30" id="0x010804a5" />
<public type="drawable" name="stat_sys_signal_31" id="0x010804a6" />
<public type="drawable" name="stat_sys_signal_32" id="0x010804a7" />

services.jar

All changes were made in StatusBarPolicy.smali. Firstly, I extended the array sSignalImages to a length of 33, so that it could hold all the references. For this, I added one more register, created a new constant and initialized the array with this instead.

.method static constructor <clinit>()V
.registers [B]4[/B]

.prologue
[B] const/16 v3, 0x21[/B]

const/4 v2, 0x5

const/4 v1, 0x4

.line 115
new-array v0, [B]v3[/B], [I

fill-array-data v0, :array_44

Then I extended the actual array with references to the new images:

.array-data 0x4
0x2at 0x4t 0x8t 0x1t
0x2ct 0x4t 0x8t 0x1t
0x2et 0x4t 0x8t 0x1t
0x30t 0x4t 0x8t 0x1t
0x32t 0x4t 0x8t 0x1t
[B] 0x8ct 0x4t 0x8t 0x1t
0x8dt 0x4t 0x8t 0x1t
0x8et 0x4t 0x8t 0x1t
0x8ft 0x4t 0x8t 0x1t
0x90t 0x4t 0x8t 0x1t
0x91t 0x4t 0x8t 0x1t
0x92t 0x4t 0x8t 0x1t
0x93t 0x4t 0x8t 0x1t
0x94t 0x4t 0x8t 0x1t
0x95t 0x4t 0x8t 0x1t
0x96t 0x4t 0x8t 0x1t
0x97t 0x4t 0x8t 0x1t
0x98t 0x4t 0x8t 0x1t
0x99t 0x4t 0x8t 0x1t
0x9at 0x4t 0x8t 0x1t
0x9bt 0x4t 0x8t 0x1t
0x9ct 0x4t 0x8t 0x1t
0x9dt 0x4t 0x8t 0x1t
0x9et 0x4t 0x8t 0x1t
0x9ft 0x4t 0x8t 0x1t
0xa0t 0x4t 0x8t 0x1t
0xa1t 0x4t 0x8t 0x1t
0xa2t 0x4t 0x8t 0x1t
0xa3t 0x4t 0x8t 0x1t
0xa4t 0x4t 0x8t 0x1t
0xa5t 0x4t 0x8t 0x1t
0xa6t 0x4t 0x8t 0x1t
0xa7t 0x4t 0x8t 0x1t[/B]
.end array-data

So now the image references were read into the array properly. All I did then was change the logic concerning how to set the iconLevel (normally done by the if-statement discussed earlier in the thread). Basically, I removed those conditions, and replaced them with my own..

.method private final updateSignalStrength()V

...

.line 889
.local v0, asu:I
const/16 v3, 0x63

if-ne v0, v3, :cond_5e

:cond_43
const/16 v1, [B]0x20[/B]

...

:cond_5e
[B]move v1, v0[/B]

goto :goto_44

And this is basically saying:

if (asu != 99)
iconLevel = asu;
else
iconLevel = 32;

Note: This modification does so far not cover CDMA, EVDO or roaming -networks. But the same process can be used on these as well.

EDIT: In 2.3.3 ROMs these resources have been moved to SystemUI.apk.