[Galaxy S III Android Development] Robbie Hood:
Well since its free for anyone to use now :D

CustomSettings is THE apk to easily controll your MODs.

Its a universal preferences app made easy.

Nothing needs to be modified in smali/classes in secsettings or this because the app is build to handle every preference switch/checkbox or whatever.

All that needs editting is /res/xml/preferences.xml

see sample preferences.xml below which uses almost every available preference elements

:some_tools

android:key="modcfg_example" will search for a empty text file on a path on sdcard to either activate or deactivate a mod

android:key="example" will handle it as boolean

android:key="tool#hotboot" will use the tool activity to make a hotboot or reboot or whatever coded in the tool activity

android:key="tool#shell#example-script.sh" will execute script in a certain path

android:key="activity;com.my.example;com.my.example.Activity" will run a external activity

<com.ficeto.colorpicker.ColorPickerPreference android:title="Test Color" android:key="test_color" android:summary="Choose or Order to apply change" android:dialogTitle="Select Color" /> will use the implemented colorpicker to set a color for a certain mod implemented in framework or system apps

and i think i can go on for a bit longer but basicvly it handles all preferences and a bit more without the need for coding SecSettings or a class in CustomSettings itself

<?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen
xmlns:android="http://schemas.android.com/apk/res/android">
<PreferenceCategory android:title="Samples">
<PreferenceScreen android:title="Samples" android:summary="Shows samples">
<PreferenceCategory android:title="Preference Screens">
<PreferenceScreen android:title="Preference Screen" android:summary="Shows nested preference screeen">
<SwitchPreference android:title="Sub Screen Preference" android:key="test_sub" android:summaryOn="Option On" android:summaryOff="Option Off" />
<PreferenceCategory android:title="Sub Preference Screens">
<PreferenceScreen android:title="Sub Preference Screen" android:summary="Shows nested preference screeen deeper">
<SwitchPreference android:title="Sub-Sub Screen Preference" android:key="test_subsub" android:summaryOn="Option On" android:summaryOff="Option Off" />
</PreferenceScreen>
</PreferenceCategory>
</PreferenceScreen>
</PreferenceCategory>
<PreferenceCategory android:title="Activities Launch">
<Preference android:title="Activity Shortcut" android:key="activity;com.android.settings;com.android.settings.applications.ManageApplications" android:summary="Lets you launch activities" />
</PreferenceCategory>
<PreferenceCategory android:title="Tools">
<Preference android:title="Reboot" android:key="tool#reboot" android:summary="Will do a normal reboot" />
<Preference android:title="Soft Reboot" android:key="tool#hotboot" android:summary="Will restart only the UI of your phone" />
<Preference android:title="Reboot into Recovery" android:key="tool#recovery" android:summary="Will reboot your phone into recovery mode" />
<Preference android:title="Reboot into Download Mode" android:key="tool#download" android:summary="Will reboot your phone into download mode" />
<Preference android:title="Restart SystemUI" android:key="tool#restartsystemui" android:summary="Will restart the SystemUI (Phone Status Bar)" />
<Preference android:title="Execute Shell Command" android:key="tool#shell#pkill -TERM -f com.ficeto.customsettings" android:summary="Example will kill this application!" />
</PreferenceCategory>
<PreferenceCategory android:title="System Settings">
<PreferenceScreen android:title="System Settings" android:summary="Controls Examples System Settings">
<PreferenceCategory android:title="CheckBox Preferences">
<CheckBoxPreference android:title="CheckBox Preference" android:key="test_checkbox" android:summaryOn="CheckBox is On" android:summaryOff="CheckBox is Off" />
</PreferenceCategory>
<PreferenceCategory android:title="Switch Preferences">
<SwitchPreference android:title="Switch Preference" android:key="test_switch" android:summaryOn="Switch is On" android:summaryOff="Switch is Off" />
</PreferenceCategory>
<PreferenceCategory android:title="Seek Bar Preferences">
<SeekBarPreference android:max="100" android:title="Seek Bar Preference" android:key="test_seekbar" />
</PreferenceCategory>
<PreferenceCategory android:title="Edit Text Preferences">
<EditTextPreference android:title="Edit Text Preference" android:key="test_edittext" android:summary="Edit Text Fields" android:dialogTitle="Enter Text Value" />
</PreferenceCategory>
<PreferenceCategory android:title="List Preferences">
<ListPreference android:entries="@array/test_list_entries" android:title="List Preference" android:key="test_list" android:summary="Select a single item from a list" android:defaultValue="0" android:dialogTitle="Select Item" android:entryValues="@array/test_list_values" />
</PreferenceCategory>
<PreferenceCategory android:title="Multi Select List Preferences">
<MultiSelectListPreference android:entries="@array/test_multiselectlist_entries" android:title="Multi Select List Preference" android:key="test_multiselectlist" android:dialogTitle="Multi Select List" android:entryValues="@array/test_multiselectlist_values" />
</PreferenceCategory>
<PreferenceCategory android:title="Color Picker Preferences">
<com.ficeto.colorpicker.ColorPickerPreference android:title="Integer Color Picker Preference" android:key="test_color_int" android:summary="Changes selected color" android:dialogTitle="Select Color" />
<com.ficeto.colorpicker.ColorPickerPreference android:title="ARGB Int Split Color Picker Preference" android:key="argb;test_color_alpha;test_color_red;test_color_green;test_color_blue" android:summary="Changes selected color" android:dialogTitle="Select Color" />
<com.ficeto.colorpicker.ColorPickerPreference android:title="ARGB Float Split Color Picker Preference" android:key="argbf;test_color_float_alpha;test_color_float_red;test_color_float_green;test_color_float_blue" android:summary="Changes selected color" android:dialogTitle="Select Color" />
<com.ficeto.colorpicker.ColorPickerPreference android:title="ARGB Color Picker Preference" android:key="argb_test_color_argb" android:summary="Changes selected color" android:dialogTitle="Select Color" />
<com.ficeto.colorpicker.ColorPickerPreference android:title="RGB Color Picker Preference" android:key="rgb_test_color_rgb" android:summary="Changes selected color" android:dialogTitle="Select Color" />
</PreferenceCategory>
<PreferenceCategory android:title="Ringtone Preferences">
<RingtonePreference android:title="Ringtone Preference" android:key="test_ringtone" android:summary="Select Sound from ringtones" android:ringtoneType="ringtone" android:showDefault="false" android:showSilent="false" />
<RingtonePreference android:title="Notification Ringtone Preference" android:key="test_ringtone_notification" android:summary="Select Sound from notifications" android:ringtoneType="notification" android:showDefault="false" android:showSilent="false" />
<RingtonePreference android:title="Alarm Ringtone Preference" android:key="test_ringtone_alarm" android:summary="Select Sound from alarms" android:ringtoneType="alarm" android:showDefault="false" android:showSilent="false" />
</PreferenceCategory>
</PreferenceScreen>
</PreferenceCategory>
<PreferenceCategory android:title="MOD File Config Settings">
<PreferenceScreen android:title="MOD File Config Settings" android:summary="Shows examples for controlling mods through files in the folder defined in res/values/strings.xml">
<SwitchPreference android:title="Normal file option (switch)" android:key="modcfg_test_sw" android:summaryOn="File DOES exist" android:summaryOff="File DOES NOT exist" />
<SwitchPreference android:title="Reverse file option(switch)" android:key="modcfgreverse_test_sw_reverse" android:summaryOn="File DOES NOT exist" android:summaryOff="File DOES exist" />
<CheckBoxPreference android:title="Normal file option(checkbox)" android:key="modcfg_test_cb" android:summaryOn="File DOES exist" android:summaryOff="File DOES NOT exist" />
<CheckBoxPreference android:title="Reverse file option(checkbox)" android:key="modcfgreverse_test_cb_reverse" android:summaryOn="File DOES NOT exist" android:summaryOff="File DOES exist" />
</PreferenceScreen>
</PreferenceCategory>
</PreferenceScreen>
</PreferenceCategory>
</PreferenceScreen>