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
(WIP) Advanced color selector #1370
(WIP) Advanced color selector #1370
Conversation
@turtleTooth Please add this to OTX |
Finally #791 , Thanks. |
this is really cool, not a fan of the UI yet though but that'll probably change in the future edit: and calling it an advanced colour selector even though the original colour selector is more advanced than this new one seems a bit silly to me. |
Yeah, the UI is temporary, to avoid dealing with overlapping widgets
for now.
…On Sat, 05 Aug 2017 08:03:22 -0700 Astr01d ***@***.***> wrote:
this is really cool, not a fan of the UI yet though but that'll
probably change in the future
|
Test video (New) https://youtu.be/DSSkQtJxhv4 |
That's perfect. Is it possible add HSV and Alpha slider too? |
return; | ||
if (palette->getStyle(styleIndex)->getMainColor() == qColorToTPixel(c)) | ||
return; | ||
palette->setStyle(styleIndex, qColorToTPixel(c)); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Currently any changing of color always resets brush style. You may use following code to fix:
palette->getStyle(styleIndex)->setMainColor( qColorToTPixel(c) )
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fixed, thx.
this is just to throw a spanner in the works for people to have a think about. http://paletton.com/#uid=c0d310G3v0klllltksSs0sAeFe5f4dm |
HSV should be pretty trivial. As for alpha, i have plans for it, but it may need a bit of tweaking (e.g. to make it optional). |
Will the HSV and RGB sliders be optional? Does the widget fit well in a small but horizontal space? Could there be a way to create new styles in the level palette directly from the widget? |
RGB sliders are already optional, HSV will be also when it is implemented.
It doesn't fit really well into horizontally oriented space, except for "Rectangle" tab which can simply takes all space available. It should be possible to implement orientation change eventually.
Currently not possible, but should be doable in theory. One of ideas was ability to integrate any kind of palettes into the widget. Another option would be to add custom context menu on colors and add "add as new style" action there. Yet another would be to implement drag&drop |
Added HSV. |
The functionality of the advanced color selector works great. It will pair particularly well with a workflow using the my paint brushes. There are some areas where the UI can be refined - both in terms of blending in with the existing themes and in terms of fluidity.
In addition to the existing modes, it could be helpful to have a mode that selects a set of values in a single color range. Drag and drop for the palette colors would be fantastic, especially if you could select multiple styles at once. Even just a shortcut would work well (i.e. shift-left-click creates a new style while left-click modifies the selected style). Edit: The rgb sliders have a different style from the style editor, though they fit with other sliders in the UI. The configuration settings reset upon opening OT. Also, if auto-apply is off in the style editor, returning to a previous style does not always work as expected after using the color selector. |
We have found that with this addition it is impossible to change alpha. Here is the fix - morevnaproject-org@7fe9156 |
I tried building this on Visual Studio and there are a number of errors. |
Short update: alpha works with a slider, everything that i could test seems to work. I can't help with building on system i don't use without details. Hopefully i'll answer to suggestions in more details later. |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
@caryoscelus It looks like this is failing on Windows due to a missing CMakeLists.txt file in the Qt-Color-Widgets directory |
On Sat, 18 Aug 2018 22:07:40 -0700 Jeremy Bullock ***@***.***> wrote:
@caryoscelus It looks like this is failing on Windows due to a
missing CMakeLists.txt file in the Qt-Color-Widgets directory
Have you initialized git submodules? If your Qt-Color-Widgets directory
is empty, you should try that.
|
This comment has been minimized.
This comment has been minimized.
Looks to be some sort of configuration issue that deals with submodules that only @shun-iwasawa would likely have the ability to change? |
What needs to be done to make this PR accept? |
@caryoscelus @Agnyy Here are my thoughts:
The widget looks neat and useful. Thank you for your contribution! |
Conflicts, not withstanding, there were 3 issues that I mentioned in prior comments that needed fixing. |
Not sure what is going on with this PR, whether this will ever see the light of day, be abandoned completely or abandoned but integrated into the existing color selector. At any rate, if this is to resume in some way, I've added an Issues Checklist to the body of the PR for stuff that was brought up. At minimum, the 1st 3 should be fixed. The 2 after that are quick changes I would like to see included. Last one can be done in a later PR. |
Well, i can hardly find enough time to fix things properly, but i did fix the most urgent stuff. "Gradient editing" (for the lack of better term) is working though unuserfriendly, just as a PoC for now. Still have to merge to latest master and fix the ui |
Not quite sure what you mean here. I tried the artifact and it's still only updating 1 color box. When switching to the second color, it keeps changing the same box (1st box). I saw you changed the position of the Advanced Color Selector in |
When i was testing, i didn't do it on gradients, but on whatever two-color style i found working; and it worked for me, updated the second box after switching. If you would find time for that, a video record of how things went wrong might be helpful
Ok, thx, will do |
@@ -307,6 +307,7 @@ | |||
<separator/> | |||
<command>MI_OpenFileBrowser</command> | |||
<command>MI_OpenFileBrowser2</command> | |||
<command>MI_OpenAdvancedColorSelector</command> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
To match the location of if in code, please move this up below MI_OpenColorModel
@manongjohn i've fixed both positions, in .cpp and .xml |
The current consensus appears to be that this PR will not be added to Opentoonz. For those desiring to work with the Advanced Color Selector it can be found in the Morevna release as well as via the appveyor build here: https://ci.appveyor.com/api/buildjobs/twfy7xoy15wq5ly6/artifacts/toonz%2Fx64%2FOpenToonz.zip Outlook for adding this Advanced Color Selector to various forks is estimated as the following: Opentoonz (master): Not currently planned for v1.5 and unlikely thereafter without major changes All interested parties are encouraged to provide feedback and status regarding decisions in their specific areas of interest (i.e. forks, additional or competing developments, etc.) As @caryoscelus has put a lot of work into the Advanced Color Selector it will be good to keep him well informed of plans moving forward. Above all, @caryoscelus we want to keep you in the loop. P.S. I don't think there is any issue with having this PR continue as an ongoing WIP. |
Closing this for now pending renewed interest. |
Hello! Why did they decide to reject this request? It took a long time and it will be very sad if it is thrown out like that. |
The primary reason appears to be loss of interest in merging this feature into Opentoonz and its various forks from all parties with last update of code toward resolution of various recommendations in Sep 2020. Your post is the first signal of interest since that time. |
What could I do to get this request accepted? This request was made not so much for me as for the artists. This system is specially designed for painting. |
I think there was still 1 outstanding issue with Color Gradients not picking the different colors that never got resolved. It only updated the 1st color. |
I'm going to throw in my thoughts. . . |
I'm currently developing an advanced color selector (based on https://github.com/mbasaglia/Qt-Color-Widgets and so usable for any Qt apps, not just OpenToonz) as requested by @Agnyy. While it's far from being complete or advanced yet, i've already made it to work with OT and so have a few questions regarding integration:
what is the preferred way of source storage and building? As i understand, OT doesn't use many third-party dependences and uses static linking, so for now i used git submodule and add_subdirectory in CMakeLists
are there any special cases related to color selecting? I already run into "color 0" which is displayed as invalid style in Style Editor (though changing it through my dock works)
i see you're using custom icons for everything so i suppose using icons bundled with Qt-Color-Widgets would be ok?
Since my color selector widget isn't limited to OT, i'd like this thread to be kept for OT-related stuff and discuss universal features in mbasaglia/Qt-Color-Widgets#29
Issues List:
toonz\sources\toonz\CMakeLists.txt
(see comment belot)MI_OpenAdvancedColorSelector
option in Windows Menu to afterMI_OpenColorModel
MI_OpenAdvancedColorSelector
tostuff\profiles\layouts\rooms\Default\menubar_template.xml
to match location in Windows Menu