private void FrmReplaceBox_Shown(object sender, EventArgs e) { ac.Document.GetSelection(out int st, out int ed); searchAnchorIndex = st; select.Begin = st; select.End = ed; if (ed != st) { ac.Document.Mark(st, ed, 3); } ac.SetSelection(st, st); }
private void AzukiControl_DragOver(object sender, DragEventArgs e) { //ドラッグされているデータがfileか調べる if (!e.Data.GetDataPresent(DataFormats.FileDrop)) { e.Effect = DragDropEffects.None; return; } string[] source = (string[])e.Data.GetData(DataFormats.FileDrop); if (!CanMoveFiles(source)) { e.Effect = DragDropEffects.None; return; } DragDropEffects efc = DragDropEffects.Move; //shift または ctrl が押されている場合はmove if ((e.KeyState & (8 + 4)) != 0) { if (CanDropFilesToEditor(source)) { efc = DragDropEffects.Copy; int index = azukiControl.GetIndexFromPosition(azukiControl.PointToClient(new Point(e.X, e.Y))); //int lin; //int col; //azukiControl.GetLineColumnIndexFromCharIndex(index,out lin,out col); azukiControl.SetSelection(index, index); //Console.WriteLine("{0} Line:{1} Column:{2}", index,lin,col); } else { efc = DragDropEffects.None; } } e.Effect = efc; }
public void Right() { var view = _Azuki.View as IViewInternal; // EOL _Azuki.Text = "a\rb\nc\r\nd"; _Azuki.SetSelection(0, 0); Assert.AreEqual(1, CaretMoveLogic.Calc_Right(view)); _Azuki.SetSelection(1, 1); Assert.AreEqual(2, CaretMoveLogic.Calc_Right(view)); _Azuki.SetSelection(2, 2); Assert.AreEqual(3, CaretMoveLogic.Calc_Right(view)); _Azuki.SetSelection(3, 3); Assert.AreEqual(4, CaretMoveLogic.Calc_Right(view)); _Azuki.SetSelection(4, 4); Assert.AreEqual(5, CaretMoveLogic.Calc_Right(view)); _Azuki.SetSelection(5, 5); Assert.AreEqual(7, CaretMoveLogic.Calc_Right(view)); _Azuki.SetSelection(7, 7); Assert.AreEqual(8, CaretMoveLogic.Calc_Right(view)); _Azuki.SetSelection(8, 8); Assert.AreEqual(8, CaretMoveLogic.Calc_Right(view)); // surrogate pair _Azuki.Text = "_\xd85a\xdd51_"; _Azuki.SetSelection(0, 0); Assert.AreEqual(1, CaretMoveLogic.Calc_Right(view)); _Azuki.SetSelection(1, 1); Assert.AreEqual(3, CaretMoveLogic.Calc_Right(view)); _Azuki.SetSelection(3, 3); Assert.AreEqual(4, CaretMoveLogic.Calc_Right(view)); _Azuki.SetSelection(4, 4); Assert.AreEqual(4, CaretMoveLogic.Calc_Right(view)); // combined character sequence _Azuki.Text = "_a\x0300_"; _Azuki.SetSelection(0, 0); Assert.AreEqual(1, CaretMoveLogic.Calc_Right(view)); _Azuki.SetSelection(1, 1); Assert.AreEqual(3, CaretMoveLogic.Calc_Right(view)); _Azuki.SetSelection(3, 3); Assert.AreEqual(4, CaretMoveLogic.Calc_Right(view)); _Azuki.SetSelection(4, 4); Assert.AreEqual(4, CaretMoveLogic.Calc_Right(view)); }
static void Test_Right() { // EOL _Azuki.Text = "a\rb\nc\r\nd"; _Azuki.SetSelection(0, 0); TestUtl.AssertEquals(1, CaretMoveLogic.Calc_Right(_Azuki.View)); _Azuki.SetSelection(1, 1); TestUtl.AssertEquals(2, CaretMoveLogic.Calc_Right(_Azuki.View)); _Azuki.SetSelection(2, 2); TestUtl.AssertEquals(3, CaretMoveLogic.Calc_Right(_Azuki.View)); _Azuki.SetSelection(3, 3); TestUtl.AssertEquals(4, CaretMoveLogic.Calc_Right(_Azuki.View)); _Azuki.SetSelection(4, 4); TestUtl.AssertEquals(5, CaretMoveLogic.Calc_Right(_Azuki.View)); _Azuki.SetSelection(5, 5); TestUtl.AssertEquals(7, CaretMoveLogic.Calc_Right(_Azuki.View)); _Azuki.SetSelection(7, 7); TestUtl.AssertEquals(8, CaretMoveLogic.Calc_Right(_Azuki.View)); _Azuki.SetSelection(8, 8); TestUtl.AssertEquals(8, CaretMoveLogic.Calc_Right(_Azuki.View)); // surrogate pair _Azuki.Text = "_\xd85a\xdd51_"; _Azuki.SetSelection(0, 0); TestUtl.AssertEquals(1, CaretMoveLogic.Calc_Right(_Azuki.View)); _Azuki.SetSelection(1, 1); TestUtl.AssertEquals(3, CaretMoveLogic.Calc_Right(_Azuki.View)); _Azuki.SetSelection(3, 3); TestUtl.AssertEquals(4, CaretMoveLogic.Calc_Right(_Azuki.View)); _Azuki.SetSelection(4, 4); TestUtl.AssertEquals(4, CaretMoveLogic.Calc_Right(_Azuki.View)); // combined character sequence _Azuki.Text = "_a\x0300_"; _Azuki.SetSelection(0, 0); TestUtl.AssertEquals(1, CaretMoveLogic.Calc_Right(_Azuki.View)); _Azuki.SetSelection(1, 1); TestUtl.AssertEquals(3, CaretMoveLogic.Calc_Right(_Azuki.View)); _Azuki.SetSelection(3, 3); TestUtl.AssertEquals(4, CaretMoveLogic.Calc_Right(_Azuki.View)); _Azuki.SetSelection(4, 4); TestUtl.AssertEquals(4, CaretMoveLogic.Calc_Right(_Azuki.View)); }