Theming in Qtractor

Forums

/ Edited: 17/01/2024 /
Topic for everything related to Qtractor theming.
Themes availables: https://sourceforge.net/projects/visualthemes-qtractor/
(Attach two starting approaches for two visual themes and a proposal for functionalities.)

Happy to report that this commit does fix the "snap overshoot" problem in the MIDI editor.

or does it? Of course, I had to be sure so I just compiled fresh from master and of course, I can not replicate the original issue :(

Was I the only one experiencing the problem of notes aggressively overshooting their snaps (to the right)?

Either way, I think I'm ready to stand with the non-shadow people just the same. I just don't like them (once you see it, you can't unsee... LOL). Even with the snapping issue resolved, I now see how when adding a note, it then "shrinks" (probably the 1 pixel thing) when the mouse click is released. It's just.... unnecessary and it gives the whole experience a bit of a weaker feel than it deserves. I remember testing the fix yesterday after compiling from the develop branch and for the first time, inputting a MIDI note actually felt like INPUTTING A DAMN MIDI NOTE! (lol). What I mean is, it just felt like the GUI was doing exactly what I was telling it to do as opposed to this morph-like re-render thing it does when shadows are involved. I do maintain I think it would be nice to offer an option even if it's just an added CONFIG parameter supported by cmake.

OK enough, I've beaten the note horse to death here :D

it's the punch-in/out range; the other greenish line (actually it's transparent cyan, on a dark background) it's the looping range; in the picture both ranges overlap so their colors are merged, thus resulting in a violet colored effect.

byee

Hello Kosai.

I take advantage of this thread to answer you.

First, let me tell that you are doing a very cool job.
The theme you are compiling looks very actual.
I liked the simplified scroll bars, and I implemented it in my Tecnico theme.
I just uploaded it.

https://sourceforge.net/projects/visualthemes-qtractor/

_ICONS
I see that you have taken advantage of some of the Iconduck "Monotone" icons that Windowsrefund selected.
I think it was necessary to create a complete pack (or several) of symbolic flat monochrome icons. I have it on my list for possible projects.

You mentioned how to change the Zoom buttons? Those buttons are part of the original Qtractor icon pack, so you already know the answer, redesigning them.

After reflecting on the issue of icons, I think it makes no sense to change the original Qtractor icons, because it is part of its identity.
It does make sense to create Icon Packs.
However, Qtractor is not able to handle it without compiling.
As I see it, implementing the icon pack management functionality is too complex.
All static paths written in code should be replaced with variable paths.

So the option that Rui told you about using the G3N-es-x branch has no place here, because it is not really necessary to program anything.
Just create icon packs and share them if we want.

Below I will explain about Branch G3N-es-x.

_BRANCH G3N-es-x
Rui did me the favor of creating that branch in case I wanted to contribute code, and so that he could review it to accept or not, without interfering with the official branch.
Others could use it for the same purpose.

The problem is that the branch broke with the updates.
I fixed it but I didn't notify Rui of the changes, because I realized that it was bothering him for things that only I was going to use.
The changes in that branch, apart from an issue of different icons, is that I have homogenized the midi editor buttons with those of the sequencer.

I haven't checked the latest update 0_9_39, so maybe even my branch is also broken now.

_Flat Style
I don't see it as crazy, and I think it is easily implementable to create a flat style option as Windowsrefund mentioned.

With it you activate:

- Gradients disappear
- Note embossing disappears in midi editor
- Track list only draws a dark border, leaving it flat (as you have done)
- Mixer strip only uses Dark color for borders, which also makes it flat.

I don't know about this last one as you all see it in general.

greetings

File attachments

Hi G3N.8522;
I'm glad my mockups inspired you to implement new scrollbar.
I adapted from you and WindowsRefund works. Thanks you all.

I'll draw a monochrome icon pack.

I don't want to bother Rui with requests.
I prefer flat style but I won't request him to make it flat just because of me.
He might be busy with works and family.
The beauty of Open Source Software is I can change the source code for my personal liking.
I just have to do it for every version update.

Nice theme you've got there. Tecnico Theme.
I'm sure EDM people will like it.

Have a nice day! See ya.

Basically the issue: Borders with reliefs, yes or no?, is a matter of fashion. They will return, I don't know when, but they will return.

As you say, each of us can make these small preferences in our compilation.

Gradients and relief in notes are personally indifferent to me. I like it both ways.
Like you and Windowsrefund, I noticed that small inaccuracy when positioning the notes, although I never gave it importance, because I trust the snap.
Rui just fixed it. He wants the reliefs in notes, it is his program and he must preserve its identity. And I'm glad he does.

But the sharp edges in the sequencer are going to be flattened in my next compilation. :)
The mixer can currently be flattened by choosing a dark color for the Light color.

yes, fashion...

as some guy once said, way back from late 19th century, fashion is something so abstruse that it must change every other season. :)

cheers

Permalink

It's great! I don't like the red dot used for recording (personally) but that's just cuz I'm an absolutist. Great work and very inspiring!

Permalink

Big shoutout to the old Cakewalk. I actually started on version 3? (the one with the dots) and moved along into v5 and maybe last used it on v8. One of the things I quickly learned to really appreciate about Qtractor was the "cakewalk inspired" design which clearly treated MIDI as a first class citizen (as compared to the other wares which focused primarily on Audio).

I've never seen that lollipops offer anything functionality over bars but haven't given it any real thought. I guess anything vertical is fine by me compared to some of the more labor intensive methods I've seen other wares use.

I think it's make it easier to click on it. Bars are like 2 px width.
Lollipops are a bit bigger so it's easier to click.
I'm not defending lollipops. I'm neither like it nor don't like it.
I'm ok with or without lollipops.

In reply to by KOSAI

Permalink

Actually, I just granted myself a moment to really think about the merits of a lollipop over a fixed bar and i finally understand where the former wins every time. The obvious win would be in the improved visibility when notes overlap! Hmm... that only took me decades to understand. I get it now.

Permalink

#Compiled qtractor with monochrome icons (Work In Progress)

---------------------------------------------------------

Test run with new icons. Made with inkscape
Pixel Perfect icons.
Tried replacing .png with svg. Didn't work.
I think SVGs icons can scale up with Monitor resolution
without loosing quality since SVG mean Scalable Vector Graphics.
But since I don't have 4K monitor so 22px png is also ok.

I see that you are respecting the original visual concepts. Looks good :).

I think that to use icons with another name (another extension), you have to rename the names not only in qtractor.qrc, but within the code of any file that contains the name (it is the same problem of non-variable paths that I indicated on other occasions ).

Maybe with a search/replace: from "example.png" to "example.svg" with a text editor that allows you to do it in files (search in files) like Geany, Kate etc.

I don't know if it's worth the work.

I can think of another sloppy solution that I don't know if it will work. Rename the "png" as "svg".
I don't know if QT will read the internal format of the file without taking into account the extension in its name.
If so it should work.

Permalink

I guess,

for you to actually apply the SVG icons, you'll need to include them in the qtractor.qrc file in addition, and then change all the old .png references (by name) on the .cpp and .ui source files, wherever they are.

example: images/qtractorConnections.png have a sidekick images/qtractorConnections.svg; while the former is not used anymore, the later is the scalable version of it, and actually shown on the Connections window title.

hth.
cheers

Thanks you for helping me Rui.
Last night, I did replace file name in 3 places.
*- .cpp
- qtractor.qrc
- .ui
Somehow, it only show up the objectName property.
I'll try again tonight.
I might be missing something else.

Cheers.

hi, ok,

  • the icons look very promising, although basic I'm beginning to like them ;)
  • you know my stance about the flat/material/boring style, so no cigar there, yet.
  • yeah, not making any music is a dang curse: if it gives you any consolation, I've been a victim of it for (more than) a decade already :/
  • I too have a main-client/day-job to attend, in full-time, don' get me wrong; I do fully understand your time-off and am very thankful for your time spending and ideas to this;
  • I really wish you'll be back soon over here, and if you may take an hint, please learn some git basics and let you share your awesome work into concrete, not just a footnote around here ;)

cheers && terribly hope to see you back soon!

I've found something interesting in every one of your ideas. For example, the darker background on a checked icon... that's the complete opposite of what I've been doing with my theme and I'm really liking it. There's a good chance I'll steal that idea :D

As for the music, remember, it's not about any particular goal or task being completed. Rather, it's about the moments spent inspired. Inspiration can and does reveal itself in many fashions. The musical expression will happen when it happens.

Add new comment

The content of this field is kept private and will not be shown publicly.

Markdown

  • Parses markdown and converts it to HTML.
  • Allowed HTML tags: <a href hreflang> <em> <strong> <cite> <blockquote cite> <code> <ul type> <ol start type='1 A I'> <li> <dl> <dt> <dd> <h2 id='jump-*'> <h3 id> <h4 id> <h5 id> <h6 id> <img src alt height width> <strike> <pre> <p> <br>
  • Lines and paragraphs break automatically.

Filtered HTML

  • Allowed HTML tags: <a href hreflang> <em> <strong> <cite> <code> <ul type> <ol start type> <li> <dl> <dt> <dd> <b> <i> <pre> <img src alt height width> <strike>
  • Lines and paragraphs break automatically.
  • Web page addresses and email addresses turn into links automatically.

Plain text

  • No HTML tags allowed.
  • Lines and paragraphs break automatically.
  • Web page addresses and email addresses turn into links automatically.
File attachments
Unlimited number of files can be uploaded to this field.
2 MB limit.
Allowed types: jpg jpeg gif png txt doc docx xls xlsx pdf ppt pps odt ods odp zip gz bz2 xz patch diff wav ogg flac ogv mp4 qtz.
CAPTCHA
Enter the characters shown in the image.