04-29-2014 05:45 PM
I’d like to suggest a small change to the way the actor framework message maker works.
At present - regardless of the icon of the method for which the message class is being produced - the following VI icons are created:
Do.vi
Send <Method>.vi
<Method> Msg.ctl
How about if instead the message class takes its VI icons from the method (with the existing glyphs layered on top). So if the method icon is:
The following icons will be produced:
Do.vi
Send <Method>.vi
<Method> Msg.ctl
OK, its not gorgous and may need a bit of tweeking but I think this might make the Actor Framework quicker and more intuitive to use. Any thoughts?
Dan
CLA
04-29-2014 05:51 PM
Yes, this is a great idea and I would love it
04-29-2014 06:56 PM
I was going to simply post that the community had discussed this idea before and rejected it. But I just had a brand new idea as a result of your post. What are your thoughts about this?
One of the problems with the version you suggested is that it creates VIs that look like they are members of Alpha. They aren't members of Alpha... they are members of an entirely new class with its own header -- a header that needs to be unique for each message class if we're going to uphold the rules of class iconography. The question has always been how to create a banner for the new message class, and various people have described ways to generate text or squeeze the method's icon down into a banner height.
My thought this evening is that we could use a much larger height. This would only retain the bottom of the original method's icon, but it would continue to indicate which class of actor could receive this message, without looking like it was a member of Alpha itself.
Thoughts?
04-29-2014 06:59 PM
PS: My appologies if others have suggested this in the past -- there have been many ideas for fixing the icons over the years. Tonight, this seems like a good idea to me, and I grant the possibility that someone has suggested it before and I may have forgotten it. That happens sometimes. And I might decide I don't actually like this approach in the morning. It still has downsides, but tonight those downsides seem better than what we have right now.
04-30-2014 03:04 AM
I had a look at something like this before. I played around with the message maker code to generate icons like this:
I choose to use a small badge Icon with a generic message class header on top of the Actor method Icon. What I like in your approach is that you maintain a stronger visible relation with the actor class but I find the header a little to big.
Looking at this I would probably like to take the complete actor method class as the base icon for both the private data and at least the send method of the message class and use some form of a badge icon design to indicate that your dealing with the message for the actor instead of the actual actor method.
Just my two cents.
04-30-2014 07:33 AM
Perfect.
I've a slight preference for this over Karsten's suggestion (also good) because it seems to retain more information from the original icon.
04-30-2014 08:40 AM
The one tricky part is that it assumes the banner-style of the original class. 99% of classes uses this style for identifying their member VIs, but some do have just a standalone glyph. I think we could be creative in reverse engineering the original method icon layers to build the composite: Take the original method's library banner out of the layer stack, flatten the stack into one image and remove the top N pixels (where N is however many are in my picture posted above), put the library layer back on top minus any bar across the bottom (if it exists), then use the result as the new library icon.
04-30-2014 09:39 AM
A fix for this would save me so much time! What I currently do is move the blue arrow to the bottom right corner, make the banner the same color as the class that can receive the message, and make the icon text bleed into the banner. Also, the base icon you show for your Do.vi is the one my message make creates for my Send.vi. Why is that?
04-30-2014 09:40 AM
Both the suggestions from Aristos and from Karsten would be a great improvement. It looks like the advantage of Karsten's is compatibility with a wider variety of original method icon styles. The advantage of Aristos' is it's easier to see the original class relationship.
04-30-2014 10:23 AM
Something like this could show a stronger relationship?