From 35ffe2db092855a219ef3d827c62a15888ce1595 Mon Sep 17 00:00:00 2001
From: jpbl <jpbl>
Date: Sun, 25 Dec 2005 16:37:58 +0000
Subject: [PATCH] SFLPhoned is back

---
 Makefile.am                      |  4 ++--
 configure.ac                     |  3 +--
 libs/taxidermy/Hunter.cpp        | 14 +++++++++++---
 libs/taxidermy/qtutils.cpp       | 10 +++++++++-
 libs/taxidermy/qtutils.hpp       |  2 ++
 src/global.h                     |  4 ++--
 src/gui/qt/ConfigurationPanel.ui |  2 +-
 src/gui/qt/SFLPhoneApp.cpp       |  2 +-
 src/gui/qt/SkinManagerImpl.cpp   |  9 +++++++--
 src/gui/qt/globals.h             |  2 ++
 10 files changed, 38 insertions(+), 14 deletions(-)

diff --git a/Makefile.am b/Makefile.am
index 1da8c5684e..bf26725eb0 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -1,5 +1,5 @@
-SUBDIRS = include libs src ringtones skins
-EXTRA_DIST = tools/*.sh tools/install-sip* debian/* README.cvs CHANGES 
+SUBDIRS = include libs src ringtones skins m4
+EXTRA_DIST = tools/*.sh debian/* README.cvs CHANGES images/*
 
 ACLOCAL_FLAGS=-I$(top_srcdir)/m4
 
diff --git a/configure.ac b/configure.ac
index e9e8fd76b3..9b2459d012 100644
--- a/configure.ac
+++ b/configure.ac
@@ -37,7 +37,7 @@ AC_SUBST(LIBQT)
 
 AC_CANONICAL_SYSTEM
 AC_ARG_PROGRAM
-AM_INIT_AUTOMAKE(sflphoned, $VERSION)
+AM_INIT_AUTOMAKE(sflphone, $VERSION)
 AC_PROG_LIBTOOL
 
 dnl check for portaudio
@@ -165,7 +165,6 @@ AC_SUBST(sflphone_datadir)
 
 AC_SUBST(LIB_DNSSD)
 AM_CONDITIONAL(USE_ZEROCONF, test "$have_libdns_sd" = "yes")	
-LIBS="$LIBS -lstdc++"
 
 AC_SUBST(LIB_QT)
 
diff --git a/libs/taxidermy/Hunter.cpp b/libs/taxidermy/Hunter.cpp
index a4b2947ae9..9b171b96e6 100644
--- a/libs/taxidermy/Hunter.cpp
+++ b/libs/taxidermy/Hunter.cpp
@@ -25,6 +25,7 @@
 #include "WidgetBuilder.hpp"
 #include "WidgetBuilderFactory.hpp"
 #include "config.h"
+#include "qtutils.hpp"
 
 
 #define DEFAULT_DIRECTORY "skins/"
@@ -37,15 +38,21 @@
 
 taxidermy::Hunter::Hunter()
   : mSkinsDirectory(DEFAULT_DIRECTORY)
-{}
+{
+  qtutils::addFilePath(mSkinsDirectory.absPath());
+}
 
 taxidermy::Hunter::Hunter(const QString &directory)
   : mSkinsDirectory(directory)
-{}
+{
+  qtutils::addFilePath(mSkinsDirectory.absPath());
+}
 
 taxidermy::Hunter::Hunter(const QDir &directory)
   : mSkinsDirectory(directory)
-{}
+{
+  qtutils::addFilePath(mSkinsDirectory.absPath());
+}
 
 QStringList
 taxidermy::Hunter::getSkinNames() 
@@ -72,6 +79,7 @@ taxidermy::Taxidermist
 taxidermy::Hunter::getTaxidermist(const QString &skinName)
 {
   taxidermy::Taxidermist skin(skinName);
+  qtutils::addFilePath(mSkinsDirectory.absFilePath(skinName));
   load(&skin);
   
   return skin;
diff --git a/libs/taxidermy/qtutils.cpp b/libs/taxidermy/qtutils.cpp
index 266bbfcc41..331fb591e0 100644
--- a/libs/taxidermy/qtutils.cpp
+++ b/libs/taxidermy/qtutils.cpp
@@ -22,6 +22,15 @@
 
 #include <qbitmap.h>
 #include <qimage.h>
+#include <qmime.h>
+
+
+void
+taxidermy::qtutils::addFilePath(const QString &path)
+{
+  QMimeSourceFactory *factory = QMimeSourceFactory::defaultFactory();
+  factory->addFilePath(path);
+}
 
 QPixmap 
 taxidermy::qtutils::transparize(const QString &image)
@@ -37,7 +46,6 @@ taxidermy::qtutils::transparize(const QString &image)
     }
   }
 #else
-  //  QPixmap p(QPixmap::fromMimeSource(image));
   QImage img(QImage::fromMimeSource(image));
   QPixmap p;
   p.convertFromImage(img);
diff --git a/libs/taxidermy/qtutils.hpp b/libs/taxidermy/qtutils.hpp
index 8c64bafcad..6361b4a2de 100644
--- a/libs/taxidermy/qtutils.hpp
+++ b/libs/taxidermy/qtutils.hpp
@@ -25,5 +25,7 @@ namespace taxidermy
   namespace qtutils
   {
     QPixmap transparize(const QString &image);
+    void addFilePath(const QString &path);
+
   };
 };
diff --git a/src/global.h b/src/global.h
index e7ab539b89..f92064ce3e 100644
--- a/src/global.h
+++ b/src/global.h
@@ -39,8 +39,8 @@ typedef short int16;
 	#define _debugInit(...)
 #endif
 
-#define SFLPHONED_VERSION "0.6.1"
-#define SFLPHONED_VERSIONNUM 0x000605
+#define SFLPHONED_VERSION "0.6.3"
+#define SFLPHONED_VERSIONNUM 0x000603
 
 #define PROGNAME         "sflphoned"
 #define PROGNAME_GLOBAL  "sflphone"
diff --git a/src/gui/qt/ConfigurationPanel.ui b/src/gui/qt/ConfigurationPanel.ui
index ae570654b6..063c3af103 100644
--- a/src/gui/qt/ConfigurationPanel.ui
+++ b/src/gui/qt/ConfigurationPanel.ui
@@ -1108,7 +1108,7 @@ Laurielle LEA &lt;br/&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;laurielle.lea@sa
 Yan Morin &lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;yan.morin@savoirfairelinux.com&amp;gt;&lt;br /&gt;
 Jérome Oufella &lt;br/&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;jerome.oufella@savoirfairelinux.com&amp;gt;&lt;br /&gt;
 
-&lt;br /&gt;SFLphone-qt 0.6.2 is released under the General Public License. For more information, see http://www.sflphone.org&lt;/p&gt;</string>
+&lt;br /&gt;SFLPhone 0.6.3 is released under the General Public License. For more information, see http://www.sflphone.org&lt;/p&gt;</string>
                                     </property>
                                 </widget>
                                 <widget class="QLabel" row="0" column="1">
diff --git a/src/gui/qt/SFLPhoneApp.cpp b/src/gui/qt/SFLPhoneApp.cpp
index 4cb9023da6..f5ad6e3176 100644
--- a/src/gui/qt/SFLPhoneApp.cpp
+++ b/src/gui/qt/SFLPhoneApp.cpp
@@ -238,7 +238,7 @@ void
 SFLPhoneApp::loadSkin() 
 {
   SkinManager::instance().setApplication(this);
-  SkinManager::instance().load("metal");
+  SkinManager::instance().load();
 }
 
 void
diff --git a/src/gui/qt/SkinManagerImpl.cpp b/src/gui/qt/SkinManagerImpl.cpp
index 87ec663f46..bd7b94d857 100644
--- a/src/gui/qt/SkinManagerImpl.cpp
+++ b/src/gui/qt/SkinManagerImpl.cpp
@@ -24,9 +24,10 @@
 
 SkinManagerImpl::SkinManagerImpl() 
   : mApp(NULL)
-  , mHunter(DATADIR)
+  , mHunter(SKINDIR)
 {
   mSettings.setPath("savoirfairelinux.com", PROGNAME);
+  mSettings.beginGroup("/" PROGNAME);
   mPaths = mSettings.readListEntry("SkinPaths");
 }
 
@@ -39,7 +40,11 @@ SkinManagerImpl::setApplication(QApplication *app)
 void
 SkinManagerImpl::load()
 {
-  load(mSettings.readEntry("Skin", "metal"));
+  bool ok;
+  load(mSettings.readEntry("Skin", "metal", &ok));
+  if(!ok) {
+    mSettings.writeEntry("Skin", "metal");
+  }
 }
 
 void 
diff --git a/src/gui/qt/globals.h b/src/gui/qt/globals.h
index 2cddbb7e95..1d96f222ad 100644
--- a/src/gui/qt/globals.h
+++ b/src/gui/qt/globals.h
@@ -52,4 +52,6 @@
 #define PREFERENCES_SECTION "Preferences"
 #define PREFERENCES_THEME "Themes.skinChoice"
 
+#define SKINDIR DATADIR "/skins"
+
 #endif
-- 
GitLab