diff options
author | Laszlo Agocs <laszlo.agocs@qt.io> | 2018-09-12 17:15:22 +0200 |
---|---|---|
committer | Laszlo Agocs <laszlo.agocs@qt.io> | 2018-09-13 07:51:11 +0000 |
commit | 950c5cea57602f8197b7c18e4bd77e33c59eb140 (patch) | |
tree | ac619180daa75d614e3a9559d8efff47c2c65acb | |
parent | a8cf177b48570420cbd7755a19704cd2a2fc1dea (diff) |
Fix for certain ignored set-property actions
Task-number: QT3DS-2325
Change-Id: Ia57d5b34be87c46dcd029ce3289d3436f8e643f2
Reviewed-by: Christian Stromme <christian.stromme@qt.io>
-rw-r--r-- | src/runtime/q3dsuippresentation_p.h | 4 | ||||
-rw-r--r-- | tests/scenes/actions/property_change_on_event.uip | 37 |
2 files changed, 39 insertions, 2 deletions
diff --git a/src/runtime/q3dsuippresentation_p.h b/src/runtime/q3dsuippresentation_p.h index 68e6a04..8acc1b1 100644 --- a/src/runtime/q3dsuippresentation_p.h +++ b/src/runtime/q3dsuippresentation_p.h @@ -581,11 +581,11 @@ public: }; QString name; - Q3DS::PropertyType type = Q3DS::Unknown; + Q3DS::PropertyType type = Q3DS::Unknown; // may be unspecified in which case it remains Unknown Type argType = Unknown; QString value; - bool isValid() const { return type != Q3DS::Unknown; } + bool isValid() const { return !name.isEmpty() || !value.isEmpty(); } }; Q3DSGraphObject *owner = nullptr; diff --git a/tests/scenes/actions/property_change_on_event.uip b/tests/scenes/actions/property_change_on_event.uip new file mode 100644 index 0000000..f26be4d --- /dev/null +++ b/tests/scenes/actions/property_change_on_event.uip @@ -0,0 +1,37 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<UIP version="4" > + <Project > + <ProjectSettings author="" company="" presentationWidth="1280" presentationHeight="720" maintainAspect="False" > + <CustomColors count="16" >#7391ff #ffffff #ffffff #ffffff #ffffff #ffffff #ffffff #ffffff #ffffff #ffffff #ffffff #ffffff #ffffff #ffffff #ffffff #ffffff</CustomColors> + </ProjectSettings> + <Graph > + <Scene id="Scene" > + <Layer id="Layer" > + <Camera id="Camera" /> + <Light id="Light" /> + <Model id="Cone" > + <Material id="Default" name="Default" /> + </Model> + <Text id="Text" /> + </Layer> + </Scene> + </Graph> + <Logic > + <State name="Master Slide" component="#Scene" > + <Add ref="#Layer" /> + <Add ref="#Camera" /> + <Add ref="#Light" /> + <State id="Scene-Slide1" name="Slide1" > + <Add ref="#Cone" name="Cone" position="-7.69803 -147.224 0" scale="3.1194 3.64516 1" sourcepath="#Cone" > + <Action id="Cone-Action" eyeball="True" triggerObject="#Cone" event="onPressureDown" targetObject="#Cone" handler="Set Property" > + <HandlerArgument name="Property Name" type="String" argtype="Property" value="opacity" /> + <HandlerArgument name="Property Value" argtype="Dependent" value="28" /> + </Action> + </Add> + <Add ref="#Default" /> + <Add ref="#Text" name="Text" font="TitilliumWeb-Regular" position="-310.807 296.373 0" textstring="Click on the cone to change its opacity" /> + </State> + </State> + </Logic> + </Project> +</UIP> |