Andre Poenitz wrote: >> NestInset include 0 or more cells then? > > No, 1 or more.
Ok. So InsetGraphic (the one without caption) doesn't. >> > Collapsable, Tabular, Graphics, OptArg, Environment etc simply derive >> > from NestInset. >> >> So *all* insets derive from NestInset? > > No. Only those with one or more boxes of 'real text'. > >> What does a graphic has to do with cells? > > The caption is 'ordinary text'. So it is a cell. So now you don't want a plain graphic (InsetGraphic) anymore, only a grpahic with caption? >> For instance, does Graphics holds the image dimensions in the >> derived dimension variables from NestInset or does it hold new ones? > > The image has dimension of its own -- if this is needed. The derived > dimension always give the dimension of the whole thing. And the image deals with clicks, draw itself, etc. The figure itself *is* a separate entity. And is an inset-like entity. So why is not a separate inset. >> What would be the relation between "FigureWithCaption" and Graphic, >> exactly? > > ? An ordinary graphic doesn't have a caption. >> [What if for instance you need to put two graphics in an inset? > > Like what? > >> btw, all these stupid examples are trying to show that having some >> "non-text" inset included somehow in an inset (*not* via text/cell) could >> be useful. You don't think so, why?] > > Not sure why you think you know what I think but I don't think what you > think I do. ;-) > Of course every inset can have 'non cell' stuff. I cited \sqrt for > instance. This has a cell, and it has some kind of decoration. > The decoration could be everything, some hand-drawn line, three images, > whatever. Well, the point is that the non-cell stuff is inset-like (like images). >> [btw2 I don't understand why is it bad to use polymorphic objects >> non-polymorphically sometimes] > > If the only use of something is non-polymorphical, there's no need to > make it so. Or to make the code to use it polymorphically to avoid code duplication (if each inset holds a list of included insets in some accessible way, then click-passing for instance could be implemented in the inset base class). Regards, Alfredo