ITfRange::ShiftStart method (msctf.h)

Moves the start anchor of the range.

Syntax

HRESULT ShiftStart(
  [in]  TfEditCookie      ec,
  [in]  LONG              cchReq,
  [out] LONG              *pcch,
  [in]  const TF_HALTCOND *pHalt
);

Parameters

[in] ec

Contains an edit cookie that identifies the edit context. This is obtained from ITfDocumentMgr::CreateContext or ITfEditSession::DoEditSession.

[in] cchReq

Contains the number of characters the start anchor is shifted. A negative value causes the anchor to move backward and a positive value causes the anchor to move forward.

[out] pcch

Pointer to a LONG value that receives the number of characters the anchor was shifted.

[in] pHalt

Pointer to a TF_HALTCOND structure that contains conditions about the shift. This parameter is optional and can be NULL.

Return value

This method can return one of these values.

Value Description
S_OK
The method was successful.
E_INVALIDARG
One or more parameters are invalid.
E_FAIL
An unspecified error occurred.
TF_E_NOLOCK
The edit context identified by ec does not have a read-only lock.

Remarks

The start and end positions of a range are called anchors.

This method cannot move an anchor beyond a region boundary. If the shift reaches a region boundary, the number of characters actually shifted will be less than requested. ITfRange::ShiftStartRegion is used to shift the anchor to an adjacent region.

If the shift operation causes the range start anchor to move past the end anchor, the end anchor is moved to the same location as the start anchor.

ITfRange::ShiftStart can be a lengthy operation. For better performance, use ITfRange::ShiftStartToRange when possible.

Requirements

Requirement Value
Minimum supported client Windows 2000 Professional [desktop apps | UWP apps]
Minimum supported server Windows 2000 Server [desktop apps | UWP apps]
Target Platform Windows
Header msctf.h
DLL Msctf.dll
Redistributable TSF 1.0 on Windows 2000 Professional

See also

ITfDocumentMgr::CreateContext

ITfEditSession::DoEditSession

ITfRange

ITfRange::ShiftEnd

ITfRange::ShiftStartRegion

ITfRange::ShiftStartToRange

TF_HALTCOND