Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Mixxx skin: Dark Metal #1179

Closed
wants to merge 40 commits into from
Closed

Mixxx skin: Dark Metal #1179

wants to merge 40 commits into from

Conversation

jorgerosa
Copy link

@jorgerosa jorgerosa commented Feb 9, 2017

Mixxx skin: Dark Metal

mixxx_dark_metal_thumb

1) 100% Scalable Vector Graphics (SVG).

• 100% Quality lossless graphics.
Not even one bitmat anywhere.

2) Fully resizable.

• Small screen users can use it too.
All elements must fit nicely in all resolutions. Please note that If your resolution is too small, some racks (rows) may overlap, even so, you can still disable their visibility (there are lots of buttons, in the top bar, for that. These buttons are always visible, no matter what, even you "enable" everything). Ready from 980x350, to infinity.

3) Mixxx features.

• Contains the lattest Mixxx features.
But!... I´m sure that not all tasks arent done, so I´m always sharping the graphics, correcting issues, adding forgotten stuff...

4) Unique features.

• Contains original and unique features.
I´ll try to add features not available (yet!...) anywhere else, they must be functional too, of course. Like the analog VUs, the digital fonts, a grey only color scheme (a fully "metallic" skin), etc, etc... Our imagination (vs. the code), will be the limit...

This skin lives here:
http://www.mixxx.org/forums/viewtopic.php?f=8&t=6052
(Lives alone... No fitable skeleton was found yet!...)

@jorgerosa jorgerosa changed the title Dark metal skin for mixxx Mixxx skin: Dark Metal Feb 9, 2017
@sblaisot
Copy link
Member

sblaisot commented Feb 9, 2017

If we include that skin, we need to either correctly install the font (modifying the installer/packages for all platforms) or use standard/default font like other skins.

@Be-ing
Copy link
Contributor

Be-ing commented Feb 9, 2017

Thank you for submitting this. Some comments:

  • Text sizes are generally small and hard to read for me except for the track title, artist, and other text on top of decks.
  • I think the Decks/Mini/Waves toggle buttons should refer to decks 1+2 and 3+4 instead of AB and CD. Other software refers to decks by letter, but they're typically referred to by number in Mixxx. What do others think about this?
  • Yay purple :) I like purple.
  • I like the idea of having full decks and mini decks.
  • These deck buttons could be put in one row to save vertical space:
    darkmetal0
  • It took me a while to realize this option was available:
    darkmetal1
    This should be the default or people will wonder where those controls are. It would be good to add beatjump and loop move buttons too.
  • "Micros" is not a common abbreviation for "Microphone" in English. Change it to either "Mics" or the full "Microphones".
  • "Samps" is also not a common abbreviation. I think the full word "Sampler" can fit.
  • The Mixxx logo should be in the skin somewhere.
  • It would be good to make the vinyl control buttons optional because many users will never use them.
  • I think the positions of the notches on the knobs would be easier to see if the they were a bit longer (went further into the center of the knob).
  • The maximize library functionality should use the standard [Master], maximize_library ControlObject.
  • There's no need to show the sample rate on the decks. That takes unnecessary space.
  • I think the clip indicator should always be red, regardless of the color scheme. Often times clipping is referred to as "going in the red", so some users might not understand what the clipping indicator means if it is not red.
  • Effects units should implement the new effects UI like Deere. The new ControlObjects are documented on the wiki. If you have questions, ask, or refer to the discussion in PR new Deere effects units with meta knobs #1063. I'm not sure this needs to block the initial merge of the skin, but it does need to be implemented for the 2.1 release.
  • Buttons to assign effects units to microphones and auxiliary inputs only need to be shown if those inputs are configured. Take a look at how Deere implements that.

Mixxx segfaulted while switching color schemes. This is probably a bug in Mixxx or Qt, not your skin:

Warning [Main]: X Error: GLXBadContext 167
  Extension:    154 (Uknown extension)
  Minor opcode: 6 (Unknown request)
  Resource id:  0x6e00613

I couldn't reproduce this crash.

@radusuciu
Copy link
Contributor

Looks nice!

One thing I noticed while working on updating the Mixtrack 3 mappings is this:

    if (DarkMetalSkin) {
        LibraryGroup = "[Hifi]";
        LibraryCommand = "show";
        expand = 0;
        contract = 1;
    } else {
        LibraryGroup = "[Master]";
        LibraryCommand = "maximize_library";
        expand = 1;
        contract = 0;
    }

Is this workaround still necessary for this version of the skin?

Thanks!

@jorgerosa
Copy link
Author

jorgerosa commented Feb 12, 2017

Thankyou guys!

  • I´ve correct already many things as Be-ing requested.
  • That 2 buttons rows (on each deck) was intentionaly, because I received a request (I think was from a dev, in the last year) that had a small screen, so I decided to do that way, until it fited in his small screen too.
  • "new effects UI like Deere" - I´ll try to do that, as soon I figure the effects logic. Anyway help (or tips) would be great. (Everything and every file is in its right (logical) directory and the code is fully commented, so it intends to be easily edited by anyone without wasting lost of time just to figure where the "things are"... At least, I hope so...)
  • The library uses the common <WidgetGroup>, I remeber that I´ve used this because it had issues using the maximize library ControlObject (can´t remeber what was, but I´ll change the code again, until I figure why I´ve done things this way)

@Be-ing
Copy link
Contributor

Be-ing commented Feb 13, 2017

Great, could you commit and push the changes you have made so far?

Regarding the new effects UI, I recommend playing with Deere and reading the additions to the MixxxControls wiki page. For testing effect focusing, run mixxx --developer and manually set show_focus to 1 from the Developer Tools window.

@jorgerosa
Copy link
Author

jorgerosa commented Feb 13, 2017

Be-ing, I´m not used to GitHub (I´m trying to clone all my projects from sourceforge to here, but since I am not used to, I hope not to mess with anything... But I´ll keep trying, of course). I have NO idea if is this that you want me to do by asking to "commit and push", sorry. I have commited (updated) all the files here: https://github.com/jorgerosa/Mixxx-Dark-Metal [ EDIT: DELETED! It was an unnecessary repository ]
Thanks for the tips, I´ll run the mixxx --developer as you said.

@Be-ing
Copy link
Contributor

Be-ing commented Feb 13, 2017

To get your updates to show up on this pull request, commit them to your DarkMetal branch on the repository you forked from mixxxdj/mixxx. Commiting to Git on your computer does not put them online though. When you push your changes, they will be online in your fork. Any changes you push to the branch you opened a pull request for will automatically be added to the pull request. Anyone who gets notifications for that pull request will get an email when you push new changes. So, we will be able to see the changes you have made, and it makes it relatively easy for us to test the updates.

I have not used the "Upload Files" functionality on the GitHub website, so I am not sure how it works, but uploading files one-by-one seems more difficult than committing all the updated files on your computer and pushing the new commit. We have a list of some GUI programs for Git on the wiki that can make that easier. Personally I prefer Git Cola.

If you run mixxx --resourcePath /location-of-your-git-repository/res/ --developer you can work on your skin directly in your Git repository while testing it (Ctrl + Shift + R reloads the skin in Developer Mode). That way you do not have to keep copying files back and forth.

Git takes some learning and getting used to, but when you start to understand how to use it, it is very helpful. I couldn't imagine working on software without Git anymore.

radusuciu added a commit to radusuciu/mixxx that referenced this pull request Feb 16, 2017
As per mixxxdj#1179, workaround should not
be necessary any more.
@daschuer
Copy link
Member

daschuer commented Mar 2, 2017

@jorgerosa @Be-ing what are the mandatory changes required to have this in Mixxx master?
When will be the right moment to merge this, and allow the alpha users to test it?

@jorgerosa
Copy link
Author

jorgerosa commented Mar 2, 2017

@daschuer

1) Would be great to have an automatic font installer, to instal that "digital" font. Just because without it, it becomes ugly, unless people install that font in the "manual" way, of course. (Runs without it too, of course)

2) The rest (all the design and features) should be running smoothtly (been testing it with every one of yours lattest Mixxx builds (on windows 64bits only) and, of course, I´ll try to add ALL the new Mixxx features as I can). Help here would be nice, just feel free to change/edit/add/delete/etc... whatever you want, guys. No worries!

@Be-ing
Copy link
Contributor

Be-ing commented Mar 6, 2017

what are the mandatory changes required to have this in Mixxx master?

As far as I can tell, the only issues I mentioned above that have been addressed are using "Mics" instead of "Micros" and "Samplers" instead of "Samps". @jorgerosa, have any of the other points been addressed? Please describe what you are changing with each commit message, otherwise it is difficult for others to tell what is going on.

I just noticed there are no tooltips displayed in this skin. I think that should be fixed before merge.

  1. Would be great to have an automatic font installer, to instal that "digital" font. Just because without it, it becomes ugly, unless people install that font in the "manual" way, of course. (Runs without it too, of course)

We may consider bundling the required font with Mixxx. @rryan, what do you think?

@ronso0
Copy link
Member

ronso0 commented Mar 6, 2017

@jorgerosa Wow, you've put a lot of effort into this! Those analog VU meters are unique.

I gave this a try on my 1366x768 screen, here's my first impression:
(you got a lot possitive feedback already, so I'll only come up with things I find irritating ;) )

  • with 4 decks & stacked waveforms (which are small enough, though could be resizable) the Play buttons where hidden:
    removing redundant labels on top/below Volume faders/VU meters and shrinking pitch faders' top/bottom padding could make it fit
  • do we need normal & minimal decks at the same time? switching between those would be nice
  • in decks, is that one row displaying the samplerate really necessary? or are there hidden features?
  • with 4 decks there are two crossfaders & two master level meters
  • in decks' CoverArt box we probably don't need labels saying "Cover Art" ;) = more space for cover
  • Sync label above rate display does nothing: make it a Sync button? or maybe name it "BPM/Key"?
  • right-click on key box resets key, same could apply to rate box
  • I expect Mics & Aux modules to show up close to each other, maybe both below top mixer bar

I feel that in Deere & Tango skin one major field was reasonably saving vertical space to make the skins accessible for as many users as possible. If you like to do that as well, I could help with PRs as a few options already jump out to me ;)

@daschuer
Copy link
Member

daschuer commented Mar 7, 2017

I have added two commits, for fixing the library font settings by preferences and the digital font install issue. Now Mixxx finds the digital font during startup in the res/fonts directory.

@ronso0
Copy link
Member

ronso0 commented Mar 8, 2017

Just noticed that and I don't know if it's a convetion or not: the skin would probably be easier to develop/reset/maintain if per-skin Controls are named like the skin, i.e.
"[ToolBarMicros],show 0" would be "[DarkMetal],toolbar_micros_show 0"

@sblaisot
Copy link
Member

sblaisot commented May 9, 2017

Huhu, there is a bug in the way I use Wix to generate the windows installer : it doesn't like to have two files with the same name under controllers and skins, like README.md
I need to take a look at that.

@sblaisot
Copy link
Member

sblaisot commented May 9, 2017

As a quick fix, rename README.md to README-DM.md and README.txt to README-DM.txt and that sould do the trick.
I will update the installer in another PR.

@ronso0
Copy link
Member

ronso0 commented May 10, 2017

Off topic: Who would dive into program directories to look for a readme file?
Content of controller readme is almost fully covered in Pref > Controller, forum links etc.
And for the per-skin readme (if there is one), wouldn't it be handy to have it linked in Prefs > Interface next to skins drop-down with a button "Skin info"?

@daschuer
Copy link
Member

The latest notes are addressed.

@ronso0 has given some notes for improvement.
@jorgerosa will you find time to consider and implement them?

@vlada-dudr
Copy link
Contributor

Hello! I'd love to share my opinion on this skin as I have been using it for maybe a year now and for me it just works best of all skins available so far.

Main issue is that it does not respect the ui settings like "Show coverart", "Maximize library", etc. So first thing I do when opening mixxx is hiding the cover area and spacebar doesn't work.

With four decks the library looks like the horizontal scrollbar. Maybe it is better to just hide it, when there is not enough space making it available through maximize library.

@jorgerosa: Good job!

Let me add a wish at the end: I'd love to see playing tracks remaining time/progress bar when having library maximized.

@daschuer
Copy link
Member

daschuer commented Jun 2, 2017

@vlada-dudr: Great to hear this opinion :-) We have currently an ongoing discussion about the skin set and focus of each skin type for Mixxx 2.1. You may help here: What are the reasons you prefer this skin over the others?

Jorgerosa was a bit out of time lately. Do you have fun and time to take a hand on this skin yourselves? I will now make it mere-gable again.

Conflicts:
	res/skins/Deere/deck_inner_column.xml
@Be-ing Be-ing mentioned this pull request Jun 3, 2017
@vlada-dudr
Copy link
Contributor

vlada-dudr commented Jun 5, 2017

I will present my honest feeling, without claiming it being correct. Reasons to use DarkMetal are quite simple. I am using Mixxx as player with prelistening and realtime equalizer. The workflow is like adding bunch of track to AutoDJ, playing it and equalize it. Most of track are shellac transfers between 1926 and 1958 so one needs EQ a lot to squeeze good sound out of them, especially having poor PA. The thing is that the effect racks take lot of vertical space, which I want for the library. I don't need most of the knobs from decks so mini-decks save a lot of space and that's it. Also I like DarkMetal visually. Actually, I like it much more then the stock skins, which feel kind of sketchy and unfinished, but DarkMetal does feel much more polished and complete.

The best of stock is LightNight, but old 1.11 Deere was way better, I was really disappointed when it was erased. If it was available in 1.12/2.0 I was not searching for alternative skins. Note, that I started using effect rack already using DarkMetal, that was because my builds of 2.0 (to get m4a support) didn't have the master EQ in effect rack, after I switched to ArchLinux package (which has m4a) the EQ appeared so I started to happily use it. Tango skin looks pretty usable to me, but still has this feel of "it-is-just-a-sketch". New Deere makes me feel trapped in an unwieldy world of thick pencil cartoon, but I can imagine people enjoying and liking it.

You could say, that there is "Maximize library" option and vertical space for library itself should not bother me. But I kind of didn't find a way to get it in my workflow, because:

  1. space key obviously does not work when focus is on the search bar, which is the exact moment when I realize I could use maximizing
  2. there is no overview of what is going on the deck - don't want to get stuck in library search bar, which eats spacebar, when there is happening something I want handle manually like last song in AutoDJ, starting new song or messing up with EQ again
  3. Now you can say: "Just remap the spacebar". That still doesn't solve the problem I don't know how much time I have to get ready for next event. For regular user this may not be an option. At least until we ship keyboard mapper GUI.

I might find some time to try to adjust this or other skins somehow, probably more in functional then aesthetic way, but I really don't want to promise that.

Hm, I hope I didn't go too much off-topic, if so I am sorry.

@daschuer
Copy link
Member

daschuer commented Jun 5, 2017

Thank you for your words. We will consider this. If you find time to help us, we can give you a helping hand.

@ronso0
Copy link
Member

ronso0 commented Jun 6, 2017

@vlada-dudr Thanks for your opinion!

How do you mixxx, how many decks do you use?
EQ means 8-band graphical EQ in Effect unit?
Can you be more precise what feels sketchy/unfinished about Tango?

Tango and Deere in alpha-pre do have Maximize Library buttons by now.
Minimal decks in all skins would really be a nice feature with maximized library, they could look like minimized Samplers.

@daschuer
Copy link
Member

this is superseded by #1318

@daschuer daschuer closed this Jul 23, 2017
@daschuer daschuer mentioned this pull request Jul 23, 2017
@jorgerosa
Copy link
Author

DarkMetal Skin - Last update: 23 July 2017
1: Added the new Laptop Battery indicator. (NOT functional, since it seems that is not compiled with Mixxx yet)
2: Added the new "recording time" indicator.
3: Corrected colors for the #AARRGGBB color format. (Noticeable in the waves)
4: Added "star rating" in the main (big) decks.
5: Added the new "effect selector" (QComboBox) in the effects. (Click in the effect name)
6: Added button to show/hide the vinyl controls. (Per deck/channel. Because it seems that many people just dont use it)
7: Added button for "quick effect". (Per deck/channel, in the main (big) decks)
8: Added the "Beat Jump" and "Beat Loop" options.
9: Changed channels texts from "AB","CD" to "12","34". (Requested by users)
10: Added the "cover art", in the small buttons row. (Placed on decks. Helps me a lot, because it "drag-n-drop" feature)
11: Added options to select by module on the "Mics", "Aux" and at "Long Waves".
12: Fixed many many other small (minor) issues.

https://www.mixxx.org/forums/viewtopic.php?f=8&t=6052

@daschuer
Copy link
Member

@jorgerosa Can you comment #1318 instead this PR is stalled and cannot be used anymore, because you have deleted the source branch from your repository.

@jorgerosa
Copy link
Author

jorgerosa commented Nov 12, 2017

Sure daschuer :) Ok people, the new house is #1318.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants