diff --git a/utils/themeeditor/gui/editorwindow.cpp b/utils/themeeditor/gui/editorwindow.cpp
index 169dc3f6a1..b81e41a2f5 100644
--- a/utils/themeeditor/gui/editorwindow.cpp
+++ b/utils/themeeditor/gui/editorwindow.cpp
@@ -167,8 +167,19 @@ void EditorWindow::setupUI()
deviceDock->setObjectName("deviceDock");
deviceDock->setWidget(deviceConfig);
deviceDock->setFloating(true);
+ deviceDock->move(QPoint(x() + width() / 2, y() + height() / 2));
deviceDock->hide();
+ /* Positioning the timer panel */
+ timerDock = new QDockWidget(tr("Timer"), this);
+ timer = new SkinTimer(deviceConfig, timerDock);
+
+ timerDock->setObjectName("timerDock");
+ timerDock->setWidget(timer);
+ timerDock->setFloating(true);
+ timerDock->move(QPoint(x() + width() / 2, y() + height() / 2));
+ timerDock->hide();
+
shiftTab(-1);
}
@@ -183,6 +194,8 @@ void EditorWindow::setupMenus()
this, SLOT(showPanel()));
QObject::connect(ui->actionDevice_Configuration, SIGNAL(triggered()),
deviceDock, SLOT(show()));
+ QObject::connect(ui->actionTimer, SIGNAL(triggered()),
+ timerDock, SLOT(show()));
/* Connecting the document management actions */
QObject::connect(ui->actionNew_Document, SIGNAL(triggered()),
diff --git a/utils/themeeditor/gui/editorwindow.h b/utils/themeeditor/gui/editorwindow.h
index c2ae1770f2..6b09b79815 100644
--- a/utils/themeeditor/gui/editorwindow.h
+++ b/utils/themeeditor/gui/editorwindow.h
@@ -34,6 +34,7 @@
#include "preferencesdialog.h"
#include "skinviewer.h"
#include "devicestate.h"
+#include "skintimer.h"
class ProjectModel;
class TabContent;
@@ -99,6 +100,8 @@ private:
SkinViewer* viewer;
DeviceState* deviceConfig;
QDockWidget* deviceDock;
+ SkinTimer* timer;
+ QDockWidget* timerDock;
};
#endif // EDITORWINDOW_H
diff --git a/utils/themeeditor/gui/editorwindow.ui b/utils/themeeditor/gui/editorwindow.ui
index 707e24698c..5ef3261acb 100644
--- a/utils/themeeditor/gui/editorwindow.ui
+++ b/utils/themeeditor/gui/editorwindow.ui
@@ -69,6 +69,7 @@
+
projectTree
diff --git a/utils/themeeditor/gui/skintimer.cpp b/utils/themeeditor/gui/skintimer.cpp
new file mode 100644
index 0000000000..f228a2f097
--- /dev/null
+++ b/utils/themeeditor/gui/skintimer.cpp
@@ -0,0 +1,58 @@
+/***************************************************************************
+ * __________ __ ___.
+ * Open \______ \ ____ ____ | | _\_ |__ _______ ___
+ * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
+ * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
+ * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
+ * \/ \/ \/ \/ \/
+ * $Id$
+ *
+ * Copyright (C) 2010 Robert Bieber
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ****************************************************************************/
+
+#include "skintimer.h"
+#include "ui_skintimer.h"
+
+const int SkinTimer::millisPerTick = 10;
+
+SkinTimer::SkinTimer(DeviceState* device, QWidget *parent) :
+ QWidget(parent),
+ ui(new Ui::SkinTimer),
+ device(device)
+{
+ ui->setupUi(this);
+}
+
+SkinTimer::~SkinTimer()
+{
+ delete ui;
+}
+
+void SkinTimer::start()
+{
+
+}
+
+void SkinTimer::stop()
+{
+
+}
+
+void SkinTimer::tick()
+{
+
+}
+
+void SkinTimer::stateChange()
+{
+
+}
diff --git a/utils/themeeditor/gui/skintimer.h b/utils/themeeditor/gui/skintimer.h
new file mode 100644
index 0000000000..b6c8061028
--- /dev/null
+++ b/utils/themeeditor/gui/skintimer.h
@@ -0,0 +1,58 @@
+/***************************************************************************
+ * __________ __ ___.
+ * Open \______ \ ____ ____ | | _\_ |__ _______ ___
+ * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
+ * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
+ * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
+ * \/ \/ \/ \/ \/
+ * $Id$
+ *
+ * Copyright (C) 2010 Robert Bieber
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ****************************************************************************/
+
+#ifndef SKINTIMER_H
+#define SKINTIMER_H
+
+#include
+#include
+
+#include "devicestate.h"
+
+namespace Ui {
+ class SkinTimer;
+}
+
+class SkinTimer : public QWidget {
+ Q_OBJECT
+public:
+ static const int millisPerTick;
+
+ SkinTimer(DeviceState* device, QWidget *parent = 0);
+ ~SkinTimer();
+
+private slots:
+ void start();
+ void stop();
+ void tick();
+ void stateChange();
+
+private:
+ void setupUI();
+
+ Ui::SkinTimer *ui;
+ DeviceState* device;
+
+ QTimer timer;
+ unsigned long int elapsedTime;
+};
+
+#endif // SKINTIMER_H
diff --git a/utils/themeeditor/gui/skintimer.ui b/utils/themeeditor/gui/skintimer.ui
new file mode 100644
index 0000000000..a9f5feafd7
--- /dev/null
+++ b/utils/themeeditor/gui/skintimer.ui
@@ -0,0 +1,232 @@
+
+
+ SkinTimer
+
+
+
+ 0
+ 0
+ 238
+ 204
+
+
+
+ Form
+
+
+
+ :/resources/windowicon.png:/resources/windowicon.png
+
+
+ -
+
+
-
+
+
+ Speed
+
+
+ speedBox
+
+
+
+ -
+
+
+ x
+
+
+ 1
+
+
+ 0.100000000000000
+
+
+ 3.000000000000000
+
+
+ 0.200000000000000
+
+
+ 1.000000000000000
+
+
+
+ -
+
+
+ Duration
+
+
+ spinBox
+
+
+
+ -
+
+
+ s
+
+
+ 1
+
+
+ 1000
+
+
+ 20
+
+
+
+
+
+ -
+
+
+ 0
+
+
+
+ -
+
+
+ Qt::Vertical
+
+
+
+ 20
+ 40
+
+
+
+
+ -
+
+
-
+
+
+ Start
+
+
+
+ -
+
+
+ false
+
+
+ Stop
+
+
+
+
+
+ -
+
+
-
+
+
+
+
+
+
+ :/resources/resources/play.png:/resources/resources/play.png
+
+
+
+ 30
+ 30
+
+
+
+ true
+
+
+ true
+
+
+ true
+
+
+
+ -
+
+
+
+
+
+
+ :/resources/resources/pause.png:/resources/resources/pause.png
+
+
+
+ 30
+ 30
+
+
+
+ true
+
+
+ false
+
+
+ true
+
+
+
+ -
+
+
+
+
+
+
+ :/resources/resources/rwnd.png:/resources/resources/rwnd.png
+
+
+
+ 30
+ 30
+
+
+
+ true
+
+
+ true
+
+
+
+ -
+
+
+
+
+
+
+ :/resources/resources/ffwd.png:/resources/resources/ffwd.png
+
+
+
+ 30
+ 30
+
+
+
+ true
+
+
+ true
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/utils/themeeditor/resources.qrc b/utils/themeeditor/resources.qrc
index a000c3701e..87211b95e9 100644
--- a/utils/themeeditor/resources.qrc
+++ b/utils/themeeditor/resources.qrc
@@ -9,6 +9,10 @@
resources/zoomeven.png
resources/zoomin.png
resources/zoomout.png
+ resources/play.png
+ resources/ffwd.png
+ resources/pause.png
+ resources/rwnd.png
resources/render/scenebg.png
diff --git a/utils/themeeditor/resources/ffwd.png b/utils/themeeditor/resources/ffwd.png
new file mode 100644
index 0000000000..8cf50ca048
Binary files /dev/null and b/utils/themeeditor/resources/ffwd.png differ
diff --git a/utils/themeeditor/resources/ffwd.xcf b/utils/themeeditor/resources/ffwd.xcf
new file mode 100644
index 0000000000..629e258940
Binary files /dev/null and b/utils/themeeditor/resources/ffwd.xcf differ
diff --git a/utils/themeeditor/resources/pause.png b/utils/themeeditor/resources/pause.png
new file mode 100644
index 0000000000..dabfdc01be
Binary files /dev/null and b/utils/themeeditor/resources/pause.png differ
diff --git a/utils/themeeditor/resources/pause.xcf b/utils/themeeditor/resources/pause.xcf
new file mode 100644
index 0000000000..e3dbb4560b
Binary files /dev/null and b/utils/themeeditor/resources/pause.xcf differ
diff --git a/utils/themeeditor/resources/play.png b/utils/themeeditor/resources/play.png
new file mode 100644
index 0000000000..c439befc75
Binary files /dev/null and b/utils/themeeditor/resources/play.png differ
diff --git a/utils/themeeditor/resources/play.xcf b/utils/themeeditor/resources/play.xcf
new file mode 100644
index 0000000000..ee6c4bceb2
Binary files /dev/null and b/utils/themeeditor/resources/play.xcf differ
diff --git a/utils/themeeditor/resources/rwnd.png b/utils/themeeditor/resources/rwnd.png
new file mode 100644
index 0000000000..59fda48567
Binary files /dev/null and b/utils/themeeditor/resources/rwnd.png differ
diff --git a/utils/themeeditor/themeeditor.pro b/utils/themeeditor/themeeditor.pro
index 904adf239b..49e1be953a 100644
--- a/utils/themeeditor/themeeditor.pro
+++ b/utils/themeeditor/themeeditor.pro
@@ -52,7 +52,8 @@ HEADERS += models/parsetreemodel.h \
gui/findreplacedialog.h \
graphics/rbtext.h \
graphics/rbfontcache.h \
- graphics/rbtextcache.h
+ graphics/rbtextcache.h \
+ gui/skintimer.h
SOURCES += main.cpp \
models/parsetreemodel.cpp \
models/parsetreenode.cpp \
@@ -75,7 +76,8 @@ SOURCES += main.cpp \
gui/findreplacedialog.cpp \
graphics/rbtext.cpp \
graphics/rbfontcache.cpp \
- graphics/rbtextcache.cpp
+ graphics/rbtextcache.cpp \
+ gui/skintimer.cpp
OTHER_FILES += README \
resources/windowicon.png \
resources/appicon.xcf \
@@ -85,12 +87,20 @@ OTHER_FILES += README \
resources/document-new.png \
resources/deviceoptions \
resources/render/statusbar.png \
- resources/render/scenebg.png
+ resources/render/scenebg.png \
+ resources/play.xcf \
+ resources/play.png \
+ resources/rwnd.png \
+ resources/pause.xcf \
+ resources/pause.png \
+ resources/ffwd.xcf \
+ resources/ffwd.png
FORMS += gui/editorwindow.ui \
gui/preferencesdialog.ui \
gui/configdocument.ui \
gui/skinviewer.ui \
- gui/findreplacedialog.ui
+ gui/findreplacedialog.ui \
+ gui/skintimer.ui
RESOURCES += resources.qrc
win32:RC_FILE = themeeditor.rc
macx {