Age | Commit message (Collapse) | Author |
|
Because those two conditions were not very obvious.
|
|
This required a whole bunch of chnages all over the place.
|
|
improves MatchByUpperName tests avoiding type conversions
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
For better encapsulation of ScQueryEntry.
|
|
Because I'll be modifying this struct in the next few days...
|
|
|
|
|
|
|
|
|
|
|
|
I'm about half-way through.
|
|
This is more appropriate.
|
|
|
|
For now, the maximum query size is determined by the size of the
vector that holds the entries. For now, the size of the vector is
fixed, and won't change. We may later work on making it dynamically
sized, however...
|
|
|
|
|
|
* Changed Calc's internal definition of points per inch from TeX points (72.27
points per inch) to PostScript points (72 points per inch) as used by the
rest of the world (except TeX).
* Aligns between internal representation and API that at various places
assumed PS points already.
* Fixes mis-positioning and bad sizing of drawing layer objects relative to
column widths and row heights.
* More precise printout of column widths and row heights.
* UI dialogs such as Column Width always assumed PS points, so earlier
versions actually displayed wrong metric (and imperial) units.
* Printouts now are slightly larger due to 0.27 points less in an inch, but
more accurate in reflecting the actual UI values, and drawing layer objects'
position and size match the row heights and column widths.
- Problems with drawing layer objects and zoomed view versus Page Preview
versus printout that don't align still persist.
- Problems with resized rows and misplaced drawing layer objects are also not
magically healed.
|
|
create ScDocument::AppendTabOnLoad
do not test if named ranges exist on file load
|
|
This reverts commit 249faa5cb64a7270e852862a26b4a5e3a69a9895.
|
|
ScPostIt is the behind-the-scenes name for Notes. This move removes a
usually empty pointer for each ScBaseCell to list of pointers within
ScDocument. The advantage is basically a reduction in size of 8 bytes
per cell. The current sizeof(ScBaseCell) is 16. Here are the
highlights:
* Remove mpNote from ScBaseCell, and add a std::map (data structure) to
ScDocument to store notes and associate with addresses.
* Remove ScPostIt accessors and mutators from ScTable, ScColumn, and
ScBaseCell
* Replace ScPostIt accessors and mutators in ScDocument with ones to
handle move of data structure from ScBaseCell to ScDocument
* Rename ScPostIt.CloneWithoutNote to ScPostIt.Clone, while completely
removing ScPostIt.CloneWithNote. Any cloning of cell notes must now
be handled outside external to the ScPostIt class, through
ScDocument.*Note() functions.
* Rename ScNoteCell to a more ScEmptyCell. I expect this can be
completely removed at some point the future, if we can handle
broadcasters external to the cell logic.
* Add ScDocument and ScTable to ScUsedAreaIterator data structure to
accomodate for new placement of ScPostIt objects in ScDocument.
* Convert CELLTYPE_NOTE to CELLTYPE_EMPTY (and all ensuing uses).
* Wherever possible, respect 80-columns.
* New ScDocument based API (individually block-comment documented before
their definitions):
SC_DLLPUBLIC ScPostIt* GetNote( ScAddress const & );
SC_DLLPUBLIC ScPostIt* GetOrCreateNote( const ScAddress& rPos );
bool SetNote( ScAddress const &, ScPostIt* );
bool MoveNote( ScAddress const & from, ScAddress const & to );
bool SwapNotes( ScAddress const &, ScAddress const & );
ScPostIt* ReleaseNote( ScAddress const & );
void DeleteNote( ScAddress const & );
Of note, TakeNote has been replaced with SetNote, which returns true on
success, and false on failure. TakeNote indicated failure by removing
the passed note. The SetNote approach leaves room for the caller to
attempt to fix the issue, but also means the caller is now on the hook
to cleanup the memory. For now, the Calc-internal API is lazy and does
not take advantage of this, but merely says "You failed? Oh well,
delete the note." ... which is exactly what TakeNote did. This means, the
lazy-programmer's idiom for SetNote use is:
if ( ! pDoc->SetNote( aAddress, pNotePointer ) )
DELETEZ( pNotePointer );
|
|
|
|
|
|
|
|
you can now use e.g. thisComponent.sheets(0).namedRanges
|
|
|
|
This change should allow handling double-quation inside quoted cells
correctly.
|
|
some windows builds crash in this test, maybe they get a false language
setting from somewhere
|
|
|
|
|
|
A regression from 3.3. Calc wouldn't display page background color
or image in print preview. This was a side effect of the removal
of the high-contract mode.
In 3.3, Calc purpusefully wouldn't show background color/image when
the app is in high contrast mode. Now that the mode has been removed,
the code acted as though the high contract mode is always on, which
caused the background color/image to always be hidden in print preview.
|
|
|
|
|
|
|
|
This cleans up a lot of lifecycle nasties and cleans up some serious
cut/paste code duplication issues at the same time. Cleanup the
naming of ColorTable -> ColorList to match the impl. too
|
|
still missing:
* change the more button to something more modern
* change the position of the range options to the place below the more
button
* insert/paste button is missing
* last inserted item should be selected by default
additional future improvements:
* filters
* search bar
|
|
|
|
We need to map Excel's database ranges (or in Excel's terminology
"tables") to named db ranges because they may be referenced in formula
expressions. Also, Excel tables are always of the form Table*[] when
used in formulas. Skip the "[]" part then the preceding token is a
valid database range.
|
|
Call ScDPCollection::ClearCache() to remove cache during refreshing.
|
|
The previous code was modifying the selection data (ScMarkData) in
a not-so-obvious fashion during the search and/or replace. Let's only
modify selection in the view code to avoid surprises. The document
model shouldn't be modifying the view model.
Those methods that were taking a reference to ScMarkData now take a
const reference instead.
|
|
|
|
This avoids refreshing on an invalid source range which causes an
empty pivot table output.
|
|
|
|
|