LibreOffice Module sc (master)  1
Public Member Functions | Public Attributes | List of all members
ScRefCellValue Struct Reference

This is very similar to ScCellValue, except that it references the original value instead of copying it. More...

#include <cellvalue.hxx>

Collaboration diagram for ScRefCellValue:
[legend]

Public Member Functions

 ScRefCellValue ()
 
 ScRefCellValue (double fValue)
 
 ScRefCellValue (const svl::SharedString *pString)
 
 ScRefCellValue (const EditTextObject *pEditText)
 
 ScRefCellValue (ScFormulaCell *pFormula)
 
 ScRefCellValue (ScDocument &rDoc, const ScAddress &rPos)
 Take cell value from specified position in specified document. More...
 
 ScRefCellValue (ScDocument &rDoc, const ScAddress &rPos, sc::ColumnBlockPosition &rBlockPos)
 
void clear ()
 
void assign (ScDocument &rDoc, const ScAddress &rPos)
 Take cell value from specified position in specified document. More...
 
void assign (ScDocument &rDoc, const ScAddress &rPos, sc::ColumnBlockPosition &rBlockPos)
 
void commit (ScDocument &rDoc, const ScAddress &rPos) const
 Set cell value at specified position in specified document. More...
 
bool hasString () const
 
bool hasNumeric () const
 
bool hasError () const
 
double getValue ()
 
double getRawValue () const
 Retrieve a numeric value without modifying the states of any objects in the referenced document store. More...
 
OUString getString (const ScDocument *pDoc) const
 Retrieve string value. More...
 
OUString getRawString (const ScDocument &rDoc) const
 Retrieve a string value without modifying the states of any objects in the referenced document store. More...
 
bool isEmpty () const
 
bool hasEmptyValue ()
 
bool equalsWithoutFormat (const ScRefCellValue &r) const
 

Public Attributes

CellType meType
 
union {
   double   mfValue
 
   const svl::SharedString *   mpString
 
   const EditTextObject *   mpEditText
 
   ScFormulaCell *   mpFormula
 
}; 
 

Detailed Description

This is very similar to ScCellValue, except that it references the original value instead of copying it.

As such, don't hold an instance of this class any longer than necessary, and absolutely not after the original cell has been destroyed.

Definition at line 104 of file cellvalue.hxx.

Constructor & Destructor Documentation

ScRefCellValue::ScRefCellValue ( )

Definition at line 559 of file cellvalue.cxx.

References meType.

ScRefCellValue::ScRefCellValue ( double  fValue)

Definition at line 560 of file cellvalue.cxx.

References meType.

ScRefCellValue::ScRefCellValue ( const svl::SharedString pString)

Definition at line 561 of file cellvalue.cxx.

References meType.

ScRefCellValue::ScRefCellValue ( const EditTextObject pEditText)

Definition at line 562 of file cellvalue.cxx.

References meType.

ScRefCellValue::ScRefCellValue ( ScFormulaCell pFormula)

Definition at line 563 of file cellvalue.cxx.

References meType, and mpFormula.

ScRefCellValue::ScRefCellValue ( ScDocument rDoc,
const ScAddress rPos 
)

Take cell value from specified position in specified document.

Definition at line 565 of file cellvalue.cxx.

References assign().

ScRefCellValue::ScRefCellValue ( ScDocument rDoc,
const ScAddress rPos,
sc::ColumnBlockPosition rBlockPos 
)

Definition at line 570 of file cellvalue.cxx.

References assign().

Member Function Documentation

void ScRefCellValue::assign ( ScDocument rDoc,
const ScAddress rPos 
)

Take cell value from specified position in specified document.

Definition at line 582 of file cellvalue.cxx.

References ScDocument::GetRefCellValue().

Referenced by ScGridWindow::Command(), ScDocument::GetCondResult(), ScOutputData::GetVisibleCell(), lcl_GetHyperlinkCell(), and ScRefCellValue().

void ScRefCellValue::assign ( ScDocument rDoc,
const ScAddress rPos,
sc::ColumnBlockPosition rBlockPos 
)

Definition at line 587 of file cellvalue.cxx.

References ScDocument::GetRefCellValue().

void ScRefCellValue::clear ( )
void ScRefCellValue::commit ( ScDocument rDoc,
const ScAddress rPos 
) const
bool ScRefCellValue::equalsWithoutFormat ( const ScRefCellValue r) const
OUString ScRefCellValue::getRawString ( const ScDocument rDoc) const

Retrieve a string value without modifying the states of any objects in the referenced document store.

This method is thread-safe.

Definition at line 665 of file cellvalue.cxx.

double ScRefCellValue::getRawValue ( ) const

Retrieve a numeric value without modifying the states of any objects in the referenced document store.

Definition at line 646 of file cellvalue.cxx.

References CELLTYPE_FORMULA, CELLTYPE_VALUE, ScFormulaCell::GetRawValue(), meType, mfValue, and mpFormula.

OUString ScRefCellValue::getString ( const ScDocument pDoc) const
double ScRefCellValue::getValue ( )
bool ScRefCellValue::hasEmptyValue ( )
bool ScRefCellValue::hasError ( ) const
bool ScRefCellValue::hasNumeric ( ) const
bool ScRefCellValue::hasString ( ) const
bool ScRefCellValue::isEmpty ( ) const

Member Data Documentation

union { ... }
CellType ScRefCellValue::meType

Definition at line 106 of file cellvalue.hxx.

Referenced by ScViewFunc::ApplySelectionPattern(), ScDocShell::AsciiSave(), ScCellValue::assign(), ScQueryCellIterator::BinarySearch(), ScChart2DataSequence::BuildDataCache(), clear(), ScGridWindow::Command(), commit(), ScTable::CompareCell(), convertToToken(), ScDocShell::DBaseExport(), ScTable::DoAutoOutline(), ScImportExport::Doc2Sylk(), ScImportExport::Doc2Text(), ScOutputData::DrawRotated(), ScCellShell::ExecuteFillSingleEdit(), ScTable::FillAnalyse(), ScDocumentImport::fillDownCells(), ScConversionEngineBase::FillFromCell(), ScDocument::FillInfo(), ScAccessibleCell::FillPrecedents(), ScOutputData::FindChanged(), ScDetectiveFunc::FindPredLevel(), ScCellRangeObj::getArrayFormula(), ScCellRangeObj::getArrayTokens(), ScTable::GetAutoFillPreview(), ScInterpreter::GetCellErrCode(), ScInterpreter::GetCellNumberFormat(), ScInterpreter::GetCellString(), ScColumn::GetCellValue(), ScCellIterator::getCellValue(), ScInterpreter::GetCellValueOrZero(), ScChangeActionContent::GetContentCellType(), ScDBQueryDataIterator::DataAccessInternal::getCurrent(), ScGridWindow::GetEditUrl(), ScTabViewShell::GetFormula(), ScCellFormat::GetInputString(), ScColumn::GetNeededSize(), ScHorizontalValueIterator::GetNext(), ScCellFormat::GetOutputString(), getRawValue(), ScCellFormat::GetString(), ScColumn::GetString(), ScDocument::GetStringForFormula(), ScCellTextData::GetTextForwarder(), ScCellObj::getTokens(), ScCellIterator::getType(), getValue(), hasEmptyValue(), hasError(), hasNumeric(), hasString(), ScDetectiveFunc::InsertErrorLevel(), ScDetectiveFunc::InsertPredLevel(), ScTable::InvalidateTextWidth(), ScValidationData::IsDataValid(), ScValidationData::IsDataValidCustom(), ScXMLExport::IsEditCell(), isEmpty(), ScConditionEntry::IsError(), ScInterpreter::IsEven(), ScGridWindow::IsSpellErrorAtPos(), ScInterpreter::IsString(), ScInterpreter::IterateParameters(), ScInterpreter::IterateParametersIf(), ScInterpreter::IterateParametersIfs(), ScOutputData::LayoutStrings(), lcl_DoHyperlinkResult(), lcl_GetCellContent(), lcl_GetHyperlinkCell(), lcl_GetInputString(), lcl_IsAutoSumData(), lcl_IsEditableMatrix(), lcl_SafeIsValue(), ScColumn::ParseString(), ScXMLTableRowCellContext::PutTextCell(), SpellCheckContext::SpellCheckCache::query(), ScTable::Query(), ScAttrArray::RemoveCellCharAttribs(), SameValue(), ScCellValue::ScCellValue(), ScInterpreter::ScCountIf(), ScFormatFilterPluginImpl::ScExportDif(), ScInterpreter::ScFormula(), ScInterpreter::ScIsEmpty(), ScInterpreter::ScIsFormula(), ScInterpreter::ScIsValue(), ScInterpreter::ScMatRef(), ScInterpreter::ScMatValue(), ScInterpreter::ScT(), ScInterpreter::ScType(), ScTable::SearchCell(), SpellCheckContext::SpellCheckCache::set(), ScMyNotEmptyCellsIterator::SetCellData(), ScOutputData::SetEditSyntaxColor(), ScOutputData::SetSyntaxColor(), ScDrawStringsVars::SetTextToWidthOrHash(), ScDocument::TransliterateText(), ScTabViewShell::UpdateInputHandler(), ScRTFExport::WriteCell(), ScHTMLExport::WriteCell(), ScXMLExport::WriteCell(), and XclExpCellTable::XclExpCellTable().

double ScRefCellValue::mfValue
const EditTextObject* ScRefCellValue::mpEditText
ScFormulaCell* ScRefCellValue::mpFormula

Definition at line 111 of file cellvalue.hxx.

Referenced by ScDocShell::AsciiSave(), ScCellValue::assign(), ScQueryCellIterator::BinarySearch(), ScChart2DataSequence::BuildDataCache(), commit(), ScTable::CompareCell(), convertToToken(), ScTable::DoAutoOutline(), ScImportExport::Doc2Sylk(), ScImportExport::Doc2Text(), ScCellShell::ExecuteFillSingleEdit(), ScAccessibleCell::FillPrecedents(), ScOutputData::FindChanged(), ScDetectiveFunc::FindPredLevel(), ScCellRangeObj::getArrayFormula(), ScCellRangeObj::getArrayTokens(), ScTable::GetAutoFillPreview(), ScInterpreter::GetCellErrCode(), ScInterpreter::GetCellNumberFormat(), ScInterpreter::GetCellString(), ScColumn::GetCellValue(), ScCellIterator::getCellValue(), ScInterpreter::GetCellValueOrZero(), ScChangeActionContent::GetContentCellType(), ScCellObj::GetContentType_Impl(), ScDBQueryDataIterator::DataAccessInternal::getCurrent(), ScGridWindow::GetEditUrl(), ScCellObj::getError(), ScTabViewShell::GetFormula(), ScCellIterator::getFormulaCell(), ScCellFormat::GetInputString(), ScColumn::GetNeededSize(), ScHorizontalValueIterator::GetNext(), getRawValue(), ScCellFormat::GetString(), ScColumn::GetString(), ScDocument::GetStringForFormula(), ScCellObj::getTokens(), getValue(), hasEmptyValue(), hasError(), hasNumeric(), hasString(), ScDetectiveFunc::InsertErrorLevel(), ScDetectiveFunc::InsertPredLevel(), ScTable::InvalidateTextWidth(), ScValidationData::IsDataValid(), ScConditionEntry::IsError(), ScInterpreter::IsEven(), ScInterpreter::IsString(), ScInterpreter::IterateParametersIf(), ScInterpreter::IterateParametersIfs(), ScOutputData::LayoutStrings(), lcl_DoHyperlinkResult(), lcl_GetCellContent(), lcl_GetHyperlinkCell(), lcl_GetInputString(), lcl_IsAutoSumData(), lcl_IsEditableMatrix(), lcl_SafeIsValue(), ScXMLTableRowCellContext::PutTextCell(), ScTable::Query(), ScCellValue::ScCellValue(), ScInterpreter::ScCountIf(), ScFormatFilterPluginImpl::ScExportDif(), ScInterpreter::ScFormula(), ScInterpreter::ScIsValue(), ScInterpreter::ScMatRef(), ScInterpreter::ScMatValue(), ScInterpreter::ScT(), ScTable::SearchCell(), ScDrawStringsVars::SetTextToWidthOrHash(), ScTabViewShell::UpdateInputHandler(), ScHTMLExport::WriteCell(), ScXMLExport::WriteCell(), and XclExpCellTable::XclExpCellTable().

const svl::SharedString* ScRefCellValue::mpString

The documentation for this struct was generated from the following files: