using System;
namespace ImeSharp
{
///
/// Arguments for the event.
///
public struct IMETextCompositionEventArgs
{
///
// Construct a TextCompositionEventArgs with composition infos.
///
public IMETextCompositionEventArgs(IMEString compositionText,
int cursorPosition,
IMEString[] candidateList = null,
int candidatePageStart = 0,
int candidatePageSize = 0,
int candidateSelection = 0)
{
CompositionText = compositionText;
CursorPosition = cursorPosition;
CandidateList = candidateList;
CandidatePageStart = candidatePageStart;
CandidatePageSize = candidatePageSize;
CandidateSelection = candidateSelection;
}
///
/// The full string as it's composed by the IMM.
///
public readonly IMEString CompositionText;
///
/// The position of the cursor inside the composed string.
///
public readonly int CursorPosition;
///
/// The candidate text list for the composition.
/// This property is only supported on WindowsDX and WindowsUniversal.
/// If the composition string does not generate candidates this array is empty.
///
public readonly IMEString[] CandidateList;
///
/// First candidate index of current page.
///
public readonly int CandidatePageStart;
///
/// How many candidates should display per page.
///
public readonly int CandidatePageSize;
///
/// The selected candidate index.
///
public readonly int CandidateSelection;
}
}