[Motorola Droid X2] hedwig34:
I'll try to give a step by step.

The original toggles are based off of the 2.3.3 toggles which did not have the flashlight. So you'll need the smali files for flashlight.

Take a look at the overload toggle zip and decomplile SystemUI.apk.

1. Take the two smali files from SystemUI.apk\smali\com\android\systemui\statusbar\quickpanel for Flashlight.

You will also need to take the smali file SystemUI.apk\smali\com\android\util\LedController.smali.

This file is basicly the link to the camera hardware to tell it to turn the light on or off. If you forget this everthing will still re-compile but you'll lose your status bar (:o I did this).

Copy those three smali files to your project.

2.	Then open up SystemUI.apk\res\values\public.xml

Copy the Flashlight values to your public.xml

<public type="drawable" name="quickpanel_icon_flashlight_on" id="0x7f020038" />
...
<public type="drawable" name="quickpanel_icon_flashlight_off" id="0x7f0200fe" />
...
<public type="string" name="quickpanel_flashlight_text" id="0x7f07001c" />
...
<public type="id" name="quickpanel_flashlight_btn_icon" id="0x7f090037" />
<public type="id" name="quickpanel_flashlight_btn_text" id="0x7f090038" />
<public type="id" name="quickpanel_flashlight_btn_status_icon" id="0x7f090039" />

3. So here's where it gets hairy. You'll need to check the resource ids of each of those entries to see if they are already used. Search for that value in the public.xml file and hope you only find it once.

If you do you're home free. But if you don't and I bet you won't. You'll need to find new IDs that are not being used and change the values in public.xml and in the FlashlightSettingButton.smali file. Since you want to lose GPS you could steal the IDs from GPS just don't forget to remove all traces of GPS everywhere.

I had some really funky looking toggles when testing this because I didn't change the values in the smali files. I should have taken screenshots of those.:)

4. After your resource issues are (hopefully) resolved look at the \res\values\ids.xml and copy the flashlight references to your id.xml.

5. Do the same with \res\values\strings.xml (hint, the strings.xml in the overload toggles all have no values. That's why there are no captions on the overload toggle mod).

6. To change the order of the toggles go to res\layout\status_bar_expanded.xml

Look at the block starting with <com.android.systemui.statusbar.quickpanel.QuickSettin

Here's what the overload one looks like.

<com.android.systemui.statusbar.quickpanel.QuickSettingsView android:orientation="horizontal" android:id="@id/quickpanel_quick_settings" android:background="@drawable/quickpanel_quick_settings_background" android:layout_width="fill_parent" android:layout_height="wrap_content">
<FrameLayout android:layout_width="wrap_content" android:layout_height="65.32999dip" android:layout_weight="1.0">
<ImageView android:layout_gravity="center_horizontal" android:id="@id/quickpanel_wifi_btn_icon" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="3.0dip" android:src="@drawable/quickpanel_icon_wifi_off" />
<com.android.systemui.statusbar.quickpanel.WifiSettingButton android:textSize="0.0dip" android:textStyle="bold" android:textColor="#ffdfdfdf" android:gravity="center_horizontal" android:id="@id/quickpanel_wifi_btn_text" android:paddingTop="35.0dip" android:layout_width="fill_parent" android:layout_height="fill_parent" android:text="@string/quickpanel_wifi_text" android:shadowDx="1.0" android:shadowDy="1.0" />
<ImageView android:layout_gravity="bottom|center" android:id="@id/quickpanel_wifi_btn_status_icon" android:paddingLeft="2.2999878dip" android:paddingRight="2.2999878dip" android:layout_width="fill_parent" android:layout_height="5.299988dip" android:layout_marginBottom="4.0dip" android:src="@drawable/quickpanel_icon_off" android:scaleType="fitXY" />
</FrameLayout>
<FrameLayout android:layout_width="wrap_content" android:layout_height="65.32999dip" android:layout_weight="1.0">
<ImageView android:layout_gravity="center_horizontal" android:id="@id/quickpanel_bt_btn_icon" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="3.0dip" android:src="@drawable/quickpanel_icon_bluetooth_off" />
<com.android.systemui.statusbar.quickpanel.BluetoothSettingButton android:textSize="0.0dip" android:textStyle="bold" android:textColor="#ffdfdfdf" android:gravity="center_horizontal" android:id="@id/quickpanel_bt_btn_text" android:paddingTop="35.0dip" android:layout_width="fill_parent" android:layout_height="fill_parent" android:text="@string/quickpanel_bluetooth_text" android:shadowDx="1.0" android:shadowDy="1.0" />
<ImageView android:layout_gravity="bottom|center" android:id="@id/quickpanel_bt_btn_status_icon" android:paddingLeft="2.2999878dip" android:paddingRight="2.2999878dip" android:layout_width="fill_parent" android:layout_height="5.299988dip" android:layout_marginBottom="4.0dip" android:src="@drawable/quickpanel_icon_off" android:scaleType="fitXY" />
</FrameLayout>
<FrameLayout android:layout_width="wrap_content" android:layout_height="65.32999dip" android:layout_weight="1.0">
<ImageView android:layout_gravity="center_horizontal" android:id="@id/quickpanel_gps_btn_icon" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="3.0dip" android:src="@drawable/quickpanel_icon_gps_off" />
<com.android.systemui.statusbar.quickpanel.GpsSettingButton android:textSize="0.0dip" android:textStyle="bold" android:textColor="#ffdfdfdf" android:gravity="center_horizontal" android:id="@id/quickpanel_gps_btn_text" android:paddingTop="35.0dip" android:layout_width="fill_parent" android:layout_height="fill_parent" android:text="@string/quickpanel_gps_text" android:shadowDx="1.0" android:shadowDy="1.0" />
<ImageView android:layout_gravity="bottom|center" android:id="@id/quickpanel_gps_btn_status_icon" android:paddingLeft="2.2999878dip" android:paddingRight="2.2999878dip" android:layout_width="fill_parent" android:layout_height="5.299988dip" android:layout_marginBottom="4.0dip" android:src="@drawable/quickpanel_icon_off" android:scaleType="fitXY" />
</FrameLayout>
<FrameLayout android:layout_width="wrap_content" android:layout_height="65.32999dip" android:layout_weight="1.0">
<ImageView android:layout_gravity="center_horizontal" android:id="@id/quickpanel_flashlight_btn_icon" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="3.0dip" android:src="@drawable/quickpanel_icon_flashlight_off" />
<com.android.systemui.statusbar.quickpanel.FlashlightSettingButton android:textSize="0.0dip" android:textStyle="bold" android:textColor="#ffdfdfdf" android:gravity="center_horizontal" android:id="@id/quickpanel_flashlight_btn_text" android:paddingTop="35.0dip" android:layout_width="fill_parent" android:layout_height="fill_parent" android:text="@string/quickpanel_flashlight_text" android:shadowDx="1.0" android:shadowDy="1.0" />
<ImageView android:layout_gravity="bottom|center" android:id="@id/quickpanel_flashlight_btn_status_icon" android:paddingLeft="2.2999878dip" android:paddingRight="2.2999878dip" android:layout_width="fill_parent" android:layout_height="5.299988dip" android:layout_marginBottom="4.0dip" android:src="@drawable/quickpanel_icon_off" android:scaleType="fitXY" />
</FrameLayout>
<FrameLayout android:layout_width="wrap_content" android:layout_height="65.32999dip" android:layout_weight="1.0">
<ImageView android:layout_gravity="center_horizontal" android:id="@id/quickpanel_brightness_btn_icon" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="3.0dip" android:src="@drawable/quickpanel_icon_brightness_off" />
<com.android.systemui.statusbar.quickpanel.BrightnessSettingButton android:textSize="0.0dip" android:textStyle="bold" android:textColor="#ffdfdfdf" android:gravity="center_horizontal" android:id="@id/quickpanel_brightness_btn_text" android:paddingTop="35.0dip" android:layout_width="fill_parent" android:layout_height="fill_parent" android:text="@string/quickpanel_brightness_text" android:shadowDx="1.0" android:shadowDy="1.0" />
<ImageView android:layout_gravity="bottom|center" android:id="@id/quickpanel_brightness_btn_status_icon" android:paddingLeft="2.2999878dip" android:paddingRight="2.2999878dip" android:layout_width="fill_parent" android:layout_height="5.299988dip" android:layout_marginBottom="4.0dip" android:src="@drawable/quickpanel_icon_off" android:scaleType="fitXY" />
</FrameLayout>
<FrameLayout android:layout_width="wrap_content" android:layout_height="65.32999dip" android:layout_weight="1.0">
<ImageView android:layout_gravity="center_horizontal" android:id="@id/quickpanel_mobiledata_btn_icon" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="3.0dip" android:src="@drawable/quickpanel_icon_mobile_data_off" />
<com.android.systemui.statusbar.quickpanel.MobileDataSettingButton android:textSize="0.0dip" android:textStyle="bold" android:textColor="#ffdfdfdf" android:gravity="center_horizontal" android:id="@id/quickpanel_mobiledata_btn_text" android:paddingTop="35.0dip" android:layout_width="fill_parent" android:layout_height="fill_parent" android:text="@string/quickpanel_mobiledata_text" android:shadowDx="1.0" android:shadowDy="1.0" />
<ImageView android:layout_gravity="bottom|center" android:id="@id/quickpanel_mobiledata_btn_status_icon" android:paddingLeft="2.2999878dip" android:paddingRight="2.2999878dip" android:layout_width="fill_parent" android:layout_height="5.299988dip" android:layout_marginBottom="4.0dip" android:src="@drawable/quickpanel_icon_off" android:scaleType="fitXY" />
</FrameLayout>
<FrameLayout android:layout_width="wrap_content" android:layout_height="65.32999dip" android:layout_weight="1.0">
<ImageView android:layout_gravity="center_horizontal" android:id="@id/quickpanel_flight_btn_icon" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="3.0dip" android:src="@drawable/quickpanel_icon_flight_mode_off" />
<com.android.systemui.statusbar.quickpanel.FlightSettingButton android:textSize="0.0dip" android:textStyle="bold" android:textColor="#ffdfdfdf" android:gravity="center_horizontal" android:id="@id/quickpanel_flight_btn_text" android:paddingTop="35.0dip" android:layout_width="fill_parent" android:layout_height="fill_parent" android:text="@string/quickpanel_flight_text" android:shadowDx="1.0" android:shadowDy="1.0" />
<ImageView android:layout_gravity="bottom|center" android:id="@id/quickpanel_flight_btn_status_icon" android:paddingLeft="2.2999878dip" android:paddingRight="2.2999878dip" android:layout_width="fill_parent" android:layout_height="5.299988dip" android:layout_marginBottom="4.0dip" android:src="@drawable/quickpanel_icon_off" android:scaleType="fitXY" />
</FrameLayout>
<FrameLayout android:layout_width="wrap_content" android:layout_height="65.32999dip" android:layout_weight="1.0">
<ImageView android:layout_gravity="center_horizontal" android:id="@id/quickpanel_sound_btn_icon" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="3.0dip" android:src="@drawable/quickpanel_icon_sound_on_on" />
<com.android.systemui.statusbar.quickpanel.SoundSettingButton android:textSize="0.0dip" android:textStyle="bold" android:textColor="#ffdfdfdf" android:gravity="center_horizontal" android:id="@id/quickpanel_sound_btn_text" android:paddingTop="35.0dip" android:layout_width="fill_parent" android:layout_height="fill_parent" android:text="@string/quickpanel_sound_text" android:shadowDx="1.0" android:shadowDy="1.0" />
<ImageView android:layout_gravity="bottom|center" android:id="@id/quickpanel_sound_btn_status_icon" android:paddingLeft="2.2999878dip" android:paddingRight="2.2999878dip" android:layout_width="fill_parent" android:layout_height="5.299988dip" android:layout_marginBottom="4.0dip" android:src="@drawable/quickpanel_icon_off" android:scaleType="fitXY" />
</FrameLayout>
</com.android.systemui.statusbar.quickpanel.QuickSettingsView>

Just re-arange the FrameLayout blocks in the order you want the buttons to appear. If you want to remove a toggle just remove the FrameLayout for it.

Option 2:

1. The fastest approach may be, becasue I already took care of the resource conflicts, to start with the overload toggles.

2. Then change the layout the way you want.

3. Replace the icons with what you want.

4. Edit the strings.xml to put your captions in (I may have one of those mapped wrong, if you find it let me know)

5. Also in the overload I have accidnetly used a black background, you can replace it with the blue one from the original.

Let me know if this helps out.