⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 nsflog.cpp

📁 IBM Lotus C++ API 7.0a for IBM Lotus Notes/Domino Directory Release --------- ------------------
💻 CPP
📖 第 1 页 / 共 5 页
字号:
	// Append all of the fields from the CDBUTTON struct to the Log.
	LogFile << "               Type:                [CDBUTTON]" << endl;

	LogFile << "               Flags:               [";
	LogNumberData( Flags, 16 );
	LogFile << "]" << endl;

	if (Flags & BUTTON_RUNFLAG_SCRIPT)  
		LogFile << "                    BUTTON_RUNFLAG_SCRIPT" << endl;

	if (Flags & BUTTON_RUNFLAG_NOWRAP)  
		LogFile << "                    BUTTON_RUNFLAG_NOWRAP" << endl;

	if (Flags & BUTTON_RUNFLAG_RTL)  
		LogFile << "                    BUTTON_RUNFLAG_RTL" << endl;

	if (Flags & BUTTON_RUNFLAG_FIXED) 
		LogFile << "                    BUTTON_RUNFLAG_FIXED" << endl;

	if (Flags & BUTTON_RUNFLAG_MINIMUM)  
		LogFile << "                    BUTTON_RUNFLAG_MINIMUM" << endl;

	if (Flags & BUTTON_RUNFLAG_CONTENT)  
		LogFile << "                    BUTTON_RUNFLAG_CONTENT" << endl;

	LogFile << "               Width:               [";
	LogNumberData( CdButton.Width, 10 );
	LogFile << "]" << endl;

	LogFile << "               Height:              [";
	LogNumberData( CdButton.Height, 10 );
	LogFile << "]" << endl;

	LogFile << "               Lines:              [";
	LogNumberData( CdButton.Lines, 10 );
	LogFile << "]" << endl;

	// Append The FontID fields to the log.
	LogFontIDFields( CdButton.FontID );

	// Button Text Follows: Get Length using the ODSLength macro.
	Length = CdButton.Header.Length - ODSLength(_CDBUTTON);

	// Allocate memory for the Button text.
	TxtBuf = new char[Length];

	// Read the Buton text into the buffer.
	if ( Error = CD.Read( Length, TxtBuf, ODSLength(_CDBUTTON) ) )
		return Error;

	// Append the Text from the Button text to the Log make sure it is in LIMBCS!.
	ButtonStr = LNString((LNCHAR *) TxtBuf, Length);

	LogFile << "               Button Text Follows:" << endl << endl;
	LogFile << "[" << ButtonStr << "]" << endl << endl;

	// Free the text buffer!
	delete [] TxtBuf;

	return LNNOERROR;

} // END NSFLog::LogCDButton

//---------------------------------------------------------------------------
//
// Name:
//		NSFLog::LogFontIDFields
//
// Description:
//		Appends the FontID Fields from a FontID to the Log.
//
// Remarks:
//		See FONTID.H for macro definitions and FONTID and FONTIDFIELDS 
//		    data structure definitions.
//---------------------------------------------------------------------------
void NSFLog::LogFontIDFields( const FONTID &FontID )
{
	LogFile << "               Font ID Fields: Face     [";
	LogNumberData( FontGetFaceID(FontID), 10 );
	LogFile << endl;

	LogFile << "                               Attrib   [";
	LogNumberData( FontGetStyle(FontID), 10 );
	LogFile << endl;

	LogFile << "                               Color    [";
	LogNumberData( FontGetColor(FontID), 10 );
	LogFile << endl;

	LogFile << "                               Size     [";
	LogNumberData( FontGetSize(FontID), 10 );
	LogFile << endl;

} // END NSFLog::LogFontIDFields

//---------------------------------------------------------------------------
//
// Name:
//		NSFLog::LogCDSignature
//
// Description:
//		Appends the CD Signature type of a Composit Data Item to the Log.
//
//---------------------------------------------------------------------------
LNSTATUS NSFLog::LogCDSignature( const LNString &Sig )
{
	LogFile << "          CD Signature: [" << Sig << "]" << endl;

	return LNNOERROR;

} // END NSFLog::LogCDSignature

//---------------------------------------------------------------------------
//
// Name:
//		NSFLog::ProcessFontTableItem
//
// Description:
//		TBD
// Remarks:
//		A Font Table Item Class has not been implemented in the C++API at
//		this time.  This is a placeholder stub just in case the class gets
//		implemented in the future.
//---------------------------------------------------------------------------
LNSTATUS NSFLog::ProcessFontTableItem( const LNItem &Item )
{
	LNCLASSID id;
	
	id = Item.GetClassID();
 
	LogFile << "     The Font Table Class is used indirectly in the C++ API" << endl;
	LogFile << "     Use the LNFonStyle class to process Font Tables." << endl;

	return LNNOERROR;

} // END NSFLog::ProcessFontTableItem

//---------------------------------------------------------------------------
//
// Name:
//		NSFLog::GetNoteTypeString
//
// Description:
//		TBD
//
//---------------------------------------------------------------------------
LNString NSFLog::GetNoteTypeString( const LNNOTETYPE NoteType )
{	
	switch (NoteType)
	{
		case LNNOTETYPE_ACL :	
			return "ACL";

		case LNNOTETYPE_AGENT :	
			return "AGENT";

		case LNNOTETYPE_DEFAULT_FORM :		
			return "DEFAULT FORM";

		case LNNOTETYPE_DEFAULT_VIEW_FOLDER :		
			return "DEFAULT VIEW FOLDER";

		case LNNOTETYPE_DESIGN :	
			return "DESIGN";

		case LNNOTETYPE_DOCUMENT :		
			return "DOCUMENT";

		case LNNOTETYPE_FIELD :	
			return "FIELD";

		case LNNOTETYPE_FORM :		
			return "FORM";

		case LNNOTETYPE_HELP_ABOUT :	
			return "HELP ABOUT";

		case LNNOTETYPE_HELP_INDEX :	
			return "HELP INDEX";

		case LNNOTETYPE_HELP_USING :	
			return "HELP USING";

		case LNNOTETYPE_ICON :		
			return "ICON";

		case LNNOTETYPE_NOTIFY_DELETION :		
			return "NOTIFY_DELETION";

		case LNNOTETYPE_REPLICATION_FORMULA	:	
			return "REPLICATION_FORMULA";

		case LNNOTETYPE_PRIVATE	:	
			return "PRIVATE";

		case LNNOTETYPE_VIEW_FOLDER	:	
			return "VIEW_FOLDER";

		default :
			return "UNKNOWN Or UN-EXPOSED Note Type";

	} // END switch (NoteType)";

} // END NSFLog::GetNoteTypeString

//---------------------------------------------------------------------------
//
// Name:
//		NSFLog::GetItemTypeString
//
// Description:
//		translates the Item Type symbol into text.
//
// Inputs:
//		LNITEMTYPE The Item Type to be translated.
//
// Returns:
//		LNString representation of the Item Type Symbol.
//
// Remarks:
//
// The following Item Data Types are currently defined in the C++ API
// (updated for 2.1. ***dhs)
//
// C++ API Symbol               C API Symbol(s) that map to it.
// -----------------------------------------------------------------------
// LNITEMTYPE_DATETIMES			TYPE_TIME_RANGE     
// LNITEMTYPE_ERROR				TYPE_ERROR
// LNITEMTYPE_FONTTABLE			TYPE_COMPOSITE      
// LNITEMTYPE_FORMULA			TYPE_FORMULA
// LNITEMTYPE_ICON				TYPE_ICON
// LNITEMTYPE_NOTELINKS			TYPE_NOTELINK_LIST
// LNITEMTYPE_NOTEREFS			TYPE_NOTEREF_LIST
// LNITEMTYPE_NUMBERS			TYPE_NUMBER_RANGE (also) TYPE_NUMBER
// LNITEMTYPE_OBJECT			TYPE_OBJECT
// LNITEMTYPE_RICHTEXT			TYPE_COMPOSITE
// LNITEMTYPE_SIGNATURE			TYPE_SIGNATURE
// LNITEMTYPE_TEXT				TYPE_TEXT_LIST  (also) TYPE_TEXT    
// LNITEMTYPE_UNAVAILABLE		TYPE_UNAVAILABLE
// LNITEMTYPE_UNSUPPORTED		TYPE_INVALID_OR_UNKNOWN
// LNITEMTYPE_USERDATA			TYPE_USERDATA
//
// LNITEMTYPE_ACTION            TYPE_ACTION
// LNITEMTYPE_ASSISTANT_INFO    TYPE_ASSISTANT_INFO
// LNITEMTYPE_CALENDAR_FORMAT   TYPE_CALENDAR_FORMAT
// LNITEMTYPE_COLLATION         TYPE_COLLATION
// LNITEMTYPE_FORM_VIEW_ACTION	(TYPE_COMPOSITE | LNITEMTYPE_SPECIAL | LNITEMTYPE_COMPOSITE_ACTION_FLAG)
// LNITEMTYPE_HIGHLIGHTS		TYPE_HIGHLIGHTS
// LNITEMTYPE_HTML				TYPE_HTML
// LNITEMTYPE_LSOBJECT			TYPE_LSOBJECT
// LNITEMTYPE_OLE_OBJECT		(TYPE_COMPOSITE | LNITEMTYPE_SPECIAL | LNITEMTYPE_COMPOSITE_OLE_FLAG)
// LNITEMTYPE_QUERY             TYPE_QUERY
// LNITEMTYPE_SCHED_LIST        TYPE_SCHED_LIST
// LNITEMTYPE_SEAL				TYPE_SEAL
// LNITEMTYPE_SEALDATA			TYPE_SEALDATA
// LNITEMTYPE_SEAL_LIST		    TYPE_SEAL_LIST
// LNITEMTYPE_USERID			TYPE_USERID
// LNITEMTYPE_VIEW_FORMAT		TYPE_VIEW_FORMAT
// LNITEMTYPE_VIEWMAP_DATASET	TYPE_VIEWMAP_DATASET
// LNITEMTYPE_VIEWMAP_LAYOUT	TYPE_VIEWMAP_LAYOUT
// LNITEMTYPE_WORKSHEET_DATA	TYPE_WORKSHEET_DATA
//
//---------------------------------------------------------------------------
LNString NSFLog::GetItemTypeString( LNITEMTYPE ItemType )
{	
	switch (ItemType)
	{
		case LNITEMTYPE_DATETIMES :
			return "LNITEMTYPE_DATETIMES";

		case LNITEMTYPE_ERROR :	
			return "LNITEMTYPE_ERROR";

		case LNITEMTYPE_FONTTABLE :	
			return "LNITEMTYPE_FONTTABLE";

		case LNITEMTYPE_FORMULA :	
			return "LNITEMTYPE_FORMULA";

		case LNITEMTYPE_ICON :	
			return "LNITEMTYPE_ICON";

		case LNITEMTYPE_NOTELINKS :	
			return "LNITEMTYPE_NOTELINKS";

		case LNITEMTYPE_NOTEREFS :	
			return "LNITEMTYPE_NOTEREFS";

		case LNITEMTYPE_NUMBERS :	
			return "LNITEMTYPE_NUMBERS";

		case LNITEMTYPE_OBJECT :	
			return "LNITEMTYPE_OBJECT";

		case LNITEMTYPE_RICHTEXT :	
			return "LNITEMTYPE_RICHTEXT";

		case LNITEMTYPE_SIGNATURE :	
			return "LNITEMTYPE_SIGNATURE";

		case LNITEMTYPE_TEXT :	
			return "LNITEMTYPE_TEXT";

		case LNITEMTYPE_UNAVAILABLE :	
			return "LNITEMTYPE_UNAVAILABLE";

		case LNITEMTYPE_UNSUPPORTED :	
			return "LNITEMTYPE_UNSUPPORTED";

		case LNITEMTYPE_USERDATA :	
			return "LNITEMTYPE_USERDATA";

		case LNITEMTYPE_ACTION :	
			return "LNITEMTYPE_ACTION";

		case LNITEMTYPE_ASSISTANT_INFO :	
			return "LNITEMTYPE_ASSISTANT_INFO";

		case LNITEMTYPE_CALENDAR_FORMAT :	
			return "LNITEMTYPE_CALENDAR_FORMAT";

		case LNITEMTYPE_COLLATION :	
			return "LNITEMTYPE_COLLATION";

		case LNITEMTYPE_FORM_VIEW_ACTION :	
			return "LNITEMTYPE_FORM_VIEW_ACTION";

		case LNITEMTYPE_HIGHLIGHTS :	
			return "LNITEMTYPE_HIGHLIGHTS";

		case LNITEMTYPE_HTML :	
			return "LNITEMTYPE_HTML";

		case LNITEMTYPE_LSOBJECT :	
			return "LNITEMTYPE_LSOBJECT";

		case LNITEMTYPE_OLE_OBJECT :	
			return "LNITEMTYPE_OLE_OBJECT";

		case LNITEMTYPE_QUERY :	
			return "LNITEMTYPE_QUERY";

		case LNITEMTYPE_SCHED_LIST :	
			return "LNITEMTYPE_SCHED_LIST";

		case LNITEMTYPE_SEAL :	
			return "LNITEMTYPE_SEAL";

		case LNITEMTYPE_SEALDATA :	
			return "LNITEMTYPE_SEALDATA";

		case LNITEMTYPE_SEAL_LIST :	
			return "LNITEMTYPE_SEAL_LIST";

		case LNITEMTYPE_USERID :	
			return "LNITEMTYPE_USERID";

		case LNITEMTYPE_VIEW_FORMAT :	
			return "LNITEMTYPE_VIEW_FORMAT";

		case LNITEMTYPE_VIEWMAP_DATASET :	
			return "LNITEMTYPE_VIEWMAP_DATASET";

		case LNITEMTYPE_VIEWMAP_LAYOUT :	
			return "LNITEMTYPE_VIEWMAP_LAYOUT";

		case LNITEMTYPE_WORKSHEET_DATA :	
			return "LNITEMTYPE_WORKSHEET_DATA";

		default :
			return "UNKNOWN or UN-SUPPORTED Item Type";

	} // END switch (ItemType)";

} // END NSFLog::GetItemTypeString

//---------------------------------------------------------------------------
//
// Name:
//		NSFLog::GetCDSignatureString
//
// Description:
//		Translates SIG_CD_xxx to an LNString.
//
// Remarks:
//      The following is a list of all of the possible
//      CD Signatures current up to Notes 5.02 10/14/1999
//      NOTE: Some of these signatures share the same value
//      but are used in different contexts, (i.e. Layouts, Navigators
//      Querys, Actions, and Rich Text)  This function returns only the
//      ones that apply to Rich Text.
//
//          SIG_CD_TARGET_DBLCLK
//          SIG_CD_CAPTION
//          SIG_CD_LINKCOLORS
//          SIG_CD_TABLECELL_HREF
//          SIG_CD_ACTIONBAREXT
//          SIG_CD_IDNAME
//          SIG_CD_TABLECELL_IDNAME
//          SIG_CD_IMAGESEGMENT
//          SIG_CD_IMAGEHEADER
//          SIG_CD_V5HOTSPOTBEGIN
//          SIG_CD_V5HOTSPOTEND
//          SIG_CD_PARAGRAPH
//          SIG_CD_PABDEFINITION
//          SIG_CD_PABREFERENCE
//          SIG_CD_TEXT
//          SIG_CD_HEADER
//          SIG_CD_LINKEXPORT2
//          SIG_CD_BITMAPHEADER
//          SIG_CD_BITMAPSEGMENT
//          SIG_CD_COLORTABLE
//          SIG_CD_GRAPHIC
//          SIG_CD_PMMETASEG
//          SIG_CD_WINMETASEG
//          SIG_CD_MACMETASEG
//          SIG_CD_CGMMETA
//          SIG_CD_PMMETAHEADER
//          SIG_CD_WINMETAHEADER
//          SIG_CD_MACMETAHEADER
//          SIG_CD_TABLEBEGIN
//          SIG_CD_TABLECELL
//          SIG_CD_TABLEEND
//          SIG_CD_STYLENAME
//          SIG_CD_STORAGELINK
//          SIG_CD_TRANSPARENTTABLE
//          SIG_CD_HORIZONTALRULE
//          SIG_CD_ALTTEXT
//          SIG_CD_ANCHOR
//          SIG_CD_HTMLBEGIN
//          SIG_CD_HTMLEND
//          SIG_CD_HTMLFORMULA
//          SIG_CD_NESTEDTABLEBEGIN
//          SIG_CD_NESTEDTABLECELL
//          SIG_CD_NESTEDTABLEEND
//          SIG_CD_COLOR
//          SIG_CD_TABLECELL_COLOR
//          SIG_CD_BLOBPART
//          SIG_CD_BEGIN
//          SIG_CD_END
//          SIG_CD_VERTICALALIGN
//          SIG_CD_FLOATPOSITION
//          SIG_CD_TIMERINFO
//          SIG_CD_TABLEROWHEIGHT
//          SIG_CD_TABLELABEL
//          SIG_CD_BIDI_TEXT
//          SIG_CD_BIDI_TEXTEFFECT
//          SIG_CD_REGIONBEGIN
//          SIG_CD_REGIONEND
//          SIG_CD_TRANSITION
//          SIG_CD_PLACEHOLDER
//          SIG_CD_HTMLNAME
//          SIG_CD_EMBEDDEDOUTLINE
//          SIG_CD_EMBEDDEDVIEW
//          SIG_CD_CELLBACKGROUNDDATA
//          SIG_CD_FRAMESETHEADER
//          SIG_CD_FRAMESET
//          SIG_CD_FRAME
//          SIG_CD_TARGET
//          SIG_CD_NATIVEIMAGE		** Obsolete in Notes C API 5.0.5!!
//          SIG_CD_MAPELEMENT
//          SIG_CD_AREAELEMENT
//          SIG_CD_HREF
//          SIG_CD_EMBEDDEDCTL
//          SIG_CD_HTML_ALTTEXT
//          SIG_CD_EVENT
//          SIG_CD_IMPORTHTML
//          SIG_CD_PRETABLEBEGIN
//          SIG_CD_BORDERINFO
//          SIG_CD_EMBEDDEDSCHEDCTL
//          SIG_CD_EXT2_FIELD
//          SIG_CD_DOCUMENT_PRE_26
//          SIG_CD_FIELD_PRE_36
//          SIG_CD_FIELD
//          SIG_CD_DOCUMENT

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -