Re: Hello?
Martin Sevior <[email protected]> Wed, 28 Apr 2004 13:59:39 +1000
| Newsgroups | gmane.comp.gnome.office.general |
|---|---|
| Organization | University of Melbourne |
| Message-ID | <[email protected]> |
On Wed, 2004-04-28 at 06:18, Colin JN Breame wrote: > On Tue, 2004-04-27 at 14:19 +1000, Martin Sevior wrote: > [snip] > > > > So my advice is... > > > > 1. You need a genuine Model-View-Controller paradim or you have no hope. > > This means you must have a good document model like a AbiWord's > > piecetable. > > I've looked at the abiword source a while back and I am familar with > bits of it. Is the piecetable a design pattern or is it something > specific to abiword? > It's a design pattern. The idea is to have a logical model of your document. You build different views from the model as needed. eg. 1. You build the view of the slide as you edit it. 2. You build a view of the slide as you present it (including the animations.) 3. You build a multi-slide view. (Show lots of little slide thumb nails that can be dragged around and hidden or exposed.) 4. You build little previews of your slide with animations. 5. You import a file-format into your model. 6. You export your model to a file-format. In abiword this is all done via opaque listener classes that derive from an abstract base class. The model does know or care what it's listener's does. It just broadcasts itself over the listeners. The Model needs to be able handle arbitrary collections segments of your document with different text properties (What font, what size font, whether the text is Bolded, superscripted, what indent margin is...) and to be rich enough to handle document structures (like text boxes and tables) as well as describing different animation sequences and which sequence applies to which pieces of text. The model also needs a way of undo/redo-ing itself. Undo is a really useful feature and is absolutely neceessary in an Power Point clone You also need to be able to group together properties into what we would call "styles". These are arbitrary collections of properties. For example you could use a style to define a slide template, so that every time you "insert New slide" the basic template is inserted. The user can then overide the properties as needed. All this functionality currently resides in AbiWord and maybe my own knowledge of how AbiWord works and why it works has biassed me into thinking the above things are needed. On the other hand both OO.o and I'm pretty sure MS have gone a similar route so I suspect that this is truely the right way to a program like this. By all means do you own thorough investigation. Please learn fromt he mistakes of the past. Good Luck! Martin > > > > 2. You need a genuine rich text, multi-view editor like AbiWord or you > > have no hope. > > > > 3. You need to able to invest a minimum of 2 solid man-years plus have > > numerous helpers and leverage as much as possible from what is already > > written to have any hope. > > I have no illusions about the scale of the project. > > > > > Good Luck! > > Thanks! > > > > > Martin > > > > > > > _______________________________________________ > > > gnome-office-list mailing list > > > [email protected] > > > http://mail.gnome.org/mailman/listinfo/gnome-office-list > > > > _______________________________________________ > gnome-office-list mailing list > [email protected] > http://mail.gnome.org/mailman/listinfo/gnome-office-list