[Libreoffice-commits] core.git: Branch 'distro/collabora/cp-4.2' - scp2/source
scp2/source/winexplorerext/registryitem_winexplorerext.scp | 18 + 1 file changed, 18 insertions(+) New commits: commit 1c5b55c92d3ea9ad43534f6020ba627e95178e28 Author: Maxime de Roucy mdero...@linagora.com Date: Mon Dec 22 13:57:55 2014 +0100 fdo#67534 Fix Property Handler shared lock As explained in the following link, access mode should be set to EnableShareDenyNone to avoid blocking others process to access the file opened by the Property Handler. http://msdn.microsoft.com/en-us/library/windows/desktop/dd894084%28v=vs.85%29.aspx Reviewed-on: https://gerrit.libreoffice.org/13596 Reviewed-by: Michael Meeks michael.me...@collabora.com Tested-by: Andras Timar andras.ti...@collabora.com Conflicts: scp2/source/winexplorerext/registryitem_winexplorerext.scp Change-Id: I61cc251078c20f6a8cf7fa052c222a86e4e383b3 diff --git a/scp2/source/winexplorerext/registryitem_winexplorerext.scp b/scp2/source/winexplorerext/registryitem_winexplorerext.scp index a8eda1d..ccd1dba 100644 --- a/scp2/source/winexplorerext/registryitem_winexplorerext.scp +++ b/scp2/source/winexplorerext/registryitem_winexplorerext.scp @@ -339,6 +339,15 @@ RegistryItem gid_Regitem_Clsid_AE424E85_F6DF_4910_A6A9_438797986431_PropHdl Value = %PRODUCTNAME Property Handler; End +RegistryItem gid_Regitem_Clsid_AE424E85_F6DF_4910_A6A9_438797986431_EnableShareDenyWrite +ParentID = PREDEFINED_HKEY_CLASSES_ROOT; +ModuleID = gid_Module_Optional_Winexplorerext; +ComponentCondition = VersionNT = 600; +Subkey = CLSID\{AE424E85-F6DF-4910-A6A9-438797986431}; +Name = EnableShareDenyNone; +Value = #1; +End + RegistryItem gid_Regitem_Clsid_AE424E85_F6DF_4910_A6A9_438797986431_PropHdl_x64 ParentID = PREDEFINED_HKEY_CLASSES_ROOT; ModuleID = gid_Module_Optional_Winexplorerext_x64; @@ -347,6 +356,15 @@ RegistryItem gid_Regitem_Clsid_AE424E85_F6DF_4910_A6A9_438797986431_PropHdl_x64 Value = %PRODUCTNAME Property Handler; End +RegistryItem gid_Regitem_Clsid_AE424E85_F6DF_4910_A6A9_438797986431_EnableShareDenyWrite_x64 +ParentID = PREDEFINED_HKEY_CLASSES_ROOT; +ModuleID = gid_Module_Optional_Winexplorerext_x64; +ComponentCondition = VersionNT = 600; +Subkey = CLSID\{AE424E85-F6DF-4910-A6A9-438797986431}; +Name = EnableShareDenyNone; +Value = #1; +End + RegistryItem gid_Regitem_Clsid_AE424E85_F6DF_4910_A6A9_438797986431_InProcServer32 ParentID = PREDEFINED_HKEY_CLASSES_ROOT; ModuleID = gid_Module_Optional_Winexplorerext; ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Branch 'libreoffice-4-4' - scp2/source
scp2/source/winexplorerext/registryitem_winexplorerext.scp | 18 + 1 file changed, 18 insertions(+) New commits: commit 807e29cbf992ac8bdd7ae6e974bd72ea731d274c Author: Maxime de Roucy mdero...@linagora.com Date: Mon Dec 22 13:57:55 2014 +0100 fdo#67534 Fix Property Handler shared lock As explained in the following link, access mode should be set to EnableShareDenyNone to avoid blocking others process to access the file opened by the Property Handler. http://msdn.microsoft.com/en-us/library/windows/desktop/dd894084%28v=vs.85%29.aspx Change-Id: I61cc251078c20f6a8cf7fa052c222a86e4e383b3 Reviewed-on: https://gerrit.libreoffice.org/13596 Reviewed-by: Michael Meeks michael.me...@collabora.com Tested-by: Andras Timar andras.ti...@collabora.com Reviewed-on: https://gerrit.libreoffice.org/14301 Reviewed-by: Andras Timar andras.ti...@collabora.com diff --git a/scp2/source/winexplorerext/registryitem_winexplorerext.scp b/scp2/source/winexplorerext/registryitem_winexplorerext.scp index 32c83bc..38a09fd 100644 --- a/scp2/source/winexplorerext/registryitem_winexplorerext.scp +++ b/scp2/source/winexplorerext/registryitem_winexplorerext.scp @@ -410,6 +410,15 @@ RegistryItem gid_Regitem_Clsid_AE424E85_F6DF_4910_A6A9_438797986431_PropHdl Value = %PRODUCTNAME Property Handler; End +RegistryItem gid_Regitem_Clsid_AE424E85_F6DF_4910_A6A9_438797986431_EnableShareDenyWrite +ParentID = PREDEFINED_HKEY_CLASSES_ROOT; +ModuleID = gid_Module_Optional_Winexplorerext; +ComponentCondition = VersionNT = 600; +Subkey = CLSID\{AE424E85-F6DF-4910-A6A9-438797986431}; +Name = EnableShareDenyNone; +Value = #1; +End + #ifdef BUILD_X64 RegistryItem gid_Regitem_Clsid_AE424E85_F6DF_4910_A6A9_438797986431_PropHdl_x64 @@ -420,6 +429,15 @@ RegistryItem gid_Regitem_Clsid_AE424E85_F6DF_4910_A6A9_438797986431_PropHdl_x64 Value = %PRODUCTNAME Property Handler; End +RegistryItem gid_Regitem_Clsid_AE424E85_F6DF_4910_A6A9_438797986431_EnableShareDenyWrite_x64 +ParentID = PREDEFINED_HKEY_CLASSES_ROOT; +ModuleID = gid_Module_Optional_Winexplorerext_x64; +ComponentCondition = VersionNT = 600; +Subkey = CLSID\{AE424E85-F6DF-4910-A6A9-438797986431}; +Name = EnableShareDenyNone; +Value = #1; +End + #endif RegistryItem gid_Regitem_Clsid_AE424E85_F6DF_4910_A6A9_438797986431_InProcServer32 ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Branch 'libreoffice-4-3' - scp2/source
scp2/source/winexplorerext/registryitem_winexplorerext.scp | 18 + 1 file changed, 18 insertions(+) New commits: commit b25bef87eece6d5ed0492b374e5bf6cc4beefcbe Author: Maxime de Roucy mdero...@linagora.com Date: Mon Dec 22 13:57:55 2014 +0100 fdo#67534 Fix Property Handler shared lock As explained in the following link, access mode should be set to EnableShareDenyNone to avoid blocking others process to access the file opened by the Property Handler. http://msdn.microsoft.com/en-us/library/windows/desktop/dd894084%28v=vs.85%29.aspx Reviewed-on: https://gerrit.libreoffice.org/13596 Reviewed-by: Michael Meeks michael.me...@collabora.com Tested-by: Andras Timar andras.ti...@collabora.com Conflicts: scp2/source/winexplorerext/registryitem_winexplorerext.scp Change-Id: I61cc251078c20f6a8cf7fa052c222a86e4e383b3 Reviewed-on: https://gerrit.libreoffice.org/14300 Reviewed-by: Andras Timar andras.ti...@collabora.com Tested-by: Andras Timar andras.ti...@collabora.com diff --git a/scp2/source/winexplorerext/registryitem_winexplorerext.scp b/scp2/source/winexplorerext/registryitem_winexplorerext.scp index a8eda1d..ccd1dba 100644 --- a/scp2/source/winexplorerext/registryitem_winexplorerext.scp +++ b/scp2/source/winexplorerext/registryitem_winexplorerext.scp @@ -339,6 +339,15 @@ RegistryItem gid_Regitem_Clsid_AE424E85_F6DF_4910_A6A9_438797986431_PropHdl Value = %PRODUCTNAME Property Handler; End +RegistryItem gid_Regitem_Clsid_AE424E85_F6DF_4910_A6A9_438797986431_EnableShareDenyWrite +ParentID = PREDEFINED_HKEY_CLASSES_ROOT; +ModuleID = gid_Module_Optional_Winexplorerext; +ComponentCondition = VersionNT = 600; +Subkey = CLSID\{AE424E85-F6DF-4910-A6A9-438797986431}; +Name = EnableShareDenyNone; +Value = #1; +End + RegistryItem gid_Regitem_Clsid_AE424E85_F6DF_4910_A6A9_438797986431_PropHdl_x64 ParentID = PREDEFINED_HKEY_CLASSES_ROOT; ModuleID = gid_Module_Optional_Winexplorerext_x64; @@ -347,6 +356,15 @@ RegistryItem gid_Regitem_Clsid_AE424E85_F6DF_4910_A6A9_438797986431_PropHdl_x64 Value = %PRODUCTNAME Property Handler; End +RegistryItem gid_Regitem_Clsid_AE424E85_F6DF_4910_A6A9_438797986431_EnableShareDenyWrite_x64 +ParentID = PREDEFINED_HKEY_CLASSES_ROOT; +ModuleID = gid_Module_Optional_Winexplorerext_x64; +ComponentCondition = VersionNT = 600; +Subkey = CLSID\{AE424E85-F6DF-4910-A6A9-438797986431}; +Name = EnableShareDenyNone; +Value = #1; +End + RegistryItem gid_Regitem_Clsid_AE424E85_F6DF_4910_A6A9_438797986431_InProcServer32 ParentID = PREDEFINED_HKEY_CLASSES_ROOT; ModuleID = gid_Module_Optional_Winexplorerext; ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: scp2/source
scp2/source/winexplorerext/registryitem_winexplorerext.scp | 18 + 1 file changed, 18 insertions(+) New commits: commit 25686bbcd2d39000640e2b9db835b5b4bea653c1 Author: Maxime de Roucy mdero...@linagora.com Date: Mon Dec 22 13:57:55 2014 +0100 fdo#67534 Fix Property Handler shared lock As explained in the following link, access mode should be set to EnableShareDenyNone to avoid blocking others process to access the file opened by the Property Handler. http://msdn.microsoft.com/en-us/library/windows/desktop/dd894084%28v=vs.85%29.aspx Change-Id: I61cc251078c20f6a8cf7fa052c222a86e4e383b3 Reviewed-on: https://gerrit.libreoffice.org/13596 Reviewed-by: Michael Meeks michael.me...@collabora.com Tested-by: Andras Timar andras.ti...@collabora.com diff --git a/scp2/source/winexplorerext/registryitem_winexplorerext.scp b/scp2/source/winexplorerext/registryitem_winexplorerext.scp index 32c83bc..38a09fd 100644 --- a/scp2/source/winexplorerext/registryitem_winexplorerext.scp +++ b/scp2/source/winexplorerext/registryitem_winexplorerext.scp @@ -410,6 +410,15 @@ RegistryItem gid_Regitem_Clsid_AE424E85_F6DF_4910_A6A9_438797986431_PropHdl Value = %PRODUCTNAME Property Handler; End +RegistryItem gid_Regitem_Clsid_AE424E85_F6DF_4910_A6A9_438797986431_EnableShareDenyWrite +ParentID = PREDEFINED_HKEY_CLASSES_ROOT; +ModuleID = gid_Module_Optional_Winexplorerext; +ComponentCondition = VersionNT = 600; +Subkey = CLSID\{AE424E85-F6DF-4910-A6A9-438797986431}; +Name = EnableShareDenyNone; +Value = #1; +End + #ifdef BUILD_X64 RegistryItem gid_Regitem_Clsid_AE424E85_F6DF_4910_A6A9_438797986431_PropHdl_x64 @@ -420,6 +429,15 @@ RegistryItem gid_Regitem_Clsid_AE424E85_F6DF_4910_A6A9_438797986431_PropHdl_x64 Value = %PRODUCTNAME Property Handler; End +RegistryItem gid_Regitem_Clsid_AE424E85_F6DF_4910_A6A9_438797986431_EnableShareDenyWrite_x64 +ParentID = PREDEFINED_HKEY_CLASSES_ROOT; +ModuleID = gid_Module_Optional_Winexplorerext_x64; +ComponentCondition = VersionNT = 600; +Subkey = CLSID\{AE424E85-F6DF-4910-A6A9-438797986431}; +Name = EnableShareDenyNone; +Value = #1; +End + #endif RegistryItem gid_Regitem_Clsid_AE424E85_F6DF_4910_A6A9_438797986431_InProcServer32 ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/86/3086/1'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/86/3086/2'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/82/3582/1'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/86/7286/2'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/82/3582/2'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/82/3582/3'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/86/7286/4'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/86/7286/1'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/86/7286/3'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/76/2376/2'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/76/2376/1'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/83/3083/1'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/46/2046/2'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/82/3082/2'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/47/2047/2'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/82/3082/1'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/84/3084/1'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/43/2243/3'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/46/2046/1'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/43/2243/2'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/43/2243/1'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/83/3083/2'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/47/2047/1'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/80/1180/1'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/96/3096/1'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/83/3583/1'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/83/3583/2'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] help.git: Changes to 'refs/changes/84/2484/4'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/85/3085/1'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Changes to 'refs/changes/85/3085/2'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] help.git: Changes to 'refs/changes/84/2484/2'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] help.git: Changes to 'refs/changes/84/2484/1'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: include/xmloff sw/inc sw/source xmloff/source
include/xmloff/txtimp.hxx| 49 ++--- include/xmloff/xmlictxt.hxx | 36 +++--- sw/inc/doc.hxx |8 - sw/inc/redline.hxx | 11 +- sw/source/core/doc/docfmt.cxx| 103 +-- xmloff/source/text/XMLChangeElementImportContext.cxx |7 - xmloff/source/text/XMLChangeElementImportContext.hxx | 14 ++ xmloff/source/text/XMLChangedRegionImportContext.cxx |8 + xmloff/source/text/XMLChangedRegionImportContext.hxx | 11 +- xmloff/source/text/txtimp.cxx|3 10 files changed, 146 insertions(+), 104 deletions(-) New commits: commit f215e634de4926def396d8442b8b15a912cb69e8 Author: Maxime de Roucy mdero...@linagora.com Date: Thu Apr 4 18:05:24 2013 +0200 comments and code reformat Change-Id: Ib4e45cb85c9e5e5ffa6476c939300c6795412b1a Reviewed-on: https://gerrit.libreoffice.org/3582 Reviewed-by: Caolán McNamara caol...@redhat.com Tested-by: Caolán McNamara caol...@redhat.com diff --git a/include/xmloff/txtimp.hxx b/include/xmloff/txtimp.hxx index 2ac668d..0fc68b5 100644 --- a/include/xmloff/txtimp.hxx +++ b/include/xmloff/txtimp.hxx @@ -674,36 +674,53 @@ public: // (to be implemented in sw/filter/xml/txtparai.hxx) virtual void RedlineAdd( -const OUString rType, /// redline type (insert, del,... ) -const OUString rId, /// use to identify this redline -const OUString rAuthor, /// name of the author -const OUString rComment,/// redline comment -const ::com::sun::star::util::DateTime rDateTime, /// date+time -sal_Bool bMergeLastParagraph); /// merge last paras +/// redline type (insert, del,... ) +const OUString rType, +/// use to identify this redline +const OUString rId, +/// name of the author +const OUString rAuthor, +/// redline comment +const OUString rComment, +/// date+time +const ::com::sun::star::util::DateTime rDateTime, +/// merge last paras +sal_Bool bMergeLastParagraph); + virtual ::com::sun::star::uno::Reference ::com::sun::star::text::XTextCursor RedlineCreateText( -::com::sun::star::uno::Reference /// needed to get the document -::com::sun::star::text::XTextCursor rOldCursor, -const OUString rId);/// ID used to RedlineAdd() call +/// needed to get the document +::com::sun::star::uno::Reference ::com::sun::star::text::XTextCursor rOldCursor, +/// ID used to RedlineAdd() call +const OUString rId); + virtual void RedlineSetCursor( -const OUString rId, /// ID used to RedlineAdd() call -sal_Bool bStart,/// start or end Cursor -sal_Bool bIsOutsideOfParagraph);/// range is not within text:p -virtual void RedlineAdjustStartNodeCursor( -sal_Bool bStart); +/// ID used to RedlineAdd() call +const OUString rId, +/// start or end Cursor +sal_Bool bStart, +/// range is not within text:p +sal_Bool bIsOutsideOfParagraph); + +virtual void RedlineAdjustStartNodeCursor( sal_Bool bStart ); virtual void SetShowChanges( sal_Bool bShowChanges ); virtual void SetRecordChanges( sal_Bool bRecordChanges ); virtual void SetChangesProtectionKey( const ::com::sun::star::uno::Sequencesal_Int8 rProtectionKey ); -// access to the last open redline ID: +/// get the last open redline ID OUString GetOpenRedlineId(); +/// modify the last open redline ID void SetOpenRedlineId( OUString rId); +/// reset the last open redline ID void ResetOpenRedlineId(); // #107848# -// Access methods to the inside_deleted_section flag (redlining) +/** redlining : Setter to remember the fact we are inside/outside + * a text:deletion element (deleted redline section) */ void SetInsideDeleteContext(bool const bNew); +/** redlining : Getter to know if we are inside + * a text:deletion element (deleted redline section) */ bool IsInsideDeleteContext() const; SvXMLImport GetXMLImport(); diff --git a/include/xmloff/xmlictxt.hxx b/include/xmloff/xmlictxt.hxx index 37903e4..2ed80c1 100644 --- a/include/xmloff/xmlictxt.hxx +++ b/include/xmloff/xmlictxt.hxx @@ -58,37 +58,37 @@ public: sal_uInt16 GetPrefix() const { return mnPrefix; } const OUString GetLocalName() const { return maLocalName; } -// A contexts constructor does anything that is required if an element -// starts. Namespace processing has been done already. -// Note that virtual methods cannot be used inside constructors. Use -// StartElement instead if this is required
[PATCH] comments and code reformat
/txtimp.cxx @@ -561,7 +561,7 @@ bool m_bBodyContentStarted : 1; // #107848# -// One more flag to remember if we are inside a deleted redline section +/// Are we inside a text:deletion element (deleted redline section) bool m_bInsideDeleteContext : 1; typedef ::std::pair OUString, OUString field_name_type_t; @@ -604,7 +604,6 @@ , m_bProgress( bProgress ) , m_bOrganizerMode( bOrganizerMode ) , m_bBodyContentStarted( true ) -// #107848# Initialize inside_deleted_section flag correctly , m_bInsideDeleteContext( false ) { } -- To view, visit https://gerrit.libreoffice.org/3582 To unsubscribe, visit https://gerrit.libreoffice.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Ib4e45cb85c9e5e5ffa6476c939300c6795412b1a Gerrit-PatchSet: 1 Gerrit-Project: core Gerrit-Branch: master Gerrit-Owner: Maxime de Roucy mdero...@linagora.com ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
[Libreoffice-commits] core.git: Branch 'libreoffice-4-0' - writerfilter/source
writerfilter/source/rtftok/rtfdocumentimpl.cxx | 83 - writerfilter/source/rtftok/rtfdocumentimpl.hxx |5 - 2 files changed, 44 insertions(+), 44 deletions(-) New commits: commit 1145265b3f4bac37939726b1f4bf430eb5ec2c54 Author: Maxime de Roucy mdero...@linagora.com Date: Mon Mar 25 16:33:55 2013 +0100 solve fdo#62805 move m_pCurrentBuffer to RTFParserState Change-Id: Ied16ee1704d35c6bd0368b26a210131b60bc91a3 Reviewed-on: https://gerrit.libreoffice.org/3082 Reviewed-by: Miklos Vajna vmik...@suse.cz Tested-by: Miklos Vajna vmik...@suse.cz diff --git a/writerfilter/source/rtftok/rtfdocumentimpl.cxx b/writerfilter/source/rtftok/rtfdocumentimpl.cxx index 3f18695..7e9c8b0 100644 --- a/writerfilter/source/rtftok/rtfdocumentimpl.cxx +++ b/writerfilter/source/rtftok/rtfdocumentimpl.cxx @@ -254,7 +254,6 @@ RTFDocumentImpl::RTFDocumentImpl(uno::Referenceuno::XComponentContext const x m_aTableBuffer(), m_aSuperBuffer(), m_aShapetextBuffer(), -m_pCurrentBuffer(0), m_bHasFootnote(false), m_pSuperstream(0), m_nHeaderFooterPositions(), @@ -437,7 +436,7 @@ void RTFDocumentImpl::checkNeedPap() if (m_bNeedPap) { m_bNeedPap = false; // reset early, so we can avoid recursion when calling ourselves -if (!m_pCurrentBuffer) +if (!m_aStates.top().pCurrentBuffer) { writerfilter::ReferenceProperties::Pointer_t const pParagraphProperties( getProperties(m_aStates.top().aParagraphAttributes, m_aStates.top().aParagraphSprms) @@ -465,14 +464,14 @@ void RTFDocumentImpl::checkNeedPap() else { RTFValue::Pointer_t pValue(new RTFValue(m_aStates.top().aParagraphAttributes, m_aStates.top().aParagraphSprms)); -m_pCurrentBuffer-push_back(make_pair(BUFFER_PROPS, pValue)); +m_aStates.top().pCurrentBuffer-push_back(make_pair(BUFFER_PROPS, pValue)); } } } void RTFDocumentImpl::runProps() { -if (!m_pCurrentBuffer) +if (!m_aStates.top().pCurrentBuffer) { writerfilter::ReferenceProperties::Pointer_t const pProperties = getProperties(m_aStates.top().aCharacterAttributes, m_aStates.top().aCharacterSprms); Mapper().props(pProperties); @@ -480,7 +479,7 @@ void RTFDocumentImpl::runProps() else { RTFValue::Pointer_t pValue(new RTFValue(m_aStates.top().aCharacterAttributes, m_aStates.top().aCharacterSprms)); -m_pCurrentBuffer-push_back(make_pair(BUFFER_PROPS, pValue)); +m_aStates.top().pCurrentBuffer-push_back(make_pair(BUFFER_PROPS, pValue)); } } @@ -839,7 +838,7 @@ int RTFDocumentImpl::resolvePict(bool bInline) } writerfilter::ReferenceProperties::Pointer_t const pProperties(new RTFReferenceProperties(aAttributes, aSprms)); checkFirstRun(); -if (!m_pCurrentBuffer) +if (!m_aStates.top().pCurrentBuffer) { Mapper().props(pProperties); // Make sure we don't loose these properties with a too early reset. @@ -848,7 +847,7 @@ int RTFDocumentImpl::resolvePict(bool bInline) else { RTFValue::Pointer_t pValue(new RTFValue(aAttributes, aSprms)); -m_pCurrentBuffer-push_back(make_pair(BUFFER_PROPS, pValue)); +m_aStates.top().pCurrentBuffer-push_back(make_pair(BUFFER_PROPS, pValue)); } return 0; } @@ -948,7 +947,7 @@ bool RTFFrame::inFrame() void RTFDocumentImpl::singleChar(sal_uInt8 nValue, bool bRunProps) { sal_uInt8 sValue[] = { nValue }; -if (!m_pCurrentBuffer) +if (!m_aStates.top().pCurrentBuffer) { Mapper().startCharacterGroup(); // Should we send run properties? @@ -959,10 +958,10 @@ void RTFDocumentImpl::singleChar(sal_uInt8 nValue, bool bRunProps) } else { -m_pCurrentBuffer-push_back(make_pair(BUFFER_STARTRUN, RTFValue::Pointer_t())); +m_aStates.top().pCurrentBuffer-push_back(make_pair(BUFFER_STARTRUN, RTFValue::Pointer_t())); RTFValue::Pointer_t pValue(new RTFValue(*sValue)); -m_pCurrentBuffer-push_back(make_pair(BUFFER_TEXT, pValue)); -m_pCurrentBuffer-push_back(make_pair(BUFFER_ENDRUN, RTFValue::Pointer_t())); +m_aStates.top().pCurrentBuffer-push_back(make_pair(BUFFER_TEXT, pValue)); +m_aStates.top().pCurrentBuffer-push_back(make_pair(BUFFER_ENDRUN, RTFValue::Pointer_t())); } } @@ -1109,31 +1108,31 @@ void RTFDocumentImpl::text(OUString rString) return; } -if (!m_pCurrentBuffer m_aStates.top().nDestinationState != DESTINATION_FOOTNOTE) +if (!m_aStates.top().pCurrentBuffer m_aStates.top().nDestinationState != DESTINATION_FOOTNOTE) Mapper().startCharacterGroup(); -else if (m_pCurrentBuffer) +else if (m_aStates.top().pCurrentBuffer) { RTFValue::Pointer_t pValue; -m_pCurrentBuffer-push_back(make_pair(BUFFER_STARTRUN, pValue
[PATCH] solve fdo#62805
+2369,8 @@ break; case RTF_SUPER: { -if (!m_pCurrentBuffer) -m_pCurrentBuffer = m_aSuperBuffer; +if (!m_aStates.top().pCurrentBuffer) +m_aStates.top().pCurrentBuffer = m_aSuperBuffer; RTFValue::Pointer_t pValue(new RTFValue(superscript)); m_aStates.top().aCharacterSprms.set(NS_ooxml::LN_EG_RPrBase_vertAlign, pValue); } @@ -2383,10 +2382,10 @@ } break; case RTF_NOSUPERSUB: -if (m_pCurrentBuffer == m_aSuperBuffer) +if (m_aStates.top().pCurrentBuffer == m_aSuperBuffer) { replayBuffer(m_aSuperBuffer); -m_pCurrentBuffer = 0; +m_aStates.top().pCurrentBuffer = 0; } m_aStates.top().aCharacterSprms.erase(NS_ooxml::LN_EG_RPrBase_vertAlign); break; @@ -2712,7 +2711,7 @@ { m_bNeedPap = true; // Don't try to support text frames inside tables for now. -if (m_pCurrentBuffer != m_aTableBuffer) +if (m_aStates.top().pCurrentBuffer != m_aTableBuffer) m_aStates.top().aFrame.setSprm(nId, nParam); return 0; } @@ -3753,9 +3752,6 @@ case DESTINATION_PICT: resolvePict(true); break; -case DESTINATION_SHAPETEXT: -m_pCurrentBuffer = 0; // Just disable buffering, don't empty it yet. -break; case DESTINATION_FORMFIELDNAME: { RTFValue::Pointer_t pValue(new RTFValue(m_aStates.top().aDestinationText.makeStringAndClear())); @@ -4280,11 +4276,13 @@ else if (m_xDocumentProperties.is()) m_xDocumentProperties-setTitle(aState.aDestinationText.makeStringAndClear()); } -if (m_pCurrentBuffer == m_aSuperBuffer) +if (aState.pCurrentBuffer == m_aSuperBuffer) { +OSL_ASSERT(m_aStates.top().pCurrentBuffer == 0); + if (!m_bHasFootnote) replayBuffer(m_aSuperBuffer); -m_pCurrentBuffer = 0; + m_bHasFootnote = false; } if (m_aStates.size()) @@ -4397,7 +4395,8 @@ nDay(0), nHour(0), nMinute(0), -nCurrentStyleIndex(-1) +nCurrentStyleIndex(-1), +pCurrentBuffer(0) { } diff --git a/writerfilter/source/rtftok/rtfdocumentimpl.hxx b/writerfilter/source/rtftok/rtfdocumentimpl.hxx index 5ced019..a96ad9a 100644 --- a/writerfilter/source/rtftok/rtfdocumentimpl.hxx +++ b/writerfilter/source/rtftok/rtfdocumentimpl.hxx @@ -407,6 +407,9 @@ /// Same as the int value of NS_rtf::LN_ISTD in aParagraphAttributes, for performance reasons. int nCurrentStyleIndex; + +/// Points to the active buffer, if there is one. +RTFBuffer_t* pCurrentBuffer; }; class RTFTokenizer; @@ -540,8 +543,6 @@ RTFBuffer_t m_aSuperBuffer; /// Buffered shape text. RTFBuffer_t m_aShapetextBuffer; -/// Points to the active buffer, if there is one. -RTFBuffer_t* m_pCurrentBuffer; bool m_bHasFootnote; /// Superstream of this substream. -- To view, visit https://gerrit.libreoffice.org/3082 To unsubscribe, visit https://gerrit.libreoffice.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Ied16ee1704d35c6bd0368b26a210131b60bc91a3 Gerrit-PatchSet: 1 Gerrit-Project: core Gerrit-Branch: master Gerrit-Owner: Maxime de Roucy mdero...@linagora.com ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
[PATCH] minor update in rtfdocumentimpl.cxx
== 0); @@ -4285,6 +4299,7 @@ m_bHasFootnote = false; } + if (m_aStates.size()) { m_aStates.top().nCells = aState.nCells; -- To view, visit https://gerrit.libreoffice.org/3083 To unsubscribe, visit https://gerrit.libreoffice.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Ie32166edbc3efb603ccb5e98d8c2cac66ecc2f47 Gerrit-PatchSet: 1 Gerrit-Project: core Gerrit-Branch: master Gerrit-Owner: Maxime de Roucy mdero...@linagora.com ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
[PATCH] use of aState instead of m_aStates.top in popState
-setCreationDate(lcl_getDateTime(aState)); break; case DESTINATION_REVISIONTIME: if (m_xDocumentProperties.is()) - m_xDocumentProperties-setModificationDate(lcl_getDateTime(m_aStates)); + m_xDocumentProperties-setModificationDate(lcl_getDateTime(aState)); break; case DESTINATION_PRINTTIME: if (m_xDocumentProperties.is()) - m_xDocumentProperties-setPrintDate(lcl_getDateTime(m_aStates)); +m_xDocumentProperties-setPrintDate(lcl_getDateTime(aState)); break; case DESTINATION_AUTHOR: if (m_xDocumentProperties.is()) @@ -3958,7 +3955,7 @@ case DESTINATION_OPERATOR: case DESTINATION_COMPANY: { -OUString aName = m_aStates.top().nDestinationState == DESTINATION_OPERATOR ? OUString(Operator) : OUString(Company); +OUString aName = aState.nDestinationState == DESTINATION_OPERATOR ? OUString(Operator) : OUString(Company); if (m_xDocumentProperties.is()) { uno::Referencebeans::XPropertyContainer xUserDefinedProperties = m_xDocumentProperties-getUserDefinedProperties(); @@ -4052,7 +4049,7 @@ case DESTINATION_ANNOTATIONDATE: { OUString aStr(OStringToOUString(lcl_DTTM22OString(m_aStates.top().aDestinationText.makeStringAndClear().toInt32()), -m_aStates.top().nCurrentEncoding)); +aState.nCurrentEncoding)); RTFValue::Pointer_t pValue(new RTFValue(aStr)); RTFSprms aAnnAttributes; aAnnAttributes.set(NS_ooxml::LN_CT_TrackChange_date, pValue); @@ -4110,8 +4107,9 @@ } break; case DESTINATION_SHAPE: -if (m_aStates.top().aFrame.inFrame()) +if (aState.aFrame.inFrame()) { +// parBreak modify m_aStates.top() so we can't apply resetFrame directly on aState m_aStates.top().resetFrame(); parBreak(); // Save this state for later use, so we only reset frame status only for the first shape inside a frame. @@ -4344,7 +4342,7 @@ } // See if we need to end a track change -RTFValue::Pointer_t pTrackchange = m_aStates.top().aCharacterSprms.find(NS_ooxml::LN_trackchange); +RTFValue::Pointer_t pTrackchange = aState.aCharacterSprms.find(NS_ooxml::LN_trackchange); if (pTrackchange.get()) { RTFSprms aTCAttributes; -- To view, visit https://gerrit.libreoffice.org/3085 To unsubscribe, visit https://gerrit.libreoffice.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I6814e48a92a1b24823c6884a151aa6a139410ff2 Gerrit-PatchSet: 1 Gerrit-Project: core Gerrit-Branch: master Gerrit-Owner: Maxime de Roucy mdero...@linagora.com ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
[PATCH] unit test for fdo#62805
Hi, I have submitted a patch for review: https://gerrit.libreoffice.org/3086 To pull it, you can do: git pull ssh://gerrit.libreoffice.org:29418/core refs/changes/86/3086/1 unit test for fdo#62805 Change-Id: Iebc1a63496aaf54b9e459d0ed53db5cae49929ac --- A sw/qa/extras/rtfimport/data/fdo62805.rtf M sw/qa/extras/rtfimport/rtfimport.cxx 2 files changed, 30 insertions(+), 3 deletions(-) diff --git a/sw/qa/extras/rtfimport/data/fdo62805.rtf b/sw/qa/extras/rtfimport/data/fdo62805.rtf new file mode 100644 index 000..fee2b59 --- /dev/null +++ b/sw/qa/extras/rtfimport/data/fdo62805.rtf @@ -0,0 +1,21 @@ +{\rtf1\ansi\deff3\adeflang1025 +{\fonttbl{\f0\froman\fprq2\fcharset0 Times New Roman;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\fswiss\fprq2\fcharset0 Arial;}{\f3\froman\fprq2\fcharset0 Nimbus Roman No9 L{\*\falt Times New Roman};}{\f4\fswiss\fprq2\fcharset0 Nimbus Sans L{\*\falt Arial};}{\f5\fnil\fprq2\fcharset0 DejaVu Sans;}} +{\colortbl;\red0\green0\blue0;\red128\green128\blue128;} +{\stylesheet{\s0\snext0\nowidctlpar{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\cf0\kerning1\dbch\af5\langfe2052\dbch\af5\afs24\alang1081\loch\f3\fs24\lang1036 Style par d\u233\'e9faut;} +{\s15\sbasedon0\snext16\sb240\sa120\keepn\dbch\af5\dbch\af5\afs28\loch\f4\fs28 Titre;} +{\s16\sbasedon0\snext16\sb0\sa120 Corps de texte;} +{\s17\sbasedon16\snext17\sb0\sa120 Liste;} +{\s18\sbasedon0\snext18\sb120\sa120\noline\i\afs24\ai\fs24 L\u233\'e9gende;} +{\s19\sbasedon0\snext19\noline Index;} +{\s20\sbasedon0\snext20\noline Contenu de tableau;} +}{\info{\author test}{\creatim\yr2013\mo3\dy27\hr11\min43}{\revtim\yr0\mo0\dy0\hr0\min0}{\printim\yr0\mo0\dy0\hr0\min0}{\comment LibreOffice}{\vern4000}}\deftab709 +\viewscale110 +{\*\pgdsctbl +{\pgdsc0\pgdscuse455\pgwsxn11906\pghsxn16838\marglsxn1134\margrsxn1134\margtsxn1134\margbsxn1134\pgdscnxt0 Style par d\u233\'e9faut;}} +\formshade\paperh16838\paperw11906\margl1134\margr1134\margt1134\margb1134\sectd\sbknone\sectunlocked1\pgndec\pgwsxn11906\pghsxn16838\marglsxn1134\margrsxn1134\margtsxn1134\margbsxn1134\ftnbj\ftnstart1\ftnrstcont\ftnnar\aenddoc\aftnrstcont\aftnstart1\aftnnrlc +\pgndec\pard\plain \s0\nowidctlpar{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\cf0\kerning1\dbch\af5\langfe2052\dbch\af5\afs24\alang1081\loch\f3\fs24\lang1036{\rtlch \ltrch\loch +Test} +\par +{\trowd\trql\ltrrow\trpaddft3\trpaddt0\trpaddfl3\trpaddl0\trpaddfb3\trpaddb0\trpaddfr3\trpaddr0\clbrdrt\brdrhair\brdrw1\brdrcf1\clbrdrl\brdrhair\brdrw1\brdrcf1\clbrdrb\brdrhair\brdrw1\brdrcf1\clbrdrr\brdrhair\brdrw1\brdrcf1\cellx9638\pard\plain \s20\noline\intbl{\rtlch \ltrch\loch +test in cell}\cell\row} +test\par} diff --git a/sw/qa/extras/rtfimport/rtfimport.cxx b/sw/qa/extras/rtfimport/rtfimport.cxx index 4d042dc..591e6ba 100644 --- a/sw/qa/extras/rtfimport/rtfimport.cxx +++ b/sw/qa/extras/rtfimport/rtfimport.cxx @@ -113,7 +113,7 @@ void testFdo52052(); void testInk(); void testFdo52389(); -void testFdo49655(); +void testFdo49655_62805(); void testFdo52475(); void testFdo55493(); void testCopyPastePageStyle(); @@ -231,7 +231,8 @@ {fdo52052.rtf, Test::testFdo52052}, {ink.rtf, Test::testInk}, {fdo52389.rtf, Test::testFdo52389}, -{fdo49655.rtf, Test::testFdo49655}, +{fdo49655.rtf, Test::testFdo49655_62805}, +{fdo62805.rtf, Test::testFdo49655_62805}, {fdo52475.rtf, Test::testFdo52475}, {fdo55493.rtf, Test::testFdo55493}, {copypaste-pagestyle.rtf, Test::testCopyPastePageStyle}, @@ -859,12 +860,17 @@ CPPUNIT_ASSERT_EQUAL(6, getLength()); } -void Test::testFdo49655() +void Test::testFdo49655_62805() { /* + * 49655 : * The problem was that the table was not imported due to the ' ' string in the middle of the table definition. * * xray ThisComponent.TextTables.Count 'was 0 + * + * 62805 : + * The problem was that the table was not imported due to the absence of \pard after \row. + * The table was instead in a group (the '}' replace the \pard). */ uno::Referencetext::XTextTablesSupplier xTextTablesSupplier(mxComponent, uno::UNO_QUERY); uno::Referencecontainer::XIndexAccess xIndexAccess(xTextTablesSupplier-getTextTables(), uno::UNO_QUERY); -- To view, visit https://gerrit.libreoffice.org/3086 To unsubscribe, visit https://gerrit.libreoffice.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Iebc1a63496aaf54b9e459d0ed53db5cae49929ac Gerrit-PatchSet: 1 Gerrit-Project: core Gerrit-Branch: master Gerrit-Owner: Maxime de Roucy mdero...@linagora.com ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
[Libreoffice-commits] core.git: writerfilter/source
writerfilter/source/rtftok/rtfdocumentimpl.cxx | 83 - writerfilter/source/rtftok/rtfdocumentimpl.hxx |5 - 2 files changed, 44 insertions(+), 44 deletions(-) New commits: commit ea8602bd116198aa076903d9b6ad91cfa96d0464 Author: Maxime de Roucy mdero...@linagora.com Date: Mon Mar 25 16:33:55 2013 +0100 solve fdo#62805 move m_pCurrentBuffer to RTFParserState Change-Id: Ied16ee1704d35c6bd0368b26a210131b60bc91a3 Reviewed-on: https://gerrit.libreoffice.org/3082 Reviewed-by: Miklos Vajna vmik...@suse.cz Tested-by: Miklos Vajna vmik...@suse.cz diff --git a/writerfilter/source/rtftok/rtfdocumentimpl.cxx b/writerfilter/source/rtftok/rtfdocumentimpl.cxx index 47d2af1..d057a67 100644 --- a/writerfilter/source/rtftok/rtfdocumentimpl.cxx +++ b/writerfilter/source/rtftok/rtfdocumentimpl.cxx @@ -255,7 +255,6 @@ RTFDocumentImpl::RTFDocumentImpl(uno::Referenceuno::XComponentContext const x m_aTableBuffer(), m_aSuperBuffer(), m_aShapetextBuffer(), -m_pCurrentBuffer(0), m_bHasFootnote(false), m_pSuperstream(0), m_nHeaderFooterPositions(), @@ -438,7 +437,7 @@ void RTFDocumentImpl::checkNeedPap() if (m_bNeedPap) { m_bNeedPap = false; // reset early, so we can avoid recursion when calling ourselves -if (!m_pCurrentBuffer) +if (!m_aStates.top().pCurrentBuffer) { writerfilter::ReferenceProperties::Pointer_t const pParagraphProperties( getProperties(m_aStates.top().aParagraphAttributes, m_aStates.top().aParagraphSprms) @@ -466,14 +465,14 @@ void RTFDocumentImpl::checkNeedPap() else { RTFValue::Pointer_t pValue(new RTFValue(m_aStates.top().aParagraphAttributes, m_aStates.top().aParagraphSprms)); -m_pCurrentBuffer-push_back(make_pair(BUFFER_PROPS, pValue)); +m_aStates.top().pCurrentBuffer-push_back(make_pair(BUFFER_PROPS, pValue)); } } } void RTFDocumentImpl::runProps() { -if (!m_pCurrentBuffer) +if (!m_aStates.top().pCurrentBuffer) { writerfilter::ReferenceProperties::Pointer_t const pProperties = getProperties(m_aStates.top().aCharacterAttributes, m_aStates.top().aCharacterSprms); Mapper().props(pProperties); @@ -481,7 +480,7 @@ void RTFDocumentImpl::runProps() else { RTFValue::Pointer_t pValue(new RTFValue(m_aStates.top().aCharacterAttributes, m_aStates.top().aCharacterSprms)); -m_pCurrentBuffer-push_back(make_pair(BUFFER_PROPS, pValue)); +m_aStates.top().pCurrentBuffer-push_back(make_pair(BUFFER_PROPS, pValue)); } } @@ -840,7 +839,7 @@ int RTFDocumentImpl::resolvePict(bool bInline) } writerfilter::ReferenceProperties::Pointer_t const pProperties(new RTFReferenceProperties(aAttributes, aSprms)); checkFirstRun(); -if (!m_pCurrentBuffer) +if (!m_aStates.top().pCurrentBuffer) { Mapper().props(pProperties); // Make sure we don't loose these properties with a too early reset. @@ -849,7 +848,7 @@ int RTFDocumentImpl::resolvePict(bool bInline) else { RTFValue::Pointer_t pValue(new RTFValue(aAttributes, aSprms)); -m_pCurrentBuffer-push_back(make_pair(BUFFER_PROPS, pValue)); +m_aStates.top().pCurrentBuffer-push_back(make_pair(BUFFER_PROPS, pValue)); } return 0; } @@ -949,7 +948,7 @@ bool RTFFrame::inFrame() void RTFDocumentImpl::singleChar(sal_uInt8 nValue, bool bRunProps) { sal_uInt8 sValue[] = { nValue }; -if (!m_pCurrentBuffer) +if (!m_aStates.top().pCurrentBuffer) { Mapper().startCharacterGroup(); // Should we send run properties? @@ -960,10 +959,10 @@ void RTFDocumentImpl::singleChar(sal_uInt8 nValue, bool bRunProps) } else { -m_pCurrentBuffer-push_back(make_pair(BUFFER_STARTRUN, RTFValue::Pointer_t())); +m_aStates.top().pCurrentBuffer-push_back(make_pair(BUFFER_STARTRUN, RTFValue::Pointer_t())); RTFValue::Pointer_t pValue(new RTFValue(*sValue)); -m_pCurrentBuffer-push_back(make_pair(BUFFER_TEXT, pValue)); -m_pCurrentBuffer-push_back(make_pair(BUFFER_ENDRUN, RTFValue::Pointer_t())); +m_aStates.top().pCurrentBuffer-push_back(make_pair(BUFFER_TEXT, pValue)); +m_aStates.top().pCurrentBuffer-push_back(make_pair(BUFFER_ENDRUN, RTFValue::Pointer_t())); } } @@ -1110,31 +1109,31 @@ void RTFDocumentImpl::text(OUString rString) return; } -if (!m_pCurrentBuffer m_aStates.top().nDestinationState != DESTINATION_FOOTNOTE) +if (!m_aStates.top().pCurrentBuffer m_aStates.top().nDestinationState != DESTINATION_FOOTNOTE) Mapper().startCharacterGroup(); -else if (m_pCurrentBuffer) +else if (m_aStates.top().pCurrentBuffer) { RTFValue::Pointer_t pValue; -m_pCurrentBuffer-push_back(make_pair(BUFFER_STARTRUN, pValue
[Libreoffice-commits] core.git: writerfilter/source
writerfilter/source/rtftok/rtfdocumentimpl.cxx | 39 + 1 file changed, 27 insertions(+), 12 deletions(-) New commits: commit 8c9b05685ff32b309e3447f2030c86e6a1ab9293 Author: Maxime de Roucy mdero...@linagora.com Date: Mon Mar 25 16:40:37 2013 +0100 minor update in rtfdocumentimpl.cxx Change-Id: Ie32166edbc3efb603ccb5e98d8c2cac66ecc2f47 Reviewed-on: https://gerrit.libreoffice.org/3083 Reviewed-by: Miklos Vajna vmik...@suse.cz Tested-by: Miklos Vajna vmik...@suse.cz diff --git a/writerfilter/source/rtftok/rtfdocumentimpl.cxx b/writerfilter/source/rtftok/rtfdocumentimpl.cxx index d057a67..27ca5de 100644 --- a/writerfilter/source/rtftok/rtfdocumentimpl.cxx +++ b/writerfilter/source/rtftok/rtfdocumentimpl.cxx @@ -839,6 +839,7 @@ int RTFDocumentImpl::resolvePict(bool bInline) } writerfilter::ReferenceProperties::Pointer_t const pProperties(new RTFReferenceProperties(aAttributes, aSprms)); checkFirstRun(); + if (!m_aStates.top().pCurrentBuffer) { Mapper().props(pProperties); @@ -850,6 +851,7 @@ int RTFDocumentImpl::resolvePict(bool bInline) RTFValue::Pointer_t pValue(new RTFValue(aAttributes, aSprms)); m_aStates.top().pCurrentBuffer-push_back(make_pair(BUFFER_PROPS, pValue)); } + return 0; } @@ -948,7 +950,9 @@ bool RTFFrame::inFrame() void RTFDocumentImpl::singleChar(sal_uInt8 nValue, bool bRunProps) { sal_uInt8 sValue[] = { nValue }; -if (!m_aStates.top().pCurrentBuffer) +RTFBuffer_t* pCurrentBuffer = m_aStates.top().pCurrentBuffer; + +if (!pCurrentBuffer) { Mapper().startCharacterGroup(); // Should we send run properties? @@ -959,10 +963,10 @@ void RTFDocumentImpl::singleChar(sal_uInt8 nValue, bool bRunProps) } else { -m_aStates.top().pCurrentBuffer-push_back(make_pair(BUFFER_STARTRUN, RTFValue::Pointer_t())); +pCurrentBuffer-push_back(make_pair(BUFFER_STARTRUN, RTFValue::Pointer_t())); RTFValue::Pointer_t pValue(new RTFValue(*sValue)); -m_aStates.top().pCurrentBuffer-push_back(make_pair(BUFFER_TEXT, pValue)); -m_aStates.top().pCurrentBuffer-push_back(make_pair(BUFFER_ENDRUN, RTFValue::Pointer_t())); +pCurrentBuffer-push_back(make_pair(BUFFER_TEXT, pValue)); +pCurrentBuffer-push_back(make_pair(BUFFER_ENDRUN, RTFValue::Pointer_t())); } } @@ -1109,31 +1113,37 @@ void RTFDocumentImpl::text(OUString rString) return; } -if (!m_aStates.top().pCurrentBuffer m_aStates.top().nDestinationState != DESTINATION_FOOTNOTE) +RTFBuffer_t* pCurrentBuffer = m_aStates.top().pCurrentBuffer; + +if (!pCurrentBuffer m_aStates.top().nDestinationState != DESTINATION_FOOTNOTE) Mapper().startCharacterGroup(); -else if (m_aStates.top().pCurrentBuffer) +else if (pCurrentBuffer) { RTFValue::Pointer_t pValue; -m_aStates.top().pCurrentBuffer-push_back(make_pair(BUFFER_STARTRUN, pValue)); +pCurrentBuffer-push_back(make_pair(BUFFER_STARTRUN, pValue)); } + if (m_aStates.top().nDestinationState == DESTINATION_NORMAL || m_aStates.top().nDestinationState == DESTINATION_FIELDRESULT || m_aStates.top().nDestinationState == DESTINATION_SHAPETEXT) runProps(); -if (!m_aStates.top().pCurrentBuffer) + +if (!pCurrentBuffer) Mapper().utext(reinterpret_castsal_uInt8 const*(rString.getStr()), rString.getLength()); else { RTFValue::Pointer_t pValue(new RTFValue(rString)); -m_aStates.top().pCurrentBuffer-push_back(make_pair(BUFFER_UTEXT, pValue)); +pCurrentBuffer-push_back(make_pair(BUFFER_UTEXT, pValue)); } + m_bNeedCr = true; -if (!m_aStates.top().pCurrentBuffer m_aStates.top().nDestinationState != DESTINATION_FOOTNOTE) + +if (!pCurrentBuffer m_aStates.top().nDestinationState != DESTINATION_FOOTNOTE) Mapper().endCharacterGroup(); -else if(m_aStates.top().pCurrentBuffer) +else if(pCurrentBuffer) { RTFValue::Pointer_t pValue; -m_aStates.top().pCurrentBuffer-push_back(make_pair(BUFFER_ENDRUN, pValue)); +pCurrentBuffer-push_back(make_pair(BUFFER_ENDRUN, pValue)); } } @@ -2380,6 +2390,7 @@ int RTFDocumentImpl::dispatchFlag(RTFKeyword nKeyword) { if (!m_aStates.top().pCurrentBuffer) m_aStates.top().pCurrentBuffer = m_aSuperBuffer; + RTFValue::Pointer_t pValue(new RTFValue(superscript)); m_aStates.top().aCharacterSprms.set(NS_ooxml::LN_EG_RPrBase_vertAlign, pValue); } @@ -2716,12 +2727,14 @@ int RTFDocumentImpl::dispatchValue(RTFKeyword nKeyword, int nParam) case RTF_POSY: nId = NS_ooxml::LN_CT_FramePr_y; m_aStates.top().aFrame.setSprm(NS_ooxml::LN_CT_FramePr_yAlign, 0); break; default: break; } + if (nId 0) { m_bNeedPap
[Libreoffice-commits] core.git: writerfilter/source
writerfilter/source/rtftok/rtfdocumentimpl.cxx | 44 +++-- 1 file changed, 21 insertions(+), 23 deletions(-) New commits: commit 0bca4ccd54263bdef3722d96fe98760a5966c2f4 Author: Maxime de Roucy mdero...@linagora.com Date: Mon Mar 25 19:34:43 2013 +0100 use of aState instead of m_aStates.top in popState Change-Id: I6814e48a92a1b24823c6884a151aa6a139410ff2 Reviewed-on: https://gerrit.libreoffice.org/3085 Reviewed-by: Miklos Vajna vmik...@suse.cz Tested-by: Miklos Vajna vmik...@suse.cz diff --git a/writerfilter/source/rtftok/rtfdocumentimpl.cxx b/writerfilter/source/rtftok/rtfdocumentimpl.cxx index 29d87c9..26110ba 100644 --- a/writerfilter/source/rtftok/rtfdocumentimpl.cxx +++ b/writerfilter/source/rtftok/rtfdocumentimpl.cxx @@ -209,10 +209,10 @@ static const char* lcl_RtfToString(RTFKeyword nKeyword) return NULL; } -static util::DateTime lcl_getDateTime(std::stackRTFParserState aStates) +static util::DateTime lcl_getDateTime(RTFParserState aState) { -return util::DateTime(0 /*100sec*/, 0 /*sec*/, aStates.top().nMinute, aStates.top().nHour, -aStates.top().nDay, aStates.top().nMonth, aStates.top().nYear); +return util::DateTime(0 /*100sec*/, 0 /*sec*/, aState.nMinute, aState.nHour, +aState.nDay, aState.nMonth, aState.nYear); } static void lcl_DestinationToMath(OUStringBuffer rDestinationText, oox::formulaimport::XmlStreamBuilder rMathBuffer) @@ -3828,12 +3828,12 @@ int RTFDocumentImpl::popState() sal_Int32 nReplaces = 1; for (int i = 0; i aOrig.getLength(); i++) { -if (std::find(m_aStates.top().aLevelNumbers.begin(), m_aStates.top().aLevelNumbers.end(), i+1) -!= m_aStates.top().aLevelNumbers.end()) +if (std::find(aState.aLevelNumbers.begin(), aState.aLevelNumbers.end(), i+1) +!= aState.aLevelNumbers.end()) { aBuf.append(sal_Unicode('%')); // '1.1.1' - '%1.%2.%3', but '1.' (with '2.' prefix omitted) is %2. -aBuf.append(sal_Int32(nReplaces++ + m_aStates.top().nListLevelNum + 1 - m_aStates.top().aLevelNumbers.size())); +aBuf.append(sal_Int32(nReplaces++ + aState.nListLevelNum + 1 - aState.aLevelNumbers.size())); } else aBuf.append(aOrig.copy(i, 1)); @@ -3843,14 +3843,11 @@ int RTFDocumentImpl::popState() } break; case DESTINATION_SHAPEPROPERTYNAME: + aState.aShape.aProperties.push_back(make_pair(m_aStates.top().aDestinationText.makeStringAndClear(), OUString())); +break; case DESTINATION_SHAPEPROPERTYVALUE: -case DESTINATION_SHAPEPROPERTY: -{ -if (m_aStates.top().nDestinationState == DESTINATION_SHAPEPROPERTYNAME) - aState.aShape.aProperties.push_back(make_pair(m_aStates.top().aDestinationText.makeStringAndClear(), OUString())); -else if (m_aStates.top().nDestinationState == DESTINATION_SHAPEPROPERTYVALUE aState.aShape.aProperties.size()) -aState.aShape.aProperties.back().second = m_aStates.top().aDestinationText.makeStringAndClear(); -} +if (aState.aShape.aProperties.size()) +aState.aShape.aProperties.back().second = m_aStates.top().aDestinationText.makeStringAndClear(); break; case DESTINATION_PICPROP: case DESTINATION_SHAPEINSTRUCTION: @@ -3885,7 +3882,7 @@ int RTFDocumentImpl::popState() break; case DESTINATION_DATAFIELD: { -OString aStr = OUStringToOString(m_aStates.top().aDestinationText.makeStringAndClear(), m_aStates.top().nCurrentEncoding); +OString aStr = OUStringToOString(m_aStates.top().aDestinationText.makeStringAndClear(), aState.nCurrentEncoding); // decode hex dump OStringBuffer aBuf; const char *str = aStr.getStr(); @@ -3922,9 +3919,9 @@ int RTFDocumentImpl::popState() nLength = aStr.toChar(); aStr = aStr.copy(1); OString aDefaultText = aStr.copy(0, nLength); -RTFValue::Pointer_t pNValue(new RTFValue(OStringToOUString(aName, m_aStates.top().nCurrentEncoding))); +RTFValue::Pointer_t pNValue(new RTFValue(OStringToOUString(aName, aState.nCurrentEncoding))); m_aFormfieldSprms.set(NS_ooxml::LN_CT_FFData_name, pNValue); -RTFValue::Pointer_t pDValue(new RTFValue(OStringToOUString(aDefaultText, m_aStates.top().nCurrentEncoding))); +RTFValue::Pointer_t pDValue(new RTFValue(OStringToOUString(aDefaultText, aState.nCurrentEncoding))); m_aFormfieldSprms.set(NS_ooxml
[Libreoffice-commits] core.git: sw/qa
sw/qa/extras/rtfimport/data/fdo62805.rtf | 21 + sw/qa/extras/rtfimport/rtfimport.cxx | 12 +--- 2 files changed, 30 insertions(+), 3 deletions(-) New commits: commit 54b5973ded864634b70e3ec45200beaf1d13cb53 Author: Maxime de Roucy mdero...@linagora.com Date: Wed Mar 27 12:09:32 2013 +0100 unit test for fdo#62805 Change-Id: Iebc1a63496aaf54b9e459d0ed53db5cae49929ac Reviewed-on: https://gerrit.libreoffice.org/3086 Reviewed-by: Miklos Vajna vmik...@suse.cz Tested-by: Miklos Vajna vmik...@suse.cz diff --git a/sw/qa/extras/rtfimport/data/fdo62805.rtf b/sw/qa/extras/rtfimport/data/fdo62805.rtf new file mode 100644 index 000..fee2b59 --- /dev/null +++ b/sw/qa/extras/rtfimport/data/fdo62805.rtf @@ -0,0 +1,21 @@ +{\rtf1\ansi\deff3\adeflang1025 +{\fonttbl{\f0\froman\fprq2\fcharset0 Times New Roman;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\fswiss\fprq2\fcharset0 Arial;}{\f3\froman\fprq2\fcharset0 Nimbus Roman No9 L{\*\falt Times New Roman};}{\f4\fswiss\fprq2\fcharset0 Nimbus Sans L{\*\falt Arial};}{\f5\fnil\fprq2\fcharset0 DejaVu Sans;}} +{\colortbl;\red0\green0\blue0;\red128\green128\blue128;} +{\stylesheet{\s0\snext0\nowidctlpar{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\cf0\kerning1\dbch\af5\langfe2052\dbch\af5\afs24\alang1081\loch\f3\fs24\lang1036 Style par d\u233\'e9faut;} +{\s15\sbasedon0\snext16\sb240\sa120\keepn\dbch\af5\dbch\af5\afs28\loch\f4\fs28 Titre;} +{\s16\sbasedon0\snext16\sb0\sa120 Corps de texte;} +{\s17\sbasedon16\snext17\sb0\sa120 Liste;} +{\s18\sbasedon0\snext18\sb120\sa120\noline\i\afs24\ai\fs24 L\u233\'e9gende;} +{\s19\sbasedon0\snext19\noline Index;} +{\s20\sbasedon0\snext20\noline Contenu de tableau;} +}{\info{\author test}{\creatim\yr2013\mo3\dy27\hr11\min43}{\revtim\yr0\mo0\dy0\hr0\min0}{\printim\yr0\mo0\dy0\hr0\min0}{\comment LibreOffice}{\vern4000}}\deftab709 +\viewscale110 +{\*\pgdsctbl +{\pgdsc0\pgdscuse455\pgwsxn11906\pghsxn16838\marglsxn1134\margrsxn1134\margtsxn1134\margbsxn1134\pgdscnxt0 Style par d\u233\'e9faut;}} +\formshade\paperh16838\paperw11906\margl1134\margr1134\margt1134\margb1134\sectd\sbknone\sectunlocked1\pgndec\pgwsxn11906\pghsxn16838\marglsxn1134\margrsxn1134\margtsxn1134\margbsxn1134\ftnbj\ftnstart1\ftnrstcont\ftnnar\aenddoc\aftnrstcont\aftnstart1\aftnnrlc +\pgndec\pard\plain \s0\nowidctlpar{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\cf0\kerning1\dbch\af5\langfe2052\dbch\af5\afs24\alang1081\loch\f3\fs24\lang1036{\rtlch \ltrch\loch +Test} +\par +{\trowd\trql\ltrrow\trpaddft3\trpaddt0\trpaddfl3\trpaddl0\trpaddfb3\trpaddb0\trpaddfr3\trpaddr0\clbrdrt\brdrhair\brdrw1\brdrcf1\clbrdrl\brdrhair\brdrw1\brdrcf1\clbrdrb\brdrhair\brdrw1\brdrcf1\clbrdrr\brdrhair\brdrw1\brdrcf1\cellx9638\pard\plain \s20\noline\intbl{\rtlch \ltrch\loch +test in cell}\cell\row} +test\par} diff --git a/sw/qa/extras/rtfimport/rtfimport.cxx b/sw/qa/extras/rtfimport/rtfimport.cxx index a7b1e01..41e829f 100644 --- a/sw/qa/extras/rtfimport/rtfimport.cxx +++ b/sw/qa/extras/rtfimport/rtfimport.cxx @@ -113,7 +113,7 @@ public: void testFdo52052(); void testInk(); void testFdo52389(); -void testFdo49655(); +void testFdo49655_62805(); void testFdo52475(); void testFdo55493(); void testCopyPastePageStyle(); @@ -232,7 +232,8 @@ void Test::run() {fdo52052.rtf, Test::testFdo52052}, {ink.rtf, Test::testInk}, {fdo52389.rtf, Test::testFdo52389}, -{fdo49655.rtf, Test::testFdo49655}, +{fdo49655.rtf, Test::testFdo49655_62805}, +{fdo62805.rtf, Test::testFdo49655_62805}, {fdo52475.rtf, Test::testFdo52475}, {fdo55493.rtf, Test::testFdo55493}, {copypaste-pagestyle.rtf, Test::testCopyPastePageStyle}, @@ -861,12 +862,17 @@ void Test::testFdo52389() CPPUNIT_ASSERT_EQUAL(6, getLength()); } -void Test::testFdo49655() +void Test::testFdo49655_62805() { /* + * 49655 : * The problem was that the table was not imported due to the ' ' string in the middle of the table definition. * * xray ThisComponent.TextTables.Count 'was 0 + * + * 62805 : + * The problem was that the table was not imported due to the absence of \pard after \row. + * The table was instead in a group (the '}' replace the \pard). */ uno::Referencetext::XTextTablesSupplier xTextTablesSupplier(mxComponent, uno::UNO_QUERY); uno::Referencecontainer::XIndexAccess xIndexAccess(xTextTablesSupplier-getTextTables(), uno::UNO_QUERY); ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[PATCH libreoffice-4-0] solve fdo#62805
; +m_aStates.top().pCurrentBuffer = 0; } else { @@ -2378,8 +2377,8 @@ break; case RTF_SUPER: { -if (!m_pCurrentBuffer) -m_pCurrentBuffer = m_aSuperBuffer; +if (!m_aStates.top().pCurrentBuffer) +m_aStates.top().pCurrentBuffer = m_aSuperBuffer; RTFValue::Pointer_t pValue(new RTFValue(superscript)); m_aStates.top().aCharacterSprms.set(NS_ooxml::LN_EG_RPrBase_vertAlign, pValue); } @@ -2391,10 +2390,10 @@ } break; case RTF_NOSUPERSUB: -if (m_pCurrentBuffer == m_aSuperBuffer) +if (m_aStates.top().pCurrentBuffer == m_aSuperBuffer) { replayBuffer(m_aSuperBuffer); -m_pCurrentBuffer = 0; +m_aStates.top().pCurrentBuffer = 0; } m_aStates.top().aCharacterSprms.erase(NS_ooxml::LN_EG_RPrBase_vertAlign); break; @@ -2720,7 +2719,7 @@ { m_bNeedPap = true; // Don't try to support text frames inside tables for now. -if (m_pCurrentBuffer != m_aTableBuffer) +if (m_aStates.top().pCurrentBuffer != m_aTableBuffer) m_aStates.top().aFrame.setSprm(nId, nParam); return 0; } @@ -3761,9 +3760,6 @@ case DESTINATION_PICT: resolvePict(true); break; -case DESTINATION_SHAPETEXT: -m_pCurrentBuffer = 0; // Just disable buffering, don't empty it yet. -break; case DESTINATION_FORMFIELDNAME: { RTFValue::Pointer_t pValue(new RTFValue(m_aStates.top().aDestinationText.makeStringAndClear())); @@ -4288,11 +4284,13 @@ else if (m_xDocumentProperties.is()) m_xDocumentProperties-setTitle(aState.aDestinationText.makeStringAndClear()); } -if (m_pCurrentBuffer == m_aSuperBuffer) +if (aState.pCurrentBuffer == m_aSuperBuffer) { +OSL_ASSERT(m_aStates.top().pCurrentBuffer == 0); + if (!m_bHasFootnote) replayBuffer(m_aSuperBuffer); -m_pCurrentBuffer = 0; + m_bHasFootnote = false; } if (m_aStates.size()) @@ -4405,7 +4403,8 @@ nDay(0), nHour(0), nMinute(0), -nCurrentStyleIndex(-1) +nCurrentStyleIndex(-1), +pCurrentBuffer(0) { } diff --git a/writerfilter/source/rtftok/rtfdocumentimpl.hxx b/writerfilter/source/rtftok/rtfdocumentimpl.hxx index 5ced019..a96ad9a 100644 --- a/writerfilter/source/rtftok/rtfdocumentimpl.hxx +++ b/writerfilter/source/rtftok/rtfdocumentimpl.hxx @@ -407,6 +407,9 @@ /// Same as the int value of NS_rtf::LN_ISTD in aParagraphAttributes, for performance reasons. int nCurrentStyleIndex; + +/// Points to the active buffer, if there is one. +RTFBuffer_t* pCurrentBuffer; }; class RTFTokenizer; @@ -540,8 +543,6 @@ RTFBuffer_t m_aSuperBuffer; /// Buffered shape text. RTFBuffer_t m_aShapetextBuffer; -/// Points to the active buffer, if there is one. -RTFBuffer_t* m_pCurrentBuffer; bool m_bHasFootnote; /// Superstream of this substream. -- To view, visit https://gerrit.libreoffice.org/3096 To unsubscribe, visit https://gerrit.libreoffice.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Ied16ee1704d35c6bd0368b26a210131b60bc91a3 Gerrit-PatchSet: 1 Gerrit-Project: core Gerrit-Branch: libreoffice-4-0 Gerrit-Owner: Maxime de Roucy mdero...@linagora.com Gerrit-Reviewer: Miklos Vajna vmik...@suse.cz ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
[Libreoffice-commits] core.git: sw/source
sw/source/filter/ww8/ww8par.hxx |9 + sw/source/filter/ww8/ww8par3.cxx | 70 +++ 2 files changed, 44 insertions(+), 35 deletions(-) New commits: commit d5405d4c42459304a1152b7a1722a1627f775b07 Author: Maxime de Roucy mdero...@linagora.com Date: Wed Feb 6 17:24:29 2013 +0100 res. bug on numbered paragraph when .doc import This patch solve an issue on .doc import (on paragraph numbering). It was created from the code found in SwDoc::DelNumRules. To see the problem you can download simple test document : wget ftp://craoc.fr/{a,b,c,d}.{doc,png} Each document contain a paragraph Test test test2 using Normal/default style (this paragraph is imported correctly) and a Test test test1 using nouveau_style paragraph style. In a.doc no direct paragraph formating are apply to the test1 paragraph. a.doc is imported correctly. To create b.doc, in Microsoft Office Word I opened a.doc, put my cursor in front of the first charactère of the test1 paragraph (T) and push backspace. The result is that it apply some direct paragraph formating on test1 : * disable paragraph numbering * apply some indent To create c.doc I did on b.doc the same things I did to a.doc to create b.doc. c.doc direct paragraph formating on test1 : * disable paragraph numbering * apply some (other) indent To create d.doc I did on c.doc the same things I did to a.doc to create b.doc. d.doc direct paragraph formating on test1 : * disable paragraph numbering Without this patch, when importing {b,c,d}.doc in Writer : The disable paragraph numbering direct formating isn't correctly apply and test1 remain a numbered paragraph (even if the dot in front of the paragraph is removed). The indent are not correctly apply. With this patch {a,b,c,d}.doc are correctly imported. It also reset the left indent of paragraph when the numbering style is remove. Change-Id: If0568f341b82c2e8354f1728e5fc6f1ab310ea51 Reviewed-on: https://gerrit.libreoffice.org/2046 Tested-by: LibreOffice gerrit bot ger...@libreoffice.org Reviewed-by: Tor Lillqvist t...@iki.fi Reviewed-by: Muthu Subramanian K muthus...@gmail.com Tested-by: Muthu Subramanian K muthus...@gmail.com diff --git a/sw/source/filter/ww8/ww8par.hxx b/sw/source/filter/ww8/ww8par.hxx index 0a19e72..f9034e1 100644 --- a/sw/source/filter/ww8/ww8par.hxx +++ b/sw/source/filter/ww8/ww8par.hxx @@ -1633,6 +1633,15 @@ public: // eigentlich private, geht aber leider nur public // Ver8-Listen void Read_ListLevel(sal_uInt16 nId, const sal_uInt8* pData, short nLen); + +/** + * read and interpret the sprmPIlfo used to determine which list + * contains the paragraph. + * @param nId unused (sprm value, 0x460b for sprmPIlfo). + * @param[in] pData operand. + * @param[in] nLen size of the operand (pData) in byte, should be 2. + * -1 to indicate the actual level is finished. + */ void Read_LFOPosition( sal_uInt16 nId, const sal_uInt8* pData, short nLen); bool SetTxtFmtCollAndListLevel(const SwPaM rRg, SwWW8StyInf rStyleInfo); diff --git a/sw/source/filter/ww8/ww8par3.cxx b/sw/source/filter/ww8/ww8par3.cxx index c750221..2f0956e 100644 --- a/sw/source/filter/ww8/ww8par3.cxx +++ b/sw/source/filter/ww8/ww8par3.cxx @@ -1881,15 +1881,17 @@ void SwWW8ImplReader::Read_ListLevel(sal_uInt16, const sal_uInt8* pData, if( nLen 0 ) { -// aktuelle Liste ist hier zu Ende, was ist zu tun ??? +// the actual level is finished, what should we do ? nListLevel = WW8ListManager::nMaxLevel; if (pStyles !bVer67) pStyles-nWwNumLevel = 0; } else { -// Sicherheitspruefung auf NIL Pointer -if( !pData ) return; +// security check +if( !pData ) +return; + // die Streamdaten sind hier Null basiert, so wie wir es brauchen nListLevel = *pData; @@ -1927,67 +1929,65 @@ void SwWW8ImplReader::Read_LFOPosition(sal_uInt16, const sal_uInt8* pData, if( nLen 0 ) { -// aktueller Level ist hier zu Ende, was ist zu tun ??? +// the actual level is finished, what should we do ? nLFOPosition = USHRT_MAX; nListLevel = WW8ListManager::nMaxLevel; } else { -// Sicherheitspruefung auf NIL Pointer +// security check if( !pData ) return; + short nData = SVBT16ToShort( pData ); if( 0 = nData ) { +// disable the numbering/list style apply to the paragraph or the style + /* If you have a paragraph in word with left and/or hanging indent and remove its numbering, then the indentation appears
[Libreoffice-commits] help.git: source/text
source/text/shared/guide/paintbrush.xhp |1 + 1 file changed, 1 insertion(+) New commits: commit 0401988227a539ef9181bfb26217b09fc360124e Author: Maxime de Roucy mdero...@linagora.com Date: Fri Mar 1 10:50:22 2013 +0100 format paintbrush paragraph / character format Add a paragraph to explain what formats are considered as paragraph and character format by the format paintbrush. See comment 9-10-11 of fdo#59029 Change-Id: I319007544d2361541a86e084ecf85c9e59973dcc Reviewed-on: https://gerrit.libreoffice.org/2484 Reviewed-by: Caolán McNamara caol...@redhat.com Tested-by: Caolán McNamara caol...@redhat.com diff --git a/source/text/shared/guide/paintbrush.xhp b/source/text/shared/guide/paintbrush.xhp index 01d8248..92fc110 100644 --- a/source/text/shared/guide/paintbrush.xhp +++ b/source/text/shared/guide/paintbrush.xhp @@ -57,6 +57,7 @@ /list paragraph xml-lang=en-US id=par_idN10716 role=tip l10n=NEWBy default only the character formatting is copied ; to include paragraph formatting, hold down switchinline select=syscaseinline select=MACCommand/caseinlinedefaultinlineCtrl/defaultinline/switchinline when you click. To copy only the paragraph formatting, hold down switchinline select=syscaseinline select=MACCommand /caseinlinedefaultinlineCtrl/defaultinline/switchinline+Shift when you click./paragraph + paragraph xml-lang=en-US id=par_idN10672 role=paragraph l10n=NEWThe emphparagraph/emph formats are the formats applied to the whole paragraph. The emphcharacter/emph formats are those applied to a portion of the paragraph. For example, if you apply the bold format to a whole paragraph the bold format is a emphparagraph/emph format. Then if you unbold a portion of this paragraph, the bold format is still a emphparagraph/emph format but the portion you unbold has a not bold emphcharacter/emph format./paragraph paragraph xml-lang=en-US id=par_idN10671 role=paragraph l10n=NEWThe following table describes the formatting attributes that the emphFormat Paintbrush/emph can copy:/paragraph table id=tbl_id599688 tablerow ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: helpcontent2
helpcontent2 |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) New commits: commit eda055de9ea68d6d87be34c659fd0a23930ea3e2 Author: Maxime de Roucy mdero...@linagora.com Date: Fri Mar 1 10:50:22 2013 +0100 Updated core Project: help 0401988227a539ef9181bfb26217b09fc360124e format paintbrush paragraph / character format Add a paragraph to explain what formats are considered as paragraph and character format by the format paintbrush. See comment 9-10-11 of fdo#59029 Change-Id: I319007544d2361541a86e084ecf85c9e59973dcc Reviewed-on: https://gerrit.libreoffice.org/2484 Reviewed-by: Caolán McNamara caol...@redhat.com Tested-by: Caolán McNamara caol...@redhat.com diff --git a/helpcontent2 b/helpcontent2 index 4a6558f..0401988 16 --- a/helpcontent2 +++ b/helpcontent2 @@ -1 +1 @@ -Subproject commit 4a6558ff831f49756072305362880ed8c425803f +Subproject commit 0401988227a539ef9181bfb26217b09fc360124e ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[PATCH] format paintbrush paragraph / character format
Hi, I have submitted a patch for review: https://gerrit.libreoffice.org/2484 To pull it, you can do: git pull ssh://gerrit.libreoffice.org:29418/help refs/changes/84/2484/1 format paintbrush paragraph / character format Add a paragraph to explain what formats are considered as paragraph and character format by the format paintbrush. See comment 9-10-11 of fdo#59029 Change-Id: I319007544d2361541a86e084ecf85c9e59973dcc --- M source/text/shared/guide/paintbrush.xhp 1 file changed, 1 insertion(+), 0 deletions(-) diff --git a/source/text/shared/guide/paintbrush.xhp b/source/text/shared/guide/paintbrush.xhp index 01d8248..9156ac6 100644 --- a/source/text/shared/guide/paintbrush.xhp +++ b/source/text/shared/guide/paintbrush.xhp @@ -57,6 +57,7 @@ /list paragraph xml-lang=en-US id=par_idN10716 role=tip l10n=NEWBy default only the character formatting is copied ; to include paragraph formatting, hold down switchinline select=syscaseinline select=MACCommand/caseinlinedefaultinlineCtrl/defaultinline/switchinline when you click. To copy only the paragraph formatting, hold down switchinline select=syscaseinline select=MACCommand /caseinlinedefaultinlineCtrl/defaultinline/switchinline+Shift when you click./paragraph + paragraph xml-lang=en-US id=par_idN10672 role=paragraph l10n=NEWThe emphparagraph/emph formats are the formats applied to the whole paragraph. The emphcharacter/emph format are those applied to a portion of the paragraph. For example if you apply the bold format to a whole paragraph the bold format is a emphparagraph/emph format. Then if you unblod a portion of this paragraph, the bold format is still a emphparagraph/emph format but the portion you unbold have an not bold emphcharacter/emph format./paragraph paragraph xml-lang=en-US id=par_idN10671 role=paragraph l10n=NEWThe following table describes the formatting attributes that the emphFormat Paintbrush/emph can copy:/paragraph table id=tbl_id599688 tablerow -- To view, visit https://gerrit.libreoffice.org/2484 To unsubscribe, visit https://gerrit.libreoffice.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I319007544d2361541a86e084ecf85c9e59973dcc Gerrit-PatchSet: 1 Gerrit-Project: help Gerrit-Branch: master Gerrit-Owner: Maxime de Roucy mdero...@linagora.com ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
[Libreoffice-commits] core.git: 2 commits - sw/qa writerfilter/source
sw/qa/extras/rtfimport/data/fdo53594.rtf | 42 + sw/qa/extras/rtfimport/rtfimport.cxx | 10 +++-- writerfilter/source/rtftok/rtfdocumentimpl.cxx | 41 ++-- writerfilter/source/rtftok/rtfdocumentimpl.hxx |4 +- 4 files changed, 89 insertions(+), 8 deletions(-) New commits: commit 50822d440519bcc95fc4e5d45844c1328e72d6b2 Author: Maxime de Roucy mdero...@linagora.com Date: Mon Feb 25 09:45:52 2013 +0100 testcase for fdo#53594 Change-Id: I834b3cf0b5a46627ff0b532e27a73deeaefe7c47 Reviewed-on: https://gerrit.libreoffice.org/2376 Reviewed-by: Miklos Vajna vmik...@suse.cz Tested-by: Miklos Vajna vmik...@suse.cz diff --git a/sw/qa/extras/rtfimport/data/fdo53594.rtf b/sw/qa/extras/rtfimport/data/fdo53594.rtf new file mode 100644 index 000..55468a6 --- /dev/null +++ b/sw/qa/extras/rtfimport/data/fdo53594.rtf @@ -0,0 +1,42 @@ +{\rtf1\ansi\deff3\adeflang1025 +{\fonttbl{\f0\froman\fprq2\fcharset0 Times New Roman;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\fswiss\fprq2\fcharset0 Arial;}{\f3\froman\fprq2\fcharset0 Nimbus Roman No9 L{\*\falt Times New Roman};}{\f4\fswiss\fprq2\fcharset0 Nimbus Sans L{\*\falt Arial};}{\f5\fnil\fprq2\fcharset0 DejaVu Sans;}} +{\colortbl;\red0\green0\blue0;\red128\green128\blue128;} +{\stylesheet{\s0\snext0\nowidctlpar{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\cf0\kerning1\dbch\af5\langfe2052\dbch\af5\afs24\alang1081\loch\f3\fs24\lang1036 Standard;} +{\s15\sbasedon0\snext16\sb240\sa120\keepn\dbch\af5\dbch\af5\afs28\loch\f4\fs28 Titre;} +{\s16\sbasedon0\snext16\sb0\sa120 Corps de texte;} +{\s17\sbasedon16\snext17\sb0\sa120 Liste;} +{\s18\sbasedon0\snext18\sb120\sa120\noline\i\afs24\ai\fs24 L\u233\'e9gende;} +{\s19\sbasedon0\snext19\noline Index;} +{\s20\sbasedon0\snext20\noline Contenu de tableau;} +}{\info{\author Maxime DE\~ROUCY}{\creatim\yr2013\mo2\dy22\hr18\min15}{\revtim\yr0\mo0\dy0\hr0\min0}{\printim\yr0\mo0\dy0\hr0\min0}{\comment LibreOffice}{\vern3600}}\deftab709 +\viewscale150 +{\*\pgdsctbl +{\pgdsc0\pgdscuse195\pgwsxn11906\pghsxn16838\marglsxn1134\margrsxn1134\margtsxn1134\margbsxn1134\pgdscnxt0 Standard;}} +\formshade\paperh16838\paperw11906\margl1134\margr1134\margt1134\margb1134\sectd\sbknone\sectunlocked1\pgndec\pgwsxn11906\pghsxn16838\marglsxn1134\margrsxn1134\margtsxn1134\margbsxn1134\ftnbj\ftnstart1\ftnrstcont\ftnnar\aenddoc\aftnrstcont\aftnstart1\aftnnrlc +\trowd\trql\ltrrow\trpaddft3\trpaddt0\trpaddfl3\trpaddl0\trpaddfb3\trpaddb0\trpaddfr3\trpaddr0\clbrdrt\brdrhair\brdrw1\brdrcf1\clbrdrl\brdrhair\brdrw1\brdrcf1\clbrdrb\brdrhair\brdrw1\brdrcf1\cellx4819\clbrdrt\brdrhair\brdrw1\brdrcf1\clbrdrl\brdrhair\brdrw1\brdrcf1\clbrdrb\brdrhair\brdrw1\brdrcf1\clbrdrr\brdrhair\brdrw1\brdrcf1\cellx9638\pgndec\pard\plain \s20\noline\intbl\rtlch \ltrch\loch +\cell\pard\plain \s20\noline\intbl{\rtlch \ltrch +{\object\objemb{\*\objdata }{\result{\dn1{\*\shppict{\pict{\*\picprop{\sp{\sn wzDescription}{\sv }}{\sp{\sn wzName}{\sv }}}\picscalex99\picscaley95\piccropl0\piccropr0\piccropt0\piccropb0\picw2258\pich480\picwgoal1280\pichgoal272\wmetafile8 +01000903a8021000d401d40126060f009e03574d464301000100599901007c037c030100 +6c0054001100d108df0120454d4601007c031c000200 +55001200160004003458c01211000c0008000b0010006000 +69001000ec09ec090c001a00100014000c000d00 +12000c000100210008002100080022000c0014000c000d0052004c010100 +9ffe900100224e0069006d006200750073002000530061006e00730020004c00 + + + + +16000c00180018000c0025000c0001005400880023003601c804f7020100 +230036010a004c00020060006f006c00650020006f0062006a00 +6500630074009f0035009e0050009f009e0035009f0084007b002100080022000c00 +14000c000d002100080022000c0014000c000d002100080022000c00
[Libreoffice-commits] core.git: Branch 'libreoffice-4-0' - writerfilter/source
writerfilter/source/rtftok/rtfdocumentimpl.cxx | 41 +++-- writerfilter/source/rtftok/rtfdocumentimpl.hxx |4 +- 2 files changed, 41 insertions(+), 4 deletions(-) New commits: commit 04a761f330b6ff17a125cc5522e71aae86a862f9 Author: Maxime de Roucy mdero...@linagora.com Date: Wed Feb 20 14:27:47 2013 +0100 fdo#53594 RTF IMPORT : considere OLEÂ objects as pictures If the OLE object is in a container, don't try to import it as OLEÂ object (use the \objdata element) but use the \result element which is the appareance of the object (it's a picture). Change-Id: Id97b36ce89beae02885cf82383321c14b58f2ea5 Reviewed-on: https://gerrit.libreoffice.org/2243 Reviewed-by: Miklos Vajna vmik...@suse.cz Tested-by: Miklos Vajna vmik...@suse.cz Signed-off-by: Miklos Vajna vmik...@suse.cz diff --git a/writerfilter/source/rtftok/rtfdocumentimpl.cxx b/writerfilter/source/rtftok/rtfdocumentimpl.cxx index 366959e..cf1a1aa 100644 --- a/writerfilter/source/rtftok/rtfdocumentimpl.cxx +++ b/writerfilter/source/rtftok/rtfdocumentimpl.cxx @@ -715,6 +715,9 @@ int RTFDocumentImpl::resolvePict(bool bInline) if ( xShapes.is() ) xShapes-add( xShape ); } + +// check if the picture is in an OLE object and if the \objdata element is used +// (see RTF_OBJECT in RTFDocumentImpl::dispatchDestination) if (m_bObject) { // Set bitmap @@ -735,6 +738,7 @@ int RTFDocumentImpl::resolvePict(bool bInline) m_aObjectAttributes.set(NS_ooxml::LN_shape, pShapeValue); return 0; } + if (xPropertySet.is()) xPropertySet-setPropertyValue(GraphicURL, uno::Any(aGraphicUrl)); @@ -1445,11 +1449,34 @@ int RTFDocumentImpl::dispatchDestination(RTFKeyword nKeyword) m_aStates.top().nDestinationState = DESTINATION_COMMENT; break; case RTF_OBJECT: -m_aStates.top().nDestinationState = DESTINATION_OBJECT; -m_bObject = true; +{ +// begining of an OLE Object +m_aStates.top().nDestinationState = DESTINATION_OBJECT; + +// check if the object is in a special container (e.g. a table) +if (!m_pCurrentBuffer) +{ +// the object is in a table or another container. +// Don't try to treate it as an OLE object (fdo#53594). +// Use the \result (RTF_RESULT) element of the object instead, +// the result element contain picture representing the OLE Object. +m_bObject = true; +} +} break; case RTF_OBJDATA: -m_aStates.top().nDestinationState = DESTINATION_OBJDATA; +// check if the object is in a special container (e.g. a table) +if (m_pCurrentBuffer) +{ +// the object is in a table or another container. +// Use the \result (RTF_RESULT) element of the object instead, +// of the \objdata. +m_aStates.top().nDestinationState = DESTINATION_SKIP; +} +else +{ +m_aStates.top().nDestinationState = DESTINATION_OBJDATA; +} break; case RTF_RESULT: m_aStates.top().nDestinationState = DESTINATION_RESULT; @@ -3860,6 +3887,14 @@ int RTFDocumentImpl::popState() break; case DESTINATION_OBJECT: { +if (!m_bObject) +{ +// if the object is in a special container we will use the \result +// element instead of the \objdata +// (see RTF_OBJECT in RTFDocumentImpl::dispatchDestination) +break; +} + RTFSprms aObjAttributes; RTFSprms aObjSprms; RTFValue::Pointer_t pValue(new RTFValue(m_aObjectAttributes, m_aObjectSprms)); diff --git a/writerfilter/source/rtftok/rtfdocumentimpl.hxx b/writerfilter/source/rtftok/rtfdocumentimpl.hxx index d61efef..82490eb 100644 --- a/writerfilter/source/rtftok/rtfdocumentimpl.hxx +++ b/writerfilter/source/rtftok/rtfdocumentimpl.hxx @@ -561,7 +561,9 @@ namespace writerfilter { RTFSprms m_aObjectSprms; RTFSprms m_aObjectAttributes; -/// If we are in an object group. +/** If we are in an object group and if the we use its + * \objdata element. + * (if we don't use the \objdata we use the \result element)*/ bool m_bObject; /// Contents of the objdata group. boost::shared_ptrSvStream m_pObjectData; ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
Re: help on macro (writing a testcase)
Hello, I managed to write the testcase, thanks a lot :-) https://gerrit.libreoffice.org/#/c/2376/ In fact I used another testcase that was already written (testFdo48033). Regards -- Maxime de Roucy Groupe LINAGORA - OSSA ✉ : 80 rue Roque de Fillol 92800 PUTEAUX ☎ : 01.46.96.63.44 ☏ : 06.42.00.49.09 signature.asc Description: This is a digitally signed message part ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
help on macro (writing a testcase)
Hello I am trying to write a test case for a my patch : https://gerrit.libreoffice.org/#/c/2243/ Basically I have to test if the only picture of the document is in the first or the second cell of the only table of the document (Writer). As explained in this page : http://opengrok.libreoffice.org/xref/core/sw/qa/extras/ Before going to the C++ I am trying to write a macro doing my test. I don't know much about macro. I use XrayTool but I can't figured out how to do my test. I tried to list the element of the cells but didn't find the picture in it… oTable = oDoc.getTextTables().getByIndex(0) oCell = oTable.getCellByName(B1) xray oCell oElementEnum = oCell.createEnumeration() xray oElementEnum.nextElement() While oElementEnum.hasMoreElements() xray oElementEnum.nextElement() Wend Can someone could help me ? Thank you in advance -- Maxime de Roucy Groupe LINAGORA - OSSA ✉ : 80 rue Roque de Fillol 92800 PUTEAUX ☎ : 01.46.96.63.44 ☏ : 06.42.00.49.09 signature.asc Description: This is a digitally signed message part ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
[Libreoffice-commits] core.git: sw/source
sw/source/core/doc/docnum.cxx|7 +-- sw/source/core/txtnode/ndtxt.cxx |8 ++-- sw/source/filter/ww8/ww8par6.cxx |4 ++-- 3 files changed, 9 insertions(+), 10 deletions(-) New commits: commit 7841fd1536e018defaf9cbeb283cb82b687f95e1 Author: Maxime de Roucy mdero...@linagora.com Date: Fri Feb 8 14:54:36 2013 +0100 use static/reinterpret_cast and minor rewrite Change-Id: I9d2f21394c03e29d573dc197da90a91c96d55409 Reviewed-on: https://gerrit.libreoffice.org/2047 Tested-by: LibreOffice gerrit bot ger...@libreoffice.org Reviewed-by: Norbert Thiebaud nthieb...@gmail.com diff --git a/sw/source/core/doc/docnum.cxx b/sw/source/core/doc/docnum.cxx index 25d043b..b4078c8 100644 --- a/sw/source/core/doc/docnum.cxx +++ b/sw/source/core/doc/docnum.cxx @@ -1357,11 +1357,14 @@ void SwDoc::DelNumRules( const SwPaM rPam ) pTNd-ResetAttr( RES_PARATR_LIST_ISCOUNTED ); if( RES_CONDTXTFMTCOLL == pTNd-GetFmtColl()-Which() ) +{ pTNd-ChkCondColl(); - +} else if( !pOutlNd - ((SwTxtFmtColl*)pTNd-GetFmtColl())-IsAssignedToListLevelOfOutlineStyle() )//-end,zhaojianwei + static_castSwTxtFmtColl*(pTNd-GetFmtColl())-IsAssignedToListLevelOfOutlineStyle() )//-end,zhaojianwei +{ pOutlNd = pTNd; +} } } diff --git a/sw/source/core/txtnode/ndtxt.cxx b/sw/source/core/txtnode/ndtxt.cxx index 703e632..4881fb5 100644 --- a/sw/source/core/txtnode/ndtxt.cxx +++ b/sw/source/core/txtnode/ndtxt.cxx @@ -2348,9 +2348,7 @@ SwNumRule* SwTxtNode::_GetNumRule(sal_Bool bInParent) const SwNumRule* SwTxtNode::GetNumRule(sal_Bool bInParent) const { -SwNumRule * pRet = _GetNumRule(bInParent); - -return pRet; +return _GetNumRule(bInParent); } void SwTxtNode::NumRuleChgd() @@ -4845,9 +4843,7 @@ sal_uInt32 SwTxtNode::GetRsid( xub_StrLen nStt, xub_StrLen nEnd ) const sal_uInt32 SwTxtNode::GetParRsid() const { -SvxRsidItem rItem = ( SvxRsidItem ) GetAttr( RES_PARATR_RSID ); - -return rItem.GetValue(); +return reinterpret_castconst SvxRsidItem(GetAttr( RES_PARATR_RSID )).GetValue(); } bool SwTxtNode::CompareParRsid( const SwTxtNode rTxtNode ) const diff --git a/sw/source/filter/ww8/ww8par6.cxx b/sw/source/filter/ww8/ww8par6.cxx index 761a68a..c4f260e 100644 --- a/sw/source/filter/ww8/ww8par6.cxx +++ b/sw/source/filter/ww8/ww8par6.cxx @@ -3827,10 +3827,10 @@ void SwWW8ImplReader::Read_LR( sal_uInt16 nId, const sal_uInt8* pData, short nLe SvxLRSpaceItem aLR( RES_LR_SPACE ); const SfxPoolItem* pLR = GetFmtAttr(RES_LR_SPACE); if( pLR ) -aLR = *(const SvxLRSpaceItem*)pLR; +aLR = *static_castconst SvxLRSpaceItem*(pLR); // Fix the regression issue: #i99822#: Discussion? -// Since the list lever formatting doesn't apply into paragraph style +// Since the list level formatting doesn't apply into paragraph style // for list levels of mode LABEL_ALIGNMENT.(see ww8par3.cxx // W8ImplReader::RegisterNumFmtOnTxtNode). // Need to apply the list format to the paragraph here. ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[PATCH] res. bug on numbered paragraph when .doc import
(*GetDfltAttr(RES_PARATR_NUMRULE)); + +// reset/blank the indent pAktColl-SetFmtAttr(SvxLRSpaceItem(RES_LR_SPACE)); } else if (SwTxtNode* pTxtNode = pPaM-GetNode()-GetTxtNode()) { -pTxtNode-ResetAttr( RES_PARATR_NUMRULE ); // #i54393# -pTxtNode-SetCountedInList(false); +// here a paragraph is being directly formated -/* -#i24553# -Hmm, I can't remove outline numbering on a per txtnode basis, -but I can set some normal numbering, and that overrides outline -numbering, and then I can say when I come to say that I want no -number on the normal numbering rule, that should all work out +// empty the numbering/list style applied to the current paragraph +SwNumRuleItem aEmptyRule( aEmptyStr ); +pTxtNode-SetAttr( aEmptyRule ); -No special outline number in textnode any more -*/ -if (pTxtNode-IsOutline()) -{ -// #i54393# -// It's not needed to call SetCounted( false ) again - see above. -// #i54393# -// Assure that the numbering rule, which is retrieved at -// the paragraph is the outline numbering rule, instead of -// incorrectly setting the chosen outline rule. -// Note: The chosen outline rule doesn't have to correspond -// to the outline rule -if ( pTxtNode-GetNumRule() != rDoc.GetOutlineNumRule() ) -{ -pTxtNode-SetAttr( -SwNumRuleItem( rDoc.GetOutlineNumRule()-GetName() ) ); -} -} +// create an empty SvxLRSpaceItem +SvxLRSpaceItem aLR( RES_LR_SPACE ); -pCtrlStck-NewAttr(*pPaM-GetPoint(), SvxLRSpaceItem(RES_LR_SPACE)); -pCtrlStck-SetAttr(*pPaM-GetPoint(), RES_LR_SPACE); +// replace it with the one of the current node if it exist +const SfxPoolItem* pLR = GetFmtAttr(RES_LR_SPACE); +if( pLR ) +aLR = *static_castconst SvxLRSpaceItem*(pLR); + +// reset/blank the left indent (and only the left) +aLR.SetTxtLeft(0); +aLR.SetTxtFirstLineOfst(0); + +// apply the modified SvxLRSpaceItem to the current paragraph +pTxtNode-SetAttr( aLR ); } + nLFOPosition = USHRT_MAX; } else -- To view, visit https://gerrit.libreoffice.org/2046 To unsubscribe, visit https://gerrit.libreoffice.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: If0568f341b82c2e8354f1728e5fc6f1ab310ea51 Gerrit-PatchSet: 1 Gerrit-Project: core Gerrit-Branch: master Gerrit-Owner: Maxime de Roucy mdero...@linagora.com ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
[PATCH] use static/reinterpret_cast and minor rewrite
Hi, I have submitted a patch for review: https://gerrit.libreoffice.org/2047 To pull it, you can do: git pull ssh://gerrit.libreoffice.org:29418/core refs/changes/47/2047/1 use static/reinterpret_cast and minor rewrite Change-Id: I9d2f21394c03e29d573dc197da90a91c96d55409 --- M sw/source/core/doc/docnum.cxx M sw/source/core/txtnode/ndtxt.cxx M sw/source/filter/ww8/ww8par6.cxx 3 files changed, 9 insertions(+), 10 deletions(-) diff --git a/sw/source/core/doc/docnum.cxx b/sw/source/core/doc/docnum.cxx index 25d043b..b4078c8 100644 --- a/sw/source/core/doc/docnum.cxx +++ b/sw/source/core/doc/docnum.cxx @@ -1357,11 +1357,14 @@ pTNd-ResetAttr( RES_PARATR_LIST_ISCOUNTED ); if( RES_CONDTXTFMTCOLL == pTNd-GetFmtColl()-Which() ) +{ pTNd-ChkCondColl(); - +} else if( !pOutlNd - ((SwTxtFmtColl*)pTNd-GetFmtColl())-IsAssignedToListLevelOfOutlineStyle() )//-end,zhaojianwei + static_castSwTxtFmtColl*(pTNd-GetFmtColl())-IsAssignedToListLevelOfOutlineStyle() )//-end,zhaojianwei +{ pOutlNd = pTNd; +} } } diff --git a/sw/source/core/txtnode/ndtxt.cxx b/sw/source/core/txtnode/ndtxt.cxx index 703e632..4881fb5 100644 --- a/sw/source/core/txtnode/ndtxt.cxx +++ b/sw/source/core/txtnode/ndtxt.cxx @@ -2348,9 +2348,7 @@ SwNumRule* SwTxtNode::GetNumRule(sal_Bool bInParent) const { -SwNumRule * pRet = _GetNumRule(bInParent); - -return pRet; +return _GetNumRule(bInParent); } void SwTxtNode::NumRuleChgd() @@ -4845,9 +4843,7 @@ sal_uInt32 SwTxtNode::GetParRsid() const { -SvxRsidItem rItem = ( SvxRsidItem ) GetAttr( RES_PARATR_RSID ); - -return rItem.GetValue(); +return reinterpret_castconst SvxRsidItem(GetAttr( RES_PARATR_RSID )).GetValue(); } bool SwTxtNode::CompareParRsid( const SwTxtNode rTxtNode ) const diff --git a/sw/source/filter/ww8/ww8par6.cxx b/sw/source/filter/ww8/ww8par6.cxx index 761a68a..c4f260e 100644 --- a/sw/source/filter/ww8/ww8par6.cxx +++ b/sw/source/filter/ww8/ww8par6.cxx @@ -3827,10 +3827,10 @@ SvxLRSpaceItem aLR( RES_LR_SPACE ); const SfxPoolItem* pLR = GetFmtAttr(RES_LR_SPACE); if( pLR ) -aLR = *(const SvxLRSpaceItem*)pLR; +aLR = *static_castconst SvxLRSpaceItem*(pLR); // Fix the regression issue: #i99822#: Discussion? -// Since the list lever formatting doesn't apply into paragraph style +// Since the list level formatting doesn't apply into paragraph style // for list levels of mode LABEL_ALIGNMENT.(see ww8par3.cxx // W8ImplReader::RegisterNumFmtOnTxtNode). // Need to apply the list format to the paragraph here. -- To view, visit https://gerrit.libreoffice.org/2047 To unsubscribe, visit https://gerrit.libreoffice.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I9d2f21394c03e29d573dc197da90a91c96d55409 Gerrit-PatchSet: 1 Gerrit-Project: core Gerrit-Branch: master Gerrit-Owner: Maxime de Roucy mdero...@linagora.com ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
[Libreoffice] [PATCH] fix bug 53508
Hello, Here is a patch that should fix bug 53508. It apply the paragraph automatic formatting attributs to all the nodes in the selection (SwPaM) instead of just the last node. Sorry to take so much time to make this patch… I don't have much time to code on LO. But each time I do it's a real pleasure :-) Regards -- Maxime de Roucy Groupe LINAGORA - OSSA ✉ : 80 rue Roque de Fillol 92800 PUTEAUX ☎ : 01.46.96.63.44 : 06.42.00.49.09 From 53bba85c0bba1de7acea5a032fb075c0cf3d9ae2 Mon Sep 17 00:00:00 2001 From: Maxime de Roucy mdero...@linagora.com Date: Fri, 23 Nov 2012 14:40:27 +0100 Subject: [PATCH] fix bug 53508 In the format paintbrush function : Apply the paragraph automatic attributes to all the nodes in the selection instead of just the last node. Change-Id: I655f00cbf44d3d80c19a7ef623bc1c7cb505ead9 --- sw/source/ui/uiview/formatclipboard.cxx | 10 +- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/sw/source/ui/uiview/formatclipboard.cxx b/sw/source/ui/uiview/formatclipboard.cxx index f907754..e56a93d 100644 --- a/sw/source/ui/uiview/formatclipboard.cxx +++ b/sw/source/ui/uiview/formatclipboard.cxx @@ -550,7 +550,15 @@ void SwFormatClipboard::Paste( SwWrtShell rWrtShell, SfxStyleSheetBasePool* pPo // it can't be a multiple selection SwPaM* pCrsr = rWrtShell.GetCrsr(); -// apply the paragraph automatic attributes +// apply the paragraph automatic attributes to all the nodes in the selection +for (SwNodeIndex pNodeIndexIterator = pCrsr-Start()-nNode, + pNodeIndexEnd = pCrsr-End()-nNode; +pNodeIndexIterator != pNodeIndexEnd; +++pNodeIndexIterator ) +{ +pNodeIndexIterator.GetNode().GetCntntNode()-SetAttr( *pTemplateItemSet ); +} +// same as pCrsr-End()-nNode.GetNode().GetCntntNode()-SetAttr pCrsr-GetCntntNode()-SetAttr( *pTemplateItemSet ); // store the attributes in aItemVector in order not to apply them as -- 1.8.0 signature.asc Description: This is a digitally signed message part ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
problem building branch 3.6.x
Hello I have to work on a 3.6.x problem that doesn't appear in the master branch. I can build the master branch just fine with : git clean -dfx git pull export PYTHON=python2 install_dir=/home/myuser/libreoffice/$1 ./autogen.sh --prefix=$install_dir/usr \ --exec-prefix=$install_dir/usr --sysconfdir=$install_dir/etc \ --libdir=$install_dir/usr/lib --mandir=$install_dir/usr/share/man \ --enable-debug --enable-dbgutil \ --without-doxygen --disable-zenity make I use archlinux. If I checkout to a 3.6 branch the build fail with : # … internal build errors: ERROR: error 512 occurred while making /home/max/libreoffice/3_6/dictionaries/prj it seems that the error is inside 'dictionaries', please re-run build inside this module to isolate the error and/or test your fix: build_error.log should contain the captured output of the failed module(s) --- To rebuild a specific module: make dictionaries.clean # optional make dictionaries … # If I execute : make dictionaries.clean make dictionaries It fail with : # = (1/1) Building module dictionaries = Entering /home/max/libreoffice/3_6/dictionaries/prj --- force_dmake_to_error Error: No makefile.mk found! --- dmake: Error executing 'force_dmake_to_error': No such file or directory dmake: Error code -1, while making 'no_traget' --- Oh dear - something failed during the build - sorry ! For more help with debugging build errors, please see the section in: http://wiki.documentfoundation.org/Development internal build errors: ERROR: error 65280 occurred while making /home/max/libreoffice/3_6/dictionaries/prj it seems that the error is inside 'dictionaries', please re-run build inside this module to isolate the error and/or test your fix: build_error.log should contain the captured output of the failed module(s) # Can you help me please ? Thank you in advance. -- Maxime de Roucy Groupe LINAGORA - OSSA 80 rue Roque de Fillol 92800 PUTEAUX Tel. : 0033(0)642004909 ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [PUSHED partial][PATCH] Prevent print settings dialog to show help button when it's called from help window
Hello, 0003 : some rewriting of SfxViewShell::ExecPrint_Impl ; add some comments, prevent a segfault (NULL pointer dereferencing ; add return after rReq.SetReturnValue(SfxBoolItem(0,sal_False)) 0004 : Prevent the printer settings dialog to show help button when it's called from a help window. I guess we'll leave the other two until your updated patches. Right ?, or is 0004 still valid ? Here is the a new 0003 and 0004 without the bug. Regards -- Maxime de Roucy Groupe LINAGORA - OSSA 80 rue Roque de Fillol 92800 PUTEAUX Tel. : 0033(0)642004909 Le lundi 25 juin 2012 à 16:56 +0100, Caolán McNamara a écrit : On Tue, 2012-06-19 at 16:05 +0200, Maxime de Roucy wrote: Hello, Here is some patchs : 0001 : one line, code simplification. I've pushed this one anyway. 0002 : explicite NULL or 0 comparison in if. I don't know if LibreOffice have a coding standard about that type of comparison ? meh, I don't think we have any coding standards around it. But I'd skip this one as in the absence of a coding standard I don't see the value in swapping from one equally valid syntax to another. 0003 : some rewriting of SfxViewShell::ExecPrint_Impl ; add some comments, prevent a segfault (NULL pointer dereferencing ; add return after rReq.SetReturnValue(SfxBoolItem(0,sal_False)) 0004 : Prevent the printer settings dialog to show help button when it's called from a help window. I guess we'll leave the other two until your updated patches. Right ?, or is 0004 still valid ? C. From 221450ef23f6984a87c7a6ac4ddcc85a7a622c63 Mon Sep 17 00:00:00 2001 From: Maxime de Roucy mdero...@linagora.com Date: Tue, 26 Jun 2012 15:00:38 +0200 Subject: [PATCH 1/2] Some rewriting in SfxViewShell::ExecPrint_Impl MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * add comments * reorganise if statement * use of the IsAPI function * prevent segfault (NULL pointer dereferencing) Change-Id: Ib26399b297aa991e37825f0b3d31574ff1253d4f --- sfx2/source/view/viewprn.cxx | 85 1 file changed, 47 insertions(+), 38 deletions(-) diff --git a/sfx2/source/view/viewprn.cxx b/sfx2/source/view/viewprn.cxx index a8c19a2..fb3b9fd 100644 --- a/sfx2/source/view/viewprn.cxx +++ b/sfx2/source/view/viewprn.cxx @@ -137,7 +137,7 @@ SfxPrinterController::SfxPrinterController( const boost::shared_ptrPrinter i_ // initialize extra ui options if( mxRenderable.is() ) { -for (sal_Int32 nProp=0; nProprProps.getLength(); nProp++) +for (sal_Int32 nProp=0; nProp rProps.getLength(); nProp++) setValue( rProps[nProp].Name, rProps[nProp].Value ); Sequence beans::PropertyValue aRenderOptions( 3 ); @@ -654,15 +654,21 @@ Printer* SfxViewShell::GetActivePrinter() const void SfxViewShell::ExecPrint_Impl( SfxRequest rReq ) { -sal_uInt16 nDialogRet = RET_CANCEL; +sal_uInt16 nDialogRet = RET_CANCEL; SfxPrinter* pPrinter = 0; SfxDialogExecutor_Impl* pExecutor = 0; boolbSilent = false; -sal_Bool bIsAPI = rReq.GetArgs() rReq.GetArgs()-Count(); + +// does the function have been called by the user interface or by an API call +sal_Bool bIsAPI = rReq.IsAPI(); if ( bIsAPI ) { +// the function have been called by the API + +// Should it be visible on the user interface, +// should it launch popup dialogue ? SFX_REQUEST_ARG(rReq, pSilentItem, SfxBoolItem, SID_SILENT, sal_False); -bSilent = pSilentItem pSilentItem-GetValue(); +bSilent = ( pSilentItem != NULL pSilentItem-GetValue() ); } //FIXME: how to transport bPrintOnHelp? @@ -678,27 +684,20 @@ void SfxViewShell::ExecPrint_Impl( SfxRequest rReq ) const sal_uInt16 nId = rReq.GetSlot(); switch( nId ) { -// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -case SID_PRINTDOC: -case SID_PRINTDOCDIRECT: +case SID_PRINTDOC: // display the printer selection and properties dialogue : File Print… +case SID_PRINTDOCDIRECT: // Print the document directly, without displaying the dialogue { SfxObjectShell* pDoc = GetObjectShell(); // derived class may decide to abort this -if( !pDoc-QuerySlotExecutable( nId ) ) +if( pDoc == NULL || !pDoc-QuerySlotExecutable( nId ) ) { rReq.SetReturnValue( SfxBoolItem( 0, sal_False ) ); return; } -bool bDetectHidden = ( !bSilent pDoc ); -if ( bDetectHidden pDoc-QueryHiddenInformation( WhenPrinting, NULL ) != RET_YES ) -break; - -SFX_REQUEST_ARG(rReq, pSelectItem, SfxBoolItem, SID_SELECTION, sal_False); -sal_Bool bSelection = pSelectItem pSelectItem-GetValue(); -if( pSelectItem
Re: [Libreoffice][PATCH] Prevent print settings dialog to show help button when it's called from help window
The patch 0003 introduce a bug : -if ( SID_PRINTER_NAME == nId ) -{ -// just set a recorded printer name -if ( pPrinter ) -SetPrinter( pPrinter, SFX_PRINTER_PRINTER ); -break; -} please wait before pushing it. I will release a patch that will correct the problem. Regards -- Maxime de Roucy Groupe LINAGORA - OSSA 80 rue Roque de Fillol 92800 PUTEAUX Tel. : 0033(0)642004909 Le mardi 19 juin 2012 à 16:05 +0200, Maxime de Roucy a écrit : Hello, Here is some patchs : 0001 : one line, code simplification. 0002 : explicite NULL or 0 comparison in if. I don't know if LibreOffice have a coding standard about that type of comparison ? 0003 : some rewriting of SfxViewShell::ExecPrint_Impl ; add some comments, prevent a segfault (NULL pointer dereferencing ; add return after rReq.SetReturnValue(SfxBoolItem(0,sal_False)))… 0004 : Prevent the printer settings dialog to show help button when it's called from a help window. Regards. ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice signature.asc Description: This is a digitally signed message part ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice-ux-advise] named formatting attributs overwrite automatic formatting attributs (paragraph / character)
Hello, For me, character style and paragraph style should behave the same. I change my mind and think that character style should behave like the paragraph style : If you apply a style on something (text or paragraph) the style should overwrite the preview style and directs attributs on this something. If you apply a direct attribut on something the direct attribut should be merge with the preview style and direct attribut on this something. But I don’t like very much the idea to force people to use style formatting… Regards Maxime de Roucy -- Maxime de Roucy Groupe LINAGORA - OSSA 80 rue Roque de Fillol 92800 PUTEAUX Tel. : 0 810 251 251 Le vendredi 30 mars 2012 à 07:53 +0200, Jean-Francois Nifenecker a écrit : Hi, Le 29/03/2012 22:09, Rafael Rocha Daud a écrit : This is intended behaviour. LibreOffice makes an assumption that when you apply a style you want the paragraph to look like that, so it overrides the direct formatting that had been applied to the whole paragraph. The assumption works otherwise when the direct formatting was affecting only a portion: you want the paragraph to look like the style, but you want that portion to retain it's direct formatting. Generally, direct formatting overrides styles, but they are not really meant to be used in conjunction, but you still can if you want to. The best thing to do in your specific case is to change the style itself so it applies your bold atribute (or you may create a new style, based on that one, to do that). The second best thing is to apply the direct formatting after applying the style (but remember you will have to do that for each paragraph you want that atribute in, and you will have to re-do it if you later change the paragraph style again. To me there are two questions : the one Maxime asked, ie the homogeneity between paragraph style and character style use. The second one is whether the tool should encourage to a correct use of the tool or not. Homogeneity I share Maxime's thoughts and, imo, both style types should apply the same, iow, applying a style should replace the underlying formatting (direct or style). Correct use Styles are the first reason to adopt LibreOffice. This should be highly emphasized and promoted. As a trainer, I always bring questions back to styles: 3 times upon 2, using a style solves the problem (yes, 3 times upon 2 ;). Hence, direct formatting should be discouraged. Better yet, for instance, pressing the Bold toolbutton should apply the correct character style (bold emphasis by default) instead of setting the bold property to the underlying characters. Side note: I feel a very important need for table styles in Writer. signature.asc Description: This is a digitally signed message part ___ Libreoffice-ux-advise mailing list Libreoffice-ux-advise@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-ux-advise
Re: [Libreoffice-ux-advise] [Libreoffice] named formatting attributs overwrite automatic formatting attributs (paragraph / character)
Hello, I have been ask to rewrite my mail with the term direct formatting (which means with the buttons) and style formatting (which means with the Style and Formatting window). So here it is : I am wondering, when I apply a direct character formatting attribut on a portion of text (not a whole paragraph) (for example I clic on bold in the Formatting toolbar) and then apply a style character formatting attribut on the same portion of text (for example Internet Link), the attributs are merged. When I apply a direct character formatting attribut to a paragraph (for example I clic on bold in the Formatting toolbar) and the apply a style paragraph formatting attribut (for example Default) on the same paragraph, the style attribut overwrite the automatic one (the bold attribut disappear). For my part I think this should be fixed, I mean that both paragraph and character attributs should have the same behavior (overwriting or merging). What do you think ? - am I wrong ? (Not my choice…) - Should the style paragraph formatting attribut be merge with the direct one ? (My first choice) - Should the style character formatting attribut overwrite the direct one ? (My second choice) Regards Maxime de Roucy -- Maxime de Roucy Groupe LINAGORA - OSSA 80 rue Roque de Fillol 92800 PUTEAUX Tel. : 0 810 251 251 Le mercredi 28 mars 2012 à 18:23 +0200, Maxime de Roucy a écrit : Hello, I am wondering, when I apply an automatic character formatting attribut on a portion of text (not a whole paragraph) and then apply a named character formatting attribut on the same portion of text, the attribut are merged. When I apply an automatic character formatting attribut to a paragraph and the apply a named paragraph formatting attribut on the same paragraph, the named attribut overwrite the automatic one. For my part I think this should be fixed, I mean that both paragraph and character attributs should have the same behavior (overwriting or merging). What do you think ? - am I wrong ? (Not my choice…) - Should the named paragraph formatting attribut be merge with the automatic one ? (My first choice) - Should the named character formatting attribut overwrite the automatic one ? (My second choice) Regards Maxime de Roucy PS : I think I already ask but nobody answers, furthermore I don't find my previous mail ___ Libreoffice-ux-advise mailing list libreoffice-ux-adv...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-ux-advise signature.asc Description: This is a digitally signed message part ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice-ux-advise] [Libreoffice] named formatting attributs overwrite automatic formatting attributs (paragraph / character)
Hello, I have been ask to rewrite my mail with the term direct formatting (which means with the buttons) and style formatting (which means with the Style and Formatting window). So here it is : I am wondering, when I apply a direct character formatting attribut on a portion of text (not a whole paragraph) (for example I clic on bold in the Formatting toolbar) and then apply a style character formatting attribut on the same portion of text (for example Internet Link), the attributs are merged. When I apply a direct character formatting attribut to a paragraph (for example I clic on bold in the Formatting toolbar) and the apply a style paragraph formatting attribut (for example Default) on the same paragraph, the style attribut overwrite the automatic one (the bold attribut disappear). For my part I think this should be fixed, I mean that both paragraph and character attributs should have the same behavior (overwriting or merging). What do you think ? - am I wrong ? (Not my choice…) - Should the style paragraph formatting attribut be merge with the direct one ? (My first choice) - Should the style character formatting attribut overwrite the direct one ? (My second choice) Regards Maxime de Roucy -- Maxime de Roucy Groupe LINAGORA - OSSA 80 rue Roque de Fillol 92800 PUTEAUX Tel. : 0 810 251 251 Le mercredi 28 mars 2012 à 18:23 +0200, Maxime de Roucy a écrit : Hello, I am wondering, when I apply an automatic character formatting attribut on a portion of text (not a whole paragraph) and then apply a named character formatting attribut on the same portion of text, the attribut are merged. When I apply an automatic character formatting attribut to a paragraph and the apply a named paragraph formatting attribut on the same paragraph, the named attribut overwrite the automatic one. For my part I think this should be fixed, I mean that both paragraph and character attributs should have the same behavior (overwriting or merging). What do you think ? - am I wrong ? (Not my choice…) - Should the named paragraph formatting attribut be merge with the automatic one ? (My first choice) - Should the named character formatting attribut overwrite the automatic one ? (My second choice) Regards Maxime de Roucy PS : I think I already ask but nobody answers, furthermore I don't find my previous mail ___ Libreoffice-ux-advise mailing list Libreoffice-ux-advise@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-ux-advise signature.asc Description: This is a digitally signed message part ___ Libreoffice-ux-advise mailing list Libreoffice-ux-advise@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-ux-advise
Re: [Libreoffice-ux-advise] [Libreoffice] [PATCH] modify default behaviour of the format paintbrush
Hello, I am writing this mail trying to prevent this thread from dying… So, what do you think about changing the default behavior of the format paintbrush ? Regards Maxime de Roucy -- Maxime de Roucy Groupe LINAGORA - OSSA 80 rue Roque de Fillol 92800 PUTEAUX Tel. : 0 810 251 251 Le lundi 19 mars 2012 à 12:15 +0100, Maxime de Roucy a écrit : Hello, Is this change based on the idea, that people who use the paintbrush are not that much looking at styles, and thus that copying those styles might do more harm then good for them? I was showing a modification I made to the format paintbrush in a preview patch to a co-worker who work with LO but don't know it that much. And he was very surprised that the tool change the format of the whole paragraph. For him, by default the format paintbrush should just change the selected characters (whether using named or auto-style format). That's why I thought of changing the default behaviour. Currently : By default it past the characters and paragraphs formatting ; if Ctrl is hold, it only past the character formatting ; if Ctrl and Shift are hold, it only past the paragraph formatting. With the patch : By default it only past the characters formatting ; if Ctrl is hold, it past the characters and paragraphs formatting ; if Ctrl and Shift are hold, it only past the paragraph formatting. Regards ___ Libreoffice-ux-advise mailing list libreoffice-ux-adv...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-ux-advise signature.asc Description: This is a digitally signed message part ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
[Libreoffice-ux-advise] [Libreoffice] named formatting attributs overwrite automatic formatting attributs (paragraph / character)
Hello, I am wondering, when I apply an automatic character formatting attribut on a portion of text (not a whole paragraph) and then apply a named character formatting attribut on the same portion of text, the attribut are merged. When I apply an automatic character formatting attribut to a paragraph and the apply a named paragraph formatting attribut on the same paragraph, the named attribut overwrite the automatic one. For my part I think this should be fixed, I mean that both paragraph and character attributs should have the same behavior (overwriting or merging). What do you think ? - am I wrong ? (Not my choice…) - Should the named paragraph formatting attribut be merge with the automatic one ? (My first choice) - Should the named character formatting attribut overwrite the automatic one ? (My second choice) Regards Maxime de Roucy PS : I think I already ask but nobody answers, furthermore I don't find my previous mail -- Maxime de Roucy Groupe LINAGORA - OSSA 80 rue Roque de Fillol 92800 PUTEAUX Tel. : 0 810 251 251 signature.asc Description: This is a digitally signed message part ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
[Libreoffice-ux-advise] [Libreoffice] named formatting attributs overwrite automatic formatting attributs (paragraph / character)
Hello, I am wondering, when I apply an automatic character formatting attribut on a portion of text (not a whole paragraph) and then apply a named character formatting attribut on the same portion of text, the attribut are merged. When I apply an automatic character formatting attribut to a paragraph and the apply a named paragraph formatting attribut on the same paragraph, the named attribut overwrite the automatic one. For my part I think this should be fixed, I mean that both paragraph and character attributs should have the same behavior (overwriting or merging). What do you think ? - am I wrong ? (Not my choice…) - Should the named paragraph formatting attribut be merge with the automatic one ? (My first choice) - Should the named character formatting attribut overwrite the automatic one ? (My second choice) Regards Maxime de Roucy PS : I think I already ask but nobody answers, furthermore I don't find my previous mail -- Maxime de Roucy Groupe LINAGORA - OSSA 80 rue Roque de Fillol 92800 PUTEAUX Tel. : 0 810 251 251 signature.asc Description: This is a digitally signed message part ___ Libreoffice-ux-advise mailing list Libreoffice-ux-advise@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-ux-advise
Re: [Libreoffice] [PATCH] format clipboard
Hello, Following my discussion with Cedric on IRC here is some other explanations on why I chose to remove the nSelectionType == nsSelectionType::SEL_TBL case from the lcl_CreateEmptyItemSet function in formatclipboard.cxx. Without the patch : lcl_CreateEmptyItemSet is called only in the formatclipboard.cxx file, at line 326, 399 and 511. At line 399, the function is called with the nSelectionType parameter equal to nsSelectionType::SEL_TBL. At the other place the function is called with the nSelectionType parameter equal to the output of rWrtShell.GetSelectionType();. rWrtShell is a SwWrtShell. If you look in the SwWrtShell::GetSelectionType function (line 1412 file sw/source/ui/wrtsh/wrtsh1.cxx) you will see that when the program take the only path where the function output can hold an nsSelectionType::SEL_TBL attribut, the shorter function output is equal to : GetCntType() | nsSelectionType::SEL_TBL. Then if you look in the SwEditShell::GetCntType function (sw/source/core/edit/edws.cxx line 163) you will see this function HAVE TO return something different from 0 : OSL_ASSERT( nRet ); Then we can say that the rWrtShell.GetSelectionType(); instruction can't return exactly nsSelectionType::SEL_TBL. So the nSelectionType == nsSelectionType::SEL_TBL part of the lcl_CreateEmptyItemSet function is only call by the lcl_CreateEmptyItemSet( nsSelectionType::SEL_TBL, rPool ); instruction (line 399). I think the nSelectionType == nsSelectionType::SEL_TBL part of the lcl_CreateEmptyItemSet function is confusing so I moved it line 399 (just to recall : line 399, the only place where it is currently executed). I hope this clarified a bit my choice to remove the nSelectionType == nsSelectionType::SEL_TBL part from the lcl_CreateEmptyItemSet function. Regards Maxime de Roucy -- Maxime de Roucy Groupe LINAGORA - OSSA 80 rue Roque de Fillol 92800 PUTEAUX Tel. : 0 810 251 251 Le vendredi 16 mars 2012 à 10:16 +0100, Maxime de Roucy a écrit : Here a copy of the mail I send to Cedric Bosdonnat… forgot to add the list as Cc:. Hello Thanks you for asking me… When you select a cell in Writer the selection type is a mix of nsSelectionType::SEL_TBL_CELLS, nsSelectionType::SEL_TBL and nsSelectionType::SEL_TXT. So when the lcl_CreateEmptyItemSet function is called directly with the nSelectionType (from rWrtShell.GetSelectionType()) the if statement nSelectionType == nsSelectionType::SEL_TBL is false. So in the SwFormatClipboard::Copy function there is another statement : __ if( nSelectionType nsSelectionType::SEL_TBL_CELLS )//only copy table attributes if really cells are selected (not only text in tables) { m_pTableItemSet = lcl_CreateEmptyItemSet( nsSelectionType::SEL_TBL, rPool ); lcl_getTableAttributes( *m_pTableItemSet, rWrtShell ); } __ That call lcl_CreateEmptyItemSet with just nsSelectionType::SEL_TBL if the real selection type contain nsSelectionType::SEL_TBL_CELLS. I found this way of doing a bit confusing and as tables parameters are handle separately in the whole format paintbrush code I thought that replacing : __ m_pTableItemSet = lcl_CreateEmptyItemSet( nsSelectionType::SEL_TBL, rPool ); __ by : __ m_pTableItemSet = new SfxItemSet(rPool, SID_ATTR_BORDER_INNER, SID_ATTR_BORDER_SHADOW, //SID_ATTR_BORDER_OUTER is inbetween RES_BACKGROUND, RES_SHADOW, //RES_BOX is inbetween SID_ATTR_BRUSH_ROW, SID_ATTR_BRUSH_TABLE, RES_BREAK, RES_BREAK, RES_PAGEDESC, RES_PAGEDESC, RES_LAYOUT_SPLIT, RES_LAYOUT_SPLIT, RES_ROW_SPLIT, RES_ROW_SPLIT, RES_KEEP, RES_KEEP, RES_FRAMEDIR, RES_FRAMEDIR, FN_PARAM_TABLE_HEADLINE, FN_PARAM_TABLE_HEADLINE, FN_TABLE_BOX_TEXTORIENTATION, FN_TABLE_BOX_TEXTORIENTATION, FN_TABLE_SET_VERT_ALIGN, FN_TABLE_SET_VERT_ALIGN, 0); __ was not irrelevant. After this replacement was made there where no reasons keeping the nSelectionType == nsSelectionType::SEL_TBL block in the lcl_CreateEmptyItemSet function. I hope I answered your question. BEWARE : this patch need the first patch 0001-add-GetCurParAttr-and-GetPaMParAttr-in-SwEditShell from my preview mail http://lists.freedesktop.org/archives/libreoffice/2012-March/028157.html
Re: [Libreoffice-ux-advise] [Libreoffice] [PATCH] modify default behaviour of the format paintbrush
Hello, Is this change based on the idea, that people who use the paintbrush are not that much looking at styles, and thus that copying those styles might do more harm then good for them? I was showing a modification I made to the format paintbrush in a preview patch to a co-worker who work with LO but don't know it that much. And he was very surprised that the tool change the format of the whole paragraph. For him, by default the format paintbrush should just change the selected characters (whether using named or auto-style format). That's why I thought of changing the default behaviour. Currently : By default it past the characters and paragraphs formatting ; if Ctrl is hold, it only past the character formatting ; if Ctrl and Shift are hold, it only past the paragraph formatting. With the patch : By default it only past the characters formatting ; if Ctrl is hold, it past the characters and paragraphs formatting ; if Ctrl and Shift are hold, it only past the paragraph formatting. Regards -- Maxime de Roucy Groupe LINAGORA - OSSA 80 rue Roque de Fillol 92800 PUTEAUX Tel. : 0 810 251 251 Le vendredi 16 mars 2012 à 16:13 +0100, Cor Nouws a écrit : Hi Maxime, Maxime de Roucy wrote (14-03-12 18:38) Two new patchs that modify the default behaviour of the format paintbrush. 0001-Format-paintbrush-default-behaviour.patch To apply to the core repository. 0001-Change-format-paintbrush.patch To apply to the help repository. By default the paintbrush doesn't copy the paragraph formatting ; if Ctrl is hold, paragraph and character formatting are copied ; if Ctrl and Shift are hold, only the paragraph formatting is copied. I tried the paintbrush right now, and see that it does copy the paragraph style too (I vaguely remember that from a presentation at the first OOoCon I attended, 2004 :-) ) Is this change based on the idea, that people who use the paintbrush are not that much looking at styles, and thus that copying those styles might do more harm then good for them? Regards, signature.asc Description: This is a digitally signed message part ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice-ux-advise] [Libreoffice] [PATCH] modify default behaviour of the format paintbrush
Hello, Is this change based on the idea, that people who use the paintbrush are not that much looking at styles, and thus that copying those styles might do more harm then good for them? I was showing a modification I made to the format paintbrush in a preview patch to a co-worker who work with LO but don't know it that much. And he was very surprised that the tool change the format of the whole paragraph. For him, by default the format paintbrush should just change the selected characters (whether using named or auto-style format). That's why I thought of changing the default behaviour. Currently : By default it past the characters and paragraphs formatting ; if Ctrl is hold, it only past the character formatting ; if Ctrl and Shift are hold, it only past the paragraph formatting. With the patch : By default it only past the characters formatting ; if Ctrl is hold, it past the characters and paragraphs formatting ; if Ctrl and Shift are hold, it only past the paragraph formatting. Regards -- Maxime de Roucy Groupe LINAGORA - OSSA 80 rue Roque de Fillol 92800 PUTEAUX Tel. : 0 810 251 251 Le vendredi 16 mars 2012 à 16:13 +0100, Cor Nouws a écrit : Hi Maxime, Maxime de Roucy wrote (14-03-12 18:38) Two new patchs that modify the default behaviour of the format paintbrush. 0001-Format-paintbrush-default-behaviour.patch To apply to the core repository. 0001-Change-format-paintbrush.patch To apply to the help repository. By default the paintbrush doesn't copy the paragraph formatting ; if Ctrl is hold, paragraph and character formatting are copied ; if Ctrl and Shift are hold, only the paragraph formatting is copied. I tried the paintbrush right now, and see that it does copy the paragraph style too (I vaguely remember that from a presentation at the first OOoCon I attended, 2004 :-) ) Is this change based on the idea, that people who use the paintbrush are not that much looking at styles, and thus that copying those styles might do more harm then good for them? Regards, signature.asc Description: This is a digitally signed message part ___ Libreoffice-ux-advise mailing list Libreoffice-ux-advise@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-ux-advise
Re: [Libreoffice] [PATCH] format clipboard
Here a copy of the mail I send to Cedric Bosdonnat… forgot to add the list as Cc:. Hello Thanks you for asking me… When you select a cell in Writer the selection type is a mix of nsSelectionType::SEL_TBL_CELLS, nsSelectionType::SEL_TBL and nsSelectionType::SEL_TXT. So when the lcl_CreateEmptyItemSet function is called directly with the nSelectionType (from rWrtShell.GetSelectionType()) the if statement nSelectionType == nsSelectionType::SEL_TBL is false. So in the SwFormatClipboard::Copy function there is another statement : if( nSelectionType nsSelectionType::SEL_TBL_CELLS )//only copy table attributes if really cells are selected (not only text in tables) { m_pTableItemSet = lcl_CreateEmptyItemSet( nsSelectionType::SEL_TBL, rPool ); lcl_getTableAttributes( *m_pTableItemSet, rWrtShell ); } That call lcl_CreateEmptyItemSet with just nsSelectionType::SEL_TBL if the real selection type contain nsSelectionType::SEL_TBL_CELLS. I found this way of doing a bit confusing and as tables parameters are handle separately in the whole format paintbrush code I thought that replacing : m_pTableItemSet = lcl_CreateEmptyItemSet( nsSelectionType::SEL_TBL, rPool ); by : m_pTableItemSet = new SfxItemSet(rPool, SID_ATTR_BORDER_INNER, SID_ATTR_BORDER_SHADOW, //SID_ATTR_BORDER_OUTER is inbetween RES_BACKGROUND, RES_SHADOW, //RES_BOX is inbetween SID_ATTR_BRUSH_ROW, SID_ATTR_BRUSH_TABLE, RES_BREAK, RES_BREAK, RES_PAGEDESC, RES_PAGEDESC, RES_LAYOUT_SPLIT, RES_LAYOUT_SPLIT, RES_ROW_SPLIT, RES_ROW_SPLIT, RES_KEEP, RES_KEEP, RES_FRAMEDIR, RES_FRAMEDIR, FN_PARAM_TABLE_HEADLINE, FN_PARAM_TABLE_HEADLINE, FN_TABLE_BOX_TEXTORIENTATION, FN_TABLE_BOX_TEXTORIENTATION, FN_TABLE_SET_VERT_ALIGN, FN_TABLE_SET_VERT_ALIGN, 0); was not irrelevant. After this replacement was made there where no reasons keeping the nSelectionType == nsSelectionType::SEL_TBL block in the lcl_CreateEmptyItemSet function. I hope I answered your question. BEWARE : this patch need the first patch 0001-add-GetCurParAttr-and-GetPaMParAttr-in-SwEditShell from my preview mail http://lists.freedesktop.org/archives/libreoffice/2012-March/028157.html Regards Maxime de Roucy -- Maxime de Roucy Groupe LINAGORA - OSSA 80 rue Roque de Fillol 92800 PUTEAUX Tel. : 0 810 251 251 Le jeudi 15 mars 2012 à 17:06 +0100, Cedric Bosdonnat a écrit : Hi Maxime, On Wed, 2012-03-14 at 16:50 +0100, Maxime de Roucy wrote: Here is some new patchs on the format clipboard. The first just add some comment in the formatclipboard.hxx file. The second one depend on modifications I made in the previous patch 0001-add-GetCurParAttr-and-GetPaMParAttr-in-SwEditShell.patch which is itself dependant of the patch 0004-SwEditShell-use-of-the-STL-swap-function.patch which is waiting for moderator approval to be published in the mailing list. I pushed the first patch to the master branch... but there is something weird in the second patch. Why did you remove the case where nSelectionType is a table selection? I'll push the second patch once that question is clarified. -- Cedric signature.asc Description: This is a digitally signed message part ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
[Libreoffice] [PATCH] export to xls warning ; work in SwEditShell::GetPaMTxtFmtColl
Hello 0001-add-SCWARN_EXPORT_MAXTAB-and-SCWARN_EXPORT_MAXCOL.patch Add warning in the xls export filter in order to display different messages when the number of column, row or tab are too high. 0002-rewrite-and-comment-SwEditShell-GetPaMTxtFmtColl.patch comment, doxygen description, and rewrite of SwEditShell::GetPaMTxtFmtColl and SwEditShell::GetCurTxtFmtColl. Doesn't change the behavior of the functions. 0003-getMaxLookup-in-SwEditShell-GetPaMTxtFmtColl.patch Handle getMaxLookup in SwEditShell::GetPaMTxtFmtColl. getMaxLookup become the maximum number of nodes to inspect. The function stop when it has inspect getMaxLookup nodes instead of stopping (approximately) when it as to inspect more than getMaxLookup nodes. 0004-SwEditShell-use-of-the-STL-swap-function.patch Us of the swap STL function in the file sw/source/core/edit/edattr.cxx Feel free to comment my code ! Regards -- Maxime de Roucy Groupe LINAGORA - OSSA 80 rue Roque de Fillol 92800 PUTEAUX Tel. : 0 810 251 251 From 17a07d3c910a812f2dd0537d3a1e454ae9f06881 Mon Sep 17 00:00:00 2001 From: Maxime de Roucy mdero...@linagora.com Date: Thu, 8 Mar 2012 14:49:58 +0100 Subject: [PATCH 1/4] add SCWARN_EXPORT_MAXTAB and SCWARN_EXPORT_MAXCOL Create separate warnings when the maximum number of row, columns or sheets is reach in the export filter to xls forma. --- sc/inc/scerrors.hxx |4 +++- sc/source/filter/excel/expop2.cxx |7 +-- sc/source/ui/src/scerrors.src |8 3 files changed, 16 insertions(+), 3 deletions(-) diff --git a/sc/inc/scerrors.hxx b/sc/inc/scerrors.hxx index 735f7ba..fc6b9cb 100644 --- a/sc/inc/scerrors.hxx +++ b/sc/inc/scerrors.hxx @@ -68,7 +68,9 @@ #define SCWARN_EXPORT_NONCONVERTIBLE_CHARS ( 1 | ERRCODE_CLASS_EXPORT | ERRCODE_WARNING_MASK | ERRCODE_AREA_SC ) #define SCWARN_EXPORT_ASCII ( 2 | ERRCODE_CLASS_EXPORT | ERRCODE_WARNING_MASK | ERRCODE_AREA_SC ) #define SCWARN_EXPORT_MAXROW( 3 | ERRCODE_CLASS_EXPORT | ERRCODE_WARNING_MASK | ERRCODE_AREA_SC ) -#define SCWARN_EXPORT_DATALOST ( 4 | ERRCODE_CLASS_EXPORT | ERRCODE_WARNING_MASK | ERRCODE_AREA_SC ) +#define SCWARN_EXPORT_MAXCOL( 4 | ERRCODE_CLASS_EXPORT | ERRCODE_WARNING_MASK | ERRCODE_AREA_SC ) +#define SCWARN_EXPORT_MAXTAB( 5 | ERRCODE_CLASS_EXPORT | ERRCODE_WARNING_MASK | ERRCODE_AREA_SC ) +#define SCWARN_EXPORT_DATALOST ( 6 | ERRCODE_CLASS_EXPORT | ERRCODE_WARNING_MASK | ERRCODE_AREA_SC ) // ERRCODE_CLASS_GENERAL #define SCWARN_CORE_HARD_RECALC ( 1 | ERRCODE_CLASS_GENERAL | ERRCODE_WARNING_MASK | ERRCODE_AREA_SC ) diff --git a/sc/source/filter/excel/expop2.cxx b/sc/source/filter/excel/expop2.cxx index a8a4ce1..ab31d97 100644 --- a/sc/source/filter/excel/expop2.cxx +++ b/sc/source/filter/excel/expop2.cxx @@ -124,10 +124,13 @@ FltError ExportBiff5::Write() sfx2::SaveOlePropertySet(xDocProps, xRootStrg ); } -//! TODO: separate warnings for columns and sheets const XclExpAddressConverter rAddrConv = GetAddressConverter(); -if( rAddrConv.IsColTruncated() || rAddrConv.IsRowTruncated() || rAddrConv.IsTabTruncated() ) +if( rAddrConv.IsRowTruncated() ) return SCWARN_EXPORT_MAXROW; +if( rAddrConv.IsColTruncated() ) +return SCWARN_EXPORT_MAXCOL; +if( rAddrConv.IsTabTruncated() ) +return SCWARN_EXPORT_MAXTAB; return eERR_OK; } diff --git a/sc/source/ui/src/scerrors.src b/sc/source/ui/src/scerrors.src index 2a2e2ad..f77dcf0 100644 --- a/sc/source/ui/src/scerrors.src +++ b/sc/source/ui/src/scerrors.src @@ -150,6 +150,14 @@ Resource RID_ERRHDLSC { Text [ en-US ] = The document contains more rows than supported in the selected format.\nAdditional rows were not saved. ; }; +String SCWARN_EXPORT_MAXCOL ERRCODE_RES_MASK +{ +Text [ en-US ] = The document contains more columns than supported in the selected format.\nAdditional columns were not saved. ; +}; +String SCWARN_EXPORT_MAXTAB ERRCODE_RES_MASK +{ +Text [ en-US ] = The document contains more sheets than supported in the selected format.\nAdditional sheets were not saved. ; +}; String SCWARN_IMPORT_INFOLOST ERRCODE_RES_MASK { Text [ en-US ] = The document contains information not recognized by this program version.\nResaving the document will delete this information! ; -- 1.7.9.4 From 31b7640f7137964916062e64fca18869a18f5118 Mon Sep 17 00:00:00 2001 From: Maxime de Roucy mdero...@linagora.com Date: Tue, 13 Mar 2012 16:20:59 +0100 Subject: [PATCH 2/4] rewrite and comment SwEditShell::GetPaMTxtFmtColl Classe SwEditShell. Add some doxygen description for GetCurTxtFmtColl and GetPaMTxtFmtColl. Rewrite of GetPaMTxtFmtColl in order to comment and simplify the code. --- sw/inc/editsh.hxx | 18 ++ sw/source/core/edit/edattr.cxx | 38 -- 2 files changed, 38 insertions(+), 18 deletions(-) diff --git a/sw
[Libreoffice] License statement: Linagora
Hello As asked by Michael, here is a quick statement about the Linagora's contributions to the LO project : All contributions past and present made to LibreOffice from Linagora are available under the terms the MPL / LGPLv3+. Until further notice, future contributions made to LibreOffice from Linagora are available under the terms the MPL / LGPLv3+. Regards, Maxime de Roucy -- Maxime de Roucy Groupe LINAGORA - OSSA 80 rue Roque de Fillol 92800 PUTEAUX Tel. : 0 810 251 251 Le mardi 13 mars 2012 à 18:24 +, Michael Meeks a écrit : Hi Maxime, On Tue, 2012-03-13 at 18:32 +0100, Maxime de Roucy wrote: I made a small Windows (XP) program that inject dll in LibreOffice First - thanks for the patch ! :-) hopefully the list will deal with / review that in due course. Secondly - I'm working through the license audit currently so we can move to MPL/LGPLv3+ and integrate code from Apache ... To do that, I really need a quick statement from Linagora about the license of your go-oo and LibreOffice contributions which should be MPL/LGPLv3+ - can you help me with that ? I'd love to get Linagora linked into here: http://wiki.documentfoundation.org/Development/Developers#Companies Thanks ! :-) Michael. signature.asc Description: This is a digitally signed message part ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
[Libreoffice] [PATCH] add function in SwEditShell and fix some comments
Hello Here is 2 new patch : 0001-add-GetCurParAttr-and-GetPaMParAttr-in-SwEditShell.patch Create the function GetCurParAttr and GetPaMParAttr in the SwEditShell class. The function will be used in future patchs (on the format paintbrush) that I need to format correctly. 0002-fix-of-comments.patch I wrote wrong comment in my preview patch (0002-rewrite-and-comment-SwEditShell-GetPaMTxtFmtColl.patch 31b7640f7137964916062e64fca18869a18f5118) which is waiting for moderator approval to be post on the mailing list. This patch fix the wrong comments. Regards Maxime de Roucy -- Maxime de Roucy Groupe LINAGORA - OSSA 80 rue Roque de Fillol 92800 PUTEAUX Tel. : 0 810 251 251 From dc676cade8dd096e35582a79c25c02ca3263123f Mon Sep 17 00:00:00 2001 From: Maxime de Roucy mdero...@linagora.com Date: Wed, 14 Mar 2012 12:22:30 +0100 Subject: [PATCH 1/2] add GetCurParAttr and GetPaMParAttr in SwEditShell GetCurParAttr : Get the paragraph format attribute(s) of the current selection. GetPaMParAttr : Get the paragraph format attribute(s) of the selection(s) described by a SwPaM. The advantage of these methods is that the take the named and automatic format attributes. --- sw/inc/editsh.hxx | 28 +++ sw/source/core/edit/edattr.cxx | 59 +++- 2 files changed, 86 insertions(+), 1 deletion(-) diff --git a/sw/inc/editsh.hxx b/sw/inc/editsh.hxx index a160b6e..392460e 100644 --- a/sw/inc/editsh.hxx +++ b/sw/inc/editsh.hxx @@ -253,6 +253,34 @@ public: void SetAttr( const SfxPoolItem, sal_uInt16 nFlags = 0 ); void SetAttr( const SfxItemSet, sal_uInt16 nFlags = 0, SwPaM* pCrsr = NULL ); +/** + * Get the paragraph format attribute(s) of the current selection. + * + * @see GetPaMParAttr() + * + * @param rSet + * output parameter - the SfxItemSet where the automatic paragraph format attribut(s) will be store. + * The attributes aren't invalidated or cleared if the function reach the getMaxLookup limite. + * + * @return true if the function inspect all the nodes point by the pPaM parameter, + * false if the function reach the limit of getMaxLookup number of nodes inspected. + */ +sal_Bool GetCurParAttr( SfxItemSet rSet ) const; +/** + * Get the paragraph format attribute(s) of the selection(s) described by a SwPaM. + * + * @param pPaM + * input parameter - the selection where to look for the paragraph format. + * + * @param rSet + * output parameter - the SfxItemSet where the automatic paragraph format attribut(s) will be store. + * The attributes aren't invalidated or cleared if the function reach the getMaxLookup limite. + * + * @return true if the function inspect all the nodes point by the pPaM parameter, + * false if the function reach the limit of getMaxLookup number of nodes inspected. + */ +sal_Bool GetPaMParAttr( SwPaM* pPaM, SfxItemSet rSet ) const; + // Set attribute as new default attribute in document. void SetDefault( const SfxPoolItem ); diff --git a/sw/source/core/edit/edattr.cxx b/sw/source/core/edit/edattr.cxx index df6b4cd..a604cbc 100644 --- a/sw/source/core/edit/edattr.cxx +++ b/sw/source/core/edit/edattr.cxx @@ -176,7 +176,64 @@ sal_Bool SwEditShell::GetCurAttr( SfxItemSet rSet, return GetPaMAttr( GetCrsr(), rSet, bMergeIndentValuesOfNumRule ); } -SwTxtFmtColl* SwEditShell::GetCurTxtFmtColl( ) const +sal_Bool SwEditShell::GetCurParAttr( SfxItemSet rSet) const +{ +return GetPaMParAttr( GetCrsr(), rSet ); +} + +sal_Bool SwEditShell::GetPaMParAttr( SwPaM* pPaM, SfxItemSet rSet ) const +{ +// number of nodes the function have explore so far +sal_uInt16 numberOfLookup = 0; + +SfxItemSet aSet( *rSet.GetPool(), rSet.GetRanges() ); +SfxItemSet* pSet = rSet; + +SwPaM* pStartPaM = pPaM; +do { // for all the point and mark (selections) + +// get the start and the end node of the current selection +sal_uLong nSttNd = pPaM-GetMark()-nNode.GetIndex(), + nEndNd = pPaM-GetPoint()-nNode.GetIndex(); + +// reverse start and end if there number aren't sorted correctly +if( nSttNd nEndNd ) +std::swap(nSttNd, nEndNd); + +// for all the nodes in the current selection +// get the node (paragraph) attributes +// and merge them in rSet +for( sal_uLong n = nSttNd; n = nEndNd; ++n ) +{ +// get the node +SwNode* pNd = GetDoc()-GetNodes()[ n ]; + +if( pNd-IsTxtNode() ) +{ +// get the node (paragraph) attributes +static_castSwCntntNode*(pNd)-GetAttr(*pSet); + +if( pSet != rSet aSet.Count() ) +{ +rSet.MergeValues( aSet ); +aSet.ClearItem(); +} + +pSet = aSet; +} + +++numberOfLookup
Re: [Libreoffice] [PATCH] add function in SwEditShell and fix some comments
Attention : the patch 0001-add-GetCurParAttr-and-GetPaMParAttr-in-SwEditShell.patch need the preview patch 0004-SwEditShell-use-of-the-STL-swap-function.patch which is currently waiting for moderator approval to be published in the mailing list. -- Maxime de Roucy Groupe LINAGORA - OSSA 80 rue Roque de Fillol 92800 PUTEAUX Tel. : 0 810 251 251 Le mercredi 14 mars 2012 à 12:58 +0100, Maxime de Roucy a écrit : Hello Here is 2 new patch : 0001-add-GetCurParAttr-and-GetPaMParAttr-in-SwEditShell.patch Create the function GetCurParAttr and GetPaMParAttr in the SwEditShell class. The function will be used in future patchs (on the format paintbrush) that I need to format correctly. 0002-fix-of-comments.patch I wrote wrong comment in my preview patch (0002-rewrite-and-comment-SwEditShell-GetPaMTxtFmtColl.patch 31b7640f7137964916062e64fca18869a18f5118) which is waiting for moderator approval to be post on the mailing list. This patch fix the wrong comments. Regards Maxime de Roucy ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice signature.asc Description: This is a digitally signed message part ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
[Libreoffice] [PATCH] format clipboard
Hello Here is some new patchs on the format clipboard. The first just add some comment in the formatclipboard.hxx file. The second one depend on modifications I made in the previous patch 0001-add-GetCurParAttr-and-GetPaMParAttr-in-SwEditShell.patch which is itself dependant of the patch 0004-SwEditShell-use-of-the-STL-swap-function.patch which is waiting for moderator approval to be published in the mailing list. This second patch modify the format paintbrush feature, here is a copy of the commit description : With this patch the format paintbrush differentiate automatic character attributes apply to character than those apply to paragraph. Character attributes applied to paragraph are treat as paragraph format when paragraph format are copied (and so apply to paragraph), and treat as character format when paragraph format are not copied. It also change the behavior of the format paintbrush on restart numbering and restart numbering at attributes. With this patch those attributes are simply copied… as expected. Regards Maxime de Roucy -- Maxime de Roucy Groupe LINAGORA - OSSA 80 rue Roque de Fillol 92800 PUTEAUX Tel. : 0 810 251 251 From 90a80f234f60bd4d5b48cf725f25771fb92975b6 Mon Sep 17 00:00:00 2001 From: Maxime de Roucy mdero...@linagora.com Date: Wed, 14 Mar 2012 15:39:31 +0100 Subject: [PATCH 1/2] Add comments in formatclipboard.hxx --- sw/source/ui/inc/formatclipboard.hxx | 30 ++ 1 file changed, 30 insertions(+) diff --git a/sw/source/ui/inc/formatclipboard.hxx b/sw/source/ui/inc/formatclipboard.hxx index 07891a0..49f47dc 100644 --- a/sw/source/ui/inc/formatclipboard.hxx +++ b/sw/source/ui/inc/formatclipboard.hxx @@ -46,24 +46,54 @@ public: SwFormatClipboard(); ~SwFormatClipboard(); +/** + * Test if the object contain text or paragraphe attribut + */ bool HasContent() const; bool HasContentForThisType( int nSelectionType ) const; bool CanCopyThisType( int nSelectionType ) const; +/** + * Store/Backup the text and paragraph attribut of the current selection. + * + * @param bPersistentCopy + * input parameter - specify if the Paste function will erase the current object. + */ void Copy( SwWrtShell rWrtShell, SfxItemPool rPool, bool bPersistentCopy=false ); + +/** + * Paste the stored text and paragraph attributs on the current selection and current paragraph. + * + * @param bNoCharacterFormats + * Do not past the charactere formats. + * + * @param bNoParagraphFormats + * Do not past the paragraph formats. + */ void Paste( SwWrtShell rWrtShell, SfxStyleSheetBasePool* pPool , bool bNoCharacterFormats=false, bool bNoParagraphFormats=false ); + +/** + * Clear the current text and paragraph attributs stored. + */ void Erase(); private: int m_nSelectionType; + +/** automatic/named character and paragraph attribut set */ SfxItemSet* m_pItemSet; + +/** table attribut set */ SfxItemSet* m_pTableItemSet; +/** name of the character format (if it exist) */ String m_aCharStyle; +/** name of the paragraph format (if it exist) */ String m_aParaStyle; //no frame style because it contains position information +/** specify if the Paste function have to clear the current object */ bool m_bPersistentCopy; }; -- 1.7.9.4 From 0af328d505bbe16bca32ec27b05e8666eaa6075c Mon Sep 17 00:00:00 2001 From: Maxime de Roucy mdero...@linagora.com Date: Wed, 14 Mar 2012 16:07:57 +0100 Subject: [PATCH 2/2] Rewrite of the format paintbrush MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit With this patch the format paintbrush differentiate automatic character attributes apply to character than those apply to paragraph. Character attributes applied to paragraph are treat as paragraph format when paragraph format are copied (and so apply to paragraph), and treat as character format when paragraph format are not copied. It also change the behavior of the format paintbrush on restart numbering and restart numbering at attributes. With this patch those attributes are simply copied… as expected. --- sw/source/ui/inc/formatclipboard.hxx|7 +- sw/source/ui/uiview/formatclipboard.cxx | 270 ++- 2 files changed, 165 insertions(+), 112 deletions(-) diff --git a/sw/source/ui/inc/formatclipboard.hxx b/sw/source/ui/inc/formatclipboard.hxx index 49f47dc..e227622 100644 --- a/sw/source/ui/inc/formatclipboard.hxx +++ b/sw/source/ui/inc/formatclipboard.hxx @@ -81,8 +81,11 @@ public: private: int m_nSelectionType; -/** automatic/named character and paragraph attribut set */ -SfxItemSet* m_pItemSet; +/** automatic/named character attribut set */ +SfxItemSet* m_pItemSet_TxtAttr; +/** automatic/named paragraph
[Libreoffice] [PATCH] modify default behaviour of the format paintbrush
Hello Two new patchs that modify the default behaviour of the format paintbrush. 0001-Format-paintbrush-default-behaviour.patch To apply to the core repository. 0001-Change-format-paintbrush.patch To apply to the help repository. By default the paintbrush doesn't copy the paragraph formatting ; if Ctrl is hold, paragraph and character formatting are copied ; if Ctrl and Shift are hold, only the paragraph formatting is copied. Regards Maxime de Roucy -- Maxime de Roucy Groupe LINAGORA - OSSA 80 rue Roque de Fillol 92800 PUTEAUX Tel. : 0 810 251 251 From a95ca339d7292882f2ee7a841fb08ce3b481852a Mon Sep 17 00:00:00 2001 From: Maxime de Roucy mdero...@linagora.com Date: Wed, 14 Mar 2012 18:26:07 +0100 Subject: [PATCH] Format paintbrush default behaviour Don't copy paragraph formats by default --- sw/source/ui/docvw/edtwin.cxx |7 +-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/sw/source/ui/docvw/edtwin.cxx b/sw/source/ui/docvw/edtwin.cxx index bb2daba..8084596 100644 --- a/sw/source/ui/docvw/edtwin.cxx +++ b/sw/source/ui/docvw/edtwin.cxx @@ -4317,15 +4317,18 @@ void SwEditWin::MouseButtonUp(const MouseEvent rMEvt) SwWrtShell rWrtShell = rView.GetWrtShell(); SfxStyleSheetBasePool* pPool=0; bool bNoCharacterFormats = false; -bool bNoParagraphFormats = false; +bool bNoParagraphFormats = true; { SwDocShell* pDocSh = rView.GetDocShell(); if(pDocSh) pPool = pDocSh-GetStyleSheetPool(); if( (rMEvt.GetModifier()KEY_MOD1) (rMEvt.GetModifier()KEY_SHIFT) ) +{ bNoCharacterFormats = true; +bNoParagraphFormats = false; +} else if( rMEvt.GetModifier() KEY_MOD1 ) -bNoParagraphFormats = true; +bNoParagraphFormats = false; } //execute paste pFormatClipboard-Paste( rWrtShell, pPool, bNoCharacterFormats, bNoParagraphFormats ); -- 1.7.9.4 From eb9c56218da94e67755f0472a41bc636e9723057 Mon Sep 17 00:00:00 2001 From: Maxime de Roucy mdero...@linagora.com Date: Wed, 14 Mar 2012 18:12:41 +0100 Subject: [PATCH] Change format paintbrush Only copy character formatting by default. --- .../source/text/shared/guide/paintbrush.xhp|5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/helpcontent2/source/text/shared/guide/paintbrush.xhp b/helpcontent2/source/text/shared/guide/paintbrush.xhp index fbe064b..c31bc36 100644 --- a/helpcontent2/source/text/shared/guide/paintbrush.xhp +++ b/helpcontent2/source/text/shared/guide/paintbrush.xhp @@ -66,8 +66,7 @@ paragraph xml-lang=en-US id=par_idN1066E role=paragraph l10n=NEWSelect or click the text or object that you want to apply the formatting to./paragraph /listitem /list - paragraph xml-lang=en-US id=par_idN10716 role=tip l10n=NEWTo exclude paragraph formatting, hold down switchinline select=syscaseinline select=MACCommand -/caseinlinedefaultinlineCtrl/defaultinline/switchinline when you click. To exclude character formatting, hold down switchinline select=syscaseinline select=MACCommand + paragraph xml-lang=en-US id=par_idN10716 role=tip l10n=NEWBy default only the character formatting is copied ; to include paragraph formatting, hold down switchinline select=syscaseinline select=MACCommand/caseinlinedefaultinlineCtrl/defaultinline/switchinline when you click. To copy only the paragraph formatting, hold down switchinline select=syscaseinline select=MACCommand /caseinlinedefaultinlineCtrl/defaultinline/switchinline+Shift when you click./paragraph paragraph xml-lang=en-US id=par_idN10671 role=paragraph l10n=NEWThe following table describes the formatting attributes that the emphFormat Paintbrush/emph can copy:/paragraph table id=tbl_id599688 @@ -154,4 +153,4 @@ /table /body -/helpdocument \ No newline at end of file +/helpdocument -- 1.7.9.4 signature.asc Description: This is a digitally signed message part ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
[Libreoffice] Windows ; small program that inject dll in LibreOffice Quickstarter in order to improve component start time
Hello I made a small Windows (XP) program that inject dll in LibreOffice Quickstarter. It inject dll used by Writer and Calc in order to improve the first start of those tools (if they aren't start too late after the dll were injected). On some system it can improve the start time by approximately 50%, on some over system the improvement isn't noticeable. I put the source code on the bug tracker but I have been advised to post about it on this mailing list. So here is the bug : https://bugs.freedesktop.org/show_bug.cgi?id=43188 Regards -- Maxime de Roucy Groupe LINAGORA - OSSA 80 rue Roque de Fillol 92800 PUTEAUX Tel. : 0 810 251 251 signature.asc Description: This is a digitally signed message part ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] Calc : add carriage return via Ctrl+Enter in the Formula bar
Hi Noel Thanks a lot, I will test this as soon as my LibreOffice build end. Le lundi 12 décembre 2011 à 09:31 +, Noel Power a écrit : Hi Maxime, On 09/12/11 15:24, Kohei Yoshida wrote: Hello Maxime, On Fri, 2011-12-09 at 16:12 +0100, Maxime de Roucy wrote: Hello I have been ask to add the possibility to add a carriage return in a cell via Ctrl+Enter in the formula bar (like when I directly edit the cell). I think Noel (CC'ed) either has already implemented that, or is planning to. yes, it should be working now, you should be able to see the latest state of things in both master and 3.5 builds . Either way you should sync with him to see where we are currently. well, feel free to test, improve submit patches etc. ( like Kohei said, I just picked up the gsoc task so I aint any sort of expert ) Noel -- Maxime de Roucy Groupe LINAGORA - OSSA 80 rue Roque de Fillol 92800 PUTEAUX Tel. : 0 810 251 251 signature.asc Description: This is a digitally signed message part ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] Calc : add carriage return via Ctrl+Enter in the Formula bar
Hi I checked with a recent master build on Archlinux and it works perfectly :-). I also checked with the 3.5 beta on Windows XP but the behaviour of Ctrl +Enter changed. Now it switch the auto-wrap mode. I don't know if it's normal or not ... Maxime Le lundi 12 décembre 2011 à 10:46 +0100, Maxime de Roucy a écrit : Hi Noel Thanks a lot, I will test this as soon as my LibreOffice build end. Le lundi 12 décembre 2011 à 09:31 +, Noel Power a écrit : Hi Maxime, On 09/12/11 15:24, Kohei Yoshida wrote: Hello Maxime, On Fri, 2011-12-09 at 16:12 +0100, Maxime de Roucy wrote: Hello I have been ask to add the possibility to add a carriage return in a cell via Ctrl+Enter in the formula bar (like when I directly edit the cell). I think Noel (CC'ed) either has already implemented that, or is planning to. yes, it should be working now, you should be able to see the latest state of things in both master and 3.5 builds . Either way you should sync with him to see where we are currently. well, feel free to test, improve submit patches etc. ( like Kohei said, I just picked up the gsoc task so I aint any sort of expert ) Noel ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice -- Maxime de Roucy Groupe LINAGORA - OSSA 80 rue Roque de Fillol 92800 PUTEAUX Tel. : 0 810 251 251 signature.asc Description: This is a digitally signed message part ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
[Libreoffice] Calc : add carriage return via Ctrl+Enter in the Formula bar
Hello I have been ask to add the possibility to add a carriage return in a cell via Ctrl+Enter in the formula bar (like when I directly edit the cell). # Currently, when I edit a cell (directly, not via the formula bar) and type test(Ctrl+Enter)test I get this cell : ___ |test | |test___| When I edit a cell via the formula bar and try to type the same thing I leave the formula when I type Ctrl+Enter. What I have been asked : Same behavior in the formula bar and the cell. When I edit a cell via the formula bar and type test(Ctrl+Enter)test I get this cell : ___ |test | |test___| # Before starting to code or even look if it's possible and how many time it will take (I am a beginner at LibreOffice development) I would like to know if this feature have chance to be accepted ? Thanks in advance -- Maxime de Roucy Groupe LINAGORA - OSSA 80 rue Roque de Fillol 92800 PUTEAUX Tel. : 0 810 251 251 signature.asc Description: This is a digitally signed message part ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] Bug 36815 : Advanced printing capabilities of comments in Writer [PRINTING]
Hello I am sorry but I will not be able to code on libreoffice for the moment. I will recontact you as soon as I have some free time. Sorry Maxime Le jeudi 01 décembre 2011 à 13:48 +0100, Maxime de Roucy a écrit : Hello Can you resource that ? I talk to my manager and he is OK to let me work on that (not a full time work unfortunately). You can join me on jabber/XMPP at mdero...@linagora.com , or on freenode in #linagora and #libreoffice-dev I will start by following the code with gdb. Thanks Maxime Le mercredi 30 novembre 2011 à 15:15 +, Michael Meeks a écrit : On Wed, 2011-11-30 at 15:59 +0100, Maxime de Roucy wrote: I would like to know if someone (is working|has planed to work) on this bug ? Currently no-one is. But of course we'd love to help you out with some code pointers if you can put some time into the problem. We don't estimate that it is impossibly difficult: after all the rendering is already done, but there is some shrinking and fiddling required to get it rendered to a page. Can you resource that ? Thanks, Michael. ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice -- Maxime de Roucy Groupe LINAGORA - OSSA 80 rue Roque de Fillol 92800 PUTEAUX Tel. : 0 810 251 251 signature.asc Description: This is a digitally signed message part ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] Bug 36815 : Advanced printing capabilities of comments in Writer [PRINTING]
Hello Can you resource that ? I talk to my manager and he is OK to let me work on that (not a full time work unfortunately). You can join me on jabber/XMPP at mdero...@linagora.com , or on freenode in #linagora and #libreoffice-dev I will start by following the code with gdb. Thanks Maxime Le mercredi 30 novembre 2011 à 15:15 +, Michael Meeks a écrit : On Wed, 2011-11-30 at 15:59 +0100, Maxime de Roucy wrote: I would like to know if someone (is working|has planed to work) on this bug ? Currently no-one is. But of course we'd love to help you out with some code pointers if you can put some time into the problem. We don't estimate that it is impossibly difficult: after all the rendering is already done, but there is some shrinking and fiddling required to get it rendered to a page. Can you resource that ? Thanks, Michael. -- Maxime de Roucy Groupe LINAGORA - OSSA 80 rue Roque de Fillol 92800 PUTEAUX Tel. : 0 810 251 251 signature.asc Description: This is a digitally signed message part ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
[Libreoffice] Bug 36815 : Advanced printing capabilities of comments in Writer [PRINTING]
Hello I would like to know if someone (is working|has planed to work) on this bug ? Thank you in advance. -- Maxime de Roucy Groupe LINAGORA - OSSA 80 rue Roque de Fillol 92800 PUTEAUX Tel. : 0 810 251 251 signature.asc Description: This is a digitally signed message part ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice-ux-advise] Modify the format paintbrush behaviour
Hello Le jeudi 24 novembre 2011 à 21:18 +0100, Christoph Noack a écrit : Hi Maxime, all! Wow, you ask somebody who never was in favor of having so many different transfer the formatting-functionality in LibreOffice / OOo ;-) Am Donnerstag, den 24.11.2011, 14:59 +0100 schrieb Maxime de Roucy: Hello I am the author of https://bugs.freedesktop.org/show_bug.cgi?id=43067 For me the format paintbrush function should copy and paste the exact format of text and paragraph. The selected text where the format is apply should look exactly like the text where the format has been copied. Do you agree ? So, I've read parts of the spec, looked at the LibO issue and the OOo issue. So if I get it right, you ask whether the hard formatting from the source object should replace any hard formatting of the target object? Today, we seem only to add the hard formatting to the target. What do you mean by hard formatting ? Today we ADD text and paragraph formatting from the source object to the text and paragraph target (AFAIK). What I propose is a second format paintbrush button (I don't know how it should be named) that would REPLACE text and paragraph formatting of the text target and paragraph target. Right? If yes, then I agree with your point-of-view - although we do have lots of user who might be used to the given kind of behavior. Is there any step to follow before I start to code the second format paintbrush. Cause I think your agreement isn't enough, right ? And now my *personal* point-of-view: There shouldn't be a format paintbrush, but the copy-and-paste functionality might be used as well to copy styles / formatting. For my part I think format paintbrush button is as good as copy-and-paste (ctrl-C ctrl-V) solution. -- Maxime de Roucy Groupe LINAGORA - OSSA 80 rue Roque de Fillol 92800 PUTEAUX Tel. : 0 810 251 251 signature.asc Description: This is a digitally signed message part ___ Libreoffice-ux-advise mailing list Libreoffice-ux-advise@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-ux-advise
Re: [Libreoffice-ux-advise] Modify the format paintbrush behaviour
Le jeudi 24 novembre 2011 à 19:14 +0200, Lior Kaplan a écrit : I've raised the issue during the last developer conference. I'm attaching a file to show the problem. Your file perfectly describe the problem ; Thanks. From comment 9 of bug 43067 it seams developers want to keep the format paintbrush function as it is. What do you think about the possibility of adding another format paintbrush button that would erase the current formatting attribute before applying the new ones ? If you agree I think I would be able to code it (I will need some help as I am new at libreoffice development but I can do it). On Thu, Nov 24, 2011 at 3:59 PM, Maxime de Roucy mdero...@linagora.com wrote: Hello I am the author of https://bugs.freedesktop.org/show_bug.cgi?id=43067 For me the format paintbrush function should copy and paste the exact format of text and paragraph. The selected text where the format is apply should look exactly like the text where the format has been copied. Do you agree ? -- Maxime de Roucy Groupe LINAGORA - OSSA 80 rue Roque de Fillol 92800 PUTEAUX Tel. : 0 810 251 251 ___ Libreoffice-ux-advise mailing list Libreoffice-ux-advise@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-ux-advise -- Maxime de Roucy Groupe LINAGORA - OSSA 80 rue Roque de Fillol 92800 PUTEAUX Tel. : 0 810 251 251 signature.asc Description: This is a digitally signed message part ___ Libreoffice-ux-advise mailing list Libreoffice-ux-advise@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-ux-advise
[Libreoffice] Need some informations on format attributes
Hello I am the author of the bug number 43067 ( https://bugs.freedesktop.org/show_bug.cgi?id=43067 ). I am trying to solve that bug. I tried to insert rWrtShell.ResetAttr(); just before the rWrtShell.SetAttr(*pTemplateItemSet); line. It works but only when I just apply text formatting (hold Ctrl when you select the text to format). I would like to know how to differentiate formatting attributes that come from style:family=paragraph and those that come from style:family=text. For example, in the document attached, I would like to know that the color attribute comes from P1 (a paragraph attribute set) and the font-weight attribute comes from T1 (a text attribute set). Thanks in advance. -- Maxime de Roucy Groupe LINAGORA - OSSA 80 rue Roque de Fillol 92800 PUTEAUX Tel. : 0 810 251 251 test.odt Description: application/vnd.oasis.opendocument.text content.xml Description: XML document signature.asc Description: This is a digitally signed message part ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] need some explaination on formatclipboard.[hc]xx
Hello Le jeudi 17 novembre 2011 à 09:31 +0100, Cedric Bosdonnat a écrit : An SfxItemSet is a set of properties. This is used to store all the formatting properties all over LibreOffice. You can find a gdb function to see what is inside an SfxItemSet here (dump_pSfxItemSet): http://cgit.freedesktop.org/libreoffice/build/tree/scratch/writer/gdbinit-cbosdo I hope this helps, Thanks a lot for your help ! I found the bug on the content.xml file (problem with style:text-properties in style of paragraph family that aren't well handle) I will try to patch the code, but for the moment I will fill a bug report. Thank you again -- Maxime de Roucy Groupe LINAGORA - OSSA 80 rue Roque de Fillol 92800 PUTEAUX Tel. : 0 810 251 251 signature.asc Description: This is a digitally signed message part ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
[Libreoffice] need some explaination on formatclipboard.[hc]xx
Hello I would like to understand how writer format paintbrush. I think it bug on some case and I would like to write a patch, but I am new at libreoffice developpement. I managed to locate via gdb the format paintbrush classe in formatclipboard.hxx. I understand basically how it work but it would be easier if someone could explain me what is the SfxItemSet : m_pItemSet and m_pTableItemSet. Thank you in advance -- Maxime de Roucy Groupe LINAGORA - OSSA 80 rue Roque de Fillol 92800 PUTEAUX Tel. : 0 810 251 251 signature.asc Description: This is a digitally signed message part ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] [PATCH] make STR_MERGE_NOTEMPTY more understandable
Le mercredi 09 novembre 2011 à 15:15 -0500, Kohei Yoshida a écrit : On Wed, 2011-11-09 at 18:40 +0100, Maxime de Roucy wrote: Summary : Isn't Should the contents of all cells be concatenated and moved into the merged cell? better ? I like the following better: Do you want to merge the contents of the selected cells into one cell? Clicking 'No' will only retain the content of the upper-left cell. I like it. The merge word could be changed to concatenate which is more precise ... but for me both are OK. The end of the sentence into one cell could be removed since it a bit obvious. Do you want to (merge or concatenate) the contents of the selected cells (into one cell or nothing) ? Clicking 'No' will only retain the content of the upper-left cell. What do you think ? -- Maxime de Roucy Groupe LINAGORA - OSSA 80 rue Roque de Fillol 92800 PUTEAUX Tel. : 0 810 251 251 signature.asc Description: This is a digitally signed message part ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] [PATCH] make STR_MERGE_NOTEMPTY more understandable
I agree with the wording of the question, but will only retain to me sounds as if the content of other cells would be lost, which isn't the case, it's just not displayed and hidden in the merged cells. We also should avoid terms like upper-left, as in a right-to-left environment it would be the top right cell instead. The content remains in the hidden cells and can still be used in formulas. That is a used feature, when you will show a different content to the user than you need for calculation. I didn't know that.. sorry, now I understand. Then what do you think about : Should the contents of all cells be concatenated and moved into the first cell ? When clicking 'No' the contents of the hidden cells will remains and can still be used in formulas. -- Maxime de Roucy Groupe LINAGORA - OSSA 80 rue Roque de Fillol 92800 PUTEAUX Tel. : 0 810 251 251 signature.asc Description: This is a digitally signed message part ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
[Libreoffice] [PATCH] make STR_MERGE_NOTEMPTY more understandable
Hello I think the STR_MERGE_NOTEMPTY (in sc/source/ui/src/globstr.src ; used in Calc when merging cells) is not very understandable for common users : Should the contents of the hidden cells be moved into the first cell? I think Would you like to merge the contents of all cells? would be better. This is my first contribution to libreoffice, feel free to tell me if I did something wrong. Thank you in advance. -- Maxime de Roucy Groupe LINAGORA - OSSA 80 rue Roque de Fillol 92800 PUTEAUX Tel. : 0 810 251 251 From 4d16dac1ec999a458692336f936adf3959d93f82 Mon Sep 17 00:00:00 2001 From: Maxime de Roucy maxime.dero...@gmail.com Date: Mon, 7 Nov 2011 10:55:08 +0100 Subject: [PATCH] Make STR_MERGE_NOTEMPTY more understandable Change of the STR_MERGE_NOTEMPTY in sc/source/ui/src/globstr.src in order to make the merge cells question clearer. --- sc/source/ui/src/globstr.src |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/sc/source/ui/src/globstr.src b/sc/source/ui/src/globstr.src index 9a1a42f..7f6f874 100644 --- a/sc/source/ui/src/globstr.src +++ b/sc/source/ui/src/globstr.src @@ -935,7 +935,7 @@ Resource RID_GLOBSTR }; String STR_MERGE_NOTEMPTY { -Text [ en-US ] = Should the contents of the hidden cells be moved into the first cell? ; +Text [ en-US ] = Would you like to merge the contents of all cells?; }; String STR_CELL_FILTER { -- 1.7.7.2 signature.asc Description: This is a digitally signed message part ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice