Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
|
#include <cjx_object.h>
Classes | |
class | CalcData |
Public Types | |
enum class | TypeTag { Boolean , Container , DataWindow , Delta , Desc , Draw , Encrypt , EventPseudoModel , ExclGroup , Extras , Field , Form , Handler , HostPseudoModel , InstanceManager , LayoutPseudoModel , List , LogPseudoModel , Manifest , Model , Node , Object , Occur , Packet , Script , SignaturePesudoModel , Source , Subform , SubformSet , Template , TextNode , Tree , TreeList , WsdlConnection , Xfa } |
Public Member Functions | |
~CJX_Object () override | |
CJX_Object * | AsCJXObject () override |
virtual void | Trace (cppgc::Visitor *visitor) const |
virtual bool | DynamicTypeIs (TypeTag eType) const |
JSE_PROP (className) | |
CXFA_Document * | GetDocument () const |
CXFA_Node * | GetXFANode () const |
CXFA_Object * | GetXFAObject () const |
void | SetCalcRecursionCount (size_t count) |
size_t | GetCalcRecursionCount () const |
void | SetLayoutItem (CXFA_LayoutItem *item) |
CXFA_LayoutItem * | GetLayoutItem () const |
bool | HasMethod (const WideString &func) const |
CJS_Result | RunMethod (CFXJSE_Engine *pScriptContext, const WideString &func, pdfium::span< v8::Local< v8::Value > > params) |
bool | HasAttribute (XFA_Attribute eAttr) const |
WideString | GetAttributeByString (WideStringView attr) const |
WideString | GetAttributeByEnum (XFA_Attribute attr) const |
absl::optional< WideString > | TryAttribute (XFA_Attribute eAttr, bool bUseDefault) const |
void | SetAttributeByEnum (XFA_Attribute eAttr, const WideString &wsValue, bool bNotify) |
void | SetAttributeByString (WideStringView wsAttr, const WideString &wsValue) |
void | RemoveAttribute (WideStringView wsAttr) |
WideString | GetContent (bool bScriptModify) const |
absl::optional< WideString > | TryContent (bool bScriptModify, bool bProto) const |
void | SetContent (const WideString &wsContent, const WideString &wsXMLValue, bool bNotify, bool bScriptModify, bool bSyncData) |
template<typename T > | |
T * | GetProperty (int32_t index, XFA_Element eType) const |
template<typename T > | |
T * | GetOrCreateProperty (int32_t index, XFA_Element eType) |
void | SetAttributeValue (const WideString &wsValue, const WideString &wsXMLValue) |
JSE_PROP (ScriptAttributeString) | |
JSE_PROP (ScriptAttributeBool) | |
JSE_PROP (ScriptAttributeInteger) | |
JSE_PROP (ScriptSomFontColor) | |
JSE_PROP (ScriptSomFillColor) | |
JSE_PROP (ScriptSomBorderColor) | |
JSE_PROP (ScriptSomBorderWidth) | |
JSE_PROP (ScriptSomValidationMessage) | |
JSE_PROP (ScriptSomMandatoryMessage) | |
JSE_PROP (ScriptSomDefaultValue) | |
JSE_PROP (ScriptSomDefaultValue_Read) | |
JSE_PROP (ScriptSomDataNode) | |
JSE_PROP (ScriptSomMandatory) | |
JSE_PROP (ScriptSomInstanceIndex) | |
JSE_PROP (ScriptSubmitFormatMode) | |
absl::optional< WideString > | TryNamespace () const |
int32_t | GetInteger (XFA_Attribute eAttr) const |
absl::optional< int32_t > | TryInteger (XFA_Attribute eAttr, bool bUseDefault) const |
void | SetInteger (XFA_Attribute eAttr, int32_t iValue, bool bNotify) |
WideString | GetCData (XFA_Attribute eAttr) const |
absl::optional< WideString > | TryCData (XFA_Attribute eAttr, bool bUseDefault) const |
void | SetCData (XFA_Attribute eAttr, const WideString &wsValue) |
XFA_AttributeValue | GetEnum (XFA_Attribute eAttr) const |
absl::optional< XFA_AttributeValue > | TryEnum (XFA_Attribute eAttr, bool bUseDefault) const |
void | SetEnum (XFA_Attribute eAttr, XFA_AttributeValue eValue, bool bNotify) |
bool | GetBoolean (XFA_Attribute eAttr) const |
absl::optional< bool > | TryBoolean (XFA_Attribute eAttr, bool bUseDefault) const |
void | SetBoolean (XFA_Attribute eAttr, bool bValue, bool bNotify) |
CXFA_Measurement | GetMeasure (XFA_Attribute eAttr) const |
float | GetMeasureInUnit (XFA_Attribute eAttr, XFA_Unit unit) const |
absl::optional< CXFA_Measurement > | TryMeasure (XFA_Attribute eAttr, bool bUseDefault) const |
absl::optional< float > | TryMeasureAsFloat (XFA_Attribute attr) const |
void | SetMeasure (XFA_Attribute eAttr, const CXFA_Measurement &mValue, bool bNotify) |
void | MergeAllData (CXFA_Object *pDstObj) |
CalcData * | GetCalcData () const |
CalcData * | GetOrCreateCalcData (cppgc::Heap *heap) |
void | TakeCalcDataFrom (CJX_Object *that) |
void | ThrowInvalidPropertyException (v8::Isolate *pIsolate) const |
void | ThrowArgumentMismatchException (v8::Isolate *pIsolate) const |
void | ThrowIndexOutOfBoundsException (v8::Isolate *pIsolate) const |
void | ThrowParamCountMismatchException (v8::Isolate *pIsolate, const WideString &method) const |
void | ThrowTooManyOccurrencesException (v8::Isolate *pIsolate, const WideString &obj) const |
Public Member Functions inherited from CFXJSE_HostObject | |
virtual | ~CFXJSE_HostObject () |
virtual CFXJSE_FormCalcContext * | AsFormCalcContext () |
v8::Local< v8::Object > | NewBoundV8Object (v8::Isolate *pIsolate, v8::Local< v8::FunctionTemplate > tmpl) |
Public Attributes | |
CONSTRUCT_VIA_MAKE_GARBAGE_COLLECTED | |
Protected Types | |
enum class | SOMMessageType { kValidationMessage , kFormatMessage , kMandatoryMessage } |
Protected Member Functions | |
CJX_Object (CXFA_Object *obj) | |
void | ScriptSomMessage (v8::Isolate *pIsolate, v8::Local< v8::Value > *pValue, bool bSetting, SOMMessageType iMessageType) |
void | SetAttributeValueImpl (const WideString &wsValue, const WideString &wsXMLValue, bool bNotify, bool bScriptModify) |
void | SetCDataImpl (XFA_Attribute eAttr, const WideString &wsValue, bool bNotify, bool bScriptModify) |
void | DefineMethods (pdfium::span< const CJX_MethodSpec > methods) |
void | MoveBufferMapData (CXFA_Object *pSrcObj, CXFA_Object *pDstObj) |
void | ThrowException (v8::Isolate *pIsolate, const WideString &str) const |
Protected Member Functions inherited from CFXJSE_HostObject | |
CFXJSE_HostObject () | |
Additional Inherited Members | |
Static Public Member Functions inherited from CFXJSE_HostObject | |
static CFXJSE_HostObject * | FromV8 (v8::Local< v8::Value > arg) |
Definition at line 45 of file cjx_object.h.
|
strongprotected |
Enumerator | |
---|---|
kValidationMessage | |
kFormatMessage | |
kMandatoryMessage |
Definition at line 220 of file cjx_object.h.
|
strong |
Definition at line 49 of file cjx_object.h.
|
overridedefault |
|
explicitprotected |
Definition at line 103 of file cjx_object.cpp.
Referenced by CJX_Tree::CJX_Tree().
|
overridevirtual |
Reimplemented from CFXJSE_HostObject.
Definition at line 107 of file cjx_object.cpp.
|
protected |
Definition at line 121 of file cjx_object.cpp.
Referenced by CJX_Container::CJX_Container(), CJX_List::CJX_List(), CJX_Model::CJX_Model(), CJX_Node::CJX_Node(), and CJX_Tree::CJX_Tree().
|
virtual |
Reimplemented in CJX_Boolean, CJX_Container, CJX_DataWindow, CJX_Delta, CJX_Desc, CJX_Draw, CJX_Encrypt, CJX_EventPseudoModel, CJX_ExclGroup, CJX_Extras, CJX_Field, CJX_Form, CJX_Handler, CJX_HostPseudoModel, CJX_InstanceManager, CJX_LayoutPseudoModel, CJX_List, CJX_LogPseudoModel, CJX_Manifest, CJX_Model, CJX_Node, CJX_Occur, CJX_Packet, CJX_Script, CJX_SignaturePseudoModel, CJX_Source, CJX_Subform, CJX_Template, CJX_TextNode, CJX_Tree, CJX_TreeList, CJX_WsdlConnection, and CJX_Xfa.
Definition at line 117 of file cjx_object.cpp.
Referenced by CJX_Boolean::DynamicTypeIs(), CJX_DataWindow::DynamicTypeIs(), CJX_Delta::DynamicTypeIs(), CJX_EventPseudoModel::DynamicTypeIs(), CJX_HostPseudoModel::DynamicTypeIs(), CJX_LayoutPseudoModel::DynamicTypeIs(), CJX_List::DynamicTypeIs(), CJX_LogPseudoModel::DynamicTypeIs(), CJX_SignaturePseudoModel::DynamicTypeIs(), and CJX_Tree::DynamicTypeIs().
WideString CJX_Object::GetAttributeByEnum | ( | XFA_Attribute | attr | ) | const |
Definition at line 268 of file cjx_object.cpp.
WideString CJX_Object::GetAttributeByString | ( | WideStringView | attr | ) | const |
Definition at line 258 of file cjx_object.cpp.
bool CJX_Object::GetBoolean | ( | XFA_Attribute | eAttr | ) | const |
Definition at line 329 of file cjx_object.cpp.
|
inline |
Definition at line 207 of file cjx_object.h.
|
inline |
Definition at line 116 of file cjx_object.h.
WideString CJX_Object::GetCData | ( | XFA_Attribute | eAttr | ) | const |
Definition at line 422 of file cjx_object.cpp.
Referenced by TryNamespace().
WideString CJX_Object::GetContent | ( | bool | bScriptModify | ) | const |
Definition at line 689 of file cjx_object.cpp.
CXFA_Document * CJX_Object::GetDocument | ( | ) | const |
Definition at line 126 of file cjx_object.cpp.
Referenced by CJX_Node::execSingleEventByName(), CJX_InstanceManager::MoveInstance(), ScriptSomMessage(), and TryContent().
XFA_AttributeValue CJX_Object::GetEnum | ( | XFA_Attribute | eAttr | ) | const |
Definition at line 377 of file cjx_object.cpp.
Referenced by TryNamespace().
int32_t CJX_Object::GetInteger | ( | XFA_Attribute | eAttr | ) | const |
Definition at line 341 of file cjx_object.cpp.
|
inline |
Definition at line 119 of file cjx_object.h.
CXFA_Measurement CJX_Object::GetMeasure | ( | XFA_Attribute | eAttr | ) | const |
Definition at line 414 of file cjx_object.cpp.
Referenced by GetMeasureInUnit().
float CJX_Object::GetMeasureInUnit | ( | XFA_Attribute | eAttr, |
XFA_Unit | unit ) const |
Definition at line 418 of file cjx_object.cpp.
References GetMeasure(), and CXFA_Measurement::ToUnit().
CJX_Object::CalcData * CJX_Object::GetOrCreateCalcData | ( | cppgc::Heap * | heap | ) |
Definition at line 969 of file cjx_object.cpp.
|
inline |
Definition at line 150 of file cjx_object.h.
|
inline |
Definition at line 146 of file cjx_object.h.
CXFA_Node * CJX_Object::GetXFANode | ( | ) | const |
Definition at line 130 of file cjx_object.cpp.
References GetXFAObject(), and ToNode().
Referenced by CJX_Node::execSingleEventByName(), CJX_InstanceManager::MoveInstance(), ScriptSomMessage(), SetAttributeByEnum(), SetAttributeValueImpl(), SetCDataImpl(), SetContent(), TryAttribute(), TryBoolean(), TryCData(), TryContent(), TryEnum(), TryInteger(), TryMeasure(), and TryNamespace().
|
inline |
Definition at line 113 of file cjx_object.h.
Referenced by GetXFANode(), HasAttribute(), SetMeasure(), CFXJSE_Engine::ToObject(), TryBoolean(), TryCData(), TryEnum(), TryInteger(), and TryMeasure().
bool CJX_Object::HasAttribute | ( | XFA_Attribute | eAttr | ) | const |
Definition at line 211 of file cjx_object.cpp.
References CXFA_Object::GetElementType(), and GetXFAObject().
bool CJX_Object::HasMethod | ( | const WideString & | func | ) | const |
Definition at line 158 of file cjx_object.cpp.
Referenced by CFXJSE_Engine::GlobalPropTypeGetter(), and CFXJSE_Engine::NormalPropTypeGetter().
CJX_Object::JSE_PROP | ( | className | ) |
CJX_Object::JSE_PROP | ( | ScriptAttributeBool | ) |
CJX_Object::JSE_PROP | ( | ScriptAttributeInteger | ) |
CJX_Object::JSE_PROP | ( | ScriptAttributeString | ) |
CJX_Object::JSE_PROP | ( | ScriptSomBorderColor | ) |
CJX_Object::JSE_PROP | ( | ScriptSomBorderWidth | ) |
CJX_Object::JSE_PROP | ( | ScriptSomDataNode | ) |
CJX_Object::JSE_PROP | ( | ScriptSomDefaultValue | ) |
CJX_Object::JSE_PROP | ( | ScriptSomDefaultValue_Read | ) |
CJX_Object::JSE_PROP | ( | ScriptSomFillColor | ) |
CJX_Object::JSE_PROP | ( | ScriptSomFontColor | ) |
CJX_Object::JSE_PROP | ( | ScriptSomInstanceIndex | ) |
CJX_Object::JSE_PROP | ( | ScriptSomMandatory | ) |
CJX_Object::JSE_PROP | ( | ScriptSomMandatoryMessage | ) |
CJX_Object::JSE_PROP | ( | ScriptSomValidationMessage | ) |
CJX_Object::JSE_PROP | ( | ScriptSubmitFormatMode | ) |
void CJX_Object::MergeAllData | ( | CXFA_Object * | pDstObj | ) |
Definition at line 908 of file cjx_object.cpp.
References CFXJSE_MapModule::MergeDataFrom(), and ToNode().
|
protected |
Definition at line 937 of file cjx_object.cpp.
References ToNode().
void CJX_Object::RemoveAttribute | ( | WideStringView | wsAttr | ) |
Definition at line 306 of file cjx_object.cpp.
CJS_Result CJX_Object::RunMethod | ( | CFXJSE_Engine * | pScriptContext, |
const WideString & | func, | ||
pdfium::span< v8::Local< v8::Value > > | params ) |
Definition at line 162 of file cjx_object.cpp.
References CJS_Result::Failure(), and kUnknownMethod.
|
protected |
Definition at line 1192 of file cjx_object.cpp.
References CXFA_FFNotify::AddCalcValidate(), GetDocument(), CXFA_Validate::GetFormatMessageText(), CXFA_Document::GetNotify(), CXFA_Validate::GetNullMessageText(), CXFA_Validate::GetScriptMessageText(), GetXFANode(), kFormatMessage, kMandatoryMessage, kValidationMessage, fxcrt::WideString::operator=(), CXFA_Validate::SetFormatMessageText(), CXFA_Validate::SetNullMessageText(), CXFA_Validate::SetScriptMessageText(), ThrowInvalidPropertyException(), and fxcrt::WideString::ToUTF8().
void CJX_Object::SetAttributeByEnum | ( | XFA_Attribute | eAttr, |
const WideString & | wsValue, | ||
bool | bNotify ) |
Definition at line 216 of file cjx_object.cpp.
References fxcrt::WideString::WideString(), Boolean, CData, Enum, fxcrt::WideString::EqualsASCII(), CXFA_Node::GetAttributeType(), GetXFANode(), Measure, SetBoolean(), SetCDataImpl(), and SetMeasure().
Referenced by SetContent().
void CJX_Object::SetAttributeByString | ( | WideStringView | wsAttr, |
const WideString & | wsValue ) |
Definition at line 247 of file cjx_object.cpp.
void CJX_Object::SetAttributeValue | ( | const WideString & | wsValue, |
const WideString & | wsXMLValue ) |
Definition at line 474 of file cjx_object.cpp.
References SetAttributeValueImpl().
|
protected |
Definition at line 479 of file cjx_object.cpp.
References CXFA_Object::GetElementType(), GetXFANode(), CXFA_Node::IsNeedSavingXMLNode(), and CXFA_Node::SetToXML().
Referenced by SetAttributeValue(), and SetContent().
void CJX_Object::SetBoolean | ( | XFA_Attribute | eAttr, |
bool | bValue, | ||
bool | bNotify ) |
Definition at line 321 of file cjx_object.cpp.
References fxcrt::WideString::FromASCII(), and CFX_XMLElement::SetAttribute().
Referenced by SetAttributeByEnum().
|
inline |
Definition at line 115 of file cjx_object.h.
void CJX_Object::SetCData | ( | XFA_Attribute | eAttr, |
const WideString & | wsValue ) |
Definition at line 426 of file cjx_object.cpp.
References SetCDataImpl().
|
protected |
Definition at line 430 of file cjx_object.cpp.
References fxcrt::WideString::FromASCII(), CXFA_Object::GetElementType(), GetXFANode(), CXFA_Node::GetXMLMappingNode(), CXFA_Node::IsNeedSavingXMLNode(), fxcrt::operator+(), fxcrt::WideString::operator=(), CFX_XMLElement::SetAttribute(), CXFA_Node::SetToXML(), ToXMLElement(), and CXFA_Node::UpdateNameHash().
Referenced by SetAttributeByEnum(), and SetCData().
void CJX_Object::SetContent | ( | const WideString & | wsContent, |
const WideString & | wsXMLValue, | ||
bool | bNotify, | ||
bool | bScriptModify, | ||
bool | bSyncData ) |
Definition at line 528 of file cjx_object.cpp.
References fxcrt::WideString::clear(), ContainerNode, ContentNode, CXFA_Node::CreateSamePacketNode(), CXFA_Node::CreateXMLMappingNode(), fxcrt::WideString::EqualsASCII(), CXFA_Node::GetBindData(), CXFA_Object::GetElementType(), CXFA_Object::GetObjectType(), CXFA_Node::GetPacketType(), GetXFANode(), CXFA_Node::InsertChildAndNotify(), CXFA_Object::IsContainerNode(), NodeC, NodeV, CXFA_Node::RemoveChildAndNotify(), SetAttributeByEnum(), SetAttributeValueImpl(), TextNode, and XFA_FieldIsMultiListBox().
void CJX_Object::SetEnum | ( | XFA_Attribute | eAttr, |
XFA_AttributeValue | eValue, | ||
bool | bNotify ) |
Definition at line 367 of file cjx_object.cpp.
References fxcrt::WideString::FromASCII(), and CFX_XMLElement::SetAttribute().
void CJX_Object::SetInteger | ( | XFA_Attribute | eAttr, |
int32_t | iValue, | ||
bool | bNotify ) |
Definition at line 333 of file cjx_object.cpp.
References fxcrt::WideString::FormatInteger(), fxcrt::WideString::FromASCII(), and CFX_XMLElement::SetAttribute().
|
inline |
Definition at line 118 of file cjx_object.h.
void CJX_Object::SetMeasure | ( | XFA_Attribute | eAttr, |
const CXFA_Measurement & | mValue, | ||
bool | bNotify ) |
Definition at line 381 of file cjx_object.cpp.
References CXFA_Object::GetElementType(), and GetXFAObject().
Referenced by SetAttributeByEnum().
void CJX_Object::TakeCalcDataFrom | ( | CJX_Object * | that | ) |
Definition at line 977 of file cjx_object.cpp.
void CJX_Object::ThrowArgumentMismatchException | ( | v8::Isolate * | pIsolate | ) | const |
Definition at line 199 of file cjx_object.cpp.
References fxcrt::WideString::FromASCII(), and ThrowException().
|
protected |
Definition at line 205 of file cjx_object.cpp.
References fxcrt::WideString::ToUTF8().
Referenced by ThrowArgumentMismatchException(), ThrowIndexOutOfBoundsException(), ThrowInvalidPropertyException(), ThrowParamCountMismatchException(), and ThrowTooManyOccurrencesException().
void CJX_Object::ThrowIndexOutOfBoundsException | ( | v8::Isolate * | pIsolate | ) | const |
Definition at line 185 of file cjx_object.cpp.
References fxcrt::WideString::FromASCII(), and ThrowException().
Referenced by CJX_InstanceManager::MoveInstance().
void CJX_Object::ThrowInvalidPropertyException | ( | v8::Isolate * | pIsolate | ) | const |
Definition at line 180 of file cjx_object.cpp.
References fxcrt::WideString::FromASCII(), and ThrowException().
Referenced by ScriptSomMessage().
void CJX_Object::ThrowParamCountMismatchException | ( | v8::Isolate * | pIsolate, |
const WideString & | method ) const |
Definition at line 190 of file cjx_object.cpp.
References fxcrt::WideString::FromASCII(), and ThrowException().
void CJX_Object::ThrowTooManyOccurrencesException | ( | v8::Isolate * | pIsolate, |
const WideString & | obj ) const |
Definition at line 172 of file cjx_object.cpp.
References fxcrt::WideString::FromASCII(), and ThrowException().
|
virtual |
Definition at line 111 of file cjx_object.cpp.
absl::optional< WideString > CJX_Object::TryAttribute | ( | XFA_Attribute | eAttr, |
bool | bUseDefault ) const |
Definition at line 272 of file cjx_object.cpp.
References Boolean, Enum, CXFA_Node::GetAttributeType(), GetXFANode(), Integer, and Measure.
absl::optional< bool > CJX_Object::TryBoolean | ( | XFA_Attribute | eAttr, |
bool | bUseDefault ) const |
Definition at line 310 of file cjx_object.cpp.
References CXFA_Object::GetElementType(), GetXFANode(), and GetXFAObject().
absl::optional< WideString > CJX_Object::TryCData | ( | XFA_Attribute | eAttr, |
bool | bUseDefault ) const |
Definition at line 498 of file cjx_object.cpp.
References CXFA_Object::GetElementType(), GetXFANode(), and GetXFAObject().
absl::optional< WideString > CJX_Object::TryContent | ( | bool | bScriptModify, |
bool | bProto ) const |
Definition at line 693 of file cjx_object.cpp.
References CFXJSE_Engine::AddNodesOfRunScript(), ContainerNode, ContentNode, CXFA_Node::CreateSamePacketNode(), CFXJSE_Engine::EventParamScope, GetDocument(), CXFA_Object::GetElementType(), CXFA_Object::GetObjectType(), CXFA_Document::GetScriptContext(), GetXFANode(), CXFA_Node::InsertChildAndNotify(), NodeC, NodeV, TextNode, and XFA_FieldIsMultiListBox().
absl::optional< XFA_AttributeValue > CJX_Object::TryEnum | ( | XFA_Attribute | eAttr, |
bool | bUseDefault ) const |
Definition at line 356 of file cjx_object.cpp.
References CXFA_Object::GetElementType(), GetXFANode(), and GetXFAObject().
absl::optional< int32_t > CJX_Object::TryInteger | ( | XFA_Attribute | eAttr, |
bool | bUseDefault ) const |
Definition at line 345 of file cjx_object.cpp.
References CXFA_Object::GetElementType(), GetXFANode(), and GetXFAObject().
absl::optional< CXFA_Measurement > CJX_Object::TryMeasure | ( | XFA_Attribute | eAttr, |
bool | bUseDefault ) const |
Definition at line 394 of file cjx_object.cpp.
References CXFA_Object::GetElementType(), GetXFANode(), and GetXFAObject().
absl::optional< float > CJX_Object::TryMeasureAsFloat | ( | XFA_Attribute | attr | ) | const |
Definition at line 407 of file cjx_object.cpp.
absl::optional< WideString > CJX_Object::TryNamespace | ( | ) | const |
Definition at line 755 of file cjx_object.cpp.
References GetCData(), CXFA_Object::GetElementType(), GetEnum(), CXFA_Node::GetModelNode(), CFX_XMLElement::GetNamespaceURI(), CXFA_Node::GetPacketType(), GetXFANode(), CXFA_Node::GetXMLMappingNode(), CXFA_Object::IsModelNode(), ToXMLElement(), and XFA_FDEExtension_ResolveNamespaceQualifier().
CJX_Object::CONSTRUCT_VIA_MAKE_GARBAGE_COLLECTED |
Definition at line 100 of file cjx_object.h.