diff -Nur kb2kskype-0.3.8/CMakeLists.txt kb2kskype-0.3.8-qt4/CMakeLists.txt
--- kb2kskype-0.3.8/CMakeLists.txt	1970-01-01 01:00:00.000000000 +0100
+++ kb2kskype-0.3.8-qt4/CMakeLists.txt	2009-12-23 22:29:48.000000000 +0100
@@ -0,0 +1,50 @@
+
+find_package(KDE4 REQUIRED)
+
+add_definitions(${QT_DEFINITIONS} ${KDE4_DEFINITIONS})
+
+include(KDE4Defaults)
+
+include(MacroLibrary)
+
+include(ConvenienceLibs.cmake)
+
+include(ManualStuff.cmake)
+
+include(ConfigureChecks.cmake)
+
+include_directories(${KDE4_INCLUDES} ${KDE4_INCLUDE_DIR} ${QT_INCLUDES} )
+
+configure_file(${CMAKE_CURRENT_SOURCE_DIR}/config.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config.h)
+
+message(STATUS "${CMAKE_CURRENT_SOURCE_DIR}: skipped subdir $(TOPSUBDIRS)")
+
+########### install files ###############
+
+
+
+
+#original Makefile.am contents follow:
+
+#SUBDIRS = $(TOPSUBDIRS)
+#
+#$(top_srcdir)/configure.in: configure.in.in $(top_srcdir)/subdirs
+#	cd $(top_srcdir) && $(MAKE) -f admin/Makefile.common configure.in ;
+#
+#$(top_srcdir)/subdirs:
+#	cd $(top_srcdir) && $(MAKE) -f admin/Makefile.common subdirs
+#
+#$(top_srcdir)/acinclude.m4: $(top_srcdir)/admin/acinclude.m4.in $(top_srcdir)/admin/libtool.m4.in
+#	@cd $(top_srcdir) && cat admin/acinclude.m4.in admin/libtool.m4.in > acinclude.m4
+#
+#MAINTAINERCLEANFILES = subdirs configure.in acinclude.m4 configure.files 
+#
+#package-messages:
+#	cd $(top_srcdir) && $(MAKE) -f admin/Makefile.common package-messages
+#	$(MAKE) -C po merge
+#
+#EXTRA_DIST = admin COPYING configure.in.in
+#
+#dist-hook:
+#	cd $(top_distdir) && perl admin/am_edit -padmin
+#	cd $(top_distdir) && $(MAKE) -f admin/Makefile.common subdirs
diff -Nur kb2kskype-0.3.8/ConvenienceLibs.cmake kb2kskype-0.3.8-qt4/ConvenienceLibs.cmake
--- kb2kskype-0.3.8/ConvenienceLibs.cmake	1970-01-01 01:00:00.000000000 +0100
+++ kb2kskype-0.3.8-qt4/ConvenienceLibs.cmake	2009-12-23 00:20:12.000000000 +0100
@@ -0,0 +1,3 @@
+
+#former libtool convenience libraries:
+
diff -Nur kb2kskype-0.3.8/doc/CMakeLists.txt kb2kskype-0.3.8-qt4/doc/CMakeLists.txt
--- kb2kskype-0.3.8/doc/CMakeLists.txt	1970-01-01 01:00:00.000000000 +0100
+++ kb2kskype-0.3.8-qt4/doc/CMakeLists.txt	2009-12-30 14:15:43.000000000 +0100
@@ -0,0 +1,20 @@
+
+include_directories(${KDE4_INCLUDES} ${KDE4_INCLUDE_DIR} ${QT_INCLUDES} )
+
+add_subdirectory(en)
+
+install(FILES kb2kskype.1 DESTINATION ${MAN_INSTALL_DIR}/man1)
+
+########### install files ###############
+
+
+#original Makefile.am contents follow:
+
+## the SUBDIRS is filled automatically by am_edit. If files are 
+## in this directory they are installed into the english dir
+#
+#KDE_LANG = en
+#KDE_DOCS = kb2kskype
+#SUBDIRS = $(AUTODIRS)  
+#man_MANS = kb2kskype.1
+#
diff -Nur kb2kskype-0.3.8/doc/en/CMakeLists.txt kb2kskype-0.3.8-qt4/doc/en/CMakeLists.txt
--- kb2kskype-0.3.8/doc/en/CMakeLists.txt	1970-01-01 01:00:00.000000000 +0100
+++ kb2kskype-0.3.8-qt4/doc/en/CMakeLists.txt	2009-12-30 14:11:39.000000000 +0100
@@ -0,0 +1,15 @@
+
+include_directories(${KDE4_INCLUDES} ${KDE4_INCLUDE_DIR} ${QT_INCLUDES} )
+
+
+########### install files ###############
+
+
+kde4_create_handbook(index.docbook INSTALL_DESTINATION ${HTML_INSTALL_DIR}/en SUBDIR kb2kskype)
+
+
+
+#original Makefile.am contents follow:
+
+#KDE_DOCS = kb2kskype
+#KDE_LANG = en
diff -Nur kb2kskype-0.3.8/ManualStuff.cmake kb2kskype-0.3.8-qt4/ManualStuff.cmake
--- kb2kskype-0.3.8/ManualStuff.cmake	1970-01-01 01:00:00.000000000 +0100
+++ kb2kskype-0.3.8-qt4/ManualStuff.cmake	2009-12-30 12:43:48.000000000 +0100
@@ -0,0 +1,3 @@
+add_subdirectory(src)
+add_subdirectory(po)
+add_subdirectory(doc)
diff -Nur kb2kskype-0.3.8/po/CMakeLists.txt kb2kskype-0.3.8-qt4/po/CMakeLists.txt
--- kb2kskype-0.3.8/po/CMakeLists.txt	1970-01-01 01:00:00.000000000 +0100
+++ kb2kskype-0.3.8-qt4/po/CMakeLists.txt	2009-12-30 13:34:31.000000000 +0100
@@ -0,0 +1,20 @@
+
+find_package(Msgfmt REQUIRED)
+
+find_package(Gettext REQUIRED)
+
+file(GLOB _po_files *.po)
+
+SET(MY_OWN_INSTALL_PREFIX "/usr" CACHE PATH "Prefix prepended to
+install directories")
+
+SET(CMAKE_INSTALL_PREFIX "${MY_OWN_INSTALL_PREFIX}" CACHE INTERNAL "Prefix
+prepended to install directories" FORCE)
+
+GETTEXT_CREATE_TRANSLATIONS( kb2kskype.pot ALL ${_po_files} )
+
+#original Makefile.am contents follow:
+
+#POFILES = AUTO
+#
+#EXTRA_DIST = kb2kskype.pot
diff -Nur kb2kskype-0.3.8/po/es.po kb2kskype-0.3.8-qt4/po/es.po
--- kb2kskype-0.3.8/po/es.po	2008-02-10 18:21:45.000000000 +0100
+++ kb2kskype-0.3.8-qt4/po/es.po	2009-12-30 17:51:46.000000000 +0100
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: 3.3\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2007-09-15 23:04+0200\n"
+"POT-Creation-Date: 2009-12-30 17:51+0100\n"
 "PO-Revision-Date: 2007-06-11 20:36+0200\n"
 "Last-Translator: Jose Alberto Reguero jareguero@telefonica.net>\n"
 "Language-Team: Spanish <es@li.org>\n"
@@ -16,216 +16,191 @@
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: main.cpp:48
-msgid "A B2K Skype interface"
-msgstr "Una interface B2K Skype"
-
-#: main.cpp:55
-msgid "Full path of file to set when phone is offhook"
-msgstr ""
-
-#: main.cpp:56
-msgid ""
-"<status>[,<status>...],<script_file>\n"
-"Use script to update online status"
-msgstr ""
+#: rc.cpp:18
+msgid "&Main"
+msgstr "&Principal"
 
-#: main.cpp:57
-msgid "Show all api messages and debug messages in the feedback window\n"
+#: rc.cpp:27
+msgid "&Skype"
 msgstr ""
 
-#: main.cpp:66
-msgid "kb2kskype"
-msgstr "kb2kskype"
-
-#: rc.cpp:3
-#, no-c-format
-msgid "C&ustom"
+#: rc.cpp:36
+msgid "&Twinkle"
 msgstr ""
 
-#: rc.cpp:6
-#, no-c-format
-msgid "B2K Controller"
-msgstr "Controlador B2K"
-
-#: rc.cpp:12
-#, no-c-format
-msgid "Launch the help manual for this program"
-msgstr "Lanza el maual de ayuda para este programa"
+#: rc.cpp:57
+msgid "&USB"
+msgstr "&USB"
 
 #: rc.cpp:15
-#, no-c-format
 msgid "<h1><b><p align=\"center\">B2K Controller</p></b></h1>"
 msgstr "<h1><b><p align=\"center\">Controlador B2K</p></b></h1>"
 
-#: rc.cpp:18
-#, no-c-format
-msgid "&Main"
-msgstr "&Principal"
-
-#: rc.cpp:21
-#, no-c-format
-msgid "B2K Mode"
-msgstr "Modo B2K"
+#: main.cpp:45
+msgid "A B2K Skype interface"
+msgstr "Una interface B2K Skype"
 
-#: rc.cpp:24
-#, no-c-format
-msgid "PST&N"
-msgstr "PST&N"
+#: rc.cpp:78
+msgid "Alt+A"
+msgstr "Alt+A"
 
-#: rc.cpp:27
-#, no-c-format
+#: rc.cpp:51
 msgid "Alt+N"
 msgstr "Alt+N"
 
 #: rc.cpp:30
-#, no-c-format
-msgid "Switch the box to PSTN mode"
-msgstr "Cambia la caja a modo PTSN"
+#, fuzzy
+msgid "Alt+S"
+msgstr "Alt+A"
 
-#: rc.cpp:33
-#, no-c-format
-msgid "&USB"
-msgstr "&USB"
+#: rc.cpp:39
+#, fuzzy
+msgid "Alt+T"
+msgstr "Alt+A"
 
-#: rc.cpp:36
-#, no-c-format
+#: rc.cpp:60
 msgid "Alt+U"
 msgstr "Alt+U"
 
-#: rc.cpp:39
-#, no-c-format
-msgid "Switch the box to USB mode."
-msgstr "Cambia la caja a modo USB."
-
-#: rc.cpp:42
-#, no-c-format
-msgid "Displays feedback to the user when needed."
-msgstr "Muestra feedback al usuario cuando es necesario."
-
-#: rc.cpp:45
-#, no-c-format
-msgid "Volume Level:"
-msgstr "Nivel del Volumen:"
-
-#: rc.cpp:48
-#, no-c-format
-msgid "Record Level:"
-msgstr "Nivel de Grabación:"
-
-#: rc.cpp:51
-#, no-c-format
-msgid "Ring Tone"
-msgstr "Tono de LLamada"
-
-#: rc.cpp:54
-#, no-c-format
-msgid "DdDt"
-msgstr "DdDt"
-
-#: rc.cpp:57
-#, no-c-format
-msgid "Define a ring tone, see the help documentation."
-msgstr "Define un tono de llamada, mira el manual de ayuda."
-
-#: rc.cpp:63
-#, no-c-format
-msgid "Alt+A"
-msgstr "Alt+A"
-
-#: rc.cpp:66
-#, no-c-format
+#: rc.cpp:72
 msgid "Apply your new ring tone."
 msgstr "Aplicar tu nuevo tono de llamada."
 
-#: rc.cpp:69
-#, no-c-format
-msgid "Test"
-msgstr "Prueba"
+#: main.cpp:79 rc.cpp:6
+msgid "B2K Controller"
+msgstr "Controlador B2K"
 
-#: rc.cpp:72
-#, no-c-format
-msgid "Test your ring tone."
-msgstr "Probar tu tono de llamada."
+#: rc.cpp:42
+msgid "B2K Mode"
+msgstr "Modo B2K"
 
-#: rc.cpp:75
-#, no-c-format
+#: rc.cpp:96
 msgid "C&ontacts"
 msgstr "C&ontactos"
 
-#: rc.cpp:78
-#, no-c-format
+#: rc.cpp:3
+msgid "C&ustom"
+msgstr ""
+
+#: skypeapidlg.cpp:669
 msgid "Contact Name"
 msgstr "Nombre del Contacto"
 
-#: rc.cpp:81
-#, no-c-format
-msgid "Speed Dial"
-msgstr "Marcación Rapida"
+#: rc.cpp:24
+msgid "Control Skype from kb2kskype"
+msgstr ""
 
-#: rc.cpp:84
-#, no-c-format
-msgid "0"
-msgstr "0"
+#: rc.cpp:33
+msgid "Control Twinkle from kb2kskype"
+msgstr ""
 
-#: rc.cpp:87
-#, no-c-format
-msgid "1"
-msgstr "1"
+#: rc.cpp:21
+msgid "Controlled application"
+msgstr "Aplicación controlada"
 
-#: rc.cpp:90
-#, no-c-format
-msgid "2"
-msgstr "2"
+#: rc.cpp:69
+msgid "DdDt"
+msgstr "DdDt"
+
+#: rc.cpp:66
+msgid "Define a ring tone, see the help documentation."
+msgstr "Define un tono de llamada, mira el manual de ayuda."
 
 #: rc.cpp:93
-#, no-c-format
-msgid "3"
-msgstr "3"
+msgid "Displays feedback to the user when needed."
+msgstr "Muestra feedback al usuario cuando es necesario."
 
-#: rc.cpp:96
-#, no-c-format
-msgid "4"
-msgstr "4"
+#: skypeapidlg.cpp:119
+msgid "Hide on startup"
+msgstr "Empezar minimizado"
 
-#: rc.cpp:99
-#, no-c-format
-msgid "5"
-msgstr "5"
+#: rc.cpp:9
+msgid "Launch the help manual for this program"
+msgstr "Lanza el maual de ayuda para este programa"
 
-#: rc.cpp:102
-#, no-c-format
-msgid "6"
-msgstr "6"
-
-#: rc.cpp:105
-#, no-c-format
-msgid "7"
-msgstr "7"
+#: rc.cpp:48
+msgid "PST&N"
+msgstr "PST&N"
 
-#: rc.cpp:108
-#, no-c-format
+#: rc.cpp:90
+msgid "Record Level:"
+msgstr "Nivel de Grabación:"
+
+#: rc.cpp:102
 msgid "Refresh List"
 msgstr "Refrescar la lista"
 
-#: rc.cpp:111
-#, no-c-format
+#: rc.cpp:99
 msgid "Refresh your contact list."
 msgstr "Refrescar tu lista de contactos."
 
-#: rc.cpp:114
-#, no-c-format
+#: rc.cpp:63
+msgid "Ring Tone"
+msgstr "Tono de LLamada"
+
+#: skypeapidlg.cpp:669
+msgid "Speed Dial"
+msgstr "Marcación Rapida"
+
+#: rc.cpp:45
+msgid "Switch the box to PSTN mode"
+msgstr "Cambia la caja a modo PTSN"
+
+#: rc.cpp:54
+msgid "Switch the box to USB mode."
+msgstr "Cambia la caja a modo USB."
+
+#: rc.cpp:84
+msgid "Test"
+msgstr "Prueba"
+
+#: rc.cpp:81
+msgid "Test your ring tone."
+msgstr "Probar tu tono de llamada."
+
+#: rc.cpp:105 skypeapidlg.cpp:655
 msgid "User:"
 msgstr "Usuario:"
 
-#: _translatorinfo.cpp:1
-msgid ""
-"_: NAME OF TRANSLATORS\n"
-"Your names"
-msgstr ""
+#: rc.cpp:87
+msgid "Volume Level:"
+msgstr "Nivel del Volumen:"
 
 #: _translatorinfo.cpp:3
 msgid ""
 "_: EMAIL OF TRANSLATORS\n"
 "Your emails"
 msgstr ""
+
+#: _translatorinfo.cpp:1
+msgid ""
+"_: NAME OF TRANSLATORS\n"
+"Your names"
+msgstr ""
+
+#~ msgid "0"
+#~ msgstr "0"
+
+#~ msgid "1"
+#~ msgstr "1"
+
+#~ msgid "2"
+#~ msgstr "2"
+
+#~ msgid "3"
+#~ msgstr "3"
+
+#~ msgid "4"
+#~ msgstr "4"
+
+#~ msgid "5"
+#~ msgstr "5"
+
+#~ msgid "6"
+#~ msgstr "6"
+
+#~ msgid "7"
+#~ msgstr "7"
+
+#~ msgid "kb2kskype"
+#~ msgstr "kb2kskype"
diff -Nur kb2kskype-0.3.8/po/kb2kskype.pot kb2kskype-0.3.8-qt4/po/kb2kskype.pot
--- kb2kskype-0.3.8/po/kb2kskype.pot	2008-02-10 18:21:45.000000000 +0100
+++ kb2kskype-0.3.8-qt4/po/kb2kskype.pot	2009-12-30 17:51:34.000000000 +0100
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2007-09-15 23:04+0200\n"
+"POT-Creation-Date: 2009-12-30 17:51+0100\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -16,206 +16,152 @@
 "Content-Type: text/plain; charset=CHARSET\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: main.cpp:48
+#: main.cpp:45
 msgid "A B2K Skype interface"
 msgstr ""
 
-#: main.cpp:55
-msgid "Full path of file to set when phone is offhook"
-msgstr ""
-
-#: main.cpp:56
-msgid ""
-"<status>[,<status>...],<script_file>\n"
-"Use script to update online status"
-msgstr ""
-
-#: main.cpp:57
-msgid "Show all api messages and debug messages in the feedback window\n"
-msgstr ""
-
-#: main.cpp:66
-msgid "kb2kskype"
+#: main.cpp:79 rc.cpp:6
+msgid "B2K Controller"
 msgstr ""
 
 #: rc.cpp:3
-#, no-c-format
 msgid "C&ustom"
 msgstr ""
 
-#: rc.cpp:6
-#, no-c-format
-msgid "B2K Controller"
-msgstr ""
-
-#: rc.cpp:12
-#, no-c-format
+#: rc.cpp:9
 msgid "Launch the help manual for this program"
 msgstr ""
 
 #: rc.cpp:15
-#, no-c-format
 msgid "<h1><b><p align=\"center\">B2K Controller</p></b></h1>"
 msgstr ""
 
 #: rc.cpp:18
-#, no-c-format
 msgid "&Main"
 msgstr ""
 
 #: rc.cpp:21
-#, no-c-format
-msgid "B2K Mode"
+msgid "Controlled application"
 msgstr ""
 
 #: rc.cpp:24
-#, no-c-format
-msgid "PST&N"
+msgid "Control Skype from kb2kskype"
 msgstr ""
 
 #: rc.cpp:27
-#, no-c-format
-msgid "Alt+N"
+msgid "&Skype"
 msgstr ""
 
 #: rc.cpp:30
-#, no-c-format
-msgid "Switch the box to PSTN mode"
+msgid "Alt+S"
 msgstr ""
 
 #: rc.cpp:33
-#, no-c-format
-msgid "&USB"
+msgid "Control Twinkle from kb2kskype"
 msgstr ""
 
 #: rc.cpp:36
-#, no-c-format
-msgid "Alt+U"
+msgid "&Twinkle"
 msgstr ""
 
 #: rc.cpp:39
-#, no-c-format
-msgid "Switch the box to USB mode."
+msgid "Alt+T"
 msgstr ""
 
 #: rc.cpp:42
-#, no-c-format
-msgid "Displays feedback to the user when needed."
+msgid "B2K Mode"
 msgstr ""
 
 #: rc.cpp:45
-#, no-c-format
-msgid "Volume Level:"
+msgid "Switch the box to PSTN mode"
 msgstr ""
 
 #: rc.cpp:48
-#, no-c-format
-msgid "Record Level:"
+msgid "PST&N"
 msgstr ""
 
 #: rc.cpp:51
-#, no-c-format
-msgid "Ring Tone"
+msgid "Alt+N"
 msgstr ""
 
 #: rc.cpp:54
-#, no-c-format
-msgid "DdDt"
+msgid "Switch the box to USB mode."
 msgstr ""
 
 #: rc.cpp:57
-#, no-c-format
-msgid "Define a ring tone, see the help documentation."
+msgid "&USB"
+msgstr ""
+
+#: rc.cpp:60
+msgid "Alt+U"
 msgstr ""
 
 #: rc.cpp:63
-#, no-c-format
-msgid "Alt+A"
+msgid "Ring Tone"
 msgstr ""
 
 #: rc.cpp:66
-#, no-c-format
-msgid "Apply your new ring tone."
+msgid "Define a ring tone, see the help documentation."
 msgstr ""
 
 #: rc.cpp:69
-#, no-c-format
-msgid "Test"
+msgid "DdDt"
 msgstr ""
 
 #: rc.cpp:72
-#, no-c-format
-msgid "Test your ring tone."
-msgstr ""
-
-#: rc.cpp:75
-#, no-c-format
-msgid "C&ontacts"
+msgid "Apply your new ring tone."
 msgstr ""
 
 #: rc.cpp:78
-#, no-c-format
-msgid "Contact Name"
+msgid "Alt+A"
 msgstr ""
 
 #: rc.cpp:81
-#, no-c-format
-msgid "Speed Dial"
+msgid "Test your ring tone."
 msgstr ""
 
 #: rc.cpp:84
-#, no-c-format
-msgid "0"
+msgid "Test"
 msgstr ""
 
 #: rc.cpp:87
-#, no-c-format
-msgid "1"
+msgid "Volume Level:"
 msgstr ""
 
 #: rc.cpp:90
-#, no-c-format
-msgid "2"
+msgid "Record Level:"
 msgstr ""
 
 #: rc.cpp:93
-#, no-c-format
-msgid "3"
+msgid "Displays feedback to the user when needed."
 msgstr ""
 
 #: rc.cpp:96
-#, no-c-format
-msgid "4"
+msgid "C&ontacts"
 msgstr ""
 
 #: rc.cpp:99
-#, no-c-format
-msgid "5"
+msgid "Refresh your contact list."
 msgstr ""
 
 #: rc.cpp:102
-#, no-c-format
-msgid "6"
+msgid "Refresh List"
 msgstr ""
 
-#: rc.cpp:105
-#, no-c-format
-msgid "7"
+#: rc.cpp:105 skypeapidlg.cpp:655
+msgid "User:"
 msgstr ""
 
-#: rc.cpp:108
-#, no-c-format
-msgid "Refresh List"
+#: skypeapidlg.cpp:119
+msgid "Hide on startup"
 msgstr ""
 
-#: rc.cpp:111
-#, no-c-format
-msgid "Refresh your contact list."
+#: skypeapidlg.cpp:669
+msgid "Contact Name"
 msgstr ""
 
-#: rc.cpp:114
-#, no-c-format
-msgid "User:"
+#: skypeapidlg.cpp:669
+msgid "Speed Dial"
 msgstr ""
 
 #: _translatorinfo.cpp:1
diff -Nur kb2kskype-0.3.8/po/pt_BR.po kb2kskype-0.3.8-qt4/po/pt_BR.po
--- kb2kskype-0.3.8/po/pt_BR.po	2008-02-10 18:21:45.000000000 +0100
+++ kb2kskype-0.3.8-qt4/po/pt_BR.po	2009-12-30 17:51:46.000000000 +0100
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: pt_BR\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2007-09-15 23:04+0200\n"
+"POT-Creation-Date: 2009-12-30 17:51+0100\n"
 "PO-Revision-Date: 2007-11-18 18:00-0300+1\n"
 "Last-Translator: Marcos Diz <marcos@unitron.com.br>\n"
 "Language-Team:  <en@li.org>\n"
@@ -16,213 +16,153 @@
 "Content-Transfer-Encoding: 8bit\n"
 "X-Generator: KBabel 1.11.4\n"
 
-#: main.cpp:48
-msgid "A B2K Skype interface"
-msgstr "Uma interface entre o B2K e o Skype"
+#: rc.cpp:18
+msgid "&Main"
+msgstr "Pri&mcipal"
 
-#: main.cpp:55
-msgid "Full path of file to set when phone is offhook"
+#: rc.cpp:27
+msgid "&Skype"
 msgstr ""
 
-#: main.cpp:56
-msgid ""
-"<status>[,<status>...],<script_file>\n"
-"Use script to update online status\n"
+#: rc.cpp:36
+msgid "&Twinkle"
 msgstr ""
 
-#: main.cpp:57
-msgid "Show all api messages and debug messages in the feedback window\n"
-msgstr "Mostrar todas as mensagens e mensagens de debug na janela de feedback\n"
-
-#: main.cpp:66
-msgid "kb2kskype"
+#: rc.cpp:57
+msgid "&USB"
 msgstr ""
 
-#: rc.cpp:3
-#, no-c-format
-msgid "C&ustom"
-msgstr "C&ustomizar"
-
-#: rc.cpp:6
-#, no-c-format
-msgid "B2K Controller"
-msgstr "Controlador B2K"
-
-#: rc.cpp:12
-#, no-c-format
-msgid "Launch the help manual for this program"
-msgstr "Abrir o manual deste programa"
-
 #: rc.cpp:15
-#, no-c-format
 msgid "<h1><b><p align=\"center\">B2K Controller</p></b></h1>"
 msgstr "h1><b><p align=\"center\">Controlador B2K</p></b></h1>"
 
-#: rc.cpp:18
-#, no-c-format
-msgid "&Main"
-msgstr "Pri&mcipal"
-
-#: rc.cpp:21
-#, no-c-format
-msgid "B2K Mode"
-msgstr "Modo do B2K"
+#: main.cpp:45
+msgid "A B2K Skype interface"
+msgstr "Uma interface entre o B2K e o Skype"
 
-#: rc.cpp:24
-#, no-c-format
-msgid "PST&N"
+#: rc.cpp:78
+msgid "Alt+A"
 msgstr ""
 
-#: rc.cpp:27
-#, no-c-format
+#: rc.cpp:51
 msgid "Alt+N"
 msgstr ""
 
 #: rc.cpp:30
-#, no-c-format
-msgid "Switch the box to PSTN mode"
-msgstr "Mudar o B2K para modo PSTN"
-
-#: rc.cpp:33
-#, no-c-format
-msgid "&USB"
-msgstr ""
-
-#: rc.cpp:36
-#, no-c-format
-msgid "Alt+U"
+msgid "Alt+S"
 msgstr ""
 
 #: rc.cpp:39
-#, no-c-format
-msgid "Switch the box to USB mode."
-msgstr "Mudar o B2K para modo USB"
-
-#: rc.cpp:42
-#, no-c-format
-msgid "Displays feedback to the user when needed."
-msgstr "Mostrar feedback ao usuario quando necessário"
-
-#: rc.cpp:45
-#, no-c-format
-msgid "Volume Level:"
-msgstr "Volume de Audio"
-
-#: rc.cpp:48
-#, no-c-format
-msgid "Record Level:"
-msgstr "Volume de gravação"
-
-#: rc.cpp:51
-#, no-c-format
-msgid "Ring Tone"
-msgstr "Toque do telefone"
-
-#: rc.cpp:54
-#, no-c-format
-msgid "DdDt"
+msgid "Alt+T"
 msgstr ""
 
-#: rc.cpp:57
-#, no-c-format
-msgid "Define a ring tone, see the help documentation."
-msgstr "Defina um toque do telefone. Veja ajuda na documentação"
-
-#: rc.cpp:63
-#, no-c-format
-msgid "Alt+A"
+#: rc.cpp:60
+msgid "Alt+U"
 msgstr ""
 
-#: rc.cpp:66
-#, no-c-format
+#: rc.cpp:72
 msgid "Apply your new ring tone."
 msgstr "Aplicar seu novo toque"
 
-#: rc.cpp:69
-#, no-c-format
-msgid "Test"
-msgstr "Testar"
+#: main.cpp:79 rc.cpp:6
+msgid "B2K Controller"
+msgstr "Controlador B2K"
 
-#: rc.cpp:72
-#, no-c-format
-msgid "Test your ring tone."
-msgstr "Testar seu toque"
+#: rc.cpp:42
+msgid "B2K Mode"
+msgstr "Modo do B2K"
 
-#: rc.cpp:75
-#, no-c-format
+#: rc.cpp:96
 msgid "C&ontacts"
 msgstr "C&ontatos"
 
-#: rc.cpp:78
-#, no-c-format
+#: rc.cpp:3
+msgid "C&ustom"
+msgstr "C&ustomizar"
+
+#: skypeapidlg.cpp:669
 msgid "Contact Name"
 msgstr "Nome do contato"
 
-#: rc.cpp:81
-#, no-c-format
-msgid "Speed Dial"
-msgstr "Discagem Rápida"
+#: rc.cpp:24
+msgid "Control Skype from kb2kskype"
+msgstr ""
 
-#: rc.cpp:84
-#, no-c-format
-msgid "0"
+#: rc.cpp:33
+msgid "Control Twinkle from kb2kskype"
 msgstr ""
 
-#: rc.cpp:87
-#, no-c-format
-msgid "1"
+#: rc.cpp:21
+msgid "Controlled application"
 msgstr ""
 
-#: rc.cpp:90
-#, no-c-format
-msgid "2"
+#: rc.cpp:69
+msgid "DdDt"
 msgstr ""
 
+#: rc.cpp:66
+msgid "Define a ring tone, see the help documentation."
+msgstr "Defina um toque do telefone. Veja ajuda na documentação"
+
 #: rc.cpp:93
-#, no-c-format
-msgid "3"
-msgstr ""
+msgid "Displays feedback to the user when needed."
+msgstr "Mostrar feedback ao usuario quando necessário"
 
-#: rc.cpp:96
-#, no-c-format
-msgid "4"
+#: skypeapidlg.cpp:119
+msgid "Hide on startup"
 msgstr ""
 
-#: rc.cpp:99
-#, no-c-format
-msgid "5"
-msgstr ""
+#: rc.cpp:9
+msgid "Launch the help manual for this program"
+msgstr "Abrir o manual deste programa"
 
-#: rc.cpp:102
-#, no-c-format
-msgid "6"
+#: rc.cpp:48
+msgid "PST&N"
 msgstr ""
 
-#: rc.cpp:105
-#, no-c-format
-msgid "7"
-msgstr ""
+#: rc.cpp:90
+msgid "Record Level:"
+msgstr "Volume de gravação"
 
-#: rc.cpp:108
-#, no-c-format
+#: rc.cpp:102
 msgid "Refresh List"
 msgstr "Remostrar lista"
 
-#: rc.cpp:111
-#, no-c-format
+#: rc.cpp:99
 msgid "Refresh your contact list."
 msgstr "Mostra a lista de contatos novamente"
 
-#: rc.cpp:114
-#, no-c-format
+#: rc.cpp:63
+msgid "Ring Tone"
+msgstr "Toque do telefone"
+
+#: skypeapidlg.cpp:669
+msgid "Speed Dial"
+msgstr "Discagem Rápida"
+
+#: rc.cpp:45
+msgid "Switch the box to PSTN mode"
+msgstr "Mudar o B2K para modo PSTN"
+
+#: rc.cpp:54
+msgid "Switch the box to USB mode."
+msgstr "Mudar o B2K para modo USB"
+
+#: rc.cpp:84
+msgid "Test"
+msgstr "Testar"
+
+#: rc.cpp:81
+msgid "Test your ring tone."
+msgstr "Testar seu toque"
+
+#: rc.cpp:105 skypeapidlg.cpp:655
 msgid "User:"
 msgstr "Usuário"
 
-#: _translatorinfo.cpp:1
-msgid ""
-"_: NAME OF TRANSLATORS\n"
-"Your names"
-msgstr "Tradutor: Marcos Diez"
+#: rc.cpp:87
+msgid "Volume Level:"
+msgstr "Volume de Audio"
 
 #: _translatorinfo.cpp:3
 msgid ""
@@ -230,3 +170,12 @@
 "Your emails"
 msgstr "marcos_AT_unitron.com.br"
 
+#: _translatorinfo.cpp:1
+msgid ""
+"_: NAME OF TRANSLATORS\n"
+"Your names"
+msgstr "Tradutor: Marcos Diez"
+
+#~ msgid "Show all api messages and debug messages in the feedback window\n"
+#~ msgstr ""
+#~ "Mostrar todas as mensagens e mensagens de debug na janela de feedback\n"
diff -Nur kb2kskype-0.3.8/src/apiapplication.cpp kb2kskype-0.3.8-qt4/src/apiapplication.cpp
--- kb2kskype-0.3.8/src/apiapplication.cpp	2008-02-10 18:21:45.000000000 +0100
+++ kb2kskype-0.3.8-qt4/src/apiapplication.cpp	2009-12-29 17:25:40.000000000 +0100
@@ -38,8 +38,8 @@
 #include <X11/Xlib.h>
 
 
-ApiApplication::ApiApplication(int argc, char **argv)
-	: KApplication(argc, argv)
+ApiApplication::ApiApplication(bool GUIenabled)
+	: KApplication(GUIenabled)
 {
 }
 
diff -Nur kb2kskype-0.3.8/src/apiapplication.h kb2kskype-0.3.8-qt4/src/apiapplication.h
--- kb2kskype-0.3.8/src/apiapplication.h	2008-02-10 18:21:45.000000000 +0100
+++ kb2kskype-0.3.8-qt4/src/apiapplication.h	2009-12-29 17:25:49.000000000 +0100
@@ -35,6 +35,6 @@
 class ApiApplication : public KApplication
 {
 	public:
-		ApiApplication(int argc, char **argv);
+		ApiApplication(bool GUIenabled);
 		virtual bool x11EventFilter(XEvent *event);
 };
diff -Nur kb2kskype-0.3.8/src/b2kcustomevent.cpp kb2kskype-0.3.8-qt4/src/b2kcustomevent.cpp
--- kb2kskype-0.3.8/src/b2kcustomevent.cpp	2009-02-07 13:54:17.000000000 +0100
+++ kb2kskype-0.3.8-qt4/src/b2kcustomevent.cpp	2009-12-29 16:20:20.000000000 +0100
@@ -1,6 +1,8 @@
 #include "b2kcustomevent.h"
+//Added by qt3to4:
+#include <QCustomEvent>
 
-B2KEvent::B2KEvent(int type, QString message) : QCustomEvent(type) {
+B2KEvent::B2KEvent(QEvent::Type type, QString message) : QEvent(type) {
     msg = message;
 }
 
diff -Nur kb2kskype-0.3.8/src/b2kcustomevent.h kb2kskype-0.3.8-qt4/src/b2kcustomevent.h
--- kb2kskype-0.3.8/src/b2kcustomevent.h	2009-02-07 13:54:17.000000000 +0100
+++ kb2kskype-0.3.8-qt4/src/b2kcustomevent.h	2009-12-29 17:26:09.000000000 +0100
@@ -23,13 +23,15 @@
 
 #include <qevent.h>
 #include <qstring.h>
+//Added by qt3to4:
+#include <QCustomEvent>
 
-enum {b2kFeedbackMessage = 1002, b2kCommandmessage=1003 };
+enum {b2kFeedbackMessage = 2, b2kCommandmessage=3 };
 
-class B2KEvent: public QCustomEvent {
+class B2KEvent: public QEvent {
 
 		public:
-			B2KEvent(int type, QString message);
+			B2KEvent(QEvent::Type type, QString message);
 			~B2KEvent();
 			QString getMessage() const {return msg;}
 
diff -Nur kb2kskype-0.3.8/src/b2kinterface.cpp kb2kskype-0.3.8-qt4/src/b2kinterface.cpp
--- kb2kskype-0.3.8/src/b2kinterface.cpp	2009-02-07 13:34:10.000000000 +0100
+++ kb2kskype-0.3.8-qt4/src/b2kinterface.cpp	2009-12-29 17:20:46.000000000 +0100
@@ -23,6 +23,8 @@
 #include "b2kinterface.h"
 #include <qmessagebox.h>
 #include <qapplication.h>
+//Added by qt3to4:
+#include <QCustomEvent>
 
 //uncomment the line below to log to the syslog
 //#define USESYSLOG
@@ -85,7 +87,7 @@
 	//make a socket to talk to the usbb2k device 
 
 	if ((s = socket(AF_UNIX, SOCK_STREAM, 0)) == -1) {
-		QMessageBox::critical ( parent, "Error Connecting To Device Socket", "The program will now exit\nCheck the usb driver program is running.", QMessageBox::Ok, QMessageBox::NoButton, QMessageBox::NoButton );           
+		QMessageBox::critical ( parent, "Error Connecting To Device Socket", "The program will now exit\nCheck the usb driver program is running.", QMessageBox::Ok, Qt::NoButton, Qt::NoButton );           
 		return false;
 	}
 	remote.sun_family = AF_UNIX;
@@ -93,7 +95,7 @@
 	len = strlen(remote.sun_path) + sizeof(remote.sun_family);
 
 	if (::connect(s, (struct sockaddr *)&remote, len) == -1) {
-		QMessageBox::critical ( parent, "Error Finding Device", "The program will now exit.\nCheck the usb driver is running and that you have read write permissions on it.", QMessageBox::Ok, QMessageBox::NoButton, QMessageBox::NoButton );           
+		QMessageBox::critical ( parent, "Error Finding Device", "The program will now exit.\nCheck the usb driver is running and that you have read write permissions on it.", QMessageBox::Ok, Qt::NoButton, Qt::NoButton );           
 		return false;
 	}
 	//etat=fcntl(s,F_GETFL);
@@ -276,12 +278,13 @@
 //
 //	Args: 		The string to describe the ring tone
 //	Returns:	void
-void B2kInterface::setTone(QString string){
-	if (string != NULL) {
+void B2kInterface::setTone(QByteArray string){
+//	if (string != NULL) {
+	if (!string.isNull()) {
 	   ringtone = string;
 	}
 	char str[50];
-	sprintf(str,"TONE %s\n",ringtone.ascii());
+	sprintf(str,"TONE %s\n",ringtone.constData());
 	if (write(s, str,strlen(str)) == -1) {
 		#ifdef USESYSLOG
 		syslog(LOG_ERR,"Send ERROR 1");
@@ -316,14 +319,14 @@
                 idx = 0;
                 while (idx > -1) {
                     //printf("idx: %d, b2kinput: %s", idx, b2kinput.ascii());
-                    idx = b2kinput.find('\n');
+                    idx = b2kinput.indexOf('\n');
                     len = b2kinput.length();
                     if ((idx > -1) && (idx+1 < len)) {
                         QString cmd(b2kinput.left(idx+1));
-                        processCommands(cmd.ascii());
+                        processCommands(cmd.toAscii());
                         b2kinput = b2kinput.right(len-idx-1);
                     } else if (idx > -1) {
-                        processCommands(b2kinput);
+                        processCommands(b2kinput.toAscii());
                         b2kinput = "";
                     }
                 }
@@ -344,29 +347,29 @@
 	syslog(LOG_INFO,"%s",s);
 	#endif
     
-	if(q.contains("KEY ",false)){
+	if(q.contains("KEY ",Qt::CaseInsensitive)){
 		// first keypress stops dial tone
 		if (currentMode == USB)
 			if (phoneNumber == "")
 				stoptDialTone();
 	}	
-	if(q.contains("USB DEVICE INIT ERROR", false)){
+	if(q.contains("USB DEVICE INIT ERROR", Qt::CaseInsensitive)){
 		#ifdef USESYSLOG
 		syslog(LOG_ERR,"Startup error, connection restarted!");
 		#endif
 		sendb2kFeedbackMessageEvent(QString("USB Device startup error, trying again...."));
 		startUSBDevice();
 	}
-	else if(q.contains("DEVICE REMOVED", false)){
+	else if(q.contains("DEVICE REMOVED", Qt::CaseInsensitive)){
 		sendb2kMessageEvent(QString("USB Device removed"));
 	}
-	else if(q.contains("DAEMON SHUTDOWN", false)){
+	else if(q.contains("DAEMON SHUTDOWN", Qt::CaseInsensitive)){
 		sendb2kMessageEvent(QString("USB Device removed"));
 	}
-	else if(q.contains("USBB2K ", false)){
+	else if(q.contains("USBB2K ", Qt::CaseInsensitive)){
 		sendb2kFeedbackMessageEvent(q);
 	}
-	else if(q.contains("HANDSET ON", false)){
+	else if(q.contains("HANDSET ON", Qt::CaseInsensitive)){
 		phoneNumber = "";
 		onhook = false;
 		sendb2kMessageEvent(QString("HANDSET ON"));
@@ -374,7 +377,7 @@
 		if (currentMode == USB)
 			startDialTone();
 	}
-	else if(q.contains("HANDSET OFF", false)){
+	else if(q.contains("HANDSET OFF", Qt::CaseInsensitive)){
 		phoneNumber = "";
 		onhook = true;
 		sendb2kMessageEvent(QString("HANDSET OFF"));
@@ -384,37 +387,37 @@
 		restoreDefaultMode();
 	}
 
-	else if(q.contains("KEY  01", false)){
+	else if(q.contains("KEY  01", Qt::CaseInsensitive)){
 		phoneNumber.append ("1");
 	}
-	else if(q.contains("KEY  02", false)){
+	else if(q.contains("KEY  02", Qt::CaseInsensitive)){
 		phoneNumber.append ("2");
 	}
-	else if(q.contains("KEY  03", false)){
+	else if(q.contains("KEY  03", Qt::CaseInsensitive)){
 		phoneNumber.append ("3");
 	}
-	else if(q.contains("KEY  04", false)){
+	else if(q.contains("KEY  04", Qt::CaseInsensitive)){
 		phoneNumber.append ("4");
 	}
-	else if(q.contains("KEY  05", false)){
+	else if(q.contains("KEY  05", Qt::CaseInsensitive)){
 		phoneNumber.append ("5");
 	}
-	else if(q.contains("KEY  06", false)){
+	else if(q.contains("KEY  06", Qt::CaseInsensitive)){
 		phoneNumber.append ("6");
 	}
-	else if(q.contains("KEY  07", false)){
+	else if(q.contains("KEY  07", Qt::CaseInsensitive)){
 		phoneNumber.append ("7");
 	}
-	else if(q.contains("KEY  08", false)){
+	else if(q.contains("KEY  08", Qt::CaseInsensitive)){
 		phoneNumber.append ("8");
 	}
-	else if(q.contains("KEY  09", false)){
+	else if(q.contains("KEY  09", Qt::CaseInsensitive)){
 		phoneNumber.append ("9");
 	}
-	else if(q.contains("KEY  00", false)){
+	else if(q.contains("KEY  00", Qt::CaseInsensitive)){
 		phoneNumber.append ("0");
 	}
-	else if(q.contains("KEY  0b", false)){
+	else if(q.contains("KEY  0b", Qt::CaseInsensitive)){
 		if (phoneNumber.length() == 0){
 			sendb2kUSB();
             if (phoneNumber == "")
@@ -422,12 +425,12 @@
         }
 	}
 	//hash key place the call 
-	else if(q.contains("KEY  0c", false))
+	else if(q.contains("KEY  0c", Qt::CaseInsensitive))
 	{
 		QString send = "CALL ";
 		stoptDialTone();
 		//ignore leading *, if any
-		if (phoneNumber.find("*") == 0){
+		if (phoneNumber.indexOf("*") == 0){
 			send.append(phoneNumber.right(phoneNumber.length() - 1));
 		}
 		else{
@@ -435,7 +438,7 @@
 		}
 		sendb2kMessageEvent(send);
 	}
-	else if(q.contains("USB DEVICE FOUND", false)){
+	else if(q.contains("USB DEVICE FOUND", Qt::CaseInsensitive)){
 		sendb2kFeedbackMessageEvent(QString("USB Device Found"));
 		//usleep(500000);
 		restoreDefaultMode(true);
@@ -444,7 +447,7 @@
 	}else{
 		sendb2kFeedbackMessageEvent(QString("Unknown Key: " + q));
 		#ifdef USESYSLOG
-		syslog(LOG_ERR,"UNKNOWN COMMAND: %s",q.ascii());
+		syslog(LOG_ERR,"UNKNOWN COMMAND: %s",q.toAscii());
 		#endif		
 	}
 }
@@ -473,7 +476,7 @@
 //	Args: 		The message to sent to skype
 //	Returns:	void
 void B2kInterface::sendb2kMessageEvent(QString text){
-	QCustomEvent* q = new B2KEvent(b2kCommandmessage, text);
+	QEvent* q = new B2KEvent(QEvent::Type(QEvent::User + b2kCommandmessage), text);
 	QApplication::postEvent(parent,q);
 }
 
@@ -483,7 +486,7 @@
 //	Args: 		The message to sent to skype
 //	Returns:	void
 void B2kInterface::sendb2kFeedbackMessageEvent(QString text){
-	QCustomEvent* q = new B2KEvent(b2kFeedbackMessage, text);
+	QEvent* q = new B2KEvent(QEvent::Type(QEvent::User + b2kFeedbackMessage), text);
 	QApplication::postEvent(parent,q);
 }
 
diff -Nur kb2kskype-0.3.8/src/b2kinterface.h kb2kskype-0.3.8-qt4/src/b2kinterface.h
--- kb2kskype-0.3.8/src/b2kinterface.h	2009-02-07 13:34:10.000000000 +0100
+++ kb2kskype-0.3.8-qt4/src/b2kinterface.h	2009-12-29 16:21:30.000000000 +0100
@@ -43,7 +43,7 @@
 enum mode {USB=1, PSTN=2};
 //enum app {SKYPE=0, TWINKLE=2};
 
-class B2kInterface : public QObject, public QThread{
+class B2kInterface : public QThread{
 		Q_OBJECT
 					
 		public:
@@ -62,7 +62,7 @@
 			void startDialTone();
 			void stoptDialTone();
 			void clientQuiting();
-			void setTone(QString = NULL);
+			void setTone(QByteArray = NULL);
 			void setDefaultMode(QString);
 			void restoreDefaultMode(bool=false);
 			QString getDefaultMode();
@@ -88,7 +88,7 @@
 			QString defaultModeString;
 			bool onhook;
 			bool dialtone;
-			QString ringtone;
+			QByteArray ringtone;
 			//taken from the usbb2k tools app added by simon dible 
 			int s, t, len;
 			int pid;
diff -Nur kb2kskype-0.3.8/src/CMakeLists.txt kb2kskype-0.3.8-qt4/src/CMakeLists.txt
--- kb2kskype-0.3.8/src/CMakeLists.txt	1970-01-01 01:00:00.000000000 +0100
+++ kb2kskype-0.3.8-qt4/src/CMakeLists.txt	2009-12-29 15:14:11.000000000 +0100
@@ -0,0 +1,75 @@
+
+include_directories(${KDE4_INCLUDES} ${KDE4_INCLUDE_DIR} ${QT_INCLUDES} )
+
+
+########### next target ###############
+
+set(kb2kskype_SRCS
+    apiapplication.cpp
+    skypeapidlg.cpp
+    xmessages.cpp
+    main.cpp
+    b2kinterface.cpp
+    kb2kmainwindow.cpp
+    b2kcustomevent.cpp)
+
+kde4_add_ui_files(kb2kskype_SRCS testapp_ui.ui)
+
+kde4_add_executable(kb2kskype ${kb2kskype_SRCS})
+
+target_link_libraries(kb2kskype ${KDE4_KDECORE_LIBS} ${KDE4_KDEUI_LIBS})
+
+install(TARGETS kb2kskype DESTINATION ${KDE4_BIN_INSTALL_DIR})
+
+
+########### install files ###############
+
+install(FILES  kb2kskypeui.rc DESTINATION ${KDE4_DATA_INSTALL_DIR}/kb2kskype)
+install(FILES  kb2kskype.desktop DESTINATION ${KDE4_XDG_APPS_INSTALL_DIR}/Utilities)
+
+kde4_install_icons(${KDE4_ICON_INSTALL_DIR})
+
+
+#original Makefile.am contents follow:
+
+## set the include path for X, qt and KDE
+#INCLUDES = $(all_includes)
+#
+## these are the headers for your project
+#
+#
+## let automoc handle all of the meta source files (moc)
+#METASOURCES = AUTO
+#
+#messages: rc.cpp
+#	$(EXTRACTRC) `find . -name \*.ui -o -name \*.rc` > rc.cpp
+#	$(XGETTEXT) *.cpp -o $(podir)/kb2kskype.pot
+#
+#KDE_ICON = AUTO
+#
+##########################################################################
+## APPLICATION SECTION
+##########################################################################
+## this is the program that gets installed.  it's name is used for all
+## of the other Makefile.am variables
+#bin_PROGRAMS = kb2kskype
+#
+## the application source, library search path, and link libraries
+#
+#kb2kskype_LDFLAGS = $(KDE_RPATH) $(all_libraries)
+#kb2kskype_LDADD = $(LIB_KDEUI) -lqt-mt -lXext -lpthread -lm -lX11
+#
+## this is where the desktop file will go 
+#shelldesktopdir   = $(kde_appsdir)/Utilities
+#shelldesktop_DATA = kb2kskype.desktop
+#
+## this is where the shell's XML-GUI resource file goes
+#shellrcdir   = $(kde_datadir)/kb2kskype
+#shellrc_DATA = kb2kskypeui.rc
+#
+#kb2kskype_SOURCES = apiapplication.cpp skypeapidlg.cpp testapp_ui.ui \
+#		xmessages.cpp main.cpp b2kinterface.cpp kb2kmainwindow.cpp \
+#		b2kcustomevent.cpp
+#noinst_HEADERS = apiapplication.h skypeapidlg.h xmessages.h b2kinterface.h \
+#	kb2kmainwindow.h b2kcustomevent.h
+#kde_icon_KDEICON = hi16-app-kb2kskype.png hi24-app-kb2kskype.png hi32-app-kb2kskype.png
diff -Nur kb2kskype-0.3.8/src/customeventsenumeration.h kb2kskype-0.3.8-qt4/src/customeventsenumeration.h
--- kb2kskype-0.3.8/src/customeventsenumeration.h	2008-02-10 18:21:45.000000000 +0100
+++ kb2kskype-0.3.8-qt4/src/customeventsenumeration.h	2009-12-29 17:26:31.000000000 +0100
@@ -21,6 +21,6 @@
 #ifndef B2KEVENTENUMERATIONS_H
 #define B2KEVENTENUMERATIONS_H
 
-enum {b2kFeedbackMessage = 1002, b2kCommandmessage=1003 };
+enum {b2kFeedbackMessage = 2, b2kCommandmessage=3 };
 
 #endif
diff -Nur kb2kskype-0.3.8/src/kb2kmainwindow.cpp kb2kskype-0.3.8-qt4/src/kb2kmainwindow.cpp
--- kb2kskype-0.3.8/src/kb2kmainwindow.cpp	2008-02-10 18:21:45.000000000 +0100
+++ kb2kskype-0.3.8-qt4/src/kb2kmainwindow.cpp	2009-12-29 17:27:02.000000000 +0100
@@ -21,8 +21,9 @@
 #include "kb2kmainwindow.h"
 #include <kapplication.h>
 
-Kb2kMainWindow::Kb2kMainWindow(QWidget* parent = 0, const char* name = 0, WFlags   f = WType_TopLevel|WDestructiveClose) : KMainWindow(parent,name,f)
+Kb2kMainWindow::Kb2kMainWindow(QWidget* parent = 0, Qt::WindowFlags   f = Qt::Window) : KMainWindow(parent,f)
 {
+    setAttribute(Qt::WA_DeleteOnClose);
 }
 
 Kb2kMainWindow::~Kb2kMainWindow(){
diff -Nur kb2kskype-0.3.8/src/kb2kmainwindow.h kb2kskype-0.3.8-qt4/src/kb2kmainwindow.h
--- kb2kskype-0.3.8/src/kb2kmainwindow.h	2008-02-10 18:21:45.000000000 +0100
+++ kb2kskype-0.3.8-qt4/src/kb2kmainwindow.h	2009-12-29 17:26:52.000000000 +0100
@@ -28,7 +28,7 @@
 {
 
 	public :
-		Kb2kMainWindow(QWidget*,const char*,WFlags);
+		Kb2kMainWindow(QWidget*,Qt::WindowFlags);
 		~Kb2kMainWindow();
 		bool queryClose();
 		void setTray (QWidget*);
diff -Nur kb2kskype-0.3.8/src/main.cpp kb2kskype-0.3.8-qt4/src/main.cpp
--- kb2kskype-0.3.8/src/main.cpp	2009-02-07 13:54:17.000000000 +0100
+++ kb2kskype-0.3.8-qt4/src/main.cpp	2009-12-29 17:29:31.000000000 +0100
@@ -33,7 +33,7 @@
 #include <kb2kmainwindow.h>
 #include "apiapplication.h"
 #include "skypeapidlg.h"
-#include "testapp_ui.h"
+#include "ui_testapp_ui.h"
 #include <stdio.h>
 #include <kaboutdata.h>
 #include <kcmdlineargs.h>
@@ -46,34 +46,37 @@
 
 static const char version[] = "0.3.8";
 
-static KCmdLineOptions options[] =
-{
-//    { "+[URL]", I18N_NOOP( "Document to open" ), 0 },
-     { "offhook-stamp <file>", I18N_NOOP("Full path of file to set when phone is offhook"), 0 },
-     { "status-script <spec>", I18N_NOOP("<status>[,<status>...],<script_file>\nUse script to update online status"), 0 },
-     { "debugmessages", I18N_NOOP("Show all api messages and debug messages in the feedback window\n"), 0 },
-    KCmdLineLastOption
-};
-
-
 int main(int argc, char **argv)
 {
-
-	//basic kde application data
-	KAboutData about("kb2kskype", I18N_NOOP("kb2kskype"), version, description,
-	KAboutData::License_GPL, "(C) 2006-2007 Simon Dible", 0, 0, "s.a.dible@lboro.ac.uk");
-	about.addAuthor( "Simon Dible", 0, "s.a.dible@lboro.ac.uk" );
+	const QByteArray appName = QByteArray("kb2kskype");
+	const QByteArray catalogName = QByteArray("");
+	const KLocalizedString &programName = ki18n("kb2kskype");
+	const QByteArray versionaux = QByteArray(version);
+	const KLocalizedString shortDescription = ki18n(description);
+	const KLocalizedString copyrightStatement = ki18n("(C) 2006-2007 Simon Dible");
+	const KLocalizedString text = KLocalizedString();
+	const QByteArray homePageAddress = QByteArray();
+	const QByteArray bugsEmailAddress = QByteArray("s.a.dible@lboro.ac.uk");
+	KAboutData about(appName, catalogName, programName, versionaux, shortDescription,
+			KAboutData::License_GPL, copyrightStatement, text, homePageAddress, bugsEmailAddress);
+	const KLocalizedString name = ki18n("Simon Dible");
+	const KLocalizedString task = KLocalizedString();
+	const QByteArray emailAddress = QByteArray("s.a.dible@lboro.ac.uk");
+	about.addAuthor( name, task, emailAddress );
 	KCmdLineArgs::init(argc, argv, &about);
-	KCmdLineArgs::addCmdLineOptions( options );
+	KCmdLineOptions options;
+	options.add("offhook-stamp <file>",ki18n("Full path of file to set when phone is offhook")); 
+	options.add("status-script <spec>", ki18n("<status>[,<status>...],<script_file>\nUse script to update online status"));
+	options.add("debugmessages", ki18n("Show all api messages and debug messages in the feedback window\n"));
+	KCmdLineArgs::addCmdLineOptions(options);
 
 	//start the application 
-	ApiApplication app(argc, argv);
-	
-    Kb2kMainWindow* mw = new Kb2kMainWindow(0,"kb2kskypemainwindow",0);
+	ApiApplication app(true);
+
+	Kb2kMainWindow* mw = new Kb2kMainWindow(0,0);
 	SkypeAPI apiWin(mw);
 	mw->setCentralWidget(&apiWin);
 	mw->setCaption(tr2i18n("B2K Controller"));
-	app.setMainWidget(mw);
 	mw->resize(410,420);
 
 	return app.exec();
diff -Nur kb2kskype-0.3.8/src/skypeapidlg.cpp kb2kskype-0.3.8-qt4/src/skypeapidlg.cpp
--- kb2kskype-0.3.8/src/skypeapidlg.cpp	2009-02-07 13:34:10.000000000 +0100
+++ kb2kskype-0.3.8-qt4/src/skypeapidlg.cpp	2009-12-30 15:16:52.000000000 +0100
@@ -57,15 +57,14 @@
 #include <qstringlist.h>
 #include <qslider.h>
 #include <qlineedit.h>
-#include <qtextedit.h>
 #include <qpushbutton.h>
 #include <qradiobutton.h>
 #include <qlabel.h>
 #include <qtextstream.h>
 #include <qfile.h>
-#include <qtable.h>
 #include <qdir.h>
 #include <qtimer.h>
+#include <QCustomEvent>
 #include <kapplication.h>
 #include <kiconloader.h>
 #include "skypeapidlg.h"
@@ -75,9 +74,10 @@
 #include <kcmdlineargs.h>
 #include <qevent.h>
 #include <klocale.h>
-#include <kiconloader.h>
 #include <qpixmap.h>
-#include <kpopupmenu.h>
+#include <kmenu.h>
+#include <ktoolinvocation.h>
+#include <QtDebug>
 
 static const char *skypemsg = "SKYPECONTROLAPI_MESSAGE";
 
@@ -94,8 +94,9 @@
 //
 //	Args: 		The parent window of the gui (systray)
 //	Returns:	void
-SkypeAPI::SkypeAPI(QWidget *parent)	: Skype_API(parent)
+SkypeAPI::SkypeAPI(QWidget *parent)	: QWidget(parent)
 {
+    setupUi(this);
     //Initialize controlled application
     controlledApp = SKYPE;
 	//evaluate command line args
@@ -103,7 +104,7 @@
 	offhook_stamp = args->getOption("offhook-stamp");
 	status_script_raw = args->getOption("status-script");
 	if (!status_script_raw.isEmpty()) {
-		status_script_info = QStringList::split(',', status_script_raw); 
+		status_script_info = status_script_raw.split(','); 
 		script = status_script_info[status_script_info.count()-1];
 	}
 	debugDisplay = args->isSet("debugmessages");
@@ -111,14 +112,13 @@
 
 	//sit the application in the system tray if you can find the icon
 	KIconLoader* kicon = new KIconLoader("kb2kskype");
-	tray = new KSystemTray(parent,"kb2kskype-tray") ;
-	tray->setPixmap(kicon->loadIcon("kb2kskype.png",KIcon::Small));
+	tray = new KSystemTrayIcon(parent) ;
+	tray->setIcon(kicon->loadIcon("kb2kskype",KIconLoader::Small));
 	//add stuff to the popup menu
-	KPopupMenu *kp = tray->contextMenu(); 
-	int itemHideOnStartUp = kp->insertItem( tr2i18n("Hide on startup"));
-	kp->setCheckable(true);
-	kp->setItemParameter( itemHideOnStartUp, itemHideOnStartUp );
-	kp->connectItem(itemHideOnStartUp, this, SLOT(hideOnStartup(int)));
+	QMenu *kp = tray->contextMenu(); 
+	itemHideOnStartUp = kp->addAction( tr2i18n("Hide on startup"));
+	itemHideOnStartUp->setCheckable(true);
+	connect(itemHideOnStartUp, SIGNAL(toggled(bool)), this, SLOT(hideOnStartup(bool)));
 	tray->show();
 
 	//launch the xevent handling class (widget)
@@ -142,17 +142,18 @@
 	connect(radioButton4, SIGNAL(clicked()),this,SLOT(controlTwinkle()));
 	connect (volume, SIGNAL(sliderReleased()), this, SLOT(setCurrentVolume()));
 	connect (record, SIGNAL(sliderReleased()), this, SLOT(setCurrentVolume()));
-	connect (pushButtonTestRingTone, SIGNAL(released()), this, SLOT(testRingTone()));
+	connect (pushButtonTestRingTone, SIGNAL(toggled(bool)), this, SLOT(testRingTone(bool)));
 	connect (pushButtonApplyRingTone, SIGNAL(released()), this, SLOT(setRingTone()));
 	connect (buttonHelp, SIGNAL(released()), this, SLOT(launchHelp()));
 	connect (buttonContactsRefresh, SIGNAL(released()), this, SLOT(updateContactList()));
 	connect (tray, SIGNAL(quitSelected()), this, SLOT(slotQuitApplication()));
 
 	//add an icons to the gui buttons
-	buttonHelp->setIconSet(QIconSet(kicon->loadIcon("help.png",KIcon::Small)));
-	buttonContactsRefresh->setIconSet(QIconSet(kicon->loadIcon("reload.png",KIcon::Small)));
-	pushButtonApplyRingTone->setIconSet(QIconSet(kicon->loadIcon("apply.png",KIcon::Small)));
-	pushButtonTestRingTone->setIconSet(QIconSet(kicon->loadIcon("start.png",KIcon::Small)));
+	kicon->addExtraDesktopThemes(); 
+	buttonHelp->setIcon(kicon->loadIcon("help", KIconLoader::Small));
+	buttonContactsRefresh->setIcon(kicon->loadIcon("reload", KIconLoader::Small));
+	pushButtonApplyRingTone->setIcon(kicon->loadIcon("apply", KIconLoader::Small));
+	pushButtonTestRingTone->setIcon(kicon->loadIcon("start", KIconLoader::Small));
 
 	//initialise the id of the current call assigned by skype
 	callNumber = QString("");
@@ -165,21 +166,22 @@
 	online_status = "";
 
 	//set up some parameters for the contacts table
-	int tableWidth = table1->visibleWidth();
-	table1->setColumnWidth(1,(int)(tableWidth*0.1));
-	table1->setColumnWidth(0,(int)(tableWidth*0.4));
+//	int tableWidth = table1->visibleWidth();
+//	table1->setColumnWidth(1,(int)(tableWidth*0.1));
+//	table1->setColumnWidth(0,(int)(tableWidth*0.4));
 
 	//get the card number of the sound card
 	QFile cards( "/proc/asound/cards" );
-	cards.open(IO_ReadOnly);
+	cards.open(QIODevice::ReadOnly);
 	QTextStream stream( &cards );			//open a stream reader on the file
 	QString line;
-	while ( !stream.atEnd() ) {
-		line = stream.readLine(); 			// line of text excluding '\n'
+	line = stream.readLine();
+	while (!line.isEmpty ()) {
 		if(line.contains("USB-Audio - VOIP USB Phone")){
-			QStringList l = QStringList::split('[', line); 
+			QStringList l = line.split('['); 
 			cardNumber = l[0];
 		}
+		line = stream.readLine();
 	}
 	cards.close();
 
@@ -204,17 +206,17 @@
 	QString inifilename = QString(homedir) + QString("/.kb2kskype");
 	QFile inifile(inifilename);
 	if (inifile.exists()){
-		inifile.open(IO_ReadOnly);
+		inifile.open(QIODevice::ReadOnly);
 		QTextStream stream( &inifile );
 		while ( !stream.atEnd() ) {
 			line = stream.readLine(); 
 			if((line.left(4)) == "TONE"){
-				QStringList l = QStringList::split('=', line); 
-				b->setTone(l[1].ascii());
-				lineEditRingTone->setText(l[1].ascii());
+				QStringList l = line.split('='); 
+				b->setTone(l[1].toAscii());
+				lineEditRingTone->setText(l[1].toAscii());
 			}
 			if((line.left(4)) == "MODE"){
-				QStringList l = QStringList::split('=', line); 
+				QStringList l = line.split('='); 
 				if (l[1].contains("PSTN")){
 					b->setDefaultMode("PSTN");
 					radioButton1->setChecked(true);
@@ -225,23 +227,23 @@
 				}
 			}
 			if((line.left(13)) == "STARMINIMIZED"){
-				QStringList l = QStringList::split('=', line); 
-				if (l[1].lower().contains("true")){
+				QStringList l = line.split('='); 
+				if (l[1].toLower().contains("true")){
 					startMinimized = true;
-					kp->setItemChecked ( itemHideOnStartUp, true);
+					itemHideOnStartUp->setChecked (true);
 					parent->hide();
 				}else {
-					kp->setItemChecked ( itemHideOnStartUp, false);
+					itemHideOnStartUp->setChecked (false);
 					parent->show();
 				}
 			}
 			if((line.left(12)) == "SPEAKERLEVEL"){
-				QStringList l = QStringList::split('=', line); 
+				QStringList l = line.split('='); 
 				volume->setValue( l[1].toInt() );
 				setCurrentVolume();
 			}
 			if((line.left(11)) == "RECORDLEVEL"){
-				QStringList l = QStringList::split('=', line); 
+				QStringList l = line.split('='); 
 				record->setValue( l[1].toInt() );
 				setCurrentVolume();
 			}
@@ -276,19 +278,19 @@
 //
 //	Args: 		The event signal and its data
 //	Returns:	void
-void SkypeAPI::customEvent(QCustomEvent *event){
-	if ((int)event->type() == b2kCommandmessage) {
+void SkypeAPI::customEvent(QEvent *event){
+	if (event->type() == QEvent::Type(QEvent::User + b2kCommandmessage)) {
 		if(debugDisplay)
 			logWindow->append("<font color=blue>" +
 				((B2KEvent*)event)->getMessage() +
 				"</font> (from telbox)\n");
 			gotB2KMessage(((B2KEvent*)event)->getMessage());
-	} else if ((int)event->type() == b2kFeedbackMessage) {
+	} else if (event->type() == QEvent::Type(QEvent::User + b2kFeedbackMessage)) {
 		logWindow->append("<font color=red>" +
 				((B2KEvent*)event)->getMessage() +
 				"</font> (from telbox)\n");
 	} else {
-			Skype_API::customEvent(event);
+			QWidget::customEvent(event);
 	}
 }
 
@@ -303,7 +305,8 @@
 	//keep checking every 10 seconds or so
 	QTimer *timer = new QTimer( this );
 	connect( timer, SIGNAL(timeout()), this, SLOT(monitorUserStatus()) );
-	timer->start( 10000, TRUE ); // 10 seconds single-shot timer
+	timer->setSingleShot(TRUE);
+	timer->start( 10000 ); // 10 seconds single-shot timer
 }
 
 
@@ -316,16 +319,23 @@
 	//if so, run it, and set Skype availability accordingly
 	//(if script returns 1, there is a person close by)
 	if (!script.isEmpty()){
-		if (QFile(script).exists()){
+		QFile file(script);
+		if (file.exists()){
 			qpCheckUserStatus = new QProcess(this);
 			connect(qpCheckUserStatus, SIGNAL(processExited()), this, SLOT(getCheckUserStatus()) );
-			qpCheckUserStatus->addArgument( script );
-			if(!qpCheckUserStatus->start()){
-				QMessageBox::critical ( this, "Error with status file", "Error reading the user status file\n Check the file exist and that you have permission to read from it..", QMessageBox::Ok, QMessageBox::NoButton, QMessageBox::NoButton );           
+			if (!file.open(QIODevice::ReadOnly | QIODevice::Text)) {
+				QMessageBox::critical ( this, "Error with status file", "Error opening the user status file\n Check the file exist and that you have permission to read from it..", QMessageBox::Ok, Qt::NoButton, Qt::NoButton );
 				script="";
 			}
+			QString pp;
+			while (!file.atEnd()) {
+				QByteArray line = file.readLine();
+				pp.append(line);
+			}
+			file.close();
+			qpCheckUserStatus->start(pp);
 		}else{
-			QMessageBox::critical ( this, "Error with status file", "Error reading the user status file\n Check the file exist and that you have permission to read from it..", QMessageBox::Ok, QMessageBox::NoButton, QMessageBox::NoButton );           
+			QMessageBox::critical ( this, "Error with status file", "Error reading the user status file\n Check the file exist and that you have permission to read from it..", QMessageBox::Ok, Qt::NoButton, Qt::NoButton );           
 			script="";
 		}
 	}
@@ -338,14 +348,14 @@
 //	Args: 		void
 //	Returns:	void
 void SkypeAPI::getCheckUserStatus(){
-	uint res = (unsigned)qpCheckUserStatus->exitStatus ();
+	int res = (int)qpCheckUserStatus->exitStatus ();
 	if (res < status_script_info.count()-1) {
-		if (status_script_info[res].lower() != online_status.lower()) { 
+		if (status_script_info[res].toLower() != online_status.toLower()) { 
 			sendMessage(QString("SET USERSTATUS " + status_script_info[res]));
 			online_status = status_script_info[res];
 			//sendMessage(QString("GET USERSTATUS"));
 		}
-		if (online_status.lower() == QString("online"))
+		if (online_status.toLower() == QString("online"))
 			sendMessage(QString("RESETIDLETIMER"));
 	} 
 	else{
@@ -390,7 +400,8 @@
 	//rerun this function after 5 seconds
 	QTimer *timer = new QTimer( this );
 	connect( timer, SIGNAL(timeout()), this, SLOT(skypeStillactive()) );
-	timer->start( 5000, TRUE ); // 5 seconds single-shot timer
+	timer->setSingleShot(TRUE);
+	timer->start( 5000 ); // 5 seconds single-shot timer
 }
 
 
@@ -413,12 +424,12 @@
 		retry=15;
 
 	while (retry>0){
-		skype_inst = XInternAtom(qt_xdisplay(), "_SKYPE_INSTANCE", True);
-		status = XGetWindowProperty(qt_xdisplay(), qt_xrootwin(), skype_inst, 0, 1, False, XA_WINDOW, &type_ret, &format_ret, &nitems_ret, &bytes_after_ret, &prop);
+		skype_inst = XInternAtom(QX11Info::display(), "_SKYPE_INSTANCE", True);
+		status = XGetWindowProperty(QX11Info::display(), QX11Info::appRootWindow() , skype_inst, 0, 1, False, XA_WINDOW, &type_ret, &format_ret, &nitems_ret, &bytes_after_ret, &prop);
 		// sanity check
 		if(status != Success || format_ret != 32 || nitems_ret != 1){
 			if (retry==1){
-				QMessageBox::critical ( this, "Error Connecting to Skype", "Couldn't find the main window\nYou must start Skype first.", QMessageBox::Ok, QMessageBox::NoButton, QMessageBox::NoButton );           
+				QMessageBox::critical ( this, "Error Connecting to Skype", "Couldn't find the main window\nYou must start Skype first.", QMessageBox::Ok, Qt::NoButton, Qt::NoButton );           
 				exit(1);
 			}else{
 				sleep(1);
@@ -462,7 +473,7 @@
 	if (debugDisplay)
 		logWindow->append("<font color=green>" + command + "</font> (sent to skype)\n");
 	char a[100];
-	strcpy(a, command.ascii());
+	strcpy(a, command.toAscii());
 	a[strlen(a)] = '\0';
 	if(!msg->sendMessage(skype_win, skypemsg, a)){
 		logWindow->append("<font color=red>Failed to send message to skype</font>");
@@ -474,14 +485,15 @@
 //
 //	Args: 		void
 //	Returns:	void
-void SkypeAPI::testRingTone(){
+void SkypeAPI::testRingTone(bool state){
 	KIconLoader* kicon = new KIconLoader("kb2kskype");
-	if (pushButtonTestRingTone->isOn()){
+	kicon->addExtraDesktopThemes(); 
+	if (state){
 		b->startRing();
-		pushButtonTestRingTone->setIconSet(QIconSet(kicon->loadIcon("stop.png",KIcon::Small)));
+		pushButtonTestRingTone->setIcon(kicon->loadIcon("stop", KIconLoader::Small));
 	}else{
 		b->stopRing();
-		pushButtonTestRingTone->setIconSet(QIconSet(kicon->loadIcon("start.png",KIcon::Small)));
+		pushButtonTestRingTone->setIcon(kicon->loadIcon("start", KIconLoader::Small));
 	}
 }
 
@@ -491,7 +503,7 @@
 //	Args: 		void
 //	Returns:	void
 void SkypeAPI::setRingTone(){
-	b->setTone(lineEditRingTone->text());
+	b->setTone(lineEditRingTone->text().toAscii());
 	saveSettings();
 }
 
@@ -514,10 +526,10 @@
 		QString inifilename = QString(homedir) + QString("/.kb2kskype1");
 		QFile inifile(inifilename);
 		//open and truncate the file
-		inifile.open(IO_WriteOnly);
+		inifile.open(QIODevice::WriteOnly);
 		QTextStream stream( &inifile );
 		stream << "TONE=" << lineEditRingTone->text() << "\n" ;
-		stream << "MODE=" << b->getDefaultMode().ascii() << "\n" ;
+		stream << "MODE=" << b->getDefaultMode().toAscii() << "\n" ;
 		if (startMinimized == true){
 			stream << "STARMINIMIZED=true" << "\n" ;
 		}else{
@@ -525,15 +537,15 @@
 		}
 		stream << "SPEAKERLEVEL=" << speakerLevel << "\n" ;
 		stream << "RECORDLEVEL=" << recordLevel << "\n" ;
-		for(int i=0;i<table1->numRows();i++){
-			if (table1->text(i,0) != ""){
-				stream << "CONTACT-" << username << "=" << table1->text(i,0) << "=" << table1->text(i,1)<< "\n" ;
+		for(int i=0;i<table1->rowCount();i++){
+			if (table1->item(i,0)->text() != ""){
+				stream << "CONTACT-" << username << "=" << table1->item(i,0)->text() << "=" << table1->item(i,1)->text()<< "\n" ;
 			}
 		}
 		//..open the old ini file and copy any data that isn't from the current user
 		QString OLDinifilename = QString(homedir) + QString("/.kb2kskype");
 		QFile OLDinifile(OLDinifilename);
-		if (OLDinifile.exists() && OLDinifile.open(IO_ReadOnly)){
+		if (OLDinifile.exists() && OLDinifile.open(QIODevice::ReadOnly)){
 			QTextStream OLDstream( &OLDinifile );
 			while ( !OLDstream.atEnd() ) {
 				line = OLDstream.readLine(); 
@@ -549,16 +561,16 @@
 		inifile.close();
 		
 		//move the new file over the old file 
-		dir.remove(OLDinifilename,true);
-		dir.rename(inifilename,OLDinifilename,true);
+		dir.remove(OLDinifilename);
+		dir.rename(inifilename,OLDinifilename);
 	
 		//look at the speed dials and warn if two numbers are the same
 		QString warningMessage;
-		for (int i=0;i<table1->numRows();i++){
-			for (int j=i+1;j<table1->numRows();j++){
-				if ((table1->text(i,1) != "") && (table1->text(j,1) != "") && (table1->text(i,1) == table1->text(j,1))){
-					warningMessage = QString("You have the same speed dial for "+ table1->text(i,0) + " and "+ table1->text(j,0) +"\nOnly the last number in the list will be active." );
-					QMessageBox::critical ( this, "Error two numbers are the same", warningMessage, QMessageBox::Ok, QMessageBox::NoButton, QMessageBox::NoButton );           
+		for (int i=0;i<table1->rowCount();i++){
+			for (int j=i+1;j<table1->rowCount();j++){
+				if ((table1->item(i,1)->text() != "") && (table1->item(j,1)->text() != "") && (table1->item(i,1)->text() == table1->item(j,1)->text())){
+					warningMessage = QString("You have the same speed dial for "+ table1->item(i,0)->text() + " and "+ table1->item(j,0)->text() +"\nOnly the last number in the list will be active." );
+					QMessageBox::critical ( this, "Error two numbers are the same", warningMessage, QMessageBox::Ok, Qt::NoButton, Qt::NoButton );           
 				}
 			}
 		}
@@ -578,15 +590,15 @@
 	QString inifilename = QString(homedir) + QString("/.kb2kskype");
 	QFile inifile(inifilename);
 	if (inifile.exists()){
-		inifile.open(IO_ReadOnly);
+		inifile.open(QIODevice::ReadOnly);
 		QTextStream stream( &inifile );
 		while ( !stream.atEnd() ) {
 			line = stream.readLine(); 
 			if(line.contains(contacts)){
-				QStringList l = QStringList::split('=', line); 
-				for (int i=0;i<table1->numRows();i++){
-					if(table1->text(i,0) == l[1]){
-						table1->setText(i,1,l[2]);
+				QStringList l = line.split('='); 
+				for (int i=0;i<table1->rowCount();i++){
+					if(table1->item(i,0)->text() == l[1]){
+						table1->item(i,1)->setText(l[2]);
 					}
 				}
 			}
@@ -608,17 +620,17 @@
 
 	//if in startup state look for connected to skyp message 
 	if (!started){
-		if (strcmp(message,"ERROR 1") == 0){
+		if (message == "ERROR 1"){
 			//General syntax error - skype refused a connection so quit out 
-		QMessageBox::critical ( this, "Error Connecting To Skype", "Couldn't connect to skype please restart and try again.", QMessageBox::Yes, QMessageBox::NoButton, QMessageBox::NoButton );           
+		QMessageBox::critical ( this, "Error Connecting To Skype", "Couldn't connect to skype please restart and try again.", QMessageBox::Yes, Qt::NoButton, Qt::NoButton );           
 		exit(1);
-		}else if(strcmp(message,"OK") == 0){
+		}else if(message == "OK"){
 			sendMessage(QString("PROTOCOL 7"));
 			started = true;
-		}else if (message.contains("ERROR 68",false ) ){
+		}else if (message.contains("ERROR 68",Qt::CaseInsensitive ) ){
 			logWindow->append("<font color=#a00000>Please sign into Skype and click refresh in the contacts tab: Skype " + message + "</font>\n");
 		}
-		else if (message.contains("ERROR",false ) ){
+		else if (message.contains("ERROR",Qt::CaseInsensitive ) ){
 			logWindow->append("<font color=#a00000>Skype error: " + message + "</font>\n");
 		}
 		if (debugDisplay)
@@ -636,10 +648,10 @@
 		//	store the username of the current user
 		//#####################################
 		if((message.left(17)) == "CURRENTUSERHANDLE"){
-			QStringList l = QStringList::split(' ', message); 
+			QStringList l = message.split(' '); 
 			if (l[1] != username){
 				username = l[1];
-				disconnect( table1, SIGNAL(valueChanged(int,int)),this, SLOT(saveSettings()) );
+				disconnect( table1, SIGNAL(cellChanged(int,int)),this, SLOT(saveSettings()) );
 				labelcurrentuser->setText(tr2i18n("User:") + username);
 				//get a contact list from skype 
 				sendMessage(QString("SEARCH FRIENDS"));
@@ -650,20 +662,24 @@
 		//#####################################
 		else if ((message.left(6)) == "USERS "){
 		//stop all listenest to table1 (stop warning appearing dureing updates
-		disconnect( table1, SIGNAL(valueChanged(int,int)),this, SLOT(saveSettings()) );
-		QStringList l = QStringList::split(',', message);
-		table1->setNumRows(l.count());
+		disconnect( table1, SIGNAL(cellChanged(int,int)),this, SLOT(saveSettings()) );
+		QStringList l = message.split(',');
+		table1->setRowCount(l.count());
+		table1->setColumnCount(2);
+		table1->setHorizontalHeaderLabels(QStringList() << tr2i18n("Contact Name") << tr2i18n("Speed Dial"));
+		table1->setColumnWidth(0, (int)(table1->width() * 1.6));
+		table1->setColumnWidth(1, (int)(table1->width() * 0.4));
 		char dial[5];
-			for (uint i=0;i<l.count();i++){
+			for (int i=0;i<l.count();i++){
 				sprintf(dial,"%d",i);
-				table1->setText(i,1,dial);
+				table1->setItem(i,1,new QTableWidgetItem(dial));
 				//format the user list
-				if (l[i].contains("USERS ",false )){
-					QStringList l2 = QStringList::split(' ', message); 
-					table1->setText(i,0,l2[1].replace(',',""));
+				if (l[i].contains("USERS ",Qt::CaseInsensitive )){
+					QStringList l2 = message.split(' '); 
+					table1->setItem(i,0,new QTableWidgetItem(l2[1].replace(',',"")));
 				}
 				else{
-					table1->setText(i,0,l[i].replace(' ',""));
+					table1->setItem(i,0,new QTableWidgetItem(l[i].replace(' ',"")));
 				}
 			}
 
@@ -671,7 +687,7 @@
 			loadSpeedDials();
 
 			//monitor speed dials for user changes
-			connect (table1, SIGNAL(valueChanged(int,int)), this, SLOT(saveSettings()));
+			connect (table1, SIGNAL(cellChanged(int,int)), this, SLOT(saveSettings()));
 
 			setRingTone();
 		}
@@ -679,16 +695,16 @@
 		//#####################################
 		//see if we have an error 68 (Access denied) in general means kb2kskype not registered with the current user
 		//#####################################
-		else if (message.contains("ERROR 68",false ) ){
+		else if (message.contains("ERROR 68",Qt::CaseInsensitive ) ){
 			logWindow->append("<font color=#a00000>Please sign into Skype and click refresh in the contacts tab: Skype " + message + "</font>\n");
-		}else if (message.contains("ERROR",false ) ){
+		}else if (message.contains("ERROR",Qt::CaseInsensitive ) ){
 			logWindow->append("<font color=#a00000>Skype: " + message + "</font>\n");
 		}
 
 		//#####################################
 		//see if we have an incomming call 
 		//#####################################
-		else if (message.contains("CALL",false ) && message.contains("STATUS RINGING",false )){
+		else if (message.contains("CALL",Qt::CaseInsensitive ) && message.contains("STATUS RINGING",Qt::CaseInsensitive )){
 			//we have a call so start ringing the box if we aren't already on the phone and the phone isn't already ringing
 			if(!incall && b->getOnHook() && !ringing){
 				//quash suppresses mode switch immediately
@@ -701,7 +717,7 @@
 						sleep(1);
 					}
 					//tokenise the reply to get the call number 
-					QStringList l = QStringList::split(' ', message); 
+					QStringList l = message.split(' '); 
 					callNumber = l[1];
 
 					//make the box ring 
@@ -717,7 +733,7 @@
 		//#####################################
 		//see if we have refused a call 
 		//#####################################
-		else if (message.contains("CALL",false ) && message.contains("STATUS REFUSED",false )){
+		else if (message.contains("CALL",Qt::CaseInsensitive ) && message.contains("STATUS REFUSED",Qt::CaseInsensitive )){
 			//we have a call so start ringing the box
 			if (!b->getOnHook()) {
 				b->startDialTone();
@@ -733,7 +749,7 @@
 		//#####################################
 		//see if we have FAILED a call 
 		//#####################################
-		else if (message.contains("CALL",false ) && message.contains("STATUS FAILED",false )){
+		else if (message.contains("CALL",Qt::CaseInsensitive ) && message.contains("STATUS FAILED",Qt::CaseInsensitive )){
 			//we have failed a call so stop ringing the box
 			if (!b->getOnHook()) {
 				b->startDialTone();
@@ -749,7 +765,7 @@
 		//#####################################
 		//see if we have finished a call 
 		//#####################################
-		else if (message.contains("CALL",false ) && message.contains("STATUS FINISHED",false )){
+		else if (message.contains("CALL",Qt::CaseInsensitive ) && message.contains("STATUS FINISHED",Qt::CaseInsensitive )){
 			//we have finished a call so stop ringing the box 
 			if (ringing){
 				b->stopRing();
@@ -764,7 +780,7 @@
 		//#####################################
 		//see if we have canceled a call 
 		//#####################################
-		else if (message.contains("CALL",false ) && message.contains("STATUS CANCELLED",false )){
+		else if (message.contains("CALL",Qt::CaseInsensitive ) && message.contains("STATUS CANCELLED",Qt::CaseInsensitive )){
 			//we have cancelled a call so stop ringing the box
 			if (ringing){
 				b->stopRing();
@@ -780,7 +796,7 @@
 		//#####################################
 		//see if we have MISSED a call 
 		//#####################################
-		else if (message.contains("CALL",false ) && message.contains("STATUS MISSED",false )){
+		else if (message.contains("CALL",Qt::CaseInsensitive ) && message.contains("STATUS MISSED",Qt::CaseInsensitive )){
 			if (ringing){
 				b->stopRing();
 				ringing = false;
@@ -794,7 +810,7 @@
 		//#####################################
 		//see if we have a call being produced and grab the calll id 
 		//#####################################
-		else if (message.contains("CALL",false ) && message.contains("STATUS ROUTING",false )){
+		else if (message.contains("CALL",Qt::CaseInsensitive ) && message.contains("STATUS ROUTING",Qt::CaseInsensitive )){
 			if (b->getCurrentMode() == PSTN){
 				b->sendb2kUSB();
 				if (debugDisplay)
@@ -802,14 +818,14 @@
 			}
 			//we have a call so store the call id and turn off the dial tone
 			incall = true;
-			QStringList l = QStringList::split(' ', message); 
+			QStringList l = message.split(' '); 
 			b->stoptDialTone();
 			callNumber = l[1];
 		}
 		//#####################################
 		//see if we have BUSY a call 
 		//#####################################
-		else if (message.contains("CALL",false ) && message.contains("STATUS BUSY",false )){
+		else if (message.contains("CALL",Qt::CaseInsensitive ) && message.contains("STATUS BUSY",Qt::CaseInsensitive )){
 			//we have a busy call
 			incall = false;
 			if (!b->getOnHook()) {
@@ -820,7 +836,7 @@
 		//#####################################
 		//see if we have answered a call 
 		//#####################################
-		else if (message.contains("CALL",false ) && message.contains("STATUS INPROGRESS",false )){
+		else if (message.contains("CALL",Qt::CaseInsensitive ) && message.contains("STATUS INPROGRESS",Qt::CaseInsensitive )){
 			//we have a call so stop ringing the box 
 			if (ringing) {
 				b->stopRing();
@@ -830,7 +846,7 @@
 			b->stoptDialTone();
 			usleep (1000);
 			//get the call number from return string 
-			QStringList l = QStringList::split(' ', message); 
+			QStringList l = message.split(' '); 
 			callNumber = l[1];
 			//set flags
 			incall = true;
@@ -864,7 +880,7 @@
 		//remove the offhook stamp file if in use and it exists
 		if (!offhook_stamp.isEmpty() && QFile(offhook_stamp).exists()) {
 			QDir dir = QDir();
-			dir.remove(offhook_stamp,true);
+			dir.remove(offhook_stamp);
 		}
 	}
 	//###########################################
@@ -881,8 +897,8 @@
 		//maybe set an offhook stamp file
 		if (!offhook_stamp.isEmpty()) {
 			QFile flagfile(offhook_stamp);
-			if(!flagfile.open(IO_WriteOnly)){
-				QMessageBox::critical ( this, "Error making the stamp file", "Error making stamp file, check the file path and try again.", QMessageBox::Ok, QMessageBox::NoButton, QMessageBox::NoButton );           
+			if(!flagfile.open(QIODevice::WriteOnly)){
+				QMessageBox::critical ( this, "Error making the stamp file", "Error making stamp file, check the file path and try again.", QMessageBox::Ok, Qt::NoButton, Qt::NoButton );           
 				offhook_stamp = "";
 				return;
 			}
@@ -917,16 +933,16 @@
 	char tmp [10];
 	sprintf(tmp, "%d", record->value() );
 	QString str = QString("amixer -q -c "+ cardNumber + " sset Mic,0 " + tmp + "% cap");
-	system(str.ascii());
+	system(str.toAscii());
 	str = QString("amixer -q -c "+ cardNumber + " sset Mic,1 " + tmp + "% cap");
-	system(str.ascii());
+	system(str.toAscii());
 
 	//volume.value();
 	sprintf(tmp, "%d", volume->value() );
 	str = QString("amixer -q -c "+ cardNumber + " sset PCM,0 " + tmp + "% unmute");
-	system(str.ascii());
+	system(str.toAscii());
 	str = QString("amixer -q -c "+ cardNumber + " sset PCM,1 " + tmp + "% unmute");
-	system(str.ascii());
+	system(str.toAscii());
 
 	//read the volume back to check 
 	speakerLevel = volume->value();
@@ -945,13 +961,10 @@
 void SkypeAPI::getMixerVolumes(){
 	//use amixer as a seperate process and get the volumes by reading the stdout 
 	qpGetVol = new QProcess(this);
-	connect(qpGetVol, SIGNAL(readyReadStdout()), this, SLOT(getCurrentVolume()) );
-	qpGetVol->addArgument( "amixer" );
-	qpGetVol->addArgument( "-c" );
-	qpGetVol->addArgument(cardNumber.stripWhiteSpace());
-	if(!qpGetVol->start()){
-		fprintf(stderr, "ERROR getting volumes :%s:\n", cardNumber.stripWhiteSpace().ascii());
-	}
+	connect(qpGetVol, SIGNAL(readyReadStandardOutput()), this, SLOT(getCurrentVolume()) );
+	QStringList pp;
+	pp << "-c" << cardNumber.trimmed();
+	qpGetVol->start("amixer", pp);
 }
 
 
@@ -961,19 +974,19 @@
 //	Returns:	void
 void SkypeAPI::getCurrentVolume(){
 	QString qstr;
-	while (qpGetVol->canReadLineStdout()){
-		qstr = qpGetVol->readLineStdout();
+	while (qpGetVol->canReadLine()){
+		qstr = qpGetVol->readLine();
 		if(qstr.contains("Mono: Playback")){
-			QStringList l = QStringList::split('[', qstr); 
+			QStringList l = qstr.split('['); 
 			QString str = l[1];
-			l = QStringList::split('%', str); 
-				volume->setValue(atoi(l[0].ascii()));
+			l = str.split('%'); 
+				volume->setValue(atoi(l[0].toAscii()));
 		}
 		if(qstr.contains("Mono: Capture")){
-			QStringList l = QStringList::split('[', qstr); 
+			QStringList l = qstr.split('['); 
 			QString str = l[1];
-			l = QStringList::split('%', str); 
-				record->setValue(atoi(l[0].ascii()));
+			l = str.split('%'); 
+				record->setValue(atoi(l[0].toAscii()));
 		}
 	}
 }
@@ -983,7 +996,7 @@
 //	Args: 		void
 //	Returns:	void
 void SkypeAPI::launchHelp(){
-	KApplication::kApplication()->invokeHelp();
+	KToolInvocation::invokeHelp();
 }
 
 //close the application when the systray is closed
@@ -996,10 +1009,9 @@
 
 
 //event for wether to hide main gui on startup sent from system tray icon
-void SkypeAPI::hideOnStartup(int item){
-	KPopupMenu *kp = tray->contextMenu(); 
-	kp->setItemChecked ( item, !kp->isItemChecked(item));
-	startMinimized = kp->isItemChecked(item);
+void SkypeAPI::hideOnStartup(bool state){
+	itemHideOnStartUp->setChecked (state);
+	startMinimized = state;
 	saveSettings();
 }
 
@@ -1030,7 +1042,7 @@
 
 void SkypeAPI::makeCall(QString message) {
     //printf("begin makeCall\n");
-    QStringList l = QStringList::split(' ', message); 
+    QStringList l = message.split(' '); 
     QString str = l[1];
     QRegExp rx;
     bool speedmatch;
@@ -1038,14 +1050,14 @@
         case SKYPE:
             // look through the speed dials for a matched number
             speedmatch = false;
-            for (int i=0;i<table1->numRows();i++){
-                if (str == table1->text(i,1)){
+            for (int i=0;i<table1->rowCount();i++){
+                if (str == table1->item(i,1)->text()){
                     message = QString("CALL ");
-                    message.append(table1->text(i,0));
+                    message.append(table1->item(i,0)->text());
                     speedmatch = true;
                 }
             }
-            rx = QRegExp("^[+0-9 ]*$",TRUE,FALSE);
+            rx = QRegExp("^[+0-9 ]*$",Qt::CaseSensitive);
             //if pattern not found, no speed dials or the string is to short
             if (!str.contains(rx) || (!speedmatch && (str.length() < 4))){
                 if (!b->getOnHook()) {
@@ -1060,7 +1072,7 @@
         case TWINKLE:
             if (!incall) {
                 //printf("before system\n");
-                system((QString("twinkle --immediate --call ") + str).ascii());
+                system((QString("twinkle --immediate --call ") + str).toAscii());
                 //printf("after system\n");
                 incall = true;
             };
diff -Nur kb2kskype-0.3.8/src/skypeapidlg.h kb2kskype-0.3.8-qt4/src/skypeapidlg.h
--- kb2kskype-0.3.8/src/skypeapidlg.h	2009-02-07 13:34:10.000000000 +0100
+++ kb2kskype-0.3.8-qt4/src/skypeapidlg.h	2009-12-30 15:14:19.000000000 +0100
@@ -31,8 +31,10 @@
 // 
 
 
-#include "testapp_ui.h"
+#include "ui_testapp_ui.h"
 #include <qprocess.h>
+//Added by qt3to4:
+#include <QCustomEvent>
 #include <X11/Xlib.h>
 #include <X11/Xatom.h>
 #include "b2kinterface.h"
@@ -40,7 +42,7 @@
 #include "xmessagecontainer.h"
 #include "b2kcustomevent.h"
 #include <kcmdlineargs.h>
-#include <ksystemtray.h>
+#include <ksystemtrayicon.h>
 
 enum apps {
     SKYPE=0, 
@@ -49,7 +51,7 @@
 
 class XMessages;
 
-class SkypeAPI : public Skype_API
+class SkypeAPI : public QWidget, public Ui::Skype_API
 {
 	Q_OBJECT
 
@@ -67,7 +69,7 @@
 		void getCurrentVolume();
 		void setCurrentVolume();
 		void getMixerVolumes();
-		void testRingTone();
+		void testRingTone(bool);
 		void setRingTone();
 		void saveSettings();
 		void loadSpeedDials();
@@ -79,7 +81,7 @@
 		void checkUserStatus();
 		void monitorUserStatus();
 		void getCheckUserStatus();
-		void hideOnStartup(int);
+		void hideOnStartup(bool);
 		void controlSkype();
         void controlTwinkle();
 		void endCall();
@@ -105,11 +107,12 @@
 		QStringList status_script_info;
 		QString script;
 		QString online_status;
-		void customEvent(QCustomEvent*);
+		void customEvent(QEvent*);
 		bool debugDisplay;
 		bool startMinimized;
-		KSystemTray* tray;
+		KSystemTrayIcon* tray;
 		int speakerLevel;
 		int recordLevel;
 		unsigned short int controlledApp;
+		QAction *itemHideOnStartUp;
 };
diff -Nur kb2kskype-0.3.8/src/testapp_ui.ui kb2kskype-0.3.8-qt4/src/testapp_ui.ui
--- kb2kskype-0.3.8/src/testapp_ui.ui	2009-02-07 13:34:10.000000000 +0100
+++ kb2kskype-0.3.8-qt4/src/testapp_ui.ui	2009-12-30 15:06:38.000000000 +0100
@@ -1,1087 +1,1299 @@
-<!DOCTYPE UI><UI version="3.3" stdsetdef="1">
-<class>Skype_API</class>
-<widget class="QWidget">
-    <property name="name">
-        <cstring>Skype_API</cstring>
-    </property>
-    <property name="geometry">
-        <rect>
-            <x>0</x>
-            <y>0</y>
-            <width>370</width>
-            <height>509</height>
-        </rect>
-    </property>
-    <property name="sizePolicy">
-        <sizepolicy>
-            <hsizetype>3</hsizetype>
-            <vsizetype>3</vsizetype>
-            <horstretch>0</horstretch>
-            <verstretch>0</verstretch>
-        </sizepolicy>
-    </property>
-    <property name="caption">
-        <string>B2K Controller</string>
-    </property>
-    <grid>
-        <property name="name">
-            <cstring>unnamed</cstring>
-        </property>
-        <widget class="QPushButton" row="0" column="1">
-            <property name="name">
-                <cstring>buttonHelp</cstring>
+<?xml version="1.0" encoding="UTF-8"?>
+<ui version="4.0">
+ <class>Skype_API</class>
+ <widget class="QWidget" name="Skype_API">
+  <property name="geometry">
+   <rect>
+    <x>0</x>
+    <y>0</y>
+    <width>411</width>
+    <height>557</height>
+   </rect>
+  </property>
+  <property name="sizePolicy">
+   <sizepolicy hsizetype="MinimumExpanding" vsizetype="MinimumExpanding">
+    <horstretch>0</horstretch>
+    <verstretch>0</verstretch>
+   </sizepolicy>
+  </property>
+  <property name="windowTitle">
+   <string>B2K Controller</string>
+  </property>
+  <layout class="QGridLayout">
+   <item row="0" column="1">
+    <widget class="QPushButton" name="buttonHelp">
+     <property name="sizePolicy">
+      <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+       <horstretch>0</horstretch>
+       <verstretch>0</verstretch>
+      </sizepolicy>
+     </property>
+     <property name="toolTip">
+      <string>Launch the help manual for this program</string>
+     </property>
+     <property name="text">
+      <string>Help</string>
+     </property>
+    </widget>
+   </item>
+   <item row="0" column="0">
+    <widget class="QLabel" name="textLabel1">
+     <property name="text">
+      <string>&lt;h1&gt;&lt;b&gt;&lt;p align=&quot;center&quot;&gt;B2K Controller&lt;/p&gt;&lt;/b&gt;&lt;/h1&gt;</string>
+     </property>
+     <property name="wordWrap">
+      <bool>false</bool>
+     </property>
+    </widget>
+   </item>
+   <item row="1" column="0" colspan="2">
+    <widget class="QTabWidget" name="tabWidget2">
+     <property name="tabShape">
+      <enum>QTabWidget::Rounded</enum>
+     </property>
+     <property name="currentIndex">
+      <number>0</number>
+     </property>
+     <widget class="QWidget" name="tab">
+      <attribute name="title">
+       <string>&amp;Main</string>
+      </attribute>
+      <layout class="QVBoxLayout">
+       <item>
+        <widget class="QGroupBox" name="buttonGroup1_2">
+         <property name="title">
+          <string>Controlled application</string>
+         </property>
+         <property name="checkable">
+          <bool>false</bool>
+         </property>
+         <property name="exclusive" stdset="0">
+          <bool>true</bool>
+         </property>
+         <layout class="QGridLayout">
+          <item row="0" column="0">
+           <layout class="QHBoxLayout">
+            <item>
+             <spacer name="spacer5">
+              <property name="orientation">
+               <enum>Qt::Horizontal</enum>
+              </property>
+              <property name="sizeType">
+               <enum>QSizePolicy::Expanding</enum>
+              </property>
+              <property name="sizeHint" stdset="0">
+               <size>
+                <width>60</width>
+                <height>20</height>
+               </size>
+              </property>
+             </spacer>
+            </item>
+            <item>
+             <widget class="QRadioButton" name="radioButton3">
+              <property name="toolTip">
+               <string>Control Skype from kb2kskype</string>
+              </property>
+              <property name="text">
+               <string>&amp;Skype</string>
+              </property>
+              <property name="shortcut">
+               <string>Alt+S</string>
+              </property>
+              <property name="checked">
+               <bool>true</bool>
+              </property>
+             </widget>
+            </item>
+            <item>
+             <spacer name="spacer6">
+              <property name="orientation">
+               <enum>Qt::Horizontal</enum>
+              </property>
+              <property name="sizeType">
+               <enum>QSizePolicy::Expanding</enum>
+              </property>
+              <property name="sizeHint" stdset="0">
+               <size>
+                <width>120</width>
+                <height>20</height>
+               </size>
+              </property>
+             </spacer>
+            </item>
+            <item>
+             <widget class="QRadioButton" name="radioButton4">
+              <property name="toolTip">
+               <string>Control Twinkle from kb2kskype</string>
+              </property>
+              <property name="text">
+               <string>&amp;Twinkle</string>
+              </property>
+              <property name="shortcut">
+               <string>Alt+T</string>
+              </property>
+              <property name="checked">
+               <bool>false</bool>
+              </property>
+             </widget>
+            </item>
+            <item>
+             <spacer name="spacer7">
+              <property name="orientation">
+               <enum>Qt::Horizontal</enum>
+              </property>
+              <property name="sizeType">
+               <enum>QSizePolicy::Expanding</enum>
+              </property>
+              <property name="sizeHint" stdset="0">
+               <size>
+                <width>40</width>
+                <height>20</height>
+               </size>
+              </property>
+             </spacer>
+            </item>
+           </layout>
+          </item>
+         </layout>
+        </widget>
+       </item>
+       <item>
+        <widget class="QGroupBox" name="buttonGroup1">
+         <property name="title">
+          <string>B2K Mode</string>
+         </property>
+         <property name="checkable">
+          <bool>false</bool>
+         </property>
+         <property name="exclusive" stdset="0">
+          <bool>true</bool>
+         </property>
+         <layout class="QGridLayout">
+          <item row="0" column="0">
+           <layout class="QHBoxLayout">
+            <item>
+             <spacer name="spacer4">
+              <property name="orientation">
+               <enum>Qt::Horizontal</enum>
+              </property>
+              <property name="sizeType">
+               <enum>QSizePolicy::Expanding</enum>
+              </property>
+              <property name="sizeHint" stdset="0">
+               <size>
+                <width>60</width>
+                <height>20</height>
+               </size>
+              </property>
+             </spacer>
+            </item>
+            <item>
+             <widget class="QRadioButton" name="radioButton1">
+              <property name="toolTip">
+               <string>Switch the box to PSTN mode</string>
+              </property>
+              <property name="text">
+               <string>PST&amp;N</string>
+              </property>
+              <property name="shortcut">
+               <string>Alt+N</string>
+              </property>
+              <property name="checked">
+               <bool>true</bool>
+              </property>
+             </widget>
+            </item>
+            <item>
+             <spacer name="spacer3">
+              <property name="orientation">
+               <enum>Qt::Horizontal</enum>
+              </property>
+              <property name="sizeType">
+               <enum>QSizePolicy::Expanding</enum>
+              </property>
+              <property name="sizeHint" stdset="0">
+               <size>
+                <width>120</width>
+                <height>20</height>
+               </size>
+              </property>
+             </spacer>
+            </item>
+            <item>
+             <widget class="QRadioButton" name="radioButton2">
+              <property name="toolTip">
+               <string>Switch the box to USB mode.</string>
+              </property>
+              <property name="text">
+               <string>&amp;USB</string>
+              </property>
+              <property name="shortcut">
+               <string>Alt+U</string>
+              </property>
+              <property name="checked">
+               <bool>false</bool>
+              </property>
+             </widget>
+            </item>
+            <item>
+             <spacer name="spacer2">
+              <property name="orientation">
+               <enum>Qt::Horizontal</enum>
+              </property>
+              <property name="sizeType">
+               <enum>QSizePolicy::Expanding</enum>
+              </property>
+              <property name="sizeHint" stdset="0">
+               <size>
+                <width>40</width>
+                <height>20</height>
+               </size>
+              </property>
+             </spacer>
+            </item>
+           </layout>
+          </item>
+         </layout>
+        </widget>
+       </item>
+       <item>
+        <widget class="QGroupBox" name="buttonGroup2">
+         <property name="title">
+          <string>Ring Tone</string>
+         </property>
+         <layout class="QGridLayout">
+          <item row="0" column="0">
+           <widget class="QLineEdit" name="lineEditRingTone">
+            <property name="toolTip">
+             <string>Define a ring tone, see the help documentation.</string>
+            </property>
+            <property name="text">
+             <string>DdDt</string>
             </property>
-            <property name="sizePolicy">
-                <sizepolicy>
-                    <hsizetype>0</hsizetype>
-                    <vsizetype>0</vsizetype>
-                    <horstretch>0</horstretch>
-                    <verstretch>0</verstretch>
-                </sizepolicy>
+           </widget>
+          </item>
+          <item row="0" column="1">
+           <widget class="QPushButton" name="pushButtonApplyRingTone">
+            <property name="toolTip">
+             <string>Apply your new ring tone.</string>
             </property>
             <property name="text">
-                <string>Help</string>
+             <string>&amp;Apply</string>
             </property>
-            <property name="toolTip" stdset="0">
-                <string>Launch the help manual for this program</string>
+            <property name="shortcut">
+             <string>Alt+A</string>
             </property>
-        </widget>
-        <widget class="QLabel" row="0" column="0">
-            <property name="name">
-                <cstring>textLabel1</cstring>
+           </widget>
+          </item>
+          <item row="0" column="2">
+           <widget class="QPushButton" name="pushButtonTestRingTone">
+            <property name="toolTip">
+             <string>Test your ring tone.</string>
             </property>
             <property name="text">
-                <string>&lt;h1&gt;&lt;b&gt;&lt;p align="center"&gt;B2K Controller&lt;/p&gt;&lt;/b&gt;&lt;/h1&gt;</string>
-            </property>
-        </widget>
-        <widget class="QTabWidget" row="1" column="0" rowspan="1" colspan="2">
-            <property name="name">
-                <cstring>tabWidget2</cstring>
+             <string>Test</string>
             </property>
-            <property name="tabShape">
-                <enum>Rounded</enum>
+            <property name="checkable">
+             <bool>true</bool>
             </property>
-            <widget class="QWidget">
-                <property name="name">
-                    <cstring>tab</cstring>
-                </property>
-                <attribute name="title">
-                    <string>&amp;Main</string>
-                </attribute>
-                <vbox>
-                    <property name="name">
-                        <cstring>unnamed</cstring>
-                    </property>
-                    <widget class="QButtonGroup">
-                        <property name="name">
-                            <cstring>buttonGroup1_2</cstring>
-                        </property>
-                        <property name="title">
-                            <string>Controlled application</string>
-                        </property>
-                        <property name="checkable">
-                            <bool>false</bool>
-                        </property>
-                        <property name="exclusive">
-                            <bool>true</bool>
-                        </property>
-                        <grid>
-                            <property name="name">
-                                <cstring>unnamed</cstring>
-                            </property>
-                            <widget class="QLayoutWidget" row="0" column="0">
-                                <property name="name">
-                                    <cstring>layout3_3</cstring>
-                                </property>
-                                <hbox>
-                                    <property name="name">
-                                        <cstring>unnamed</cstring>
-                                    </property>
-                                    <spacer>
-                                        <property name="name">
-                                            <cstring>spacer5</cstring>
-                                        </property>
-                                        <property name="orientation">
-                                            <enum>Horizontal</enum>
-                                        </property>
-                                        <property name="sizeType">
-                                            <enum>Expanding</enum>
-                                        </property>
-                                        <property name="sizeHint">
-                                            <size>
-                                                <width>60</width>
-                                                <height>20</height>
-                                            </size>
-                                        </property>
-                                    </spacer>
-                                    <widget class="QRadioButton">
-                                        <property name="name">
-                                            <cstring>radioButton3</cstring>
-                                        </property>
-                                        <property name="text">
-                                            <string>&amp;Skype</string>
-                                        </property>
-                                        <property name="accel">
-                                            <string>Alt+S</string>
-                                        </property>
-                                        <property name="checked">
-                                            <bool>true</bool>
-                                        </property>
-                                        <property name="toolTip" stdset="0">
-                                            <string>Control Skype from kb2kskype</string>
-                                        </property>
-                                    </widget>
-                                    <spacer>
-                                        <property name="name">
-                                            <cstring>spacer6</cstring>
-                                        </property>
-                                        <property name="orientation">
-                                            <enum>Horizontal</enum>
-                                        </property>
-                                        <property name="sizeType">
-                                            <enum>Expanding</enum>
-                                        </property>
-                                        <property name="sizeHint">
-                                            <size>
-                                                <width>120</width>
-                                                <height>20</height>
-                                            </size>
-                                        </property>
-                                    </spacer>
-                                    <widget class="QRadioButton">
-                                        <property name="name">
-                                            <cstring>radioButton4</cstring>
-                                        </property>
-                                        <property name="text">
-                                            <string>&amp;Twinkle</string>
-                                        </property>
-                                        <property name="accel">
-                                            <string>Alt+T</string>
-                                        </property>
-                                        <property name="checked">
-                                            <bool>false</bool>
-                                        </property>
-                                        <property name="toolTip" stdset="0">
-                                            <string>Control Twinkle from kb2kskype</string>
-                                        </property>
-                                    </widget>
-                                    <spacer>
-                                        <property name="name">
-                                            <cstring>spacer7</cstring>
-                                        </property>
-                                        <property name="orientation">
-                                            <enum>Horizontal</enum>
-                                        </property>
-                                        <property name="sizeType">
-                                            <enum>Expanding</enum>
-                                        </property>
-                                        <property name="sizeHint">
-                                            <size>
-                                                <width>40</width>
-                                                <height>20</height>
-                                            </size>
-                                        </property>
-                                    </spacer>
-                                </hbox>
-                            </widget>
-                        </grid>
-                    </widget>
-                    <widget class="QButtonGroup">
-                        <property name="name">
-                            <cstring>buttonGroup1</cstring>
-                        </property>
-                        <property name="title">
-                            <string>B2K Mode</string>
-                        </property>
-                        <property name="checkable">
-                            <bool>false</bool>
-                        </property>
-                        <property name="exclusive">
-                            <bool>true</bool>
-                        </property>
-                        <grid>
-                            <property name="name">
-                                <cstring>unnamed</cstring>
-                            </property>
-                            <widget class="QLayoutWidget" row="0" column="0">
-                                <property name="name">
-                                    <cstring>layout3</cstring>
-                                </property>
-                                <hbox>
-                                    <property name="name">
-                                        <cstring>unnamed</cstring>
-                                    </property>
-                                    <spacer>
-                                        <property name="name">
-                                            <cstring>spacer4</cstring>
-                                        </property>
-                                        <property name="orientation">
-                                            <enum>Horizontal</enum>
-                                        </property>
-                                        <property name="sizeType">
-                                            <enum>Expanding</enum>
-                                        </property>
-                                        <property name="sizeHint">
-                                            <size>
-                                                <width>60</width>
-                                                <height>20</height>
-                                            </size>
-                                        </property>
-                                    </spacer>
-                                    <widget class="QRadioButton">
-                                        <property name="name">
-                                            <cstring>radioButton1</cstring>
-                                        </property>
-                                        <property name="text">
-                                            <string>PST&amp;N</string>
-                                        </property>
-                                        <property name="accel">
-                                            <string>Alt+N</string>
-                                        </property>
-                                        <property name="checked">
-                                            <bool>true</bool>
-                                        </property>
-                                        <property name="toolTip" stdset="0">
-                                            <string>Switch the box to PSTN mode</string>
-                                        </property>
-                                    </widget>
-                                    <spacer>
-                                        <property name="name">
-                                            <cstring>spacer3</cstring>
-                                        </property>
-                                        <property name="orientation">
-                                            <enum>Horizontal</enum>
-                                        </property>
-                                        <property name="sizeType">
-                                            <enum>Expanding</enum>
-                                        </property>
-                                        <property name="sizeHint">
-                                            <size>
-                                                <width>120</width>
-                                                <height>20</height>
-                                            </size>
-                                        </property>
-                                    </spacer>
-                                    <widget class="QRadioButton">
-                                        <property name="name">
-                                            <cstring>radioButton2</cstring>
-                                        </property>
-                                        <property name="text">
-                                            <string>&amp;USB</string>
-                                        </property>
-                                        <property name="accel">
-                                            <string>Alt+U</string>
-                                        </property>
-                                        <property name="checked">
-                                            <bool>false</bool>
-                                        </property>
-                                        <property name="toolTip" stdset="0">
-                                            <string>Switch the box to USB mode.</string>
-                                        </property>
-                                    </widget>
-                                    <spacer>
-                                        <property name="name">
-                                            <cstring>spacer2</cstring>
-                                        </property>
-                                        <property name="orientation">
-                                            <enum>Horizontal</enum>
-                                        </property>
-                                        <property name="sizeType">
-                                            <enum>Expanding</enum>
-                                        </property>
-                                        <property name="sizeHint">
-                                            <size>
-                                                <width>40</width>
-                                                <height>20</height>
-                                            </size>
-                                        </property>
-                                    </spacer>
-                                </hbox>
-                            </widget>
-                        </grid>
-                    </widget>
-                    <widget class="QButtonGroup">
-                        <property name="name">
-                            <cstring>buttonGroup2</cstring>
-                        </property>
-                        <property name="title">
-                            <string>Ring Tone</string>
-                        </property>
-                        <grid>
-                            <property name="name">
-                                <cstring>unnamed</cstring>
-                            </property>
-                            <widget class="QLineEdit" row="0" column="0">
-                                <property name="name">
-                                    <cstring>lineEditRingTone</cstring>
-                                </property>
-                                <property name="text">
-                                    <string>DdDt</string>
-                                </property>
-                                <property name="toolTip" stdset="0">
-                                    <string>Define a ring tone, see the help documentation.</string>
-                                </property>
-                            </widget>
-                            <widget class="QPushButton" row="0" column="1">
-                                <property name="name">
-                                    <cstring>pushButtonApplyRingTone</cstring>
-                                </property>
-                                <property name="text">
-                                    <string>&amp;Apply</string>
-                                </property>
-                                <property name="accel">
-                                    <string>Alt+A</string>
-                                </property>
-                                <property name="toolTip" stdset="0">
-                                    <string>Apply your new ring tone.</string>
-                                </property>
-                            </widget>
-                            <widget class="QPushButton" row="0" column="2">
-                                <property name="name">
-                                    <cstring>pushButtonTestRingTone</cstring>
-                                </property>
-                                <property name="text">
-                                    <string>Test</string>
-                                </property>
-                                <property name="toggleButton">
-                                    <bool>true</bool>
-                                </property>
-                                <property name="toolTip" stdset="0">
-                                    <string>Test your ring tone.</string>
-                                </property>
-                            </widget>
-                        </grid>
-                    </widget>
-                    <widget class="QLayoutWidget">
-                        <property name="name">
-                            <cstring>layout4</cstring>
-                        </property>
-                        <hbox>
-                            <property name="name">
-                                <cstring>unnamed</cstring>
-                            </property>
-                            <widget class="QLayoutWidget">
-                                <property name="name">
-                                    <cstring>layout2</cstring>
-                                </property>
-                                <vbox>
-                                    <property name="name">
-                                        <cstring>unnamed</cstring>
-                                    </property>
-                                    <widget class="QLabel">
-                                        <property name="name">
-                                            <cstring>textLabel1_2</cstring>
-                                        </property>
-                                        <property name="text">
-                                            <string>Volume Level:</string>
-                                        </property>
-                                    </widget>
-                                    <widget class="QLabel">
-                                        <property name="name">
-                                            <cstring>textLabel2</cstring>
-                                        </property>
-                                        <property name="text">
-                                            <string>Record Level:</string>
-                                        </property>
-                                    </widget>
-                                </vbox>
-                            </widget>
-                            <widget class="QLayoutWidget">
-                                <property name="name">
-                                    <cstring>layout3_2</cstring>
-                                </property>
-                                <vbox>
-                                    <property name="name">
-                                        <cstring>unnamed</cstring>
-                                    </property>
-                                    <widget class="QSlider">
-                                        <property name="name">
-                                            <cstring>volume</cstring>
-                                        </property>
-                                        <property name="palette">
-                                            <palette>
-                                                <active>
-                                                    <color>
-                                                        <red>0</red>
-                                                        <green>0</green>
-                                                        <blue>0</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>85</red>
-                                                        <green>255</green>
-                                                        <blue>127</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>212</red>
-                                                        <green>255</green>
-                                                        <blue>223</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>148</red>
-                                                        <green>255</green>
-                                                        <blue>175</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>42</red>
-                                                        <green>127</green>
-                                                        <blue>64</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>57</red>
-                                                        <green>170</green>
-                                                        <blue>85</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>0</red>
-                                                        <green>0</green>
-                                                        <blue>0</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>255</red>
-                                                        <green>255</green>
-                                                        <blue>255</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>0</red>
-                                                        <green>0</green>
-                                                        <blue>0</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>255</red>
-                                                        <green>255</green>
-                                                        <blue>255</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>234</red>
-                                                        <green>233</green>
-                                                        <blue>232</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>0</red>
-                                                        <green>0</green>
-                                                        <blue>0</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>0</red>
-                                                        <green>0</green>
-                                                        <blue>128</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>255</red>
-                                                        <green>255</green>
-                                                        <blue>255</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>0</red>
-                                                        <green>0</green>
-                                                        <blue>0</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>0</red>
-                                                        <green>0</green>
-                                                        <blue>0</blue>
-                                                    </color>
-                                                </active>
-                                                <disabled>
-                                                    <color>
-                                                        <red>128</red>
-                                                        <green>128</green>
-                                                        <blue>128</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>85</red>
-                                                        <green>255</green>
-                                                        <blue>127</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>212</red>
-                                                        <green>255</green>
-                                                        <blue>223</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>123</red>
-                                                        <green>255</green>
-                                                        <blue>156</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>42</red>
-                                                        <green>127</green>
-                                                        <blue>64</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>57</red>
-                                                        <green>170</green>
-                                                        <blue>85</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>128</red>
-                                                        <green>128</green>
-                                                        <blue>128</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>255</red>
-                                                        <green>255</green>
-                                                        <blue>255</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>128</red>
-                                                        <green>128</green>
-                                                        <blue>128</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>255</red>
-                                                        <green>255</green>
-                                                        <blue>255</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>234</red>
-                                                        <green>233</green>
-                                                        <blue>232</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>0</red>
-                                                        <green>0</green>
-                                                        <blue>0</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>0</red>
-                                                        <green>0</green>
-                                                        <blue>128</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>255</red>
-                                                        <green>255</green>
-                                                        <blue>255</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>0</red>
-                                                        <green>0</green>
-                                                        <blue>192</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>128</red>
-                                                        <green>0</green>
-                                                        <blue>128</blue>
-                                                    </color>
-                                                </disabled>
-                                                <inactive>
-                                                    <color>
-                                                        <red>0</red>
-                                                        <green>0</green>
-                                                        <blue>0</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>85</red>
-                                                        <green>255</green>
-                                                        <blue>127</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>212</red>
-                                                        <green>255</green>
-                                                        <blue>223</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>123</red>
-                                                        <green>255</green>
-                                                        <blue>156</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>42</red>
-                                                        <green>127</green>
-                                                        <blue>64</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>57</red>
-                                                        <green>170</green>
-                                                        <blue>85</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>0</red>
-                                                        <green>0</green>
-                                                        <blue>0</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>255</red>
-                                                        <green>255</green>
-                                                        <blue>255</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>0</red>
-                                                        <green>0</green>
-                                                        <blue>0</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>255</red>
-                                                        <green>255</green>
-                                                        <blue>255</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>234</red>
-                                                        <green>233</green>
-                                                        <blue>232</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>0</red>
-                                                        <green>0</green>
-                                                        <blue>0</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>0</red>
-                                                        <green>0</green>
-                                                        <blue>128</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>255</red>
-                                                        <green>255</green>
-                                                        <blue>255</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>0</red>
-                                                        <green>0</green>
-                                                        <blue>192</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>128</red>
-                                                        <green>0</green>
-                                                        <blue>128</blue>
-                                                    </color>
-                                                </inactive>
-                                            </palette>
-                                        </property>
-                                        <property name="maxValue">
-                                            <number>100</number>
-                                        </property>
-                                        <property name="value">
-                                            <number>80</number>
-                                        </property>
-                                        <property name="orientation">
-                                            <enum>Horizontal</enum>
-                                        </property>
-                                    </widget>
-                                    <widget class="QSlider">
-                                        <property name="name">
-                                            <cstring>record</cstring>
-                                        </property>
-                                        <property name="palette">
-                                            <palette>
-                                                <active>
-                                                    <color>
-                                                        <red>0</red>
-                                                        <green>0</green>
-                                                        <blue>0</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>255</red>
-                                                        <green>158</green>
-                                                        <blue>163</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>255</red>
-                                                        <green>255</green>
-                                                        <blue>255</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>255</red>
-                                                        <green>206</green>
-                                                        <blue>209</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>127</red>
-                                                        <green>79</green>
-                                                        <blue>81</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>170</red>
-                                                        <green>105</green>
-                                                        <blue>109</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>0</red>
-                                                        <green>0</green>
-                                                        <blue>0</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>255</red>
-                                                        <green>255</green>
-                                                        <blue>255</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>0</red>
-                                                        <green>0</green>
-                                                        <blue>0</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>255</red>
-                                                        <green>255</green>
-                                                        <blue>255</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>234</red>
-                                                        <green>233</green>
-                                                        <blue>232</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>0</red>
-                                                        <green>0</green>
-                                                        <blue>0</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>0</red>
-                                                        <green>0</green>
-                                                        <blue>128</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>255</red>
-                                                        <green>255</green>
-                                                        <blue>255</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>0</red>
-                                                        <green>0</green>
-                                                        <blue>0</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>0</red>
-                                                        <green>0</green>
-                                                        <blue>0</blue>
-                                                    </color>
-                                                </active>
-                                                <disabled>
-                                                    <color>
-                                                        <red>128</red>
-                                                        <green>128</green>
-                                                        <blue>128</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>255</red>
-                                                        <green>158</green>
-                                                        <blue>163</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>255</red>
-                                                        <green>255</green>
-                                                        <blue>255</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>255</red>
-                                                        <green>196</green>
-                                                        <blue>199</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>127</red>
-                                                        <green>79</green>
-                                                        <blue>81</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>170</red>
-                                                        <green>105</green>
-                                                        <blue>109</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>128</red>
-                                                        <green>128</green>
-                                                        <blue>128</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>255</red>
-                                                        <green>255</green>
-                                                        <blue>255</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>128</red>
-                                                        <green>128</green>
-                                                        <blue>128</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>255</red>
-                                                        <green>255</green>
-                                                        <blue>255</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>234</red>
-                                                        <green>233</green>
-                                                        <blue>232</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>0</red>
-                                                        <green>0</green>
-                                                        <blue>0</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>0</red>
-                                                        <green>0</green>
-                                                        <blue>128</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>255</red>
-                                                        <green>255</green>
-                                                        <blue>255</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>0</red>
-                                                        <green>0</green>
-                                                        <blue>192</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>128</red>
-                                                        <green>0</green>
-                                                        <blue>128</blue>
-                                                    </color>
-                                                </disabled>
-                                                <inactive>
-                                                    <color>
-                                                        <red>0</red>
-                                                        <green>0</green>
-                                                        <blue>0</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>255</red>
-                                                        <green>158</green>
-                                                        <blue>163</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>255</red>
-                                                        <green>255</green>
-                                                        <blue>255</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>255</red>
-                                                        <green>196</green>
-                                                        <blue>199</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>127</red>
-                                                        <green>79</green>
-                                                        <blue>81</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>170</red>
-                                                        <green>105</green>
-                                                        <blue>109</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>0</red>
-                                                        <green>0</green>
-                                                        <blue>0</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>255</red>
-                                                        <green>255</green>
-                                                        <blue>255</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>0</red>
-                                                        <green>0</green>
-                                                        <blue>0</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>255</red>
-                                                        <green>255</green>
-                                                        <blue>255</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>234</red>
-                                                        <green>233</green>
-                                                        <blue>232</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>0</red>
-                                                        <green>0</green>
-                                                        <blue>0</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>0</red>
-                                                        <green>0</green>
-                                                        <blue>128</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>255</red>
-                                                        <green>255</green>
-                                                        <blue>255</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>0</red>
-                                                        <green>0</green>
-                                                        <blue>192</blue>
-                                                    </color>
-                                                    <color>
-                                                        <red>128</red>
-                                                        <green>0</green>
-                                                        <blue>128</blue>
-                                                    </color>
-                                                </inactive>
-                                            </palette>
-                                        </property>
-                                        <property name="maxValue">
-                                            <number>100</number>
-                                        </property>
-                                        <property name="value">
-                                            <number>80</number>
-                                        </property>
-                                        <property name="orientation">
-                                            <enum>Horizontal</enum>
-                                        </property>
-                                    </widget>
-                                </vbox>
-                            </widget>
-                        </hbox>
-                    </widget>
-                    <widget class="QTextEdit">
-                        <property name="name">
-                            <cstring>logWindow</cstring>
-                        </property>
-                        <property name="readOnly">
-                            <bool>true</bool>
-                        </property>
-                        <property name="toolTip" stdset="0">
-                            <string>Displays feedback to the user when needed.</string>
-                        </property>
-                    </widget>
-                </vbox>
+           </widget>
+          </item>
+         </layout>
+        </widget>
+       </item>
+       <item>
+        <layout class="QHBoxLayout">
+         <item>
+          <layout class="QVBoxLayout">
+           <item>
+            <widget class="QLabel" name="textLabel1_2">
+             <property name="text">
+              <string>Volume Level:</string>
+             </property>
+             <property name="wordWrap">
+              <bool>false</bool>
+             </property>
+            </widget>
+           </item>
+           <item>
+            <widget class="QLabel" name="textLabel2">
+             <property name="text">
+              <string>Record Level:</string>
+             </property>
+             <property name="wordWrap">
+              <bool>false</bool>
+             </property>
+            </widget>
+           </item>
+          </layout>
+         </item>
+         <item>
+          <layout class="QVBoxLayout">
+           <item>
+            <widget class="QSlider" name="volume">
+             <property name="palette">
+              <palette>
+               <active>
+                <colorrole role="WindowText">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>0</red>
+                   <green>0</green>
+                   <blue>0</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="Button">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>85</red>
+                   <green>255</green>
+                   <blue>127</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="Light">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>213</red>
+                   <green>255</green>
+                   <blue>223</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="Midlight">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>149</red>
+                   <green>255</green>
+                   <blue>175</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="Dark">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>42</red>
+                   <green>127</green>
+                   <blue>63</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="Mid">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>56</red>
+                   <green>170</green>
+                   <blue>84</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="Text">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>0</red>
+                   <green>0</green>
+                   <blue>0</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="BrightText">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>255</red>
+                   <green>255</green>
+                   <blue>255</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="ButtonText">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>0</red>
+                   <green>0</green>
+                   <blue>0</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="Base">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>255</red>
+                   <green>255</green>
+                   <blue>255</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="Window">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>85</red>
+                   <green>255</green>
+                   <blue>127</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="Shadow">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>0</red>
+                   <green>0</green>
+                   <blue>0</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="AlternateBase">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>170</red>
+                   <green>255</green>
+                   <blue>191</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="ToolTipBase">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>255</red>
+                   <green>255</green>
+                   <blue>220</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="ToolTipText">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>0</red>
+                   <green>0</green>
+                   <blue>0</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+               </active>
+               <inactive>
+                <colorrole role="WindowText">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>0</red>
+                   <green>0</green>
+                   <blue>0</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="Button">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>85</red>
+                   <green>255</green>
+                   <blue>127</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="Light">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>213</red>
+                   <green>255</green>
+                   <blue>223</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="Midlight">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>149</red>
+                   <green>255</green>
+                   <blue>175</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="Dark">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>42</red>
+                   <green>127</green>
+                   <blue>63</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="Mid">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>56</red>
+                   <green>170</green>
+                   <blue>84</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="Text">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>0</red>
+                   <green>0</green>
+                   <blue>0</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="BrightText">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>255</red>
+                   <green>255</green>
+                   <blue>255</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="ButtonText">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>0</red>
+                   <green>0</green>
+                   <blue>0</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="Base">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>255</red>
+                   <green>255</green>
+                   <blue>255</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="Window">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>85</red>
+                   <green>255</green>
+                   <blue>127</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="Shadow">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>0</red>
+                   <green>0</green>
+                   <blue>0</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="AlternateBase">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>170</red>
+                   <green>255</green>
+                   <blue>191</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="ToolTipBase">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>255</red>
+                   <green>255</green>
+                   <blue>220</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="ToolTipText">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>0</red>
+                   <green>0</green>
+                   <blue>0</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+               </inactive>
+               <disabled>
+                <colorrole role="WindowText">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>42</red>
+                   <green>127</green>
+                   <blue>63</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="Button">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>85</red>
+                   <green>255</green>
+                   <blue>127</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="Light">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>213</red>
+                   <green>255</green>
+                   <blue>223</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="Midlight">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>149</red>
+                   <green>255</green>
+                   <blue>175</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="Dark">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>42</red>
+                   <green>127</green>
+                   <blue>63</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="Mid">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>56</red>
+                   <green>170</green>
+                   <blue>84</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="Text">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>42</red>
+                   <green>127</green>
+                   <blue>63</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="BrightText">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>255</red>
+                   <green>255</green>
+                   <blue>255</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="ButtonText">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>42</red>
+                   <green>127</green>
+                   <blue>63</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="Base">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>85</red>
+                   <green>255</green>
+                   <blue>127</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="Window">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>85</red>
+                   <green>255</green>
+                   <blue>127</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="Shadow">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>0</red>
+                   <green>0</green>
+                   <blue>0</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="AlternateBase">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>85</red>
+                   <green>255</green>
+                   <blue>127</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="ToolTipBase">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>255</red>
+                   <green>255</green>
+                   <blue>220</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="ToolTipText">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>0</red>
+                   <green>0</green>
+                   <blue>0</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+               </disabled>
+              </palette>
+             </property>
+             <property name="maximum">
+              <number>100</number>
+             </property>
+             <property name="value">
+              <number>80</number>
+             </property>
+             <property name="orientation">
+              <enum>Qt::Horizontal</enum>
+             </property>
             </widget>
-            <widget class="QWidget">
-                <property name="name">
-                    <cstring>tab</cstring>
-                </property>
-                <attribute name="title">
-                    <string>C&amp;ontacts</string>
-                </attribute>
-                <grid>
-                    <property name="name">
-                        <cstring>unnamed</cstring>
-                    </property>
-                    <widget class="QTable" row="0" column="0" rowspan="1" colspan="3">
-                        <column>
-                            <property name="text">
-                                <string>Contact Name</string>
-                            </property>
-                        </column>
-                        <column>
-                            <property name="text">
-                                <string>Speed Dial</string>
-                            </property>
-                        </column>
-                        <row>
-                            <property name="text">
-                                <string>0</string>
-                            </property>
-                        </row>
-                        <row>
-                            <property name="text">
-                                <string>1</string>
-                            </property>
-                        </row>
-                        <row>
-                            <property name="text">
-                                <string>2</string>
-                            </property>
-                        </row>
-                        <row>
-                            <property name="text">
-                                <string>3</string>
-                            </property>
-                        </row>
-                        <row>
-                            <property name="text">
-                                <string>4</string>
-                            </property>
-                        </row>
-                        <row>
-                            <property name="text">
-                                <string>5</string>
-                            </property>
-                        </row>
-                        <row>
-                            <property name="text">
-                                <string>6</string>
-                            </property>
-                        </row>
-                        <row>
-                            <property name="text">
-                                <string>7</string>
-                            </property>
-                        </row>
-                        <property name="name">
-                            <cstring>table1</cstring>
-                        </property>
-                        <property name="resizePolicy">
-                            <enum>AutoOneFit</enum>
-                        </property>
-                        <property name="numRows">
-                            <number>8</number>
-                        </property>
-                        <property name="numCols">
-                            <number>2</number>
-                        </property>
-                        <property name="rowMovingEnabled">
-                            <bool>false</bool>
-                        </property>
-                        <property name="columnMovingEnabled">
-                            <bool>false</bool>
-                        </property>
-                        <property name="selectionMode">
-                            <enum>Single</enum>
-                        </property>
-                        <property name="focusStyle">
-                            <enum>FollowStyle</enum>
-                        </property>
-                    </widget>
-                    <widget class="QPushButton" row="1" column="2">
-                        <property name="name">
-                            <cstring>buttonContactsRefresh</cstring>
-                        </property>
-                        <property name="text">
-                            <string>Refresh List</string>
-                        </property>
-                        <property name="toolTip" stdset="0">
-                            <string>Refresh your contact list.</string>
-                        </property>
-                    </widget>
-                    <spacer row="1" column="1">
-                        <property name="name">
-                            <cstring>spacer4_2</cstring>
-                        </property>
-                        <property name="orientation">
-                            <enum>Horizontal</enum>
-                        </property>
-                        <property name="sizeType">
-                            <enum>Expanding</enum>
-                        </property>
-                        <property name="sizeHint">
-                            <size>
-                                <width>20</width>
-                                <height>20</height>
-                            </size>
-                        </property>
-                    </spacer>
-                    <widget class="QLabel" row="1" column="0">
-                        <property name="name">
-                            <cstring>labelcurrentuser</cstring>
-                        </property>
-                        <property name="text">
-                            <string>User:</string>
-                        </property>
-                    </widget>
-                </grid>
+           </item>
+           <item>
+            <widget class="QSlider" name="record">
+             <property name="palette">
+              <palette>
+               <active>
+                <colorrole role="WindowText">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>0</red>
+                   <green>0</green>
+                   <blue>0</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="Button">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>255</red>
+                   <green>158</green>
+                   <blue>163</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="Light">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>255</red>
+                   <green>255</green>
+                   <blue>255</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="Midlight">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>255</red>
+                   <green>206</green>
+                   <blue>209</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="Dark">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>127</red>
+                   <green>79</green>
+                   <blue>81</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="Mid">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>170</red>
+                   <green>105</green>
+                   <blue>109</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="Text">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>0</red>
+                   <green>0</green>
+                   <blue>0</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="BrightText">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>255</red>
+                   <green>255</green>
+                   <blue>255</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="ButtonText">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>0</red>
+                   <green>0</green>
+                   <blue>0</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="Base">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>255</red>
+                   <green>255</green>
+                   <blue>255</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="Window">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>255</red>
+                   <green>158</green>
+                   <blue>163</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="Shadow">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>0</red>
+                   <green>0</green>
+                   <blue>0</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="AlternateBase">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>255</red>
+                   <green>206</green>
+                   <blue>209</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="ToolTipBase">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>255</red>
+                   <green>255</green>
+                   <blue>220</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="ToolTipText">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>0</red>
+                   <green>0</green>
+                   <blue>0</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+               </active>
+               <inactive>
+                <colorrole role="WindowText">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>0</red>
+                   <green>0</green>
+                   <blue>0</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="Button">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>255</red>
+                   <green>158</green>
+                   <blue>163</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="Light">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>255</red>
+                   <green>255</green>
+                   <blue>255</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="Midlight">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>255</red>
+                   <green>206</green>
+                   <blue>209</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="Dark">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>127</red>
+                   <green>79</green>
+                   <blue>81</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="Mid">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>170</red>
+                   <green>105</green>
+                   <blue>109</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="Text">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>0</red>
+                   <green>0</green>
+                   <blue>0</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="BrightText">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>255</red>
+                   <green>255</green>
+                   <blue>255</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="ButtonText">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>0</red>
+                   <green>0</green>
+                   <blue>0</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="Base">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>255</red>
+                   <green>255</green>
+                   <blue>255</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="Window">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>255</red>
+                   <green>158</green>
+                   <blue>163</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="Shadow">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>0</red>
+                   <green>0</green>
+                   <blue>0</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="AlternateBase">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>255</red>
+                   <green>206</green>
+                   <blue>209</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="ToolTipBase">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>255</red>
+                   <green>255</green>
+                   <blue>220</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="ToolTipText">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>0</red>
+                   <green>0</green>
+                   <blue>0</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+               </inactive>
+               <disabled>
+                <colorrole role="WindowText">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>127</red>
+                   <green>79</green>
+                   <blue>81</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="Button">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>255</red>
+                   <green>158</green>
+                   <blue>163</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="Light">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>255</red>
+                   <green>255</green>
+                   <blue>255</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="Midlight">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>255</red>
+                   <green>206</green>
+                   <blue>209</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="Dark">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>127</red>
+                   <green>79</green>
+                   <blue>81</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="Mid">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>170</red>
+                   <green>105</green>
+                   <blue>109</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="Text">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>127</red>
+                   <green>79</green>
+                   <blue>81</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="BrightText">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>255</red>
+                   <green>255</green>
+                   <blue>255</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="ButtonText">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>127</red>
+                   <green>79</green>
+                   <blue>81</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="Base">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>255</red>
+                   <green>158</green>
+                   <blue>163</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="Window">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>255</red>
+                   <green>158</green>
+                   <blue>163</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="Shadow">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>0</red>
+                   <green>0</green>
+                   <blue>0</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="AlternateBase">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>255</red>
+                   <green>158</green>
+                   <blue>163</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="ToolTipBase">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>255</red>
+                   <green>255</green>
+                   <blue>220</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+                <colorrole role="ToolTipText">
+                 <brush brushstyle="SolidPattern">
+                  <color alpha="255">
+                   <red>0</red>
+                   <green>0</green>
+                   <blue>0</blue>
+                  </color>
+                 </brush>
+                </colorrole>
+               </disabled>
+              </palette>
+             </property>
+             <property name="maximum">
+              <number>100</number>
+             </property>
+             <property name="value">
+              <number>80</number>
+             </property>
+             <property name="orientation">
+              <enum>Qt::Horizontal</enum>
+             </property>
             </widget>
+           </item>
+          </layout>
+         </item>
+        </layout>
+       </item>
+       <item>
+        <widget class="QTextEdit" name="logWindow">
+         <property name="toolTip">
+          <string>Displays feedback to the user when needed.</string>
+         </property>
+         <property name="readOnly">
+          <bool>true</bool>
+         </property>
+        </widget>
+       </item>
+      </layout>
+     </widget>
+     <widget class="QWidget" name="tab">
+      <attribute name="title">
+       <string>C&amp;ontacts</string>
+      </attribute>
+      <layout class="QGridLayout">
+       <item row="0" column="0" colspan="3">
+        <widget class="QTableWidget" name="table1">
+         <property name="enabled">
+          <bool>true</bool>
+         </property>
+         <property name="selectionMode">
+          <enum>QAbstractItemView::SingleSelection</enum>
+         </property>
+         <property name="rowCount">
+          <number>0</number>
+         </property>
+         <property name="columnCount">
+          <number>0</number>
+         </property>
+         <property name="numRows" stdset="0">
+          <number>8</number>
+         </property>
+         <property name="numCols" stdset="0">
+          <number>2</number>
+         </property>
+         <property name="rowMovingEnabled" stdset="0">
+          <bool>false</bool>
+         </property>
+         <property name="columnMovingEnabled" stdset="0">
+          <bool>false</bool>
+         </property>
+        </widget>
+       </item>
+       <item row="1" column="2">
+        <widget class="QPushButton" name="buttonContactsRefresh">
+         <property name="toolTip">
+          <string>Refresh your contact list.</string>
+         </property>
+         <property name="text">
+          <string>Refresh List</string>
+         </property>
+        </widget>
+       </item>
+       <item row="1" column="1">
+        <spacer name="spacer4_2">
+         <property name="orientation">
+          <enum>Qt::Horizontal</enum>
+         </property>
+         <property name="sizeType">
+          <enum>QSizePolicy::Expanding</enum>
+         </property>
+         <property name="sizeHint" stdset="0">
+          <size>
+           <width>20</width>
+           <height>20</height>
+          </size>
+         </property>
+        </spacer>
+       </item>
+       <item row="1" column="0">
+        <widget class="QLabel" name="labelcurrentuser">
+         <property name="text">
+          <string>User:</string>
+         </property>
+         <property name="wordWrap">
+          <bool>false</bool>
+         </property>
         </widget>
-    </grid>
-</widget>
-<tabstops>
-    <tabstop>buttonHelp</tabstop>
-    <tabstop>tabWidget2</tabstop>
-    <tabstop>radioButton3</tabstop>
-    <tabstop>radioButton4</tabstop>
-    <tabstop>radioButton1</tabstop>
-    <tabstop>radioButton2</tabstop>
-    <tabstop>lineEditRingTone</tabstop>
-    <tabstop>pushButtonApplyRingTone</tabstop>
-    <tabstop>pushButtonTestRingTone</tabstop>
-    <tabstop>volume</tabstop>
-    <tabstop>record</tabstop>
-    <tabstop>logWindow</tabstop>
-    <tabstop>table1</tabstop>
-    <tabstop>buttonContactsRefresh</tabstop>
-</tabstops>
-<layoutdefaults spacing="6" margin="11"/>
-</UI>
+       </item>
+      </layout>
+     </widget>
+    </widget>
+   </item>
+  </layout>
+ </widget>
+ <layoutdefault spacing="6" margin="11"/>
+ <tabstops>
+  <tabstop>buttonHelp</tabstop>
+  <tabstop>tabWidget2</tabstop>
+  <tabstop>radioButton3</tabstop>
+  <tabstop>radioButton4</tabstop>
+  <tabstop>radioButton1</tabstop>
+  <tabstop>radioButton2</tabstop>
+  <tabstop>lineEditRingTone</tabstop>
+  <tabstop>pushButtonApplyRingTone</tabstop>
+  <tabstop>pushButtonTestRingTone</tabstop>
+  <tabstop>volume</tabstop>
+  <tabstop>record</tabstop>
+  <tabstop>logWindow</tabstop>
+  <tabstop>table1</tabstop>
+  <tabstop>buttonContactsRefresh</tabstop>
+ </tabstops>
+ <resources/>
+ <connections/>
+</ui>
diff -Nur kb2kskype-0.3.8/src/xmessages.cpp kb2kskype-0.3.8-qt4/src/xmessages.cpp
--- kb2kskype-0.3.8/src/xmessages.cpp	2008-02-10 18:21:45.000000000 +0100
+++ kb2kskype-0.3.8-qt4/src/xmessages.cpp	2009-12-29 17:32:08.000000000 +0100
@@ -32,7 +32,7 @@
 const long BROADCAST_MASK = PropertyChangeMask;
 // CHECKME
 
-static QPtrList<XMessages> xm_instances;
+static QList<XMessages*> xm_instances;
 
 XMessages::XMessages( const char* accept_broadcast_P, QWidget* parent_P )
 	: QWidget( parent_P )
@@ -40,8 +40,8 @@
 	if( accept_broadcast_P != NULL )
 	{
 		( void ) qApp->desktop(); //trigger desktop widget creation to select root window events
-		accept_atom2 = XInternAtom( qt_xdisplay(), accept_broadcast_P, false );
-		accept_atom1 = XInternAtom( qt_xdisplay(), QCString( accept_broadcast_P ) + "_BEGIN", false );
+		accept_atom2 = XInternAtom( QX11Info::display(), accept_broadcast_P, false );
+		accept_atom1 = XInternAtom( QX11Info::display(), QByteArray( accept_broadcast_P ) + "_BEGIN", false );
 	}
 	else
 	{
@@ -53,23 +53,23 @@
 
 XMessages::~XMessages()
 {
-    xm_instances.remove(this);
+    xm_instances.removeOne(this);
 }
 
 
 bool XMessages::broadcastMessage( const char* msg_type_P, const QString& message_P, int screen_P )
 {
-	Atom a2 = XInternAtom( qt_xdisplay(), msg_type_P, false );
-	Atom a1 = XInternAtom( qt_xdisplay(), QCString( msg_type_P ) + "_BEGIN", false );
-	Window root = screen_P == -1 ? qt_xrootwin() : qt_xrootwin( screen_P );
-	return send_message_internal( root, message_P, BROADCAST_MASK, qt_xdisplay(), a1, a2, handle->winId());
+	Atom a2 = XInternAtom( QX11Info::display(), msg_type_P, false );
+	Atom a1 = XInternAtom( QX11Info::display(), QByteArray( msg_type_P ) + "_BEGIN", false );
+	Window root = screen_P == -1 ? QX11Info::appRootWindow() : QX11Info::appRootWindow( screen_P );
+	return send_message_internal( root, message_P, BROADCAST_MASK, QX11Info::display(), a1, a2, handle->winId());
 }
 
 bool XMessages::sendMessage( WId w_P, const char* msg_type_P, const QString& message_P )
 {
-	Atom a2 = XInternAtom( qt_xdisplay(), msg_type_P, false );
-	Atom a1 = XInternAtom( qt_xdisplay(), QCString( msg_type_P ) + "_BEGIN", false );
-	return send_message_internal( w_P, message_P, 0, qt_xdisplay(), a1, a2, handle->winId());
+	Atom a2 = XInternAtom( QX11Info::display(), msg_type_P, false );
+	Atom a1 = XInternAtom( QX11Info::display(), QByteArray( msg_type_P ) + "_BEGIN", false );
+	return send_message_internal( w_P, message_P, 0, QX11Info::display(), a1, a2, handle->winId());
 }
 
 // for intercepting X Server error codes from XSendEvent
@@ -98,7 +98,7 @@
 bool XMessages::send_message_internal( WId w_P, const QString& msg_P, long mask_P, Display* disp, Atom atom1_P, Atom atom2_P, Window handle_P )
 {
 	unsigned int pos = 0;
-	QCString msg = msg_P.utf8();
+	QByteArray msg = msg_P.toUtf8();
 	unsigned int len = strlen( msg );
 	XEvent e;
 
@@ -129,12 +129,13 @@
 /*static*/
 void XMessages::processXMessages(XEvent *ev)
 {
-	QPtrListIterator<XMessages> it(xm_instances);
-	while(it.current())
+	QMutableListIterator<XMessages*> it(xm_instances);
+	it.toFront();
+	while(it.hasNext())
 	{
-		if(it.current()->x11Event(ev))
+		it.next();
+		if(it.value()->x11Event(ev))
 			break;
-		++it;
 	}
 }
 
@@ -157,7 +158,7 @@
 	{
 		if( ev_P->xclient.message_type == accept_atom1 && accept_atom1 != accept_atom2 )
 			// two different messages on the same window at the same time shouldn't happen anyway
-			incoming_messages[ ev_P->xclient.window ] = QCString();
+			incoming_messages[ ev_P->xclient.window ] = QByteArray();
 
 		incoming_messages[ ev_P->xclient.window ] += buf;
 	}
diff -Nur kb2kskype-0.3.8/src/xmessages.h kb2kskype-0.3.8-qt4/src/xmessages.h
--- kb2kskype-0.3.8/src/xmessages.h	2008-02-10 18:21:45.000000000 +0100
+++ kb2kskype-0.3.8-qt4/src/xmessages.h	2009-12-30 15:12:54.000000000 +0100
@@ -29,6 +29,10 @@
 
 #include <qwidget.h>
 #include <qmap.h>
+//Added by qt3to4:
+#include <QByteArray>
+#include <qapplication.h>
+#include <QX11Info>
 #include <X11/X.h>
 
 class QString;
@@ -101,7 +105,7 @@
         QWidget* handle;
         Atom accept_atom2;
         Atom accept_atom1;
-        QMap< WId, QCString > incoming_messages;
+        QMap< WId, QByteArray > incoming_messages;
     };
 
 #endif
