#include <KLocalizedString>
#endif
+#ifdef SAMSUNG_TIZEN_BRANCH
+const QString& AboutData::Organization = "Samsung";
+
+const QString& AboutData::CopyrightStatement =
+ i18n("Copyright 2015, Milian Wolff <mail@milianw.de>. " \
+ "Copyright 2018, Samsung.");
+
+const QString& AboutData::BugAddress = "TODO"; // TODO!!
+#else
+const QString& AboutData::Organization = "Milian Wolff";
+
+const QString& AboutData::CopyrightStatement = i18n("Copyright 2015, Milian Wolff <mail@milianw.de>");
+
+const QString& AboutData::BugAddress = QStringLiteral("mail@milianw.de");
+#endif
+
const QString& AboutData::ComponentName = QStringLiteral("heaptrack_gui");
const QString& AboutData::DisplayName = i18n("Heaptrack GUI");
const QString& AboutData::Version = QStringLiteral("0.1");
const QString& AboutData::ShortDescription = i18n("A visualizer for heaptrack data files.");
-
-const QString& AboutData::CopyrightStatement = i18n("Copyright 2015, Milian Wolff <mail@milianw.de>");
-
-const QString& AboutData::BugAddress = QStringLiteral("mail@milianw.de");
class AboutData
{
public:
+ const static QString& Organization;
const static QString& ComponentName;
const static QString& DisplayName;
const static QString& Version;
const static QString& ShortDescription;
const static QString& CopyrightStatement;
const static QString& BugAddress;
+
+ static QString applicationName()
+ {
+ return ComponentName + '_' + Version;
+ }
};
#endif // ABOUTDATA_H
#include "chartwidget.h"
#include "histogrammodel.h"
#include "histogramwidget.h"
+#if QWT_FOUND
+#include "aboutdata.h"
+#include <QSettings>
+#endif
#endif
using namespace std;
, m_config(KSharedConfig::openConfig(QStringLiteral("heaptrack_gui")))
#endif
{
-#if defined(QWT_FOUND) && (QT_VERSION >= 0x050A00)
+#ifdef QWT_FOUND
+ QSettings settings(QSettings::UserScope, AboutData::Organization, AboutData::applicationName());
+ settings.beginGroup("Charts");
+ QVariant value = settings.value("Options");
+ bool ok;
+ int options = value.toInt(&ok);
+ if (ok)
+ {
+ ChartOptions::GlobalOptions = ChartOptions::Options(options);
+ }
+ settings.endGroup();
+#if QT_VERSION >= 0x050A00
// seems it doesn't help under Windows (Qt 5.10.0)
QCoreApplication::setAttribute(Qt::AA_DontShowShortcutsInContextMenus, false);
#endif
+#endif // QWT_FOUND
m_ui->setupUi(this);
MainWindow::~MainWindow()
{
-#ifndef NO_K_LIB // TODO!! find a replacement for KSharedConfig
+#ifdef NO_K_LIB
+#ifdef QWT_FOUND
+ QSettings settings(QSettings::UserScope, AboutData::Organization, AboutData::applicationName());
+ settings.beginGroup("Charts");
+ settings.setValue("Options", ChartOptions::GlobalOptions);
+ settings.endGroup();
+#endif // QWT_FOUND
+#else
auto state = saveState(MAINWINDOW_VERSION);
auto group = m_config->group(Config::Groups::MainWindow);
group.writeEntry(Config::Entries::State, state);
-#endif
+#endif // NO_K_LIB
}
void MainWindow::loadFile(const QString& file, const QString& diffBase)
INCLUDEPATH += $$PWD/analyze/gui
+# build heaptrack for Samsung Tizen OS
+DEFINES += SAMSUNG_TIZEN_BRANCH
+
win32 {
CONFIG += NO_K_LIB NO_K_CHART
SOURCES += \
analyze/accumulatedtracedata.cpp \
+ analyze/gui/aboutdata.cpp \
analyze/gui/gui.cpp \
analyze/gui/callercalleemodel.cpp \
analyze/gui/costdelegate.cpp \
analyze/gui/topproxy.cpp \
analyze/gui/treemodel.cpp \
analyze/gui/treeproxy.cpp \
- analyze/gui/util.cpp \
- analyze/gui/aboutdata.cpp
+ analyze/gui/util.cpp
HEADERS += \
analyze/accumulatedtracedata.h \
+ analyze/gui/aboutdata.h \
analyze/gui/callercalleemodel.h \
analyze/gui/costdelegate.h \
analyze/gui/flamegraph.h \
analyze/gui/treemodel.h \
analyze/gui/treeproxy.h \
analyze/gui/util.h \
- util/config.h \
- analyze/gui/aboutdata.h
+ util/config.h
QWT_CHART {
# QMAKEFEATURES and QWT_ROOT environment variables must be set (e.g. to d:\Qwt\Qwt-6.2).