Changeset 63:9e8c413af9ad in SMSSender


Ignore:
Timestamp:
Feb 2, 2010 8:24:25 PM (8 years ago)
Author:
Sämy Zehnder <saemy.zehnder@…>
Branch:
3.0
Convert:
svn:3639001d-8e34-449c-bb86-3782b86c4877/branches/3.0@62
Message:
  • Fixed wrong settings / locale path on the different platforms.
Location:
src
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • src/business/BCSettings.cpp

    r59 r63  
    2828}
    2929
    30 QString BCSettings::getSettingsPath(){
    31     QString path = qApp->applicationDirPath() + "/";
    32     qDebug() << "AppDirPath: " + path;
    33     if (!QFile::exists(path + "data.db")) {
    34         path = QDesktopServices::storageLocation(QDesktopServices::DataLocation) + "/gorrion/SMSSender/";
     30QDir BCSettings::getSettingsPath(){
     31    QDir settingsPath(qApp->applicationDirPath());
     32    #if defined(Q_OS_WIN)
     33        if (settingsPath.dirName().toLower() == "debug" || settingsPath.dirName().toLower() == "release")
     34            settingsPath.cdUp();
     35    #elif defined(Q_OS_MAC)
     36        if (settingsPath.dirName() == "MacOS") {
     37            settingsPath.cdUp();
     38            settingsPath.cd("settings");
     39        }
     40    #endif
     41    qDebug() << "Portable settings path: " + settingsPath.absolutePath();
     42
     43    if (!settingsPath.exists("data.db")) {
     44        QString path = QDesktopServices::storageLocation(QDesktopServices::DataLocation) + "/gorrion/SMSSender/";
     45        settingsPath.mkpath(path);
     46        settingsPath.setCurrent(path);
    3547    }
    3648   
    37     path = QDir::toNativeSeparators(path); // Replace / by \ on windows (per example)
    38     QDir dir;
    39     if (!dir.exists(path)) {
    40         dir.mkpath(path); // Create path if not exists
    41     }
    42    
    43     qDebug() << "Using " + path + " as settings path";
    44     return path;
    45 }
    46 
    47 const QString BCSettings::getLocalePath(){
    48     return qApp->applicationDirPath() + "/locale/";
     49    qDebug() << "Using " + settingsPath.absolutePath() + " as settings path";
     50    return settingsPath;
     51}
     52
     53const QDir BCSettings::getLocalePath() const {
     54    QDir localePath(qApp->applicationDirPath());
     55    #if defined(Q_OS_WIN)
     56        if (localePath.dirName().toLower() == "debug" || localePath.dirName().toLower() == "release")
     57            localePath.cdUp();
     58    #elif defined(Q_OS_MAC)
     59        if (localePath.dirName() == "MacOS") {
     60            localePath.cdUp();
     61        }
     62    #endif
     63    localePath.cd("locale");
     64
     65    return localePath;
    4966}
    5067
  • src/business/BCSettings.h

    r43 r63  
    99#define BCSETTINGS_H_
    1010
     11#include <QDir>
     12#include <QList>
     13#include <QLocale>
     14#include <QString>
     15
    1116#include <persistence/isettings.h>
    1217#include <iaccount.h>
     
    1722    static BCSettings * instance();
    1823
    19     const QString  getLocalePath();
     24    const QDir     getLocalePath() const;
    2025    QLocale        getLocale();
    2126    QList<QLocale> getLocales();
     
    4146    QString getUpdateUrl();
    4247
    43     QString getSettingsPath();
     48    QDir getSettingsPath();
    4449
    4550
  • src/main.cpp

    r58 r63  
    1414//Q_IMPORT_PLUGIN(interfaces)
    1515
     16#if defined(Q_OS_WIN)
     17
    1618#include <iostream>
    1719#include <fstream>
     
    2123ofstream logfile;
    2224
    23 void MyOutputHandler(QtMsgType type, const char *msg) {
     25void LogfileOutputHandler(QtMsgType type, const char *msg) {
    2426    switch (type) {
    2527        case QtDebugMsg:
     
    3739    }
    3840}
    39 
     41#endif
    4042
    4143void loadGateways() {
     
    4749    #elif defined(Q_OS_MAC)
    4850        if (gatewayPath.dirName() == "MacOS") {
    49             gatewayPath.cdUp();
    50             gatewayPath.cdUp();
    5151            gatewayPath.cdUp();
    5252        }
     
    7474int main(int argc, char *argv[]){
    7575    #ifndef QT_NO_DEBUG_OUTPUT
     76        #if defined(Q_OS_WIN)
    7677        logfile.open("logfile.txt", ios::app);
    77         #if defined(Q_OS_WIN)
    78         qInstallMsgHandler(MyOutputHandler);
     78        qInstallMsgHandler(LogfileOutputHandler);
    7979        #endif
    8080    #endif
     
    9090
    9191    QTranslator myTranslator;
    92     if (myTranslator.load(locale.name(), BCSettings::instance()->getLocalePath())){
     92    if (myTranslator.load(locale.name(), BCSettings::instance()->getLocalePath().absolutePath())){
    9393        a.installTranslator(&myTranslator);
    9494    }
  • src/persistence/storage/DAStorage.cpp

    r58 r63  
    3838DAStorage::DAStorage() {
    3939    dbConnection_ = QSqlDatabase::addDatabase("QSQLITE");
    40     dbConnection_.setDatabaseName(BCSettings::instance()->getSettingsPath() + "data.db");
     40    dbConnection_.setDatabaseName(BCSettings::instance()->getSettingsPath().absoluteFilePath("data.db"));
    4141    if (!dbConnection_.open()) {
    4242        qCritical() << dbConnection_.lastError().text();
  • src/ui/VCAddressBook/vcaddressbook.ui

    r56 r63  
    8383       <item row="0" column="0">
    8484        <widget class="QPushButton" name="btnAddContact">
     85         <property name="sizePolicy">
     86          <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
     87           <horstretch>0</horstretch>
     88           <verstretch>0</verstretch>
     89          </sizepolicy>
     90         </property>
    8591         <property name="minimumSize">
    8692          <size>
     
    106112       <item row="0" column="1">
    107113        <widget class="QPushButton" name="btnRemoveContact">
     114         <property name="sizePolicy">
     115          <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
     116           <horstretch>0</horstretch>
     117           <verstretch>0</verstretch>
     118          </sizepolicy>
     119         </property>
    108120         <property name="minimumSize">
    109121          <size>
     
    129141       <item row="0" column="2">
    130142        <widget class="QPushButton" name="btnEditContact">
     143         <property name="sizePolicy">
     144          <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
     145           <horstretch>0</horstretch>
     146           <verstretch>0</verstretch>
     147          </sizepolicy>
     148         </property>
    131149         <property name="minimumSize">
    132150          <size>
     
    229247       <item row="0" column="0">
    230248        <widget class="QPushButton" name="btnAddGroup">
     249         <property name="sizePolicy">
     250          <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
     251           <horstretch>0</horstretch>
     252           <verstretch>0</verstretch>
     253          </sizepolicy>
     254         </property>
    231255         <property name="minimumSize">
    232256          <size>
     
    252276       <item row="0" column="1">
    253277        <widget class="QPushButton" name="btnRemoveGroup">
     278         <property name="sizePolicy">
     279          <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
     280           <horstretch>0</horstretch>
     281           <verstretch>0</verstretch>
     282          </sizepolicy>
     283         </property>
    254284         <property name="minimumSize">
    255285          <size>
     
    275305       <item row="0" column="2">
    276306        <widget class="QPushButton" name="btnEditGroup">
     307         <property name="sizePolicy">
     308          <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
     309           <horstretch>0</horstretch>
     310           <verstretch>0</verstretch>
     311          </sizepolicy>
     312         </property>
    277313         <property name="minimumSize">
    278314          <size>
Note: See TracChangeset for help on using the changeset viewer.