Bitflags Used by Specific Commands

 

The new home for Visual Studio documentation is Visual Studio 2017 Documentation on docs.microsoft.com.

The latest version of this topic can be found at Bitflags Used by Specific Commands.

The behavior of a number of functions in the Source Control Plug-in API can be modified by setting one or more bits in a single value. These values are known as bitflags. The various bitflags used by the Source Control Plug-in API are detailed here, grouped by the function that uses them.

This flag can be set for either the SccAdd or SccCheckin.

FlagValueDescription
SCC_KEEP_CHECKEDOUT0x1000Keep the file checked out.

These flags are used by the SccAdd.

FlagValueDescription
SCC_FILETYPE_AUTO0x00The source control plug-in is expected to automatically detect whether the file is text or binary.
SCC_FILETYPE_TEXT0x01File type is text.
SCC_FILETYPE_BINARY0x04File type is binary. Note:  SCC_FILETYPE_TEXT and SCC_FILETYPE_BINARY flags are mutually exclusive. Set exactly one or neither.
SCC_ADD_STORELATEST0x02Store latest version only (no deltas).

The SccDiff uses these flags to define the scope of a diff operation. The SCC_DIFF_QD_xxx flags are mutually exclusive. If any one of them is specified, then no visual feedback is to be given. In a "quick diff" (QD), the plug-in does not determine how the file is different, only if it is different. If none of these flags is specified, a "visual diff" is done; detailed file differences are computed and displayed. If the requested QD is not supported, the plug-in moves to the next best one. For instance, if the IDE requests a checksum, and the plug-in does not support it, the plug-in does a full-contents check (still much faster than a visual display).

FlagValueDescription
SCC_DIFF_IGNORECASE0x0002Ignore case differences.
SCC_DIFF_IGNORESPACE0x0004Ignore white-space differences. Note: The SCC_DIFF_IGNORECASE and SCC_DIFF_IGNORESPACE flags are optional bitflags.
SCC_DIFF_QD_CONTENTS0x0010QD by comparing entire file contents.
SCC_DIFF_QD_CHECKSUM0x0020QD by checksum.
SCC_DIFF_QD_TIME0x0040QD by file date/time stamp.
SCC_DIFF_QUICK_DIFF0x0070This is a mask used to check all the QD bitflags. It should not be passed into a function; the three QD bitflags are mutually exclusive. QD always means no display of UI.

This flag is used by the SccPopulateList in the fOptions parameter.

FlagValueDescription
SCC_PL_DIR0x00000001LThe IDE is passing directories, not files.

These flags are used by the SccPopulateDirList in the fOptions parameter.

Option ValueValueDescription
SCC_PDL_ONELEVEL0x0000Examine only one level of directories for directories (this is the default).
SCC_PDL_RECURSIVE0x0001Recursively examine all directories under each given directory.
SCC_PDL_INCLUDEFILES0x0002Include file names in the examination process.

These flags are used by the SccOpenProject in the dwFlags parameter.

Option ValueValueDescription
SCC_OP_CREATEIFNEW0x00000001LIf project doesn't exist in source control, create it. If this flag is not set, prompt user for project to create (unless SCC_OP_SILENTOPEN flag is specified).
SCC_OP_SILENTOPEN0x00000002LDo not prompt user to create a project; just return SCC_E_UNKNOWNPROJECT.

These flags are used by the SccGet and the SccCheckout.

FlagValueDescription
SCC_GET_ALL0x00000001LThe IDE is passing directories, not files: Get all files in these directories.
SCC_GET_RECURSIVE0x00000002LThe IDE is passing directories: Get these directories and all their subdirectories.

These flags are used by the SccSetOption in the nOption parameter.

FlagValueDescription
SCC_OPT_EVENTQUEUE0x00000001LSet status of the event queue.
SCC_OPT_USERDATA0x00000002LSpecify user data for SCC_OPT_NAMECHANGEPFN.
SCC_OPT_HASCANCELMODE0x00000003LThe IDE can handle cancel
SCC_OPT_NAMECHANGEPFN0x00000004LSet a callback for name changes.
SCC_OPT_SCCCHECKOUTONLY0x00000005LDisable source control plug-in UI checkout and do not set working directory.
SCC_OPT_SHARESUBPROJ0x00000006LAdd from the source control system to specify a working directory. Try to share into the associated project if it is a direct descendant.

These flags are used by the SccSetOption in the dwVal parameter.

FlagValueDescriptionUsed by nOption value
SCC_OPT_EQ_DISABLE0x00LSuspends event queue activity.SCC_OPT_EVENTQUEUE
SCC_OPT_EQ_ENABLE0x01LEnables event queue logging.SCC_OPT_EVENTQUEUE
SCC_OPT_HCM_NO0L(Default) Has no cancel mode; plug-in must supply if desired.SCC_OPT_HASCANCELMODE
SCC_OPT_HCM_YES1LIDE handles cancel.SCC_OPT_HASCANCELMODE
SCC_OPT_SCO_NO0L(Default) OK to check out from plug-in UI; working directory is set.SCC_OPT_SCCCHECKOUTONLY
SCC_OPT_SCO_YES1LNo plug-in UI checkout, no working directory.SCC_OPT_SCCCHECKOUTONLY

Source Control Plug-ins

Show: