Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
Marco Bubke
flatpak-qt-creator
Commits
eec843ef
Commit
eec843ef
authored
Apr 07, 2010
by
Marco Bubke
Committed by
Kai Koehne
Apr 07, 2010
Browse files
Don't use NodeInstanceMetaObject for Components
Task-Number: BAUHAUS-498
parent
b47d279b
Changes
1
Hide whitespace changes
Inline
Side-by-side
src/plugins/qmldesigner/core/instances/objectnodeinstance.cpp
View file @
eec843ef
...
...
@@ -174,13 +174,16 @@ static bool hasPropertiesWitoutNotifications(const QMetaObject *metaObject)
void
ObjectNodeInstance
::
initializePropertyWatcher
(
const
ObjectNodeInstance
::
Pointer
&
objectNodeInstance
)
{
m_metaObject
=
new
NodeInstanceMetaObject
(
objectNodeInstance
);
const
QMetaObject
*
metaObject
=
objectNodeInstance
->
object
()
->
metaObject
();
for
(
int
propertyIndex
=
QObject
::
staticMetaObject
.
propertyCount
();
propertyIndex
<
metaObject
->
propertyCount
();
propertyIndex
++
)
{
if
(
QDeclarativeMetaType
::
isQObject
(
metaObject
->
property
(
propertyIndex
).
userType
()))
{
QObject
*
propertyObject
=
QDeclarativeMetaType
::
toQObject
(
metaObject
->
property
(
propertyIndex
).
read
(
objectNodeInstance
->
object
()));
if
(
propertyObject
&&
hasPropertiesWitoutNotifications
(
propertyObject
->
metaObject
()))
{
new
NodeInstanceMetaObject
(
objectNodeInstance
,
propertyObject
,
metaObject
->
property
(
propertyIndex
).
name
());
if
(
!
objectNodeInstance
->
modelNode
().
metaInfo
().
isComponent
())
{
// TODO: this is a nasty workaround which needs to be removed
const
QMetaObject
*
metaObject
=
objectNodeInstance
->
object
()
->
metaObject
();
m_metaObject
=
new
NodeInstanceMetaObject
(
objectNodeInstance
);
for
(
int
propertyIndex
=
QObject
::
staticMetaObject
.
propertyCount
();
propertyIndex
<
metaObject
->
propertyCount
();
propertyIndex
++
)
{
if
(
QDeclarativeMetaType
::
isQObject
(
metaObject
->
property
(
propertyIndex
).
userType
()))
{
QObject
*
propertyObject
=
QDeclarativeMetaType
::
toQObject
(
metaObject
->
property
(
propertyIndex
).
read
(
objectNodeInstance
->
object
()));
qDebug
()
<<
metaObject
->
property
(
propertyIndex
).
name
();
if
(
propertyObject
&&
hasPropertiesWitoutNotifications
(
propertyObject
->
metaObject
()))
{
new
NodeInstanceMetaObject
(
objectNodeInstance
,
propertyObject
,
metaObject
->
property
(
propertyIndex
).
name
());
}
}
}
}
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment