Hello Iman,

I tried to give a try to this thing. I think you forgot to add a couple of 
files:
* style/palettes.h
* style/styleoption.h
--
Best regards,
Jesús


On 2017-10-14 09:33:52+02:00 iman ahmadvand wrote:

Hi everyone.
Before I send some code base on codereview and decide whether my implementation 
meets the requirements,  I  just want to know your thoughts about design 
decision for the new module I’m trying to add to Qt Play ground.
So as you probably guessed my plan is to developing a new widget module (which 
I’m going to name it MaterialWidgets) for Qt, a modern collection of widgets 
that should have the same look and feel on all platforms. All the GUI 
parameters and styles are taken from material style guide 
line(https://material.io/guidelines). You can think of MaterialWidgets as the 
MaterialStyle in QML design but in pure C++.
Here is a few things to clarify:
1.Why someone need to use material styled widgets in Qt?
There are a bunch of app out there that need this to be available on widgets so 
they can easily take the benefit of newly added widget set.
2.Why a new widget set? why just no to use already built-in styles?
Material widgets are going to be a special set of controls which has animations 
by default, and GUI parameters are differs from built-in QtWidgets. for an 
example material style has a component called ContinuousSlider which has two 
sub component Thumb and Track and two state On(value == 0) and Off(value != 0) 
and a color palette for each state, so doing this with styles can't be done 
unless we change the enumerators and maybe more!
3.Are every thing from scratch ?
No. not at all.
I just make some changes in inherited classes from built-in QtWidgets (basics 
AND abstracts), so the logics behind those widgets should be the same.
A note for animation implementation  in MaterialWidgets:
A class called Animation is responsible for animating those widgets, the simple 
idea behind that is to have a target object (which mostly is a widget) 
associated with animation objet and after every refresh in animation 
(updateCurrentValue) we should make an update of type StyleAnimationUpdate in 
target widget so it makes the code base more cleaner.
Here you can see just a review version of module (just ContinuousSlider is 
included): ​
[https://ssl.gstatic.com/docs/doclist/images/icon_10_generic_list.png] 
qtmaterialwidgets.zip<https://drive.google.com/file/d/0BxRSkzkLrTjVeS1xd0VRMHJQS0k/view?usp=drive_web>
​
I'm ready to hear your advices and thoughts.
Regards
Iman.
_______________________________________________
Development mailing list
Development@qt-project.org
http://lists.qt-project.org/mailman/listinfo/development

Reply via email to