Re-structured the interpreter code to handle external references with
ocPush, instead of ocExternalRef. This is necessary in order to
support shifting of references in the same way you can with internal
references.
In addition, this change allows re-using of document instances already
loaded when accessing external references that point to one of already
loaded documents. Previously, Calc would load the same document from
disk even when the document was already loaded.
(n#628876)
The xml parser tends to break text into multiple pieces in presence of '#'.
The original code only picked up the last piece of the set, which truncated the
stored cache value. We should pick up all the fragments during the import.
The old code scanned *all* formula cells in the entire document, to see if any external references exist in the
document. Now that the external ref mgr tracks formula cells with external references better, let's use that
list, to be more efficient.
With this change, the cache table no longer stores empty cells at all,
with no exceptions. Instead, it keeps track of cached ranges to determine
whether a cell is empty or unretrieved. This change also helps simplify
the logic of getting the value of an external cell.
2009-09-09 11:45:28 +0200 dr r275979 : suncc failure
2009-09-09 11:33:34 +0200 dr r275977 : gcc warning
2009-09-09 11:09:02 +0200 er r275976 : #i87171# reworked name check for creating defined names
2009-09-09 10:38:02 +0200 dr r275973 : adapt changes in oox base class
2009-09-09 10:21:03 +0200 dr r275969 : remove faulty pagesize stuff
2009-09-09 10:20:13 +0200 dr r275968 : remove faulty pagesize stuff
2009-09-08 20:24:39 +0200 nn r275958 : #i104899# interpret cells when creating chart listener after loading
2009-09-08 16:05:37 +0200 er r275937 : ScXMLDDELinkContext::EndElement: Excel writes bad ODF <table:dde-link> <table:table> without <table:table-column>'s table:number-columns-repeated attribute; be lenient ...
2009-09-08 13:14:54 +0200 er r275925 : #i103315# handle external references in Excel's ODF msoxl namespace
2009-09-07 17:37:18 +0200 dr r275907 : #i104753# crash when deleting cell with note
2009-09-07 14:02:29 +0200 dr r275896 : #i103520# reworked sheet name buffer to resolve internal hyperlinks, fix almost all remaining problems with external links in BIFF, fix auto color import for BIFF
2009-09-06 20:01:05 +0200 er r275862 : #i35913# fix regression introduced by integration of CWS fhawfixes1; patch from <wsfulton>
2009-09-05 18:32:00 +0200 er r275847 : #i104156# merge #i103918# from uncloned dr68ooo311
2009-09-05 18:19:23 +0200 er r275846 : #i104156# merge #i103317# from uncloned dr68ooo311
2009-09-05 17:32:12 +0200 er r275844 : #i104484# glueState: correct casts in range bounds; patch from <cmc> slightly modified
2009-09-03 17:26:38 +0200 dr r275764 : #i103520# handle apostrophs in sheet names in internal URLs
2009-09-03 17:21:26 +0200 dr r275763 : #i95271# show text formatting in temp notes
2009-09-03 12:24:52 +0200 dr r275747 : unused declaration
2009-09-02 21:33:03 +0200 dr r275727 : #i96438# cleanup color handling in xls filter, extend VML color parser
2009-09-02 15:39:57 +0200 dr r275715 : #158571# #i96438# accept also VML colors in the form '#RRGGBB [xyz]'
2009-09-02 15:16:36 +0200 dr r275714 : #158571# #i96438# set note text
2009-09-02 14:59:33 +0200 dr r275713 : #158571# #i96438# load custom line dashes from DrawingML and VML
2009-09-02 11:53:35 +0200 dr r275702 : #158571# #i96438# import VML fill gradients
2009-08-31 19:28:10 +0200 dr r275632 : #158571# #i96438# more vml formatting
2009-08-31 14:29:30 +0200 dr r275606 : #158571# #i96438# changed handling of xml token ids/names
2009-08-28 18:25:26 +0200 dr r275545 : #158571# #i96438# preparations for and basic support of VML shape formatting, load spreadsheet cell notes position, formatting, and visibility
2009-08-25 19:08:31 +0200 dr r275378 : #i103390# dump BIFF STYLEEXT
2009-08-25 18:28:50 +0200 dr r275377 : #i103390# improve built-in style handling
2009-08-25 18:27:38 +0200 dr r275376 : #i103390# improve built-in style handling
2009-08-04 18:49:40 +0200 dr r274629 : CWS-TOOLING: rebase CWS dr69 to trunk@274622 (milestone: DEV300:m54)
2009-07-17 15:47:46 +0200 er r274098 : #i101544# more thorough reference checking in chart data ranges; also prevent some possible crash if invalid ranges were to be passed to document/cell access.
2009-07-16 14:20:11 +0200 er r274051 : #i101544# let ScRefTokenHelper::compileRangeRepresentation() fail on all possible non-reference occasions
2009-07-07 10:11:40 +0200 nn r273776 : #i35579# don't use long instead of sal_Int32
2009-07-03 16:41:39 +0200 nn r273711 : msvc warnings
2009-07-03 14:18:45 +0200 nn r273698 : msvc warning
2009-07-03 11:30:41 +0200 nn r273685 : #i35579# move new tokens to the end
2009-07-03 10:12:55 +0200 nn r273681 : CWS-TOOLING: rebase CWS calc51 to trunk@273468 (milestone: DEV300:m51)
2009-06-30 17:57:30 +0200 nn r273529 : #i103027# EnterData: if it's a formula, don't pass EditTextObject to undo
2009-06-29 14:31:18 +0200 er r273474 : #i101544# #i101645# #i102388# applied diff from CWS dr68ooo311
2009-06-29 10:30:20 +0200 nn r273457 : #i103161# DeleteCells: always leave list action
2009-06-24 16:16:34 +0200 nn r273353 : gcc warnings
2009-06-17 11:50:28 +0200 tbe r273055 : #i35579# Standard filter requires more options
2009-06-17 11:44:22 +0200 tbe r273054 : #i35579# Standard filter requires more options
2009-06-17 11:22:23 +0200 tbe r273052 : #i35579# Standard filter requires more options
2009-06-15 18:29:32 +0200 nn r273006 : #160063# UseFormulaData: check parenthesis position
2009-06-12 15:41:16 +0200 nn r272923 : #i99250# handle range lists in DoAutoOutline (patch from dtardon)
2009-06-11 15:07:05 +0200 nn r272874 : #i86943# GetNextPos: skip overlapped cells
2009-06-11 11:17:37 +0200 nn r272856 : #i97726# EnterData: get text from EditTextObject for repeat string of undo action
2009-06-10 20:45:07 +0200 nn r272839 : #i102566# minimum amount of code between updates of calculation progress (patch by cmc)
2009-06-10 20:22:02 +0200 nn r272838 : #i69524# PasteFile: specify target for SID_OPENDOC
2009-06-09 17:33:08 +0200 nn r272789 : #i16615# absolute/relative reference conversion for cell ranges (patch by gaojingmei)
2009-04-27 11:47:56 +0200 nn r271258 : #i101273# Uno broadcasts in DoRecalc/DoHardRecalc
2009-04-24 17:20:19 +0200 nn r271226 : #i101304# don't load source file of external ref for empty cells in the cached data
2009-04-24 14:15:43 +0200 nn r271212 : #i101319# handle merged cells and row groups when loading cached data for external refs
2009-03-25 11:52:59 +0100 nn r270010 : GetHTMLRangeNameList: call ScHTMLImport static method, not same method again (bug-id not available yet)
2009-03-20 14:24:51 +0100 er r269808 : #i100416# makeExternalRefStrImpl: don't care about a second sheet name if not needed
2009-03-20 13:14:30 +0100 er r269803 : carry along row position also for non-existing (empty) rows
2009-03-20 11:26:33 +0100 er r269790 : SUNWS12: declarator required in declaration; removed SC_DLLPRIVATE from inner class declaration
2009-03-19 19:40:09 +0100 er r269767 : #i100300# save only referenced tables of external data cache
2009-03-19 14:45:05 +0100 dr r269746 : #i100346# more places where checking docshell is needed
2009-03-19 14:13:20 +0100 fs r269744 : #i100349# do not delete the pool before all instances knowing it have been deleted
2009-03-19 11:35:45 +0100 dr r269735 : #i100346# always check docshell, is missing when pasting from clipboard
2009-03-19 09:39:49 +0100 dr r269728 : #i100332# remove debug statement, patch from kohei
2009-02-19 13:18:02 +0100 iha r268276 : #i99400# Missing value plotting broken
2009-02-11 03:39:50 +0100 kohei r267579 : forgot to add an in-line comment.
2009-02-11 00:26:03 +0100 kohei r267578 : Handle also the single cell references when exporting chart ranges.
2009-02-10 19:50:37 +0100 kohei r267576 : removed a compiler warning.
2009-02-10 06:48:55 +0100 kohei r267536 : got xls export filter to correctly write external references in charts.
However, Excel doesn't entirely like my chart output if the chart contains
external references. The data are all there, but it refuses to draw it.
It works fine with charts with internal references.
2009-02-10 03:33:13 +0100 kohei r267533 : correctly import external references used in chart objects, by using a token
array instead of a range list to represent the data ranges.
2009-02-04 15:22:30 +0100 kohei r267387 : return aRet instead of the sRangeRepresentation, just to be consistent with the
rest of the code there. Both strings are empty so this is just for aesthetic
reasons.
2009-02-04 15:07:49 +0100 kohei r267384 : #i98872# allow export of empty data range, in order to allow saving of documents
with an empty chart.
2009-02-03 19:20:38 +0100 kohei r267340 : #i98801# added a special case handler for parsing range address syntax used by
the older version of OOo. In the old syntax, the sheet name was dropped for
the 2nd reference of a range if the 1st and 2nd references are on the same
sheet. In the new syntax this is not the case.
Also fixed unintential display of the sheet name for the end range address of a
single-sheet range.
2009-01-28 20:46:11 +0100 kohei r267085 : call GetIndex() and GetString() only when the token is external ref, to avoid
triggering assertions in a non-pro build.
2009-01-28 19:30:58 +0100 kohei r267080 : When listeners are being destroyed, don't bother unregistering them with the
external ref manager if the document itself is being destroyed.
2009-01-28 18:56:52 +0100 kohei r267079 : fixed a heap corruption. The Table instance stores instances of FormulaToken
type, not of ScAddress type.
2009-01-26 18:59:14 +0100 kohei r266945 : removed another warning on win32 build.
2009-01-26 18:50:56 +0100 kohei r266943 : removed warnings on windows build.
2009-01-26 17:16:09 +0100 kohei r266939 : added const to a returned reference value that is never used to modify its value.
2009-01-26 16:49:33 +0100 kohei r266937 : Assume that the document instance is not null, or else don't copy any data at all.
2009-01-26 16:19:50 +0100 kohei r266935 : create a clone of ScChart2DataSeqeunce without calling its copy constructor,
since explicit definition of copy constructor would cause a serious compiler
warning that's too ugly to fix.
2009-01-26 05:26:58 +0100 kohei r266894 : removed unused variable and changed function signature.
2009-01-26 05:02:58 +0100 kohei r266893 : removed unused variables to remove compiler warnings.
2009-01-25 18:07:31 +0100 kohei r266890 : fixed indentation inconsistencies in ctor initializers.
2009-01-25 18:01:41 +0100 kohei r266889 : * removed a compiler warning.
* tab -> whitespace conversion in some code.
2009-01-25 03:57:37 +0100 kohei r266888 : removed a mis-leading comment.
2009-01-25 02:37:45 +0100 kohei r266887 : * moved the ref token join method from chart2uno local to ScRefTokenHelper.
* a little code cleanup.
2009-01-24 09:29:26 +0100 kohei r266865 : Don't re-link external files if their link has been broken once.
2009-01-24 09:16:28 +0100 kohei r266864 : a typo in an in-line comment.
2009-01-24 09:14:29 +0100 kohei r266863 : Treat non-cached cells as empty cells only when the source document is not
reachable.
2009-01-24 07:23:44 +0100 kohei r266862 : Don't purge the external ref cache when the link is broken.
2009-01-24 03:25:46 +0100 kohei r266861 : When a cell outside the cached range is queried, we should return an emtpy cell
token instead of NULL, to be consistent with the old behavior.
2009-01-24 02:34:38 +0100 kohei r266860 : Remove corresponding listeners when an external doc link is broken.
2009-01-23 23:18:44 +0100 kohei r266856 : more work on handling external ref update listeners.
2009-01-23 18:10:09 +0100 kohei r266846 : Handle loading of chart objects when their external link is updated.
2009-01-23 06:57:34 +0100 kohei r266765 : more work on ref-tokenizing ScChartListener.
2009-01-22 22:57:52 +0100 kohei r266760 : More work on moving ref token helper code to reftokenhelper & ref-tokenizing
ScChartListener.
2009-01-22 21:52:38 +0100 kohei r266758 : moved the code that converts XML range string into Calc's internal range string
from chart2uno to rangeutl & compile the range string to generate ref tokens
upon ods import.
2009-01-22 18:56:14 +0100 kohei r266749 : fixed a build breakage.
2009-01-22 18:53:43 +0100 kohei r266748 : Initial work toward using ref tokens in ScChartListener class. I'll start
moving some of local ref token handling functions from chart2uno.cxx to
ScRefTokenHelper class to make them available in other places.
2009-01-22 17:38:20 +0100 kohei r266746 : Add a big, fat warning against mixed use of ScSharedTokenRef and ScTokenRef.
2009-01-22 08:33:28 +0100 kohei r266711 : #i98338# fixed slicing of external ref token classes by adding their own Clone() method.
2009-01-22 05:02:25 +0100 kohei r266710 : Applied the same fix that npower/oj applied to fix a crasher (from #i98317#).
2009-01-21 23:02:42 +0100 kohei r266705 : fix build breakages as a result of rebase to m39. Mostly due to the new formula
module and its associated changes esp. wrt token classes.
2009-01-21 19:14:40 +0100 kohei r266699 : CWS-TOOLING: rebase CWS koheiformula02 to trunk@266428 (milestone: DEV300:m39)
2009-01-21 17:55:10 +0100 kohei r266698 : moved the shared ScToken typedef to token.hxx, and use it instead of
ScChart2TokenRef, since I need this typedef in the odf importer. In the future
this can also replace the similar typedef in ScExternalRefManager.
2009-01-21 06:54:04 +0100 kohei r266627 : Added external ref listener framework so that objects listening to external ref changes can get notified
when the link is updated.
The work is not done yet.
2009-01-20 23:07:38 +0100 kohei r266626 : When exporting a range to ODF, we don't want to prepend a sheet name with '$' even for an external sheet.
2009-01-20 23:06:40 +0100 kohei r266625 : 1) code cleanup to remove compiler warnings.
2) fixed convertRangesToXML to convert ref tokens into correct ODF range format.
2009-01-20 19:40:45 +0100 kohei r266620 : extracted the code that fills cache from external ref into its own method.
2009-01-20 18:26:47 +0100 kohei r266616 : added javadoc parameter descriptions.
2009-01-20 18:01:17 +0100 kohei r266615 : disable ScChart2EmptyDataSequence entirely since that class doesn't appear to be used any more.
2009-01-20 17:42:59 +0100 kohei r266608 : fixed a crash when the data source range is empty at time of chart creation.
2009-01-20 17:13:34 +0100 kohei r266601 : a simple locale variable rename.
2009-01-20 16:57:04 +0100 kohei r266598 : #i97563# applied my patch, to fix incorrect export attempts of color values as a number formatter key, and change the condition of
one assertion to prevent it from being triggered incorrectly in non-pro build.
2009-01-17 07:41:01 +0100 kohei r266458 : a little code cleanup.
2009-01-17 07:30:48 +0100 kohei r266457 : removed a method that it no longer used.
2009-01-17 07:29:15 +0100 kohei r266456 : fixed a crash when no external data is available for a given range.
2009-01-17 07:14:50 +0100 kohei r266455 : Even more work on range list to ref token migration. The chart now retains
external data after editing of chart.
2009-01-16 18:54:35 +0100 kohei r266453 : More work on replacing flat ranges and addresses with ref tokens.
2009-01-16 17:07:51 +0100 kohei r266438 : extracted a large code block into its own local method.
2009-01-16 15:22:57 +0100 kohei r266423 : Initial work toward replacing the chart positioner and its related code in
order to use reference tokens instead of range list. The basis of that code
is the old ScChartPositioner and ScChartPositionMap duplicated to avoid breaking
any existing legacy code that might still use it. It appears to be used by the
StarOffice 1.0 filter only.
Still not working with the external references.
2009-01-15 05:33:39 +0100 kohei r266334 : renamed chackRanges() to overlaps() to make it more descriptive of what it does.
2009-01-13 23:25:50 +0100 kohei r266260 : Moved the token-to-string conversion code up so that other parts of the code can use it.
2009-01-13 22:14:35 +0100 kohei r266256 : generateLabels() now uses reference token list.
2009-01-13 18:42:23 +0100 kohei r266246 : Finally, build data array for external data sources. This will now allow the
data to be displayed in the diagram.
2009-01-13 16:34:03 +0100 kohei r266235 : We now need to verify range representation by compiling it instead of parsing it.
2009-01-13 15:41:48 +0100 kohei r266230 : cosmetic function name change & added javadoc comment for it.
2009-01-13 06:32:06 +0100 kohei r266194 : Fixed a typo.
2009-01-13 06:04:23 +0100 kohei r266193 : Generate data source range string by compiling reference tokens. This way
we can also display external reference addresses correctly.
2009-01-13 05:55:44 +0100 kohei r266192 : moved compileRangeRepresentation from being a class member method to a local function.
2009-01-13 05:41:53 +0100 kohei r266191 : nuked one unused method & tab -> whitespace conversion.
2009-01-13 05:35:10 +0100 kohei r266190 : A little code cleanup & consolidated all range-joining code
into a single function object class.
2009-01-13 03:58:51 +0100 kohei r266189 : removed the unused method.
2009-01-13 03:53:01 +0100 kohei r266188 : This time I (hopefully) fixed the range consolidation problem for real. I forgot to join
the missing upper-left corner cell with the existing range list. Also, I needed to join
ranges recursively instead of just doing it once.
2009-01-13 02:15:48 +0100 kohei r266187 : fixed the "add corner if missing" thing.
2009-01-12 23:36:19 +0100 kohei r266185 : More work on range list -> ref tokens.
2009-01-12 23:12:28 +0100 kohei r266184 : More work on switching to reference tokens from range list. Still in progress.
2009-01-10 08:15:39 +0100 kohei r266125 : More code change for switching to reference tokens, especially in ScChart2DataProvider.
Created another addUpperLeftCornerIfMissing method that can take a list of reference tokens
instead of range list.
2009-01-09 19:22:33 +0100 kohei r266110 : entirely removed the range list data member from ScChart2DataSequence class. From now on
we will use a list of tokens to track data source ranges.
Now, if I haven't introduced any bugs in the process, normal charts with no external
references should work as before. But I still need to get the external refs to
work.
2009-01-09 19:11:45 +0100 kohei r266108 : Convert ranges to token list before instantiating ScChart2DataSequence.
2009-01-09 18:27:13 +0100 kohei r266107 : Extracted a common code block into its own method.
2009-01-09 18:18:36 +0100 kohei r266106 : More progress on chart2uno implementation change. Still more to do.
2009-01-09 06:24:36 +0100 kohei r266043 : another place to swap the use of range list with token list.
2009-01-09 06:18:57 +0100 kohei r266042 : Started re-working the chart2uno implementation, to use a list of ScToken
instances instead of ScRangeList, to keep track of data source ranges.
This way, the chart2uno code can tell whether the ranges are external or
internal, and act accordingly.
I'm not finished with it yet. Some things are still not working.
2009-01-08 19:28:51 +0100 kohei r266034 : yet another place to hardcode CONV_OOO for cell range address parsing.
2009-01-08 19:19:21 +0100 kohei r266033 : transferred the BuildArray() method from the koheichart01 cws and its associated changes.
I need to be changing code around this area, and I don't want to redo my changes once
koheichart01 gets integrated for 3.2.
2009-01-08 18:07:08 +0100 kohei r266030 : Have convertRangeFromXML convert external ranges into the appropriate OOO A1 format.
I also added a helper method to append a table name because this is useful in a lot of
other places.
2009-01-07 06:57:52 +0100 kohei r265944 : These places also need a hard-coded CONV_OOO address convention, for Excel chart import and export to function properly.
2009-01-06 16:41:07 +0100 kohei r265932 : removed unused variable.
2009-01-06 16:30:36 +0100 kohei r265931 : removed unused ScDPCacheTable::GroupFilter::setMatchIfFound() method and its
associated member variable (per Caolan's callcatcher output). I added that
method to allow reverse matching in some code but later retracted that logic.
I guess I forgot to remove the method itself afterwards...
2009-01-06 06:39:51 +0100 kohei r265891 : #i97735# Always write cell and cell range addresses using the OOo A1 (CONV_OOO) address convention
when exporting to ODF, regardless of current address convention. Same for reading from ODF documents.
2009-01-06 05:46:40 +0100 kohei r265890 : #i94696# Use the current address convention in the chart wizard dialog.
2008-12-12 09:32:19 +0100 dr r265390 : #i10000# warning
2008-12-11 14:54:26 +0100 dr r265301 : add strings from dr66 to meet ui freeze
2008-12-11 14:53:20 +0100 dr r265300 : add strings from dr66 to meet ui freeze
2008-12-08 14:43:25 +0100 er r264997 : DBG_... need semicolon
2008-12-04 19:16:50 +0100 er r264872 : DBG_... needs semicolon
2008-12-04 11:09:27 +0100 er r264824 : DBG_ERROR needs semicolon
2008-12-03 13:29:46 +0100 er r264770 : CWS-TOOLING: rebase CWS mooxlsc to trunk@264325 (milestone: DEV300:m36)
2008-12-02 16:49:09 +0100 er r264722 : disable code for named references #i4385# import as long as #i3740# isn't fully implemented
2008-12-02 16:45:04 +0100 er r264721 : some compilers attempt to be too smart; persuade them it's really meant what was written
2008-12-02 16:04:56 +0100 er r264715 : #i3740# no storage in ODF for external name references
2008-11-29 02:20:50 +0100 er r264575 : some huge performance improvement when reading repeated empty rows for the external references cache from ODF, as they often occur in the sparse matrix
2008-11-29 01:14:55 +0100 er r264574 : WriteExternalRefCaches: for table:number-columns-repeated write used columns instead of MAXCOLCOUNT
2008-11-28 18:30:04 +0100 er r264570 : #i3740# write/read external name references as bracketed references, as proposed on the ODFF list
2008-11-27 20:36:54 +0100 er r264521 : merge i95068 from cws calc46 for code correctness
2008-11-21 20:39:34 +0100 kohei r264174 : fixed a crash when importing a BIFF8 document with per-sheet external names.
For now, we don't support per-sheet external names. Let's throw in NoName
error until they are supported.
2008-11-21 18:47:27 +0100 kohei r264168 : I forgot to process cached range references in the EXTERNNAME record, which
prevented cached external names with range references from being imported
correctly.
P.S. I swear I thought I had covered this....
2008-11-20 23:07:22 +0100 er r264104 : #i4385# parse external defined names in MOOXML import
2008-11-14 23:18:54 +0100 er r263700 : #i92797# parse external sheet references under aspects of MOOXML import and new ScExternalRefManager
2008-11-14 18:49:48 +0100 er r263696 : remove infinity assertion, leftover from binary file format; coded double error may occur via filter import
2008-11-12 13:29:44 +0100 er r263593 : make references to entire rows/columns, such as A:A or 3:3, actually work in MOOXML import
2008-11-03 12:35:11 +0100 er r263282 : a struct is a struct is a ...
2008-10-31 00:30:59 +0100 er r262843 : aTableRowCellAttrTokenMap needed
2008-10-31 00:26:07 +0100 er r262842 : GetTableRowCellAttrTokenMap() is not unused
2008-10-31 00:13:53 +0100 er r262841 : merge error
2008-10-31 00:05:39 +0100 er r262840 : merge error
2008-10-30 23:17:48 +0100 er r262839 : unresolved merge conflict!?!
2008-10-30 22:59:11 +0100 er r262838 : merge error
2008-10-30 16:31:04 +0100 hr r262833 : CWS-TOOLING: rebase CWS mooxlsc to trunk@262620 (milestone: DEV300:m34)
2008-10-16 21:57:51 +0200 er r262272 : migrate CWS mooxlsc to SVN