Since the release of the next version of LMMS is getting near, I thought it'd be nice to post some guidelines on porting themes from 0.4.15 to the new LMMS.
This covers the most important things, some things may still be added but probably not too many, I'll update this text if needed.
=======================
Stylesheet
----------
Namechanges:
trackContainerView -> TrackContainerView
Additions - OpulenZ plugin knob style:
This is needed for the new instrument. You can leave it as is or modify the knob line colour, like on other instruments.
Additions - sfxr plugin knob style:
Same as above.
The default stylesheet now also contains separate colours for the sfxr knobs. Your theme will work without these, but the knobs will not look as nice. Copy-paste them from the default theme CSS if you want them preserved.
Additions - Palette block:
Notes: each line must begin with "palette:", with no leading whitespace, and the next word must be written right next to it - no space after the colon (:). The color value **MUST** be of the form #RRGGBB, no rgb(x,y,z) or rgba(x,y,z,a), no #RGB. I know this is a bit clunky and hacky, but that's how it is right now and at least it lets you modify colours.
Omitting the palette block will not break the theme, but instead the default colours will be used for things - so you'll probably want to add it in and modify the colour values to make them fit your theme.
The "brighttext" colour is used on the FX mixer to highlight the text of the active channel, and on those blinky things on the instrument tracks that blink in time with the notes.
"button" is used as the base colour for buttons, although you can override this with CSS so it's not all that useful. "buttontext" is the same.
"highlight" and "highlightedtext" - like it says on the tin. Again, these can be overridden with CSS - but not everywhere, I think... so better set them just in case.
"windowtext" is an important one: it is used for the lines on the default knobs (not ones on instruments), both the large and small ones. So you can now style your knobs better!
Look at the new stylesheet for hints on how to do some more cool things, such as modifying scrollbars, or that neat (if I say so myself) popping-up effect of the text boxes.
Addition - pattern colours:
Defines the colours for patterns in the song editor.
Images
------
This covers the most important things, some things may still be added but probably not too many, I'll update this text if needed.
=======================
Stylesheet
----------
Namechanges:
trackContainerView -> TrackContainerView
Additions - OpulenZ plugin knob style:
Code: Select all
opl2instrumentView knob {
color: rgb(128,128,128);
qproperty-outerColor: rgb(255,255,255);
qproperty-innerRadius: 2;
qproperty-outerRadius: 9;
qproperty-lineWidth: 2;
}
Additions - sfxr plugin knob style:
Code: Select all
sfxrInstrumentView knob {
color: #b06319;
qproperty-outerColor: rgb(194, 177, 145);
qproperty-innerRadius: 2;
qproperty-outerRadius: 10;
qproperty-lineWidth: 2;
}
The default stylesheet now also contains separate colours for the sfxr knobs. Your theme will work without these, but the knobs will not look as nice. Copy-paste them from the default theme CSS if you want them preserved.
Additions - Palette block:
Code: Select all
palette:background {color: #5b6571}
palette:windowtext {color: #f0f0f0}
palette:base {color: #808080}
palette:text {color: #e0e0e0}
palette:button {color: #c9c9c9}
palette:shadow {color: #000000}
palette:buttontext {color: #000000}
palette:brighttext {color: #4afd85}
palette:highlight {color: #202020}
palette:highlightedtext {color: #ffffff}
Omitting the palette block will not break the theme, but instead the default colours will be used for things - so you'll probably want to add it in and modify the colour values to make them fit your theme.
The "brighttext" colour is used on the FX mixer to highlight the text of the active channel, and on those blinky things on the instrument tracks that blink in time with the notes.
"button" is used as the base colour for buttons, although you can override this with CSS so it's not all that useful. "buttontext" is the same.
"highlight" and "highlightedtext" - like it says on the tin. Again, these can be overridden with CSS - but not everywhere, I think... so better set them just in case.
"windowtext" is an important one: it is used for the lines on the default knobs (not ones on instruments), both the large and small ones. So you can now style your knobs better!
Look at the new stylesheet for hints on how to do some more cool things, such as modifying scrollbars, or that neat (if I say so myself) popping-up effect of the text boxes.
Addition - pattern colours:
Code: Select all
/* instrument pattern */
patternView {
color: rgb( 119, 199, 216 );
}
/* sample track pattern */
SampleTCOView {
color: rgb( 74, 253, 133 );
}
/* automation pattern */
AutomationPatternView {
color: #99afff;
}
Images
------
- fader_knob.png
- progression_linear.png
- progression_discrete.png
- progression_cubic_hermite.png
- step_btn_add.png
- step_btn_remove.png
- bb_track_btn.png