Some parts of the style are not editable?

Ask a generic question about the usage of QLC+, not related to a particular operating system
User avatar
NukeTheFox
Posts: 28
Joined: Sun Jul 23, 2023 11:27 am
Real Name: Andreu Busom

I'm doing a custom stylesheet, and it seems I can't change some things, like for example, the colour of the universe tabs in the I/O menu, the VC grand master, and the faders of the simple desk. I've searched in the Qt webpage and tried some classes but I can't make it work.
I think the reason may be one of these:
1. The style for those items is something we can't customize, which would be a shame if it's intentional, or
2. I don't know how to write those widget names in the stylesheet.

If it turns out to be the second option, has anyone thought about it before? How would I specify the name of these widgets?

Tried customizing the universes tabs:
QLC_custom_1.png
Tried customizing the faders:
QLC_custom_2.png
User avatar
mcallegari
Posts: 4482
Joined: Sun Apr 12, 2015 9:09 am
Location: Italy
Real Name: Massimo Callegari
Contact:

Hi, some styles are hardcoded in the C++ code.
The only way to change them is to rebuild QLC+. Sorry
User avatar
NukeTheFox
Posts: 28
Joined: Sun Jul 23, 2023 11:27 am
Real Name: Andreu Busom

Oh, I understand, thanks Massimo. Btw I didn't mean to underappreciate your work, I love the software. As a suggestion, maybe you could specify this in the documentation, in the "GUI" page. Just a short note saying the hardcode overwrites the stylesheet, so people will know why they can't customize some things.
Yestalgia
Posts: 371
Joined: Thu Jun 17, 2021 9:31 am
Location: Australia
Real Name:
Contact:

NukeTheFox wrote: Mon Sep 25, 2023 7:31 am Oh, I understand, thanks Massimo. Btw I didn't mean to underappreciate your work, I love the software. As a suggestion, maybe you could specify this in the documentation, in the "GUI" page. Just a short note saying the hardcode overwrites the stylesheet, so people will know why they can't customize some things.
You're welcome to suggest changes to the docs via the docs github :) (You can even edit the docs through the GitHub Markdown Editor)

I've raised this pull request for you as an example: https://github.com/mcallegari/qlcplus-docs/pull/9
jeremyAMMD
Posts: 7
Joined: Sun Dec 02, 2018 1:43 pm
Real Name:

Hi, I got the same issue.
And I didn't find the way to edit colors of the virtual console throw the qlcplusStyle.qss
@NukeTheFox, do you find a way to do this?

For those who are interested, here is an advanced version i made of the blue-ish dark style from the documentation.

Code: Select all

QMainWindow, QDialog
{
 background-color: #404B57;
 color: #E6E6E6;
}

QTreeWidget
{
 background-color: #404B57;
 alternate-background-color: #404B57;
 color: #E6E6E6;
}
QTextBrowser
{
 background-color: #404B57;
 color: #E6E6E6;
 }
   
QFrame, QLabel, QToolTip
 {
 background-color: #404B57;
 }

QGroupBox, QGroupBox::title, QGroupBox::indicator
 {
 background-color: #404B57;
 color: #E6E6E6;
 }

QHeaderView::section
 {
 background-color: #404B57;
 color: #E6E6E6;
 }

QLineEdit
 {
 background-color: #404B57;
 color: #E6E6E6;
 }

QListView
 {
 alternate-background-color: #5A6570;
 }

QPushButton
 {
 background-color: #404B57;
 color: #E6E6E6;
 }   

QPushButton:pressed
 {
 background-color: #5A6570;
 color: #E6E6E6;
 }  

QRadioButton::indicator
 {
 background-color: #5A6570;
 } 

QRadioButton::indicator::checked
 {
 background-color: #308CC6;
 } 

QScrollBar:horizontal 
{
     height: 15px;
 background-color: #404B57;
 color: #E6E6E6;
 } 
  
QScrollBar:vertical
{ 
     width: 15px;
 background-color: #404B57;
 color: #E6E6E6;
 } 

QSpinBox
 {
 background-color: #404B57;
 color: #E6E6E6;
 } 

QTabBar::tab  
 {
 background-color: #404B57;
 color: #E6E6E6;
 } 
 
QTabBar::tab:selected, QTabBar::tab:hover
 {
 background-color: #5A6570;
 color: #E6E6E6;
 }

QToolBar
  {
 background-color: #404B57;
 color: #E6E6E6;
 }
 
QToolButton, QToolButton::menu-arrow:open
      {
 background-color: #404B57;
 color: #E6E6E6;
 }   

QTreeView {
     alternate-background-color: #5A6570;
 }

QComboBox
      {
 background-color: #404B57;
 color: #E6E6E6;
 } 
 
QMenu
 {
    background-color: #5A6570;
    color: #E6E6E6;
}

QMenu::item
 {
    background-color: #404B57;
} 
 
QMenu::item:selected { /* when user selects item using mouse or keyboard */
    background-color: #5A6570;
}

QTabWidget
     {
 background-color: #404B57;
 color: #E6E6E6;
 }

see github for update on this: https://github.com/SouvPonk/qlcplus-dark-theme
Last edited by jeremyAMMD on Tue Oct 10, 2023 7:13 am, edited 2 times in total.
AMMD - Freak and Free Arts Coo[R]p
http://www.ammd.net
http://baronsfreaks.org/
User avatar
sandinak
Posts: 188
Joined: Mon Apr 03, 2017 5:40 pm
Location: Yorktown, VA
Real Name: Branson Matheson
Contact:

If you've not seen it... we're maintaining a theme here: https://github.com/EmerickH/qlcplus-dark-theme .. would love it if you published your version as well ;)
jeremyAMMD
Posts: 7
Joined: Sun Dec 02, 2018 1:43 pm
Real Name:

Fine!
I made a fork : https://github.com/SouvPonk/qlcplus-dark-theme
I used some stuff you made to improve.
Thanks.
AMMD - Freak and Free Arts Coo[R]p
http://www.ammd.net
http://baronsfreaks.org/
User avatar
NukeTheFox
Posts: 28
Joined: Sun Jul 23, 2023 11:27 am
Real Name: Andreu Busom

Hi @jeremyAMMD,
I'm creating a theme that looks like Grand MA2. I've managed to finish the look of the main window (see first image).

I also found the way to modify the theme of the secondary windows (the "pop-up" ones) and the widgets (for example, the section where the scene's and sequences' faders are), which is specifying a "QWidget {}" class in the qss file. When I tried this for the first time, it worked, but then I realized that the entire virtual console counts as a QWidget, and with that class specified in the qss file, the virtual console and its widgets couldn't be customized later. So I had to delete that class from the qss.

Now I can't find a way to specify the style for the secondary windows and all that stuff without using the QWidget class. I have to say I've been reading the Qt documentation for some days. As you can see, on the first image it looks really good, but on the second image, it looks horrible like this. I've marked what's left to modify.

Main Window:
mainwindow.png
What's left to customize:
1. the colour of these letters
2. the pop-up windows (the only thing that's correct here are the text fields)
3. these type of widgets.
QLCplusToDo.png
Here's a link to my QSS file. I hope there's some way to do this, it would look amazing, and useful on a dark front of house: https://github.com/Nukethefox/QLCplus-MA2theme
DavidGrc
Posts: 59
Joined: Thu Oct 15, 2020 8:28 am
Location: France
Real Name: David Gouronc

Thank you for all your propositions ! I'm happy to try and use it :D
Yestalgia
Posts: 371
Joined: Thu Jun 17, 2021 9:31 am
Location: Australia
Real Name:
Contact:

NukeTheFox wrote: Sat Oct 14, 2023 10:38 am Hi @jeremyAMMD,
I'm creating a theme that looks like Grand MA2. I've managed to finish the look of the main window (see first image).
The MA2 theme you've made is wild!
User avatar
NukeTheFox
Posts: 28
Joined: Sun Jul 23, 2023 11:27 am
Real Name: Andreu Busom

Yestalgia wrote: Tue Oct 17, 2023 10:57 am The MA2 theme you've made is wild!
Thank you so much! I hope I can finish those little details I have mentioned, but I don't know how to do it right now.

Maybe there is a method to make the virtual console ignore the "QWidget" from the .qss file, but I think the easiest way would be to know how are those windows and widgets called in the original code (for example "QSecondarywindow" or something similar, I don't know). That way, we could specify something like "the pop-up windows will have this colour" and so on.

Would be amazing if that is possible. I'm willing to improve the theme, and I'm open to messages. ;)
User avatar
NukeTheFox
Posts: 28
Joined: Sun Jul 23, 2023 11:27 am
Real Name: Andreu Busom

Hello everybody: about what I was saying in the last post, I made a document where I explain the problem with the stylesheet and the VC, and some interesting things I found out while trying different classes in the stylesheet.
Could be interesting for anyone who wants to try and finish the MA2 theme / make their theme.

The link goes to a PDF document

https://github.com/Nukethefox/QLCplus-M ... 0notes.pdf
User avatar
mcallegari
Posts: 4482
Joined: Sun Apr 12, 2015 9:09 am
Location: Italy
Real Name: Massimo Callegari
Contact:

Just to add a little note.
Faders in the Scene editor and in Simple Desk can be displayed with several colors depending on the status.

Immagine 2023-10-19 090220.png
Immagine 2023-10-19 090229.png

To achieve that I used Qt stylesheets but they are dynamically changed by the C++ code.
Example: https://github.com/mcallegari/qlcplus/b ... sk.cpp#L65
It could be possible to make them physical files and load them at startup.
This however would mean to organize a little bit better custom style files for example in a dedicated folder (they will be like 6-7 files)

At this stage I am investing my time as much as I can on version 5 but I think I can spend a few hours on this too if it is of great interest
User avatar
NukeTheFox
Posts: 28
Joined: Sun Jul 23, 2023 11:27 am
Real Name: Andreu Busom

Thanks for your response Massimo, that is interesting.
I would just like to finish the small details for the theme (the ones I pointed out in the pdf document).
Yes, I think there are at least a few people interested, myself for example, the MA2 theme would be very cool. If you have time and you want to try something about it, or give us some info on how we could do it ourselves, that would be amazing.
User avatar
NukeTheFox
Posts: 28
Joined: Sun Jul 23, 2023 11:27 am
Real Name: Andreu Busom

UPDATE! A user found a way to solve the problem with some of the popup windows and functions' widgets!

Just add "QGroupBox" to the stylesheet, like this:

Code: Select all

QGroupBox {
  color: white;
  font-size: 15px;
  background: #2c2c2c;
}
I will update this in the github later
User avatar
mcallegari
Posts: 4482
Joined: Sun Apr 12, 2015 9:09 am
Location: Italy
Real Name: Massimo Callegari
Contact:

Hey guys I've got some good news on this.
I spent some time and started a change to load several styles all from the same file.
The same file is used (qlcplusStyle.qss) but with a separator and keywords to identify each style section
See attached file. If some parts are still missing please let me know. Adding them now should be trivial.
If you have a GitHub account you can download the latest build including this change.
Attachments
qlcplusStyle.txt
(6.43 KiB) Downloaded 313 times
Yestalgia
Posts: 371
Joined: Thu Jun 17, 2021 9:31 am
Location: Australia
Real Name:
Contact:

mcallegari wrote: Thu Oct 26, 2023 7:06 pm Hey guys I've got some good news on this.
I spent some time and started a change to load several styles all from the same file.
This is definitely good news. I can't wait to start building new themes.

Cheers
User avatar
sbenejam
Posts: 550
Joined: Sun Apr 12, 2015 6:28 pm
Real Name: Santiago Benejam Torres
Contact:

I made some tests with this new feature. I found that cannot change some widgets background colors if the widget has the frame set to Raised or Sunken. I had to set to None to get the color. It seems that if the widget is set to Raised or Sunken the color only changes the border. This happens with the style file loaded and without the style file.
OS: Ubuntu 22.04
Default Ubuntu Qt5
Window Manager KDE Plasma
QLC+ 4.12.8 from GIT
User avatar
NukeTheFox
Posts: 28
Joined: Sun Jul 23, 2023 11:27 am
Real Name: Andreu Busom

I tried writing the new things you added to the file

Code: Select all

============== SIMPLE_DESK_ODD
============== SIMPLE_DESK_EVEN
============== SIMPLE_DESK_OVERRIDE
============== GRANDMASTER
 
but nothing happens to the grandmaster or the simple desk. Maybe it has something to do with what @sbenejam is telling us. Tho I found out that, with this section:

Code: Select all

QFrame {
  color: white;
  font-size: 15px;
  background: #2c2c2c;
}
the small labels on the simple desk faders are now correct. I also changed the color of the MonitorFixture labels to match its background. I updated the stylesheet on my github, it includes the QGroupBox addition I mentioned some days ago, and the changes I mentioned here: https://github.com/Nukethefox/QLCplus-M ... sStyle.qss
User avatar
mcallegari
Posts: 4482
Joined: Sun Apr 12, 2015 9:09 am
Location: Italy
Real Name: Massimo Callegari
Contact:

Maybe you're missing a final carriage return?
This is the result for the attached style

Screenshot_20231101_180126.png
Attachments
qlcplusStyle.qss.zip
(1.46 KiB) Downloaded 295 times
Post Reply