[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Traverso-commit] traverso resources/traverso.qrc resources/theme...
From: |
Nicola Doebelin |
Subject: |
[Traverso-commit] traverso resources/traverso.qrc resources/theme... |
Date: |
Mon, 13 Apr 2009 15:27:51 +0000 |
CVSROOT: /sources/traverso
Module name: traverso
Changes by: Nicola Doebelin <n_doebelin> 09/04/13 15:27:51
Modified files:
resources : traverso.qrc
resources/themes/default: traversotheme.xml
resources/themes/medium-contrast: traversotheme.xml
resources/themes/ubuntu: traversotheme.xml
src/core : Themer.cpp Themer.h
src/sheetcanvas: AudioClipView.cpp SheetView.cpp
Added files:
resources/themes/gradients: .DS_Store
Log message:
Better support for gradients added to the theme engine. See the new
theme "gradients" for an example. Should be backwards compatible, but the
":top" and ":bottom" theme entries are no longer supported. Replace them with a
single line without the ":top" or ":bottom" suffix in custom theme files.
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/traverso/resources/traverso.qrc?cvsroot=traverso&r1=1.2&r2=1.3
http://cvs.savannah.gnu.org/viewcvs/traverso/resources/themes/default/traversotheme.xml?cvsroot=traverso&r1=1.49&r2=1.50
http://cvs.savannah.gnu.org/viewcvs/traverso/resources/themes/gradients/.DS_Store?cvsroot=traverso&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/traverso/resources/themes/medium-contrast/traversotheme.xml?cvsroot=traverso&r1=1.7&r2=1.8
http://cvs.savannah.gnu.org/viewcvs/traverso/resources/themes/ubuntu/traversotheme.xml?cvsroot=traverso&r1=1.7&r2=1.8
http://cvs.savannah.gnu.org/viewcvs/traverso/src/core/Themer.cpp?cvsroot=traverso&r1=1.11&r2=1.12
http://cvs.savannah.gnu.org/viewcvs/traverso/src/core/Themer.h?cvsroot=traverso&r1=1.3&r2=1.4
http://cvs.savannah.gnu.org/viewcvs/traverso/src/sheetcanvas/AudioClipView.cpp?cvsroot=traverso&r1=1.27&r2=1.28
http://cvs.savannah.gnu.org/viewcvs/traverso/src/sheetcanvas/SheetView.cpp?cvsroot=traverso&r1=1.14&r2=1.15
Patches:
Index: resources/traverso.qrc
===================================================================
RCS file: /sources/traverso/traverso/resources/traverso.qrc,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -b -r1.2 -r1.3
--- resources/traverso.qrc 9 Feb 2009 18:53:43 -0000 1.2
+++ resources/traverso.qrc 13 Apr 2009 15:27:50 -0000 1.3
@@ -23,6 +23,7 @@
<file
alias="themes/ubuntu/traversotheme.xml">themes/ubuntu/traversotheme.xml</file>
<file
alias="themes/medium-contrast/traversotheme.xml">themes/medium-contrast/traversotheme.xml</file>
<file
alias="themes/system-palette/traversotheme.xml">themes/system-palette/traversotheme.xml</file>
+ <file
alias="themes/gradients/traversotheme.xml">themes/gradients/traversotheme.xml</file>
<file alias="bus_in">images/bus-in.xpm</file>
<file alias="bus_out">images/bus-out.xpm</file>
<file alias="audiocard">images/soundcard.png</file>
Index: resources/themes/default/traversotheme.xml
===================================================================
RCS file:
/sources/traverso/traverso/resources/themes/default/traversotheme.xml,v
retrieving revision 1.49
retrieving revision 1.50
diff -u -b -r1.49 -r1.50
--- resources/themes/default/traversotheme.xml 30 Sep 2008 19:43:04 -0000
1.49
+++ resources/themes/default/traversotheme.xml 13 Apr 2009 15:27:50 -0000
1.50
@@ -57,32 +57,20 @@
<color name="AudioClip:wavemacroview:outline" red="80"
green="80" blue="120" alpha="255" />
<color name="AudioClip:wavemacroview:outline:curvemode"
red="135" green="130" blue="255" alpha="255" />
<color name="AudioClip:wavemacroview:outline:muted" red="90"
green="90" blue="90" alpha="255" />
- <color name="AudioClip:wavemacroview:brush:top" red="145"
green="145" blue="195" alpha="255" />
- <color name="AudioClip:wavemacroview:brush:bottom" red="145"
green="145" blue="195" alpha="255" />
- <color name="AudioClip:wavemacroview:brush:hover:top" red="160"
green="160" blue="215" alpha="255" />
- <color name="AudioClip:wavemacroview:brush:hover:bottom"
red="160" green="160" blue="215" alpha="255" />
- <color name="AudioClip:wavemacroview:brush:muted:top" red="200"
green="200" blue="200" alpha="255" />
- <color name="AudioClip:wavemacroview:brush:muted:bottom"
red="200" green="200" blue="200" alpha="255" />
- <color name="AudioClip:wavemacroview:brush:curvemode:top"
red="232" green="230" blue="255" alpha="255" />
- <color name="AudioClip:wavemacroview:brush:curvemode:bottom"
red="232" green="230" blue="255" alpha="255" />
- <color name="AudioClip:wavemacroview:brush:curvemode:hover:top"
red="232" green="230" blue="240" alpha="255" />
- <color
name="AudioClip:wavemacroview:brush:curvemode:hover:bottom" red="232"
green="230" blue="240" alpha="255" />
+ <color name="AudioClip:wavemacroview:brush" red="145"
green="145" blue="195" alpha="255" />
+ <color name="AudioClip:wavemacroview:brush:hover" red="160"
green="160" blue="215" alpha="255" />
+ <color name="AudioClip:wavemacroview:brush:muted" red="200"
green="200" blue="200" alpha="255" />
+ <color name="AudioClip:wavemacroview:brush:curvemode" red="232"
green="230" blue="255" alpha="255" />
+ <color name="AudioClip:wavemacroview:brush:curvemode:hover"
red="232" green="230" blue="240" alpha="255" />
<color name="AudioClip:wavemicroview" red="150" green="150"
blue="205" alpha="255" />
<color name="AudioClip:wavemicroview:curvemode" red="210"
green="210" blue="255" alpha="255" />
- <color name="AudioClip:background:muted:top" red="245"
green="245" blue="245" alpha="170" />
- <color name="AudioClip:background:muted:bottom" red="245"
green="245" blue="245" alpha="170" />
- <color name="AudioClip:background:recording:top" red="255"
green="255" blue="255" alpha="170" />
- <color name="AudioClip:background:recording:bottom" red="255"
green="255" blue="255" alpha="170" />
- <color name="AudioClip:background:muted:mousehover:top"
red="255" green="255" blue="255" alpha="170" />
- <color name="AudioClip:background:muted:mousehover:bottom"
red="255" green="255" blue="255" alpha="170" />
- <color name="AudioClip:background:selected:top" red="101"
green="111" blue="171" alpha="170" />
- <color name="AudioClip:background:selected:bottom" red="101"
green="111" blue="171" alpha="170" />
- <color name="AudioClip:background:selected:mousehover:top"
red="111" green="121" blue="182" alpha="170" />
- <color name="AudioClip:background:selected:mousehover:bottom"
red="111" green="121" blue="182" alpha="170" />
- <color name="AudioClip:background:top" red="251" green="255"
blue="251" alpha="150" />
- <color name="AudioClip:background:bottom" red="251"
green="255" blue="251" alpha="150" />
- <color name="AudioClip:background:mousehover:top" red="255"
green="253" blue="255" alpha="200" />
- <color name="AudioClip:background:mousehover:bottom" red="255"
green="253" blue="255" alpha="200" />
+ <color name="AudioClip:background:muted" red="245" green="245"
blue="245" alpha="170" />
+ <color name="AudioClip:background:recording" red="255"
green="255" blue="255" alpha="170" />
+ <color name="AudioClip:background:muted:mousehover" red="255"
green="255" blue="255" alpha="170" />
+ <color name="AudioClip:background:selected" red="101"
green="111" blue="171" alpha="170" />
+ <color name="AudioClip:background:selected:mousehover"
red="111" green="121" blue="182" alpha="170" />
+ <color name="AudioClip:background" red="251" green="255"
blue="251" alpha="150" />
+ <color name="AudioClip:background:mousehover" red="255"
green="253" blue="255" alpha="200" />
<color name="AudioClip:channelseperator" red="178" green="191"
blue="182" alpha="255" />
<color name="AudioClip:channelseperator:selected" red="24"
green="137" blue="210" alpha="255" />
<color name="AudioClip:contour" red="80" green="80" blue="80"
alpha="255" />
Index: resources/themes/medium-contrast/traversotheme.xml
===================================================================
RCS file:
/sources/traverso/traverso/resources/themes/medium-contrast/traversotheme.xml,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -b -r1.7 -r1.8
--- resources/themes/medium-contrast/traversotheme.xml 30 Sep 2008 19:43:05
-0000 1.7
+++ resources/themes/medium-contrast/traversotheme.xml 13 Apr 2009 15:27:50
-0000 1.8
@@ -57,32 +57,20 @@
<color name="AudioClip:wavemacroview:outline" red="0" green="0"
blue="0" alpha="255" />
<color name="AudioClip:wavemacroview:outline:curvemode" red="0"
green="0" blue="0" alpha="255" />
<color name="AudioClip:wavemacroview:outline:muted" red="0"
green="0" blue="0" alpha="255" />
- <color name="AudioClip:wavemacroview:brush:top" red="80"
green="80" blue="180" alpha="255" />
- <color name="AudioClip:wavemacroview:brush:bottom" red="80"
green="80" blue="180" alpha="255" />
- <color name="AudioClip:wavemacroview:brush:hover:top" red="80"
green="80" blue="220" alpha="255" />
- <color name="AudioClip:wavemacroview:brush:hover:bottom"
red="80" green="80" blue="220" alpha="255" />
- <color name="AudioClip:wavemacroview:brush:muted:top" red="200"
green="200" blue="200" alpha="255" />
- <color name="AudioClip:wavemacroview:brush:muted:bottom"
red="200" green="200" blue="200" alpha="255" />
- <color name="AudioClip:wavemacroview:brush:curvemode:top"
red="80" green="80" blue="180" alpha="255" />
- <color name="AudioClip:wavemacroview:brush:curvemode:bottom"
red="80" green="80" blue="180" alpha="255" />
- <color name="AudioClip:wavemacroview:brush:curvemode:hover:top"
red="80" green="80" blue="220" alpha="255" />
- <color
name="AudioClip:wavemacroview:brush:curvemode:hover:bottom" red="80" green="80"
blue="220" alpha="255" />
+ <color name="AudioClip:wavemacroview:brush" red="80" green="80"
blue="180" alpha="255" />
+ <color name="AudioClip:wavemacroview:brush:hover" red="80"
green="80" blue="220" alpha="255" />
+ <color name="AudioClip:wavemacroview:brush:muted" red="200"
green="200" blue="200" alpha="255" />
+ <color name="AudioClip:wavemacroview:brush:curvemode" red="80"
green="80" blue="180" alpha="255" />
+ <color name="AudioClip:wavemacroview:brush:curvemode:hover"
red="80" green="80" blue="220" alpha="255" />
<color name="AudioClip:wavemicroview" red="50" green="50"
blue="200" alpha="255" />
<color name="AudioClip:wavemicroview:curvemode" red="50"
green="50" blue="200" alpha="255" />
- <color name="AudioClip:background:muted:top" red="150"
green="150" blue="150" alpha="150" />
- <color name="AudioClip:background:muted:bottom" red="150"
green="150" blue="150" alpha="150" />
- <color name="AudioClip:background:recording:top" red="180"
green="150" blue="150" alpha="150" />
- <color name="AudioClip:background:recording:bottom" red="180"
green="150" blue="150" alpha="150" />
- <color name="AudioClip:background:muted:mousehover:top"
red="180" green="180" blue="180" alpha="150" />
- <color name="AudioClip:background:muted:mousehover:bottom"
red="180" green="180" blue="180" alpha="150" />
- <color name="AudioClip:background:selected:top" red="210"
green="150" blue="150" alpha="150" />
- <color name="AudioClip:background:selected:bottom" red="210"
green="150" blue="150" alpha="150" />
- <color name="AudioClip:background:selected:mousehover:top"
red="250" green="180" blue="180" alpha="150" />
- <color name="AudioClip:background:selected:mousehover:bottom"
red="250" green="180" blue="180" alpha="150" />
- <color name="AudioClip:background:top" red="180" green="180"
blue="180" alpha="150" />
- <color name="AudioClip:background:bottom" red="180"
green="180" blue="180" alpha="150" />
- <color name="AudioClip:background:mousehover:top" red="200"
green="200" blue="200" alpha="150" />
- <color name="AudioClip:background:mousehover:bottom" red="200"
green="200" blue="200" alpha="150" />
+ <color name="AudioClip:background:muted" red="150" green="150"
blue="150" alpha="150" />
+ <color name="AudioClip:background:recording" red="180"
green="150" blue="150" alpha="150" />
+ <color name="AudioClip:background:muted:mousehover" red="180"
green="180" blue="180" alpha="150" />
+ <color name="AudioClip:background:selected" red="210"
green="150" blue="150" alpha="150" />
+ <color name="AudioClip:background:selected:mousehover"
red="250" green="180" blue="180" alpha="150" />
+ <color name="AudioClip:background" red="180" green="180"
blue="180" alpha="150" />
+ <color name="AudioClip:background:mousehover" red="200"
green="200" blue="200" alpha="150" />
<color name="AudioClip:channelseperator" red="200" green="100"
blue="000" alpha="255" />
<color name="AudioClip:channelseperator:selected" red="24"
green="137" blue="210" alpha="255" />
<color name="AudioClip:contour" red="0" green="0" blue="0"
alpha="255" />
Index: resources/themes/ubuntu/traversotheme.xml
===================================================================
RCS file: /sources/traverso/traverso/resources/themes/ubuntu/traversotheme.xml,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -b -r1.7 -r1.8
--- resources/themes/ubuntu/traversotheme.xml 6 Mar 2009 10:56:47 -0000
1.7
+++ resources/themes/ubuntu/traversotheme.xml 13 Apr 2009 15:27:51 -0000
1.8
@@ -57,32 +57,20 @@
<color name="AudioClip:wavemacroview:outline" red="0" green="0"
blue="0" alpha="255" />
<color name="AudioClip:wavemacroview:outline:curvemode" red="0"
green="0" blue="0" alpha="255" />
<color name="AudioClip:wavemacroview:outline:muted" red="0"
green="0" blue="0" alpha="255" />
- <color name="AudioClip:wavemacroview:brush:top" red="169"
green="116" blue="72" alpha="255" />
- <color name="AudioClip:wavemacroview:brush:bottom" red="169"
green="116" blue="72" alpha="255" />
- <color name="AudioClip:wavemacroview:brush:hover:top" red="200"
green="145" blue="91" alpha="255" />
- <color name="AudioClip:wavemacroview:brush:hover:bottom"
red="200" green="145" blue="91" alpha="255" />
- <color name="AudioClip:wavemacroview:brush:muted:top" red="239"
green="236" blue="231" alpha="255" />
- <color name="AudioClip:wavemacroview:brush:muted:bottom"
red="239" green="236" blue="231" alpha="255" />
- <color name="AudioClip:wavemacroview:brush:curvemode:top"
red="169" green="116" blue="72" alpha="255" />
- <color name="AudioClip:wavemacroview:brush:curvemode:bottom"
red="169" green="116" blue="72" alpha="255" />
- <color name="AudioClip:wavemacroview:brush:curvemode:hover:top"
red="200" green="145" blue="91" alpha="255" />
- <color
name="AudioClip:wavemacroview:brush:curvemode:hover:bottom" red="200"
green="145" blue="91" alpha="255" />
+ <color name="AudioClip:wavemacroview:brush" red="169"
green="116" blue="72" alpha="255" />
+ <color name="AudioClip:wavemacroview:brush:hover" red="200"
green="145" blue="91" alpha="255" />
+ <color name="AudioClip:wavemacroview:brush:muted" red="239"
green="236" blue="231" alpha="255" />
+ <color name="AudioClip:wavemacroview:brush:curvemode" red="169"
green="116" blue="72" alpha="255" />
+ <color name="AudioClip:wavemacroview:brush:curvemode:hover"
red="200" green="145" blue="91" alpha="255" />
<color name="AudioClip:wavemicroview" red="169" green="116"
blue="72" alpha="255" />
<color name="AudioClip:wavemicroview:curvemode" red="169"
green="116" blue="72" alpha="255" />
- <color name="AudioClip:background:muted:top" red="239"
green="236" blue="231" alpha="150" />
- <color name="AudioClip:background:muted:bottom" red="239"
green="236" blue="231" alpha="150" />
- <color name="AudioClip:background:recording:top" red="239"
green="236" blue="231" alpha="150" />
- <color name="AudioClip:background:recording:bottom" red="239"
green="236" blue="231" alpha="150" />
- <color name="AudioClip:background:muted:mousehover:top"
red="239" green="236" blue="231" alpha="180" />
- <color name="AudioClip:background:muted:mousehover:bottom"
red="239" green="236" blue="231" alpha="180" />
- <color name="AudioClip:background:selected:top" red="251"
green="206" blue="138" alpha="180" />
- <color name="AudioClip:background:selected:bottom" red="251"
green="206" blue="138" alpha="180" />
- <color name="AudioClip:background:selected:mousehover:top"
red="251" green="206" blue="138" alpha="210" />
- <color name="AudioClip:background:selected:mousehover:bottom"
red="251" green="206" blue="138" alpha="210" />
- <color name="AudioClip:background:top" red="239" green="236"
blue="231" alpha="150" />
- <color name="AudioClip:background:bottom" red="239"
green="236" blue="231" alpha="150" />
- <color name="AudioClip:background:mousehover:top" red="239"
green="236" blue="231" alpha="180" />
- <color name="AudioClip:background:mousehover:bottom" red="239"
green="236" blue="231" alpha="180" />
+ <color name="AudioClip:background:muted" red="239" green="236"
blue="231" alpha="150" />
+ <color name="AudioClip:background:recording" red="239"
green="236" blue="231" alpha="150" />
+ <color name="AudioClip:background:muted:mousehover" red="239"
green="236" blue="231" alpha="180" />
+ <color name="AudioClip:background:selected" red="251"
green="206" blue="138" alpha="180" />
+ <color name="AudioClip:background:selected:mousehover"
red="251" green="206" blue="138" alpha="210" />
+ <color name="AudioClip:background" red="239" green="236"
blue="231" alpha="150" />
+ <color name="AudioClip:background:mousehover" red="239"
green="236" blue="231" alpha="180" />
<color name="AudioClip:channelseperator" red="200" green="100"
blue="000" alpha="255" />
<color name="AudioClip:channelseperator:selected" red="24"
green="137" blue="210" alpha="255" />
<color name="AudioClip:contour" red="0" green="0" blue="0"
alpha="255" />
Index: src/core/Themer.cpp
===================================================================
RCS file: /sources/traverso/traverso/src/core/Themer.cpp,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -b -r1.11 -r1.12
--- src/core/Themer.cpp 6 Feb 2009 14:39:21 -0000 1.11
+++ src/core/Themer.cpp 13 Apr 2009 15:27:51 -0000 1.12
@@ -17,7 +17,7 @@
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
-$Id: Themer.cpp,v 1.11 2009/02/06 14:39:21 r_sijrier Exp $
+$Id: Themer.cpp,v 1.12 2009/04/13 15:27:51 n_doebelin Exp $
*/
#include "Themer.h"
@@ -30,6 +30,7 @@
#include <QApplication>
#include <QStyle>
#include <QFileSystemWatcher>
+#include <QDebug>
// Always put me below _all_ includes, this is needed
@@ -209,6 +210,44 @@
colorNode = colorNode.nextSibling();
}
+ QDomNode gradientsNode = docElem.firstChildElement("gradients");
+ QDomNode gradientNode = gradientsNode.firstChild();
+
+ while(!gradientNode.isNull()) {
+ QLinearGradient gradient;
+
+ QDomElement e = gradientNode.toElement();
+ QString name = e.attribute("name", "");
+
+ QDomNode gradientStopNode = gradientNode.firstChild();
+
+ while(!gradientStopNode.isNull()) {
+ QDomElement ee = gradientStopNode.toElement();
+ QColor color(
+ ee.attribute("red").toUInt(),
+ ee.attribute("green").toUInt(),
+ ee.attribute("blue").toUInt(),
+ ee.attribute("alpha").toInt()
+ );
+
+ if (coloradjust != 100) {
+ int adjust = coloradjust - 100;
+ if (adjust < 0) {
+ color = color.dark(-1 * adjust + 100);
+ } else {
+ color = color.light(adjust + 100);
+ }
+ }
+
+ float value = ee.attribute("value", "0.0").toFloat();
+
+ gradient.setColorAt(value, color);
+ gradientStopNode = gradientStopNode.nextSibling();
+ }
+
+ m_gradients.insert(name, gradient);
+ gradientNode = gradientNode.nextSibling();
+ }
QDomNode fontsNode = docElem.firstChildElement("fonts");
QDomNode fontNode = fontsNode.firstChild();
@@ -268,6 +307,41 @@
}
}
+// Returns the brush with the name "name". QPoints "start" and "end" are the
+// start and finalStop positions of linear gradients. If a solid colour is
+// returned, both points are ignored.
+// If a gradient and a colour with the same name exists, colour brush will be
+// returned.
+QBrush Themer::get_brush(const QString& name, QPoint start, QPoint stop) const
+{
+ // check if there is a solid colour with the requested name.
+ if (m_colors.contains(name))
+ {
+ return QBrush(m_colors.value(name));
+ }
+
+ // no solid colour? Maybe it's a gradient.
+ if (m_gradients.contains(name))
+ {
+ QLinearGradient gradient = m_gradients.value(name);
+
+ // use a solid colour if the gradient only contains one stop
point.
+ // saves a huge amount of resources in the painting routines.
+ if (gradient.stops().size() == 1) {
+ return QBrush(gradient.stops().at(0).second);
+ }
+
+ gradient.setStart(start);
+ gradient.setFinalStop(stop);
+ gradient.setSpread(QGradient::ReflectSpread);
+
+ return QBrush(gradient);
+ }
+
+ // not a gradient either? return a fallback colour.
+ return QBrush(themer()->get_default_color(name));
+}
+
QFont Themer::get_font(const QString& fontname) const
{
return m_fonts.value(fontname);
@@ -310,7 +384,7 @@
QStringList Themer::get_builtin_themes()
{
QStringList list;
- list << "system-palette" << "medium-contrast" << "ubuntu" <<
"TraversoLight";
+ list << "system-palette" << "medium-contrast" << "gradients" <<
"ubuntu" << "TraversoLight";
return list;
}
@@ -336,32 +410,20 @@
if (name == "AudioClip:wavemacroview:outline") c =
p.color(QPalette::WindowText);
if (name == "AudioClip:wavemacroview:outline:curvemode") c =
p.color(QPalette::WindowText);
if (name == "AudioClip:wavemacroview:outline:muted") c =
p.color(QPalette::WindowText);
- if (name == "AudioClip:wavemacroview:brush:top") c =
p.color(QPalette::Highlight);
- if (name == "AudioClip:wavemacroview:brush:bottom") c =
p.color(QPalette::Highlight);
- if (name == "AudioClip:wavemacroview:brush:hover:top") c =
p.color(QPalette::Highlight);
- if (name == "AudioClip:wavemacroview:brush:hover:bottom") c =
p.color(QPalette::Highlight);
- if (name == "AudioClip:wavemacroview:brush:muted:top") c =
p.color(QPalette::Base);
- if (name == "AudioClip:wavemacroview:brush:muted:bottom") c =
p.color(QPalette::Base);
- if (name == "AudioClip:wavemacroview:brush:curvemode:top") c =
p.color(QPalette::Highlight);
- if (name == "AudioClip:wavemacroview:brush:curvemode:bottom") c
= p.color(QPalette::Highlight);
- if (name ==
"AudioClip:wavemacroview:brush:curvemode:hover:top") c =
p.color(QPalette::Highlight);
- if (name ==
"AudioClip:wavemacroview:brush:curvemode:hover:bottom") c =
p.color(QPalette::Highlight);
+ if (name == "AudioClip:wavemacroview:brush") c =
p.color(QPalette::Highlight);
+ if (name == "AudioClip:wavemacroview:brush:hover") c =
p.color(QPalette::Highlight);
+ if (name == "AudioClip:wavemacroview:brush:muted") c =
p.color(QPalette::Base);
+ if (name == "AudioClip:wavemacroview:brush:curvemode") c =
p.color(QPalette::Highlight);
+ if (name == "AudioClip:wavemacroview:brush:curvemode:hover") c
= p.color(QPalette::Highlight);
if (name == "AudioClip:wavemicroview") c =
p.color(QPalette::Highlight);
if (name == "AudioClip:wavemicroview:curvemode") c =
p.color(QPalette::Highlight);
- if (name == "AudioClip:background:muted:top") c =
p.color(QPalette::Base);
- if (name == "AudioClip:background:muted:bottom") c =
p.color(QPalette::Base);
- if (name == "AudioClip:background:recording:top") c =
p.color(QPalette::Base);
- if (name == "AudioClip:background:recording:bottom") c =
p.color(QPalette::Base);
- if (name == "AudioClip:background:muted:mousehover:top") c =
p.color(QPalette::Base);
- if (name == "AudioClip:background:muted:mousehover:bottom") c =
p.color(QPalette::Base);
- if (name == "AudioClip:background:selected:top") c =
p.color(QPalette::Highlight);
- if (name == "AudioClip:background:selected:bottom") c =
p.color(QPalette::Highlight);
- if (name == "AudioClip:background:selected:mousehover:top") c =
p.color(QPalette::Highlight);
- if (name == "AudioClip:background:selected:mousehover:bottom")
c = p.color(QPalette::Highlight);
- if (name == "AudioClip:background:top") c =
p.color(QPalette::Base);
- if (name == "AudioClip:background:bottom") c =
p.color(QPalette::Base);
- if (name == "AudioClip:background:mousehover:top") c =
p.color(QPalette::Base);
- if (name == "AudioClip:background:mousehover:bottom") c =
p.color(QPalette::Base);
+ if (name == "AudioClip:background:muted") c =
p.color(QPalette::Base);
+ if (name == "AudioClip:background:recording") c =
p.color(QPalette::Base);
+ if (name == "AudioClip:background:muted:mousehover") c =
p.color(QPalette::Base);
+ if (name == "AudioClip:background:selected") c =
p.color(QPalette::Highlight);
+ if (name == "AudioClip:background:selected:mousehover") c =
p.color(QPalette::Highlight);
+ if (name == "AudioClip:background") c = p.color(QPalette::Base);
+ if (name == "AudioClip:background:mousehover") c =
p.color(QPalette::Base);
if (name == "AudioClip:channelseperator") c =
p.color(QPalette::WindowText);
if (name == "AudioClip:channelseperator:selected") c =
p.color(QPalette::WindowText);
if (name == "AudioClip:contour") c =
p.color(QPalette::WindowText);
Index: src/core/Themer.h
===================================================================
RCS file: /sources/traverso/traverso/src/core/Themer.h,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -b -r1.3 -r1.4
--- src/core/Themer.h 15 Aug 2007 16:08:07 -0000 1.3
+++ src/core/Themer.h 13 Apr 2009 15:27:51 -0000 1.4
@@ -17,7 +17,7 @@
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- $Id: Themer.h,v 1.3 2007/08/15 16:08:07 n_doebelin Exp $
+ $Id: Themer.h,v 1.4 2009/04/13 15:27:51 n_doebelin Exp $
*/
#ifndef COLORMANAGER_H
@@ -25,6 +25,7 @@
#include <QObject>
#include <QColor>
+#include <QLinearGradient>
#include <QFont>
#include <QHash>
#include <QCursor>
@@ -51,6 +52,7 @@
QPalette system_palette() const {return m_systempallete;}
QStringList get_builtin_themes();
QCursor get_cursor(const QString& name) const;
+ QBrush get_brush(const QString& name, QPoint start = QPoint(0,0),
QPoint stop = QPoint(0,0)) const;
static Themer* instance();
@@ -58,6 +60,7 @@
Themer();
QHash<QString, QColor> m_colors;
+ QHash<QString, QLinearGradient> m_gradients;
QHash<QString, QVariant> m_properties;
QHash<QString, QFont> m_fonts;
QHash<QString, QCursor> m_cursors;
Index: src/sheetcanvas/AudioClipView.cpp
===================================================================
RCS file: /sources/traverso/traverso/src/sheetcanvas/AudioClipView.cpp,v
retrieving revision 1.27
retrieving revision 1.28
diff -u -b -r1.27 -r1.28
--- src/sheetcanvas/AudioClipView.cpp 4 Apr 2009 23:19:33 -0000 1.27
+++ src/sheetcanvas/AudioClipView.cpp 13 Apr 2009 15:27:51 -0000 1.28
@@ -47,6 +47,7 @@
#include "PluginChain.h"
#include <QFileDialog>
+#include <QLinearGradient>
#include "dialogs/AudioClipEditDialog.h"
#include "Fade.h"
#include "AudioDevice.h"
@@ -610,153 +611,45 @@
void AudioClipView::create_brushes()
{
- // make sure the brushes are made from solid colors (not gradients) if
top and bottom color are equal
+ /** TODO: The following part is identical to calculations in
draw_db_lines(). Move to a central place. **/
+ bool microView = m_sheet->get_hzoom() < 64 ? 1 : 0;
+ int height;
+ int channels = m_clip->get_channels();
- // create brushes for background states
- QColor bg_colRecTop =
themer()->get_color("AudioClip:background:recording:top");
- QColor bg_colRecBottom =
themer()->get_color("AudioClip:background:recording:Bottom");
- if (bg_colRecTop == bg_colRecBottom) {
- m_brushBgRecording = QBrush(bg_colRecTop);
- } else {
- QLinearGradient bg_gradientRec(QPoint(0, 0), QPoint(0,
m_height));
- bg_gradientRec.setSpread(QGradient::RepeatSpread);
- bg_gradientRec.setColorAt(0, bg_colRecTop);
- bg_gradientRec.setColorAt(1, bg_colRecBottom);
- m_brushBgRecording = QBrush(bg_gradientRec);
- }
-
- QColor bg_colMutedTop =
themer()->get_color("AudioClip:background:muted:top");
- QColor bg_colMutedBottom =
themer()->get_color("AudioClip:background:muted:bottom");
- if (bg_colMutedTop == bg_colMutedBottom) {
- m_brushBgMuted = QBrush(bg_colMutedTop);
- } else {
- QLinearGradient bg_gradientMuted(QPoint(0, 0), QPoint(0,
m_height));
- bg_gradientMuted.setSpread(QGradient::RepeatSpread);
- bg_gradientMuted.setColorAt(0, bg_colMutedTop);
- bg_gradientMuted.setColorAt(1, bg_colMutedBottom);
- m_brushBgMuted = QBrush(bg_gradientMuted);
- }
-
- QColor bg_colMutedHoverTop =
themer()->get_color("AudioClip:background:muted:mousehover:top");
- QColor bg_colMutedHoverBottom =
themer()->get_color("AudioClip:background:muted:mousehover:bottom");
- if (bg_colMutedHoverTop == bg_colMutedHoverBottom) {
- m_brushBgMutedHover = QBrush(bg_colMutedHoverTop);
- } else {
- QLinearGradient bg_gradientMutedHover(QPoint(0, 0), QPoint(0,
m_height));
- bg_gradientMutedHover.setSpread(QGradient::RepeatSpread);
- bg_gradientMutedHover.setColorAt(0, bg_colMutedHoverTop);
- bg_gradientMutedHover.setColorAt(1, bg_colMutedHoverBottom);
- m_brushBgMutedHover = QBrush(bg_gradientMutedHover);
- }
-
- QColor bg_colSelectedTop =
themer()->get_color("AudioClip:background:selected:top");
- QColor bg_colSelectedBottom =
themer()->get_color("AudioClip:background:selected:bottom");
- if (bg_colSelectedTop == bg_colSelectedBottom) {
- m_brushBgSelected = QBrush(bg_colSelectedTop);
- } else {
- QLinearGradient bg_gradientSelected(QPoint(0, 0), QPoint(0,
m_height));
- bg_gradientSelected.setSpread(QGradient::RepeatSpread);
- bg_gradientSelected.setColorAt(0, bg_colSelectedTop);
- bg_gradientSelected.setColorAt(1, bg_colSelectedBottom);
- m_brushBgSelected = QBrush(bg_gradientSelected);
- }
-
- QColor bg_colSelectedHoverTop =
themer()->get_color("AudioClip:background:selected:mousehover:top");
- QColor bg_colSelectedHoverBottom =
themer()->get_color("AudioClip:background:selected:mousehover:bottom");
- if (bg_colSelectedHoverTop == bg_colSelectedHoverBottom) {
- m_brushBgSelectedHover = QBrush(bg_colSelectedHoverTop);
- } else {
- QLinearGradient bg_gradientSelectedHover(QPoint(0, 0),
QPoint(0, m_height));
- bg_gradientSelectedHover.setSpread(QGradient::RepeatSpread);
- bg_gradientSelectedHover.setColorAt(0, bg_colSelectedHoverTop);
- bg_gradientSelectedHover.setColorAt(1,
bg_colSelectedHoverBottom);
- m_brushBgSelectedHover = QBrush(bg_gradientSelectedHover);
- }
-
- QColor bg_colTop = themer()->get_color("AudioClip:background:top");
- QColor bg_colBottom =
themer()->get_color("AudioClip:background:bottom");
- if (bg_colTop == bg_colBottom) {
- m_brushBg = QBrush(bg_colTop);
- } else {
- QLinearGradient bg_gradient(QPoint(0, 0), QPoint(0, m_height));
- bg_gradient.setSpread(QGradient::RepeatSpread);
- bg_gradient.setColorAt(0, bg_colTop);
- bg_gradient.setColorAt(1, bg_colBottom);
- m_brushBg = QBrush(bg_gradient);
- }
-
- QColor bg_colHoverTop =
themer()->get_color("AudioClip:background:mousehover:top");
- QColor bg_colHoverBottom =
themer()->get_color("AudioClip:background:mousehover:bottom");
- if (bg_colHoverTop == bg_colHoverBottom) {
- m_brushBgHover = QBrush(bg_colHoverTop);
- } else {
- QLinearGradient bg_gradientHover(QPoint(0, 0), QPoint(0,
m_height));
- bg_gradientHover.setSpread(QGradient::RepeatSpread);
- bg_gradientHover.setColorAt(0, bg_colHoverTop);
- bg_gradientHover.setColorAt(1, bg_colHoverBottom);
- m_brushBgHover = QBrush(bg_gradientHover);
- }
-
- // Foreground (Waveforms)
- QColor fg_colTop =
themer()->get_color("AudioClip:wavemacroview:brush:top");
- QColor fg_colBottom =
themer()->get_color("AudioClip:wavemacroview:brush:bottom");
- if (fg_colTop == fg_colBottom) {
- m_brushFg = QBrush(fg_colTop);
- } else {
- QLinearGradient fg_gradient(QPoint(0, 0), QPoint(0, m_height));
- fg_gradient.setSpread(QGradient::RepeatSpread);
- fg_gradient.setColorAt(0, fg_colTop);
- fg_gradient.setColorAt(1, fg_colBottom);
- m_brushFg = QBrush(fg_gradient);
- }
-
- QColor fg_colHoverTop =
themer()->get_color("AudioClip:wavemacroview:brush:hover:top");
- QColor fg_colHoverBottom =
themer()->get_color("AudioClip:wavemacroview:brush:hover:bottom");
- if (fg_colHoverTop == fg_colHoverBottom) {
- m_brushFgHover = QBrush(fg_colHoverTop);
- } else {
- QLinearGradient fg_gradientHover(QPoint(0, 0), QPoint(0,
m_height));
- fg_gradientHover.setSpread(QGradient::RepeatSpread);
- fg_gradientHover.setColorAt(0, fg_colHoverTop);
- fg_gradientHover.setColorAt(1, fg_colHoverBottom);
- m_brushFgHover = QBrush(fg_gradientHover);
- }
-
- QColor fg_colEditTop =
themer()->get_color("AudioClip:wavemacroview:brush:curvemode:top");
- QColor fg_colEditBottom =
themer()->get_color("AudioClip:wavemacroview:brush:curvemode:bottom");
- if (fg_colEditTop == fg_colEditBottom) {
- m_brushFgEdit = QBrush(fg_colEditTop);
- } else {
- QLinearGradient fg_gradientEdit(QPoint(0, 0), QPoint(0,
m_height));
- fg_gradientEdit.setSpread(QGradient::RepeatSpread);
- fg_gradientEdit.setColorAt(0, fg_colEditTop);
- fg_gradientEdit.setColorAt(1, fg_colEditBottom);
- m_brushFgEdit = QBrush(fg_gradientEdit);
- }
-
- QColor fg_colEditHoverTop =
themer()->get_color("AudioClip:wavemacroview:brush:curvemode:hover:top");
- QColor fg_colEditHoverBottom =
themer()->get_color("AudioClip:wavemacroview:brush:curvemode:hover:bottom");
- if (fg_colEditHoverTop == fg_colEditHoverBottom) {
- m_brushFgEditHover = QBrush(fg_colEditHoverTop);
- } else {
- QLinearGradient fg_gradientEditHover(QPoint(0, 0), QPoint(0,
m_height));
- fg_gradientEditHover.setSpread(QGradient::RepeatSpread);
- fg_gradientEditHover.setColorAt(0, fg_colEditHoverTop);
- fg_gradientEditHover.setColorAt(1, fg_colEditHoverBottom);
- m_brushFgEditHover = QBrush(fg_gradientEditHover);
- }
-
- QColor fg_colMutedTop =
themer()->get_color("AudioClip:wavemacroview:brush:muted:top");
- QColor fg_colMutedBottom =
themer()->get_color("AudioClip:wavemacroview:brush:muted:bottom");
- if (fg_colMutedTop == fg_colMutedBottom) {
- m_brushFgMuted = QBrush(fg_colMutedTop);
- } else {
- QLinearGradient fg_gradientMuted(QPoint(0, 0), QPoint(0,
m_height));
- fg_gradientMuted.setSpread(QGradient::RepeatSpread);
- fg_gradientMuted.setColorAt(0, fg_colMutedTop);
- fg_gradientMuted.setColorAt(1, fg_colMutedBottom);
- m_brushFgMuted = QBrush(fg_gradientMuted);
+ if (m_mergedView) {
+ channels = 1;
+ }
+
+ // calculate the height of one channel
+ if (m_height >= m_mimimumheightforinfoarea) {
+ height = (m_height - m_infoAreaHeight) / channels;
+ } else {
+ height = m_height / channels;
}
+
+ if (m_classicView || microView)
+ {
+ height *= 0.45;
+ } else {
+ height *= 0.95;
+ }
+ /** end of TODO **/
+
+ // create brushes for background states
+ m_brushBgRecording =
themer()->get_brush("AudioClip:background:recording", QPoint(0, 0), QPoint(0,
-m_height));
+ m_brushBgMuted = themer()->get_brush("AudioClip:background:muted",
QPoint(0, 0), QPoint(0, -m_height));
+ m_brushBgMutedHover =
themer()->get_brush("AudioClip:background:muted:mousehover", QPoint(0, 0),
QPoint(0, -m_height));
+ m_brushBgSelected =
themer()->get_brush("AudioClip:background:selected", QPoint(0, 0), QPoint(0,
-m_height));
+ m_brushBgSelectedHover =
themer()->get_brush("AudioClip:background:selected:mousehover", QPoint(0, 0),
QPoint(0, -m_height));
+ m_brushBg = themer()->get_brush("AudioClip:background", QPoint(0, 0),
QPoint(0, -m_height));
+ m_brushBgHover = themer()->get_brush("AudioClip:background:mousehover",
QPoint(0, 0), QPoint(0, -m_height));
+
+ // brushes for the wave form
+ m_brushFg = themer()->get_brush("AudioClip:wavemacroview:brush",
QPoint(0, 0), QPoint(0, -height));
+ m_brushFgHover =
themer()->get_brush("AudioClip:wavemacroview:brush:hover", QPoint(0, 0),
QPoint(0, -height));
+ m_brushFgMuted =
themer()->get_brush("AudioClip:wavemacroview:brush:muted", QPoint(0, 0),
QPoint(0, -height));
+ m_brushFgEdit =
themer()->get_brush("AudioClip:wavemacroview:brush:curvemode", QPoint(0, 0),
QPoint(0, -height));
+ m_brushFgEditHover =
themer()->get_brush("AudioClip:wavemacroview:brush:curvemode:hover", QPoint(0,
0), QPoint(0, -height));
}
void AudioClipView::create_clipinfo_string()
Index: src/sheetcanvas/SheetView.cpp
===================================================================
RCS file: /sources/traverso/traverso/src/sheetcanvas/SheetView.cpp,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -b -r1.14 -r1.15
--- src/sheetcanvas/SheetView.cpp 6 Mar 2009 18:03:54 -0000 1.14
+++ src/sheetcanvas/SheetView.cpp 13 Apr 2009 15:27:51 -0000 1.15
@@ -638,7 +638,7 @@
m_trackTopIndent = themer()->get_property("Sheet:track:topindent",
6).toInt();
m_clipsViewPort->setBackgroundBrush(themer()->get_color("Sheet:background"));
-
m_tpvp->setBackgroundBrush(themer()->get_color("TrackPanel:background"));
+ m_tpvp->setBackgroundBrush(themer()->get_brush("TrackPanel:background",
QPoint(0, 0), QPoint(0, m_tpvp->height())));
layout_tracks();
}
Index: resources/themes/gradients/.DS_Store
===================================================================
RCS file: resources/themes/gradients/.DS_Store
diff -N resources/themes/gradients/.DS_Store
Binary files /dev/null and /tmp/cvszO9VLF differ
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Traverso-commit] traverso resources/traverso.qrc resources/theme...,
Nicola Doebelin <=