For what its worth, it *appears* that 10.7.3 fixes this issue, at least with 
the compositions ive tried to load and introspect - they report the menu items 
correctly now.

Thanks QC team for the fix. That was very annoying.

On Dec 13, 2011, at 5:14 PM, vade wrote:

> 
> Hello.
> 
> I have 2 compositions I am loading in 2 QCRenderers, and I am iterating over 
> the published input keys and their attributes. Each composition has a 
> published port, of type index, with menu items listed in the settings pane. I 
> am building a custom interface by checking for the existence of the 
> QCPortAttributeMenuItemsKey. One input splitter reports the 
> QCPortAttributeMenuItemsKey, the other does not. Looking at a very very 
> simple (attached) composition, reveals no reason for the discrepancy in the 
> QC Editor.
> 
> However, I was able to reproduce "losing" the QCPortAttributeMenuItemsKey in 
> the one published input that worked, via Property List editor: By opening the 
> composition, and editing the UserInfo Key (actually, just removing it), of 
> the published rootPatch -> publishedInputPorts-> (published item) 
> ->state->userInfo.
> 
> That resulted in the one working input (that returned proper 
> QCPortAttributeMenuItemsKey) to returning a key with a min and max, and no 
> menu items listed.
> 
> Attached is two *very simple* compositions which show the issue. 
> 
> The first, "Test":
> 
> This has an an input key published named "Texture Format", which properly 
> returns menu items. It has a second published input key named "test", which 
> in the user intefrace has menu items declared, but has no menu items reported 
> programmatically. This compostion *was not altered in any way* and was the 
> result of editing a QC composition, and noticing that ports behaved 
> differently.
> 
> The second composition "Test Copy",
> 
> Same as the first, in the editor, both input keys have menu items declared, 
> however, neither report any QCPortAttributeMenuItemsKey, and both report a 
> min and a max. This feat was accomplished by editing the user info keys of 
> the published ports, via Property List editor (as an experiment to try and 
> determine if I can fix this myself). My feeling is that somehow the userInfo 
> key had a min key added by somehow flipping a input splitter preference or 
> some such, but flipping it back did not remove it, resulting in a disparity 
> between the user interface, and the reported values. (total speculation...)
> 
> I am aware there is a known bug about QCPortAttributeMenuItemsKey, but, this 
> *really* inhibits any 3rd party applications from properly loading and 
> presenting user custom interfaces by introspecting keys and their attributes, 
> especially if the behavior is inconsistent.
> 
> Thank you.
> 
> 
> <Test copy.qtz><Test.qtz>
> 
> :The result of looking at "Test.qtz" via GDB, attemping to read the input 
> attributes of the port values from a loaded QCRenderer.
> 
> (gdb) po inputAttributes
> {
>   QCPortAttributeMaximumValueKey = 5;
>   QCPortAttributeMinimumValueKey = 0;
>   QCPortAttributeNameKey = Test;
>   QCPortAttributeTypeKey = QCPortTypeIndex;
> }
> (gdb) continue
> 
> (gdb) po inputAttributes
> {
>   QCPortAttributeMaximumValueKey = 14;
>   QCPortAttributeMenuItemsKey =     (
>       "GL_RGB4",
>       "GL_RGB5",
>       "GL_RGB8",
>       "GL_RGB10",
>       "GL_RGB12",
>       "GL_RGB16",
>       "GL_RGB16F_ARB",
>       "GL_RGBA2",
>       "GL_RGBA4",
>       "GL_RGB5_A1",
>       "GL_RGBA8",
>       "GL_RGB10_A2",
>       "GL_RGBA12",
>       "GL_RGBA16",
>       "GL_RGBA16F_ARB"
>   );
>   QCPortAttributeMinimumValueKey = 0;
>   QCPortAttributeNameKey = "Texture Format";
>   QCPortAttributeTypeKey = QCPortTypeIndex;
> }
> 
> _______________________________________________
> Do not post admin requests to the list. They will be ignored.
> Quartzcomposer-dev mailing list      (Quartzcomposer-dev@lists.apple.com)
> Help/Unsubscribe/Update your Subscription:
> http://lists.apple.com/mailman/options/quartzcomposer-dev/doktorp%40mac.com
> 
> This email sent to dokt...@mac.com

 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Quartzcomposer-dev mailing list      (Quartzcomposer-dev@lists.apple.com)
Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/quartzcomposer-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Reply via email to