?? position.cs
字號(hào):
// DINAMIC XML Editor
//
// Copyright (c) 2002-2003 Dusan Hlavaty
// mailto: duddo@atlas.cz
//
// This software is licensed under the terms of
// GNU General Public license
//
using System;
using XML_editor.TabPages;
using XML_editor.MyForms;
namespace XML_editor.Common
{
/// <summary>
/// Trieda, popisujuca poziciu v v dokumente - odkaz (niekam) do dokument.
/// </summary>
public class Position : IPosition
{
/// <summary>
/// Nazov suboru (aj s cestou), ku ktoremu sa vztahuje tato pozicia
/// </summary>
private string fileName;
/// <summary>
/// Cislo riadku, na ktory sa vztahuje tato pozicia
/// </summary>
private int line;
/// <summary>
/// Poradove cislo znaku v riadku (<see cref="line"/>), na ktory sa vztahuje tato pozicia
/// </summary>
private int column;
/// <summary>
/// Odkaz na hlavny formular aplikacie
/// </summary>
private MainForm mainForm = null;
// -------------------------------------------------------------------------
/// <summary>
/// Odkaz na hlavny formular aplikacie
/// </summary>
public MainForm MainForm
{
get
{
return this.mainForm;
}
}
// -------------------------------------------------------------------------
/// <summary>
/// Cislo riadku, na ktory sa vztahuje tato pozicia
/// </summary>
public int Line
{
get
{
return this.line;
}
}
// -------------------------------------------------------------------------
/// <summary>
/// Poradove cislo znaku v riadku (<see cref="Line"/>), na ktory sa vztahuje tato pozicia
/// </summary>
public int Column
{
get
{
return this.column;
}
}
// -------------------------------------------------------------------------
/// <summary>
/// Nazov suboru (aj s cestou), ku ktoremu sa vztahuje tato uloha
/// </summary>
public string FileName
{
get
{
return this.fileName;
}
}
// -------------------------------------------------------------------------
/// <summary>
/// Inicializuje instanciu triedy <see cref="Position"/>
/// </summary>
/// <param name="mainForm">Odkaz na Hlavny formular aplikacie</param>
/// <param name="fullFileName">Nazov suboru (aj s cestou), ku ktoremu sa vztahuje tato pozicia</param>
/// <param name="line">Cislo riadku, na ktory sa vztahuje tato pozicia</param>
/// <param name="character">Poradove cislo znaku v riadku (<paramref name="line"/>), na ktory sa vztahuje tato pozicia</param>
public Position(MainForm mainForm, string fullFileName, int line, int character)
{
this.mainForm = mainForm;
this.fileName = fullFileName;
this.column = character - 1;
this.line = line - 1;
}
// -------------------------------------------------------------------------
/// <summary>
/// Skoci na poziciu v dokumente, ktoru oznacuje
/// </summary>
public void JumpToPosition()
{
#if DEBUG
System.Diagnostics.Debug.WriteLine("Position.cs :: JumpToPosition() => " + this.ToString());
#endif
if ((this.FileName == null) || (this.FileName.Length < 1))
{
return;
}
TextAreaTabPage tab = this.MainForm.GetTabPageByFileName(this.FileName);
if (tab == null)
{
return;
}
tab.TextAreaControl.JumpTo(Math.Max(0, line), Math.Max(0, column));
tab.Selected = true;
#if !LINUX
tab.Focus();
#endif
}
// -------------------------------------------------------------------------
/// <summary>
/// Skonvertuje instanciu <see cref="Position"/> na string (pre lahsie odladovanie)
/// </summary>
/// <returns></returns>
public override string ToString()
{
return String.Format("[Position:File={0}, Line={1}, Column={2}]",
this.FileName,
this.Line,
this.Column);
}
} // public class Position : ...
} // namespace XML_editor.Common
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -