[Libreoffice-commits] core.git: 3 commits - libreofficekit/README sd/source

Andrzej Hunt andrzej.hunt at collabora.com
Thu Jul 17 05:28:26 PDT 2014


 libreofficekit/README              |   41 +++++++++++++++++++++++++++++++++++++
 sd/source/ui/inc/DrawViewShell.hxx |    2 -
 sd/source/ui/unoidl/unomodel.cxx   |    9 ++++++--
 3 files changed, 49 insertions(+), 3 deletions(-)

New commits:
commit a39f690a2ac9bf8a04d3371cc837ca81bd85f22c
Author: Andrzej Hunt <andrzej.hunt at collabora.com>
Date:   Tue Jul 15 09:50:47 2014 +0200

    Render slides by default.
    
    We should probably introduce an API to allow selecting notes instead, however
    the default mode is to open whichever view we had open last for a given
    document -- whereas for nowwe probably always want to render the slides.
    
    Change-Id: I26540613d1a510f23e5abfc8fee2ad743c180f34

diff --git a/sd/source/ui/unoidl/unomodel.cxx b/sd/source/ui/unoidl/unomodel.cxx
index f86e9cb..498c0c1 100644
--- a/sd/source/ui/unoidl/unomodel.cxx
+++ b/sd/source/ui/unoidl/unomodel.cxx
@@ -2225,8 +2225,6 @@ void SdXImpressDocument::paintTile( VirtualDevice& rDevice,
         Region(
             Rectangle( Point( nTilePosX, nTilePosY ),
                        Size( nTileWidth, nTileHeight ) ) ) );
-
-    // TODO: Set page kind in frameview?
 }
 
 void SdXImpressDocument::setPart( int nPart )
@@ -2234,6 +2232,13 @@ void SdXImpressDocument::setPart( int nPart )
     DrawViewShell* pViewSh = dynamic_cast< DrawViewShell* >( mpDoc->GetDocSh()->GetViewShell() );
     if (pViewSh)
     {
+        // TODO: have an API to allow selecting between PK_STANDARD (just slide)
+        // and PK_NOTES (which shows the combined slide above notes). There is alo
+        // a PK_HANDOUT -- that however just shows multiple empty pages (it's also
+        // only possible to select page 0 in this mode, I have no idea how you
+        // then actually select what is on the handout page, which defaults to
+        // a 4x4 grid of empty pages).
+        pViewSh->SetPageKind( PK_STANDARD );
         pViewSh->SwitchPage( nPart );
     }
 }
commit 0618c5b854af8d1cb3dc19f7babbdfb45e8f4504
Author: Andrzej Hunt <andrzej.hunt at collabora.com>
Date:   Tue Jul 15 09:49:24 2014 +0200

    Allow setting DrawViewShell PageKind directly.
    
    Currently the only way to change the PageKind is via the UI controls
    (i.e. via ExecCtrl) -- however for tiled rendering we want to select
    the PageKind directly.
    
    Change-Id: I3a3fa8f8cefaa0e0212832aef4026433fc596263

diff --git a/sd/source/ui/inc/DrawViewShell.hxx b/sd/source/ui/inc/DrawViewShell.hxx
index 125d007..37c2ec3 100644
--- a/sd/source/ui/inc/DrawViewShell.hxx
+++ b/sd/source/ui/inc/DrawViewShell.hxx
@@ -240,7 +240,7 @@ public:
     virtual bool    PrepareClose( bool bUI = true ) SAL_OVERRIDE;
 
     PageKind        GetPageKind() { return mePageKind; }
-
+    void            SetPageKind( PageKind ePageKind ) { mePageKind = ePageKind; }
     Point           GetMousePos() { return maMousePos; }
     bool            IsMousePosFreezed() { return mbMousePosFreezed; }
     void            SetMousePosFreezed( bool bIn ) { mbMousePosFreezed = bIn; }
commit 97a38b1bd337bab301bde20a408a1fc7b7a3cbbf
Author: Andrzej Hunt <andrzej.hunt at collabora.com>
Date:   Tue Jul 15 14:53:07 2014 +0200

    Add LOK Readme.

diff --git a/libreofficekit/README b/libreofficekit/README
new file mode 100644
index 0000000..267b20b
--- /dev/null
+++ b/libreofficekit/README
@@ -0,0 +1,41 @@
+LibreOfficeKit
+**************
+
+LibreOfficeKit can be used for accessing LibreOffice functionality
+outwith LibreOffice, through C/C++, without any need to use UNO.
+
+For now it only offers document conversion (in addition to an experimental
+tiled rendering API).
+
+Integrating LOK into other software
+-----------------------------------
+
+You will need to integrate shim.c into your program, e.g. as a static library,
+in order to be able to use LOK. You will then be able to access LOK via
+the functions in LibreOfficeKit.h[xx].
+
+(LibreOfficeKit.hxx is a simple and fully inlined C++ wrapper for the same
+ functionality as in LibreOfficeKit.h.)
+
+An example program can be seen on:
+https://github.com/ojwb/lloconv	
+
+Tiled Rendering
+---------------
+
+To use LOK Tiled Rendering you will need the follwing before the LOK includes:
+#define LOK_USE_UNSTABLE_API
+
+Currently only bitmap-buffer rendering is supported, with a 32-bit RGBA
+colourspace (further alternatives could feasibly be implemented as needed).
+Scanlines are ordered top-down (whereas LibreOffice will internally default
+to bottom-up).
+
+LibreOfficeKitGtk
+*****************
+
+Currently consists of only a very basic gtk+ document viewer widget.
+
+Currently this simply renders the entire document as one large tile (for
+writer) and/or entire sheet for calc, which can be somewhat slow with
+larger documents.


More information about the Libreoffice-commits mailing list