• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
DO UI Patterns
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

DO UI Patterns


  • Subject: DO UI Patterns
  • From: Timothy Ritchey <email@hidden>
  • Date: Fri, 26 Apr 2002 10:53:14 -0500

I am working on an analysis package, and working on a design for plugins. If you grab the 5.dmg application image at:

http://homepage.mac.com/tritchey

you can see a beginning prototype. If you select the blue cube in the toolbar, a palette of objects opens. These objects are all in a bundle that is developed separate from the application, and they communicate right now using a protocol and a default plugin factory in the bundle. The only object that does anything right now is the Import object. If you drag it into the upper view, and then select it, a view for the object is loaded in the lower pane. This view exists in a NIB in the plugin bundle. Ultimately, you will be able to drag multiple objects, connect them together (much like IB, or AVS if anyone remembers that program), and do some drag-and-drop analysis.

At the moment, everything is running as a monolithic, single-threaded application. Ideally, I would like each plugin object running in its own thread, interacting using distributed objects. DO would also allow DnD of objects residing on multiple machines, so that you might pull in data from one machine, use a back-end server/cluster to do the number crunching, and visualize locally.

I have two issues I am trying to work out:

a) Will I incur a penalty if I just use a generic vending mechanism for both local and remote objects? That is, if the local objects are just running in different threads in the application, but I vend them using the defaultConnection, instead of connectionWithReceivePort:sendPort: as is suggested, will I take a hit? I am thinking of CORBA-like optimizations when objects are in the same address space.

b) Is there a pattern for passing view objects from a distributed object to the main application (since we want all UI stuff running in one thread right)? can I just have a method in my protocol called:

- (NSView*)view;

grab the view the object wants to export, and away we go? The main app thread is where the view should reside, but it is being controlled by the distributed object. Is there any suggested reading on this.

I am trying to get a feel for the "right" way to handle this before I develop too much of this code.

Cheers,
tim
_______________________________________________
cocoa-dev mailing list | email@hidden
Help/Unsubscribe/Archives: http://www.lists.apple.com/mailman/listinfo/cocoa-dev
Do not post admin requests to the list. They will be ignored.

  • Prev by Date: Re: Undo - Redo?
  • Next by Date: Re: NSInvalidArgumentException : can't send message to abstract object
  • Previous by thread: ANNOUNCE: Pantomime 1.0.3
  • Next by thread: Objective-C coding Stndards
  • Index(es):
    • Date
    • Thread