diff options
| author | Tim E. Real <termtech@rogers.com> | 2010-12-19 06:23:40 +0000 | 
|---|---|---|
| committer | Tim E. Real <termtech@rogers.com> | 2010-12-19 06:23:40 +0000 | 
| commit | cec04808207cf8fae367c4dc07ab672691db2e60 (patch) | |
| tree | f8032f9260f6d80e9078b4fdb63c5c436c3f72ea /muse2/muse | |
| parent | 5f0c4bf5792d418a1e99a8e992547dd57272e14c (diff) | |
Fixed not saving part colours and part canvas background appearance settings.
Feature: Added 'global opaqueness' (transparency) appearance setting.
Diffstat (limited to 'muse2/muse')
| -rw-r--r-- | muse2/muse/appearance.cpp | 37 | ||||
| -rw-r--r-- | muse2/muse/appearance.h | 2 | ||||
| -rw-r--r-- | muse2/muse/arranger/pcanvas.cpp | 11 | ||||
| -rw-r--r-- | muse2/muse/conf.cpp | 53 | ||||
| -rw-r--r-- | muse2/muse/gconfig.cpp | 1 | ||||
| -rw-r--r-- | muse2/muse/gconfig.h | 1 | ||||
| -rw-r--r-- | muse2/muse/widgets/appearancebase.ui | 128 | ||||
| -rw-r--r-- | muse2/muse/widgets/musewidgetsplug.cpp | 1 | 
8 files changed, 194 insertions, 40 deletions
| diff --git a/muse2/muse/appearance.cpp b/muse2/muse/appearance.cpp index 0d094a71..08485503 100644 --- a/muse2/muse/appearance.cpp +++ b/muse2/muse/appearance.cpp @@ -73,6 +73,8 @@ Appearance::Appearance(Arranger* a, QWidget* parent)        fontName6->setToolTip(tr("Mixer label font. Auto-font-sizing up to chosen font size.\nWord-breaking but only with spaces."));        fontSize6->setToolTip(tr("Maximum mixer label auto-font-sizing font size.")); +      globalAlphaSlider->setToolTip(tr("Global opaqueness (inverse of transparency).")); +              // ARRANGER        /* @@ -165,6 +167,7 @@ Appearance::Appearance(Arranger* a, QWidget* parent)        connect(itemList, SIGNAL(itemSelectionChanged()), SLOT(colorItemSelectionChanged()));        connect(aPalette, SIGNAL(buttonClicked(int)), SLOT(paletteClicked(int))); +      connect(globalAlphaSlider, SIGNAL(valueChanged(int)), SLOT(asliderChanged(int)));        connect(rslider, SIGNAL(valueChanged(int)), SLOT(rsliderChanged(int)));        connect(gslider, SIGNAL(valueChanged(int)), SLOT(gsliderChanged(int)));        connect(bslider, SIGNAL(valueChanged(int)), SLOT(bsliderChanged(int))); @@ -172,6 +175,7 @@ Appearance::Appearance(Arranger* a, QWidget* parent)        connect(sslider, SIGNAL(valueChanged(int)), SLOT(ssliderChanged(int)));        connect(vslider, SIGNAL(valueChanged(int)), SLOT(vsliderChanged(int))); +      connect(globalAlphaVal, SIGNAL(valueChanged(int)), SLOT(aValChanged(int)));        connect(rval, SIGNAL(valueChanged(int)), SLOT(rsliderChanged(int)));        connect(gval, SIGNAL(valueChanged(int)), SLOT(gsliderChanged(int)));        connect(bval, SIGNAL(valueChanged(int)), SLOT(bsliderChanged(int))); @@ -309,6 +313,13 @@ void Appearance::resetValues()                    }              } +      globalAlphaSlider->blockSignals(true); +      globalAlphaVal->blockSignals(true); +      globalAlphaSlider->setValue(config->globalAlphaBlend); +      globalAlphaVal->setValue(config->globalAlphaBlend); +      globalAlphaSlider->blockSignals(false); +      globalAlphaVal->blockSignals(false); +              updateColor();        } @@ -449,6 +460,8 @@ void Appearance::apply()        config->canvasShowGrid = arrGrid->isChecked(); +      config->globalAlphaBlend = globalAlphaVal->value(); +              // set colors...        ::config = *config;        muse->changeConfig(true); @@ -560,12 +573,14 @@ void Appearance::colorItemSelectionChanged()  void Appearance::updateColor()        {        int r, g, b, h, s, v; +      //globalAlphaSlider->setEnabled(color);        rslider->setEnabled(color);        gslider->setEnabled(color);        bslider->setEnabled(color);        hslider->setEnabled(color);        sslider->setEnabled(color);        vslider->setEnabled(color); +      //globalAlphaVal->setEnabled(color);        rval->setEnabled(color);        gval->setEnabled(color);        bval->setEnabled(color); @@ -575,10 +590,14 @@ void Appearance::updateColor()        if (color == 0)              return;        QPalette pal; -      pal.setColor(colorframe->backgroundRole(), *color); +      QColor cfc(*color); +      cfc.setAlpha(globalAlphaVal->value()); +      pal.setColor(colorframe->backgroundRole(), cfc);        colorframe->setPalette(pal);        color->getRgb(&r, &g, &b);        color->getHsv(&h, &s, &v); +      //a = color->alpha(); +      //a = config->globalAlphaBlend;        rslider->blockSignals(true);        gslider->blockSignals(true); @@ -620,6 +639,22 @@ void Appearance::updateColor()        vval->blockSignals(false);        } +void Appearance::asliderChanged(int val) +      { +      globalAlphaVal->blockSignals(true); +      globalAlphaVal->setValue(val); +      globalAlphaVal->blockSignals(false); +      updateColor(); +      } + +void Appearance::aValChanged(int val) +      { +      globalAlphaSlider->blockSignals(true); +      globalAlphaSlider->setValue(val); +      globalAlphaSlider->blockSignals(false); +      updateColor(); +      } +  void Appearance::rsliderChanged(int val)        {        int r, g, b; diff --git a/muse2/muse/appearance.h b/muse2/muse/appearance.h index de0ceb31..daedc2ce 100644 --- a/muse2/muse/appearance.h +++ b/muse2/muse/appearance.h @@ -42,6 +42,8 @@ class Appearance : public QDialog, public Ui::AppearanceDialogBase {        void browseFont4();        void browseFont5();        void browseFont6(); +      void asliderChanged(int); +      void aValChanged(int);        void rsliderChanged(int);        void gsliderChanged(int);        void bsliderChanged(int); diff --git a/muse2/muse/arranger/pcanvas.cpp b/muse2/muse/arranger/pcanvas.cpp index 1d7cfd54..d2dda050 100644 --- a/muse2/muse/arranger/pcanvas.cpp +++ b/muse2/muse/arranger/pcanvas.cpp @@ -1458,7 +1458,16 @@ void PartCanvas::drawItem(QPainter& p, const CItem* item, const QRect& rect)        else {              bool clone = part->events()->arefCount() > 1;              p.setPen(QPen(Qt::black, 2, clone ? Qt::DashLine : Qt::SolidLine)); -            p.setBrush(config.partColors[i]); +             +            //p.setBrush(config.partColors[i]); +            QColor c(config.partColors[i]); +            c.setAlpha(config.globalAlphaBlend); +            p.setBrush(c); +            //p.setBrush(QColor(config.partColors[i].red(),  +            //                  config.partColors[i].green(),  +            //                  config.partColors[i].blue(), +            //                  127));    +                                     p.drawRect(r);              } diff --git a/muse2/muse/conf.cpp b/muse2/muse/conf.cpp index 64be7faa..3f7c33e7 100644 --- a/muse2/muse/conf.cpp +++ b/muse2/muse/conf.cpp @@ -537,6 +537,8 @@ void readConfiguration(Xml& xml, bool readOnlySequencer)                                config.fonts[5].fromString(xml.parse1());                          else if (tag == "font6")                                config.fonts[6].fromString(xml.parse1()); +                        else if (tag == "globalAlphaBlend") +                              config.globalAlphaBlend = xml.parseInt();                          else if (tag == "palette0")                                config.palette[0] = readColor(xml);                          else if (tag == "palette1") @@ -571,6 +573,44 @@ void readConfiguration(Xml& xml, bool readOnlySequencer)                                config.palette[15] = readColor(xml);                          else if (tag == "palette16")                                config.palette[16] = readColor(xml); +                        else if (tag == "partColor0") +                              config.partColors[0] = readColor(xml); +                        else if (tag == "partColor1") +                              config.partColors[1] = readColor(xml); +                        else if (tag == "partColor2") +                              config.partColors[2] = readColor(xml); +                        else if (tag == "partColor3") +                              config.partColors[3] = readColor(xml); +                        else if (tag == "partColor4") +                              config.partColors[4] = readColor(xml); +                        else if (tag == "partColor5") +                              config.partColors[5] = readColor(xml); +                        else if (tag == "partColor6") +                              config.partColors[6] = readColor(xml); +                        else if (tag == "partColor7") +                              config.partColors[7] = readColor(xml); +                        else if (tag == "partColor8") +                              config.partColors[8] = readColor(xml); +                        else if (tag == "partColor9") +                              config.partColors[9] = readColor(xml); +                        else if (tag == "partColor10") +                              config.partColors[10] = readColor(xml); +                        else if (tag == "partColor11") +                              config.partColors[11] = readColor(xml); +                        else if (tag == "partColor12") +                              config.partColors[12] = readColor(xml); +                        else if (tag == "partColor13") +                              config.partColors[13] = readColor(xml); +                        else if (tag == "partColor14") +                              config.partColors[14] = readColor(xml); +                        else if (tag == "partColor15") +                              config.partColors[15] = readColor(xml); +                        else if (tag == "partColor16") +                              config.partColors[16] = readColor(xml); +                        else if (tag == "partColor17") +                              config.partColors[17] = readColor(xml); +                        else if (tag == "partCanvasBg") +                              config.partCanvasBg = readColor(xml);                          else if (tag == "trackBg")                                config.trackBg = readColor(xml);                          else if (tag == "selectTrackBg") @@ -683,6 +723,8 @@ void readConfiguration(Xml& xml, bool readOnlySequencer)                                config.bigTimeBackgroundColor = readColor(xml);                          else if (tag == "transportHandleColor")                                config.transportHandleColor = readColor(xml); +                        else if (tag == "waveEditBackgroundColor") +                              config.waveEditBackgroundColor = readColor(xml);                          else if (tag == "txDeviceId")                                  //txDeviceId = xml.parseInt();                                  xml.parseInt(); @@ -1114,12 +1156,22 @@ void MusE::writeGlobalConfiguration(int level, Xml& xml) const              sprintf(buffer, "font%d", i);              xml.strTag(level, buffer, config.fonts[i].toString());              } +             +      xml.intTag(level, "globalAlphaBlend", config.globalAlphaBlend); +              for (int i = 0; i < 16; ++i) {              char buffer[32];              sprintf(buffer, "palette%d", i);              xml.colorTag(level, buffer, config.palette[i]);              } +      for (int i = 0; i < NUM_PARTCOLORS; ++i) { +            char buffer[32]; +            sprintf(buffer, "partColor%d", i); +            xml.colorTag(level, buffer, config.partColors[i]); +            } + +      xml.colorTag(level, "partCanvasBg",  config.partCanvasBg);        xml.colorTag(level, "trackBg",       config.trackBg);        xml.colorTag(level, "selectTrackBg", config.selectTrackBg);        xml.colorTag(level, "selectTrackFg", config.selectTrackFg); @@ -1210,6 +1262,7 @@ void MusE::writeGlobalConfiguration(int level, Xml& xml) const        xml.colorTag(level, "transportHandleColor",  config.transportHandleColor);        xml.colorTag(level, "bigtimeForegroundcolor", config.bigTimeForegroundColor);        xml.colorTag(level, "bigtimeBackgroundcolor", config.bigTimeBackgroundColor); +      xml.colorTag(level, "waveEditBackgroundColor", config.waveEditBackgroundColor);        writeSeqConfiguration(level, xml, false); diff --git a/muse2/muse/gconfig.cpp b/muse2/muse/gconfig.cpp index 00b89374..6c0df0b8 100644 --- a/muse2/muse/gconfig.cpp +++ b/muse2/muse/gconfig.cpp @@ -9,6 +9,7 @@  #include "gconfig.h"  GlobalConfigValues config = { +      128,                        // globalAlphaBlend            {          QColor(0xff, 0xff, 0xff),   // palette          QColor(0xff, 0xff, 0xff), diff --git a/muse2/muse/gconfig.h b/muse2/muse/gconfig.h index 58b223dc..79c66d99 100644 --- a/muse2/muse/gconfig.h +++ b/muse2/muse/gconfig.h @@ -48,6 +48,7 @@ struct MixerConfig {  //---------------------------------------------------------  struct GlobalConfigValues { +      int globalAlphaBlend;        QColor palette[16];        QColor partColors[NUM_PARTCOLORS];  	QColor transportHandleColor; diff --git a/muse2/muse/widgets/appearancebase.ui b/muse2/muse/widgets/appearancebase.ui index 047f34b9..7a71f90f 100644 --- a/muse2/muse/widgets/appearancebase.ui +++ b/muse2/muse/widgets/appearancebase.ui @@ -7,7 +7,7 @@      <x>0</x>      <y>0</y>      <width>591</width> -    <height>597</height> +    <height>633</height>     </rect>    </property>    <property name="windowTitle"> @@ -22,6 +22,9 @@         <verstretch>0</verstretch>        </sizepolicy>       </property> +     <property name="currentIndex"> +      <number>0</number> +     </property>       <widget class="QWidget" name="tab1">        <attribute name="title">         <string>Arranger</string> @@ -197,7 +200,7 @@        <attribute name="title">         <string>Colors</string>        </attribute> -      <layout class="QVBoxLayout"> +      <layout class="QVBoxLayout" name="verticalLayout">         <item>          <layout class="QGridLayout">           <item row="0" column="1"> @@ -701,28 +704,77 @@           </item>           <item row="0" column="0" rowspan="3">            <widget class="QTreeWidget" name="itemList"> -           <property name="allColumnsShowFocus"> +           <property name="rootIsDecorated">              <bool>true</bool>             </property> -           <property name="rootIsDecorated"> +           <property name="allColumnsShowFocus">              <bool>true</bool>             </property>             <column>              <property name="text">               <string>Items</string>              </property> -            <property name="clickable"> -             <bool>false</bool> -            </property> -            <property name="resizable"> -             <bool>false</bool> -            </property>             </column>            </widget>           </item>          </layout>         </item>         <item> +        <layout class="QHBoxLayout" name="horizontalLayout"> +         <item> +          <widget class="QLabel" name="textLabel1_2"> +           <property name="sizePolicy"> +            <sizepolicy hsizetype="Preferred" vsizetype="Minimum"> +             <horstretch>0</horstretch> +             <verstretch>0</verstretch> +            </sizepolicy> +           </property> +           <property name="text"> +            <string>Global opaqueness</string> +           </property> +           <property name="alignment"> +            <set>Qt::AlignCenter</set> +           </property> +           <property name="wordWrap"> +            <bool>false</bool> +           </property> +          </widget> +         </item> +         <item> +          <widget class="QSpinBox" name="globalAlphaVal"> +           <property name="maximum"> +            <number>255</number> +           </property> +          </widget> +         </item> +         <item> +          <widget class="QSlider" name="globalAlphaSlider"> +           <property name="sizePolicy"> +            <sizepolicy hsizetype="Expanding" vsizetype="Minimum"> +             <horstretch>0</horstretch> +             <verstretch>0</verstretch> +            </sizepolicy> +           </property> +           <property name="minimum"> +            <number>0</number> +           </property> +           <property name="maximum"> +            <number>255</number> +           </property> +           <property name="tracking"> +            <bool>true</bool> +           </property> +           <property name="orientation"> +            <enum>Qt::Horizontal</enum> +           </property> +           <property name="tickPosition"> +            <enum>QSlider::NoTicks</enum> +           </property> +          </widget> +         </item> +        </layout> +       </item> +       <item>          <spacer name="botColorSpacer">           <property name="orientation">            <enum>Qt::Vertical</enum> @@ -834,34 +886,34 @@             </layout>            </item>            <item> -            <layout class="QHBoxLayout" > -              <item> -                <widget class="QLabel" name="label_41" > -                  <property name="text" > -                    <string>Style Sheet:</string> -                  </property> -                </widget> -              </item> -              <item> -                <widget class="QLineEdit" name="styleSheetPath" /> -              </item> -              <item> -                <widget class="QToolButton" name="openStyleSheet" > -                  <property name="text" > -                    <string>...</string> -                  </property> -                </widget> -              </item> -              <item> -                <widget class="QToolButton" name="defaultStyleSheet" > -                  <property name="text" > -                    <string>...</string> -                  </property> -                </widget> -              </item> -            </layout> -           </item> -           <item> +           <layout class="QHBoxLayout"> +            <item> +             <widget class="QLabel" name="label_41"> +              <property name="text"> +               <string>Style Sheet:</string> +              </property> +             </widget> +            </item> +            <item> +             <widget class="QLineEdit" name="styleSheetPath"/> +            </item> +            <item> +             <widget class="QToolButton" name="openStyleSheet"> +              <property name="text"> +               <string>...</string> +              </property> +             </widget> +            </item> +            <item> +             <widget class="QToolButton" name="defaultStyleSheet"> +              <property name="text"> +               <string>...</string> +              </property> +             </widget> +            </item> +           </layout> +          </item> +          <item>             <spacer name="spacer3">              <property name="orientation">               <enum>Qt::Vertical</enum> diff --git a/muse2/muse/widgets/musewidgetsplug.cpp b/muse2/muse/widgets/musewidgetsplug.cpp index 4ec8b3a2..577a9c82 100644 --- a/muse2/muse/widgets/musewidgetsplug.cpp +++ b/muse2/muse/widgets/musewidgetsplug.cpp @@ -39,6 +39,7 @@ static const char* valu[] = {        };  GlobalConfigValues config = { +      128,                        // globalAlphaBlend            {          QColor(0xff, 0xff, 0xff),   // palette          QColor(0xff, 0xff, 0xff), | 
