Best way to implement an iMovie like clip tray?
Best way to implement an iMovie like clip tray?
- Subject: Best way to implement an iMovie like clip tray?
- From: Benjamin Dunton <email@hidden>
- Date: Wed, 27 Apr 2005 00:00:26 -0400
All,
I am trying to implement a tray similar to iMovie's clip timeline. The
obvious place to start is using an NSMatrix w/i a NSScrollView. This
poses a couple of issues. My objects provide the ability to change
size dynamically , e.g. user can stretch the width only, but from
either the left or the right. Also, the user can click on a view and
drag it left to right and place it in any arbitrary spot. I will need
the other objects to be aware that another object is moving, and shift
to the left or right accordingly, i.e. getting pushed to the left or
right.
The first issue, dynamic resize, rules out the NSMatrix class because
the cells in the NSMatrix all have to be the same size. Anyone
subclassed NSMatrix and overridden the size restriction?
So I tired just making my views a subclass of a NSScrollView. This
works some what if I have multiple instances of my view in the
NSScrollView, e.g. I have two views that I select and make a subclass
of NSScrollView in IB. If I have two, I can move the views only within
their NSView that IB creates, but moving the views to the right does
not cause the scroll view to scroll or create a scroll bar. If I
subclass just one view in IB, it can not be dragged at all. It is
locked inside of its view that gets put inside of the NSScrollView. It
can grow/shrink in width when the user clicks and drags the sides, but
I need it to be able to be moved within the NSScrollView.
I am guessing I will have to write my own NSControl as well as NSCell
subclasses. This is new ground for me, and I was wondering if anyone
had any suggestions as to where to start, examples, etc.
Thanks again,
Ben Dunton
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Cocoa-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden