[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
RE: [ve-dev] Few questions please
|
"Janak Mulani"
<janak.mulani@xxxxxxxxx>
Sent by: ve-dev-admin@xxxxxxxxxxx
09/13/2004 11:22 PM
|
To
| <ve-dev@xxxxxxxxxxx>
|
cc
|
|
Subject
| RE: [ve-dev] Few questions
please |
|
Dear Rich,
a. Our EClass has some SFs of primitive type "int" (pl see the
attached
file). How do we specify "int" for an eType? Or do we have to
use type
Integer?
----- Your example already has it. It had an eType
of int.
<eStructuralFeatures
xsi:type="ecore:EReference" xmi:id="BoxPaneContainment/column"
name="column"
eType="org.eclipse.jem.java:JavaDataType
java:/#int">
</eStructuralFeatures>
----------------------------------------------------------------------------
>>> RK >>>>
We observed that for the 1st command no CodeGen adapters are called because
the "owner" ConstraintComponent is not notified "if
(owner.eNotificationRequired())" while setting the SF "component"
with the
child object (JButton). The stack trace is as follows:
------- The reason it wasn't notified is because at that point in time
there
are no decoders on the ConstraintComponent. We were in the process of
creating it and
didn't exist before this point.
The decoders aren't added until the apply of the constraint component to
JPanel.
At that point in time the JPanel decoder sees the addition and will go
and
add
the decoders to the new guy.
>>> RK >>>
True. ConstraintComponent is not notified because it has no adapters
whatsoever.
We would like to have a similar behaviour when we set SF "containment"
on
our ULCComponent with a layout value object while we are adding it to a
conatiner. We would not like our ULCComponent to be notified while the
"containment" SF
is being set. However we would like to add the decoders to the ULCComponent
when it is applied to a ULCComponent.
Is there a way to do this declaratively or through code?
------ If it is a brand new ULCComponent that is being
created, then there won't be
any decoders on it. The decoders won't be added until
the new ULCComponent is
added to its parent. The parent will then cause the
decoders to be added. However,
if it is an existing one, then the decoders will already
be there and cannot be removed.
I don't understand your containment hierarchy well
enough to answer this question. I don't
know how are your ULCComponent is "added"
to the parent, and what "containment" feature
means, and what "layout" means. Maybe if
you gave an example of the generated code of
a ULCComponent added to its parent with layout value
maybe I can understand the question better.
Is it possible to do it by setting/unsetting eDeliver() on the object?
----- I don't recommend this. This often screws things
up because there are something besides
just the decoder that needs notification and they
won't get it.
--------------------------------------------------------------
---- Within weeks.
Is it likely be before September end/ 1st week of October?
---- I don't know. Within weeks is the best I can
say. :-(
-------------------------------------------------------------------
Many thanks,
Janak
Attachment:
boxPaneContainment.ecore
Description: Binary data