[Libreoffice-commits] core.git: Changes to 'refs/changes/46/8146/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/8146/6'
___ 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/78/8078/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/46/8146/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/8146/7'
___ 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/78/8078/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/8146/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/46/8146/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/55/8155/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/55/8155/1'
___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
Re: Testing/Working on PyUNO?
I'm sorry to have ignited a discussion for which I wasn't looking. I clearly don't have the authority to weigh in given my (lack of) meritocratic wealth in the LibO community, so let me keep this simple: I'm truly just trying to find an agreeable avenue for hacking on LibO given my use cases and time. In the hopes that some of this discussion is fueled by a misunderstanding of my intentions, let me apologize below: At 11:19am -0500 Wed, 19 Feb 2014, Kohei Yoshida wrote: On Wed, 2014-02-19 at 16:51 +0100, Bjoern Michaelsen wrote: Its still better than a bug without a reproduction scenario. So consider a failed Python test a mere bug with a good reproduction scenario for now. But that's not what we are talking about here. Kevin insists to write Python test to test core functionality, which is already covered in core test. Gosh, I'm sorry that's how I came across. As I said over IRC, I recognize that I don't get it. I'm trying to. I patently do _not_ insist on anything in this area, as I recognize I'm not a maintainer, nor do I have the requisite internal knowledge of LibO/Calc. I am, however, trying to find a way to strengthen what I perceive to be an area of weakness for LibO, and one that has potential for my use cases. Namely, Python bindings to Calc. Perhaps there's no fit here right now, and that's okay, too. Clearly, were I to engage here, I'd like to not step on your (or anyone's) development toes. Cheers, Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
[Libreoffice-commits] core.git: solenv/gbuild
solenv/gbuild/gbuild.help.txt |1 + 1 file changed, 1 insertion(+) New commits: commit 59fc296f88a1acc92b867ef07ec1be42b8f023fe Author: Kevin Hunter hunt...@earlham.edu Date: Fri Feb 21 01:01:28 2014 -0500 Advertise the new PythonTest_pytests addition. For those who use the 'make help' paradigm to look for an entry point to how to run their tests. Please see this commit for context: 4e887567c5b4b06646ab1340376e240d6c5af9cb Change-Id: Id7ffed3aa1e5157406c0c3d5328f4dd5b7d81178 Reviewed-on: https://gerrit.libreoffice.org/8155 Reviewed-by: Caolán McNamara caol...@redhat.com Tested-by: Caolán McNamara caol...@redhat.com diff --git a/solenv/gbuild/gbuild.help.txt b/solenv/gbuild/gbuild.help.txt index 49cb90d..67cdda3 100644 --- a/solenv/gbuild/gbuild.help.txt +++ b/solenv/gbuild/gbuild.help.txt @@ -72,6 +72,7 @@ AVAILABLE TARGETS o Library o Package o Pagein + o PythonTest_pytests o Pyuno o Rdb o StaticLibrary ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: 2 commits - pyuno/Module_pyuno.mk pyuno/PythonTest_pytests.mk pyuno/PythonTest_pyuno_pytests_insertremovecells.mk pyuno/qa
pyuno/Module_pyuno.mk |7 + pyuno/PythonTest_pytests.mk | 29 ++ pyuno/PythonTest_pyuno_pytests_insertremovecells.mk | 20 pyuno/qa/pytests/insertremovecells.py | 85 pyuno/qa/pytests/testdocuments/fdo74824.ods |binary 5 files changed, 141 insertions(+) New commits: commit f2471280c7c625e39369f76bd0efa1d2402f62bf Author: Kevin Hunter hunt...@earlham.edu Date: Sun Feb 16 22:12:27 2014 -0500 Test for fdo#74824. The bug in question crashed LibO when inserting a group of cells. This bug was quashed, per se, by commit 07e2c31831ad265b018e5fdf59bdde048fbb4d35, but it occurs to me that at least the particular functionality of inserting a group of cells could use more testing. Change-Id: Icdbfff86fb0265eef325bcc94d9fc9f3e9e38413 diff --git a/pyuno/Module_pyuno.mk b/pyuno/Module_pyuno.mk index 31c831a..b79c21d 100644 --- a/pyuno/Module_pyuno.mk +++ b/pyuno/Module_pyuno.mk @@ -63,6 +63,7 @@ endif # SYSTEM_PYTHON ifneq (,$(filter PythonTest_pytests,$(MAKECMDGOALS))) $(eval $(call gb_Module_add_targets,pyuno, \ PythonTest_pytests \ +PythonTest_pyuno_pytests_insertremovecells \ )) endif diff --git a/pyuno/PythonTest_pytests.mk b/pyuno/PythonTest_pytests.mk index afb4ba5..63ffbb6 100644 --- a/pyuno/PythonTest_pytests.mk +++ b/pyuno/PythonTest_pytests.mk @@ -24,5 +24,6 @@ $(eval $(call gb_PythonTest_PythonTest,pytests)) $(call gb_PythonTest_get_target,pytests) : \ +$(call gb_PythonTest_get_target,pyuno_pytests_insertremovecells) \ # vim: set noet sw=4 ts=4: diff --git a/pyuno/PythonTest_pyuno_pytests_insertremovecells.mk b/pyuno/PythonTest_pyuno_pytests_insertremovecells.mk new file mode 100644 index 000..3b3e3c0 --- /dev/null +++ b/pyuno/PythonTest_pyuno_pytests_insertremovecells.mk @@ -0,0 +1,20 @@ +# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*- +# +# This file is part of the LibreOffice project. +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# + +$(eval $(call gb_PythonTest_PythonTest,pyuno_pytests_insertremovecells)) + +$(eval $(call gb_PythonTest_set_defs,pyuno_pytests_insertremovecells,\ +TDOC=$(SRCDIR)/pyuno/qa/pytests/testdocuments \ +)) + +$(eval $(call gb_PythonTest_add_modules,pyuno_pytests_insertremovecells,$(SRCDIR)/pyuno/qa/pytests,\ +insertremovecells \ +)) + +# vim: set noet sw=4 ts=4: diff --git a/pyuno/qa/pytests/insertremovecells.py b/pyuno/qa/pytests/insertremovecells.py new file mode 100644 index 000..4ce2707 --- /dev/null +++ b/pyuno/qa/pytests/insertremovecells.py @@ -0,0 +1,85 @@ +import unittest + +from os import getenv, path + +try: +from urllib.parse import quote +except ImportError: +from urllib import quote + +from org.libreoffice.unotest import pyuno, mkPropertyValue + +class InsertRemoveCells(unittest.TestCase): + +@classmethod +def setUpClass(cls): +cls.xContext = pyuno.getComponentContext() +pyuno.experimentalExtraMagic() + + +# no need for a tearDown(cls) method. + + +def test_fdo74824_load(self): +ctxt = self.xContext +assert(ctxt) + +smgr = ctxt.ServiceManager +desktop = smgr.createInstanceWithContext('com.sun.star.frame.Desktop', ctxt) +loadProps = tuple(mkPropertyValue(k, v) for (k, v) in ( + ('Hidden', True), + ('ReadOnly', False) +)) +tdoc_dir = getenv('TDOC') +url = 'file://' + quote(path.join(tdoc_dir, 'fdo74824.ods')) +doc = desktop.loadComponentFromURL(url, _blank, 0, loadProps) + +sheet = doc.Sheets.Sheet1 +area = sheet.getCellRangeByName( 'A2:B4' ) +addr = area.getRangeAddress() + +# 2 = intended to shift cells right, but I don't know where to find +# the ENUM to put in it's place. Corrections welcome. +sheet.insertCells( addr, 2 ) + +# basically, the insertCells call is the test: it should not crash +# LibreOffice. However, for completeness, we should test the cell +# contents as well. + +empty_cells = ( + (0, 0), (0, 1), (0, 2), (0, 3), (1, 0), (1, 1), (1, 2), (1, 3), + (3, 1), (4, 0), (4, 2), (5, 0), (5, 2), (5, 3), +) +formula_cells = ( + (2, 0, '=(1+GDR)^-D1', '1.000', 1.0), + (4, 1, '=(1+GDR)^-F2', '0.125', 0.125), + (4, 3, '=SUM(C1:C2)', '1.000', 1.0), +) +value_cells = ( + (2, 2, '2010', 2010.0), + (2, 3, '7', 7.0), + (3, 0, '0', 0), + (3, 2, '2012', 2012.0), + (3, 3, '6', 6.0), + (5, 1, '1', 1.0), +) +for pos in empty_cells: +cell = sheet.getCellByPosition(*pos) +self.assertEqual( 'EMPTY', cell.Type.value
[Libreoffice-commits] core.git: configure.ac
configure.ac | 24 ++-- 1 file changed, 22 insertions(+), 2 deletions(-) New commits: commit faaaddeea42996bf0aa9089fc851eb594165f7d5 Author: Kevin Hunter hunt...@earlham.edu Date: Thu Feb 20 10:43:58 2014 -0500 Enable relative paths. The documentation for the --with-external-tar was previously not specific that it required an absolute path. So rather than fix the help text, convert the path to an absolute one. Change-Id: I794cd77235e68a2270acd09895bf994527e847c4 Reviewed-on: https://gerrit.libreoffice.org/8146 Reviewed-by: Norbert Thiebaud nthieb...@gmail.com Tested-by: Norbert Thiebaud nthieb...@gmail.com diff --git a/configure.ac b/configure.ac index 9c317cc..cf9a3a7 100644 --- a/configure.ac +++ b/configure.ac @@ -61,6 +61,23 @@ PathFormat() fi } +AbsolutePath() +{ +# There appears to be no simple and portable method to get an absolute and +# canonical path, so we try creating the directory if does not exist and +# utilizing the shell and pwd. +rel=$1 +absolute_path= +test ! -e $rel mkdir -p $rel +if test -d $rel ; then +cd $rel || AC_MSG_ERROR([absolute path resolution failed for $rel.]) +absolute_path=$(pwd) +cd - /dev/null +else +AC_MSG_ERROR([Failed to resolve absolute path. $rel does not exist or is not a directory.]) +fi +} + rm -f warn have_WARNINGS=no add_warning() @@ -1333,8 +1350,8 @@ AC_ARG_WITH(gnu-cp, ,) AC_ARG_WITH(external-tar, -AS_HELP_STRING([--with-external-tar=TARFILE PATH], -[Specify path to tarfiles manually.]), +AS_HELP_STRING([--with-external-tar=TARFILE_PATH], +[Specify an absolute path of where to find (and store) tarfiles.]), TARFILE_LOCATION=$withval , ) @@ -4729,6 +4746,9 @@ if test -z $TARFILE_LOCATION; then ln -s $SRC_ROOT/external/tarballs $SRC_ROOT/src fi TARFILE_LOCATION=$SRC_ROOT/external/tarballs +else +AbsolutePath $TARFILE_LOCATION +TARFILE_LOCATION=${absolute_path} fi AC_SUBST(TARFILE_LOCATION) ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
Re: Testing/Working on PyUNO?
At 6:09am -0500 Thu, 20 Feb 2014, Stephan Bergmann wrote: On 02/19/2014 12:02 PM, Stephan Bergmann wrote: The idea would be that Kevin (and others) would fill this with PyUNO coding scenarios that cross their mind, discover errors in the PyUNO infrastructure, ideally distill tests for those specific errors out of the more general tests (that could then even go into more specific code modules like pyuno or testtools), and eventually prune test snippets again that are no longer useful. To get that started, I created http://cgit.freedesktop.org/libreoffice/core/commit/?id=4e887567c5b4b06646ab1340376e240d6c5af9cb A rudimentary framework for additional Python tests not run by default and moved the previously abandoned http://cgit.freedesktop.org/libreoffice/core/commit/?id=f2471280c7c625e39369f76bd0efa1d2402f62bf Test for fdo#74824 there. At least for now, the tests are not run by default, but need an explicit make PythonTest_pytests. See the commit message of http://cgit.freedesktop.org/libreoffice/core/commit/?id=4e887567c5b4b06646ab1340376e240d6c5af9cb for details. That's great, and now means that there is at least an appropriate place to put the functional tests that are currently in my purview. If James DuPont (for instance, since he commented on this thread, and [hint, hint]) were able to identify problem areas he's run across in test form, that would be most appreciated as well! :-) Cheers, Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [PUSHED] newdev review request: sc/.../vbarange.cxx
At 4:40am -0400 Thu, 07 Jun 2012, Noel Power wrote: Btw if you are interested there are probably quite a few instances of VBA_OOBUILD_HACK buried in there that could do with removal ( and then finally wherever the -D for same passed to the compiler ) Cleaning those out would be appreciated ( by me at least ) Noted. Will see what comes up. Patch looks fine, thanks for that, pushed now. Next time for convenience could you use 'git format-patch' for creating the diff ( just makes it easier to process ) thanks alot !! I actually have commit access. I just ... jumped the gun when I was working on removing the mpNote pointer from ScBaseCell 7 months ago. Now I'm timid again, and until I get more confidence for anything more than a /dead/ simple patch, I'm nervous. And so it goes. Thanks! Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
[PATCH] newdev review request: sc/.../vbarange.cxx
Hullo List, Having been too excited last time (7+ months) and committed to master way too early, I'm back to basics as I try (once again) to get back into LO dev. Here's a minor cppcheck-found unused variable patch. Please review at your convenience. Cheers, Kevin diff --git a/sc/source/ui/vba/vbarange.cxx b/sc/source/ui/vba/vbarange.cxx index 99a2308..a1190bd 100644 --- a/sc/source/ui/vba/vbarange.cxx +++ b/sc/source/ui/vba/vbarange.cxx @@ -5530,15 +5530,10 @@ ScVbaRange::AutoFill( const uno::Reference excel::XRange Destination, const } } } -ScDocShell* pDocSh= excel::GetDocShellFromRange( mxRange ); FillCmd eCmd = FILL_AUTO; FillDateCmd eDateCmd = FILL_DAY; -#ifdef VBA_OOBUILD_HACK -double fEndValue = MAXDOUBLE; -#endif - if ( Type.hasValue() ) { sal_Int16 nFillType = excel::XlAutoFillType::xlFillDefault; @@ -5581,6 +5576,8 @@ ScVbaRange::AutoFill( const uno::Reference excel::XRange Destination, const } } #ifdef VBA_OOBUILD_HACK +double fEndValue = MAXDOUBLE; +ScDocShell* pDocSh = excel::GetDocShellFromRange( mxRange ); pDocSh-GetDocFunc().FillAuto( aSourceRange, NULL, eDir, eCmd, eDateCmd, nCount, fStep, fEndValue, sal_True, sal_True ); #endif ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: finding code for UI strings ...
At 1:51pm -0400 Thu, 31 May 2012, Joel Madero wrote: As for the explanation of why my search didn't come up with it, I did the following search (twice now) with grep: grep -rl Save with password password_code.txt I would think that the grep would find the code regardless of the underscore. Still a bit confused about that, didn't get a chance last night to look into the other src file but hopefully tonight or this weekend. Looks to me like you forgot to tell grep /where/ to search: # wait for input via stdin $ grep -rl Save with password password_code.txt # search starting from this directory $ grep -rl Save with password . password_code.txt The latter should yield results of interest to you. Git might return results a bit faster than a blanket search of everything (e.g. non-source files, uncompressed versions of files in Git, etc.): $ git grep Save with password Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
[Libreoffice-commits] .: filter/source
filter/source/msfilter/msdffimp.cxx |5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) New commits: commit ddc36f8914640d6d75464ab26690b72504469fa0 Author: Kevin Hunter hunt...@earlham.edu Date: Wed May 30 03:09:12 2012 -0400 cppcheck: Reduce variable scope Change-Id: I11f7642346ccc1949d5716b32444df86541eabf8 diff --git a/filter/source/msfilter/msdffimp.cxx b/filter/source/msfilter/msdffimp.cxx index 9d5e1dc..b5c27bd 100644 --- a/filter/source/msfilter/msdffimp.cxx +++ b/filter/source/msfilter/msdffimp.cxx @@ -4326,15 +4326,14 @@ SdrObject* SvxMSDffManager::ImportGroup( const DffRecordHeader rHd, SvStream r rSt aRecHd; if ( aRecHd.nRecType == DFF_msofbtSpContainer ) { -sal_Int32 nGroupRotateAngle = 0; -sal_Int32 nSpFlags = 0; mnFix16Angle = 0; if (!aRecHd.SeekToBegOfRecord(rSt)) return pRet; pRet = ImportObj( rSt, pClientData, rClientRect, rGlobalChildRect, nCalledByGroup + 1, pShapeId ); if ( pRet ) { -nSpFlags = nGroupShapeFlags; +sal_Int32 nGroupRotateAngle = 0; +sal_Int32 nSpFlags = nGroupShapeFlags; nGroupRotateAngle = mnFix16Angle; Rectangle aClientRect( rClientRect ); ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
Re: minor grammaro in /download/
At 7:37am -0400 Wed, 04 Apr 2012, Christian Lohmaier wrote: On Wed, Apr 4, 2012 at 9:41 AM, Miklos Vajna wrote: On Wed, Apr 04, 2012 at 01:10:50AM -0400, Kevin Hunter wrote: What's the correct venue to report something so minor as this typo? webs...@global.libreoffice.org, I guess. Yes, that would be the right place - but I fixed it, so not necessary to send another posting in this case (but in future, Thank you and noted. Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
minor grammaro in /download/
Hullo List, What's the correct venue to report something so minor as this typo? As of 1:00am -0400 today, the current /download/ page on libreoffice.org has this text: Handy ressources My email client has kindly suggested 'resources' from its English dictionary. Cheers, Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: intermittent flaw in gnumake deps on Win32 ..
At 7:56am -0400 Fri, 30 Mar 2012, Christian Lohmaier wrote: On Fri, Mar 30, 2012 at 1:05 PM, Matúš Kukan wrote: On 30 March 2012 11:36, Michael Meeks wrote: Regina's problem comes down to a corrupt .d file. [...] One more data-point, that file was exactly 4096 bytes large: What does that mean ? Well - it is either a coincidence, or not.. A multiple of 1024 i.e exactly 4KB in size.. Perhaps dumb question: Is she out of space on that drive/partition? Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: intermittent flaw in gnumake deps on Win32 ..
At 1:21pm -0400 Mon, 02 Apr 2012, Regina Henschel wrote: Should be Hi Kevin. Please excuse. :-) No worries. I am often not sure whether to say Hi when responding back and forth in email discussions on a list. Is it a formal interaction? A friendly interaction? An engineer's optimal interaction? Regardless, Hello. Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
[Libreoffice] consistent SCCOL use?
Hullo SC Devs, A quick question to any more-knowledgeable-than-me person on whether there's a reason these spots in the calc code base are hard-coded to sal_Int16, rather than using SCCOL? Thanks, Kevin diff --git a/sc/inc/pivot.hxx b/sc/inc/pivot.hxx index 705f794..b6bded9 100644 --- a/sc/inc/pivot.hxx +++ b/sc/inc/pivot.hxx @@ -189,12 +189,12 @@ typedef ::std::vector ScPivotField ScPivotFieldVector; struct ScDPFuncData { -short mnCol; +SCCOL mnCol; sal_uInt16 mnFuncMask; ::com::sun::star::sheet::DataPilotFieldReference maFieldRef; -explicitScDPFuncData( short nNewCol, sal_uInt16 nNewFuncMask ); -explicitScDPFuncData( short nNewCol, sal_uInt16 nNewFuncMask, +explicitScDPFuncData( SCCOL nNewCol, sal_uInt16 nNewFuncMask ); +explicitScDPFuncData( SCCOL nNewCol, sal_uInt16 nNewFuncMask, const ::com::sun::star::sheet::DataPilotFieldReference rFieldRef ); }; diff --git a/sc/source/filter/excel/impop.cxx b/sc/source/filter/excel/impop.cxx index 533bbb9..cffbaf0 100644 --- a/sc/source/filter/excel/impop.cxx +++ b/sc/source/filter/excel/impop.cxx @@ -465,7 +465,7 @@ void ImportExcel:: WinProtection( void ) void ImportExcel::Columndefault( void ) {// Default Cell Attributes -sal_uInt16 nColMic, nColMac; +SCCOL nColMic, nColMac; sal_uInt8 nOpt0; aIn nColMic nColMac; @@ -651,7 +651,7 @@ void ImportExcel::Builtinfmtcnt( void ) void ImportExcel::Colinfo( void ) {// Column Formatting Information -sal_uInt16 nColFirst, nColLast, nColWidth, nXF; +SCCOL nColFirst, nColLast, nColWidth, nXF; sal_uInt16 nOpt; aIn nColFirst nColLast nColWidth nXF nOpt; diff --git a/sc/source/ui/dbgui/pfiltdlg.cxx b/sc/source/ui/dbgui/pfiltdlg.cxx index 1b65585..5437ef6 100644 --- a/sc/source/ui/dbgui/pfiltdlg.cxx +++ b/sc/source/ui/dbgui/pfiltdlg.cxx @@ -103,7 +103,7 @@ ScPivotFilterDlg::ScPivotFilterDlg( Window* pParent, nSrcTab ( nSourceTab ), // ist nicht im QueryParam nFieldCount ( 0 ) { -for (sal_uInt16 i=0; i=MAXCOL; i++) +for (SCCOL i=0; i=MAXCOL; i++) pEntryLists[i] = NULL; Init( rArgSet ); @@ -114,7 +114,7 @@ ScPivotFilterDlg::ScPivotFilterDlg( Window* pParent, ScPivotFilterDlg::~ScPivotFilterDlg() { -for (sal_uInt16 i=0; i=MAXCOL; i++) +for (SCCOL i=0; i=MAXCOL; i++) delete pEntryLists[i]; if ( pOutItem ) @@ -567,7 +567,7 @@ IMPL_LINK( ScPivotFilterDlg, CheckBoxHdl, CheckBox*, pBox ) if ( pBox == aBtnCase )// Wertlisten { -for (sal_uInt16 i=0; i=MAXCOL; i++) +for (SCCOL i=0; i=MAXCOL; i++) DELETEZ( pEntryLists[i] ); String aCurVal1 = aEdVal1.GetText(); ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] [ANNOUNCE] libreoffice-3.4.99.1 tag created (3.5.0-beta1)
At 12:34pm -0500 Mon, 12 Dec 2011, Petr Mladek wrote: Note that I used the correct version 3.4.99.1 for this beta. We use (3.3.99.X also for 3.4 betas). I am sorry that I used 3.5.0.0 for beta0. The 3.5.0.x version are reserved for release candidates. ./g fetch --tags ./g checkout -b tag-libreoffice-3.4.99.1 libreoffice-3.4.99.1 I hope this isn't a silly question: if I'm trying to stay at the bleeding edge of the 3.5 branch, should I switch from libreoffice-3-5 to this new branch? With a git pull from an hour ago, this is the branch that I'm currently building: $ git branch * libreoffice-3-5 master Thanks, Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] [ANNOUNCE] libreoffice-3.4.99.1 tag created (3.5.0-beta1)
At 1:24pm -0500 Mon, 12 Dec 2011, Petr Mladek wrote: Looks good. Please, also make sure that the other repositories are on this branch. I do the following ./g branch | grep \* :-) They are; no worries/ But good eye for git vs ./g! Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] how to acquire an ScDocument reference from scratch
At 4:47pm -0500 Thu, 08 Dec 2011, Michael Meeks wrote: On Thu, 2011-12-08 at 13:05 -0500, Kevin Hunter wrote: More specifically, I wish there were a way to run exactly and only one test (i.e. a single ::testFunction()). Fine, sounds like a worthy goal. I suggest you hack cppunit to add some magic macro wrappers to stringify the function name, and allow some run-time parameter that will filter the tests immediately on entry down to the one you want. Oh! I didn't realize cppunit was open for hacking from our end. Let's see ... looking through that directory then ... the basic workflow is to write a patch to apply before we compile Cppunit, yes? Also - it seems Noel Grandin is working on a (somewhat different) re-hash of the note storage thing in his tree - worth not treading on his feet there; but of course the more unit tests for note stuff the merrier. Cheers. If Noel is working on that, then I'll turn my attention to something along the test lines. Given my $REAL_LIFE constraints, maybe what I work on should fall farther from the LO critical path ... Thanks, Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] how to acquire an ScDocument reference from scratch
At 7:03am -0500 Fri, 09 Dec 2011, Noel Grandin wrote: I don't have any unit tests in my tree yet, so feel free to go ahead. Ah, what I'm going to be working on is the implementation of Cppunit for us such that we can have some niceties that would have helped me tremendously while getting up to speed with Calc and the ScPostIt stuffs. Not unit tests per se. I did write a couple of unit tests in that patch I sent your way a week ago, and some comments on some of the unit tests that I thought needed to be added, if you'd like to harvest so of that thought-process. Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] how to acquire an ScDocument reference from scratch
At 8:05am -0500 Fri, 09 Dec 2011, Stephan Bergmann wrote: On 12/09/2011 12:55 PM, Kevin Hunter wrote: Oh! I didn't realize cppunit was open for hacking from our end. Not really. Keep in mind that LO's configure has --with-system-cppunit, which people do make use of. The existing patches fix bugs or warnings, and should have been upstreamed if there were a living upstream. They do not introduce features. Oh. Back to square 1.5. That said, AFAIU, xUnit in general and CppUnit in particular does support the notion of finer-grained test suites, allowing one to execute only a subset of a given set of tests. Never looked into how that works, though. Thank you. I was hoping as much. In any event, gots to study what's available to me with my couple hours a week ... Cheers, Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] how to acquire an ScDocument reference from scratch
At 6:25am -0500 Thu, 24 Nov 2011, Michael Meeks wrote: On Thu, 2011-11-24 at 01:05 -0500, Kevin Hunter wrote: I wanted to create an ScDocument to work with in a new test file. I was thinking in terms of test driven development and having some tests such that I could execute only them, as something akin to: $ make just_this_set_of_tests Ah - you just want to run a smaller set of tests, and faster than running all of the 'make unittest' changes in master ? Sorry for the late response ... in short, exactly. More specifically, I wish there were a way to run exactly and only one test (i.e. a single ::testFunction()). Instead, they're currently bundled together in various files such that I can do what Stephan suggested ($ make /path/to/test.test). I would find it helpful if in the development cycle, there were a way to run just what I want to run, to finer granularity than a file. As already pointed out to me, this is currently time-infeasible for the common use case that compiles the whole project (given that each test would have to be _individually_ linked and executed); regardless, all I really wanted was a howto for my own personal machine in terms of the boiler plate I was apparently missing to accomplish this for the tests and LO code on which I'm currently working. Having this would enable me to drastically reduce my compile wait time. On my old hardware, that translates a 15-20s turnaround time about 3-4s. Thus, commenting out was suggested, and is currently what I'm working with. Thanks, Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
[Libreoffice] how to acquire an ScDocument reference from scratch
Hello List, I'm trying to get hold of an ScDocument from scratch. I have naively attempted to replicate another section of code, but for the life of me can't figure out what I'm missing. My code crashes with a SIGSEGV on this line: aDocShell = new ScDocShell(); I think I've boiled it down to a null pointer dereference (see attached, please), but that implies the existing code is incorrect, which I'm not yet ready to admit. Any pointers very welcome. Thanks, Kevin // - My code ... [...] #include docsh.hxx [...] SomeClass::SomeClass ( ) { printf(Step 1: Construction ... ); fflush( stdout ); // This call dies, but I don't understand why. I've traced it to // 'getComponentContext' returning a NULL pointer, and below. m_pDocSh = new ScDocShell(); printf(done.\n); // -- this line never reached, as a SIGSEGV occurs } // // In case it's pertinent, here's is the call stack at time of SIGSEGV: // // SvtViewOptionsBase_Impl::SvtViewOptionsBase_Impl(rtl::OUString const) (viewoptions.cxx:367) // SvtViewOptions::AcquireOptions() (viewoptions.cxx:1246) // SfxApplication::SfxApplication() (app.cxx:314) // SfxApplication::GetOrCreate() (app.cxx:278) // SfxGetpApp() (app.hxx:288) // SfxObjectShell_Impl::SfxObjectShell_Impl(SfxObjectShell) (objxtor.cxx:287) // SfxObjectShell::SfxObjectShell(unsigned long) (objxtor.cxx:302) // ScDocShell::ScDocShell(unsigned long) // ... a few more irrelevant stack pieces // // - Tracings through LO code // (I start tracing below within unotools/source/config/viewoptions.cxx ) // // comphelper/source/processfactory/processfactory.cxx:getComponentContext { Reference XComponentContext xRet; // [...] return xRet; // at this point, xRet is NULL } // // Which then makes this pass a NULL to theDefaultProvider::get // css::uno::Reference css::uno::XInterface ConfigurationHelper::openConfig( const css::uno::Reference css::lang::XMultiServiceFactory xSMGR, const ::rtl::OUString sPackage, sal_Int32 eMode ) { css::uno::Reference css::lang::XMultiServiceFactory xConfigProvider( css::configuration::theDefaultProvider::get( getComponentContext( xSMGR ) ) ); // [...] } // // theDefaultProvider::Get then tries to use the NULL pointer: // class theDefaultProvider { public: static ::com::sun::star::uno::Reference ::com::sun::star::lang::XMultiServiceFactory get( ::com::sun::star::uno::Reference ::com::sun::star::uno::XComponentContext const context ) { ::com::sun::star::uno::Reference ::com::sun::star::lang::XMultiServiceFactory instance; // This line is what appears to fail, as 'context' is currently a // NULL pointer if ( ! ( context-getValueByName( ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM(/singletons/com.sun.star.configuration.theDefaultProvider))) = instance) || !instance.is() ) throw ::com::sun::star::uno::DeploymentException(::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM(component context fails to supply singleton com.sun.star.configuration.theDefaultProvider of type com.sun.star.lang.XMultiServiceFactory)), context); return instance; } // [...] } ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] how to acquire an ScDocument reference from scratch
At 7:56pm -0500 Wed, 23 Nov 2011, Markus Mohrhard wrote: Can you explain in a bit more detail what you want to do. You can't just create a new ScDocShell, you always need to do some initialisation before. Depending on what you want to do you should not need to create the ScDocShell yourself. Well, I'd like to have some way of creating a new ScDocument. In looking through sc/qa/unit/ucalc.cxx, it /appears/ that all I need do is: m_xDocShRef = new ScDocShell( SFXMODEL_STANDARD | SFXMODEL_DISABLE_EMBEDDED_SCRIPTS | SFXMODEL_DISABLE_DOCUMENT_RECOVERY ); I'm clearly missing something, likely in regards to BootstrapFixture::setUp() and ScDLL::Init(). Help! Thanks, Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] how to acquire an ScDocument reference from scratch
At 8:45pm -0500 Wed, 23 Nov 2011, Kohei Yoshida wrote: On Wed, 2011-11-23 at 20:33 -0500, Kevin Hunter wrote: At 7:56pm -0500 Wed, 23 Nov 2011, Markus Mohrhard wrote: Can you explain in a bit more detail what you want to do. You can't just create a new ScDocShell, you always need to do some initialisation before. Depending on what you want to do you should not need to create the ScDocShell yourself. Well, I'd like to have some way of creating a new ScDocument. And could you tell us what you need to do that for? Providing more details as to what area of code you are modifying, including the file name and class name (if applicable), and what end result you want to see would give us more context of what you are doing. This was answered and responded to out-of-band as follows: I wanted to create an ScDocument to work with in a new test file. I was thinking in terms of test driven development and having some tests such that I could execute only them, as something akin to: $ make just_this_set_of_tests I was educated that because each separate test file needs an entirely separate invocation of soffice (and all that that entails), this is not a desirable avenue for the general use-case of running all tests. LO is nowhere near able to work in a TDD environment, and, short of much rewriting, will not be there anytime soon. Thus, the answer to my question boiled down to: during development or bug hunting, comment out all superfluous tests in another, existing test file. Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] Assertions and Logging
At 11:53am -0500 Mon, 21 Nov 2011, Stephan Bergmann wrote: It would be good if such impossible to proceed situations would lead to uncaught exceptions [...] or clear error messages from within LO (this functionality is unavailable (detailed error message: ...)), instead of LO silently doing nothing (as is so often the case today, e.g., when you choose a menu item that triggers functionality that requires Java, and you don't have a JVM). I'm not sure if that was a conclusion to this thread, but are we documenting this kind of decision in a concise format (and hopefully single page) on the wiki? After a few minutes of looking, all I see is this page: http://wiki.documentfoundation.org/Development#General_Programming_Guidelines For us non-core folks who aren't able to follow every message, and new devs in general, having a page of LO coding style and various examples of what (not) to do would, at least for me, be very helpful. Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
[Libreoffice] unable to pass tests ...
Hiya LO List, I've finally gotten a new build completed, but I'm unable to pass a couple of tests. Unfortunately, I think the tests aren't even able to run, but I don't currently know how to step into this. Can anyone give me a pointer, given the attached test output? Many thanks, Kevin $ cd [...]/libreoffice/sc/ $ make check [ build CUT ] sc_filters_test make[1]: Entering directory `[...]/libreoffice/sc' R=/home/kevin/devel S=$R/libreoffice O=$S/solver/unxlngx6.pro W=$S/workdir/unxlngx6.pro mkdir -p $W/CppunitTest/ (LD_LIBRARY_PATH=$O/lib:$O/lib/sqlite STAR_RESOURCEPATH=$O/bin/ $O/bin/cppunit/cppunittester $W/LinkTarget/CppunitTest/libtest_sc_filters_test.so --headless --protector unoexceptionprotector.so unoexceptionprotector -env:CONFIGURATION_LAYERS=xcsxcu:file://$O/xml/registry module:file://$O/xml/registry/spool -env:UNO_TYPES= file://$O/bin/udkapi.rdb file://$O/bin/types.rdb -env:UNO_SERVICES=file://$O/xml/ure/services.rdb file://$W/ComponentTarget/basic/util/sb.component file://$W/ComponentTarget/comphelper/util/comphelp.component file://$W/ComponentTarget/dbaccess/util/dba.component file://$W/ComponentTarget/fileaccess/source/fileacc.component file://$W/ComponentTarget/filter/source/config/cache/filterconfig1.component file://$W/ComponentTarget/forms/util/frm.component file://$W/ComponentTarget/framework/util/fwk.component file://$W/ComponentTarget/i18npool/util/i18npool.component file://$W/ComponentTarget/oox/util/oox.component file://$W/ComponentTarget/package/source/xstor/xstor.component file://$W/ComponentTarget/package/util/package2.component file://$W/ComponentTarget/sax/source/expatwrap/expwrap.component file://$W/ComponentTarget/sax/source/fastparser/fastsax.component file://$W/ComponentTarget/sc/util/sc.component file://$W/ComponentTarget/sc/util/scfilt.component file://$W/ComponentTarget/sfx2/util/sfx.component file://$W/ComponentTarget/sot/util/sot.component file://$W/ComponentTarget/toolkit/util/tk.component file://$W/ComponentTarget/unotools/util/utl.component file://$W/ComponentTarget/unoxml/source/rdf/unordf.component file://$W/ComponentTarget/unoxml/source/service/unoxml.component file://$W/ComponentTarget/xmlsecurity/util/xsec_fw.component file://$W/ComponentTarget/xmlsecurity/util/xmlsecurity.component file://$W/ComponentTarget/xmlsecurity/util/xsec_xmlsec.component file://$O/xml/configmgr.component file://$O/xml/ucb1.component file://$O/xml/ucpfile1.component file://$O/xml/ucptdoc1.component -env:URE_INTERNAL_LIB_DIR=file://$O/lib -env:LO_LIB_DIR=file://$O/lib $W/CppunitTest/sc_filters_test.test.log 21 || (cat $W/CppunitTest/sc_filters_test.test.log echo; echo Error: a unit test failed, please do one of:; echo; echo export DEBUGCPPUNIT=TRUE# for exception catching; echo export GDBCPPUNITTRACE=\gdb --args\ # for interactive debugging; echo export VALGRIND=memcheck# for memory checking ; echo and retry. false)) ##Failure Location unknown## : Error Test name: ScFiltersTest::testCVEs setUp() failed - An uncaught exception of type com.sun.star.registry.InvalidRegistryException - file://[...]/libreoffice/workdir/unxlngx6.pro/ComponentTarget/uno xml/source/rdf/unordf.component: component has empty uri attribute ##Failure Location unknown## : Error Test name: ScFiltersTest::testCVEs tearDown() failed - An uncaught exception of type com.sun.star.uno.RuntimeException - unsatisfied query for interface of type com.sun.star.lang.XComponent! ##Failure Location unknown## : Error Test name: ScFiltersTest::testRangeName setUp() failed - An uncaught exception of type com.sun.star.registry.InvalidRegistryException - file://[...]/libreoffice/workdir/unxlngx6.pro/ComponentTarget/uno xml/source/rdf/unordf.component: component has empty uri attribute ##Failure Location unknown## : Error Test name: ScFiltersTest::testRangeName tearDown() failed - An uncaught exception of type com.sun.star.uno.RuntimeException - unsatisfied query for interface of type com.sun.star.lang.XComponent! ##Failure Location unknown## : Error Test name: ScFiltersTest::testContent setUp() failed - An uncaught exception of type com.sun.star.registry.InvalidRegistryException - file://[...]/libreoffice/workdir/unxlngx6.pro/ComponentTarget/uno xml/source/rdf/unordf.component: component has empty uri attribute ##Failure Location unknown## : Error Test name: ScFiltersTest::testContent tearDown() failed - An uncaught exception of type com.sun.star.uno.RuntimeException - unsatisfied query for interface of type com.sun.star.lang.XComponent! ##Failure Location unknown## : Error Test name: ScFiltersTest::testFunctions setUp() failed - An uncaught exception of type com.sun.star.registry.InvalidRegistryException - file://[...]/libreoffice/workdir/unxlngx6.pro/ComponentTarget/uno xml/source/rdf/unordf.component: component has empty uri attribute ##Failure Location unknown## : Error Test name:
Re: [Libreoffice] unable to pass tests ...
At 11:22am -0500 Thu, 17 Nov 2011, Stephan Bergmann wrote: On 11/17/2011 05:16 PM, Kevin Hunter wrote: - file://[...]/libreoffice/workdir/unxlngx6.pro/ComponentTarget/uno xml/source/rdf/unordf.component: component has empty uri attribute Looks like you fell victim to the component file mess (where last round of mess there was that a make clean in one module can corrupt component files from other modules). Please try a global find */${INPATH?}/ -name \*.component -exec rm {} \; followed by a global make check again. Thank you both. Weird that I started from a 'make distclean' last night ... but now the build fails on the tests I've just written, which is much more expected. Thank you, Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] [Libreoffice-ux-advise] [PATCH] Word count dialog modeless
At 12:51pm -0500 Wed, 16 Nov 2011, Astron wrote: On 15 November 2011 19:15, Michael Meeks wrote: :-) sounds reasonable. My only concern would be to make it discoverable and of course performance: would we take a per-keystroke hit there ? so perhaps having it easy-to-enable but disabled by default would make sense. How large is the hit? Has anyone measured already? Personally, I can't really perceive anything when comparing writing with the Word Count window open v/ without it. It seems to me to be an issue of how one implements the word count statistics collection. Are the word count statistics constantly kept up-to-date via a incrementers/decrementers per key-stroke? Or are they only collected upon request? From a brief and unscientific test of copying 10MiB of copy and paste text into a Writer document, waiting while it paginates to 2250 pages, then timing how long it takes for the Word Count dialog to give results, it would appear the former: every keystroke /already/ calculates the these statistics. Thus, my first un-educated guess is that this should have very little performance impact. Cheers, Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] [Libreoffice-commits] .: basic/inc basic/source
At 7:19am -0500 Tue, 15 Nov 2011, Fridrich Štrba wrote: New commits: commit 1f2d0c83d07b2c877722069c0075ba35860a0400 Author: Fridrich Štrba Date: Tue Nov 15 13:19:24 2011 +0100 Put back a method needed by Windows and reformat a bit diff --git a/basic/inc/basic/sbxvar.hxx b/basic/inc/basic/sbxvar.hxx index 485c33e..08e8002 100644 --- a/basic/inc/basic/sbxvar.hxx +++ b/basic/inc/basic/sbxvar.hxx @@ -212,6 +212,7 @@ public: // Special methods sal_Bool PutDecimal( com::sun::star::bridge::oleautomation::Decimal rAutomationDec ); +sal_Bool PutDecimal( SbxDecimal* pDecimal ); // This function is needed for Windows build, don't remove sal_Bool fillAutomationDecimal( com::sun::star::bridge::oleautomation::Decimal rAutomationDec ); Naive question: if it's only needed for Windows, is this not a place for an #ifdef ? Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
[Libreoffice] uno discoverability
Hullo List, I'm working on a school project that involves UNO with Python (talking to LO from an external invocation of Python). One of the things that I find extremely frustrating is the lack of discoverability from within the Python context. The interactive shell (IPython package and IPython.embed() ) is an amazing tool for debugging and data structure discovery (with the power of tab-completion, among other things), but when most functions are hardly documented, it reduces the discoverability to educated guesswork and actual C++ code inspection. 1. Is there an intentional reason for a lack of this sort of builtin documentation? For example, within the Python shell: import uno [...boiler plate to setup desktop variable from UNO...] help(desktop.loadComponentFromURL) Help on PyUNO_callable object: class PyUNO_callable(object) | Methods defined here: | | __call__(...) | x.__call__(...) == x(...) which is hardly useful to know what loadComponentFromURL actually does. 2. If there is not an intentional reason, would drive by documentation efforts (as I discover them, and certainly to be improved, but better than nothing), be generally appreciated? Thanks, Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] uno discoverability
At 12:00pm -0500 Tue, 15 Nov 2011, Michael Meeks wrote: there are some real issues here, inasmuch that it can't be known until run-time what interfaces are supported, and lots of type information disappears down the toilet around queryInterfaces and 'any's. Unfortunately, this makes the API hardly fit-for-purpose for simple scripting use, but extending the API to make it fit (eg. by having a flat set of implementation interfaces - complete with default parameter types etc.) is conceptually problematic ;-) Is it similarly as convoluted and difficult to have an explanation with, say, RuntimeExceptions? For instance, with a document with only one sheet, one should not be able to remove the last sheet, right? doc.Sheets.removeByName('Sheet1') --- com.sun.star.uno.RuntimeException Traceback (most recent call last) /home/kevin/ram/temoa/branches/tmpp/ipython console in module() com.sun.star.uno.RuntimeException: Which is correct of course, but not terribly elucidating (note the empty trailing colon). Would this be a simple case of putting an RTL...string in removeByName in docuno.cxx? Cheers, Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] [Libreoffice-commits] .: sc/inc sc/source
At 3:21pm -0500 Tue, 15 Nov 2011, Kohei Yoshida wrote: sc/inc/cell.hxx |4 ++-- sc/source/core/data/cell2.cxx | 10 ++ 2 files changed, 12 insertions(+), 2 deletions(-) New commits: commit 87be97a31d8686e3e6e976bb5585b32c096ca19d Author: Kohei Yoshidakohei.yosh...@suse.com Date: Tue Nov 15 15:20:13 2011 -0500 Make these two methods non-inline. From the curious cat: why? As I slowly code, are there coding guidelines of which I should be aware but have missed? Are you working toward keeping signatures in one place and definitions/instantiations in another? Thanks, Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] [Libreoffice-commits] .: sc/inc sc/source
At 12:28am -0500 Wed, 16 Nov 2011, Kohei Yoshida wrote: On Wed, Nov 16, 2011 at 12:21 AM, Kevin Hunter wrote: From the curious cat: why? Because that made it easier to debug whatever I was debugging. Plus, I don't believe in those implicitly inline methods, especially in headers that are included by millions. Imagine if you have to re-compile hundreds of source files every time you change the header... Heh, been there, done that. /Doing/ that as I type. And still compiling that ... Thanks for the info. Would you like me to do similar, as I note them while working on/learning notes? Kevin P.S. Still compiling, because of a header change. ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] [PATCH] make STR_MERGE_NOTEMPTY more understandable
At 3:15pm -0500 Wed, 09 Nov 2011, Kohei Yoshida wrote: 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. And I agree that the current message is very awkward. Heh, having run into that message more than few times in the past month, I, too, agree about its awkwardness. One more suggestion from the peanut gallery: Don't use No and Yes, but rather something more action-oriented, like Merge cells and Cancel. Jeff Waugh had an excellent presentation and visual (circa 2006/7) to show what the user sees, but of course my google is poor this evening. The summary is The entire dialog box is blurred/not readable, and the only visible parts are the buttons; the user should still be able to discern what action each button executes. That said, I'm clearly not a UI fella, and it was suggested elsewhere in this thread that this might be a UI issue ... Cheers, Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] how to 'make' a single target?
At 9:29pm -0400 Sat, 29 Oct 2011, Bjoern Michaelsen wrote: On Sat, Oct 29, 2011 at 06:17:09PM -0400, Kevin Hunter wrote: This is proving very cumbersome, however, as I'm unable to re-make just the affected files. For instance $ make -j1 | head; sleep; make -j1 | head The attached output indeed should never happen. What file did you touch to generate it? Between those two make runs? Nada. (That's why I showed it working in one shell command line.) If you mean before I started the compile, I'd touched a bunch of ScPostIt* related files in sc/inc and sc/source/core/data. However, I churned through the slow build time about 20 times last night until I was finally able to build 'sc'. Now the behavior seems to be correct, in that only the necessary files are actually built. I.e. I can no longer recreate that behavior. From the outside, it smells to me like there is a transactional behavior defined in the make files. That is, if all the files of a certain transaction don't get built properly, then the build redoes all of them. Is that expected/intentional behavior? Or did I just hit some corner case in my sc/ modifications? Should not at least the first 3 completed executions no longer need to be re-executed? Yes. Could you check the timestamps of (1) [...]/workdir/unxlngx6.pro/Dep/CxxObject/sc/source/filter/dif/difexp.d being newer than (2) [...]/workdir/unxlngx6.pro/CxxObject/sc/source/filter/dif/difexp.o and that again being newer than (3) [...]/sc/source/filter/dif/difexp.cxx , please? Last night, (2) was newer than (1), (1) was newer than (3). Now, after a couple of successful builds, (3) is newer than (2), which is newer than (1). Summary (= == younger than): Before success: (2) = (1) = (3) After success: (3) = (2) = (1) In any event, since I can't recreate it anymore, and it seems to be working fine, I'm moving on ... Thanks, Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] Suggestions for improving the look 'n' feel of LibreOffice
At 6:40pm -0400 Sat, 29 Oct 2011, alexander.wi...@zoho.com wrote: I've just created this small mock-up, of what I think could be a good solution: http://wiki.documentfoundation.org/User:Toxicbits That seems a good start. But let's see if some other devs have any thoughts, or if ... is it Christoph Noack? (the design team liason?) ... have any thoughts. Cheers, Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] Suggestions for improving the look 'n' feel of LibreOffice
At 12:57pm -0400 Fri, 28 Oct 2011, Alexander Wilms wrote: There's a short summary with a few examples in this document: http://ubuntuone.com/7m7AXgeh7OIwGBiCOHAjGh 1) It would be useful if the user could define alternating colors for table rows/columns and maybe even export Styles for text/shapes/tables formatting and coloring to a xml file or something for easy exchange. I concur that this would be very helpful, at least in my line(s) of work. I hope, however, that it could be more general than just every other row/column. For instance, there are times I need every 3rd row to be colored, or I need a set of 2 rows colored every 2 rows. Something like Row 1: color 1 Row 2: color 1 Row 3: color 2 Row 4: color 2 Row 5: color 1 Row 6: color 1 Row 7: color 2 Row 8: color 2 etc. I've done this manually to date, but having a general description or way to handle this would be *very* nice. As to how difficult it would be to implement? I don't know. I'm not working in that part of the code. However, I'll bet an interested (coding) party would have an easier time going about it if there were an actual use-case/specification. Cheers, Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] master eat CPU even when it does nothing
At 1:12am -0400 Sat, 29 Oct 2011, Jean-baptiste Faure wrote: I already noticed these cpu problems in my own build since 2 or 3 days, but I can't be more precise. Does somebody has a clue about the cause (which commit?) of this CPU consumption? I don't specifically, but my hunch is that it's some interaction with the newly merged GTK code. I've noticed the same CPU utilization, but -- like you -- have been unable to say exactly what triggers it; I can only say when I started noticing it. Cheers, Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
[Libreoffice] how to 'make' a single target?
Hullo List, I'm currently working in the sc/ module, and I'm in the make small change, re-compile, make small change, re-compile stage. This is proving very cumbersome, however, as I'm unable to re-make just the affected files. For instance, note my attached output, showing the output of $ make -j1 | head; sleep; make -j1 | head Should not at least the first 3 completed executions no longer need to be re-executed? This is frustrating because it results in a latency of 5+ minutes on my slow 2-core machine before I can see the results of a code change. Are there any pointers for me on how I can compile _just the exact_ piece of code on which I'm working (and affected other snippets, of course)? Thanks, Kevin $ . Env.Host.sh $ cd sc/ $ echo; make -j1 | head; echo -e \n-\nFinished 1st round\n-; sleep 2s; make -j1 | head [ build CXX ] sc/source/filter/dif/difexp R=[...] S=$R/libreoffice O=$S/solver/unxlngx6.pro W=$S/workdir/unxlngx6.pro mkdir -p $W/CxxObject/sc/source/filter/dif/ $W/Dep/CxxObject/sc/source/filter/dif/ ccache g++ -DCPPU_ENV=gcc3 -DENABLE_GRAPHITE -DENABLE_GTK -DENABLE_LAYOUT=0 -DENABLE_LAYOUT_EXPERIMENTAL=0 -DGCC -DGXX_INCLUDE_PATH=/usr/local/include/c++/4.6.1 -DHAVE_GCC_VISIBILITY_FEATURE -DHAVE_THREADSAFE_STATICS -DLINUX -DNDEBUG -DOPTIMIZE -DOSL_DEBUG_LEVEL=0 -DPRODUCT -DSUPD=350 -DUNIX -DUNX -DVCL -DX86_64 -D_PTHREADS -D_REENTRANT-Wall -Wendif-labels -Wextra -Wshadow -Wsign-promo -Woverloaded-virtual -Wno-non-virtual-dtor -fPIC -fmessage-length=0 -fno-common -pipe -fvisibility=hidden -fvisibility-inlines-hidden -std=c++0x -DEXCEPTIONS_ON -fexceptions -fno-enforce-eh-specs -O2 -c $S/sc/source/filter/dif/difexp.cxx -o $W/CxxObject/sc/source/filter/dif/difexp.o -MMD -MT $W/CxxObject/sc/source/filter/dif/difexp.o -MP -MF $W/Dep/CxxObject/sc/source/filter/dif/difexp.d -I$S/sc/source/filter/dif/ -I$O/inc/stl -I$S/sc/source/core/inc -I$S/sc/source/filter/inc -I$S/sc/source/ui/inc -I$S/sc/inc -I$S/sc/inc/pch -I$W/Misc/sc/ -I$O/inc/external -I$O/inc -I$O/include -I$S/solenv/unxlngx6/inc -I$S/solenv/inc -I$S/res -I$S/solenv/inc/Xp31 -I$W/oox/inc/ -I$O/inc -I$O/inc/offapi -I$O/inc/udkapi touch /home/kevin/devel/libreoffice/workdir/unxlngx6.pro/Dep/CxxObject/sc/source/filter/dif/difexp.d [ build CXX ] sc/source/filter/dif/difimp R=[...] S=$R/libreoffice O=$S/solver/unxlngx6.pro W=$S/workdir/unxlngx6.pro mkdir -p $W/CxxObject/sc/source/filter/dif/ $W/Dep/CxxObject/sc/source/filter/dif/ ccache g++ -DCPPU_ENV=gcc3 -DENABLE_GRAPHITE -DENABLE_GTK -DENABLE_LAYOUT=0 -DENABLE_LAYOUT_EXPERIMENTAL=0 -DGCC -DGXX_INCLUDE_PATH=/usr/local/include/c++/4.6.1 -DHAVE_GCC_VISIBILITY_FEATURE -DHAVE_THREADSAFE_STATICS -DLINUX -DNDEBUG -DOPTIMIZE -DOSL_DEBUG_LEVEL=0 -DPRODUCT -DSUPD=350 -DUNIX -DUNX -DVCL -DX86_64 -D_PTHREADS -D_REENTRANT-Wall -Wendif-labels -Wextra -Wshadow -Wsign-promo -Woverloaded-virtual -Wno-non-virtual-dtor -fPIC -fmessage-length=0 -fno-common -pipe -fvisibility=hidden -fvisibility-inlines-hidden -std=c++0x -DEXCEPTIONS_ON -fexceptions -fno-enforce-eh-specs -O2 -c $S/sc/source/filter/dif/difimp.cxx -o $W/CxxObject/sc/source/filter/dif/difimp.o -MMD -MT $W/CxxObject/sc/source/filter/dif/difimp.o -MP -MF $W/Dep/CxxObject/sc/source/filter/dif/difimp.d -I$S/sc/source/filter/dif/ -I$O/inc/stl -I$S/sc/source/core/inc -I$S/sc/source/filter/inc -I$S/sc/source/ui/inc -I$S/sc/inc -I$S/sc/inc/pch -I$W/Misc/sc/ -I$O/inc/external -I$O/inc -I$O/include -I$S/solenv/unxlngx6/inc -I$S/solenv/inc -I$S/res -I$S/solenv/inc/Xp31 -I$W/oox/inc/ -I$O/inc -I$O/inc/offapi -I$O/inc/udkapi touch /home/kevin/devel/libreoffice/workdir/unxlngx6.pro/Dep/CxxObject/sc/source/filter/dif/difimp.d [ build CXX ] sc/source/filter/excel/colrowst R=[...] S=$R/libreoffice O=$S/solver/unxlngx6.pro W=$S/workdir/unxlngx6.pro mkdir -p $W/CxxObject/sc/source/filter/excel/ $W/Dep/CxxObject/sc/source/filter/excel/ ccache g++ -DCPPU_ENV=gcc3 -DENABLE_GRAPHITE -DENABLE_GTK -DENABLE_LAYOUT=0 -DENABLE_LAYOUT_EXPERIMENTAL=0 -DGCC -DGXX_INCLUDE_PATH=/usr/local/include/c++/4.6.1 -DHAVE_GCC_VISIBILITY_FEATURE -DHAVE_THREADSAFE_STATICS -DLINUX -DNDEBUG -DOPTIMIZE -DOSL_DEBUG_LEVEL=0 -DPRODUCT -DSUPD=350 -DUNIX -DUNX -DVCL -DX86_64 -D_PTHREADS -D_REENTRANT-Wall -Wendif-labels -Wextra -Wshadow -Wsign-promo -Woverloaded-virtual -Wno-non-virtual-dtor -fPIC -fmessage-length=0 -fno-common -pipe -fvisibility=hidden -fvisibility-inlines-hidden -std=c++0x -DEXCEPTIONS_ON -fexceptions -fno-enforce-eh-specs -O2 -c $S/sc/source/filter/excel/colrowst.cxx -o $W/CxxObject/sc/source/filter/excel/colrowst.o -MMD -MT $W/CxxObject/sc/source/filter/excel/colrowst.o -MP -MF $W/Dep/CxxObject/sc/source/filter/excel/colrowst.d -I$S/sc/source/filter/excel/ -I$O/inc/stl -I$S/sc/source/core/inc -I$S/sc/source/filter/inc -I$S/sc/source/ui/inc -I$S/sc/inc -I$S/sc/inc/pch -I$W/Misc/sc/ -I$O/inc/external -I$O/inc -I$O/include -I$S/solenv/unxlngx6/inc
[Libreoffice-commits] .: sc/source
sc/source/core/data/cell.cxx |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) New commits: commit dfab4794d7cb98bb993ada22165da84168f89d00 Author: Kevin Hunter hunt...@earlham.edu Date: Thu Oct 27 22:34:15 2011 -0400 Translate message to English And elaborate slightly. diff --git a/sc/source/core/data/cell.cxx b/sc/source/core/data/cell.cxx index 0a4bd3c..49c94a5 100644 --- a/sc/source/core/data/cell.cxx +++ b/sc/source/core/data/cell.cxx @@ -275,7 +275,7 @@ void ScBaseCell::Delete() delete (ScNoteCell*) this; break; default: -OSL_FAIL(Unbekannter Zellentyp); +OSL_FAIL(Attempt to Delete() an unknown CELLTYPE); break; } } ___ Libreoffice-commits mailing list Libreoffice-commits@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
Re: [Libreoffice] semantics of ScBaseCell* lclCloneCell
At 2:49am -0400 Thu, 27 Oct 2011, Stephan Bergmann wrote: On 10/27/2011 07:10 AM, Kevin Hunter wrote: I'm nosing around ScBaseCell in sc/source/core/data/cell.cxx, and I'm curious about the semantics of the function lclCloneCell. Specifically, when would that function ever return a NULL pointer? Does Calc not know about all its cell types? Perhaps extensions are able to add their own cell types and still use this function? (Then why would they use this function?!) Not an sc expert, but from looking at the code it looks to me like the default case shall never be reached, but is there to (a) silence compiler warnings and (b) fire an OSL_FAIL in case there is a programming error that causes the case to be reached nonetheless (I usually put a this cannot happen into such OSL_FAILs, in good old Knuth tradition). And since the function still needs to syntactically return something, even in this unreachable case, it returns the canonic null value. Huh. Then why use a switch? Why not use an if-else set of clauses? I recognize that this function may be called a lot, but does an if vs switch statement mean /that/ much in terms of performance? In any event, thanks for the response. Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
[Libreoffice] semantics of ScBaseCell* lclCloneCell
Hullo Calc Devs, I'm nosing around ScBaseCell in sc/source/core/data/cell.cxx, and I'm curious about the semantics of the function lclCloneCell. Specifically, when would that function ever return a NULL pointer? Does Calc not know about all its cell types? Perhaps extensions are able to add their own cell types and still use this function? (Then why would they use this function?!) Thanks, Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] feature/gtk3 merged ...
On 10/25/2011 04:32 PM, Noel Grandin wrote: Getting there :) almost have a complete build on my machine :) After a long build, I'm there. As I'm not mired in that part of LibO internals, for what visible changes should I be looking? Heh, or put differently, what Ctrl+F should I use on http://wiki.documentfoundation.org/ReleaseNotes/3.5 ? ;-) Cheers, Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] [Libreoffice-commits] .: writerperfect/source
At 7:24pm -0400 Mon, 24 Oct 2011, Fridrich Štrba wrote: New commits: commit 38cf494f90d19d1673773437cd52e8f0cfbf4eb5 Author: Fridrich Štrba fridrich.st...@bluewin.ch Date: Tue Oct 25 01:11:49 2011 +0200 White-space change to fix messy mix of different coding styles [...] diff --git a/writerperfect/source/filter/FontStyle.cxx b/writerperfect/source/filter/FontStyle.cxx index 5743e1e..ac501c6 100644 void FontStyleManager::clean() { for (std::mapWPXString, FontStyle *, ltstr::iterator iter = mHash.begin(); - iter != mHash.end(); ++iter) +iter != mHash.end(); iter++) { @@ -65,7 +63,7 @@ void FontStyleManager::writeFontsDeclaration(OdfDocumentHandler *pHandler) const for (std::mapWPXString, FontStyle *, ltstr::const_iterator iter = mHash.begin(); - iter != mHash.end(); ++iter) +iter != mHash.end(); iter++) Err, in terms of coding style, is a pre to post increment operator merely a whitespace change? I seem to recall a message or two on the subject but I'm having a difficult time tracking them down just now. About 8 months ago, perhaps? Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] [Libreoffice-commits] .: writerperfect/source
At 9:48pm -0400 Mon, 24 Oct 2011, Kevin Hunter wrote: At 7:24pm -0400 Mon, 24 Oct 2011, Fridrich Štrba wrote: for (std::mapWPXString, FontStyle *, ltstr::const_iterator iter = mHash.begin(); - iter != mHash.end(); ++iter) + iter != mHash.end(); iter++) Err, in terms of coding style, is a pre to post increment operator merely a whitespace change? I seem to recall a message or two on the subject but I'm having a difficult time tracking them down just now. About 8 months ago, perhaps? Kevin: open mouth, insert foot. I apologize. Just perusing commits, should've kept going. I take it the pre to post is needed to fix the build. Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] minutes of tech. steering call ...
At 4:39am -0400 Fri, 21 Oct 2011, Michael Meeks wrote: [one /could/ work toward interprocess extensions ... ] But of course, I personally think there is much lower hanging fruit in the calc core ;-) Noted and agreed! I'm just sticking my nose in all things LO, probably stepping on toes as I do (sorry!). I was more posing the question that I wasn't aware had gone by. However, it sounds like y'all've already thought about that, or it's a everyone already knows this answer. Cheers, Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] minutes of tech. steering call ...
At 4:11am -0400 Fri, 21 Oct 2011, Stephan Bergmann wrote: On 10/21/2011 02:06 AM, Kevin Hunter wrote: 5. That API definition will be a *lot* of work, but hopefully somewhat thought out already through only a mild reengineering of the current binary API. The UNO API is already there. Or what do you mean? I was talking about an API that is not dependent on an ABI. But I freely admit I know very little about ABIs, so I may have just conflated that term. See below. The upside is that if we're talking a major version change, /now/ would be the time to do this. A downside is that you would still need to maintain (and build!) the UNO runtime for the MSVC ABI. This may be the crux of what I'm not getting, but why? Why can't a protocol be, say, text-based via (local, or other) socket? In my mind, I see two independent programs, from two different compilers, using the OS and something akin to pipes to communicate. I admit it might a smidgen slower to do it that way, but do people actually use LO in HPC scenarios? (And I fully accept that they might, I just haven't seen it yet in my various interactions.) Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] make experts: progress information?
At 5:16am -0400 Fri, 21 Oct 2011, Michael Meeks wrote: On Thu, 2011-10-20 at 14:20 -0400, Kevin Hunter wrote: That said, I anecdotally note on my limited-in-hardware machine, that a consecutive run of make is almost instantaneous. Would a make -pn really be that expensive? Try running a no-op incremental make in tail_build :-) it's more like 30+ seconds: now that of course also needs some love, and it is some reasonably fun pure comp-sci type problem with no real need to understand any of the LibO code-base; if someone wants an easy hack ;-) Kevin: 0 Everyone else: 1 Touché, Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] Calc - a better design ...
Hi Michael, I'm hesitant to ask this because I cannot personally promise time toward LO (only on an as-can basis, which is dismally small ATM), but hey, you can easily so no. :-) You mention really need[ing] a whiteboard to elaborate properly. I submit that putting your thoughts together, perhaps in picture form and available on the LO wiki, or put together as a small video to Youtube, would be extremely useful to casual LO coders like myself. As an individual volunteer without a face-to-face LO team member against whom to bounce ideas, I'd thoroughly love an actual-paid-engineer's thoughts on how best to proceed on this front. I'm personally motivated for Calc because in my science career, I really have to bend over backwards to make Calc work effectively for my needs where Excel works just plain better/faster/smaller, yet I philosophically have stuck myself with Free software. To me, one of the biggest areas of weakness for LO, after the various random crashes (which are getting better!), is the memory bloat, and speed. It's not features. I'm happy to mess with Ixion (and indeed have poked at it some already), but I imagine the going would be much more useful with a LO core developer's guiding thoughts, including technical end-goals and migration paths. So, would you have the time to create a screencast or video of yourself in front of a whiteboard? Cheers, Kevin At 9:42am -0400 Wed, 27 Jul 2011, Michael Meeks wrote: Hi Kevin, On Wed, 2011-07-27 at 06:56 -0400, Kevin Hunter wrote: At 6:07am -0400 Wed, 27 Jul 2011, Michael Meeks wrote: but IMHO -the- fundamental design problem with calc, is something quite banal - the concept that a spreadsheet is built from cells: without breaking that basic misconception I don't think we can do any of the really interesting space / time optimisations we need to do. Can you elaborate a little on this fundamental design flaw ? Hah - so, yes - and not easily - I'd really need a whiteboard. As a naive and unfortunately focused elsewhere personality, I don't immediately know of a better model for creating a spreadsheet. So - of course, the first thing to say is that (at a first pass), I'd want the UI to continue to look the same - all that would change would be the underlying model. Is it just a problem of sparsity? Or is there a much more sophisticated method for memory sharing of various similar cell attributes, perhaps analogous to CSS? Here is the thing - since we work on a per-cell basis, all of our type checking, and formula adaptation, and storage, and dependencies etc. are all ultimately per-cell based. This (crudely) means that we have an O(n) where n is the number of cells in vast numbers of operations where we do not want it. It also tends to explode storage and computation time around dependencies - which is a substantial cost. NB. much of this is quite normal for a spreadsheet FWIW, I believe Excel is not completely dis-similar; however I think we can do better with much improved (much more complex / slow) data structure design that will ultimately be far faster to execute. Take a banal example; when we do a SUM() of a million rows containing plain doubles, we would want to (at root) have a function that [ in the ideal case ] does: double sum (double *array, sal_Int64 nItems); Which we can shove onto a gpu, multi-thread if nItems is big, etc. etc. unfortunately approaching this limit is basically impossible in calc. Instead for this case we would do a very slow, pointer-chasing iteration over a million scattered ScCell's - we would do type checking - to ensure that each one was a double, and only then would we add / accumulate them. Of course none of that can be pushed to a GPU, none of it can be SIMD accelerated, and threading it is rather hard. Now ... if we stored contiguous spans of identically typed items [ ie. a column of doubles ], as value runs in our data structures; currently we (amazingly) have arrays of (row/cell*) pairs incidentally. Then we could push a lot of branch-heavy, expensive type checking, and lots of pointer chasing outside the main-loop, we'd also use rather less memory. That's fine for doubles of course; but the really huge wins come from an entirely new model of dependencies and areas containing formulae - I propose only storing a base formula, and an iterator to describe how that formula changes down a row: to compress an entire column of formulae to a single formula. Futhermore on top of that substantially discarding the existing dependency mechanism such that a single-cell change in a contiguous range of doubles would have a shared broadcast on that whole range (with the specific detail of what cell changed), such that that could be turned into a specific row (or row range) to re-compute in any dependent by comparing the base formula, plus it's iterator with the range that changed
Re: [Libreoffice] minutes of tech. steering call ...
At 4:52pm -0400 Thu, 20 Oct 2011, Michael Meeks wrote: http://wiki.documentfoundation.org/Development/LibreOffice4 + getting stuck into Windows / mingw build etc. From the wiki page, one of the concerns is binary incompatibility. I assume this is in reference to extensions? Question: is there merit to moving toward an enforced sub-process model for extensions? My first thought is that this would do a couple of things: 1. This would protect LO from any extensions' instability. If an extension attempts an illegal operation, only it would be shut down, not whole of LO. 2. By only shutting down a buggy extension, we reduce potentially misleading bug reports from users who wouldn't otherwise know the difference. 3. It would allow extensions to still be built with MSVC, regardless of what compiler the LO core project uses. 4. Going forward, this would force a well-defined protocol interaction between LO and any extensions. This has implications for unit tests and security, among other things. 5. That API definition will be a *lot* of work, but hopefully somewhat thought out already through only a mild reengineering of the current binary API. 6. Interprocess communication for certain tasks will be potentially slower. 7. ... ? The upside is that if we're talking a major version change, /now/ would be the time to do this. Thoughts? Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
[Libreoffice] make experts: progress information?
Hi LO Make experts, Is it possible to get subproject build progress information dynamically from Make? Among other things, moving all projects to tail_build currently reduces the usefulness of the Zenity SVG clock build progress meter. I'm looking at snippets like http://snippets.dzone.com/posts/show/6843 Which is a sexy command line solution for a single Makefile. What I don't know is how well something like this could be implemented for our many scattered makefiles. Beyond myself, are others interested in having a finer-grained indication of where is the build currently in the whole process?? Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
[Libreoffice-commits] .: autodoc/inc autodoc/source
autodoc/inc/ary_i/ci_text2.hxx |2 +- autodoc/source/ary_i/kernel/ci_text2.cxx | 12 2 files changed, 1 insertion(+), 13 deletions(-) New commits: commit 60f108553552eba8441589c47294f252e4ace1e5 Author: Kevin Hunter hunt...@earlham.edu Date: Mon Oct 10 13:58:25 2011 -0400 Simplify logic to use std::vector's .empty() No need to muck about with iterators, adding a loop, and 2 function calls to test for empty: it's a std::vector under the hood, so use .empty(), and inline it. diff --git a/autodoc/inc/ary_i/ci_text2.hxx b/autodoc/inc/ary_i/ci_text2.hxx index 8e1c202..eef1d63 100644 --- a/autodoc/inc/ary_i/ci_text2.hxx +++ b/autodoc/inc/ary_i/ci_text2.hxx @@ -72,7 +72,7 @@ class DocuTex2 DYN DocuToken let_drToken ); const TokenListTokens() const { return aTokens; } -boolIsEmpty() const; +boolIsEmpty() const { return aTokens.empty(); } const String TextOfFirstToken() const; String Access_TextOfFirstToken(); diff --git a/autodoc/source/ary_i/kernel/ci_text2.cxx b/autodoc/source/ary_i/kernel/ci_text2.cxx index 00a5a7e..dea062f 100644 --- a/autodoc/source/ary_i/kernel/ci_text2.cxx +++ b/autodoc/source/ary_i/kernel/ci_text2.cxx @@ -77,18 +77,6 @@ DocuTex2::AddToken( DYN DocuToken let_drToken ) aTokens.push_back(let_drToken); } -bool -DocuTex2::IsEmpty() const -{ -for ( ary::inf::DocuTex2::TokenList::const_iterator -iter = aTokens.begin(); - iter != aTokens.end(); -) -{ -return false; -} -return true; -} using csi::dsapi::DT_TextToken; ___ Libreoffice-commits mailing list Libreoffice-commits@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
Re: [Libreoffice] [PATCH] [PUSHED] .: stoc/source
At 3:11am -0400 Wed, 05 Oct 2011, Kevin Hunter wrote: At 2:58am -0400 Wed, 05 Oct 2011, Stephan Bergmann wrote: (I assume you already stated somewhere what license your contributions are under, even though that's not explicitly listed at http://wiki.documentfoundation.org/Development/Developers.) Heh, yeah, awhile ago. Had a whole discussion with the Meeks. :-) http://lists.freedesktop.org/archives/libreoffice/2010-October/001178.html In short: LGPLv3. Having talked with Michael out of band, I'm now convinced of the viability and need for 3+ and MPL. Please accept my patches to the LibreOffice project, both prior and yet to come, as LGPLv3+/MPL1.1. Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] masterbuild 2011-10-03.. Linux x86: oosplash not found
At 5:51pm -0400 Fri, 07 Oct 2011, Cor Nouws wrote: extracting to a tmp folder and then running (for i in ../*.deb ; do dpkg-deb -x $i . ; done) ~/master20111003Deb.log Looks as if I need to add an extra option/argument to get output in the log? I'm about to get schooled in Bash, I'm sure, but if you're looking to get both stdout and stderr into the log file, would that be '' (ensure no space between ampersand and carrot), as opposed to ? Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
[Libreoffice] master build breakage at unoil.jar
Hullo List, I'm currently unable to build master. It's breaking in tail_build with [...]/solenv/gbuild/Package.mk:33: *** gb_Deliver_deliver: file does not exist in solver, and cannot be delivered: [...]/solver/unxlngx6.pro/bin/unoil.jar. Stop. Of note, is that I'm using --without-java, so why is it attempting to create a .jar file? That may be a red herring, but I do know that the break is between fed75d001e6a48a84bc46606848af3ba0219df29 Fri Oct 7 23:32:09 2011 +0200 'set the correct url for vba unit test' and c937997abd00451bd9b652083a34dd9027edb96a Fri Oct 7 21:53:56 2011 -0500 'Revert cppcheck scope reduction of var in soltools/...javadep.c' I suspect it's to do with one of the gbuild conversion commits, an area in which I'm woefully ignant. Help? Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] oox/source/drawingml/customshapepresets.cxx is just (Offensive Word Found In Message) too much for gcc
At 6:28am -0400 Thu, 06 Oct 2011, Norbert Thiebaud wrote: 2011/10/6 Norbert Thiebaud: I'll give it a shot... Not that I expect it to make a big difference... since most of the compiles are ccached... As an nth data point on the matter, I've been using ccache for awhile, and my builds take longer. Anecdotally (because I'm not focused on ccache specifically), I turned it off the other day, and my builds reduced from about 2 hours to 1h15m.* For reference, my ccache size is 8G, but only 1.8 G has been used. My hits at about 12,000 are about half of my misses. Cheers, Kevin * Both of those numbers are _very_ rough averages (created from memory of my alias make='time make' output), my builds compile in the background, at nice +19, on a puny dual-core 4G machine with a latent rotating HDD. The majority of my builds are ./g pull -r; make used for testing. The less rough average is the make distclean; ./g pull -r; make workflow, which reduced a 3h30m compile to about 2h05m on the same hardware. ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
[Libreoffice] memory leak or tricky LO foo?
Hullo List, In idly reading LO code (trying yet again to spend time wrapping my head around anything in the code base), I'm puzzled by this snippet (with minor format alteration for email) from svl/source/numbers/zforlist.cxx (currently around line 2226). It seems to me that pNewFormat is a memory leak, but I don't know the LO well enough to state that. Specifically, is aFTable.Insert saving the pointed to memory? Or does the SvNumberformat ctor save it somehow? Otherwise, immediately after the if, we reset pNewFormat to a new block of memory, apparently forgetting the old. This is pattern is replicated a few times in this function, so I'd like to ask before I set about creating a patch. - // Boolean aFormatCode = pFormatScanner-GetBooleanString(); pNewFormat = new SvNumberformat( aFormatCode, pFormatScanner, pStringScanner, nCheckPos, ActLnge ); pNewFormat-SetType(NUMBERFORMAT_LOGICAL); pNewFormat-SetStandard(); if ( !aFTable.Insert( CLOffset + SetIndexTable( NF_BOOLEAN, ZF_STANDARD_LOGICAL ), pNewFormat) ) delete pNewFormat; // Text aFormatCode = '@'; pNewFormat = new SvNumberformat( aFormatCode, pFormatScanner, pStringScanner, nCheckPos, ActLnge ); pNewFormat-SetType(NUMBERFORMAT_TEXT); pNewFormat-SetStandard(); if ( !aFTable.Insert( CLOffset + SetIndexTable( NF_TEXT, ZF_STANDARD_TEXT ), pNewFormat) ) delete pNewFormat; - Thanks much for any/all advices! Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] [PATCH] [PUSHED] .: stoc/source
At 2:58am -0400 Wed, 05 Oct 2011, Stephan Bergmann wrote: On 10/04/2011 11:01 PM, Kevin Hunter wrote: Here is a second patch that compiles, /should/ respond to what you just confirmed was the original intent, but is untested. (It was a random drive by patching.) Specifically, I suppose it's obvious that this now changes the semantics of it actually used to do. If you know how to test it ... Yes, that's how I would have done it, too. Pushed now, thanks again. (I assume you already stated somewhere what license your contributions are under, even though that's not explicitly listed at http://wiki.documentfoundation.org/Development/Developers.) Heh, yeah, awhile ago. Had a whole discussion with the Meeks. :-) http://lists.freedesktop.org/archives/libreoffice/2010-October/001178.html In short: LGPLv3. I should update that list, but I figure I'm yet a minor contributor, etc. Cheers, Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] [PATCH] [PUSHED] .: stoc/source
At 2:58am -0400 Wed, 05 Oct 2011, Stephan Bergmann wrote: On 10/04/2011 11:01 PM, Kevin Hunter wrote: Here is a second patch that compiles, /should/ respond to what you just confirmed was the original intent, but is untested. (It was a random drive by patching.) Specifically, I suppose it's obvious that this now changes the semantics of it actually used to do. If you know how to test it ... Yes, that's how I would have done it, too. Pushed now, thanks again. (I assume you already stated somewhere what license your contributions are under, even though that's not explicitly listed at http://wiki.documentfoundation.org/Development/Developers.) Incidentally, do we have a set of tests for this? I wouldn't know where to begin. This was truly a drive-by reading of a commit and surrounding code. Thanks, Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] [PATCH] [PUSHED] .: stoc/source
At 5:39am -0400 Wed, 05 Oct 2011, Stephan Bergmann wrote: Unfortunately, there's no good unit tests for this code. Blame it on me for taking the all too easy road out and committing the fix without doing the boring ^H^H^H joyful work of adding a test for it first. There's no blame,[1] only hopeful questions. As I already alluded -- flat out said -- *I* don't know how to get at this particular code, and I'm worried that having now corrected the logic, we're changing semantics for some (incorrect) code that relies on the broken behavior. Ah well, I suppose it'll work itself out in the end. Cheers, Kevin [1] It occurs to me that this is a great point for OS software: you *can't* blame anyone. Unlike in proprietary software, where (supposedly) the boss always wants to be able to blame someone ... the flip side is that we're safe as developers, no? ;-) ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] [Libreoffice-commits] .: stoc/source
At 4:15pm -0400 Tue, 04 Oct 2011, Stephan Bergmann wrote: Thanks a lot for the patch. I think the real intent always was to actually look through all the returned getSuperclasses(), and the error that superclasses past the first one are effectively ignored has never been noticed. Excellent. Was wondering, but don't yet know LO well enough to make such declarations. Well, modulo any errors on my part, the logic I sent in patch 1 should be the same as what was originally there, but I hope easier to read/see for comparison/fixing. Here is a second patch that compiles, /should/ respond to what you just confirmed was the original intent, but is untested. (It was a random drive by patching.) Specifically, I suppose it's obvious that this now changes the semantics of it actually used to do. If you know how to test it ... Cheers, Kevin From 0543ea7fad724856ee1ed837129808815eb44480 Mon Sep 17 00:00:00 2001 From: Kevin Hunter hunt...@earlham.edu Date: Tue, 4 Oct 2011 12:58:10 -0400 Subject: [PATCH] Fix logic of isDerivedFrom function From an email conversation with Stephen Bergmann I think the real intent always was to actually look through all the returned getSuperclasses(), and the error that superclasses past the first one are effectively ignored has never been noticed. --- stoc/source/inspect/introspection.cxx | 25 +++-- 1 files changed, 7 insertions(+), 18 deletions(-) diff --git a/stoc/source/inspect/introspection.cxx b/stoc/source/inspect/introspection.cxx index 36f1acc..7d62578 100644 --- a/stoc/source/inspect/introspection.cxx +++ b/stoc/source/inspect/introspection.cxx @@ -110,29 +110,18 @@ sal_Bool isDerivedFrom( ReferenceXIdlClass xToTestClass, ReferenceXIdlClass { Sequence ReferenceXIdlClass aClassesSeq = xToTestClass-getSuperclasses(); const ReferenceXIdlClass* pClassesArray = aClassesSeq.getConstArray(); + sal_Int32 nSuperClassCount = aClassesSeq.getLength(); -sal_Int32 i; -for( i = 0 ; - i nSuperClassCount ; - /* No increment expression needed as the body always - * returns, and in fact MSVC warns about unreachable code if - * we include one. On the other hand, what's the point in - * using a for loop here then if all we ever will look at is - * pClassesArray[0] ? - */ ) +for ( sal_Int32 i = 0; i nSuperClassCount; ++i ) { const ReferenceXIdlClass rxClass = pClassesArray[i]; -if( xDerivedFromClass-equals( rxClass ) ) -{ -// Treffer + +if ( xDerivedFromClass-equals( rxClass ) || + isDerivedFrom( rxClass, xDerivedFromClass ) + ) return sal_True; -} -else -{ -// Rekursiv weitersuchen -return isDerivedFrom( rxClass, xDerivedFromClass ); -} } + return sal_False; } -- 1.7.1 ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
[Libreoffice] [PATCH] simplify IsEmpty() logic in autodoc
Hullo List, A simple driveby patch that makes use of the standard library. Cheers, Kevin From a2a9a1363a3a2ba0f7415295e7ebabb03acfe724 Mon Sep 17 00:00:00 2001 From: Kevin Hunter hunt...@earlham.edu Date: Tue, 4 Oct 2011 18:56:18 -0400 Subject: [PATCH] Simplify logic to use std::vector's .empty() No need to muck about with iterators, adding a loop, and 2 function calls to test for empty: it's a std::vector under the hood, so use .empty(), and inline it. --- autodoc/inc/ary_i/ci_text2.hxx |2 +- autodoc/source/ary_i/kernel/ci_text2.cxx | 12 2 files changed, 1 insertions(+), 13 deletions(-) diff --git a/autodoc/inc/ary_i/ci_text2.hxx b/autodoc/inc/ary_i/ci_text2.hxx index 8e1c202..eef1d63 100644 --- a/autodoc/inc/ary_i/ci_text2.hxx +++ b/autodoc/inc/ary_i/ci_text2.hxx @@ -72,7 +72,7 @@ class DocuTex2 DYN DocuToken let_drToken ); const TokenListTokens() const { return aTokens; } -boolIsEmpty() const; +boolIsEmpty() const { return aTokens.empty(); } const String TextOfFirstToken() const; String Access_TextOfFirstToken(); diff --git a/autodoc/source/ary_i/kernel/ci_text2.cxx b/autodoc/source/ary_i/kernel/ci_text2.cxx index 00a5a7e..dea062f 100644 --- a/autodoc/source/ary_i/kernel/ci_text2.cxx +++ b/autodoc/source/ary_i/kernel/ci_text2.cxx @@ -76,18 +76,6 @@ DocuTex2::AddToken( DYN DocuToken let_drToken ) } aTokens.push_back(let_drToken); } - -bool -DocuTex2::IsEmpty() const -{ -for ( ary::inf::DocuTex2::TokenList::const_iterator -iter = aTokens.begin(); - iter != aTokens.end(); -) -{ -return false; -} -return true; } using csi::dsapi::DT_TextToken; -- 1.7.1 ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
[Libreoffice] management of files in src/
Hullo List, The files that get downloaded and placed in the src/ directory, resembling something akin to: 63ddc5116488985e820075e65fbe6aa4-openssl-0.9.8o.tar.gz 09357cc74975b01714e00c5899ea1881-pixman-0.12.0.tar.gz 0b49ede71c21c0599b0cc19b353a6cb3-README_apache-commons.txt Do we have a mechanism for automatically removing unused/old external sources from the src/ directory? I think it's a cute idea to have the md5sums in the name, but short of some cut -b34- | sort command line foo, it makes seeing what cruft I have in that directory take 1 minute instead of 30 seconds. (Yes, I'm lazy.) Cheers, Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] bug in GCC 4.6.1?
At 4:14pm -0400 Wed, 28 Sep 2011, Julien Nabet wrote: I just found this gcc bugtracker : http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50383 But it's about GCC 4.7. Ah, shame on me. First hit on Google. GCC 4.7 still shares plenty of code (and this included) with 4.6+, so that's good enough for me; and yes, it's been reported. Thank you Julien, Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
[Libreoffice] bug in GCC 4.6.1?
Hullo List, I recall mention on the list that the LO build was finding bugs in various build programs, but I was only paying peripheral attention. Now I've run across something from GCC 4.6.1 that says: lto1: internal compiler error: in lto_symtab_register_decl, at lto-symtab.c:148 Please submit a full bug report, with preprocessed source if appropriate. when attempting to create libfrmlo.so $ g++ -shared [...] -o $W/LinkTarget/Library/libfrmlo.so Is this something we've already encountered, reported, or otherwise dealt with? Or is this another just me case. Thanks, Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
[Libreoffice] [PATCH] Update Zenity with progress icon notification
Hullo List, This patch adds a clock style progress, so one doesn't have to mouse over the Zenity icon to see where it currently stands. Very simple, very rudimentary, but already summat useful for me. Hope others find it so as well. Kevin From adb5e92ef23923089b0fed77261403fe001b59a4 Mon Sep 17 00:00:00 2001 From: Kevin Hunter hunt...@earlham.edu Date: Mon, 19 Sep 2011 14:28:43 -0400 Subject: [PATCH] Update Zenity with progress icon notification Add a clock style progress meter for the build via dynamically generated svg images. The colors are rather arbitrarily chosen, but with a very minor attempt to be readable by color-blind folks. A second round cut of this patch might make the fill and stroke colors configurable. --- solenv/bin/build.pl | 57 +++ 1 files changed, 57 insertions(+), 0 deletions(-) diff --git a/solenv/bin/build.pl b/solenv/bin/build.pl index 865e4d1..93a6952 100755 --- a/solenv/bin/build.pl +++ b/solenv/bin/build.pl @@ -1910,10 +1910,67 @@ sub print_announce { $announce_string .= $echo . =\n; print $announce_string; +my $percent_progress = $modules_started / $total_modules; zenity_tooltip($text); +my $zenity_icon = create_progress_svg($percent_progress); +zenity_icon( $zenity_icon ) if ( $zenity_icon ); + $module_announced{$prj}++; }; +sub create_progress_svg { +# The colors are rather arbitrarily chosen, but with a very minor attempt +# to be readable by color-blind folks. A second round cut might make +# the fill and stroke colors configurable. + +# This function currently leaves a stray svg file in the tmp directory. +# This shouldn't be too much of a problem, but if the next person in line +# wants to remove this, go ahead. + +if (! zenity_enabled()) { +return undef; +} + +my $pi = 3.1415923; +my $percentage = shift; +my $path = $percentage .5 ? '1,1' : '0,1'; + +# Creating a clock progress meter that starts from the 12 position; the +# cursor starts in the center (M50,50), then goes immediately vertical +# (v-50). Associating sin with x, because it's the /difference/ of where +# the cursor needs to move. Other relevent documentation may be found at +# +# http://www.w3.org/TR/SVG11/paths.html#PathElement and +# http://www.w3.org/TR/SVG11/images/paths/arcs02.svg + +my $x = 50 * sin( $percentage * 2 * $pi ); +my $y = 50 - 50 * cos( $percentage * 2 * $pi ); + +my $progress_file = $tmp_dir/lo_build_progress.svg; +open( PROGRESS, '', $progress_file ) or return undef; +print PROGRESS EOF; +?xml version=1.0 encoding=UTF-8 standalone=no? +svg + xmlns:dc=http://purl.org/dc/elements/1.1/; + xmlns:cc=http://creativecommons.org/ns#; + xmlns:rdf=http://www.w3.org/1999/02/22-rdf-syntax-ns#; + xmlns:svg=http://www.w3.org/2000/svg; + xmlns=http://www.w3.org/2000/svg; + version=1.1 + viewBox=0 0 100 100 + path + d=M50,50 v-50 a50,50 0 $path $x,$y z + fill=#aaa + stroke=#00f + stroke-width=1 / +/svg +EOF + +close( PROGRESS ); + +return $progress_file; +} + sub zenity_enabled { return 0 if ($ENV{ENABLE_ZENITY} ne TRUE); return 0 if (!defined $ENV{DISPLAY}); -- 1.7.1 ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] problem autoinput Calc in master
At 6:31am -0400 Fri, 16 Sep 2011, Markus Mohrhard wrote: I already observed the same problem some days ago but Kohei was unable to reproduce it. So now with a second observation of this unexpected behaviour I need to have a look at it. Dumb question for recreating it ... is it perhaps a 32/64 bit inconsistency? I recall noticing something along similar lines about 2 months ago, but forgot to follow up on it. Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] cppcheck duplicate if expressions in bulmaper.cxx (sd part)
At 2:19am -0400 Fri, 09 Sep 2011, Stephan Bergmann wrote: On 09/08/2011 10:47 PM, julien2412 wrote: Here is the pb : if( 0 )--- Found duplicate if expressions. { [...code...] } else if( 0 ) { [...code...] } I checked the history, it's there since 16/11/2000 (commit 5dc708093d1ee179099abdcbf0c6f649b1c4deeb) could anyone explain to me the purpose of this ? Just a typo ? It's preceded by comment to be implemented if module supports CJK a few lines above at sd/source/ui/func/bulmaper.cxx:73, so I would say its something like commented-out code that still awaits implementation... Not that it's terribly large in terms of computation/memory in the grand scheme of things, but why have it compiled in, as opposed to using an #if 0 ? Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] cppcheck duplicate if expressions in bulmaper.cxx (sd part)
At 12:45pm -0400 Wed, 14 Sep 2011, Kevin Hunter wrote: At 2:19am -0400 Fri, 09 Sep 2011, Stephan Bergmann wrote: On 09/08/2011 10:47 PM, julien2412 wrote: Here is the pb : if( 0 )--- Found duplicate if expressions. { [...code...] } else if( 0 ) { [...code...] } I checked the history, it's there since 16/11/2000 (commit 5dc708093d1ee179099abdcbf0c6f649b1c4deeb) could anyone explain to me the purpose of this ? Just a typo ? It's preceded by comment to be implemented if module supports CJK a few lines above at sd/source/ui/func/bulmaper.cxx:73, so I would say its something like commented-out code that still awaits implementation... Gah, sorry for the noise. Hadn't finished reading the entire thread, obviously. Late to the party Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] gcc/g++ compilation issue in desktop/splash
At 5:23am -0400 Thu, 25 Aug 2011, Caolán McNamara wrote: On Wed, 2011-08-24 at 18:06 +0100, Michael Meeks wrote: But then again, it links to libstdc++ ... libstdc++.so.6 = /usr/lib/libstdc++.so.6 (0xb7658000) ... There was a mention of a /usr/local/bin/g++, which makes me wonder about mismatching libstdc++.so.X. To humour me, what about... rm -rf external/*/lib/* rm -rf solver/*/*/lib/libstdc++* rm -rf solver/*/*/lib/libgcc_s.so* I went ahead and did that with no love. For reference: $ ldd sal/unxlngx6/lib/libuno_sal.so | grep stdc libstdc++.so.6 = /usr/local/lib64/libstdc++.so.6 (0x7f122c7cb000) At my novice gcc level, my research suggests it's to do with including libstdc++ in the build command. I still don't know exactly why the compilation fails with GCC v4.6 (compiled three weeks ago) yet doesn't with GCC v4.4, but I can fix it one of two ways: - $ hash -r $ which gcc g++; gcc --version | head -1; g++ --version | head -1 /usr/local/bin/gcc /usr/local/bin/g++ gcc (GCC) 4.6.1 g++ (GCC) 4.6.1 # fails $ gcc -o .../oosplash [...] # works; rest of build can now finish successfully $ gcc -o .../oosplash [...] -lstdc++ or $ g++ -o .../oosplash [...] - Have others had any issues compiling LO with GCC 4.6? It's frustrating and telling that I'm the only one noticing it. What voodoo have I overlooked? Thanks, Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
[Libreoffice] unnecessary build actions?
Hullo LibO Devs, In a search of my build.log for libuno_sal, the first reference I see points me to lines that look line this (newlines added for email clarity): - rm -f ../unxlngx6/lib/check_libuno_sal.so.3 mv ../unxlngx6/lib/libuno_sal.so.3 ../unxlngx6/lib/check_libuno_sal.so.3 [...]/solenv/bin/checkdll.sh [...] ../unxlngx6/lib/check_libuno_sal.so.3 rm -f ../unxlngx6/lib/libuno_sal.so cd ../unxlngx6/lib ln -s libuno_sal.so.3 libuno_sal.so Making:libuno_sal.so.3 ccache g++ [...] -o ../unxlngx6/lib/libuno_sal.so.3 [...] - Question: if we're making libuno_sal.so.3 afresh, what's the rational to bother performing various checks on it prior to making it? Further, I don't see where the first line's reference to check_libuno_sal.so.3 comes from. i.e. When did it get built prior? Similar question goes for line 2 above (mv ...). In a very similar vein, I see lots of this paradigm: ... rm -f path/to/file gcc -o path/to/file [...] ... That gcc command will just overwrite the file if it's there, no? Therefore, why execute rm? Thanks, Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
[Libreoffice] unnecessary build of obj/bootstrap.o?
Hullo List, In tracking down another issue, I've run across a number of object files that we appear to build but not use. Example: g++ -o sal/unxlngx6/obj/bootstrap.o [...] A few lines later in the build, we build this, with a few extra g++ arguments. This is the version that actually gets used elsewhere in the build: g++ -o sal/unxlngx6/slo/bootstrap.o [...] \ -fpic \ -DSHAREDLIB \ -D_DLL_ Question: what's the point of building the first one (if any)? If it's not supposed to be built, I'll leave fixing the build system to some other interested party as I'm not particularly keen on diving in when I'm thick into another problem. For reference, based on my build.log and the attached (inefficient) shell script, I believe this list of 112 object files are all good _candidates_ for the built but unused category Thanks, Kevin # This list of files suggests *candidates* of unnecessary compilation. I # don't know for sure that they aren't used after compilation, but I suspect # so given my build.log and this rather innefficient shell/perl script combo. $ cat get_files_of_interest.pl #!/usr/bin/env perl use strict; use warnings; while ( STDIN ) { # store each input line into $_ --if ( s/.* -o (\S+).*/$1/ ) { # if a substition made, then # $_ was a compile line with -o in it. i.e. # we're looking for the object file lines # Now, only print the line if the output of above was # at least two directories deep. i.e. if it at least # has a form like dir/dir/file.so or dir/dir/file.o # this will not match lines like -o dir/file.o or # -o file.o print if s|.*/(\w+/\w+/\w+\.s?o)|$1|; --} } $ for i in $(./get_files_of_interest.pl build.log | sort -u); do COUNT=$(\grep -c $i build.log) [[ 1 == $COUNT ]] find . -path */$i done | sort unused_object_files.txt Begin files: ./bean/unxlngx6/slo/officebean_version.o ./bridges/unxlngx6/slo/java_uno_version.o ./connectivity/unxlngx6/slo/hsqldb_version.o ./connectivity/unxlngx6/slo/mozab_dflt_version.o ./connectivity/unxlngx6/slo/mozabdrv_dflt_version.o ./desktop/unxlngx6/obj/copyright_ascii_ooo.o ./desktop/unxlngx6/obj/copyright_ascii_sun.o ./desktop/unxlngx6/slo/dp_activepackages.o ./desktop/unxlngx6/slo/dp_commandenvironments.o ./desktop/unxlngx6/slo/dp_configurationbackenddb.o ./desktop/unxlngx6/slo/dp_configuration.o ./desktop/unxlngx6/slo/dp_executablebackenddb.o ./desktop/unxlngx6/slo/dp_executable.o ./desktop/unxlngx6/slo/dp_extbackenddb.o ./desktop/unxlngx6/slo/dp_extensionmanager.o ./desktop/unxlngx6/slo/dp_informationprovider.o ./desktop/unxlngx6/slo/dp_managerfac.o ./desktop/unxlngx6/slo/dp_manager.o ./desktop/unxlngx6/slo/dp_package.o ./desktop/unxlngx6/slo/dp_properties.o ./javaunohelper/unxlngx6/slo/juh_version.o ./javaunohelper/unxlngx6/slo/juhx_version.o ./jurt/unxlngx6/slo/jpipe_version.o ./sal/unxlngx6/obj/alloc_arena.o ./sal/unxlngx6/obj/alloc_cache.o ./sal/unxlngx6/obj/alloc_fini.o ./sal/unxlngx6/obj/alloc_global.o ./sal/unxlngx6/obj/bootstrap.o ./sal/unxlngx6/obj/byteseq.o ./sal/unxlngx6/obj/cipher.o ./sal/unxlngx6/obj/cmdargs.o ./sal/unxlngx6/obj/conditn.o ./sal/unxlngx6/obj/context.o ./sal/unxlngx6/obj/convertbig5hkscs.o ./sal/unxlngx6/obj/converter.o ./sal/unxlngx6/obj/converteuctw.o ./sal/unxlngx6/obj/convertgb18030.o ./sal/unxlngx6/obj/convertiso2022cn.o ./sal/unxlngx6/obj/convertiso2022jp.o ./sal/unxlngx6/obj/convertiso2022kr.o ./sal/unxlngx6/obj/convertsinglebytetobmpunicode.o ./sal/unxlngx6/obj/crc.o ./sal/unxlngx6/obj/debugbase.o ./sal/unxlngx6/obj/diagnose.o ./sal/unxlngx6/obj/digest.o ./sal/unxlngx6/obj/file_error_transl.o ./sal/unxlngx6/obj/file_misc.o ./sal/unxlngx6/obj/file_path_helper.o ./sal/unxlngx6/obj/filepath.o ./sal/unxlngx6/obj/file_stat.o ./sal/unxlngx6/obj/file_url.o ./sal/unxlngx6/obj/file_volume.o ./sal/unxlngx6/obj/hash.o ./sal/unxlngx6/obj/interlck.o ./sal/unxlngx6/obj/loadmodulerelative.o ./sal/unxlngx6/obj/locale.o ./sal/unxlngx6/obj/logfile.o ./sal/unxlngx6/obj/math.o ./sal/unxlngx6/obj/memory.o ./sal/unxlngx6/obj/module.o ./sal/unxlngx6/obj/mutex.o ./sal/unxlngx6/obj/nlsupport.o ./sal/unxlngx6/obj/pipe.o ./sal/unxlngx6/obj/printtrace.o ./sal/unxlngx6/obj/process_impl.o ./sal/unxlngx6/obj/process.o ./sal/unxlngx6/obj/profile.o ./sal/unxlngx6/obj/random.o ./sal/unxlngx6/obj/readwrite_helper.o ./sal/unxlngx6/obj/rtl_process.o ./sal/unxlngx6/obj/salinit.o ./sal/unxlngx6/obj/security.o ./sal/unxlngx6/obj/semaphor.o ./sal/unxlngx6/obj/signal.o ./sal/unxlngx6/obj/socket.o ./sal/unxlngx6/obj/strbuf.o ./sal/unxlngx6/obj/strimp.o ./sal/unxlngx6/obj/string.o ./sal/unxlngx6/obj/system.o ./sal/unxlngx6/obj/tables.o ./sal/unxlngx6/obj/tcvtbyte.o ./sal/unxlngx6/obj/tcvtmb.o ./sal/unxlngx6/obj/tcvtutf7.o ./sal/unxlngx6/obj/tcvtutf8.o ./sal/unxlngx6/obj/tempfile.o ./sal/unxlngx6/obj/tenchelp.o ./sal/unxlngx6/obj/tencinfo.o ./sal/unxlngx6/obj/textcvt.o ./sal/unxlngx6/obj/textenc.o ./sal/unxlngx6/obj/thread.o ./sal/unxlngx6/obj/time.o
Re: [Libreoffice] gcc/g++ compilation issue in desktop/splash
At 10:06am -0700 Wed, 24 Aug 2011, Michael Meeks wrote: Can you do some more investigation of which symbol is missing from where ? of course, failing that we can do some horror of a rename in there, or perhaps poking at removing things like: desktop/unx/source/makefile.mk: APP1CODETYPE = C might help - but ... ideally we want as little junk in the splash app as humanly possible; it'd be most ideal not to link sal at all IMHO but ... ;-) its more work to avoid it. Absolutely. Alright ... given your message, I'm wondering if there is an interplay with the fact that my build is ... --enable-dbgutil \ --enable-debug \ --enable-symbols \ ... Message received; no one quite knows what the issue is. I'll dive into it. Cheers, Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
[Libreoffice] gcc/g++ compilation issue in desktop/splash
Hi Folks, I haven't seen a fix go by, and have seen nothing mentioned on the list regarding building the splash part of desktop, but I'm having an issue that appears to be solved by switching to g++ instead of gcc: - $ cd desktop $ build [...snip...] Entering /home/kevin/devel/libreoffice/desktop/unx/source Making:oosplash ccache /usr/local/bin/gcc -Wl,-z,noexecstack -Wl,-z,combreloc -Wl,-z,defs -Wl,-Bsymbolic-functions -Wl,--dynamic-list-cpp-new -Wl,--dynamic-list-cpp-typeinfo -Wl,--hash-style=gnu -g -g -Wl,-rpath,'$ORIGIN:$ORIGIN/../basis-link/program:$ORIGIN/../basis-link/ure-link/lib',--enable-new-dtags -Wl,-export-dynamic -Wl,-rpath-link,../../unxlngx6/lib:/home/kevin/devel/libreoffice/solver/350/unxlngx6/lib:/lib:/usr/lib -L../../unxlngx6/lib -L../lib -L/home/kevin/devel/libreoffice/solenv/unxlngx6/lib -L/home/kevin/devel/libreoffice/solver/350/unxlngx6/lib -L/home/kevin/devel/libreoffice/solenv/unxlngx6/lib ../../unxlngx6/obj/splashx.o ../../unxlngx6/obj/start.o ../../unxlngx6/obj/args.o ../../unxlngx6/obj/pagein.o ../../unxlngx6/obj/file_image_unx.o \ -lpthread -Wl,--as-needed -lXext -lX11 -Wl,--no-as-needed -luno_sal -lpng12 -lXinerama -o ../../unxlngx6/bin/oosplash /home/kevin/devel/libreoffice/solver/350/unxlngx6/lib/libuno_sal.so: undefined reference to `std::__detail::_List_node_base::_M_hook(std::__detail::_List_node_base*)@GLIBCXX_3.4.15' collect2: ld returned 1 exit status dmake: Error code 1, while making '../../unxlngx6/bin/oosplash' - By executing that line manually and switching to /usr/local/bin/g++ the compile is successful. And that point I can restart the build and LO finishes with a successful build. It looks like the source of those files is C, but the libuno_sal is a .cpp file. I'm not clear on the linking rules bewteen the C and CPP, but given that no one else is having this issue, is there something else that I'm missing? Thanks, Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] UNO API reference?
At 3:59am -0400 Tue, 16 Aug 2011, Cor Nouws wrote: Kevin Hunter wrote (16-08-11 01:07) Do we have, or is there a canonical reference for the UNO API? Specifically with Python bindings? The various references I've been able to find online seem haphazard at best. Is that what we have to work with, or is there an obvious link I've overlooked? The obvious (start for) reference of course is http://api.openoffice.org/ So I guess you must have investigated that one.. Yes, I've investigated that site; it doesn't seem terribly fruitful. Perhaps I'm not clicking the right links? I'm looking for a few things that I don't currently see, like - Code snippets for all the UNO API language bindings. I see a few, for the likes of Java, OOBasic, and ooRexx, but they harken back to 2.0 and 1.1 days. Further, Since the API has multiple language bindings, I'm looking for more than just those 3. For instance, I see barely six examples for CPP, six for Python, etc. - Complete object and method listing. One of the things I currently lack is the grander idea of what I can do with the API. Generically I understand that it's a lot, but I don't know how to access most of it. - Complete, self-contained code examples. There are above-mentioned code snippets, perhaps, but complete, downloadable examples that show off a particular functionality would be incredibly useful. I'm trying to ascertain what resources are available to me while I hack away at LO, and just those three items would be tremendous. Do these exist? Thanks, Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
[Libreoffice] UNO API reference?
Hullo List, Do we have, or is there a canonical reference for the UNO API? Specifically with Python bindings? The various references I've been able to find online seem haphazard at best. Is that what we have to work with, or is there an obvious link I've overlooked? Thanks, Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] Suggestion and patch for Confirmation of save format dialog
At 5:09am -0400 Tue, 09 Aug 2011, Caolán Mcnamara wrote: I think the whole existing dialog was a complete fail. Never liked the wording Keep, seeing as the dialog also appears on first save of a new file, i.e. new document-save as .doc, and you get Keep MS format, which feels odd to me. Use/Save might be better. Maybe put Save as 'X' anyway into the current keep button, with save in 'Y' instead as the alternative save as ODF. I know I typically skip all explanatory text and go right to the buttons, only reading the text if I need to. Having brought this up before, maybe 6 months ago or so, I'm aware that this would be a time consuming task and that there's not a lot of enthusiasm to do it, but man it would be useful to have a some sort of document instrospection so that we could say /exactly/ what would be lost in a non-ODF format. On the other hand, I think it was you, Caolán who pointed out it might just be easier to implement those bits ... Sigh. Would that I had the wherewithal and time to do it rather than be a noisy bystander. Cheers, Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] Calc need too much RAM to open large spreadsheets than Excel, fix?
At 6:07am -0400 Wed, 27 Jul 2011, Michael Meeks wrote: On Wed, 2011-07-27 at 16:12 +0700, Samphan Raruenrom wrote: Is there any work on LibreOffice to reduce memory usage of LibreOffice Calc on large spreadsheets? but IMHO -the- fundamental design problem with calc, is something quite banal - the concept that a spreadsheet is built from cells: without breaking that basic misconception I don't think we can do any of the really interesting space / time optimisations we need to do. Can you elaborate a little on this fundamental design flaw? As a naive and unfortunately focused elsewhere personality, I don't immediately know of a better model for creating a spreadsheet. Is it just a problem of sparsity? Or is there a much more sophisticated method for memory sharing of various similar cell attributes, perhaps analogous to CSS? Thanks, Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] Calc - a better design ...
At 9:42am -0400 Wed, 27 Jul 2011, Michael Meeks wrote: Anyhow - as text, this is not terribly convincing; drawing on a whiteboard would be more so, and with lots of working code - even more so ;-) I keep hoping to have time to play with ixion with Kohei in this regard. Actually, as text it is convincing. So my original analogy to CSS works, but your example of sum(*array) vs for(i = 0...) and making use of SIMD is also telling. Who is working on these particular internals, if anybody? Do I take from your last sentence that the answer is partially nobody? I would /love/ to get my hands dirty on exactly this kind of restructuring and code work ... if only my hands weren't currently tied to a graduate degree that I also enjoy. Sigh. Cheers (and thanks for the extensive reply!), Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] patch for make to help in gbuild debugging
At 9:06am -0400 Thu, 23 Jun 2011, Bjoern Michaelsen wrote: On Thu, 23 Jun 2011 02:23:46 -0500 Norbert Thiebaud wrote: So I created a patch for make-3.82 that allow the use of --debug=e,c That add trace about, respectively, $(eval and $(scall see: http://cgit.freedesktop.org/libreoffice/contrib/dev-tools/commit/?id=a4f03f17f42ded70e6a3c49cf4e9a90eaf3c12ca looks good to me -- upstreaming it to the gnu project would be great. Oh fantastic! Until I looked more closely, I didn't realize this was a modification to Make itself. Brilliant. Seconded, thirded, etc.: *please* send this patch upstream, as I've a few projects with which I would appreciate having this functionality. Clearly, you're not the only one for whom this will solve a problem. Thank you! Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] patch for make to help in gbuild debugging
At 11:46am -0400 Thu, 23 Jun 2011, Norbert Thiebaud wrote: On Thu, Jun 23, 2011 at 6:35 AM, Michael Meeks wrote: On Thu, 2011-06-23 at 02:23 -0500, Norbert Thiebaud wrote: So I created a patch for make-3.82 that allow the use of --debug=e,c That add trace about, respectively, $(eval and $(scall see: http://cgit.freedesktop.org/libreoffice/contrib/dev-tools/commit/?id=a4f03f17f42ded70e6a3c49cf4e9a90eaf3c12ca Can we get that up-stream into make, like my glob speedup ? do you wantme to fwd your patch to the list [ which is hard to interact with sadly - Reply-To: mangling and low traffic ;-]. Doesn't FSF require paperwork ? I looked at the make project page on savanah, but that was less than helpful. on that topic. I don't think so, and I've yet to find any text suggesting so. A perhaps telling snippet From RMS' blog: It is up to you which of these activities to permit, but here are the FSF's recommendations. If you plan to make major contributions to the project, insist that the contribution agreement require that software versions including your contributions be available to the public under a free software license. This will allow the developer to sell exceptions, but prevent it from using your contributions in software that is only available under a proprietary license. If your contributions are smaller, you could accept a weaker condition that the company make your contributions available in a free software release as well as possibly in nonfree programs. This would allow the company to use your contributions in modified software that's only available under a proprietary license. Releasing proprietary software is never a good thing, but if your changes are smaller, it might be more important to improve the free version than resist the nonfree versions. -- http://www.fsf.org/blogs/rms/assigning-copyright My guess is that if the Make maintainers wanted to incorporate your code, as long as it's under GPLv3+, then they would accept it. Of note, here is a GNU Make news item (circa 2007) http://savannah.gnu.org/forum/forum.php?forum_id=4932 the web-base thing to submit patch seems to be a patch graveyard more than anything else... That's a different issue. If the maintainers have lost interest, then ... Cheers, Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] file name glob filter
At 7:02am -0400 Tue, 05 Apr 2011, Michael Meeks wrote: On Mon, 2011-04-04 at 12:52 -0400, Kevin Hunter wrote: In a similar vein, I would love for a *.EXT functionality, where I don't have to click on the filters, but could type in to the location Ho hum; that starts to do quite some violence to the platform-specific file-selector dialogs; doing interactive changes to the filter logic while the user types is likely to make the behaviour of these things even worse than it is now ;-) So - in general, I'd rather prefer to see that feature in the platform file-selectors (personally), and perhaps (if anyone at all uses it), in the built-in LO selector. Nice feature idea though; be great to see it Gtk+, KDE etc. Or, put differently, there /is/ a technical reason why not: support from the native GUI toolkit libraries. Darn. I was hoping that the reason I couldn't see a QD path was because I just don't know the Gtk+/KDE APIs very well. Alas. Thanks, Kevin P.S. If this does turn out to be possible, and since the earliest I could even attempt to look at this little feature idea would be late May, I'll mention that if someone else were to look at this, the functionality I'm thinking of would be to hit return to update the dialog box, not to update on each keystroke. ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] Order of filters in the Open dialog
At 11:59am -0400 Mon, 04 Apr 2011, Michael Meeks wrote: On Mon, 2011-04-04 at 09:39 +0200, Cedric Bosdonnat wrote: I'm not sure what we want to do for the Open dialog filters... anyone else has an idea what to do? Not worrying about 'open' would be my tip. Almost no-one manually selects a filter in the open dialog, they just expect the auto-detection to work right, and 99% of the time it might even do that ;-) Sorry, I may be missing context as I've ignored this thread until now, but is this in terms of the interaction? Or the code behind the filters /after/ the file has been selected and the 'open' button has been pressed? If it's to do with the dialog and user interaction (i.e. before pressing the open button), I'll mention that I use the filters regularly, to weed out a large portion of the files in a directory, usually when I can't instantly think of the file name I want to open. Cheers, Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
[Libreoffice] file name glob filter (was: Re: Order of filters in the Open dialog)
At 11:59am -0400 Mon, 04 Apr 2011, Michael Meeks wrote: On Mon, 2011-04-04 at 09:39 +0200, Cedric Bosdonnat wrote: I'm not sure what we want to do for the Open dialog filters... anyone else has an idea what to do? Not worrying about 'open' would be my tip. Almost no-one manually selects a filter in the open dialog, they just expect the auto-detection to work right, and 99% of the time it might even do that ;-) In a similar vein, I would love for a *.EXT functionality, where I don't have to click on the filters, but could type in to the location bar something with a filename glob and it would filter accordingly. Like, 2010_Taxes*.ods might filter all but the files that match that glob pattern. Is this already implemented and I'm just not aware how to use it? Or is there some reason (other than lack of someone coding it) that prevents this feature? Thanks, Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] Test LibreOffice@
At 11:36am -0400 Mon, 28 Mar 2011, Christian Lohmaier wrote: On Mon, Mar 28, 2011 at 4:53 PM, Kevin Hunter wrote: At 10:39am -0400 Mon, 28 Mar 2011, Christian Lohmaier wrote: it smells like a misconfiguration of the list or FDO's mailing setup somewhere. Is there something obvious I'm overlooking? Or something simple I could do solve this particular mailing list issue? The most simple first step is to read the reason for the bounce that is included with the probe/warning messages. That should at least give a hint why mail delivery failed. Ah ... now I know why I've been ignoring it. Here's the return message in the bounce: - [...] 554 Service unavailable; Client host [gabe.freedesktop.org] blocked using Barracuda Reputation; http://bbl.barracudacentral.com/q.cgi?ip=70.38.55.108 (in replyto end of DATA command) - This particular bounce was attached to one of the spam messages that got through to the list. (gabe doesn't have a dynamic IP address, does it?) I don't know how to proceed from here. Do I just keep ignoring them? Thanks, Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
[Libreoffice] LO release web-accessible changelog?
Hullo List, In a drive-by conversation, a friend recently asked me what was changed between LO 3.3.1 and 3.3.2. Given my day job, I can't keep up with all the messages that go by on this list, so I hastily searched for a changelog of sorts. Someone suggested that we'd put a list of changes into the release announcement, but when I looked at the blog, I didn't see a list of changes: http://blog.documentfoundation.org/2011/03/22/libreoffice-3-3-2-is-now-available/ Then it was suggested that they may have been listed in the RC release announcement, but not this update announcement. I was looking for something along the lines of these pages: http://www.postgresql.org/docs/current/static/release.html http://www.postgresql.org/about/news.1289 Do we have a page that I'm missing akin to either of these? And if not, would others agree that they would be of use? Cheers, Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] Cannot save .ods and .odt files
At 3:11am -0500 Mon, 07 Mar 2011, Francois Tigeot wrote: Something has been bothering me for a while: ever since I succeeded in building a LibreOffice binary for DragonFly BSD, I haven't been able to save OpenDocument format files. The dialog box just closes itself and reopens half a second later. No file is written to disk. Saving .fods and .fodt files works fine. How can I know what exactly is going wrong ? Are you asking about inserting debugging statements? If so, then you may appreciate the OSL_TRACE macro, which has a signature exactly like printf. (And if not, please allow me to hijack this thread to explain what I recently figured out for anyone else who may find this useful.) OSL_TRACE( %d: %s = %s\n, __LINE__, myvar, myvar ); To enable that in a module output (for example sc), build with the debug flags: $ . LinuxX86-64Env.Set.sh $ cd sc $ build debug=true dbglevel=2 I haven't yet messed with other dbglevels, but you could start from 1 and see if any other levels better fit your needs. And clearly update the LinuxX... bit to whatever's pertinent for you. Then, the code-build cycle could be as simple as adding an OSL_TRACE and executing that build command again. *Note that for debugging like this, after you've run make dev-install in the root directory, you don't need to execute it again after building a follow-up. So, a build, code, and debug run on my machine might look like: $ make clean $ make # wait for 2+ hours on my machine $ make dev-install $ LODEV_PROG=$(pwd)/install/program/soffice $ . LinuxX86-64Env.Set.sh $ cd sc $ $LODEV_PROG # run the program # make a code change $ build debug=true dbglevel=2 $ $LODEV_PROG # run the program # make a code change $ build debug=true dbglevel=2 $ $LODEV_PROG # run the program # etc ... Hope this helps, Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] Cannot save .ods and .odt files
At 8:45am -0500 Mon, 07 Mar 2011, Francois Tigeot wrote: I would suspect something like file-locking to be a problem here. Do you have an 'strace' equivalent you can use to see what syscalls fail ? truss is the strace equivalent but it stops printing anything after the initial LibO launch. There's nothing shown when I save a file. Does truss have the ability to follow child processes? It's been awhile, but I believe strace has this capability via -ff and -o. You'll know your man page better than me of course, but I was able to find this from a few years ago in my Bash history: $ strace -ffo /tmp/$DEVNAME $DEVBIN Which I believe created a bunch of files in strace output files in /tmp. In other words, LO forks itself a number of times, which is why when you run it from the command line without backgrounding it, it returns control to the shell almost immediately. Cheers, Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] Cannot save .ods and .odt files
At 7:54am -0500 Mon, 07 Mar 2011, Francois Tigeot wrote: On Mon, Mar 07, 2011 at 07:02:30AM -0500, Kevin Hunter wrote: Are you asking about inserting debugging statements? I hoped to find some way to print more details at runtime. If I can't do it with an existing binary, I'll rebuild a new one with your debug suggestions. Ah, heh. Does that imply a debugger of sorts? I use debuggers, but generally try to use them as a *very* last resort. I'm much more fond of printf or equivalent. Or are you talking about something more programmatic? I've recently gone down the path of running LO as a server, and using UNO via Python (PyUNO) to talk to it. I have a working example that opens a file, saves it to another format, then closes it, if that would be of use to anyone. Or was the strace/truss talk more of what you were after? Cheers, Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] Cannot save .ods and .odt files
At 10:51am -0500 Mon, 07 Mar 2011, Francois Tigeot wrote: Well, I was also thinking about a printf-like solution. I just hoped to not have to rebuild a binary, it takes almost two hours and a half... That's just it: you don't have to rebuild the whole of LO. By using 'make dev-install', you can just build the module with which you're working. Depending on how fundamental the change, you can be up and running within 20 seconds of saving a file. That's the build step. From my earlier email: $ . LinuxX86-64Env.Set.sh $ cd sc # in this case, I'm working on the sc module $ build debug=true dbglevel=2 For a simple change in a file not referenced by other source files, that build command might take 20 seconds. Then just rerun the program and you'll see your changes enacted. No need to rebuild everything. Does that help? Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] [REVIEW] fix for a chart crasher
At 4:22am -0500 Thu, 03 Mar 2011, Tor Lillqvist wrote: for a cherry-pick candidate to libreoffice-3-3. It's a very simple safe fix, and fixes a crasher as reported in But do you know how those values can end up being negative in the first place, is that a symptom of something being horribly wrong otherwise, and this patch now then just plasters over that and instead of crashing it might permit silent data corruption elsewhere then instead? Alas, in my limited 20 minutes last night I was not able to get the full scope in my mind, so I pose it as a question here instead: I'm a little concerned with /why/ either of those two functions are returning a negative number at all. (I certainly didn't give LO one in the input!) Is there ever a time that either of those should be negative? The rest of the code in getAllTicks() assumes that they're always = 0. At first glance, getTickDepth() and getMaxTickCount() read to me as requests for non-negative values (from an English/math sense). However, I note that the return values are sal_Int32 instead of sal_uInt32. Going one call down in the stack trace: sal_Int32 TickmarkHelper::getTickDepth() const { return m_rIncrement.SubIncrements.getLength() + 1; } If that's truly a length (where are the frickin' data definitions?!?!), then, sans a wraparound, that certainly shouldn't be negative. Surely we aren't at MAX_INT? sal_Int32 TickmarkHelper::getMaxTickCount( sal_Int32 nDepth ) const Again, I've run out of time, but my spidey sense is pointing to a combination of too small a range = close enough to zero for the computer to interpret as 0 or returning a negative almost 0, and then line 484 or 495: 484: sal_Int32 nIntervalCount = static_castsal_Int32( fSub / m_rIncrement.Distance ); I have not yet sussed out what approxSub() or isFinite() does to fSub. Are they making nIntervalCount negative, through the fSub proxy? 495: nTickCount = nIntervalCount * (m_rIncrement.SubIncrements[nDepth-1].IntervalCount-1); If it's 495, I don't know how it's getting past the if above. Thoughts? Kevin ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice