Added FixeModelEntityItem and FormFactory

This allows the creation of a EntityEditor window which doesn't
have the ability of switching between existing models of the same
Entity. Such a case are the models of the Material. We don't
want to switch between a DisneyMaterial and any other type of material.

Most of the code is written by Esteban Tovagliari.

Signed-off-by: Marius Avram <marius.avram1309@gmail.com>

Added test DisneyMaterialCustomUI.

Every EntityEditor has the DisneyMaterialCustomUI elements for now.

Signed-off-by: Marius Avram <marius.avram1309@gmail.com>

Add DisneyMaterialCustomUI only to Disney Material

DisneyMaterialCustomUI is still a demo class, but the custom UI
is created only for a DisneyMaterial.

Signed-off-by: Marius Avram <marius.avram1309@gmail.com>

Registered DisneyMaterial to FactoryRegistrar

Signed-off-by: Marius Avram <marius.avram1309@gmail.com>

Added implementation to DisneyMaterialCustomUI

Signed-off-by: Marius Avram <marius.avram1309@gmail.com>

Added functionality to DisneyMaterialCustomUI

Most of the code is from the GSoC_disney_material_v2 branch.
Some changes have been done to work on the current code.

Signed-off-by: Marius Avram <marius.avram1309@gmail.com>

DisneyMaterial editing works from the UI

Signed-off-by: Marius Avram <marius.avram1309@gmail.com>

Added missing icons for DisneyMaterialCustomUI

Taken as well from the GSoC_disney_material_v2 branch.

Signed-off-by: Marius Avram <marius.avram1309@gmail.com>

Added Material submenu on AssemblyItem

Signed-off-by: Marius Avram <marius.avram1309@gmail.com>

DisneyMaterialCustomUI fixes

- Replaced ParamArray with Dictionary which is returned by get_values()
- Model is saved for base params too. Previously this was apparently not
working.

Signed-off-by: Marius Avram <marius.avram1309@gmail.com>

Remove local build comments that was used as a reference for Travis-CI

Remove font sizes from stylesheet, respect user / system settings regarding font sizes.

DisneyMaterialCustomUI: Load previous values in UI

Signed-off-by: Marius Avram <marius.avram1309@gmail.com>

DisneyMaterialCustomUI: saving values in attribute editor

When the material was opened with the attribute editor and the
parameters where changed they were not saved. Now they are.

This required ICustomEntityUI to be a QWidget with a signal.
Since Qt doesn't support metadata in nested class the ICustomEntityUI
was moved to a separate file.

Signed-off-by: Marius Avram <marius.avram1309@gmail.com>

DisneyMaterialCustomUI: use QFormLayout instead of QVBoxLayout

This is the same kind of layout used in EntityEditor.
QVBoxLayout was used in case the Expression Editor was to be
drawn in the same window with the DisneyMaterial editor.

But because it opens in a new dialog there is no need for it.
Also this eliminates the need for a fixed sized QLabel, which
is not according to the variable sized text size from the interface.

Signed-off-by: Marius Avram <marius.avram1309@gmail.com>

Changes to ICustomEntityUI

Inherit only from QObject is enouh to have signals and slots.
QObject is already NonCopyable and has a virtual destructor.

Signed-off-by: Marius Avram <marius.avram1309@gmail.com>

Moved metadata out of DisneyMaterialCustomUI

Now the metadata is in the DisneyMaterial classes.
The base parameters are in the DisneyMaterialFactory class,
while the layer parameters are in the DisneyMaterialLayer class.

Signed-off-by: Marius Avram <marius.avram1309@gmail.com>

Fix layer folding for QFormLayout

Apparently the folding was not working anymore because I replaced
a QVBoxLayout with a QFormLayout. This fixes the issue.

Signed-off-by: Marius Avram <marius.avram1309@gmail.com>

Add default DisneyMaterialLayer from Entity

Until now the default layer was added directly from the DisneyMaterialCustomUI.
Now the ICustomEntityUI will receive values containing a default layer.

Signed-off-by: Marius Avram <marius.avram1309@gmail.com>

Fixed DisneyMaterialCustomUI bugs

* values where not changed when new layers were added or existing ones
were deleted. Also layer moving was not saved. All this happened in
the case when the attribute editor was used.

Signed-off-by: Marius Avram <marius.avram1309@gmail.com>

DisneyMaterialCustomUI: Fixed base values not saving on change

The reason of the bug was that the base values were overriden by
the unchanged values from the ICustomEntityUI.

Signed-off-by: Marius Avram <marius.avram1309@gmail.com>

Fixed compilation issues on USE_DISNEY_MATERIAL ON/OFF

Signed-off-by: Marius Avram <marius.avram1309@gmail.com>
Fixed rebase issues

The cause of most of them is the fact that there was not enough
care when the existing conflicts were solved.

Also added expression.

Signed-off-by: Marius Avram <marius.avram1309@gmail.com>
Fixed GSoC_disney_editor issues

The issues were reported after code review.

Signed-off-by: Marius Avram <marius.avram1309@gmail.com>
Reverted changes to disneymaterial

Signed-off-by: Marius Avram <marius.avram1309@gmail.com>
Merge pull request #472 from marius-avram/GSoC_disney_editor

GSoC disney editor
fixed compilation on Windows.
minor cleanups.
minor cleanups.
Comment code not ready yet in DisneyMaterial