OmniGears: statusbar clock and date customization (2/2)

Change-Id: Ifcfd582215ba337efb4d63c19e780b88889f66a8
diff --git a/res/values/custom_arrays.xml b/res/values/custom_arrays.xml
index d8621aa..d858e75 100644
--- a/res/values/custom_arrays.xml
+++ b/res/values/custom_arrays.xml
@@ -540,64 +540,48 @@
         <item>2</item>
     </string-array>
 
-    <!-- Statusbar Clock options -->
-    <string-array name="clock_style_entries" translatable="false">
-        <item>@string/right_clock</item>
-        <item>@string/left_clock</item>
+    <!-- Statusbar Clock -->
+    <string-array name="status_bar_clock_style_entries" translatable="false">
+        <item>@string/status_bar_clock_style_left</item>
+        <item>@string/status_bar_clock_style_center</item>
+        <item>@string/status_bar_clock_style_right</item>
     </string-array>
-
-    <string-array name="clock_style_values" translatable="false">
-        <item>0</item>
-        <item>1</item>
-    </string-array>
-
-    <string-array name="clock_date_position_entries" translatable="false">
-        <item>@string/clock_date_left</item>
-        <item>@string/clock_date_right</item>
-    </string-array>
-
-    <string-array name="clock_date_position_values" translatable="false">
-        <item>0</item>
-        <item>1</item>
-    </string-array>
-
-    <string-array name="entries_status_bar_am_pm">
-        <item>@string/am_pm_clock_none</item>
-        <item>@string/am_pm_clock_small</item>
-        <item>@string/am_pm_clock_normal</item>
-    </string-array>
-
-    <string-array name="values_status_bar_am_pm" translatable="false">
+     <string-array name="status_bar_clock_style_values" translatable="false">
         <item>0</item>
         <item>1</item>
         <item>2</item>
     </string-array>
-
-    <string-array name="clock_date_display_entries">
+     <string-array name="status_bar_am_pm_entries" translatable="false">
+        <item>@string/status_bar_am_pm_hidden</item>
+        <item>@string/status_bar_am_pm_small</item>
+        <item>@string/status_bar_am_pm_normal</item>
+    </string-array>
+     <string-array name="status_bar_am_pm_values" translatable="false">
+        <item>0</item>
+        <item>1</item>
+        <item>2</item>
+    </string-array>
+     <string-array name="clock_date_display_entries">
         <item>@string/clock_date_display_none</item>
         <item>@string/clock_date_display_small</item>
         <item>@string/clock_date_display_normal</item>
     </string-array>
-
-    <string-array name="clock_date_display_values" translatable="false">
+     <string-array name="clock_date_display_values" translatable="false">
         <item>0</item>
         <item>1</item>
         <item>2</item>
     </string-array>
-
-    <string-array name="clock_date_style_entries">
+     <string-array name="clock_date_style_entries">
         <item>@string/clock_date_style_normal</item>
         <item>@string/clock_date_style_lowercase</item>
         <item>@string/clock_date_style_uppercase</item>
     </string-array>
-
-    <string-array name="clock_date_style_values" translatable="false">
+     <string-array name="clock_date_style_values" translatable="false">
         <item>0</item>
         <item>1</item>
         <item>2</item>
     </string-array>
-
-    <string-array name="clock_date_format_entries_values">
+     <string-array name="clock_date_format_entries_values">
         <item>dd/MM/yy</item>
         <item>MM/dd/yy</item>
         <item>yyyy-MM-dd</item>
diff --git a/res/values/custom_strings.xml b/res/values/custom_strings.xml
index a75b527..d8d9ce3 100644
--- a/res/values/custom_strings.xml
+++ b/res/values/custom_strings.xml
@@ -655,39 +655,32 @@
     <string name="battery_percent_always">Always</string>
     <string name="battery_percent_expanded">Only when expanded</string>
 
-    <string name="status_bar_clock">Clock &amp; Date</string>
-    <string name="clock_title_enable">Alignment</string>
-    <string name="clock_enabled">Enabled</string>
-    <string name="clock_disabled">Disabled</string>
-    <string name="status_bar_clock_style_reset">Reset color</string>
-    <string name="status_bar_show_clock_title">Show clock &amp; date</string>
-    <string name="status_bar_am_pm_title">AM/PM</string>
+    <!-- Statusbar Clock -->
+    <string name="status_bar_clock_title">Clock settings</string>
+    <string name="status_bar_clock_show">Show clock and date</string>
+    <string name="status_bar_clock_style_title">Clock style</string>
+    <string name="status_bar_clock_style_right">Right</string>
+    <string name="status_bar_clock_style_center">Center</string>
+    <string name="status_bar_clock_style_left">Left</string>
+    <string name="status_bar_am_pm_title">AM/PM style</string>
     <string name="status_bar_am_pm_info">24-hour clock is enabled</string>
-    <string name="enable_clock_weekday">Day of the week</string>
-    <string name="enable_clock_weekday_summary">Abbreviated day of the week before the time</string>
-    <string name="right_clock">Right clock</string>
-    <string name="left_clock">Left clock</string>
-    <string name="dont_show">Don\'t show</string>
+    <string name="status_bar_am_pm_normal">Normal</string>
+    <string name="status_bar_am_pm_small">Small</string>
+    <string name="status_bar_am_pm_hidden">Hidden (default)</string>
+    <string name="clock_seconds_display">Show seconds</string>
     <string name="clock_date_display">Date</string>
     <string name="clock_date_display_summary">Display custom date before the clock</string>
-    <string name="clock_date_style">Date style</string>
-    <string name="clock_date_position">Date position</string>
-    <string name="clock_date_format">Date format</string>
-    <string name="clock_date_string_edittext_title">Must be in DateFormat eg. MM/dd/yy</string>
-    <string name="clock_date_string_edittext_summary">Enter string</string>
-    <string name="clock_date_right">Right of time</string>
-    <string name="clock_date_left">Left of time</string>
-    <string name="am_pm_clock_normal">Normal font size</string>
-    <string name="am_pm_clock_small">Small font size</string>
-    <string name="am_pm_clock_none">Don\'t show</string>
     <string name="clock_date_display_none">Don\'t show</string>
     <string name="clock_date_display_small">Small font size</string>
     <string name="clock_date_display_normal">Normal font size</string>
+    <string name="clock_date_style">Date style</string>
     <string name="clock_date_style_normal">Normal</string>
     <string name="clock_date_style_lowercase">Lowercase</string>
     <string name="clock_date_style_uppercase">Uppercase</string>
     <string name="clock_date_format_custom">Custom java format</string>
-    <string name="status_bar_clock_seconds_title">Show seconds</string>
+    <string name="clock_date_format">Date format</string>
+    <string name="clock_date_string_edittext_title">Must be in DateFormat eg. MM/dd/yy</string>
+    <string name="clock_date_string_edittext_summary">Enter string</string>
 
     <!-- fingerprint authentication vibration -->
     <string name="fprint_sucess_vib_title">Fingerprint authentication vibration</string>
diff --git a/res/xml/bars_settings.xml b/res/xml/bars_settings.xml
index 32d0cde..93c82dd 100644
--- a/res/xml/bars_settings.xml
+++ b/res/xml/bars_settings.xml
@@ -20,18 +20,58 @@
             android:key="bars_settings"
             android:title="@string/custom_bars_settings_title" >
 
-        <PreferenceCategory
-            android:key="quick_settings_category"
-            android:title="@string/quick_settings_category">
+    <PreferenceCategory
+        android:title="@string/status_bar_clock_title">
 
-            <org.omnirom.omnilib.preference.SeekBarPreference
-                android:key="qs_panel_alpha"
-                android:title="@string/qs_panel_alpha_title"
-                android:summary="@string/qs_panel_alpha_summary"
-                android:max="100"
-                settings:min="0"
-                settings:unitsRight="@string/unit_percent"
-                android:persistent="false" />
+         <org.omnirom.omnilib.preference.SystemSettingSwitchPreference
+            android:key="status_bar_clock"
+            android:title="@string/status_bar_clock_show"
+            android:defaultValue="true" />
+
+         <ListPreference
+            android:key="statusbar_clock_style"
+            android:title="@string/status_bar_clock_style_title"
+            android:dialogTitle="@string/status_bar_clock_style_title"
+            android:entries="@array/status_bar_clock_style_entries"
+            android:entryValues="@array/status_bar_clock_style_values"
+            android:dependency="status_bar_clock" />
+
+         <ListPreference
+            android:key="status_bar_am_pm"
+            android:title="@string/status_bar_am_pm_title"
+            android:dialogTitle="@string/status_bar_am_pm_title"
+            android:entries="@array/status_bar_am_pm_entries"
+            android:entryValues="@array/status_bar_am_pm_values"
+            android:dependency="status_bar_clock" />
+
+         <org.omnirom.omnilib.preference.SystemSettingSwitchPreference
+            android:key="status_bar_clock_seconds"
+            android:title="@string/clock_seconds_display"
+            android:dependency="status_bar_clock"
+            android:defaultValue="false" />
+
+         <ListPreference
+            android:key="clock_date_display"
+            android:title="@string/clock_date_display"
+            android:summary="@string/clock_date_display_summary"
+            android:entries="@array/clock_date_display_entries"
+            android:entryValues="@array/clock_date_display_values"
+            android:dependency="status_bar_clock" />
+
+         <ListPreference
+            android:key="clock_date_style"
+            android:title="@string/clock_date_style"
+            android:entries="@array/clock_date_style_entries"
+            android:entryValues="@array/clock_date_style_values"
+            android:dependency="clock_date_display" />
+
+         <ListPreference
+            android:key="clock_date_format"
+            android:title="@string/clock_date_format"
+            android:entries="@array/clock_date_format_entries_values"
+            android:entryValues="@array/clock_date_format_entries_values"
+            android:dependency="clock_date_display" />
+
         </PreferenceCategory>
 
     <PreferenceCategory
@@ -55,6 +95,20 @@
         </PreferenceCategory>
 
         <PreferenceCategory
+            android:key="quick_settings_category"
+            android:title="@string/quick_settings_category">
+
+            <org.omnirom.omnilib.preference.SeekBarPreference
+                android:key="qs_panel_alpha"
+                android:title="@string/qs_panel_alpha_title"
+                android:summary="@string/qs_panel_alpha_summary"
+                android:max="100"
+                settings:min="0"
+                settings:unitsRight="@string/unit_percent"
+                android:persistent="false" />
+        </PreferenceCategory>
+
+        <PreferenceCategory
             android:key="statusbar_settings_category"
             android:title="@string/statusbar_settings_category">