Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
151 commits
Select commit Hold shift + click to select a range
1ef5e64
first version of variables in attributes + State as contextNode
demos Jul 12, 2014
5bf7c11
Merge remote-tracking branch 'upstream/master' into inline_svg
demos Jul 18, 2014
951212d
context
demos Jul 19, 2014
ad7473f
merge inline svg
demos Jul 19, 2014
99634ec
cleaning
demos Jul 19, 2014
1854fae
Merge branch 'master' of git://github.com/mixxxdj/mixxx into variable…
demos Jul 28, 2014
c278d3f
cleaning
demos Jul 29, 2014
9276370
Merge branch 'master' of git://github.com/mixxxdj/mixxx into variable…
demos Jul 29, 2014
b826f28
support for multiple variables in one svg file
demos Jul 31, 2014
3d9a313
qscript in svg + templateHooks for custom template behavior depending…
demos Aug 1, 2014
783134a
support for src attribute on script elements
demos Aug 2, 2014
5f58332
cleaning + polishing
demos Aug 3, 2014
577340a
Merge branch 'master' of git://github.com/mixxxdj/mixxx into variable…
demos Aug 3, 2014
cdcf3a2
cleaning
demos Aug 4, 2014
5a256b7
cleaning
demos Aug 4, 2014
eb1365a
debug badly removed test
demos Aug 7, 2014
27bbad0
Merge branch 'master' of git://github.com/mixxxdj/mixxx into variable…
demos Aug 8, 2014
5eed59b
Merge branch 'master' of git://github.com/mixxxdj/mixxx into variable…
demos Aug 11, 2014
68aed2b
Merge branch 'master' of git://github.com/mixxxdj/mixxx into variable…
demos Aug 13, 2014
18cc405
cleaning + testing script debug
demos Aug 13, 2014
7586486
precise beat in waveform
demos Aug 14, 2014
e3d48d2
merge conflict with thin beat grid
demos Aug 14, 2014
3cf11d6
Merge branch 'master' of git://github.com/mixxxdj/mixxx into variable…
demos Aug 14, 2014
7c7be83
Merge branch 'master' of git://github.com/mixxxdj/mixxx into variable…
demos Aug 16, 2014
c8f52b5
Merge branch 'master' of git://github.com/mixxxdj/mixxx into variable…
demos Aug 17, 2014
ae4dc1b
Merge branch 'master' of git://github.com/mixxxdj/mixxx into variable…
demos Aug 19, 2014
5922fce
clean exception management for template hooks
demos Aug 19, 2014
d421390
remove var-name attributes support
demos Aug 19, 2014
60b698a
splitting svg parser from skincontext to dedicated class
demos Aug 20, 2014
ae36056
cleaning names
demos Aug 20, 2014
90cd662
splitting setVariables and temp file handling
demos Aug 20, 2014
b58b03f
svgparser able to open svg files directly
demos Aug 20, 2014
a8840d2
coherent methods naming
demos Aug 20, 2014
fe98fe0
coherent methods naming
demos Aug 20, 2014
1c74ba4
coherent methods naming
demos Aug 20, 2014
561d4cc
Merge branch 'master' of git://github.com/mixxxdj/mixxx into variable…
demos Aug 20, 2014
a622cee
cleaning patterns in attributes
demos Aug 21, 2014
caaea32
removing QTempFile include
demos Aug 21, 2014
8c08579
Merge branch 'master' of git://github.com/mixxxdj/mixxx into variable…
demos Aug 21, 2014
c79f7e1
Merge branch 'master' of git://github.com/mixxxdj/mixxx into variable…
demos Aug 23, 2014
dce1e89
prettyprint
demos Aug 23, 2014
e8cfd9c
Merge branch 'master' of git://github.com/mixxxdj/mixxx into variable…
demos Aug 25, 2014
75863cd
prettyprint + code dup removal
demos Aug 27, 2014
83f442d
80 char per line max
demos Aug 27, 2014
9ac3868
beginning
demos Sep 4, 2014
63ec80f
Merge branch 'master' of git://github.com/mixxxdj/mixxx into variable…
demos Sep 5, 2014
31024ea
buildable wip
demos Sep 5, 2014
1b0f43d
first working solution
demos Sep 9, 2014
479ab4e
spreading getPixmapSource
demos Sep 9, 2014
cb1a86c
new dependencies
demos Sep 9, 2014
3641ff2
cleaning
demos Sep 9, 2014
004216e
cleaning
demos Sep 9, 2014
120446a
cleaning
demos Sep 9, 2014
7ea5c44
cleaning
demos Sep 9, 2014
211fe98
scripts debug
demos Sep 12, 2014
2a17016
Merge branch 'master' of git://github.com/mixxxdj/mixxx into remove_s…
demos Sep 13, 2014
d518e27
Merge branch 'master' of git://github.com/mixxxdj/mixxx into remove_s…
demos Sep 14, 2014
c6eb7fc
Merge branch 'master' of git://github.com/mixxxdj/mixxx into remove_s…
demos Sep 14, 2014
2ce5556
Merge branch 'master' of git://github.com/mixxxdj/mixxx into remove_s…
demos Sep 17, 2014
07314db
Merge branch 'master' of git://github.com/mixxxdj/mixxx into remove_s…
demos Sep 22, 2014
a2f8f45
Merge branch 'master' of git://github.com/mixxxdj/mixxx into remove_s…
demos Sep 23, 2014
298a58e
Merge branch 'master' of git://github.com/mixxxdj/mixxx into remove_s…
demos Sep 23, 2014
3597f0a
Merge branch 'master' of git://github.com/mixxxdj/mixxx into remove_s…
demos Sep 24, 2014
2056621
Merge branch 'master' of git://github.com/mixxxdj/mixxx into remove_s…
demos Sep 26, 2014
1cdbed1
Merge branch 'master' of git://github.com/mixxxdj/mixxx into remove_s…
demos Sep 26, 2014
5556bd1
Merge branch 'master' of git://github.com/mixxxdj/mixxx into remove_s…
demos Sep 27, 2014
0127797
Merge branch 'master' of git://github.com/mixxxdj/mixxx into remove_s…
demos Sep 27, 2014
faf5860
Merge branch 'master' of git://github.com/mixxxdj/mixxx into remove_s…
demos Sep 29, 2014
375512c
removing code dup between svgparser and skincontext
demos Sep 29, 2014
a24904b
claening skincontext
demos Sep 29, 2014
83486ea
cleaning
demos Sep 29, 2014
bba67a6
Merge branch 'remove_svg_tempfile' into variables_svg
demos Sep 29, 2014
9ae6f29
Merge branch 'master' of git://github.com/mixxxdj/mixxx into variable…
demos Sep 29, 2014
481bd05
prettyprint
demos Sep 30, 2014
18ca574
Cleaning of PixmapSource
demos Sep 30, 2014
38aa040
context deletion
demos Sep 30, 2014
a108ebc
PixmapSource passed by value
demos Sep 30, 2014
75e4b95
cleaning
demos Sep 30, 2014
675fe4b
cleanings
demos Sep 30, 2014
1d8b63b
svgParser allocated on the stack
demos Oct 1, 2014
88c9cf8
removing filename support for paintables + simplifying PixmapSource
demos Oct 1, 2014
7b4f693
Merge branch 'master' of git://github.com/mixxxdj/mixxx into variable…
demos Oct 1, 2014
13ebd33
removing leaked context from wpushbutton
demos Oct 1, 2014
6c81877
remove a few c-ism
demos Oct 1, 2014
f6d59e5
getScriptEngine a const reference
demos Oct 1, 2014
f6514cc
Merge branch 'master' of git://github.com/mixxxdj/mixxx into variable…
demos Oct 2, 2014
f36b8a4
refacto : all parses in scanTree
demos Oct 4, 2014
9aee541
dbg
demos Oct 4, 2014
b41f4f9
svg parser scripts in extension + removing cisms + cleaning
demos Oct 4, 2014
7533882
removing tabs
demos Oct 4, 2014
a7fb8f2
Merge branch 'master' of git://github.com/mixxxdj/mixxx into variable…
demos Oct 4, 2014
9b4cb41
Merge branch 'master' of git://github.com/mixxxdj/mixxx into variable…
demos Oct 5, 2014
33612cd
moving hook pattern definition to script extension
demos Oct 5, 2014
ec05305
cleaning
demos Oct 5, 2014
437fe8e
removing useless method
demos Oct 5, 2014
d097552
investigating error logging
demos Oct 5, 2014
a25d55d
little cleaning
demos Oct 5, 2014
6f2b8e3
little cleaning
demos Oct 5, 2014
696464f
currentFile as mutable to keep svgParser const
demos Oct 5, 2014
f072903
Merge branch 'master' of git://github.com/mixxxdj/mixxx into variable…
demos Oct 6, 2014
9e2e711
simplification + tidying
demos Oct 6, 2014
8528104
cleaning + indent
demos Oct 6, 2014
3a10b16
TODOs ad questions
demos Oct 6, 2014
8e42939
adding support for value attribute on text elements
demos Oct 7, 2014
b2606d6
support for expression attribute on Variable element
demos Oct 7, 2014
b0ed540
exception logic
demos Oct 7, 2014
680687f
exception logic
demos Oct 7, 2014
021a929
Merge branch 'master' of git://github.com/mixxxdj/mixxx into variable…
demos Oct 9, 2014
23a666a
Merge branch 'master' of git://github.com/mixxxdj/mixxx into variable…
demos Oct 9, 2014
639209e
Merge branch 'master' of git://github.com/mixxxdj/mixxx into variable…
demos Oct 9, 2014
11fb836
Merge branch 'master' of git://github.com/mixxxdj/mixxx into variable…
demos Oct 9, 2014
26a2977
cleaning useless overload
demos Oct 9, 2014
b573548
somme consts
demos Oct 9, 2014
493cf0b
Merge branch 'master' of git://github.com/mixxxdj/mixxx into variable…
demos Oct 10, 2014
3030d03
cleaning + consts
demos Oct 10, 2014
5e4e9f0
disabling the debugger to work on the skin
demos Oct 10, 2014
32b5676
Menu to disable/enable script debugger
demos Oct 11, 2014
5816bf5
debug location for Variable 'expression' attribute
demos Oct 11, 2014
624c8ae
little dbg
demos Oct 11, 2014
eec17c8
merging conflict
demos Oct 11, 2014
563563c
cleaning + litlle things
demos Oct 11, 2014
1a0f81f
Merge branch 'master' of git://github.com/mixxxdj/mixxx into variable…
demos Oct 11, 2014
fc6dff9
comment to notice segfault
demos Oct 13, 2014
033a69b
Merge branch 'master' of git://github.com/mixxxdj/mixxx into variable…
demos Oct 15, 2014
42ce08f
Merge branch 'master' of git://github.com/mixxxdj/mixxx into variable…
demos Oct 17, 2014
4890108
Merge branch 'master' of git://github.com/mixxxdj/mixxx into variable…
demos Oct 20, 2014
df7d447
Merge branch 'master' of git://github.com/mixxxdj/mixxx into variable…
demos Oct 23, 2014
7da1ce9
Merge branch 'master' of git://github.com/mixxxdj/mixxx into variable…
demos Oct 24, 2014
e22bf50
Merge branch 'master' of git://github.com/mixxxdj/mixxx into variable…
demos Oct 29, 2014
30dc601
Merge branch 'master' of git://github.com/mixxxdj/mixxx into variable…
demos Nov 2, 2014
4d390be
Merge branch 'master' of git://github.com/mixxxdj/mixxx into variable…
demos Nov 4, 2014
fc72f9a
Merge branch 'master' of git://github.com/mixxxdj/mixxx into variable…
demos Nov 6, 2014
de5fdc8
Merge branch 'master' of git://github.com/mixxxdj/mixxx into variable…
demos Nov 7, 2014
a61ffaa
Merge branch 'master' of git://github.com/mixxxdj/mixxx into variable…
demos Nov 10, 2014
978123d
conflict resolution
demos Nov 14, 2014
b8a7b55
Merge branch 'master' of git://github.com/mixxxdj/mixxx into variable…
demos Nov 14, 2014
35ebbf4
merge conflict
demos Nov 15, 2014
49f0e2f
consts + cleaning
demos Nov 16, 2014
e35b475
review corrections progress
demos Nov 16, 2014
9ec4a4e
review corrections progress
demos Nov 16, 2014
a7cdc23
forgotten references
demos Nov 16, 2014
707d769
svg for wspinny
demos Nov 16, 2014
2eba3d6
no more use of getPixmapPath
demos Nov 16, 2014
7c35043
Merge branch 'master' of git://github.com/mixxxdj/mixxx into variable…
demos Nov 16, 2014
a45ccd0
Merge branch 'master' of git://github.com/mixxxdj/mixxx into variable…
demos Nov 16, 2014
af513c0
refs
demos Nov 16, 2014
16045cb
getPixmapPath removal
demos Nov 16, 2014
7b49751
saveToTempFile removal
demos Nov 16, 2014
8f00828
Merge branch 'master' of git://github.com/mixxxdj/mixxx into variable…
demos Nov 16, 2014
caea68e
cleanup
demos Nov 16, 2014
d68a8c1
segfault fix
demos Nov 16, 2014
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion build/depends.py
Original file line number Diff line number Diff line change
Expand Up @@ -194,7 +194,7 @@ def enabled_modules(build):
qt_modules = [
'QtCore', 'QtGui', 'QtOpenGL', 'QtXml', 'QtSvg',
'QtSql', 'QtScript', 'QtXmlPatterns', 'QtNetwork',
'QtTest'
'QtTest', 'QtScriptTools'
]
if qt5:
qt_modules.extend(['QtWidgets', 'QtConcurrent'])
Expand Down Expand Up @@ -866,6 +866,8 @@ def sources(self, build):
"skin/colorschemeparser.cpp",
"skin/tooltips.cpp",
"skin/skincontext.cpp",
"skin/svgparser.cpp",
"skin/pixmapsource.cpp",

"sampleutil.cpp",
"trackinfoobject.cpp",
Expand Down
21 changes: 21 additions & 0 deletions script/console/__init__.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
__setupPackage__(__extension__);
/**
* This is a fake Firebug console api. To debug scripts a few more like in
* javascript.
*
* More info :
* http://blog.qt.digia.com/blog/2012/03/01/debugging-qt-quick-2-console-api/
*
*/


console = {
log : function(){
var out = [],
i = 0;
for( ; i<arguments.length; i++ ){
out.push( JSON.stringify(arguments[i]) );
}
print(out.join(' '));
}
}
57 changes: 57 additions & 0 deletions script/svg/__init__.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
__setupPackage__(__extension__);
/**
* This extension provides the api to add hooks into attributes in
* the SVG parser.
*/
svg.templateHooks = {};

svg.regexpQuote = function (str, delimiter) {
return String(str).replace(
new RegExp(
'[.\\\\+*?\\[\\^\\]$(){}=!<>|:\\' + (delimiter || '') + '-]',
'g'
),
'\\$&'
);
}

svg.getHooksPattern = function(){
var hookNames = [],
that = this;
for( var i in this.templateHooks )
hookNames.push(i);

// hook_name( arg1 [, arg2]... )
if( hookNames.length ){
var pattern = "("+hookNames.join('|')+")\\(([^\\(\\)]+)\\)\\s*;?";
return pattern;
}
}

global = this;
svg.templateHooks.variable = function( varName ){
if( varName in global ){
return global[varName];
}
return '';
}

svg.templateHooks.prop = function( propName, varName ){
var out = '';

if( (varName in global) ){
var value = global[varName];

if( isNumber(value) ){
out = propName + ':' + value + ';';
} else if( value.length ) {
out = propName + ':' + value + ';';
}

} else {
console.log( 'Unable to find ' + varName + ' for prop hook.' );
}

return out;
}

33 changes: 32 additions & 1 deletion src/mixxx.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1321,7 +1321,7 @@ void MixxxMainWindow::initActions()
m_pDeveloperTools->setShortcut(
QKeySequence(m_pKbdConfig->getValueString(ConfigKey("[KeyboardShortcuts]",
"OptionsMenu_DeveloperTools"),
tr("Ctrl+Shift+D"))));
tr("Ctrl+Shift+T"))));
m_pDeveloperTools->setShortcutContext(Qt::ApplicationShortcut);
m_pDeveloperTools->setStatusTip(developerToolsText);
m_pDeveloperTools->setWhatsThis(buildWhatsThis(developerToolsTitle, developerToolsText));
Expand Down Expand Up @@ -1362,6 +1362,29 @@ void MixxxMainWindow::initActions()
connect(m_pDeveloperStatsBase, SIGNAL(triggered()),
this, SLOT(slotDeveloperStatsBase()));




QString scriptDebuggerTitle = tr("Debugger Enabled");
QString scriptDebuggerText = tr("Enables the debugger during skin parsing");
bool scriptDebuggerEnabled = m_pConfig->getValueString(
ConfigKey("[ScriptDebugger]", "Enabled")) == "1";
m_pDeveloperDebugger = new QAction(scriptDebuggerTitle, this);

m_pDeveloperDebugger->setShortcut(
QKeySequence(m_pKbdConfig->getValueString(ConfigKey("[KeyboardShortcuts]",
"DeveloperMenu_EnableDebugger"),
tr("Ctrl+Shift+D"))));
m_pDeveloperDebugger->setShortcutContext(Qt::ApplicationShortcut);
m_pDeveloperDebugger->setWhatsThis(buildWhatsThis(keyboardShortcutTitle, keyboardShortcutText));
m_pDeveloperDebugger->setCheckable(true);
m_pDeveloperDebugger->setStatusTip(scriptDebuggerText);
m_pDeveloperDebugger->setChecked(scriptDebuggerEnabled);
connect(m_pDeveloperDebugger, SIGNAL(toggled(bool)),
this, SLOT(slotDeveloperDebugger(bool)));



// TODO: This code should live in a separate class.
m_TalkoverMapper = new QSignalMapper(this);
connect(m_TalkoverMapper, SIGNAL(mapped(int)),
Expand Down Expand Up @@ -1439,6 +1462,7 @@ void MixxxMainWindow::initMenuBar()
m_pDeveloperMenu->addAction(m_pDeveloperTools);
m_pDeveloperMenu->addAction(m_pDeveloperStatsExperiment);
m_pDeveloperMenu->addAction(m_pDeveloperStatsBase);
m_pDeveloperMenu->addAction(m_pDeveloperDebugger);

// menuBar entry helpMenu
m_pHelpMenu->addAction(m_pHelpSupport);
Expand Down Expand Up @@ -1545,6 +1569,11 @@ void MixxxMainWindow::slotDeveloperTools() {
m_pDeveloperToolsDlg->activateWindow();
}

void MixxxMainWindow::slotDeveloperDebugger(bool toggle) {
m_pConfig->set(ConfigKey("[ScriptDebugger]","Enabled"),
ConfigValue(toggle ? 1 : 0));
}

void MixxxMainWindow::slotDeveloperToolsClosed() {
m_pDeveloperToolsDlg = NULL;
}
Expand All @@ -1567,6 +1596,8 @@ void MixxxMainWindow::slotDeveloperStatsBase() {
}
}



void MixxxMainWindow::slotViewFullScreen(bool toggle)
{
if (m_pViewFullScreen)
Expand Down
3 changes: 3 additions & 0 deletions src/mixxx.h
Original file line number Diff line number Diff line change
Expand Up @@ -126,6 +126,8 @@ class MixxxMainWindow : public QMainWindow {
void slotDeveloperToolsClosed();
void slotDeveloperStatsExperiment();
void slotDeveloperStatsBase();
// toogle the script debugger
void slotDeveloperDebugger(bool toggle);

void slotToCenterOfPrimaryScreen();

Expand Down Expand Up @@ -246,6 +248,7 @@ class MixxxMainWindow : public QMainWindow {
QAction* m_pDeveloperStatsExperiment;
QAction* m_pDeveloperStatsBase;
DlgDeveloperTools* m_pDeveloperToolsDlg;
QAction* m_pDeveloperDebugger;

int m_iNoPlaylists;

Expand Down
5 changes: 3 additions & 2 deletions src/skin/legacyskinparser.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -325,7 +325,7 @@ QWidget* LegacySkinParser::parseSkin(QString skinPath, QWidget* pParent) {
// created parent so MixxxMainWindow can use it for nefarious purposes (
// fullscreen mostly) --bkgood
m_pParent = pParent;
m_pContext = new SkinContext();
m_pContext = new SkinContext(m_pConfig, skinPath + "/skin.xml");
m_pContext->setSkinBasePath(skinPath.append("/"));
QList<QWidget*> widgets = parseNode(skinDocument);

Expand Down Expand Up @@ -1338,7 +1338,8 @@ QList<QWidget*> LegacySkinParser::parseTemplate(QDomElement node) {
// Take any <SetVariable> elements from this node and update the context
// with them.
m_pContext->updateVariables(node);

m_pContext->setXmlPath(path);

QList<QWidget*> widgets;

QDomNode child = templateNode.firstChild();
Expand Down
59 changes: 59 additions & 0 deletions src/skin/pixmapsource.cpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
#include <QtDebug>

#include "skin/pixmapsource.h"

PixmapSource::PixmapSource() {
}

PixmapSource::PixmapSource(const QString &filepath) {
setPath(filepath);
}

PixmapSource::~PixmapSource() {
}

QByteArray PixmapSource::getData() const {
return m_baData;
}

QString PixmapSource::getPath() const {
return m_path;
}

void PixmapSource::setPath(const QString &newPath) {
m_baData.truncate(0);
m_path = newPath;
if (m_path.endsWith(".svg", Qt::CaseInsensitive)) {
m_eType = SVG;
} else {
m_eType = BITMAP;
}
}

bool PixmapSource::isEmpty() const {
return m_path.isEmpty() && m_baData.isEmpty() ;
}

bool PixmapSource::isSVG() const {
return m_eType == SVG;
}

bool PixmapSource::isBitmap() const {
return m_eType == BITMAP;
}

void PixmapSource::setSVG(const QByteArray &content) {
m_baData = content;
m_eType = SVG;
}

QString PixmapSource::getId() const {
quint16 checksum;
if (m_baData.isEmpty()) {
checksum = qChecksum( m_path.toAscii().constData(), m_path.length() );
} else {
checksum = qChecksum( m_baData.constData(), m_baData.length() );
}
return m_path + QString::number(checksum);
}

32 changes: 32 additions & 0 deletions src/skin/pixmapsource.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
#ifndef PIXMAPSOURCE_H
#define PIXMAPSOURCE_H

// A class representing an image source for a pixmap
// A bundle of a file path, raw data or inline svg
class PixmapSource {
public:
PixmapSource();
PixmapSource(const QString &filepath);
virtual ~PixmapSource();

bool isEmpty() const;
bool isSVG() const;
bool isBitmap() const;
void setSVG(const QByteArray &content);
void setPath(const QString &newPath);
QString getPath() const;
QByteArray getData() const;
QString getId() const;

private:
enum Type {
SVG,
BITMAP
};

QString m_path;
QByteArray m_baData;
enum Type m_eType;
};

#endif /* PIXMAPSOURCE_H */
Loading