source: tspsg/src/globals.cpp

appveyor
Last change on this file was b9167cec6d, checked in by Oleksii Serdiuk, 9 years ago

Update copyright years

  • Property mode set to 100644
File size: 2.3 KB
RevLine 
[2bbe924ad8]1/*
2 *  TSPSG: TSP Solver and Generator
[b9167cec6d]3 *  Copyright (C) 2007-2016 Oleksii Serdiuk <contacts[at]oleksii[dot]name>
[2bbe924ad8]4 *
[7ba743d983]5 *  $Id: $Format:%h %ai %an$ $
6 *  $URL: http://tspsg.info/ $
[2bbe924ad8]7 *
8 *  This file is part of TSPSG.
9 *
10 *  TSPSG is free software: you can redistribute it and/or modify
11 *  it under the terms of the GNU General Public License as published by
[2940c14782]12 *  the Free Software Foundation, either version 2 of the License, or
[2bbe924ad8]13 *  (at your option) any later version.
14 *
15 *  TSPSG is distributed in the hope that it will be useful,
16 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
17 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18 *  GNU General Public License for more details.
19 *
20 *  You should have received a copy of the GNU General Public License
21 *  along with TSPSG.  If not, see <http://www.gnu.org/licenses/>.
22 */
23
24#include "globals.h"
25
[07e43cf61a]26#include <QFile>
27#include <QObject>
28#include <QSettings>
29#include <QWidget>
30
[31694c8b58]31#ifdef Q_OS_WINCE_WM
32#   include <shellapi.h>
33#endif
34
[07e43cf61a]35bool hasUpdater()
36{
37#ifdef Q_OS_WIN32
38    return QFile::exists("updater/Update.exe");
39#else // Q_OS_WIN32
40    return false;
41#endif // Q_OS_WIN32
42}
43
[31694c8b58]44QSettings *initSettings(QObject *parent)
45{
46#ifdef Q_OS_WINCE_WM
47    /*!
48     * \hack HACK: On Windows Mobile the way Qt tries to get path for saving
49     *  settings doesn't always work. This workaround tries to fix it.
50     */
51    if (!QDesktopServices::storageLocation(QDesktopServices::DataLocation).isEmpty()) {
52#endif // Q_OS_WINCE_WM
53    return new QSettings(QSettings::IniFormat, QSettings::UserScope, "TSPSG", "tspsg", parent);
54#ifdef Q_OS_WINCE_WM
55    } else {
56        wchar_t path[MAX_PATH];
57        SHGetSpecialFolderPath(0, path, 0x001a, FALSE);
58        QString fileName = QString::fromWCharArray(path);
59        fileName.append("\\TSPSG\\tspsg.ini");
60        return new QSettings(fileName, QSettings::IniFormat, parent);
61    }
62#endif // Q_OS_WINCE_WM
63}
64
[b8a2a118c4]65#ifndef HANDHELD
[2bbe924ad8]66void toggleStyle(QWidget *widget, bool enable)
67{
[9eb63a1598]68    if (enable) {
69        widget->setStyleSheet(QString("%1 {background-color: %2; border-color: %3; border-width: 1px; border-style: solid; border-radius: 3px;}").arg(widget->metaObject()->className(), widget->palette().window().color().name(), widget->palette().shadow().color().name()));
70    } else {
71        widget->setStyleSheet(QString());
72    }
[2bbe924ad8]73}
[b8a2a118c4]74#endif // HANDHELD
Note: See TracBrowser for help on using the repository browser.