[prev in list] [next in list] [prev in thread] [next in thread] 

List:       koffice-devel
Subject:    Re: embedded document views
From:       David Faure <david () mandrakesoft ! com>
Date:       2002-10-24 9:41:56
[Download RAW message or body]

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On Tuesday 22 October 2002 12:31, Philipp Müller wrote:
> Just one thing I was thinking of and maybe John as well. Currently
> paintChild or paintEverything doesn't contain a view object. This is fine with me as I
> don't need a full view object. The only thing I currently would like to have
> is somehow an additional QMatrix information.
> This QMatrix should contain additional to the parent QMatrix for zoom and
> positioning of the embedded object in the parent object some information about
> which part of the embedded object (translate) at which zoom level (scale) I
> want to see. Maybe additonal if I want to see the embedded object in the
> parent rotated as well.

Scaling is already possible, with the "double zoomX, double zoomY" arguments.
Translating: see below.
Rotating: Hmm, IIRC this is why Torben added a matrix to KoChild (KoDocumentChild/KoViewChild).
I don't remember how it works though....

> Think of I embed KSpread in KWord. Currently I can only show the range
> beginning with A1 with the zoom of the parent KWord. Now I want to show the range
> C10:E15 only, as the rest is not useful to show. The only way to do it
> currently is to delete the left/top rows. 

This was discussed a few times already. Usually, scrolling around in a document
doesn't modify it. But if the above was implemented, scrolling around in an
embedded document would change the resulting document, which isn't good.
Or are you thinking of another way of selecting which area of the embedded
document should be visible in the parent doc?

> Addtional, maybe I want to show C10:Z40,
> so I need to zoom it to show it. Not possible at all at the moment.

Possible at the API level, but at the moment the user can't choose a zoom level
for an embedded object, independently from the parent doc's zoom level, indeed.
Sounds like something for a property dialog maybe?

> Don't
> know if rotating needs to be done (maybe a presentation embedded in KWord shall
> be rotated as it is landscape and KWord is portrait - didn't test this yet).

There is a demand for rotating stuff in general.

> This cannot be handled with current paintEverything and I think it doesn't
> need to be a full view object, just an additional QMatrix in KoDocumentChild
> can do the trick.

I think it's already there.

> In principle you can even store it in the child itself with some hacks, but
> this will in the end make troubles if I want to link the embedded file only
> and have it embedded several times with different "views" on it.

That's why we have KoViewChild ... it's the view-specific information about an embedded object.
The document-global info is KoDocumentChild.
(KoChild is simply a base class used by those two, to share some code).

> The current approach with paintContent is fine for simple embedding and for
> generating previews, thumbnails, etc. But not for all functionality we need.
> 
> So if we redo the embedding stuff (which is of course BIC), we should think
> of such addtional information.

AFAICS we don't have to redo the stuff, only to use properly what Torben
put in place long ago.... but this needs more digging into it.

- -- 
David FAURE, david@mandrakesoft.com, faure@kde.org
http://people.mandrakesoft.com/~david/
Contributing to: http://www.konqueror.org/, http://www.koffice.org/
Get the latest KOffice - http://download.kde.org/stable/koffice-1.2/
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.7 (GNU/Linux)

iD8DBQE9t8Bk72KcVAmwbhARArA6AJwIeDJVya9ln5lafvn+GQ0cD8RnMQCdEkNF
0qEPkjcI/cK114XmqWSDTcw=
=7Sdf
-----END PGP SIGNATURE-----

_______________________________________________
koffice-devel mailing list
koffice-devel@mail.kde.org
http://mail.kde.org/mailman/listinfo/koffice-devel
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic