Messages

This chapter describes the use of Messages in the Viewer. Messages are the primary way in which the developer and the view window interact. The implementation of message passing is different for each operating systems supported, but the messages themselves and the structures passed are for the most part generic.

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.

SCCVW_ADDANNOTATION

Parameters

Return Value

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

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

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

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

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

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

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

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

SCCVW_ANNOTATIONEVENT

Parameters

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

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

SCCVW_BAILOUT

Parameters

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

SCCVW_CLEARANNOTATIONS

Parameters

Platforms

Windows

SCCVW_CLOSEFILE

Parameters

Return Value

none

Platform

Windows

SCCVW_COMPPOSITIONS

Parameters

Return Value

One of the following values:

Platforms

Windows

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

SCCVW_CONTEXTMENU

Parameters

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

SCCVW_COPY

Parameters

Return Value

One of the following values:

Platforms

Windows

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

SCCVW_COPYTOCLIP

Parameters

Return Value

none

Platforms

Windows

SCCVW_DEINITDRAWPAGE

Parameters

Platforms

Windows

SCCVW_DISPLAYCHANGE

Parameters

Comments

A reasonable response to this message might be to call SCCVW_GETDISPLAYINFO, if you need this kind of information.

Platforms

Windows

SCCVW_DISPLAYPOSITION

Parameters

Return Value

One of the following values:

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

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

SCCVW_DODIALOG

Parameters

Return Value

One of the following values:

Platform

Windows

SCCVW_DOHELP

Parameters

Platform

Windows

SCCVW_DOMENUITEM

Parameters

Platform

Windows

SCCVW_DRAWPAGE

Parameters

Return Value

One of the following values:

Platforms

Windows

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

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.

SCCVW_ENABLEAPP

Parameters

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

SCCVW_FILECHANGE

Parameters

Platform

Windows

SCCVW_FINDANNOTATION

Parameters

Return Value

One of the following values:

Platform

Windows

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

SCCVW_FINDPOSITION

Parameters

Return Value

One of the following values:

Platforms

Windows

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

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.

SCCVW_FREEFILEINFO

Deallocates the file name buffer allocated during the SCCVW_GETFILEINFO message.

Parameters

Return Value

SCCVWERR_OK: call was successful

Platform

Windows

SCCVW_GETANNOTATIONDATA

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

Return Value

One of the following values:

Platform

Windows

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

SCCVW_GETCLIPINFO

Parameters

Return Value

Zero or more of the following flags OR-ed together:

Platform

Windows

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

Return Value

Zero or the current page number

SCCVW_GETDISPLAYINFO

Parameters

Return Value

One of the following values:

Platform

Windows

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

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.

SCCVW_GETDRAWPAGEINFO

Parameters

Return Value

One of the following values:

Platform

Windows

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

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

Return Value

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.

SCCVW_GETFILEINFO

Parameters

Return Value

One of the following values:

Platform

Windows

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

SCCVW_GETIDEALWINDOWSIZE

Parameters

Return Value

One of the following 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

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

SCCVW_GETOPTION

Parameters

Return Value

One of the following values:

Platform

Windows

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

SCCVW_GETPROPERTY

This message returns any file property information generated by the input filter.

Parameters

Return Value

One of the following values:

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

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.

SCCVW_GETRAWTEXT

Parameters

Return Value

One of the following values:

Comments

To produce offsets used in SCCVW_ADDANNOTATION, use the SCCVWGETRAWTEXT50 structure as follows:

Platform

Windows

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

SCCVW_GETTREECOUNT

Parameters

Return Value

One of the following values:

Platform

Windows

SCCVW_GETTREENODE

Parameters

Return Value

One of the following values:

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.

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

SCCVW_GOTOANNOTATION

Parameters

Return Value

One of the following values:

Platform

Windows

SCCVW_HILITESTYLE

Parameters

Return Value

One of the following values:

Platform

Windows

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

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:

Parameters

SCCVW_HSCROLL

Parameters

Return Value

One of the following values:

Platform

Windows,

SCCVW_IDLE

Parameters

Platform

Windows

SCCVW_INFOMESSAGE

Parameters

Platform

Windows

SCCVW_INITDRAWPAGE

Parameters

Return Value

One of the following values:

Platform

Windows

SCCVW_KEYDOWN

Parameters

Return Value

One of the following values:

Platform

Windows

SCCVW_MAPPOSITION

Parameters

Return Value

One of the following values:

Platform

Windows

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

SCCVW_MAPPROB

The following fonts have non-standard encodings and do not have ToUnicode mappings. When used by PDF, they are considered standard:

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

Return Value

None

SCCVW_MAPTREEPOSITION

Parameters

Return Value

One of the following values:

Platform

Windows

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

SCCVW_OPTIONCHANGE

Parameters

Platform

Windows

SCCVW_PRINT

Parameters

Return Value

One of the following values:

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

SCCVW_PRINTEX

Parameters

Return Value

One of the following values:

Platforms

Windows

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

SCCVW_PRINTSETUP

Parameters

Return Value

One of the following values:

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

SCCVW_RAWTEXTEVENT

Parameters

Platform

Windows

SCCVW_READAHEADDONE

Parameters

Platform

Windows

SCCVW_SAVEOPTIONS

Parameters

Platform

Windows

SCCVW_SAVETREENODE

Parameters

Return Value

One of the following values:

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.

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

SCCVW_SEARCH

Parameters

Return Value

One of the following:

Platform

Windows

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

SCCVW_SEARCHDIALOG

Parameters

Return Value

One of the following:

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

SCCVW_SEARCHNEXT

Parameters

Return Value

One of the following:

Platform

Windows

SCCVW_SELCHANGE

Parameters

Return Value

none

Platform

Windows

SCCVW_SELECTALL

Parameters

Return Value

none

Platform

Windows

SCCVW_SETDISPLAYNAME

Parameters

Return Value

One of the following values:

Platform

Windows

SCCVW_SETHSCROLLPAGESIZE

Parameters

Platform

Windows

SCCVW_SETHSCROLLPOSITION

Parameters

Platform

Windows

SCCVW_SETHSCROLLRANGE

Parameters

Platform

Windows

SCCVW_SETHSCROLLSTATE

Parameters

Platform

Windows

SCCVW_SETIDLEBITMAP

Parameters

Return Value

None.

Platforms

Windows

SCCVW_SETMENUMAX

Parameters

Platforms

Windows

SCCVW_SETOPTION

Parameters

Return Value

One of the following values:

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

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

SCCVW_SETSELECTION

Parameters

Return Value

One of the following values:

Platform

Windows

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

SCCVW_SETVSCROLLPAGESIZE

Parameters

Platform

Windows

SCCVW_SETVSCROLLPOSITION

Parameters

Platform

Windows

SCCVW_SETVSCROLLRANGEMIN

Parameters

Platform

Windows

SCCVW_SETVSCROLLRANGEMAX

Parameters

Platform

Window

SCCVW_SETVSCROLLSTATE

Parameters

Platform

Windows

SCCVW_VIEWAS

Parameters

Platform

Windows

SCCVW_VIEWFILE

Parameters

Return Value

One of the following values:

Platforms

Windows

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

SCCVW_VIEWTHISFILE

Parameters

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

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

SCCVW_VSCROLL

Parameters

Return Value

One of the following values:

Platform

Windows