4 Messages
Messages marked with an asterisk (*) are sent from the developer to the view window.
Messages marked with double asterisks (**) are sent from the view window to the developer.
Many messages pass pointers to structures in their lParam. All structures passed by the SCCVW messages are C structures. The packing of these structures compiled for Windows have 8-byte boundaries, per Microsoft's requirement for Windows applications.
4.1 SCCVW_ADDANNOTATION
* This message allows the parent to add various annotations to a viewed document.
Parameters
-
wParam: Type of annotation to add, which should be one of the following:
-
SCCVW_HIDEPARABREAK: Removes a paragraph break. This value is only valid when viewing word processing, spreadsheet/database, or metafile documents. Note: This flag does not just cause the paragraph break to be whited out, but actually removes it from the view.
-
SCCVW_HIDETEXT: Removes an area of text. This may be useful if the document contains tags or information that is useful to your application but you do not want the user to see. Note: This flag does not just cause the text to be whited out, but actually removes the text from the view.
-
SCCVW_HILITETEXT: Change the foreground and background color of an area of text.
-
SCCVW_INSERTBITMAP: Insert a bitmap between two characters. This value is only valid when viewing word processing documents. Note: This flag is only supported on the Windows platform.
-
SCCVW_INSERTICON: Insert an icon between two characters. This value is only valid when viewing word processing documents. Note: This flag is only supported on the Windows platform.
-
SCCVW_INSERTPARABREAK: Insert a paragraph break between two characters. This value is only valid when viewing word processing, spreadsheet/database, or metafile documents.
-
SCCVW_INSERTTEXT: Insert text between two characters. This value is only valid when viewing word processing, spreadsheet/database, or metafile documents.
-
-
lParam: A pointer to a structure of the type SCCVWHIDEPARABREAK80, SCCVWHIDETEXT80, SCCVWHILITETEXT41, SCCVWINSERTBITMAP42, SCCVWINSERTICON41, SCCVWINSERTPARABREAK80, or SCCVWINSERTTEXT80. Also backwards compatible with SCCVWHILITETEXT40, SCCVWINSERTICON40, or SCCVWHIDETEXT40 and SCCVWHIDETEXT41.
Return Value
-
SCCVWERR_OK: The annotation was added successfully.
-
SCCVWERR_ALLOCFAILED: There is not enough memory to add the annotation.
Comments
Annotations can be added in any order, but the underlying code is optimized for additions to the end of the list. It takes many hundreds of annotations for this effect to be noticeable. The insertion of icons and bitmaps is only supported on the Windows platforms. Adding annotations to unprintable characters may not always display the annotation.
Platform
Windows
4.1.1 SCCVWHIDEPARABREAK80 Structure
This structure is used by the SCCVW_ADDANNOTATION message to specify a paragraph break to be deleted.
Structure
A C data structure defined in sccvw as follows:
typedef struct SCCVWHIDEPARABREAK80tag { VTDWORD dwSize; VTDWORD dwUser; SCCVWPOS sParaPos; VTDWORD dwData; } SCCVWHIDEPARABREAK80, * PSCCVWHIDEPARABREAK80;
Parameters
-
dwSize: Must be set by the OEM to sizeof(SCCVWHIDEPARABREAK80).
-
dwUser: Unique ID that may be used later to remove, jump to or otherwise identify this particular annotation or a set of annotations. Always initialize this value to 0 if you are not using this functionality. The use of the high bit is reserved for internal annotation tagging.
-
sParaPos: Position of first paragraph break to be hidden. Result of SCCVWMAKEPOS(id,offset) macro or result of SCCVW_MAPPOSITION message. Note: Using the SCCVWMAKEPOS macro is no longer recommended but supported for backward compatibility. See the Comments section of the SCCVW_GETRAWTEXT message section.
-
dwData: Additional data associated with this annotation. It can later be retrieved using SCCVW_FINDANNOTATION.
4.1.2 SCCVWHIDETEXT80 Structure
This structure is used by the SCCVW_ADDANNOTATION message to remove an area of text. Also backward compatible with SCCVWHIDETEXT40 and SCCVWHIDETEXT41.
Structure
A C data structure defined in sccvw as follows:
typedef struct SCCVWHIDETEXT80tag { VTDWORD dwSize; VTDWORD dwUser; SCCVWPOS sStartPos; SCCVWPOS sEndPos; VTDWORD dwData; } SCCVWHIDETEXT80, * PSCCVWHIDETEXT80;
Parameters
-
dwSize: Must be set by the OEM to sizeof(SCCVWHIDETEXT80).
-
dwUser: Unique ID that may be used later to remove, jump to or otherwise identify this particular annotation or a set of annotations. Always initialize this value to 0 if you are not using this functionality. The use of the high bit is reserved for internal annotation tagging.
-
sStartPos: Position of first character to be hidden. Result of SCCVW_MAPACCTOPOS OR result of SCCVWMAKEPOS(id,offset). Note: Using the SCCVWMAKEPOS macro is no longer recommended but supported for backward compatibility. See the Comments section of the SCCVW_GETRAWTEXT message section.
-
sEndPos: Position of last character to be hidden. Result of SCCVW_MAPACCTOPOS OR result of SCCVWMAKEPOS(id,offset). Note: Using the SCCVWMAKEPOS macro is no longer recommended but supported for backward compatibility. See the Comments section of the SCCVW_GETRAWTEXT messages.
-
dwData: Additional data associated with this annotation. It can later be retrieved using SCCVW_FINDANNOTATION or SCCVW_GETANNOTATIONINFO.
4.1.3 SCCVWHILITETEXT41 Structure
This structure is used by the SCCVW_ADDANNOTATION message to specify an area of text to color. Also backward compatible with SCCVWHILITETEXT40.
Structure
A C data structure defined in sccvw as follows:
typedef struct SCCVWHILITETEXT41tag { VTDWORD dwSize; VTDWORD dwUser; SCCVWPOS sStartPos; SCCVWPOS sEndPos; VTDWORD dwInteraction; VTDWORD dwData; VTDWORD dwDummy1; VTDWORD dwDummy2; VTDWORD dwDisplay; } SCCVWHILITETEXT41;
Parameters
-
dwSize: Must be set by the OEM to sizeof(SCCVWHILITETEXT41).
-
dwUser: Unique ID that may be used later to remove, jump to or otherwise identify this particular annotation or a set of annotations. Always initialize this value to 0 if you are not using this functionality. The use of the high bit is reserved for internal annotation tagging.
-
sStartPos: Position of first character to be highlighted. Result of SCCVWMAKEPOS(id,offset) macro or result of SCCVW_MAPPOSITION message. Note: Using the SCCVWMAKEPOS macro is no longer recommended but supported for backward compatibility. See the Comments section of the SCCVW_GETRAWTEXT message section.
-
sEndPos; Position of last character to be highlighted. Result of SCCVWMAKEPOS(id,offset) macro or result of SCCVW_MAPPOSITION message. Note: Using the SCCVWMAKEPOS macro is no longer recommended but supported for backward compatibility. See the Comments section of the SCCVW_GETRAWTEXT message section.
-
dwInteraction: The type of events that the OEM would like to receive for this annotation. Note: Interaction events are only supported in word processor formats. Should be one or more of the following OR-ed together:
-
SCCVW_EVENTSINGLECLICK: If set, parent window will receive a SCCVW_ANNOTATIONEVENT when the highlighted text is clicked.
-
SCCVW_EVENTDOUBLECLICK: If set, parent window will receive a SCCCVW_ANNOTATIONEVENT when the highlighted text is double-clicked.
-
SCCVW_EVENTTRANSITIONINTO: If set, parent window will receive a SCCVW_ANNOTATIONEVENT when the cursor transitions into the annotation.
-
SCCVW_EVENTTRANSITIONOUTOF: If set, parent window will receive a SCCVW_ANNOTATIONEVENT when the cursor transitions out of the annotation.
-
-
dwData: Additional data associated with this annotation. It can later be retrieved using SCCVW_FINDANNOTATION.
-
dwDummy1; Reserved
-
dwDummy2; Reserved
-
dwDisplay: 32 bits packed with information about how the highlight should display. If SCCVW_USESTYLE is set, then the LOWORD contains the style number to use as defined by the SCCVW_HILITESTYLE message. If styles are not used, then set using one of the values in the following table:
-
SCCVW_BDEFAULT (Do not change the background color) OR-ed with SCCVW_FDEFAULT (Do not change the foreground color)
-
SCCVW_BBLACK (Black background) OR-ed with SCCVW_FBLACK (Black foreground)
-
SCCVW_BDARKRED (Dark Red background) OR-ed with SCCVW_FDARKRED (Dark Red foreground)
-
SCCVW_BDARKGREEN (Dark Green background) OR-ed with SCCVW_FDARKGREEN (Dark Green foreground)
-
SCCVW_BDARKYELLOW (Dark Yellow background) OR-ed with SCCVW_FDARKYELLOW (Dark Yellow foreground)
-
SCCVW_BDARKBLUE (Dark Blue background) OR-ed with SCCVW_FDARKBLUE (Dark Blue foreground)
-
SCCVW_BDARKMAGENTA (Dark Magenta background) OR-ed with SCCVW_FDARKMAGENTA (Dark Magenta foreground)
-
SCCVW_BDARKCYAN (Dark Cyan background) OR-ed with SCCVW_FDARKCYAN (Dark Cyan foreground)
-
SCCVW_BLIGHTGRAY (Light Gray background) OR-ed with SCCVW_FLIGHTGRAY (Light Gray foreground)
-
SCCVW_BGRAY (Gray background) OR-ed with SCCVW_FGRAY (Gray foreground)
-
SCCVW_BRED (Red background) OR-ed with SCCVW_FRED (Red foreground)
-
SCCVW_BGREEN (Green background) OR-ed with SCCVW_FGREEN (Green foreground)
-
SCCVW_BYELLOW (Yellow background) OR-ed with SCCVW_FYELLOW (Yellow foreground)
-
SCCVW_BBLUE (Blue background) OR-ed with SCCVW_FBLUE (Blue foreground)
-
SCCVW_BMAGENTA (Magenta background) OR-ed with SCCVW_FMAGENTA (Magenta foreground)
-
SCCVW_BCYAN (Cyan background) OR-ed with SCCVW_FCYAN (Cyan foreground)
-
SCCVW_BWHITE (White background) OR-ed with SCCVW_FWHITE (White foreground)
-
4.1.4 SCCVWINSERTBITMAP42 Structure
This structure is used by the SCCVW_ADDANNOTATION message to insert a bitmap at a specific location in the text.
Structure
A C data structure defined in sccvw as follows:
typedef struct { VTDWORD dwSize; VTDWORD dwUser; VTDWORD dwData; SCCVWPOS sBitmapPos; HICON hBitmap; VTDWORD dwInteraction; } SCCVWINSERTBITMAP42;
Parameters
-
dwSize: Must be set by the OEM to sizeof(SCCVWINSERTBITMAP42).
-
dwUser: Unique ID that may be used later to remove, jump to, or otherwise identify this particular annotation or a set of annotations. Always initialize this value to 0 if you are not using this functionality. The use of the high bit is reserved for internal annotation tagging.
-
dwData: Additional data associated with this annotation. It can later be retrieved using SCCVW_FINDANNOTATION or SCCVW_GETANNOTATIONINFO.
-
sBitmapPos; Position of the character before which the icon will be appear. Result of SCCVWMAKEPOS(id,offset) macro OR result of SCCVW_MAPACCTOPOS. Note: Using the SCCVWMAKEPOS macro is no longer recommended but supported for backward compatibility. See the Comments section of the SCCVW_GETRAWTEXT message section.
-
hBitmap: Handle to the Windows bitmap to display.
-
dwInteraction: The type of events that the OEM would like to receive for this annotation. Note: Interaction events are only supported in word processor formats. Should be one or more of the following OR-ed together:
-
SCCVW_EVENTSINGLECLICK: If set, parent window will receive an SCCVW_ANNOTATIONEVENT when the icon is clicked.
-
SCCVW_EVENTDOUBLECLICK: If set, parent window will receive an SCCCVW_ANNOTATIONEVENT when the icon is double-clicked.
-
SCCVW_EVENTTRANSITIONINTO: If set, parent window will receive an SCCVW_ANNOTATIONEVENT when the cursor transitions into the icon.
-
SCCVW_EVENTTRANSITIONOUTOF: If set, parent window will receive an SCCVW_ANNOTATIONEVENT when the cursor transitions out of the icon.
-
4.1.5 SCCVWINSERTICON41 Structure
This structure is used by the SCCVW_ADDANNOTATION message insert an icon at a specific location in the text. Also backward compatible with SCCVWINSERTICON40.
Structure
A C data structure defined in sccvw as follows:
typedef struct { VTDWORD dwSize; VTDWORD dwUser; VTDWORD dwData; SCCVWPOS sIconPos; HICON hIcon; VTDWORD dwInteraction; } SCCVWINSERTICON41;
Parameters
-
dwSize: Must be set by the OEM to sizeof(SCCVWINSERTICON41).
-
dwUser: Unique ID that may be used later to remove, jump to, or otherwise identify this particular annotation or a set of annotations. Always initialize this value to 0 if you are not using this functionality. The use of the high bit is reserved for internal annotation tagging.
-
dwData: Additional data associated with this annotation. It can later be retrieved using SCCVW_FINDANNOTATION or SCCVW_GETANNOTATIONINFO.
-
sIconPos: Position of the character before which the icon will be appear. Result of SCCVWMAKEPOS(id,offset) macro OR result of SCCVW_MAPACCTOPOS. Note: Using the SCCVWMAKEPOS macro is no longer recommended but supported for backward compatibility. See the Comments section of the SCCVW_GETRAWTEXT message section.
-
hIcon: Handle to the icon to display.
-
dwInteraction: The type of events that the OEM would like to receive for this annotation. Note: Interaction events are only supported in word processor formats. Should be one or more of the following OR-ed together:
-
SCCVW_EVENTSINGLECLICK: If set, parent window will receive an SCCVW_ANNOTATIONEVENT when the icon is clicked.
-
SCCVW_EVENTDOUBLECLICK: If set, parent window will receive an SCCCVW_ANNOTATIONEVENT when the icon is double-clicked.
-
SCCVW_EVENTTRANSITIONINTO: If set, parent window will receive an SCCVW_ANNOTATIONEVENT when the cursor transitions into the icon.
-
SCCVW_EVENTTRANSITIONOUTOF: If set, parent window will receive an SCCVW_ANNOTATIONEVENT when the cursor transitions out of the icon.
-
4.1.6 SCCVWINSERTPARABREAK80 Structure
This structure is used by the SCCVW_ADDANNOTATION message to insert a paragraph break between two characters.
Structure
A C data structure defined in sccvw as follows:
typedef struct SCCVWINSERTPARABREAK80tag { VTDWORD dwSize; VTDWORD dwUser; SCCVWPOS sParaPos; VTDWORD dwData; } SCCVWINSERTPARABREAK80, * PSCCVWINSERTPARABREAK80;
Parameters
-
dwSize: Must be set by the OEM to sizeof(SCCVWINSERTPARABREAK80).
-
dwUser: Unique ID that may be used later to remove, jump to or otherwise identify this particular annotation or a set of annotations. Always initialize this value to 0 if you are not using this functionality. The use of the high bit is reserved for internal annotation tagging.
-
sParaPos: Position before which the paragraph break will be inserted. Result of SCCVWMAKEPOS(id,offset) macro or result of SCCVW_MAPPOSITION message. Note: Using the SCCVWMAKEPOS macro is no longer recommended but supported for backward compatibility. See the Comments section of the SCCVW_GETRAWTEXT message section.
-
dwData: Additional data associated with this annotation. It can later be retrieved using SCCVW_FINDANNOTATION.
4.1.7 SCCVWINSERTTEXT80 Structure
This structure is used by the SCCVW_ADDANNOTATION message to insert text between two characters.
Structure
A C data structure defined in sccvw as follows:
typedef struct SCCVWINSERTTEXT80tag { VTDWORD dwSize; VTDWORD dwUser; SCCVWPOS sTextPos; VTDWORD dwData; VTLPWORD pText; VTDWORD dwLength; } SCCVWINSERTTEXT80, * PSCCVWINSERTTEXT80;
Parameters
-
dwSize: Must be set by the OEM to sizeof(SCCVWINSERTTEXT80).
-
dwUser: Unique ID that may be used later to remove, jump to or otherwise identify this particular annotation or a set of annotations. Always initialize this value to 0 if you are not using this functionality. The use of the high bit is reserved for internal annotation tagging.
-
sTextPos: Position before which the text will be inserted. Result of SCCVWMAKEPOS(id,offset) macro or result of SCCVW_MAPPOSITION message. Note: Using the SCCVWMAKEPOS macro is no longer recommended but supported for backward compatibility. See the Comments section of the SCCVW_GETRAWTEXT message section.
-
dwData: Additional data associated with this annotation. It can later be retrieved using SCCVW_FINDANNOTATION.
-
pText: The text buffer (Unicode)
-
dwLength: The number of characters
4.2 SCCVW_ANNOTATIONEVENT
* * This message informs the OEM that some user action has been taken on an annotation.
Parameters
-
wParam: The handle of the view window sending this message.
-
lParam: Pointer to a structure of the type SCCVWANNOTATIONEVENT41. Also backward compatible with SCCVWANNOTATIONEVENT40.
Return Value
If the return value is 0, the Viewer will perform the default behavior for this event on this annotation. If the return value is anything but 0, the Viewer will not perform any action on this annotation.
Comments
The transition events may be generated due to mouse or keyboard movement of the cursor. This message is only supported for annotations added to word processor formats. The OEM will always receive a single-click event before a double-click event.
Platform
Windows
4.2.1 SCCVWANNOTATIONEVENT41 Structure
This structure is used by the SCCVW_ANNOTATIONEVENT message to inform the OEM what event has occurred. Also backward compatible with SCCVWANNOTATIONEVENT40.
Structure
A C data structure defined in sccvw as follows:
typedef struct { VTDWORD dwSize; VTDWORD dwEvent; VTDWORD dwUser; VTDWORD dwData; } SCCVWANNOTATIONEVENT41;
Parameters
-
dwSize: Will be set to sizeof(SCCVWANNOTATIONEVENT41).
-
dwEvent: One of the following:
-
SCCVW_EVENTSINGLECLICK: The annotation specified in dwUser has been clicked.
-
SCCVW_EVENTDOUBLECLICK: The annotation specified in dwUser has been double clicked.
-
SCCVW_EVENTRIGHTCLICK: This message is sent when the user right-clicks on the annotation. If the host application indicates that it will not handle this event (i.e., returns zero from the SCCVW_ANNOTATIONEVENT message), then the viewer sends the SCCVW_CONTEXTMENU message to the host application. If the host application returns non-zero from the SCCVW_ANNOTATIONEVENT message, indicating that it is handling the right-click event, then the viewer will not send the SCCVW_CONTEXTMENU message.
-
SCCVW_EVENTTRANSITIONINTO: The annotation specified in dwUser has had the cursor transition into it.
-
SCCVW_EVENTTRANSITIONOUTOF: The annotation specified in dwUser has had the cursor transition out of it.
-
-
dwUser: Identifies the annotation using the dwUser value passed in SCCVW_ADDANNOTATION. If you want to handle these events correctly, each of your annotations should have a unique dwUser.
-
dwData: Returns the value passed when this annotation was created using SCCVW_ADDANNOTATION.
4.3 SCCVW_BAILOUT
* * This message informs the OEM that file viewing has stopped because of an error or some other reason. The developer may decide to handle this message himself, or allow the default action, which will display an appropriate message.
Parameters
-
wParam: Should be 0.
-
lParam: The value of lParam describes the reason for the bailout, outlined as follows:
-
SCCVW_BAILOUT_BADCREDENTIALS: the password suppiled is invalid.
-
SCCVW_BAILOUT_BADFILE: The file viewed is not valid for that type.
-
SCCVW_BAILOUT_CANCEL: the OEM responded to a callback function requesting that we cancel processing the file.
-
SCCVW_BAILOUT_DIVIDEBYZERO: There was a divide by zero operation attempted.
-
SCCVW_BAILOUT_DRMFILE: the file is protected by a DRM system
-
SCCVW_BAILOUT_EMPTYFILE: The file has no data to be displayed.
-
SCCVW_BAILOUT_FILECHANGED: The file has changed and is no longer valid.
-
SCCVW_BAILOUT_FILEOPENFAILED: There was a problem with the information in the header.
-
SCCVW_BAILOUT_FILTERTIMEOUT: The filter has timed out.
-
SCCVW_BAILOUT_GPFAULT: There was a general protection fault.
-
SCCVW_BAILOUT_MEMORY: There was a memory allocation failure.
-
SCCVW_BAILOUT_MISSINGELEMENT: There were other files needed that are not available.
-
SCCVW_BAILOUT_NODATATORENDER: There is no data in this format to render.
-
SCCVW_BAILOUT_NOENGINE: The display engine needed for this type is not available.
-
SCCVW_BAILOUT_NOFILTER: There is no filter installed for the files type.
-
SCCVW_BAILOUT_NOSUPPORTEDFILE: This file type is not supported.
-
SCCVW_BAILOUT_OTHEREXCEPTION: There was an unspecified system exception.
-
SCCVW_BAILOUT_PROTECTEDFILE: The file viewed is password protected.
-
SCCVW_BAILOUT_STREAMBAIL: There was a problem in the filter.
-
SCCVW_BAILOUT_SUPFILEOPENFAILS: There was a problem opening extra files.
-
SCCVW_BAILOUT_UNKNOWN: General error.
-
SCCVW_BAILOUT_UNKNOWNNOTVIEWED: This file type is unknown and the option has been set to not display unknown file types.
-
SCCVW_BAILOUT_WRITEERROR: There was a write error during viewing.
-
Return Value
If the return value is 0, the Viewer will perform the default behavior for this event which is to display an appropriate message. If the return value is anything but 0, the Viewer will only clear the display window.
Platform
Windows
4.4 SCCVW_CLEARANNOTATIONS
* This message allows the developer to selectively remove annotations.
Parameters
-
wParam: If set to 0 then all annotations are cleared. Otherwise, set to one of the following:
-
SCCVW_ABSOLUTE: lParam represents an absolute dwUser value as set by the OEM in a SCCVW_ADDANNOTATION message.
-
SCCVW_MASK: lParam represents a mask to be applied to the dwUser values of the annotations (lParam is described in the next table cell).
-
-
lParam: If wParam contains SCCVW_ABSOLUTE, the set of annotations that are cleared is limited to those annotations where dwUser == lParam.
If wParam contains SCCVW_MASK, the set of annotations that are cleared is limited to those annotations where dwUser & lParam == lParam.
Platforms
Windows
4.5 SCCVW_CLOSEFILE
* Causes the viewer to stop viewing the current file and return to its idle state.
Parameters
-
wParam: Should be set to 0.
-
lParam: Should be set to 0.
Return Value
none
Platform
Windows
4.6 SCCVW_COMPPOSITIONS
* This message allows the parent to compare two SCCVWPOSs. OEMs should only compare SCCVWPOS variables using this message since the structure size of SCCVWPOS is subject to change.
Parameters
-
wParam: Should be set to 0.
-
lParam: Pointer to a structure of the type SCCVWCOMPPOSITIONS41.
Return Value
One of the following values:
-
-1: The position identified by pPosA is less than the position defined by pPosB
-
0: The two positions identified by pPosA and pPosB are equal
-
1: The position identified by pPosA is greater than the position defined by pPosB
Platforms
Windows
4.6.1 SCCVWCOMPPOSITIONS41 Structure
This structure is passed by the OEM through the SCCVW_COMPPOSITIONS message.
Structure
A C data structure defined in sccvw as follows:
typedef struct { PSCCVWPOS pPosA; PSCCVWPOS pPosB; } SCCVWCOMPPOSITIONS41;
Parameters
-
pPosA: Points to an SCCVWPOS structure that identifies the first of two positions being compared.
-
pPosB: Points to an SCCVWPOS structure that identifies the second of two positions being compared.
4.7 SCCVW_CONTEXTMENU
* * This message is sent to the parent of the view window when a right mouse click occurs inside the view window. The developer may decide to handle that interaction, or allow the Viewer to pop up its context menu.
Parameters
-
wParam: The handle of the view window that is sending this message
-
lParam(Windows): LOWORD(lParam) contains the x coordinate of the cursor. HIWORD(lParam) contains the y coordinate of the cursor.
Return Value
If the return value is 0, the Viewer will pop up its own context menu. If the return value is anything but 0, the Viewer does nothing.
Platform
Windows
4.8 SCCVW_COPY
* This message allows the parent to copy the area defined by two positions into memory in a given format.
Parameters
-
wParam: Should be set to 0.
-
lParam: Pointer to a structure of the type SCCVWCOPY41.
Return Value
One of the following values:
-
SCCVWERR_OK: The copy was successful.
-
SCCVWERR_BADPARAM: One of the values in the SCCVWCOPY41 structure was invalid.
Platforms
Windows
4.8.1 SCCVWCOPY41 Structure
This structure is passed by the OEM through the SCCVW_COPY message.
Structure
A C data structure defined in sccvw as follows:
typedef struct { VTDWORD dwSize; VTDWORD dwOptions; VTDWORD dwFormatId; SCCVWPOS sStartPos; SCCVWPOS sEndPos; VTDWORD dwDataHandle; VTDWORD dwDataSize; VTDWORD dwMessageId; } SCCVWCOPY41;
Parameters
-
dwSize: Must be set by the OEM to sizeof(SCCVWCOPY41).
-
dwOptions: None defined, must be set to 0.
-
dwFormatId: Indicates the output format. Must be one of the following:
-
SCCVW_CLIPFORMAT_TEXT: Text in whatever character set is appropriate for the operating system
-
SCCVW_CLIPFORMAT_RTF: Rich Text Format
-
-
sStartPos: Identifies the start position of the area to be copied.
-
sEndPos: Identifies the end position of the area to be copied.
-
dwDataHandle: Returns an operating system handle to the copied data.
-
dwDataSize: The size of the data produced in dwDataHandle.
-
dwMessageId: Identifies the copy result. 0 if the copy was successful, otherwise one of the following:
-
SCCID_VWCLIP_NOMEMORY: Not enough memory for data.
-
SCCID_VWCLIP_NOEMBEDDED: An informational ID indicating the selected area contains an embedding but the embedding is not provided in the data. Note: This will only copy data to the text formats. It is not supported for bitmap, vector or archive formats.
-
4.9 SCCVW_COPYTOCLIP
* Causes the viewer to copy the current selection (if any) to the clipboard.
Parameters
-
wParam: Should be set to 0.
-
lParam: Should be set to 0.
Return Value
none
Platforms
Windows
4.10 SCCVW_DEINITDRAWPAGE
* This message de-initializes the page drawing routines. This message must be called after all calls to SCCVW_DRAWPAGE.
Parameters
-
wParam: Should be set to 0.
-
lParam: Should be set to 0.
Platforms
Windows
4.11 SCCVW_DISPLAYCHANGE
* *This message is sent to the developer whenever the display engine changes.
Parameters
-
wParam: The handle of the view window that is sending this message
-
lParam: Not used.
Comments
A reasonable response to this message might be to call SCCVW_GETDISPLAYINFO, if you need this kind of information.
Platforms
Windows
4.12 SCCVW_DISPLAYPOSITION
* This message allows the parent to bring any position into view and provides some control over the placement of the position in the view.
Parameters
-
wParam: Should be set to 0.
-
lParam: Pointer to a structure of the type SCCVWDISPLAYPOSITION41
Return Value
One of the following values:
-
SCCVWERR_OK: The mapping was successful.
-
SCCVWERR_BADPARAM: One of the values in the SCCVWDISPLAYPOSITION41 structure was invalid.
Comments
This message does not cause the cursor to be located at the defined position. If cursor placement is required then use SCCVW_SETSELECTION.
Platforms
Windows
4.12.1 SCCVWDISPLAYPOSITION41 Structure
This structure is passed by the OEM through the SCCVW_DISPLAYPOSITION message.
Structure
A C data structure defined in sccvw as follows:
typedef struct { VTDWORD dwSize; VTDWORD dwDisplayOptions SCCVWPOS sPos; } SCCVWDISPLAYPOSITION41;
Parameters
-
dwSize: Must be set by the OEM to sizeof (SCCVWDISPLAYPOSITION41).
-
dwDisplayOptions: Flags that allow control over the location of the position in the view. If none of the following are set, then the default action is to display the position with as little scrolling of the screen as possible. Otherwise, one of the following:
-
SCCVW_DISPLAYNEARTOP: The position will be displayed near the top of the view. Formatting considerations will determine exact location.
-
SCCVW_DISPLAYNEARMIDDLE: The position will be displayed near the middle of the view. Formatting considerations will determine exact location.
-
SCCVW_DISPLAYNEARBOTTOM: The position will be displayed near the bottom of the view. Formatting considerations will determine exact location.
-
-
sPos: Identifies the position to go to.
4.13 SCCVW_DODIALOG
* This message invokes one of the Viewer's built in dialogs.
Parameters
-
wParam: Should be set to 0.
-
lParam: Id of the dialog the developer wishes to invoke. Should be one of the following:
-
SCCID_DISPLAYOPTIONSDIALOG: A dialog that lets the user set a number of aspects of how files are viewed.
-
SCCID_PRINTOPTIONSDIALOG: A dialog that lets the user set a number of aspects of how files are printed.
-
SCCID_CLIPBOARDOPTIONSDIALOG: A dialog that lets the user set a number of aspects of how files are copied to the clipboard.
-
Return Value
One of the following values:
-
SCCVWERR_OK: The dialog was successful.
-
SCCVWERR_CANCEL: The user canceled the dialog.
-
SCCVWERR_BADPARAM: The ID in lParam was invalid.
Platform
Windows
4.14 SCCVW_DOHELP
* * This message is sent to the developer whenever a help button has been pressed in one of the Viewer's dialogs.
Parameters
-
wParam: The handle of the view window that is sending this message.
-
lParam: ID of the dialog in which the help button was pressed, it can be one of the following:
-
SCCID_DISPLAYOPTIONSDIALOG
-
SCCID_DISPLAYMOREDIALOG
-
SCCID_PRINTOPTIONSDIALOG
-
SCCID_PRINTMOREDIALOG
-
SCCID_CLIPBOARDOPTIONSDIALOG
-
SCCID_CLIPBOARDMOREDIALOG
-
SCCID_PRINTDIALOG
-
SCCID_PRINTSETUPDIALOG
-
SCCID_SELECTFONTDIALOG
-
Platform
Windows
4.15 SCCVW_DOMENUITEM
* This message should be called when the developer's application detects user interaction with a menu having an ID greater than the value set by SCCVW_SETMENUMAX or greater than SCCVW_DEFAULTMENUMAX if SCCVW_SETMENUMAX was not called.
Parameters
-
wParam: Menu ID received in WM_COMMAND.
-
lParam: Not used.
Platform
Windows
4.16 SCCVW_DRAWPAGE
* This message draws a page of the currently viewed file to a rectangle and device of the OEM's choice.
Parameters
-
wParam: Should be set to 0.
-
lParam: Pointer to a structure of the type SCCVWDRAWPAGE40 or SCCVWDRAWPAGE41.
Return Value
One of the following values:
-
SCCVWERR_OK: Draw page was successful.
-
SCCVWERR_LASTPAGE: The page just drawn is the last page in the file.
-
SCCVWERR_NOPAGE: The requested page does not exist or is not yet available.
-
SCCVWERR_NOFILE: No file is being viewed.
-
SCCVWERR_NOINIT: SCCVW_INITDRAWPAGE has not been called.
-
SCCVWERR_ALLOCFAILED: Allocation failed.
-
SCCVWERR_FEATURENOTAVAIL: Draw page is not supported by this display engine.
-
SCCVWERR_UNKNOWN: Some other error has occurred.
Platforms
Windows
4.16.1 SCCVWDRAWPAGE41 Structure
This structure is passed by the developer through the SCCVW_DRAWPAGE message.
Structure
A C data structure defined in sccvw_w.h, as follows:
Windows Structure
typedef struct SCCVWDRAWPAGE41tag { VTDWORD dwSize; VTDWORD dwPageToDraw; VTDWORD dwReserved; VTDWORD dwFlags; VTLONG lUnitsPerInch; VTLONG lFormatWidth; VTLONG lFormatHeight; VTLONG lTop; VTLONG lLeft; VTLONG lBottom; VTLONG lRight; VTLONG lResultTop; VTLONG lResultLeft; VTLONG lResultBottom; VTLONG lResultRight; HDC hOutputDC; HDC hFormatDC; HPALETTE hPalette; } SCCVWDRAWPAGE41, * PSCCVWDRAWPAGE41;
Parameters
-
dwSize: Must be set by the developer to sizeof (SCCVWDRAWPAGE41).
-
dwPageToDraw: The page of the file that should be drawn. Page numbers start at 0. In order to draw a page, all pages before it must have been drawn, but once a page has been drawn it may be drawn again at any time. For example, the following sequence is OK:
0 - 1 - 2 - 3 - 4 - 1 - 3 - 2 - 5 - 0 - …
But in this sequence, the request for page 5 will return SCCVWERR_NOPAGE:
0 - 1 - 2 - 5
-
dwReserved: Reserved for future use, must be set to 0.
-
dwFlags: Flags indicating the options for draw page. One of the following:
-
SCCVW_DPFLAG_RETURNPALETTE: The hPalette member will be filled by the view window.
-
SCCVW_DPFLAG_NOTMETAFILE: hOutputDC will be assumed not to be a metafile DC, even if Windows says it is.
-
SCCVW_DPFLAG_IGNOREBACKGROUND: Ignore the background when rendering the page.
-
SCCVW_DPFLAG_DETERMINEOUTPUTTYPE: Attempt to determine the output device context type at runtime and emulate either a screen or printer. By default, draw page will emulate a printer. This is useful for enabling transparency effects when creating a metafile.
-
-
lUnitsPerInch: Number of units per inch that lFormatWidth and lFormatHeight are in. For instance, if lFormatHeight and lFormatWidth are in twips, lUnitsPerInch should be 1440.
-
lFormatHeight: Height of the wrappable part of the page. For instance, if your page in 11 inches tall and you want .5 inch margins, lFormatHeight should represent 10 inches.
-
lFormatWidth: Width of the wrapable part of the page. For instance, if your page is 8.5 inches wide and you want .5 inch margins, lFormatWidth should represent 7.5 inches.
-
lTop, lLeft, lBottom, lRight: Rectangle in device units that is equivalent to lFormatHeight and lFormatWidth. This rectangle must be in device units. On the Windows platform, SCCVW_DRAWPAGE uses the Windows mapping modes to draw into this rectangle.
-
lResultTop, lResultLeft, lResultBottom, lResultRight: Rectangle in device units that was actually filled with output. These elements are filled by the SCCVW_DRAWPAGE call, they may be different than the requested rectangle for the following reasons:
-
For Documents: lResultBottom may be less than lBottom because lines and table rows are never split when printing.
-
For Spreadsheets and Databases: lResultBottom and lResultLeft may be less because columns and rows are never split when printing.
-
For Bitmaps and Vectors: The result rectangle may be different because the viewer may be maintaining the aspect ratio of the image.
-
-
hOutputDC: The device context or the id pointing to the NSView to draw into.
-
hFormatDC: The device or information context or information contet or the id pointing to the NSView used to wrap text and retrieve other formatting information.
Note: hOutputDC and hFormatDC may not be the same DC.
-
hPalette: Palette that should be used when rendering the page. If the SCCVW_DPFLAG_RETURNPALETTE flag is not set, this member will always be NULL. If this flag is set, it may be a handle to a palette or it may still be NULL if no palette is required. It is the developer's responsibility to DeleteObject the palette, if one is returned.
Comments
How the SCCVW_DRAWPAGE message interprets the contents of the SCCVWDRAWPAGE41 structure on a Windows system depends somewhat on the nature of the hOutputDC. If hOutputDC is NOT a metafile DC or the SCCVW_DPFLAG_NOTMETAFILE flag is set, draw page sets the DC to MM_ANIOSTROPIC mode, sets the window extents/origin and sets the viewport extents/origin so the page will be drawn into the rectangle defined by lLeft/lTop/lRight/lBottom. If hOutputDC is a metafile DC, draw page still sets the mode to MM_ANISOTROPIC and sets the window extents/origin, but does not set the viewport. This produces a scalable metafile allowing the developer to later play back the metafile to any rectangle by setting the viewport extents and origin before playing the metafile.
4.17 SCCVW_ENABLEAPP
* *This message is sent to the developer whenever the developer application should be disabled/enabled. This message is sent before and after dialogs and printing. It allows the developer to disable any part of the application which could affect the view window.
Parameters
-
wParam: The handle of the view window that is sending this message.
-
lParam: One of the following:
-
FALSE: The application should be disabled
-
TRUE: The application should be enabled.
-
Return Value
Must be SCCVWERR_MESSAGEHANDLED, which tells the view window the message has been handled. Any other return value will cause the view window to try the default disabling method for that platform. For example, under Windows if the developer does not process this message and return SCCVWERR_MESSAGEHANDLED, the view window will use EnableWindow to disable/enable its parent. If this default behavior is acceptable, simply return 0.
Platform
Windows
4.18 SCCVW_FILECHANGE
* * This message is sent to the developer whenever the file being viewed is changed, such as on a SCCVW_VIEWFILE or SCCVW_CLOSEFILE message. A reasonable response to this message might be to call SCCVW_GETFILEINFO to get information about the new file to display within your UI.
Parameters
-
wParam: The handle of the view window that is sending this message
-
lParam: Flags indicating the change that is occurring. One or more of the following values OR-ed together:
-
SCCVW_FC_CLOSED: File was closed.
-
SCCVW_FC_OPENED: File was opened.
-
SCCVW_FC_INOPEN: When OR-ed with SCCVW_FC_CLOSED, indicates that the close is in response to a SCCVW_VIEWFILE message and that another SCCVW_FILECHANGE notification can be expected. This flag should be used to avoid any flashing within your UI.
-
Platform
Windows
4.19 SCCVW_FINDANNOTATION
* This message allows the parent to find an annotation and retrieve information associated with the annotation. A variety of options are provided for locating an annotation.
Parameters
-
wParam: Should be set to 0.
-
lParam: Pointer to a structure of the type SCCVWFINDANNOTATION41
Return Value
One of the following values:
-
SCCVWERR_NONEFOUND: No annotation that meets the mask or absolute criteria was found.
-
SCCVWERR_OK: An annotation that meets the mask or absolute criteria was found and the structure passed through lParam is updated.
Platform
Windows
4.19.1 SCCVWFINDANNOTATION41 Structure
This structure is passed by the OEM through the SCCVW_FINDANNOTATION message.
Structure
A C data structure defined in sccvw as follows:
typedef struct { VTDWORD dwSize; VTDWORD dwFindOptions; VTDWORD dwUserTest; SCCVWPOS sSearchPos; VTDWORD dwUserResult; SCCVWPOS sStartPos; SCCVWPOS sEndPos; VTDWORD dwData; } SCCVWFINDANNOTATION41;
Parameters
-
dwSize: Must be set by the OEM to sizeof (SCCVWFINDANNOTATION41).
-
dwFindOptions: Flags indicating the starting position and the meaning of the value in dwUserTest. One of the following values:
-
SCCVW_FINDFIRST: Find the first or only annotation in the document that meets the mask or absolute criteria.
-
SCCVW_FINDLAST: Find the last or only annotation in the document that meets the mask or absolute criteria.
-
SCCVW_FINDFIRSTFROMPOS: Find the next annotation in the document that appears after the position identified by the sSearchPos value and that meets the mask or absolute criteria.
-
SCCVW_FINDPREV: Find the first annotation that appears before the position identified by the sSearchPos and meets the mask or absolute criteria.
-
SCCVW_FINDNEXT: Find the first annotation that appears after the position identified by the sSearchPos and meets the mask or absolute criteria.
OR-ed with one of the following values:
-
SCCVW_MASK: dwUserTest represents a mask to be applied to the dwUser values of the annotations.
-
SCCVW_ABSOLUTE: dwUserTest represents an absolute dwUser value as set by the OEM in a SCCVW_ADDANNOTATION message.
If dwFindOptions contains SCCVW_ABSOLUTE, the set of annotations that can be moved to is limited to those annotations where dwUser == dwUserTest. If dwFindOptions contains SCCVW_MASK, the set of annotations that can be moved to is limited to those annotations where dwUser & dwUserTest == dwUserTest. For example, if five annotations exist with the following dwUser values:
-
Annotation 1 (dwUser = 0x001)
-
Annotation 2 (dwUser = 0x0010)
-
Annotation 3 (dwUser = 0x0011)
-
Annotation 4 (dwUser = 0x0100)
-
Annotation 5 (dwUser = 0x1000)
then the following are true:
-
a dwUserTest of 0x0000 will use all the annotations
-
a dwUserTest of 0x0001 will use annotations 1 and 3
-
a dwUserTest of 0x0011 will use annotation 3 only
-
a dwUserTest of 0x1001 will not use any annotations.
SCCVW_MASK can be used to move around within a particular set of annotations, where each annotation has a unique dwUser but they all share some bits in common.
-
-
-
dwUserTest: Used to indicate the class of annotations to be included in the search based on the rules outlined in the preceding list.
-
sSearchPos: Indicates the position to begin searching from when SCCVW_FINDNEXT or SCCVW_FINDPREV are set in the dwFindOptions.
-
dwUserResult: If the annotation is found, returns the value of dwUser as set by the OEM in a SCCVW_ADDANNOTATION message.
-
sStartPos: If the annotation is found:
-
If the annotation type is SCCVW_INSERTTEXT or SCCVW_INSERTPARABREAK, sStartPos will indicate the position of the beginning of the inserted text.
-
For all other annotation types, sStartPos will be as set by the OEM in the SCCVW_ADDANNOTATION message.
-
-
sEndPos: If the annotation is found:
-
If the annotation type is SCCVW_INSERTTEXT or SCCVW_INSERTPARABREAK, sEndPos will indicate the position of the insertion point of the inserted text
-
For all other annotation types, sEndPos will be as set by the OEM in the SCCVW_ADDANNOTATION message
-
-
dwData: If the annotation is found, returns the value of dwData as set by the OEM in a SCCVW_ADDANNOTATION message.
4.20 SCCVW_FINDPOSITION
* This message allows the parent to find a position in terms of a SCCVWPOS with numerous options. The position returned can then be used by any message which requires an SCCVWPOS as input. All of the find options are relative to the currently viewed section.
Parameters
-
wParam: Should be set to 0.
-
lParam: Pointer to a structure of the type SCCVWFINDPOSITION41.
Return Value
One of the following values:
-
SCCVWERR_NONEFOUND: No position that meets the find criteria was found.
-
SCCVWERR_OK: A position that meets the find criteria was found and the structure passed through lParam is updated.
Platforms
Windows
4.20.1 SCCVWFINDPOSITION41 Structure
This structure is passed by the OEM through the SCCVW_FINDPOSITION message. Many of the find options are only supported for word processing file types.
Structure
A C data structure defined in sccvw as follows:
typedef struct { VTDWORD dwSize; VTDWORD dwFindOptions; SCCVWPOS sSearchPos; SCCVWPOS sResultPos; } SCCVWFINDPOSITION41;
Parameters
-
dwSize: Must be set by the OEM to sizeof (SCCVWFINDPOSITION41).
-
dwFindOptions: Flags indicating the starting position and the meaning of the value in dwUserIn. Refer to the following table. Note: These options support the currently viewed section. Sections are used to delimit multiple-sheet spreadsheets, multi-page presentation files, and multi-page bitmap graphics.
-
SCCVW_FINDFIRSTPOS: Find the first position in the current section.
-
SCCVW_FINDLASTPOS: Find the last position in the current section.
-
SCCVW_FINDPREVPOS: Find the position in the document that appears before the position identified by the sSearchPos.
-
SCCVW_FINDNEXTPOS: Find the position in the document that appears after the position identified by the sSearchPos.
-
SCCVW_FINDPREVSECTION: Find the previous section in a document.
-
SCCVW_FINDNEXTSECTION: Find the next section in a document.
-
SCCVW_FINDANCHORSELECTPOS: Find the position in the document that identifies the start of selection.
-
SCCVW_FINDNEXTSELECTPOS: Archive files only, find the position in the document that identifies the next selected node when there are multiple selections.
-
SCCVW_FINDPREVSELECTPOS: Archive files only, find the position in the document that identifies the previous selected node when there are multiple selections.
-
SCCVW_FINDENDSELECTPOS: Find the position in the document that identifies the end of selection.
-
SCCVW_FINDSTARTDISPLAYPOS: For word processing file types, find the position in the document that identifies the top/left most text position in the currently displayed area. For presentation file types, return the viewer position of the beginning of the currently displayed slide.
-
SCCVW_FINDENDDISPLAYPOS: For word processing file types, find the position in the document that identifies the bottom/right most text position in the currently displayed area. For presentation file types, return the viewer position of the end of the currently displayed slide.
-
SCCVW_FINDSTARTLINEPOS: Find the position in the document that identifies the start of the line which contains sSearchPos.
-
SCCVW_FINDENDLINEPOS: Find the position in the document that identifies the end of the line which contains sSearchPos.
-
SCCVW_FINDPREVLINEPOS: Find the position in the document that identifies the start of the line previous to the line which contains sSearchPos.
-
SCCVW_FINDNEXTLINEPOS: Find the position in the document that identifies the start of the line following the line which contains sSearchPos.
-
SCCVW_FINDPREVWORDPOS: Find the position in the document that identifies the start of the word previous to sSearchPos.
-
SCCVW_FINDNEXTWORDPOS: Find the position in the document that identifies the start of the word which follows sSearchPos.
-
-
sSearchPos: Identifies the position to begin searching for specific dwFindOptions as outlined in the preceding list.
-
sResultPos: Returns the resulting position if it was found.
Comments
Many of the find options are only supported for word processing file types. These include SCCVW_STARTDISPLAYPOS, SCCVW_ENDDISPLAYPOS, SCCVW_FINDPREVLINEPOS, SCCVW_NEXTLINEPOS, SCCVW_PREVWORDPOS, and SCCVW_NEXTWORDPOS.
4.21 SCCVW_FREEFILEINFO
Deallocates the file name buffer allocated during the SCCVW_GETFILEINFO message.
Parameters
-
wParam: Should be set to 0.
-
lParam: A pointer to a SCCVWFILEINFO84 structure which was filled by previously calling SCCVW_GETFILEINFO.
Return Value
SCCVWERR_OK: call was successful
Platform
Windows
4.22 SCCVW_GETANNOTATIONDATA
* This message is provided to allow the developer to retrieve extended data associated with annotations that are internally created by the Viewer. The technology currently creates annotations to support hyperlinks and bookmarks defined in the original file.
When the technology adds hyperlink annotations, the dwUser member is set to SCCVW_USERHYPERTAG OR-ed with a zero-based count of the current hyperlink. When the technology adds bookmark annotations, the dwUser member is set to SCCVW_USERBOOKMARKTAG OR-ed with a zero-based count of the current bookmark. This allows OEMs to use all of the related annotation messages on these internal annotations. Extended data is available for internal annotations and can be retrieved using this message.
Parameters
-
wParam: Should be set to 0.
-
lParam: A pointer to a structure of the type SCCVWGETANNOTATIONDATA.
Return Value
One of the following values:
-
SCCVWERR_OK: The annotation data was retrieved successful.
-
SCCVWERR_BADPARAM: One of the values in the SCCVWGETANNOTATIONDATA structure was invalid.
Platform
Windows
4.22.1 SCCVWGETANNOTATIONDATA Structure
This structure is passed by the OEM through the SCCVW_GETANNOTATIONDATA message.
Structure
A C data structure defined in sccvw as follows:
typedef struct { VTDWORD dwSize; VTDWORD dwUser; VTDWORD dwData; VTDWORD dwResultDataSize; VTVOID pData; VTDWORD dwDataType; } SCCVWGETANNOTATIONDATA;
Parameters
-
dwSize: Must be set by the OEM to sizeof (SCCVWGETANNOTATIONDATA).
-
dwUser: Indicates the annotation for which extended data is being retrieved. This value should be the absolute value of the dwUser member that was used when initially adding the annotation.
-
dwData: Indicates the value of the value of the dwData member that was used when initially adding the annotation.
-
dwResultDataSize: On input, indicates the size of the data pointed to by pData. After returning, indicates the size of the extended data associated with this annotation. This element will be updated, even if pData is not of sufficient size to retrieve the data.
-
pData: A pointer to data where the extended data should be copied. If the size of the data pointed to by pData is not sufficient to retrieve the extended data then no data will be copied.
-
dwDataType: Set by the technology, indicates the format of the data retrieved. One of the following:
-
ADTYPE_URL: pData points to a NULL-terminated Internet Uniform Resource Locator. This data type can be returned for annotations created from hyperlinks in formats which allow referencing URLs.
-
ADTYPE_BOOKMARK: pData points to a NULL-terminated string that identifies the bookmark name. This can be returned for annotations created from bookmarks.
-
ADTYPE_NODATA: This data type can be returned for annotations that do not have any extended data.
-
4.23 SCCVW_GETCLIPINFO
* This message returns flags that specify the readiness of the view window to manipulate clipboard information.
Parameters
-
wParam: Should be set to 0.
-
lParam: Should be set to 0.
Return Value
Zero or more of the following flags OR-ed together:
-
SCCVW_CANCOPYTOCLIP: Information is selected and can be copied to the clipboard.
-
SCCVW_CANCUTTOCLIP: Information is selected and can be cut to the clipboard.
-
SCCVW_CANPASTEFROMCLIP: Information on the clipboard is available for pasting.
Platform
Windows
4.24 SCCVW_GETCURRENTPAGENUMBER
For this message, both wParam and lParam are ignored (but should be set to zero anyway). When the viewer receives this message, it returns either a number or the value 0 to indicate that a current page number isn't available.
The page number is available when the word processing display engine is in preview mode, and not available when it is in draft or normal mode. For other formats such as spreadsheets, presentations, and multi-page images, the page number is equivalent to the number of the current sheet, slide, or image.
Parameters
-
wParam: Should be set to 0.
-
lParam: Should be set to 0.
Return Value
Zero or the current page number
4.25 SCCVW_GETDISPLAYINFO
* Returns information about the current display engine, if any.
Parameters
-
wParam: Should be set to 0.
-
lParam: A pointer to a SCCVWDISPLAYINFO40 or SCCVWDISPLAYINFO80 structure to be filled.
Return Value
One of the following values:
-
SCCVWERR_OK: pFileInfo was filled successful.
-
SCCVWERR_BADPARAM: Structure size was incorrect or lParam was null.
Platform
Windows
4.25.1 SCCVWDISPLAYINFO40 and SCCVWDISPLAYINFO80 Structures
These structures are passed by the developer to the SCCVW_GETDISPLAYINFO message handler. Note that while both of these structures can accept Unicode, only the SCCVWDISPLAYINFO80 structure is truly intended to accept Unicode.
Structure
A C data structure defined in sccvw as follows:
typedef struct { VTDWORD dwSize; VTTCHAR szName[MAX_DISPLAYINFO_SZNAME_SIZE]; VTDWORD hMenu; VTDWORD dwFunctions; VTDWORD dwType } SCCVWDISPLAYINFO40; typedef struct { VTDWORD dwSize; VTWORD szName[MAX_DISPLAYINFO_SZNAME_SIZE]; VTDWORD hMenu; VTDWORD dwFunctions; VTDWORD dwType } SCCVWDISPLAYINFO80;
Parameters
-
dwSize: Must be set by the developer to sizeof(SCCVWDISPLAYINFO40) or sizeof(SCCVWDISPLAYINFO80).
-
szName: String used when a human readable form of the display engine is needed. For example Bitmap, Hex, Document, Archive, Spreadsheet, etc.
-
hMenu: Handle to a popup menu specific to the display engine, or NULL if the display engine has no popup menu. Under Windows, hMenu should be cast into the type HMENU.
-
dwFunctions: Reserved by Oracle.
-
dwType: One of the following:
-
SCCVWTYPE_NONE: No display engine is loaded
-
SCCVWTYPE_UNKNOWN: Unknown display engine
-
SCCVWTYPE_WP: Word Processor display engine
-
SCCVWTYPE_SS: Spreadsheet display engine
-
SCCVWTYPE_DB: Database display engine
-
SCCVWTYPE_HEX: Hexadecimal display engine
-
SCCVWTYPE_IMAGE: Bitmap graphics display engine
-
SCCVWTYPE_ARCHIVE: Archive display engine
-
SCCVWTYPE_VECTOR: Vector graphics display engine
-
SCCVWTYPE_HTML - HTML document display engine
-
SCCVWTYPE_EMAIL - email display engine
-
Comments
The popup menus available for each display engine allow the developer to place powerful, file-type-specific options/events in the hand of the user without designing his/her own menus and without dealing with the API for setting options/events. The basic procedure for doing this is as follows.
When you get the SCCVW_DISPLAYCHANGE message sent by the view window, call SCCVW_GETDISPLAYINFO. If hMenu is not 0, remove any previous popup you added and use the szName and hMenu parameters of the SCCVWDISPLAYINFO40 or SCCVWDISPLAYINFO80 structure to add the display engine's popup menu to your menu bar. If hMenu is 0, just remove any previous menu.
4.26 SCCVW_GETDRAWPAGEINFO
* This message will get page information about the requested page. It is to be used within a SCCVW_INITDRAWPAGE and a SCCVW_DEINITDRAWPAGE before the SCCVW_DRAWPAGE to get the best page size information for that page.
Parameters
-
wParam: Should be set to 0.
-
lParam: Pointer to a structure of the type SCCVWGETDRAWPAGEINFO.
Return Value
One of the following values:
-
SCCVWERR_OK: GETDRAWPAGEINFO was successful.
-
SCCVWERR_NONEFOUND: There is no page information available in this file.
-
SCCVWERR_LASTPAGE: The page just drawn is the last page in the file.
-
SCCVWERR_NOPAGE: The requested page does not exist or is not yet available.
-
SCCVWERR_NOFILE: No file is being viewed.
-
SCCVWERR_NOINIT: SCCVW_INITDRAWPAGE has not been called
-
SCCVW_ALLOCFAILED: Allocation failed.
-
SCCVW_FEATURENOTAVAIL: Draw page is not supported by this display engine.
-
SCCVWERR_UNKNOWN: Some other error has occurred.
Platform
Windows
4.26.1 SCCVWDRAWPAGEINFO Structure
This structure is passed by the developer through the SCCVW_GETDRAWPAGEINFO message.
Structure
A C data structure defined in sccvw_w.h (Windows), as follows:
Windows Structure
typedef struct SCCVWDRAWPAGEINFOtag { VTDWORD dwSize; VTDWORD dwPageToDraw; VTDWORD dwReserved; VTDWORD dwFlags; VTLONG lUnitsPerInch; VTLONG lFormatWidth; VTLONG lFormatHeight; VTLONG lTableWidth; HDC hOutputDC; HDC hFormatDC; } SCCVWDRAWPAGEINFO, * PSCCVWDRAWPAGEINFO;
Parameters
-
dwSize: Must be set by the developer to sizeof (SCCVWDRAWPAGEINFO).
-
dwPageToDraw: The page of the file about which information is needed. Page numbers start at 0. In order to get this information, all pages before it must have been drawn through SCCVW_DRAWPAGE. If the previous page was not already drawn, this message will return SCCVWERR_NOPAGE.
-
dwReserved: Reserved for future use, must be set to 0.
-
dwFlags: None currently defined.
-
lUnitsPerInch: Number of units per inch that lFormatWidth and lFormatHeight are in. For instance, if lFormatHeight and lFormatWidth are in twips (as on Windows systems), lUnitsPerInch should be 1440.
-
lFormatHeight: This will get filled with the page height using the lUnitsPerInch value. If there is no page information in the file, the return code will be SCCVWERR_NONEFOUND and this value will be unchanged.
-
lFormatWidth: This will get filled with the page width using the lUnitsPerInch value. If there is no page information in the file, the return code will be SCCVWERR_NONEFOUND and this value will be unchanged.
-
lTableWidth: This will get filled with the width of the widest table in a word processing document, using the lUnitsPerInch value. If there are no tables, or the document is not a Word Processing document, this value will be set to 0. If there is no page information in the file, the return code will be SCCVWERR_NONEFOUND and this value will be unchanged.
-
hOutputDC: Device context to draw into.
-
hFormatDC: Device context (or information context) used to wrap text and retrieve other formatting information.
Note: hOutputDC and hFormatDC may not be the same DC.
4.27 SCCVW_GETFILEACCESSDATA
** This message is sent from the view window to the developer when the technology encounters a file that requires additional information to access its contents.
Parameters
-
wParam: ID of information requested.
-
lParam: Pointer to a SCCVWFILEACCESSDATA structure.
typedef struct { VTDWORD dwSize; /* size of this structure */ VTBOOL bProcessed; /* flag if this request was processed */ VTDWORD dwRequestId; /* id of information requested */ VTWORD wFIId; /* FI id of reference file */ VTDWORD dwSpecType; /* file spec type */ VTVOID *pSpec; /* pointer to a file spec */ VTSYSVAL pReturnData; /* pointer to structure to place requested */ /* information in to return to OIT */ VTDWORD dwReturnDataSize; /* size of the return data structure */ VTDWORD dwAttemptNumber; /* The number of times the callback has */ /* already been called for the currently */ /* requested item of information */ } SCCVWFILEACCESSDATA, * PSCCVWFILEACCESSDATA;
-
dwRequestID: One of the following values:
-
OIT_FILEACCESS_PASSWORD – Requesting the password of the file
-
OIT_FILEACCESS_NOTESID – Requesting the notes ID file location
-
-
pReturnData: For OIT_FILEACCESS_PASSWORD and OIT_FILEACCESS_NOTESID, the buffer is an array of WORD characters.
-
dwReturnDataSize: Size of the pReturnData buffer.
Return Value
-
SCCERR_OK: Tells Oracle Outside In that the requested information is provided.
-
SCCERR_CANCEL: Tells Oracle Outside In that the requested information is not available.
This message will be repeatedly sent if the information provided is not valid (such as the wrong password). It is the responsibility of the application to provide the correct information or return SCCERR_CANCEL.
NOTE: Not all formats that use passwords are supported. Only Microsoft Office binary (97-2003), Microsoft Office 2007, Microsoft Outlook PST 97-2013, Lotus NSF, PDF (with RC4 & AES 128-bit encryption), and Zip (with AES 128- & 256-bit, ZipCrypto) are currently supported.
4.28 SCCVW_GETFILEINFO
* Returns information about the file currently being viewed.
Parameters
-
wParam: Should be set to 0.
-
lParam: A pointer to a SCCVWFILEINFO40, SCCVWFILEINFO80 or SCCVWFILEINFO84 structure to be filled.
The new structure is:
typedef struct { VTDWORD dwSize; VTWORD szDisplayName[SCCVW_DISPLAYNAMEMAX]; VTDWORD dwFileId; VTWORD szFileIdName[SCCVW_FILEIDNAMEMAX]; VTWORD *szFileName; } SCCVWFILEINFO84;
-
dwSize: Must be set by the developer to sizeof(SCCVWFILEINFO40), sizeof(SCCVWFILEINFO80) or sizeof(SCCVWFILEINFO84).
When using the SCCVWFILEINFO84 structure, the viewer will allocate the buffer used by szFileName to avoid the buffer size limitation of the other versions of the structure. When the caller has finished using szFileName, the buffer must be released using the SCCVW_FREEFILEINFO message. For example:
HWND hViewWnd = CreateWindow(…); SCCVWFILEINFO84 fileInfo; fileInfo.dwSize = sizeof(SCCVWFILEINFO84); SendMessage(hViewWnd, SCCVW_GETFILEINFO, 0, (LPARAM)&fileInfo); … SendMessage(hViewWnd, SCCVW_FREEFILEINFO, 0, (LPARAM)&fileInfo);
Return Value
One of the following values:
-
SCCVWERR_OK: pFileInfo was filled successfully
-
SCCVWERR_NOFILE: The viewer is not currently viewing a file
-
SCCVWERR_BADPARAM: Structure size was incorrect
Platform
Windows
4.28.1 SCCVWFILEINFO40 and SCCVWFILEINFO80 Structures
These structures can be passed by the developer to the SCCVW_GETFILEINFO message. Note that while both of these structures can accept Unicode, only the SCCVWFILEINFO80 structure is truly intended to accept Unicode.
Structure
A C data structure defined in sccvw as follows:
typedef struct { VTDWORD dwSize; VTTCHAR szDisplayName[SCCVW_DISPLAYNAMEMAX]; VTDWORD dwFileId; VTTCHAR szFileIdName[SCCVW_FILEIDNAMEMAX]; VTTCHAR szFileName[SCCVW_FILENAMEMAX]; } SCCVWFILEINFO40; typedef struct { VTDWORD dwSize; VTWORD szDisplayName[SCCVW_DISPLAYNAMEMAX]; VTDWORD dwFileId; VTWORD szFileIdName[SCCVW_FILEIDNAMEMAX]; VTWORD szFileName[SCCVW_FILENAMEMAX]; } SCCVWFILEINFO80;
Parameters
-
dwSize: Must be set by the developer to sizeof(SCCVWFILEINFO40) or sizeof(SCCVWFILEINFO80).
-
szDisplayName: String used when a human readable form of the file name is needed. This string is either set specifically by the developer in the structure or it is generated by the viewer based on the real name of the file.
-
dwFileId: The ID number associated with this type of file. The numbers are defined in the include file sccfi.
-
szFileIdName: A human readable representation of the FI ID number, for example WordPerfect 5.0.
-
szFileName: A path to the actual file being viewed.
4.29 SCCVW_GETIDEALWINDOWSIZE
* This message allows the developer to determine the ideal window size to use for the loaded document. This is especially useful when viewing graphic file formats.
Parameters
-
wParam: The handle of the view window sending this message.
-
lParam: Pointer to a structure of the type SCCVWIDEALSIZE50.
Return Value
One of the following values:
-
SCCVWERR_OK: The ideal window size was successfully calculated.
-
SCCVWERR_BADPARAM: One of the values in the SCCVWIDEALSIZE50 structure was invalid.
-
SCCVWERR_NONEFOUND: This file does not have an ideal size. In this case the Result values are set to the Maximum values.
Comments
Since this message cannot determine the ideal window size until the document is already loaded, it is recommended that the initial view window be hidden when created, and shown after resizing using the results of this message. Also, if the OEM is taking over control of the scroll bars, it should be done prior to using this message.
Platform
Windows
4.29.1 SCCVWIDEALSIZE50 Structure
This structure is passed by the OEM through the SCCVW_GETIDEALWINDOWSIZE message.
Structure
A C data structure defined in sccvw as follows:
typedef struct SCCVWIDEALSIZE50tag { VTDWORD dwSize; VTDWORD dwFlags; VTDWORD dwMaxWidth; VTDWORD dwMaxHeight; VTDWORD dwResultWidth; VTDWORD dwResultHeight; } SCCVWIDEALSIZE50,* PSCCVWIDEALSIZE50;
Parameters
-
dwSize: Must be set by the OEM to sizeof(SCCVWIDEALSIZE50).
-
dwFlags: Set by the OEM to a value of 0. Future support may allow for special flag settings.
-
dwMaxWidth: Set by the OEM to the maximum value, in screen coordinates, to which the dwResultWidth should be set.
-
dwMaxHeight: Set by the OEM to the maximum value, in screen coordinates, to which the dwResultHeight should be set.
-
dwResultWidth: Returned value which indicates the ideal width, in screen coordinates, to use as the window width of the viewer window. This value is calculated based on the dimensions of the document being viewed and takes the existence of scroll bars into account.
-
dwResultHeight: Returned value which indicates the ideal height, in screen coordinates, to use as the window height of the viewer window. This value is calculated based on the dimensions of the document being viewed and takes the existence of scroll bars into account.
4.30 SCCVW_GETOPTION
* This message allows the developer to get the current or default value of an option.
Parameters
-
wParam: Should be set to 0.
-
lParam: A pointer to a SCCVWOPTIONSPEC40 structure.
Return Value
One of the following values:
-
SCCVWERR_OK: pData contains the value of the option.
-
SCCVWERR_BADPARAM: Structure size was incorrect or the option ID was bad.
Platform
Windows
4.30.1 SCCVWOPTIONSPEC40 Structure
This structure is passed by the developer through the SCCVW_GETOPTION or SCCVW_SETOPTION message.
Structure
A C data structure defined in sccvw as follows:
typedef struct { VTDWORD dwSize VTDWORD dwId; VTDWORD dwFlags; VTVOID pData; } SCCVWOPTIONSPEC40;
Parameters
-
dwSize: Must be set by the developer to sizeof(SCCVWOPTIONSPEC40).
-
dwId: The ID of the option the developer wants to set or get.
-
dwFlags: Any of the following OR-ed together:
-
SCCVWOPTION_CURRENT: Set/Get the current value of the option.
-
SCCVWOPTION_DEFAULT: Set/Get the default value of the option.
Note: These two flags may only be used together when passing the structure to SCCVW_SETOPTION. In SCCVW_GETOPTION they are mutually exclusive.
-
-
pData: A pointer to a data area containing the option's value on a Set or receiving the option's value on a Get. This area must be as large as the data type specified for the option ID the developer is getting or setting.
4.31 SCCVW_GETPROPERTY
This message returns any file property information generated by the input filter.
Parameters
-
wParam: One of the following:
-
SCCVW_GETPROP_FIRST: Retrieves the information for the first property generated by the filter.
-
SCCVW_GETPROP_NEXT: Retrieves the information for the next property generated by the filter.
-
SCCVW_GETPROP_PREV: Retrieves the information for the previous property generated by the filter.
-
SCCVW_GETPROP_BYID: Retrieves the information (if any) for a property specified in the structure. Values are specified in sccca.h, and range from SCCCA_DOCCOMMENT (1) to SCCCA_APPVERSION (162). User defined properties can not be specified.
-
SCCVW_GETPROP_BYINDEX: Retrieves a property specified by a zero-based index from the property array.
-
-
lParam: Pointer to a structure of the type SCCVWGETPROP.
Return Value
One of the following values:
-
SCCERR_OK: Property information was successfully retrieved, or data size members were populated (if NULL pointers are passed for data).
-
SCCERR_BADPARAM: lParam is NULL/0 or an invalid value was passed in wParam, or a buffer size of less than 2 was specified in the SCCVWGETPROP structure.
-
SCCERR_ALLOCFAILED: An internal allocation failed.
-
SCCERR_INDEXOUTOFBOUNDS: Request property does not exist. This can happen with SCCVW_GETPROP_NEXT if the last property was already retrieved, or with SCCVW_GETPROP_PREV if the first property was just retrieved, or with SCCVW_GETPROP_FIRST if the are no properties available for the file, or with the SCCVW_GETPROP_BYID if the specified property ID is not available.
-
SCCERR_INSUFFICIENTBUFFER: User allocated buffer was not sufficient to hold property information. Data will not be placed in insufficient buffers, and the initial character will be set to NULL. Because there are two buffers, one may be filled even if the other is insufficient. The required buffer size is placed in the SCCVWGETPROP structure.
4.31.1 SCCVWGETPROP Structure
This structure is passed by the developer through the SCCVW_GETPROPERTY message.
Structure
A C data structure defined in sccvw.h, as follows:
typedef struct SCCVWGETPROPtag { VTDWORD dwSize; VTDWORD dwPropId; VTLPVOID pName; VTDWORD dwNameSize; VTLPVOID pData; VTDWORD dwDataSize; VTDWORD dwDataType; } SCCVWGETRAWTEXT50;
Parameters
-
dwSize: [IN]: Must be set by the developer to sizeof(SCCVWGETPROP).
-
dwPropId: [IN or OUT]: ID of property name. Must be set by the developer for SCCVW_GETPROP_BYID.
-
pName: [IN] pointer to a buffer supplied by the developer to receive property name. May be NULL.
-
dwNameSize: [IN/OUT] IN: Size in bytes of buffer pointed to by pName. [OUT]: Bytes copied into pName, or size of buffer necessary to receive property name.
-
pData: [IN] pointer to a buffer supplied by the developer to receive property value. May be NULL.
-
dwDataSize: [IN/OUT] IN: Size in bytes of buffer pointed to by pData. [OUT]: Bytes copied into pData, or size of buffer necessary to received property value.
-
dwDataType: [OUT] Type of data copied into pData. For this version, SCCVW_PROPTYPE_STRING is the only valid type, indicating Unicode string data.
Comments
All strings (Property names, as well as property value for this version) are Unicode. If pName or pData are NULL, the dwNameSize and dwDataSize members will be filled with required buffer size to hold the indicated property.
4.32 SCCVW_GETRAWTEXT
* This message allows the parent to get the raw text buffer which contains the character identified by its actual character count (ACC) from the beginning of the document. The buffer of text returned is of variable size.
Parameters
-
wParam: Should be set to 0.
-
lParam: Pointer to a structure of the type SCCVWGETRAWTEXT50.
Return Value
One of the following values:
-
SCCVWERR_BADPARAM: There was a problem with the parameters passed into this call.
-
SCCVWERR_ALLOCFAILED: A memory allocation has failed. The machine has possibly run out of memory.
-
SCCVWERR_UNKNOWNFAILURE: There was a failure opening this document and getting the text.
-
SCCVWERR_NONEFOUND: The document does not contain the character (the number of characters in the document is less than the ACC requested).
-
SCCVWERR_OK: The text buffer containing the requested character was found and the structure has been updated.
Comments
To produce offsets used in SCCVW_ADDANNOTATION, use the SCCVWGETRAWTEXT50 structure as follows:
-
Fill the dwACC member of the structure with a character count which identifies the offset of the character to be annotated.
-
Fill dwSize and dwOptions and call SCCVW_GETRAWTEXT.
-
Locate the start and end character count offsets of the text to annotate and call SCCVW_MAPPOSITION to turn each character count into a SCCVWPOS. The end position of an annotation is NOT inclusive, so the value used for an end position should be the offset of the next character after the last character to be modified by the annotation. If an annotation includes the last character of the document, the end position must be set to the offset value of the last character plus 1.
-
Use the resulting SCCVWPOS values as the sStartPos and sEndPos elements when calling SCCVW_ADDANNOTATION.
NULL characters are included in the text buffer to act as fillers for text which was in the original file but is not part of the document body (revision deletions and document properties).
If Unicode output is required, then use the option SCCID_SYSTEMFLAGS to enable Unicode raw text output.
It is the OEM's responsibility to free the hText memory blocks. This allows the OEM to perform cross chunk searches.
Note:
Developers who need just the text of a file (for indexing, for example) should contact an Oracle Account Representative for information about the Oracle Outside In Content Access product. This technology uses the same filters as the Viewer to rapidly read text and other content. Oracle guarantees that the text retrieved from the Content Access product will be identical (character for character) with the text returned by the SCCVW_GETRAWTEXT. However, Content Access can retrieve more data than is available from the raw text buffer, including non-visible text (such as document properties and hidden text), and text from embedded documents.
Platform
Windows
4.32.1 SCCVWGETRAWTEXT50 Structure
This structure is passed by the OEM through the SCCVW_GETRAWTEXT message.
Structure
A C data structure defined in sccvw as follows:
typedef struct { VTDWORD dwSize; VTDWORD dwOptions; VTDWORD dwACC; VTHANDLE hText; VTDWORD dwCharCount; VTDWORD dwCharSet; VTDWORD dwTextBufSize; VTDWORD dwTextOffset; } SCCVWGETRAWTEXT50;
Parameters
-
dwSize: Must be set by the OEM to sizeof(SCCVWGETRAWTEXT50).
-
dwOptions: Flags indicating options for getting the raw text (none defined, set to 0).
-
dwACC: Set this to the actual character count, 0 based from the beginning of the document, which defines the raw text buffer being requested.
-
hText: Returns the handle to an array of BYTEs representing characters. It is the developer's responsibility to free the hText handle when finished accessing the text.
-
dwCharCount: Returns the number of characters in hText.
-
dwCharSet: Returns the SO_* (see sodefs) character set of the characters in hText. The output character set is either the default native environment character set or Unicode if the SCCID_SYSTEMFLAGS is set to SCCVW_SYSTEM_UNICODE.
-
dwTextBufSize: Returns the size in bytes in hText. This is not necessary the same as the number of characters for DBCS and Unicode character sets.
-
dwTextOffset: Returns the number of characters from the beginning of the document to the first character in hText.
4.33 SCCVW_GETTREECOUNT
* This message allows the parent to get the number of nodes in an archive file. A node is defined as either a folder or a file. Node 0 is the root node for the archive, and contains the other nodes.
Parameters
-
wParam: Should be set to 0.
-
LParam: Pointer to a VTDWORD to be filled in with the number of nodes in the archive.
Return Value
One of the following values:
-
SCCVWERR_BADPARAM: There was a problem with the parameters passed into this call. This can include the file being viewed not being an archive file.
-
SCCVWERR_OK: The VTDWORD has been filled in with the number of nodes in the archive.
Platform
Windows
4.34 SCCVW_GETTREENODE
* This message allows the parent to get information regarding a node such as the name or size of the node. A node is defined as either a folder or a file. Node 0 is the root node for the archive, and contains the other nodes.
Parameters
-
wParam: Should be set to 0.
-
lParam: Pointer to a SCCDATREENODE structure.
Return Value
One of the following values:
-
SCCVWERR_BADPARAM: There was a problem with the parameters passed to this message. This can include the file being viewed not being an archive file.
-
SCCVWERR_OK: The SCCDATREENODE structure has been filled in with information about the node in the archive.
Platform
Windows
Comments
A node can be either a folder, or an archived file. For archives that store path information, the path is broken down into separate nodes. Node zero is always a folder that contains the contents of the archive file.
4.34.1 SCCDATREENODE Structure
This structure is passed by the OEM through the SCCVW_GETTREENODE message.
Structure
A C data structure defined in sccda as follows:
typedef struct { VTDWORD dwSize; VTDWORD dwNode; VTTCHAR szName[1024]; VTDWORD dwFileSize; VTDWORD dwTime; VTDWORD dwFlags; VTDWORD dwCharSet; } SCCDATREENODE, *PSCCDATREENODE;
Parameters
-
dwSize: Must be set by the OEM to sizeof(SCCDATREENODE).
-
dwNode: The number of the node to retrieve information about (zero-based). The first node is 0.
-
szName: A buffer to hold the name of the node.
-
dwFileSize: Returns the file size (in bytes) of the requested node. Folder nodes have size 0.
-
dwTime: Returns the timestamp of the requested node, in MS-DOS time.
-
dwFlags: Returns additional information about the node. It can be a combination of the following:
-
SCCDA_TREENODEFLAG_FOLDER: Indicating that the selected node is a folder and not a file.
-
SCCDA_TREENODEFLAG_SELECTED: Indicating that the node is selected.
-
SCCDA_TREENODEFLAG_FOCUS: Indicating that node has focus.
-
-
dwCharSet: Returns the SO_* (see sodefs) character set of the characters in szName. The output character set is either the default native environment character set or Unicode if the SCCID_SYSTEMFLAGS is set to SCCVW_SYSTEM_UNICODE.
4.35 SCCVW_GOTOANNOTATION
* This message allows the parent to move the view/selection from annotation to annotation.
Parameters
-
wParam: Flags indicating the starting position and the meaning of the value in lParam. One of the following:
-
SCCVW_GOTOFIRST: Go to the first or only annotation in the document that meets the mask or absolute criteria.
-
SCCVW_GOTOLAST: Go to the last or only annotation in the document that meets the mask or absolute criteria.
-
SCCVW_GOTOPREV: Go to the first annotation that appears before the current caret/selection in the document and meets the mask or absolute criteria.
-
SCCVW_GOTONEXT: Go to the first annotation that appears after the current caret/selection in the document and meets the mask or absolute criteria.
OR-ed with one of the following:
-
SCCVW_ABSOLUTE: lParam represents an absolute dwUser value as set by the developer in a SCCVW_ADDANNOTATION message.
-
SCCVW_MASK: lParam represents a mask to be applied to the dwUser values of the annotations.
-
-
lParam: If wParam contains SCCVW_ABSOLUTE, the set of annotations that can be moved to is limited to those annotations where dwUser == lParam. If wParam contains SCCVW_MASK, the set of annotations that can be moved to is limited to those annotations where dwUser & lParam == lParam. For example, if five annotations exist with the following dwUser values:
-
Annotation 1 (dwUser = 0x001)
-
Annotation 2 (dwUser = 0x0010)
-
Annotation 3 (dwUser = 0x0011)
-
Annotation 4 (dwUser = 0x0100)
-
Annotation 5 (dwUser = 0x1000)
... then the following are true:
-
an lParam of 0x0000 will use all the annotations
-
an lParam of 0x0001 will use annotations 1 and 3
-
an lParam of 0x0011 will use annotation 3 only
-
an lParam of 0x1001 will not use any annotations
SCCVW_MASK can be used to move around within a particular class of annotation that each has a unique dwUser but share some bits in common.
-
Return Value
One of the following values:
-
SCCVWERR_NONEFOUND: No annotation that meets the mask or absolute criteria was found.
-
SCCVWERR_OK: An annotation that meets the mask or absolute criteria was found and is selected
-
SCCVWERR_BADPARAM: One of the values in wParam or lParam is bad.
Platform
Windows
4.36 SCCVW_HILITESTYLE
* This message allows the parent to define a formatting style for highlighted text. The style identifier can be used in conjunction with SCCVW_ADDANNOTATION.
Parameters
-
wParam: Should be set to 0.
-
wCharAttr: Refers to the value set for the wAttr variable used in the SCCVWFONTSPEC structure of the SCCID_DEFAULTPRINTFONT option to determine font attributes.
-
lParam: Pointer to a structure of the type SCCVWHILITESTYLE41.
Return Value
One of the following values:
-
SCCVWERR_OK: The style definition has been stored.
-
SCCVWERR_BADPARAM: One value in SCCVWCOPY41 structure was invalid.
Platform
Windows
4.36.1 SCCVWHILITESTYLE41 Structure
This structure is passed by the OEM through the SCCVW_HILITESTYLE message.
Structure
A C data structure defined in sccvw as follows:
typedef struct { VTDWORD dwSize; VTDWORD dwStyleId; VTDWORD dwOptions; SCCVWCOLORREF sForeground; SCCVWCOLORREF sBackground; VTWORD wCharAttr; } SCCVWHILITESTYLE41;
Parameters
-
dwSize: Must be set by the OEM to sizeof(SCCVWHILITESTYLE41).
-
dwStyleId: A unique ID for this style which can be used when adding highlight annotations with the SCCVW_ADDANNOTATION message.
-
dwOptions: Flags which provide highlight options:
-
SCCVW_USEFOREGROUND: Indicates that sForeground defines the foreground text color to apply to highlights with this style.
-
SCCVW_USEBACKGROUND: Indicates that sBackground defines the background color to apply to highlights with this style.
-
SCCVW_USECHARATTR: Indicates that wCharAttr defines attributes to apply to highlights with this style.
-
-
sForeground: Defines the color to be used for the highlight text if SCCVW_USEFOREGROUND was set in dwOptions. Set this value using the SCCVWRGB(red,green,blue) macro. The red, green, and blue are percentages of the color from 0-255 (with 255 being 100%).
-
sBackground: Defines the color to be used for the background of the highlight if SCCVW_USEBACKGROUND was set in dwOptions. Set this value using the SCCVWRGB(red,green,blue) macro. The red, green, and blue are percentages of the color from 0-255 (with 255 being 100%).
-
wCharAttr: Defines the font attribute to be used for the highlight text if SCCVW_USECHARATTR was set in dwOptions.
4.36.2 SCCVWHILITESTYLE81 Structure
This structure is passed by the OEM through the SCCVW_HILITESTYLE message.
Structure
A C data structure defined in sccvw as follows:
typedef struct SCCANNOHILITESTYLE81tag { VTDWORD dwSize; VTDWORD dwStyleId; VTDWORD dwOptions; SCCVWCOLORREF sForeground; SCCVWCOLORREF sBackground; VTWORD wCharAttr; VTWORD wCharAttrMask; SCCVWCOLORREF sUnderline; } SCCVWHILITESTYLE81, * PSCCVWHILITESTYLE81;
The behavior of most of the fields is identical with their behavior in the SCCVWHILITESTYLE41 data structure. The only differences are as follows:
-
The addition of wCharAttrMask. This field uses the same flags as the wCharAttr field, and is used to indicate which bits of wCharAttr should be used in defining this style. If a particular attribute is set in wCharAttrMask, then the corresponding value from wCharAttr will be used in the style. In this way, the combination of wCharAttr and wCharAttrMask may be used to turn on or off any of the available character attributes. Any flag set in wCharAttr without the corresponding flag set in wCharAttrMask will be ignored.
-
The addition of sUnderline. This value is a color reference that allows a highlight to be specified in which the text is underlined in a color that is different from the text color. For this value to take effect, the SCCVW_USEUNDERLINECOLOR flag must be set in the dwOptions field.
Parameters
-
dwSize: Must be set by the OEM to sizeof(SCCVWHILITESTYLE81).
-
dwStyleId: A unique ID for this style which can be used when adding highlight annotations with the SCCVW_ADDANNOTATION message.
-
dwOptions: Flags which provide highlight options:
-
SCCVW_USEFOREGROUND: Indicates that sForeground defines the foreground text color to apply to highlights with this style.
-
SCCVW_USEBACKGROUND: Indicates that sBackground defines the background color to apply to highlights with this style.
-
SCCVW_USECHARATTR: Indicates that wCharAttr defines attributes to apply to highlights with this style.
-
SCCVW_USETHINUNDERLINE: If the user specifies this flag in the dwOptions field of this data structure, and the style defines an underline character attribute, then the underline will be drawn with a thin line. This overrides the normal case in which the thickness of an underline scales to the size of the font.
-
SCCVW_USEUNDERLINECOLOR: If the user specifies this flag in the dwOptions field of this data structure, and the style defines an underline character attribute, then the sUnderline field will be used to specify the color of underline attributes applied with this style. If this flag is not specified, the sUnderline field will be ignored, and the text color will be used for any underline attributes that may be defined.
-
-
sForeground: Defines the color to be used for the highlight text if SCCVW_USEFOREGROUND was set in dwOptions. Set this value using the SCCVWRGB(red,green,blue) macro. The red, green, and blue are percentages of the color from 0-255 (with 255 being 100%).
-
sBackground: Defines the color to be used for the background of the highlight if SCCVW_USEBACKGROUND was set in dwOptions. Set this value using the SCCVWRGB(red,green,blue) macro. The red, green, and blue are percentages of the color from 0-255 (with 255 being 100%).
-
wCharAttr: Defines the font attribute to be used for the highlight text if SCCVW_USECHARATTR was set in dwOptions. The following character attribute values are supported:
-
SCCVW_CHARATTR_UNDERLINE
-
SCCVW_CHARATTR_ITALIC
-
SCCVW_CHARATTR_BOLD
-
SCCVW_CHARATTR_STRIKEOUT
-
SCCVW_CHARATTR_CAPS
-
SCCVW_CHARATTR_SUBSCRIPT
-
SCCVW_CHARATTR_SUPERSCRIPT
-
SCCVW_CHARATTR_DUNDERLINE
-
SCCVW_CHARATTR_WORDUNDERLINE
-
SCCVW_CHARATTR_DASHUNDERLINE
-
SCCVW_CHARATTR_DOTUNDERLINE
Note that though there are multiple underline attributes defined independently of each other, only one at a time may be applied as an annotation style. If more than one underline style is specified in the character attribute flags, it is not guaranteed which underline style will take effect.
-
4.37 SCCVW_HSCROLL
* This message allows the OEM to cause horizontal scrolling behavior.
Parameters
-
wParam: Code describing how to scroll. One of the following values:
-
SCCSB_LINELEFT: Scroll left one line as if the left arrow on the scroll bar had been pressed.
-
SCCSB_LINERIGHT: Scroll right one line as if the right arrow on the scroll bar had been pressed.
-
SCCSB_PAGELEFT: Scroll left one page.
-
SCCSB_PAGERIGHT: Scroll right one page.
-
SCCSB_POSITION: Sets the scroll bar to the position given in lParam.
-
-
lParam: Position used if wParam = SCCSB_POSITION. Its value must be in the range given by the last SCCVW_SETSCROLLRANGE message sent to the OEM.
Return Value
One of the following values:
-
SCCVWERR_OK: View window was scrolled.
-
SCCVWERR_BADPARAM: One of the values in wParam or lParam is bad.
Platform
Windows,
4.38 SCCVW_IDLE
* This message should be sent repeatedly by the developer to the viewer during the viewing process. This message allows the viewer to blink the cursor and read ahead in the file being viewed. Under Windows, this message is only necessary if the developer has set the SCCVW_SYSTEM_NOTIMER message in the SCCID_SYSTEMFLAGS option.
Parameters
-
wParam: Should be set to 0.
-
lParam: Should be set to 0.
Platform
Windows
4.39 SCCVW_INFOMESSAGE
* * This message is sent to the developer during processing of the document. Each message indicates that the Viewer has identified a situation that it knows it is unable to correctly render. As re-rendering a page may cause the view window to reprocess the cause of a message, these messages should not be considered unique instances of a problem.
Parameters
-
wParam: Handle of the view window sending this message.
-
lParam: A VTDWORD with one of the following values:
-
SCCVW_INFO_EQUATION - The file contained Equations.
-
SCCVW_INFO_BADCOMPRESSION - A graphic used an unsupported compression method.
-
SCCVW_INFO_BADCOLORSPACE - A graphic used an unsupported colorspace.
-
SCCVW_INFO_FORMS - The document used forms.
-
SCCVW_INFO_MISSINGMAP - A PDF document did not have a toUnicode table.
-
SCCVW_INFO_VERTICALTEXT - A vertical text run was present.
-
SCCVW_INFO_TEXTEFFECTS - unsupported text effects were present (such as Word Art).
-
SCCVW_INFO_RTTOLFTTABLES - A Table had right-to-left columns.
-
SCCVW_INFO_ALIASEDFONT - A font was missing, but a font alias was used.
-
SCCVW_INFO_MISSINGFONT - A desired font was not available on the system.
-
SCCVW_INFO_SUBDOCFAILED - A subdocument had an error.
-
SCCVW_INFO_TYPETHREEFONT - A Type 3 Font was encountered.
-
SCCVW_INFO_UNSUPPORTEDSHADING - An unsupported shading pattern was encountered.
-
SCCVW_INFO_INVALIDHTML - An HTML parse error, as defined by the W3C, was encountered.
-
Platform
Windows
4.40 SCCVW_INITDRAWPAGE
* This message initializes the page drawing routines. This message must be called before any calls to SCCVW_DRAWPAGE.
Parameters
-
wParam: Should be set to 0.
-
lParam: Should be set to 0.
Return Value
One of the following values:
-
SCCVWERR_OK: Ready of SCCVW_DRAWPAGE messages.
-
SCCVWERR_ALLOCFAILED: Not enough memory to do page drawing.
Platform
Windows
4.41 SCCVW_KEYDOWN
* * This message is sent to the developer when the view window receives a key press notification from the operating system. This allows the developer to define their own function for any key.
Parameters
-
wParam: Not used, will be set to 0.
-
lParam: Operating system specific key identifier.
For Windows, lParam represents the Windows virtual key code (for example, VK_DOWN).
Return Value
One of the following values:
-
SCCVW_DOKEY: If the view window should process the key as usual.
-
SCCVW_IGNOREKEY: If the view window should ignore the key.
Platform
Windows
4.42 SCCVW_MAPPOSITION
* This message allows the parent to map between a position and an actual character count.
Parameters
-
wParam: Should be set to 0.
-
lParam: Pointer to a structure of the type SCCVWMAPPOSITION41.
Return Value
One of the following values:
-
SCCVWERR_OK: The mapping was successful
-
SCCVWERR_BADPARAM: One of the values in the SCCVWMAPPOSITION41 structure was invalid.
-
SCCVWERR_NONEFOUND
Platform
Windows
4.42.1 SCCVWMAPPOSITION41 Structure
This structure is passed by the OEM through the SCCVW_MAPPOSITION message.
Structure
A C data structure defined in sccvw as follows.
typedef struct { VTDWORD dwSize; VTDWORD dwMapOptions; SCCVWPOS sPos; VTDWORD dwACC; } SCCVWMAPPOSITION41;
Parameters
-
dwSize: Must be set by the OEM to sizeof(SCCVWMAPPOSITION41).
-
dwMapOptions: Flags indicating mapping options. One of the following:
-
SCCVW_MAPACCTOPOS: Map the actual character count provided in dwACC into an SCCVWPOS and store the result in sPos. An actual character count is 0 based count of characters from the beginning of the document. See section 6.28.
-
SCCVW_MAPPOSTOACC: Map the SCCVWPOS identified by sPos into an actual character count and store the result in dwACC.
-
-
sPos: Identifies the position to be mapped or to map into according to the dwMapOptions.
-
dwACC: Identifies the actual character count to be mapped or to map into according to the dwMapOptions.
4.43 SCCVW_MAPPROB
* * This message informs the OEM that the page of a PDF file being read contains a font or fonts that are more likely to contain unmappable or incorrectly mapped characters.
The following fonts have non-standard encodings and do not have ToUnicode mappings. When used by PDF, they are considered standard:
-
STANDARD
-
MACROMAN
-
MACEXPERT
-
WIN_ANSI
-
SYMBOL
-
ZAPF_DINGBATS
-
PDFDOC
Fonts with encodings not on this list will trigger this message if they do not have ToUnicode mappings.
This message will be sent once per page. Multiple non-standard fonts in a single page will not trigger repeated messages, but the use of a font across multiple pages will trigger one message for each such page.
Parameters
-
wParam: The handle of the view window that is sending this message.
-
lParam: 0
Return Value
None
4.44 SCCVW_MAPTREEPOSITION
* This message allows the parent to map between a position and an archive node numbers. The values can be used with the SCCVW_GETREENODE, SCCVW_FINDPOSITION and SCCVW_SETSELECTION messages.
Parameters
-
wParam: Should be set to 0.
-
lParam: Pointer to a structure of the type SCCVWMAPTREEPOSITION82.
Return Value
One of the following values:
-
SCCVWERR_OK: The mapping was successful
-
SCCVWERR_BADPARAM: One of the values in the SCCVWMAPTREEPOSITION82 structure was invalid.
-
SCCVWERR_NONEFOUND: No node was found.
Platform
Windows
4.44.1 SCCVWMAPTREEPOSITION82 Structure
This structure is passed by the OEM through the SCCVW_MAPTREEPOSITION message.
Structure
A C data structure defined in sccvw as follows:
typedef struct { VTDWORD dwSize; VTDWORD dwMapOptions; SCCVWPOS sPos; VTDWORD dwNode; VTDWORD dwRecordNum; } SCCVWMAPTREEPOSITION82;
Parameters
-
dwSize: Must be set by the OEM to sizeof(SCCVWMAPTREEPOSITION82).
-
dwMapOptions: Flags indicating mapping options. One of the following:
-
SCCVW_MAPNODETOPOS: Map the tree node value provided in dwNode into an SCCVWPOS and store the result in sPos.
-
SCCVW_MAPPOSTONODE: Map the SCCVWPOS identified by sPos into an actual node value and store the result in dwNode.
-
-
sPos: Identifies the position to be mapped or to map into according to the dwMapOptions. This value corresponds to the values used in SCCVW_GETSELCTION and SCCVWSETSELECTION.
-
dwNode: Identifies the actual node value to be mapped or to map into according to the dwMapOptions. This value corresponds to the values used in SCCVW_GETTREENODE.
-
dwRecordNum: Identifies the record number of the node in the archive. This value corresponds to the record number values used in the Content Access technology.
4.45 SCCVW_OPTIONCHANGE
* * This message is sent to the developer whenever an option has been changed. It can be used to monitor the current state of options.
Parameters
-
wParam: The handle of the view window that is sending this message.
-
lParam: Id of the option that has changed.
Platform
Windows
4.46 SCCVW_PRINT
* Causes the viewer to print the file currently being viewed.
Parameters
-
wParam: Should be set to 0.
-
lParam: Should be set to 0.
Return Value
One of the following values:
-
SCCVWERR_OK: The file was printed.
-
SCCVWERR_CANCEL: The user pressed Cancel in the dialog.
Comment
This call implements the entire printing process, including setup, option and printer selection dialogs. These dialogs give the user control over the full range of printing functionality available in this technology. If the developer needs more control over the printing process, the SCCVW_PRINTEX message should be used.
Platform
Windows
4.47 SCCVW_PRINTEX
* Causes the viewer to print the file currently being viewed based on information provided by the developer in the SCCVWPRINTEX structure.
Parameters
-
wParam: Should be set to 0.
-
lParam: A pointer to a SCCVWPRINTEX40 structure.
Return Value
One of the following values:
-
SCCVWERR_OK: The user OK'd the operation.
-
SCCVWERR_CANCEL: The user canceled the operation.
Platforms
Windows
4.47.1 SCCVWPRINTEX40 Structure
This structure is used by the SCCVW_PRINTEX messages to print a file.
Structure
A C data structure defined in sccvw as follows:
typedef struct { VTDWORD dwSize; VTDWORD dwFlags; HWND hParentWnd; HDC hPrinterDC; VTTCHAR szPrinter[128]; VTTCHAR szPort[128]; VTTCHAR szDriver[128]; VTBOOL bPrintSelectionOnly; VTBOOL bDoSetupDialog; VTBOOL bDoAbortDialog; VTBOOL bPrintHeader; VTBOOL bStartDocAlreadyDone; VTTCHAR szJobName[40]; VTDWORD dwTopMargin; VTDWORD dwBottomMargin; VTDWORD dwLeftMargin; VTDWORD dwRightMargin; VTTCHAR szDefaultFont[32]; VTWORD wDefaultFontSize; FARPROC pAbortProc; VTBOOL bCollate; VTDWORD dwCopies; VTHANDLE hDevMode; } SCCVWPRINTEX40;
Parameters
-
dwSize: Must be set to sizeof(SCCVWPRINTEX40).
-
dwFlags: Any of the following OR-ed together:
-
SCCVW_USEPRINTERDC: Use hPrinterDC as the output device instead of the default printer.
-
SCCVW_USEPRINTERNAME: If SCCVW_USEPRINTERDC is NOT set, use szPrinter, szPort and szDriver as the output device instead of the default printer. If SCCVW_USEPRINTERDC is set, use szPrinter, szPort and szDriver for display purposes in the Abort dialog.
-
SCCVW_USEPRINTSELECTIONONLY: Use the value of bPrintSelectionOnly instead of the value of the SCCID_WHATTOPRINT option.
-
SCCVW_USEJOBNAME: Use the value of szJobName instead of the value of the SCCID_PRINTJOBNAME option.
-
SCCVW_USEMARGINS: Use the values of dwTopMargin through dwRightMargin as the margins instead of the value of the SCCID_DEFAULTPRINTMARGINS option.
-
SCCVW_USEPRINTHEADER: Use the value of bPrintHeader instead of the value of the SCCID_PRINTHEADER option.
-
SCCVW_USEDEFAULTFONT: Use the values of szDefaultFont and wDefaultFontSize instead of the value of the SCCID_DEFAULTPRINTFONT option.
-
SCCVW_USEABORTPROC: Use the values of pAbortProc as the Windows printing abort procedure instead of the default abort procedure.
-
SCCVW_USECOLLATE: Use the values of bCollate instead of the value of the SCCID_PRINTCOLLATE option.
-
SCCVW_USECOPIES: Use the values of dwCopies instead of the value of the SCCID_PRINTCOPIES option.
-
SCCVW_SENDPROGRESS: The view window will send SCCVW_PRINTPROGRESS messages during the print operation. Currently, this flag has not been implemented.
-
SCCVW_USEDEVMODE: Use the value of hDevMode instead of the default device setup information for hPrinterDC
-
-
hParentWnd: Parent window for the setup and abort printing dialogs.
-
hPrinterDC: Output DC created by the developer.
-
szPrinter: String passed to CreateDC to create the output DC and/or used in the Abort dialog.
-
szPort: String passed to CreateDC to create the output DC and/or used in the Abort dialog.
-
szDriver: String passed to CreateDC to create the output DC and/or used in the Abort dialog.
-
bPrintSelectionOnly: If set to TRUE, only the currently selected area of the file will be printed.
-
bDoSetupDialog: If set to TRUE, the dialog shown in the SCCVW_PRINT message will be displayed before printing.
-
bDoAbortDialog: If set to TRUE, an abort dialog with page count will be displayed as the file is printing.
-
bPrintHeader: If set to TRUE, a header with the display name of the file and the page number will appear on every page.
-
bStartDocAlreadyDone: This flag need only be set if you are passing in an hPrinterDC. If set to TRUE, the viewer will assume that a StartDoc has already been done on the DC and will not do a StartDoc or EndDoc itself. This flag can be used to print multiple files in a single print job.
-
szJobName: The text passed to StartDoc as the job name. This text generally appears on banner pages for network printing.
-
dwTopMargin: Distance in twips from the top edge of the page to the top edge of the area where output should appear.
-
dwBottomMargin: Distance in twips from the bottom edge of the page to the bottom edge of the area where output should appear.
-
dwLeftMargin: Distance in twips from the left edge of the page to the left edge of the area where output should appear.
-
dwRightMargin: Distance in twips from the right edge of the page to the right edge of the area where output should appear.
-
szDefaultFont: Name of the font to use when no font is specified in the document (such as ASCII documents).
-
wDefaultFontSize: Height in half points of the font to use when no font is specified in the document.
-
pAbortProc: A pointer to a valid Windows print abort procedure.
-
bCollate: If TRUE the viewer will collate multiple copies.
-
dwCopies: The number of copies that should be printed.
-
hDevMode: Device mode associated with hPrinterDC.
4.48 SCCVW_PRINTSETUP
* Brings up a platform dependent dialog that allows the user to pick from various platform-printing options.
Parameters
-
wParam: Should be set to 0.
-
lParam: Should be set to 0.
Return Value
One of the following values:
-
SCCVWERR_OK: The user OK-ed the operation.
-
SCCVWERR_CANCEL: The user canceled the operation.
Comment
The dialog allows the user to pick from the printers on the system. Additionally, Windows users can change their printer's settings.
Platform
Windows
4.49 SCCVW_RAWTEXTEVENT
* * This message is sent repeatedly to the developer during the initial read of a document. Each message identifies the 0-based offset of the next block of raw text available from the technology. The last RawTextEvent contains a text offset of ‐1 to indicate it is done extracting text from the file. SCCVW_GETRAWTEXT can be used to retrieve the text buffer.
Parameters
-
wParam: Handle of the view window sending this message.
-
lParam: Defines the character offset of the next available raw text buffer.
Platform
Windows
4.50 SCCVW_READAHEADDONE
* * Signals that the chunker is done reading the document. This means that the Oracle Outside In Viewer has completely read to the end of the document. This doesn't mean that rendering is done. It may also be necessary for the Oracle Outside In Viewer to access the file again while the user scrolls through the document.
Parameters
-
wParam: The handle of the view window that is sending this message.
-
lParam: Should be set to 0
Platform
Windows
4.51 SCCVW_SAVEOPTIONS
* Causes the view window to save its current options in the default option set. Generally this happens automatically when the window is destroyed, but if the developer disables this default behavior by setting the SCCVW_SYSTEM_NOOPTIONSSAVE flag in the SCCID_SYSTEMFLAGS option, this message may be used to manually save the current options.
Parameters
-
wParam: Should be set to 0.
-
lParam: Should be set to 0.
Platform
Windows
4.52 SCCVW_SAVETREENODE
* This message instructs the viewer to save a given tree node from an archive file to a new file.
Parameters
-
wParam: Should be set to 0.
-
lParam: Should be a pointer to a SCCVWSAVENODE structure.
Return Value
One of the following values:
-
SCCVWERR_BADPARAM: There was a problem with the parameters passed into this call. This can include the file being viewed not being an archive file, or an invalid path being specified.
-
SCCVWERR_OK: The node was saved successfully.
Platform
Windows
Comments
A node can be either a folder, or a file. If a file is saved, just that file will be saved. If a node is saved, it will save all the contents of that node as well. Saving node zero will save the entire contents of the archive file.
4.52.1 SCCVWSAVENODE Structure
This structure is passed by the OEM through the SCCVW_SAVETREENODE message.
Structure
A C data structure defined in sccvw as follows:
typedef struct { VTDWORD dwSize; VTDWORD dwNode; VTDWORD dwFlags; VTTCHAR szPath[256]; VTTCHAR szName[256]; } SCCVWSAVENODE;
Parameters
-
dwSize: Must be set by the OEM to sizeof(SCCVWSAVENODE).
-
dwNode: The number of the node to be saved (zero-based).
-
dwFlags: Sets additional information about how to handle the node. Currently the only supported flag is SCCVW_SAVENODEFLAG_RESTORE_PATH indicating that the full path for a selected node is to be expanded. If this is not set, the node will be saved into the path exactly specified by szPath.
-
szName: The name to save the node as, if the node is a file. If the node is a folder, this field is ignored. The name specified in the archive file will be used if this is a null string.
-
szPath: The path specifying where to save the node. If this is a null string, the path will be obtained from the option SCCID_ARCOUTPUTPATH. If this path does not exist and cannot be created, the save message will fail.
4.53 SCCVW_SEARCH
* Causes the view window to scan the document for a text string.
Parameters
-
wParam: Should be set to 0.
-
lParam: Pointer to a structure of type SCCVWSEARCHINFO40 or SCCVWSEARCHINFO80.
Return Value
One of the following:
-
0: The search string was found.
-
-1: An error occurred in searching.
-
1: The search reached either end of the file before finding the search string.
Platform
Windows
4.53.1 SCCVWSEARCHINFO40 and SCCVWSEARCHINFO80 Structures
These structures are used by the SCCVW_SEARCH and SCCVW_SEARCHDIALOG messages to specify what to search for in a file. Note that while both of these structures can accept Unicode, only the SCCVWSEARCHINFO80 structure is truly intended to accept Unicode.
Structure
A C data structure defined in sccvw as follows:
typedef struct { VTDWORD dwSize; VTTCHAR siText[80]; VTWORD siTextLen; VTWORD siType; VTWORD siFrom; VTWORD siDirection; } SCCVWSEARCHINFO40; typedef struct { VTDWORD dwSize; VTWORD siText[80]; VTWORD siTextLen; VTWORD siType; VTWORD siFrom; VTWORD siDirection; } SCCVWSEARCHINFO80;
Parameters
-
dwSize: Must be set by the developer to sizeof(SCCVWSEARCHINFO40) or sizeof(SCCVWSEARCHINFO80).
-
siText: String to search for.
-
siTextLen: Length of siText. This should be in bytes for the SCCVWSEARCHINFO40 structure and words for the SCCVWSEARCHINFO80 structure.
-
siType: One of the following:
-
SCCVW_SEARCHCASE: Case sensitive search.
-
SCCVW_SEARCHNOCASE: Case insensitive search.
-
-
siFrom: One of the following:
-
SCCVW_SEARCHTOP: Start the search at the top of the file.
-
SCCVW_SEARCHBOTTOM: Start the search at the bottom of the file.
-
SCCVW_SEARCHCURRENT: Start the search at the current caret position.
-
-
siDirection: One of the following:
-
SCCVW_SEARCHFORWARD: Search towards the bottom of the file.
-
SCCVW_SEARCHBACK: Search towards the top of the file.
-
4.54 SCCVW_SEARCHDIALOG
* Causes the view window to display a search dialog.
Parameters
-
wParam: Should be set to 0.
-
lParam: Pointer to a structure of type SCCVWSEARCHINFO40 or SCCVWSEARCHINFO80, this value may be NULL if the developer does not want to set or retrieve search information. See the "Comments" for this message for details.
Return Value
One of the following:
-
0: The search string was found.
-
-1: An error occurred in searching.
-
1: The search reached either end of the file before finding the search string.
Comments
The search dialog is initialized to the values in SCCVWSEARCHINFO40 or SCCVWSEARCHINFO80 passed in lParam. If the user clicks OK, the search is executed and the SCCVWSEARCHINFO40 or SCCVWSEARCHINFO80 passed in lParam is set to the values the user entered.
Platform
Windows
4.55 SCCVW_SEARCHNEXT
* Causes the view window to scan the file for the same text string specified in a previous SCCVW_SEARCH or SCCVW_SEARCHDIALOG message.
Parameters
-
wParam: One of the following:
-
SCCVW_SEARCHFORWARD: Search towards the bottom of the file.
-
SCCVW_SEARCHBACK: Search towards the top of the file.
-
SCCVW_SEARCHSAME: Continue searching in the same direction as the original search.
-
-
lParam: Should be set to 0.
Return Value
One of the following:
-
0: The search string was found.
-
-1: An error occurred in searching.
-
1: The search reached either end of the file before finding the search string.
Platform
Windows
4.56 SCCVW_SELCHANGE
* * This message is sent to the parent of the view window when the selection state has changed. The parent may then call SCCVW_GETCLIPINFO to determine the view window's readiness to copy to the clipboard.
Parameters
-
wParam: The handle of the view window that is sending this message.
-
lParam: Should be set to 0.
Return Value
none
Platform
Windows
4.57 SCCVW_SELECTALL
* Causes the viewer window to select all data in the view window.
Parameters
-
wParam: Should be set to 0.
-
lParam: Should be set to 0.
Return Value
none
Platform
Windows
4.58 SCCVW_SETDISPLAYNAME
* This call sets the string used when a human readable form of the file name needs to be displayed (like in a dialog). This is useful if the file is a temporary copy of another file (like attachments in mail programs).
Parameters
-
wParam: Should be set to 0.
-
lParam: Pointer to a NULL-terminated string with a length less than SCCVW_DISPLAYNAMEMAX.
Return Value
One of the following values:
-
SCCVWERR_OK: The display name was set.
-
SCCVWERR_UNKNOWN: There was a problem setting the display name.
Platform
Windows
4.59 SCCVW_SETHSCROLLPAGESIZE
* * This message is sent from the view window when the page size (thumb size) of the horizontal scroll bar changes. It allows the OEM to establish correct thumb sizes of scroll bars external to the view window.
Parameters
-
wParam: The handle of the view window that is sending this message.
-
lParam: Contains the new page size.
Platform
Windows
4.60 SCCVW_SETHSCROLLPOSITION
* * This message is sent from the view window when the position of the horizontal scroll bar changes. It allows the OEM to establish correct positioning of scroll bars external to the view window.
Parameters
-
wParam: The handle of the view window that is sending this message.
-
lParam: Contains the new position.
Platform
Windows
4.61 SCCVW_SETHSCROLLRANGE
* * This message is sent from the view window when the range of the horizontal scroll bar changes. It allows the OEM to establish correct positioning of scroll bars external to the view window.
Parameters
-
wParam: The handle of the view window that is sending this message.
-
lParam: LOWORD(lParam) contains the new minimum position. HIWORD(lParam) contains the new maximum position.
Platform
Windows
4.62 SCCVW_SETHSCROLLSTATE
* * This message is sent from the view window when the state of the horizontal scroll bar changes. It allows the OEM to establish correct positioning of scroll bars external to the view window.
Parameters
-
wParam: The handle of the view window that is sending this message.
-
lParam: One of the following:
-
SCCSB_ENABLED: Scroll bar should be enabled.
-
SCCSB_DISABLED: Scroll bar should be disabled.
-
Platform
Windows
4.63 SCCVW_SETIDLEBITMAP
* Sets the bitmap to be centered in the view window when no file is being viewed.
Parameters
-
wParam: An instance handle of the EXE or DLL that contains the bitmap.
-
lParam: LOWORD(lParam) should contain the resource ID of the bitmap. HIWORD(lParam) Should be set to 0.
Return Value
None.
Platforms
Windows
4.64 SCCVW_SETMENUMAX
* This message informs the view window of the maximum value of the developer's menu IDs. This allows the view window to use IDs above this value when creating menus or menu items for its menus. The default value if the message is not sent is #defined as SCCVW_DEFAULTMENUMAX.
Parameters
-
wParam: Highest menu ID used by the caller.
-
lParam: Not used.
Platforms
Windows
4.65 SCCVW_SETOPTION
* This message allows the developer to set the current or default value of one of the many options available in the Viewer. The term option is a little misleading because some options act much more like properties or events in that they have an immediate impact on the display. In some cases they are very much like events in that they are only triggers for an operation (such as zooming in or out of a bitmap).
Parameters
-
wParam: Should be set to 0.
-
lParam: A pointer to a SCCVWOPTIONSPEC40 structure.
Return Value
One of the following values:
-
SCCVWERR_OK: Option has been set.
-
SCCVWERR_BADPARAM: Structure size was incorrect or the option ID was bad.
Comment
The current option is the value the view is using. The default option is the initial value which a new view will have.
Platform
Windows
4.65.1 SCCVWOPTIONSPEC40 Structure
This structure is passed by the developer through the SCCVW_GETOPTION or SCCVW_SETOPTION message.
Structure
A C data structure defined in sccvw as follows:
typedef struct { VTDWORD dwSize VTDWORD dwId; VTDWORD dwFlags; VTVOID pData; } SCCVWOPTIONSPEC40;
Parameters
-
dwSize: Must be set by the developer to sizeof(SCCVWOPTIONSPEC40).
-
dwId: The ID of the option the developer wants to set or get. These IDs, their data types and their functions are listed in the Options chapter of this book.
-
dwFlags: Any of the following OR-ed together:
-
SCCVWOPTION_CURRENT: Set/Get the current value of the option.
-
SCCVWOPTION_DEFAULT: Set/Get the default value of the option.
These two flags may only be used together when passing the structure to SCCVW_SETOPTION. In SCCVW_GETOPTION they are mutually exclusive.
-
-
pData: A pointer to a data area containing the option's value on a Set or receiving the option's value on a Get. This area must be as large as the data type specified for the option ID the developer is getting or setting.
4.66 SCCVW_SETSELECTION
* This message allows the parent to set the anchor and end of selection given two positions. Setting the caret position can be achieved by setting the anchor and end of selection to the same position.
Parameters
-
wParam: Should be set to 0.
-
lParam: Pointer to a structure of the type SCCVWSETSELECTION41.
Return Value
One of the following values:
-
SCCVWERR_OK: The mapping was successful.
-
SCCVWERR_BADPARAM: One of the values in the SCCVWSETSELECTION41 structure was invalid.
Platform
Windows
4.66.1 SCCVWSETSELECTION41 Structure
This structure is passed by the OEM through the SCCVW_SETSELECTION message.
Structure
A C data structure defined in sccvw as follows:
typedef struct { VTDWORD dwSize; SCCVWPOS sAnchorPos; SCCVWPOS sEndPos; } SCCVWSETSELECTION41;
Parameters
-
dwSize: Must be set by the OEM to sizeof(SCCVWSETSELECTION41).
-
sAnchorPos: Identifies the start selection position.
-
sEndPos: Identifies the end selection position.
4.67 SCCVW_SETVSCROLLPAGESIZE
* * This message is sent from the view window when the page size (thumb size) of the vertical scroll bar changes. It allows the OEM to establish correct thumb sizes of scroll bars external to the view window.
Parameters
-
wParam: The handle of the view window that is sending this message.
-
lParam: Contains the new page size.
Platform
Windows
4.68 SCCVW_SETVSCROLLPOSITION
* * This message is sent from the view window when the position of the vertical scroll bar changes. It allows the OEM to establish correct positioning of scroll bars external to the view window.
Parameters
-
wParam: The handle of the view window that is sending this message.
-
lParam: Contains the new position.
Platform
Windows
4.69 SCCVW_SETVSCROLLRANGEMIN
* * This message is sent from the view window when the range of the vertical scroll bar changes. It allows the OEM to establish correct positioning of scroll bars external to the view window.
Parameters
-
wParam: The handle of the view window that is sending this message.
-
lParam: The new value sent from the view window for the new minimum position.
Platform
Windows
4.70 SCCVW_SETVSCROLLRANGEMAX
* * This message is sent from the view window when the range of the vertical scroll bar changes. It allows the OEM to establish correct positioning of scroll bars external to the view window.
Parameters
-
wParam: The handle of the view window that is sending this message.
-
lParam: The new value sent from the view window for the new maximum position.
Platform
Window
4.71 SCCVW_SETVSCROLLSTATE
* * This message is sent from the view window when the state of the vertical scroll bar changes. It allows the OEM to establish correct positioning of scroll bars external to the view window.
Parameters
-
wParam: The handle of the view window that is sending this message.
-
lParam: One of the following:
-
SCCSB_ENABLED: Scroll bar should be enabled.
-
SCCSB_DISABLED: Scroll bar should be disabled.
-
Platform
Windows
4.72 SCCVW_VIEWAS
* This call instructs the viewer to display files identified as unknown in a specific format.
Parameters
-
wParam: Set to 0 to allow the view window to decide how to view the file.
-
lParam: Should be set to 0.
Platform
Windows
4.73 SCCVW_VIEWFILE
* Causes the viewer to open and display the contents of a file. If another file is already open, it will be closed automatically. No intervening SCCVW_CLOSEFILE is necessary.
Parameters
-
wParam: Should be set to 0.
-
lParam: A pointer to a SCCVWVIEWFILE40 or SCCVWVIEWFILE80 structure.
Return Value
One of the following values:
-
SCCVWERR_OK: Open was successful.
-
SCCVWERR_INVALIDID: File ID passed or generated is invalid.
-
SCCVWERR_FILTERLOADFAILED: The filter DLL for this file type could not be loaded.
-
SCCVWERR_FILTERALLOCFAILED: The filter DLL could not allocate enough memory.
-
SCCVWERR_NOFILTER: No filter available for this file type.
-
SCCVWERR_DISPLAYINITFAILED: The display window could not be initialized.
-
SCCVWERR_CHUNKERINITFAILED: The chunker (SCCCH.DLL) could not be initialized.
-
SCCVWERR_FILEOPENFAILED: The file could not be opened.
-
SCCVWERR_UNKNOWNFAILURE: Unknown type of failure.
-
SCCVWERR_BADFILE: The file is corrupt.
-
SCCVWERR_EMPTYFILE: The file is empty.
-
SCCVWERR_PROTECTEDFILE: The file is password protected or encrypted.
-
SCCVWERR_SUPFILEOPENFAILED: The filter could not open additional files needed to view the specified file.
-
SCCVWERR_BADPARAM: One of the parameters was invalid.
-
SCCVWERR_DRMFILE - The file is DRM protected
-
SCCVWERR_UNSUPPORTEDCOMPRESSION - The file is compressed with an unsupported compression algorithm
-
SCCVWERR_NODISPLAYENGINE - The appropriate display engine DLL for this file could not be loaded
-
SCCVWERR_FILTERTIMEOUT - The input filter timed out while processing this file
-
SCCVWERR_MACINITFAILED - The SCCVW_MACINIT message process failed
-
SCCVWERR_RAWTEXTDISABLED - Raw Text support has been disabled
-
SCCVWERR_OTHERPRINTING - Another print process is already in progress
-
SCCVWERR_NODATATORENDER - Graphical rendering of this format is unsupported
-
SCCVWERR_BADCREDENTIALS - Invalid credentials were provided for opening this file
-
SCCVWERR_OUTPUT_SOL_MISSING - No valid output solution DLL was found
-
SCCVWERR_USEROFFSET - This error is unused/deprecated
Platforms
Windows
4.73.1 SCCVWVIEWFILE40 and SCCVWVIEWFILE80 Structures
These structures are used by the SCCVW_VIEWFILE and SCCVW_VIEWTHISFILE messages to pass the description of a file to view. Note that while both of these structures can accept Unicode, only the SCCVWVIEWFILE80 structure is truly intended to accept Unicode.
Structure
C data structures, defined in sccvw as follows:
typedef struct { VTDWORD dwSize; VTDWORD dwSpecType; VTVOID * pSpec; VTDWORD dwViewAs; VTBOOL bUseDisplayName; VTTCHAR szDisplayName[SCCVW_DISPLAYNAMEMAX]; VTBOOL bDeleteOnClose; VTDWORD dwFlags; VTDWORD dwReserved1; VTDWORD dwReserved2; } SCCVWVIEWFILE40, * PSCCVWVIEWFILE40; typedef struct { VTDWORD dwSize; VTDWORD dwSpecType; VTVOID * pSpec; VTDWORD dwViewAs; VTBOOL bUseDisplayName; VTWORD szDisplayName[SCCVW_DISPLAYNAMEMAX]; VTBOOL bDeleteOnClose; VTDWORD dwFlags; VTDWORD dwReserved1; VTDWORD dwReserved2; } SCCVWVIEWFILE80, * PSCCVWVIEWFILE80;
Parameters
-
dwSize: Must be set by the developer to sizeof(SCCVWVIEWFILE40) or sizeof(SCCVWVIEWFILE80), depending on which structure is in use.
-
dwSpecType: Describes the contents of pSpec, must be one of the following values:
-
IOTYPE_ANSIPATH: pSpec points to a NULL-terminated full path name using the ANSI character set and FAT 8.3 (Win16) or NTFS (Win32 and Win64) file name conventions.
-
IOTYPE_UNICODEPATH: pSpec points to a NULL-terminated full path name using the Unicode character set and NTFS (Win32 and Win64) file name conventions.
-
IOTYPE_REDIRECT: This allows the developer to redirect the IO routines used to read the file.
-
-
pSpec: See the descriptions for individual dwSpecType values in the preceding list.
-
dwViewAs: The HIWORD should be set to 0. The LOWORD should be 0 (to allow the view window to decide how to view the file).
-
bUseDisplayName: If TRUE, szDisplayName is used when a human readable representation of the file needs to be displayed. If FALSE, the viewer will generate a display name from the file name.
-
szDisplayName: A NULL-terminated string used when a human readable form of the file name needs to be displayed (like in a dialog), this is useful if the file is a temporary copy of another file (like attachments in mail programs). The string should be in the viewer's current character set. SCCDISPLAYNAME_MAX will be long enough to hold the longest file name for a given operating environment and sometimes longer. For instance, under FAT 8.3 (DOS), file names are 12 bytes long, but the Viewer uses 40 bytes so a more readable name can be set by the developer.
-
bDeleteOnClose: If set to TRUE, the view window will delete the file when the view of it is closed by SCCVW_CLOSEFILE, SCCVW_VIEWFILE or destroying the view window.
-
dwFlags: The only currently valid value for this parameter is 0.
-
dwReserved1, dwReserved2: Both are currently unused and should be set to 0.
4.74 SCCVW_VIEWTHISFILE
* * This message is sent from the view window to the developer when another file should be viewed. Currently, this occurs is when the user double-clicks or hits return on a file entry in an Archive view and on a hyperlink to a referenced document. In the case of the archive formats, the display engine decompresses the file then sends a SCCVW_VIEWTHISFILE message to the developer. In the case of a hyperlink, if the annotation is not overridden by the developer, this message is generated. The parent can ignore this message or create a new view to view the decompressed file. The parent should use SCCVW_VIEWFILE to open the decompressed file.
Parameters
-
wParam: The handle of the view window that is sending this message.
-
lParam: A pointer to a SCCVWVIEWTHISFILE40 or SCCVWVIEWTHISFILE80 structure which contains a SCCVWVIEWFILE40 or SCCVWVIEWFILE80 structure that can be passed unmodified through a SCCVW_VIEWFILE message.
Return Value
Must be SCCVWERR_MESSAGEHANDLED if you have viewed the file. Any other return value indicates that you have no interest in the file and the view window should clean up if necessary. Clean up usually entails deleting the file if it is temporary.
Note:
The SCCVWVIEWFILE40 or SCCVWVIEWFILE80 structure inside the SCCVWVIEWTHISFILE40 or SCCVWVIEWTHISFILE80 structure contains a pointer to data (pSpec) that is only valid until you return from this message. The pSpec for a SCCVWVIEWTHISFILE40 or SCCVWVIEWTHISFILE80 structure copied into a local copy cannot be expected to still be valid at a later time
Do not send the SCCVW_VIEWFILE message to the same view window that sent you the SCCVW_VIEWTHISFILE message.
Platforms
Windows
4.74.1 SCCVWVIEWTHISFILE40 and SCCVEVIEWTHISFILE80 Structures
These structures are passed to the developer through the SCCVW_VIEWTHISFILE message. Note that while both of these structures can accept Unicode, only the SCCVWVIEWTHISFILE80 structure is truly intended to accept Unicode.
Structure
A C data structure defined in sccvw as follows:
typedef struct { VTDWORD dwSize; SCCVWVIEWFILE40 sViewFile; VTWORD wFileTime; VTWORD wFileDate; VTDWORD dwFileSize; } SCCVWVIEWTHISFILE40; typedef struct { VTDWORD dwSize; SCCVWVIEWFILE80 sViewFile; VTWORD wFileTime; VTWORD wFileDate; VTDWORD dwFileSize; } SCCVWVIEWTHISFILE80;
Parameters
-
dwSize: Will be set to sizeof(SCCVWVIEWTHISFILE40) or sizeof(SCCVWVIEWTHISFILE80).
-
sViewFile: A SCCVWVIEWFILE40 or SCCVWVIEWFILE80 structure that may be a passed unmodified to another view window through the SCCVW_VIEWFILE message.
-
wFileTime, wFileDate, dwFileSize: Reserved by Oracle.
4.75 SCCVW_VSCROLL
* This message allows the OEM to cause vertical scrolling behavior.
Parameters
-
wParam: Code describing how to scroll. One of the following values:
-
SCCSB_TOP: Scroll to top.
-
SCCSB_BOTTOM: Scroll to bottom.
-
SCCSB_LINEUP: Scroll up one line as if the up arrow on the scroll bar had been pressed.
-
SCCSB_LINEDOWN: Scroll down one line as if the down arrow on the scroll bar had been pressed.
-
SCCSB_PAGEUP: Scroll up one view window page.
-
SCCSB_PAGEDOWN: Scroll down one view window page.
-
SCCSB_NEXTDOCPAGE: Scroll to the beginning of the next document page or section.
-
SCCSB_PREVDOCPAGE: Scroll to the beginning of the previous document page or section.
-
SCCSB_POSITION: Sets the scroll bar to the position given in lParam.
-
-
lParam: Position used if wParam = SCCSB_POSITION. Its value must be in the range given by the last SCCVW_SETSCROLLRANGE message sent to the OEM.
Return Value
One of the following values:
-
SCCVWERR_OK: View window was scrolled.
-
SCCVWERR_BADPARAM: One of the values in wParam or lParam is bad.
Platform
Windows