configure.in.in                      |    2 
 settings-backend/kconfig_backend.cpp |  788 +++++++++++++++++++----------------
 2 files changed, 434 insertions(+), 356 deletions(-)

New commits:
commit 466eb03fdb9bc120ca21d9c9055fbcda257f0507
Author: Guillaume Seguin <[EMAIL PROTECTED]>
Date:   Fri Apr 4 00:19:35 2008 +0200

    * Bump version to 0.7.4

diff --git a/configure.in.in b/configure.in.in
index 1d09871..4292eaf 100644
--- a/configure.in.in
+++ b/configure.in.in
@@ -1,6 +1,6 @@
 #MIN_CONFIG
 KDE_ENABLE_HIDDEN_VISIBILITY
-AM_INIT_AUTOMAKE(compizconfig-backend-kconfig,0.7.3)
+AM_INIT_AUTOMAKE(compizconfig-backend-kconfig,0.7.4)
 
 AC_CHECK_RANDOM
 AC_CHECK_USLEEP

commit d3a2f81d0d446ce46ddc909065aad6aab99e3f0f
Author: Dennis Kasprzyk <[EMAIL PROTECTED]>
Date:   Tue Apr 1 01:28:25 2008 +0200

    Fixed integrated bool settings.

diff --git a/settings-backend/kconfig_backend.cpp 
b/settings-backend/kconfig_backend.cpp
index 7153326..3bac424 100644
--- a/settings-backend/kconfig_backend.cpp
+++ b/settings-backend/kconfig_backend.cpp
@@ -1103,7 +1103,7 @@ CCSBoolToKde (CCSSetting *setting,
 
     Bool val;
 
-    if (!ccsGetInt (setting, &val) )
+    if (!ccsGetBool (setting, &val) )
        return;
 
     if (cfg->readBoolEntry (specialOptions[num].kdeName) != bool (val) )

commit 877c0b23ec2590cae6d557a1f8953d6065e656fb
Author: Guillaume Seguin <[EMAIL PROTECTED]>
Date:   Thu Mar 6 23:12:50 2008 +0100

    * Bump version to 0.7.3

diff --git a/configure.in.in b/configure.in.in
index 8e2df61..1d09871 100644
--- a/configure.in.in
+++ b/configure.in.in
@@ -1,6 +1,6 @@
 #MIN_CONFIG
 KDE_ENABLE_HIDDEN_VISIBILITY
-AM_INIT_AUTOMAKE(compizconfig-backend-kconfig,0.7.2)
+AM_INIT_AUTOMAKE(compizconfig-backend-kconfig,0.7.3)
 
 AC_CHECK_RANDOM
 AC_CHECK_USLEEP

commit e036af8d415864c7e546fecdfdd51e6ea34f4297
Author: Guillaume Seguin <[EMAIL PROTECTED]>
Date:   Thu Mar 6 23:11:16 2008 +0100

    * Bump version to 0.7.2

diff --git a/configure.in.in b/configure.in.in
index 64eebaf..8e2df61 100644
--- a/configure.in.in
+++ b/configure.in.in
@@ -1,6 +1,6 @@
 #MIN_CONFIG
 KDE_ENABLE_HIDDEN_VISIBILITY
-AM_INIT_AUTOMAKE(compizconfig-backend-kconfig,0.6.99)
+AM_INIT_AUTOMAKE(compizconfig-backend-kconfig,0.7.2)
 
 AC_CHECK_RANDOM
 AC_CHECK_USLEEP

commit 1a8104eb8cc271fce792da4576b9a5d87a9146f8
Author: Guillaume Seguin <[EMAIL PROTECTED]>
Date:   Sun Oct 21 12:53:32 2007 +0200

    * Bump version to 0.6.99

diff --git a/configure.in.in b/configure.in.in
index b2624ce..64eebaf 100644
--- a/configure.in.in
+++ b/configure.in.in
@@ -1,6 +1,6 @@
 #MIN_CONFIG
 KDE_ENABLE_HIDDEN_VISIBILITY
-AM_INIT_AUTOMAKE(compizconfig-backend-kconfig,0.5.2)
+AM_INIT_AUTOMAKE(compizconfig-backend-kconfig,0.6.99)
 
 AC_CHECK_RANDOM
 AC_CHECK_USLEEP
@@ -18,4 +18,4 @@ else
     ccs_libdir=`$PKG_CONFIG --variable=libdir libcompizconfig`      
     BACKENDDIR=$ccs_libdir/compizconfig
 fi        
-AC_SUBST(BACKENDDIR)
\ No newline at end of file
+AC_SUBST(BACKENDDIR)

commit 8122b867fcd9a3e5e8ff855cf1ecc779cf794365
Author: Dennis Kasprzyk <[EMAIL PROTECTED]>
Date:   Thu Sep 20 00:06:19 2007 +0200

    Fixed profile handling.

diff --git a/settings-backend/kconfig_backend.cpp 
b/settings-backend/kconfig_backend.cpp
index 3714458..7153326 100644
--- a/settings-backend/kconfig_backend.cpp
+++ b/settings-backend/kconfig_backend.cpp
@@ -223,6 +223,17 @@ const specialOptions[] =
 #define N_SOPTIONS (sizeof (specialOptions) / sizeof (struct _SpecialOption))
 
 static void
+createFile (QString name)
+{
+    if (!QFile::exists(name))
+    {
+       QFile file (name);
+       file.open (IO_WriteOnly | IO_Append);
+       file.close ();
+    }
+}
+
+static void
 reload (unsigned int,
        void     *closure)
 {
@@ -653,9 +664,9 @@ getExistingProfiles (CCSContext *)
     {
        QString str = (*it);
 
-       if (str.length() > 8)
+       if (str.length() > 9)
        {
-           QString profile = str.right (str.length() - 8);
+           QString profile = str.right (str.length() - 9);
 
            if (!profile.isEmpty() )
                ret = ccsStringListAppend (ret, strdup (profile.ascii() ) );
@@ -1806,10 +1817,12 @@ readInit (CCSContext *c)
 
        delete cFiles->main;
 
-       cFiles->main = new KSimpleConfig (configName);
-       ccsRemoveFileWatch (cFiles->watch);
        QString wFile = KGlobal::dirs()->saveLocation ("config",
                        QString::null, false) + configName;
+       createFile (wFile);
+       
+       cFiles->main = new KSimpleConfig (configName);
+       ccsRemoveFileWatch (cFiles->watch);
        cFiles->watch = ccsAddFileWatch (wFile.ascii(), TRUE,
                                         reload, (void *) c);
     }
@@ -1840,10 +1853,13 @@ writeInit (CCSContext *c)
 
        delete cFiles->main;
 
-       cFiles->main = new KSimpleConfig (configName);
-       ccsRemoveFileWatch (cFiles->watch);
        QString wFile = KGlobal::dirs()->saveLocation ("config",
                        QString::null, false) + configName;
+       
+       createFile (wFile);
+       
+       cFiles->main = new KSimpleConfig (configName);
+       ccsRemoveFileWatch (cFiles->watch);
        cFiles->watch = ccsAddFileWatch (wFile.ascii(), TRUE,
                                         reload, (void *) c);
     }
@@ -1892,15 +1908,18 @@ init (CCSContext *c)
        cFiles->profile = ccsGetProfile (c);
     }
 
+    QString wFile = KGlobal::dirs()->saveLocation ("config",
+                   QString::null, false) + configName;
+
+    createFile (wFile);
+
     cFiles->main = new KSimpleConfig (configName);
     cFiles->kwin   = new KConfig ("kwinrc");
     cFiles->global = new KConfig ("kdeglobals");
-    
+
     cFiles->kwin->setGroup ("Windows");
     cFiles->global->setGroup ("Global Shortcuts");
-    
-    QString wFile = KGlobal::dirs()->saveLocation ("config",
-                   QString::null, false) + configName;
+
     cFiles->watch = ccsAddFileWatch (wFile.ascii(), TRUE, reload, (void *) c);
 
     wFile = KGlobal::dirs()->saveLocation ("config",

commit 90dc6e91e822ec5dc845eaa903946c8f69320951
Author: Dennis Kasprzyk <[EMAIL PROTECTED]>
Date:   Mon Aug 20 22:30:28 2007 +0200

    Fixed integrated setting names.

diff --git a/settings-backend/kconfig_backend.cpp 
b/settings-backend/kconfig_backend.cpp
index 2552268..3714458 100644
--- a/settings-backend/kconfig_backend.cpp
+++ b/settings-backend/kconfig_backend.cpp
@@ -91,94 +91,94 @@ struct _SpecialOption
 
 const specialOptions[] =
 {
-    {"close_window", CORE_NAME, "Window Close", true, OptionKey},
-    {"run", CORE_NAME, "Run Command", true, OptionKey},
-    {"main_menu", CORE_NAME, "Popup Launch Menu", true, OptionKey},
-    {"lower_window", CORE_NAME, "Window Lower", true, OptionKey},
-    {"toggle_window_maximized", CORE_NAME, "Window Maximize", true, OptionKey},
-    {"minimize_window", CORE_NAME, "Window Minimize", true, OptionKey},
-    {"toggle_window_maximized_horizontally", CORE_NAME, "Window Maximize 
Horizontal", true, OptionKey},
-    {"toggle_window_maximized_vertically", CORE_NAME, "Window Maximize 
Vertical", true, OptionKey},
-    {"show_desktop", CORE_NAME, "Toggle Showing Desktop", true, OptionKey},
-    {"run_command_screenshot", CORE_NAME, "Desktop Screenshot", true, 
OptionKey},
-    {"run_command_window_screenshot", CORE_NAME, "Window Screenshot", true, 
OptionKey},
-    {"window_menu", CORE_NAME, "Window Operations Menu", true, OptionKey},
-    {"toggle_window_shaded", CORE_NAME, "Window Shade", true, OptionKey},
-    {"raise_window", CORE_NAME, "Window Raise", true, OptionKey},
-    {"toggle_window_fullscreen", CORE_NAME, "Window Fullscreen", true, 
OptionKey},
-    {"run_command11", CORE_NAME, "Kill Window", true, OptionKey},
-    {"initiate", "move", "Window Move", true, OptionKey},
-    {"initiate", "resize", "Window Resize", true, OptionKey},
-    {"rotate_right", "rotate", "Switch to Next Desktop", true, OptionKey},
-    {"rotate_left", "rotate", "Switch to Previous Desktop", true, OptionKey},
-    {"rotate_to_1", "rotate", "Switch to Desktop 1", true, OptionKey},
-    {"rotate_to_2", "rotate", "Switch to Desktop 2", true, OptionKey},
-    {"rotate_to_3", "rotate", "Switch to Desktop 3", true, OptionKey},
-    {"rotate_to_4", "rotate", "Switch to Desktop 4", true, OptionKey},
-    {"rotate_to_5", "rotate", "Switch to Desktop 5", true, OptionKey},
-    {"rotate_to_6", "rotate", "Switch to Desktop 6", true, OptionKey},
-    {"rotate_to_7", "rotate", "Switch to Desktop 7", true, OptionKey},
-    {"rotate_to_8", "rotate", "Switch to Desktop 8", true, OptionKey},
-    {"rotate_to_9", "rotate", "Switch to Desktop 9", true, OptionKey},
-    {"rotate_to_10", "rotate", "Switch to Desktop 10", true, OptionKey},
-    {"rotate_to_11", "rotate", "Switch to Desktop 11", true, OptionKey},
-    {"rotate_to_12", "rotate", "Switch to Desktop 12", true, OptionKey},
-    {"rotate_right_window", "rotate", "Window to Next Desktop", true, 
OptionKey},
-    {"rotate_left_window", "rotate", "Window to Previous Desktop", true, 
OptionKey},
-    {"rotate_to_1_window", "rotate", "Window to Desktop 1", true, OptionKey},
-    {"rotate_to_2_window", "rotate", "Window to Desktop 2", true, OptionKey},
-    {"rotate_to_3_window", "rotate", "Window to Desktop 3", true, OptionKey},
-    {"rotate_to_4_window", "rotate", "Window to Desktop 4", true, OptionKey},
-    {"rotate_to_5_window", "rotate", "Window to Desktop 5", true, OptionKey},
-    {"rotate_to_6_window", "rotate", "Window to Desktop 6", true, OptionKey},
-    {"rotate_to_7_window", "rotate", "Window to Desktop 7", true, OptionKey},
-    {"rotate_to_8_window", "rotate", "Window to Desktop 8", true, OptionKey},
-    {"rotate_to_9_window", "rotate", "Window to Desktop 9", true, OptionKey},
-    {"rotate_to_10_window", "rotate", "Window to Desktop 10", true, OptionKey},
-    {"rotate_to_11_window", "rotate", "Window to Desktop 11", true, OptionKey},
-    {"rotate_to_12_window", "rotate", "Window to Desktop 12", true, OptionKey},
-
-    {"next", "wall", "Switch to Next Desktop", true, OptionKey},
-    {"prev", "wall", "Switch to Previous Desktop", true, OptionKey},
-    {"right_window", "wall", "Window One Desktop to the Right", true, 
OptionKey},
-    {"left_window", "wall", "Window One Desktop to the Left", true, OptionKey},
-    {"up_window", "wall", "Window One Desktop Up", true, OptionKey},
-    {"down_window", "wall", "Window One Desktop Down", true, OptionKey},
-    {"up", "wall", "Switch One Desktop Up", true, OptionKey},
-    {"down", "wall", "Switch One Desktop Down", true, OptionKey},
-    {"left", "wall", "Switch One Desktop to the Left", true, OptionKey},
-    {"right", "wall", "Switch One Desktop to the Right", true, OptionKey},
-
-    {"plane_up", "plane", "Switch One Desktop Up", true, OptionKey},
-    {"plane_down", "plane", "Switch One Desktop Down", true, OptionKey},
-    {"plane_left", "plane", "Switch One Desktop to the Left", true, OptionKey},
-    {"plane_right", "plane", "Switch One Desktop to the Right", true, 
OptionKey},
-
-    {"plane_to_1", "plane", "Switch to Desktop 1", true, OptionKey},
-    {"plane_to_2", "plane", "Switch to Desktop 2", true, OptionKey},
-    {"plane_to_3", "plane", "Switch to Desktop 3", true, OptionKey},
-    {"plane_to_4", "plane", "Switch to Desktop 4", true, OptionKey},
-    {"plane_to_5", "plane", "Switch to Desktop 5", true, OptionKey},
-    {"plane_to_6", "plane", "Switch to Desktop 6", true, OptionKey},
-    {"plane_to_7", "plane", "Switch to Desktop 7", true, OptionKey},
-    {"plane_to_8", "plane", "Switch to Desktop 8", true, OptionKey},
-    {"plane_to_9", "plane", "Switch to Desktop 9", true, OptionKey},
-    {"plane_to_10", "plane", "Switch to Desktop 10", true, OptionKey},
-    {"plane_to_11", "plane", "Switch to Desktop 11", true, OptionKey},
-    {"plane_to_12", "plane", "Switch to Desktop 12", true, OptionKey},
-
-    {"switch_to_1", "vpswitch", "Switch to Desktop 1", true, OptionKey},
-    {"switch_to_2", "vpswitch", "Switch to Desktop 2", true, OptionKey},
-    {"switch_to_3", "vpswitch", "Switch to Desktop 3", true, OptionKey},
-    {"switch_to_4", "vpswitch", "Switch to Desktop 4", true, OptionKey},
-    {"switch_to_5", "vpswitch", "Switch to Desktop 5", true, OptionKey},
-    {"switch_to_6", "vpswitch", "Switch to Desktop 6", true, OptionKey},
-    {"switch_to_7", "vpswitch", "Switch to Desktop 7", true, OptionKey},
-    {"switch_to_8", "vpswitch", "Switch to Desktop 8", true, OptionKey},
-    {"switch_to_9", "vpswitch", "Switch to Desktop 9", true, OptionKey},
-    {"switch_to_10", "vpswitch", "Switch to Desktop 10", true, OptionKey},
-    {"switch_to_11", "vpswitch", "Switch to Desktop 11", true, OptionKey},
-    {"switch_to_12", "vpswitch", "Switch to Desktop 12", true, OptionKey},
+    {"close_window_key", CORE_NAME, "Window Close", true, OptionKey},
+    {"run_key", CORE_NAME, "Run Command", true, OptionKey},
+    {"main_menu_key", CORE_NAME, "Popup Launch Menu", true, OptionKey},
+    {"lower_window_key", CORE_NAME, "Window Lower", true, OptionKey},
+    {"toggle_window_maximized_key", CORE_NAME, "Window Maximize", true, 
OptionKey},
+    {"minimize_window_key", CORE_NAME, "Window Minimize", true, OptionKey},
+    {"toggle_window_maximized_horizontally_key", CORE_NAME, "Window Maximize 
Horizontal", true, OptionKey},
+    {"toggle_window_maximized_vertically_key", CORE_NAME, "Window Maximize 
Vertical", true, OptionKey},
+    {"show_desktop_key", CORE_NAME, "Toggle Showing Desktop", true, OptionKey},
+    {"run_command_screenshot_key", CORE_NAME, "Desktop Screenshot", true, 
OptionKey},
+    {"run_command_window_screenshot_key", CORE_NAME, "Window Screenshot", 
true, OptionKey},
+    {"window_menu_key", CORE_NAME, "Window Operations Menu", true, OptionKey},
+    {"toggle_window_shaded_key", CORE_NAME, "Window Shade", true, OptionKey},
+    {"raise_window_key", CORE_NAME, "Window Raise", true, OptionKey},
+    {"toggle_window_fullscreen_key", CORE_NAME, "Window Fullscreen", true, 
OptionKey},
+    {"run_command11_key", CORE_NAME, "Kill Window", true, OptionKey},
+    {"initiate_key", "move", "Window Move", true, OptionKey},
+    {"initiate_key", "resize", "Window Resize", true, OptionKey},
+    {"rotate_right_key", "rotate", "Switch to Next Desktop", true, OptionKey},
+    {"rotate_left_key", "rotate", "Switch to Previous Desktop", true, 
OptionKey},
+    {"rotate_to_1_key", "rotate", "Switch to Desktop 1", true, OptionKey},
+    {"rotate_to_2_key", "rotate", "Switch to Desktop 2", true, OptionKey},
+    {"rotate_to_3_key", "rotate", "Switch to Desktop 3", true, OptionKey},
+    {"rotate_to_4_key", "rotate", "Switch to Desktop 4", true, OptionKey},
+    {"rotate_to_5_key", "rotate", "Switch to Desktop 5", true, OptionKey},
+    {"rotate_to_6_key", "rotate", "Switch to Desktop 6", true, OptionKey},
+    {"rotate_to_7_key", "rotate", "Switch to Desktop 7", true, OptionKey},
+    {"rotate_to_8_key", "rotate", "Switch to Desktop 8", true, OptionKey},
+    {"rotate_to_9_key", "rotate", "Switch to Desktop 9", true, OptionKey},
+    {"rotate_to_10_key", "rotate", "Switch to Desktop 10", true, OptionKey},
+    {"rotate_to_11_key", "rotate", "Switch to Desktop 11", true, OptionKey},
+    {"rotate_to_12_key", "rotate", "Switch to Desktop 12", true, OptionKey},
+    {"rotate_right_window_key", "rotate", "Window to Next Desktop", true, 
OptionKey},
+    {"rotate_left_window_key", "rotate", "Window to Previous Desktop", true, 
OptionKey},
+    {"rotate_to_1_window_key", "rotate", "Window to Desktop 1", true, 
OptionKey},
+    {"rotate_to_2_window_key", "rotate", "Window to Desktop 2", true, 
OptionKey},
+    {"rotate_to_3_window_key", "rotate", "Window to Desktop 3", true, 
OptionKey},
+    {"rotate_to_4_window_key", "rotate", "Window to Desktop 4", true, 
OptionKey},
+    {"rotate_to_5_window_key", "rotate", "Window to Desktop 5", true, 
OptionKey},
+    {"rotate_to_6_window_key", "rotate", "Window to Desktop 6", true, 
OptionKey},
+    {"rotate_to_7_window_key", "rotate", "Window to Desktop 7", true, 
OptionKey},
+    {"rotate_to_8_window_key", "rotate", "Window to Desktop 8", true, 
OptionKey},
+    {"rotate_to_9_window_key", "rotate", "Window to Desktop 9", true, 
OptionKey},
+    {"rotate_to_10_window_key", "rotate", "Window to Desktop 10", true, 
OptionKey},
+    {"rotate_to_11_window_key", "rotate", "Window to Desktop 11", true, 
OptionKey},
+    {"rotate_to_12_window_key", "rotate", "Window to Desktop 12", true, 
OptionKey},
+
+    {"next_key", "wall", "Switch to Next Desktop", true, OptionKey},
+    {"prev_key", "wall", "Switch to Previous Desktop", true, OptionKey},
+    {"right_window_key", "wall", "Window One Desktop to the Right", true, 
OptionKey},
+    {"left_window_key", "wall", "Window One Desktop to the Left", true, 
OptionKey},
+    {"up_window_key", "wall", "Window One Desktop Up", true, OptionKey},
+    {"down_window_key", "wall", "Window One Desktop Down", true, OptionKey},
+    {"up_key", "wall", "Switch One Desktop Up", true, OptionKey},
+    {"down_key", "wall", "Switch One Desktop Down", true, OptionKey},
+    {"left_key", "wall", "Switch One Desktop to the Left", true, OptionKey},
+    {"right_key", "wall", "Switch One Desktop to the Right", true, OptionKey},
+
+    {"plane_up_key", "plane", "Switch One Desktop Up", true, OptionKey},
+    {"plane_down_key", "plane", "Switch One Desktop Down", true, OptionKey},
+    {"plane_left_key", "plane", "Switch One Desktop to the Left", true, 
OptionKey},
+    {"plane_right_key", "plane", "Switch One Desktop to the Right", true, 
OptionKey},
+
+    {"plane_to_1_key", "plane", "Switch to Desktop 1", true, OptionKey},
+    {"plane_to_2_key", "plane", "Switch to Desktop 2", true, OptionKey},
+    {"plane_to_3_key", "plane", "Switch to Desktop 3", true, OptionKey},
+    {"plane_to_4_key", "plane", "Switch to Desktop 4", true, OptionKey},
+    {"plane_to_5_key", "plane", "Switch to Desktop 5", true, OptionKey},
+    {"plane_to_6_key", "plane", "Switch to Desktop 6", true, OptionKey},
+    {"plane_to_7_key", "plane", "Switch to Desktop 7", true, OptionKey},
+    {"plane_to_8_key", "plane", "Switch to Desktop 8", true, OptionKey},
+    {"plane_to_9_key", "plane", "Switch to Desktop 9", true, OptionKey},
+    {"plane_to_10_key", "plane", "Switch to Desktop 10", true, OptionKey},
+    {"plane_to_11_key", "plane", "Switch to Desktop 11", true, OptionKey},
+    {"plane_to_12_key", "plane", "Switch to Desktop 12", true, OptionKey},
+
+    {"switch_to_1_key", "vpswitch", "Switch to Desktop 1", true, OptionKey},
+    {"switch_to_2_key", "vpswitch", "Switch to Desktop 2", true, OptionKey},
+    {"switch_to_3_key", "vpswitch", "Switch to Desktop 3", true, OptionKey},
+    {"switch_to_4_key", "vpswitch", "Switch to Desktop 4", true, OptionKey},
+    {"switch_to_5_key", "vpswitch", "Switch to Desktop 5", true, OptionKey},
+    {"switch_to_6_key", "vpswitch", "Switch to Desktop 6", true, OptionKey},
+    {"switch_to_7_key", "vpswitch", "Switch to Desktop 7", true, OptionKey},
+    {"switch_to_8_key", "vpswitch", "Switch to Desktop 8", true, OptionKey},
+    {"switch_to_9_key", "vpswitch", "Switch to Desktop 9", true, OptionKey},
+    {"switch_to_10_key", "vpswitch", "Switch to Desktop 10", true, OptionKey},
+    {"switch_to_11_key", "vpswitch", "Switch to Desktop 11", true, OptionKey},
+    {"switch_to_12_key", "vpswitch", "Switch to Desktop 12", true, OptionKey},
 
     {"autoraise", CORE_NAME, "AutoRaise", false, OptionBool},
     {"raise_on_click", CORE_NAME, "ClickRaise", false, OptionBool},
@@ -191,10 +191,10 @@ const specialOptions[] =
 
     {"command_screenshot", CORE_NAME, NULL, true, OptionSpecial},
     {"command_window_screenshot", CORE_NAME, NULL, true, OptionSpecial},
-    {"unmaximize_window", CORE_NAME, NULL, true, OptionSpecial},
-    {"maximize_window", CORE_NAME, NULL, true, OptionSpecial},
-    {"maximize_window_horizontally", CORE_NAME, NULL, true, OptionSpecial},
-    {"maximize_window_vertically", CORE_NAME, NULL, true, OptionSpecial},
+    {"unmaximize_window_key", CORE_NAME, NULL, true, OptionSpecial},
+    {"maximize_window_key", CORE_NAME, NULL, true, OptionSpecial},
+    {"maximize_window_horizontally_key", CORE_NAME, NULL, true, OptionSpecial},
+    {"maximize_window_vertically_key", CORE_NAME, NULL, true, OptionSpecial},
     {"command11", CORE_NAME, NULL, true, OptionSpecial},
     {"click_to_focus", CORE_NAME, NULL, false, OptionSpecial},
     {"mode", "resize", NULL, true, OptionSpecial},
@@ -205,12 +205,12 @@ const specialOptions[] =
     {"resistance_distance", "snap", NULL, false, OptionSpecial},
     {"attraction_distance", "snap", NULL, false, OptionSpecial},
 
-    {"next", "switcher", "Walk Through Windows", true, OptionSpecial},
-    {"prev", "switcher", "Walk Through Windows (Reverse)", true, 
OptionSpecial},
-    {"next_all", "switcher", "Walk Through Windows", true, OptionSpecial},
-    {"prev_all", "switcher", "Walk Through Windows (Reverse)", true, 
OptionSpecial},
-    {"next_no_popup", "switcher", "Walk Through Windows", true, OptionSpecial},
-    {"prev_no_popup", "switcher", "Walk Through Windows (Reverse)", true, 
OptionSpecial},
+    {"next_key", "switcher", "Walk Through Windows", true, OptionSpecial},
+    {"prev_key", "switcher", "Walk Through Windows (Reverse)", true, 
OptionSpecial},
+    {"next_all_key", "switcher", "Walk Through Windows", true, OptionSpecial},
+    {"prev_all_key", "switcher", "Walk Through Windows (Reverse)", true, 
OptionSpecial},
+    {"next_no_popup_key", "switcher", "Walk Through Windows", true, 
OptionSpecial},
+    {"prev_no_popup_key", "switcher", "Walk Through Windows (Reverse)", true, 
OptionSpecial},
 
     {"edge_flip_pointer", "rotate", "ElectricBorders",  false, OptionSpecial},
     {"edge_flip_window", "rotate", "ElectricBorders",  false, OptionSpecial},
@@ -353,10 +353,10 @@ readIntegratedOption (CCSSetting *setting)
        {
            ccsSetString (setting, "xkill");
        }
-       else if (specialOptions[option].settingName == "unmaximize_window"
-                || specialOptions[option].settingName == "maximize_window"
-                || specialOptions[option].settingName == 
"maximize_window_horizontally"
-                || specialOptions[option].settingName == 
"maximize_window_vertically")
+       else if (specialOptions[option].settingName == "unmaximize_window_key"
+                || specialOptions[option].settingName == "maximize_window_key"
+                || specialOptions[option].settingName == 
"maximize_window_horizontally_key"
+                || specialOptions[option].settingName == 
"maximize_window_vertically_key")
        {
            CCSSettingKeyValue keyVal;
 
@@ -452,8 +452,8 @@ readIntegratedOption (CCSSetting *setting)
            ccsSetList (setting, list);
            ccsSettingValueListFree (list, TRUE);
        }
-       else if (specialOptions[option].settingName == "next" ||
-                specialOptions[option].settingName == "prev")
+       else if (specialOptions[option].settingName == "next_key" ||
+                specialOptions[option].settingName == "prev_key")
        {
            bool val1;
            bool val2 = (cFiles->kwin->readEntry ("AltTabStyle") == "KDE");
@@ -476,8 +476,8 @@ readIntegratedOption (CCSSetting *setting)
                }
            }
        }
-       else if (specialOptions[option].settingName == "next_all" ||
-                specialOptions[option].settingName == "prev_all")
+       else if (specialOptions[option].settingName == "next_all_key" ||
+                specialOptions[option].settingName == "prev_all_key")
        {
            bool val1;
            bool val2 = (cFiles->kwin->readEntry ("AltTabStyle") == "KDE");
@@ -500,8 +500,8 @@ readIntegratedOption (CCSSetting *setting)
                }
            }
        }
-       else if (specialOptions[option].settingName == "next_no_popup" ||
-                specialOptions[option].settingName == "prev_no_popup")
+       else if (specialOptions[option].settingName == "next_no_popup_key" ||
+                specialOptions[option].settingName == "prev_no_popup_key")
        {
            bool val2 = (cFiles->kwin->readEntry ("AltTabStyle") == "KDE");
 
@@ -614,10 +614,10 @@ getSettingIsReadOnly (CCSSetting *setting)
        {
            return TRUE;
        }
-       else if (specialOptions[option].settingName == "unmaximize_window"
-                || specialOptions[option].settingName == "maximize_window"
-                || specialOptions[option].settingName == 
"maximize_window_horizontally"
-                || specialOptions[option].settingName == 
"maximize_window_vertically")
+       else if (specialOptions[option].settingName == "unmaximize_window_key"
+                || specialOptions[option].settingName == "maximize_window_key"
+                || specialOptions[option].settingName == 
"maximize_window_horizontally_key"
+                || specialOptions[option].settingName == 
"maximize_window_vertically_key")
        {
            return TRUE;
        }
@@ -1173,10 +1173,10 @@ writeIntegratedOption (CCSSetting *setting)
        if (specialOptions[option].settingName == "command_screenshot"
            || specialOptions[option].settingName == "command_window_screenshot"
            || specialOptions[option].settingName == "command11"
-           || specialOptions[option].settingName == "unmaximize_window"
-           || specialOptions[option].settingName == "maximize_window"
-           || specialOptions[option].settingName == 
"maximize_window_horizontally"
-           || specialOptions[option].settingName == 
"maximize_window_vertically")
+           || specialOptions[option].settingName == "unmaximize_window_key"
+           || specialOptions[option].settingName == "maximize_window_key"
+           || specialOptions[option].settingName == 
"maximize_window_horizontally_key"
+           || specialOptions[option].settingName == 
"maximize_window_vertically_key")
            break;
 
        if (specialOptions[option].settingName == "click_to_focus")
@@ -1275,8 +1275,8 @@ writeIntegratedOption (CCSSetting *setting)
                cFiles->modified = true;
            cFiles->main->writeEntry ("snap_distance (Integrated)",iVal);
        }
-       else if (specialOptions[option].settingName == "next" ||
-                specialOptions[option].settingName == "prev")
+       else if (specialOptions[option].settingName == "next_key" ||
+                specialOptions[option].settingName == "prev_key")
        {
            CCSSettingKeyValue keyVal;
 
@@ -1296,8 +1296,8 @@ writeIntegratedOption (CCSSetting *setting)
 
            cFiles->modified = true;
        }
-       else if (specialOptions[option].settingName == "next_all" ||
-                specialOptions[option].settingName == "prev_all")
+       else if (specialOptions[option].settingName == "next_all_key" ||
+                specialOptions[option].settingName == "prev_all_key")
        {
            CCSSettingKeyValue keyVal;
 
@@ -1317,8 +1317,8 @@ writeIntegratedOption (CCSSetting *setting)
 
            cFiles->modified = true;
        }
-       else if (specialOptions[option].settingName == "next_no_popup" ||
-                specialOptions[option].settingName == "prev_no_popup")
+       else if (specialOptions[option].settingName == "next_no_popup_key" ||
+                specialOptions[option].settingName == "prev_no_popup_key")
        {
            CCSSettingKeyValue keyVal;
 

commit ad414c13dda401edf965e95dfc0be2f0a31ab80a
Author: Dennis Kasprzyk <[EMAIL PROTECTED]>
Date:   Mon Aug 20 22:23:46 2007 +0200

    Apply libcompizconfig changes.

diff --git a/settings-backend/kconfig_backend.cpp 
b/settings-backend/kconfig_backend.cpp
index bb20d93..2552268 100644
--- a/settings-backend/kconfig_backend.cpp
+++ b/settings-backend/kconfig_backend.cpp
@@ -299,13 +299,13 @@ KdeKeyToCCS (CCSSetting *setting,
     if (key.modFlags() & KKey::WIN)
        kdeKeymod |= CompSuperMask;
 
-    CCSSettingActionValue action;
+    CCSSettingKeyValue keySet;
 
-    if (!key.isNull() && ccsGetAction (setting, &action) )
+    if (!key.isNull())
     {
-       action.keysym = kdeKeysym;
-       action.keyModMask = kdeKeymod;
-       ccsSetAction (setting, action);
+       keySet.keysym = kdeKeysym;
+       keySet.keyModMask = kdeKeymod;
+       ccsSetKey (setting, keySet);
     }
 }
 
@@ -358,16 +358,16 @@ readIntegratedOption (CCSSetting *setting)
                 || specialOptions[option].settingName == 
"maximize_window_horizontally"
                 || specialOptions[option].settingName == 
"maximize_window_vertically")
        {
-           CCSSettingActionValue action;
+           CCSSettingKeyValue keyVal;
 
-           if (!ccsGetAction (setting, &action) )
+           if (!ccsGetKey (setting, &keyVal) )
                break;
 
-           action.keysym = 0;
+           keyVal.keysym = 0;
 
-           action.keyModMask = 0;
+           keyVal.keyModMask = 0;
 
-           ccsSetAction (setting, action);
+           ccsSetKey (setting, keyVal);
        }
        else if (specialOptions[option].settingName == "click_to_focus")
        {
@@ -466,13 +466,13 @@ readIntegratedOption (CCSSetting *setting)
                KdeKeyToCCS (setting, option);
            else
            {
-                CCSSettingActionValue action;
+                CCSSettingKeyValue keyVal;
 
-               if (ccsGetAction (setting, &action) )
+               if (ccsGetKey (setting, &keyVal) )
                {
-                   action.keysym = 0;
-                   action.keyModMask = 0;
-                   ccsSetAction (setting, action);
+                   keyVal.keysym = 0;
+                   keyVal.keyModMask = 0;
+                   ccsSetKey (setting, keyVal);
                }
            }
        }
@@ -490,13 +490,13 @@ readIntegratedOption (CCSSetting *setting)
                KdeKeyToCCS (setting, option);
            else
            {
-                CCSSettingActionValue action;
+                CCSSettingKeyValue keyVal;
 
-               if (ccsGetAction (setting, &action) )
+               if (ccsGetKey (setting, &keyVal) )
                {
-                   action.keysym = 0;
-                   action.keyModMask = 0;
-                   ccsSetAction (setting, action);
+                   keyVal.keysym = 0;
+                   keyVal.keyModMask = 0;
+                   ccsSetKey (setting, keyVal);
                }
            }
        }
@@ -509,13 +509,13 @@ readIntegratedOption (CCSSetting *setting)
                KdeKeyToCCS (setting, option);
            else
            {
-                CCSSettingActionValue action;
+                CCSSettingKeyValue keyVal;
 
-               if (ccsGetAction (setting, &action) )
+               if (ccsGetKey (setting, &keyVal) )
                {
-                   action.keysym = 0;
-                   action.keyModMask = 0;
-                   ccsSetAction (setting, action);
+                   keyVal.keysym = 0;
+                   keyVal.keyModMask = 0;
+                   ccsSetKey (setting, keyVal);
                }
            }
        }
@@ -692,7 +692,7 @@ readSetting (CCSContext *c,
     }
 
 
-    if (setting->type != TypeAction && !cfg->hasKey (key) )
+    if (!cfg->hasKey (key) )
     {
        ccsResetToDefault (setting);
        return;
@@ -921,119 +921,142 @@ readSetting (CCSContext *c,
                }
                break;
 
-           case TypeAction:
+           case TypeKey:
                {
                    QStringList list = cfg->readListEntry (key);
 
-                   CCSSettingActionValue *array =
-                       new CCSSettingActionValue[list.count() ];
-                   int i = 0;
+                   CCSSettingValue     *val = NULL;
+                   CCSSettingValueList l = NULL;
 
                    QStringList::iterator it;
 
                    for (it = list.begin(); it != list.end(); it++)
                    {
-                       QStringList binding = QStringList::split (",", (*it) );
-                       array[i].button = binding[0].toInt();
-                       array[i].buttonModMask = binding[1].toInt();
-                       array[i].keysym = binding[2].toInt();
-                       array[i].keyModMask = binding[3].toInt();
-                       array[i].onBell = (binding[4].toInt() ) ? TRUE : FALSE;
-                       array[i].edgeMask = binding[5].toInt();
-                       array[i].edgeButton = binding[6].toInt();
-                       i++;
+                       val = (CCSSettingValue*) malloc (sizeof 
(CCSSettingValue));
+                       if (!val)
+                           break;
+                       if (ccsStringToKeyBinding ((*it).ascii (),
+                                                  &val->value.asKey))
+                           l = ccsSettingValueListAppend (l, val);
+                       else
+                           free (val);
                    }
 
-                   CCSSettingValueList l =
-
-                       ccsGetValueListFromActionArray (array, i, setting);
                    ccsSetList (setting, l);
                    ccsSettingValueListFree (l, TRUE);
-                   delete array;
                }
                break;
+           case TypeButton:
+               {
+                   QStringList list = cfg->readListEntry (key);
 
-           default:
-               break;
-           }
-       }
-       break;
+                   CCSSettingValue     *val = NULL;
+                   CCSSettingValueList l = NULL;
 
-    case TypeAction:
-       {
-           CCSSettingActionValue action;
-           Bool changed = false;
+                   QStringList::iterator it;
+
+                   for (it = list.begin(); it != list.end(); it++)
+                   {
+                       val = (CCSSettingValue*) malloc (sizeof 
(CCSSettingValue));
+                       if (!val)
+                           break;
+                       if (ccsStringToButtonBinding ((*it).ascii (),
+                                                     &val->value.asButton))
+                           l = ccsSettingValueListAppend (l, val);
+                       else
+                           free (val);
+                   }
 
-           if (!ccsGetAction (setting, &action) )
+                   ccsSetList (setting, l);
+                   ccsSettingValueListFree (l, TRUE);
+               }
                break;
+           case TypeEdge:
+               {
+                   QStringList list = cfg->readListEntry (key);
 
-           if (cfg->hasKey (key + "_key") )
-           {
-               changed = true;
-               ccsStringToKeyBinding (cfg->readEntry (key + "_key").ascii(),
-                                      &action);
-           }
+                   CCSSettingValue     *val = NULL;
+                   CCSSettingValueList l = NULL;
 
-           if (cfg->hasKey (key + "_button") )
-           {
-               changed = true;
-               ccsStringToButtonBinding (
-                   cfg->readEntry (key + "_button").ascii(),
-                   &action);
-           }
+                   QStringList::iterator it;
 
-           if (cfg->hasKey (key + "_edge") )
-           {
-               QStringList list = cfg->readListEntry (key + "_edge", '|');
-               CCSStringList edgeList = NULL;
-               QStringList::iterator it;
+                   for (it = list.begin(); it != list.end(); it++)
+                   {
+                       val = (CCSSettingValue*) malloc (sizeof 
(CCSSettingValue));
+                       if (!val)
+                           break;
+                       val->value.asEdge = ccsStringToEdges ((*it).ascii ());
+                       l = ccsSettingValueListAppend (l, val);
+                   }
 
-               for (it = list.begin(); it != list.end(); it++)
-                   edgeList = ccsStringListAppend (edgeList,
-                                                   strdup ( (*it).ascii() ) );
+                   ccsSetList (setting, l);
+                   ccsSettingValueListFree (l, TRUE);
+               }
+               break;
+           case TypeBell:
+               {
+                   QValueList<int> list = cfg->readIntListEntry (key);
 
-               ccsStringListToEdges (edgeList, &action);
+                   CCSSettingValue     *val = NULL;
+                   CCSSettingValueList l = NULL;
 
-               ccsStringListFree (edgeList, TRUE);
+                   QValueList<int>::iterator it;
+
+                   for (it = list.begin(); it != list.end(); it++)
+                   {
+                       val =  (CCSSettingValue*) malloc (sizeof 
(CCSSettingValue));
+                       val->value.asBell = ((*it)) ? TRUE : FALSE;
+                       l = ccsSettingValueListAppend (l, val);
+                   }
+
+                   ccsSetList (setting, l);
+                   ccsSettingValueListFree (l, TRUE);
+               }
+               break;
 
-               changed = true;
+           default:
+               break;
            }
+       }
+       break;
 
-           if (cfg->hasKey (key + "_edgeButton") )
-           {
-               changed = true;
-               char * sval =
-                   strdup (cfg->readEntry (key + "_edgeButton").ascii() );
-               char * spos = sval;
-               int button = 0;
+    case TypeKey:
+       {
+           QString str = cfg->readEntry (key);
 
-               if (spos && *spos)
-               {
-                   spos = strcasestr (spos, "Button");
+           CCSSettingKeyValue value;
 
-                   if (spos && *spos)
-                   {
-                       spos += strlen ("Button");
-                       button = atoi (spos);
-                   }
-               }
+           ccsStringToKeyBinding (str.ascii(), &value);
 
-               action.edgeButton = button;
+           ccsSetKey (setting, value);
+       }
+       break;
+    case TypeButton:
+       {
+           QString str = cfg->readEntry (key);
 
-               delete sval;
-           }
+           CCSSettingButtonValue value;
 
-           if (cfg->hasKey (key + "_bell") )
-           {
-               changed = true;
-               action.onBell =
-                   (cfg->readBoolEntry (key + "_bell") ) ? TRUE : FALSE;
-           }
+           ccsStringToButtonBinding (str.ascii(), &value);
 
-           if (changed)
-               ccsSetAction (setting, action);
-           else
-               ccsResetToDefault (setting);
+           ccsSetButton (setting, value);
+       }
+       break;
+    case TypeEdge:
+       {
+           QString str = cfg->readEntry (key);
+
+           unsigned int value;
+
+           value = ccsStringToEdges (str.ascii());
+
+           ccsSetEdge (setting, value);
+       }
+       break;
+    case TypeBell:
+       {
+           Bool val = (cfg->readBoolEntry (key)) ? TRUE : FALSE;
+           ccsSetBell (setting, val);
        }
        break;
 
@@ -1085,26 +1108,26 @@ CCSKeyToKde (CCSSetting *setting,
 {
     KConfig *cfg = (specialOptions[num].global) ? cFiles->global : 
cFiles->kwin;
 
-    CCSSettingActionValue action;
+    CCSSettingKeyValue keyVal;
 
-    if (!ccsGetAction (setting, &action) )
+    if (!ccsGetKey (setting, &keyVal) )
        return;
 
     int kde_keymod = 0;
 
-    if (action.keyModMask & ShiftMask)
+    if (keyVal.keyModMask & ShiftMask)
        kde_keymod |= KKey::SHIFT;
 
-    if (action.keyModMask & ControlMask)
+    if (keyVal.keyModMask & ControlMask)
        kde_keymod |= KKey::CTRL;
 
-    if (action.keyModMask & CompAltMask)
+    if (keyVal.keyModMask & CompAltMask)
        kde_keymod |= KKey::ALT;
 
-    if (action.keyModMask & CompSuperMask)
+    if (keyVal.keyModMask & CompSuperMask)
        kde_keymod |= KKey::WIN;
 
-    KKey key (action.keysym, kde_keymod);
+    KKey key (keyVal.keysym, kde_keymod);
 
     KKey akey (cfg->readEntry (specialOptions[num].kdeName) );
 
@@ -1255,12 +1278,12 @@ writeIntegratedOption (CCSSetting *setting)
        else if (specialOptions[option].settingName == "next" ||
                 specialOptions[option].settingName == "prev")
        {
-           CCSSettingActionValue action;
+           CCSSettingKeyValue keyVal;
 
-           if (!ccsGetAction (setting, &action))
+           if (!ccsGetKey (setting, &keyVal))
                break;
 
-           if (action.keysym == 0 && action.keyModMask == 0)
+           if (keyVal.keysym == 0 && keyVal.keyModMask == 0)
                break;
 
            CCSKeyToKde (setting, option);
@@ -1276,12 +1299,12 @@ writeIntegratedOption (CCSSetting *setting)
        else if (specialOptions[option].settingName == "next_all" ||
                 specialOptions[option].settingName == "prev_all")
        {
-           CCSSettingActionValue action;
+           CCSSettingKeyValue keyVal;
 
-           if (!ccsGetAction (setting, &action))
+           if (!ccsGetKey (setting, &keyVal))
                break;
 
-           if (action.keysym == 0 && action.keyModMask == 0)
+           if (keyVal.keysym == 0 && keyVal.keyModMask == 0)
                break;
 
            CCSKeyToKde (setting, option);
@@ -1297,12 +1320,12 @@ writeIntegratedOption (CCSSetting *setting)
        else if (specialOptions[option].settingName == "next_no_popup" ||
                 specialOptions[option].settingName == "prev_no_popup")
        {
-           CCSSettingActionValue action;
+           CCSSettingKeyValue keyVal;
 
-           if (!ccsGetAction (setting, &action))
+           if (!ccsGetKey (setting, &keyVal))
                break;
 
-           if (action.keysym == 0 && action.keyModMask == 0)
+           if (keyVal.keysym == 0 && keyVal.keyModMask == 0)
                break;
 
            CCSKeyToKde (setting, option);
@@ -1609,8 +1632,31 @@ writeSetting (CCSContext *c,
                    cfg->writeEntry (key, list);
                }
                break;
+           case TypeKey:
+               {
+                   QStringList list;
+                   CCSSettingValueList l;
+
+                   if (!ccsGetList (setting, &l) )
+                       break;
+
+                   while (l)
+                   {
+                       QString str;
+                       char *val;
+                       val = ccsKeyBindingToString (&l->data->value.asKey);
+
+                       str = val;
+                       free (val);
+                       
+                       list.append (str);
+                       l = l->next;
+                   }
 
-           case TypeAction:
+                   cfg->writeEntry (key, list);
+               }
+               break;
+           case TypeButton:
                {
                    QStringList list;
                    CCSSettingValueList l;
@@ -1621,20 +1667,13 @@ writeSetting (CCSContext *c,
                    while (l)
                    {


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to