school s.translate
PT4 исправление мелких ошибок Form1 Linux - установка в Load шрифтов табов
This commit is contained in:
parent
67b3d3a312
commit
6fc6181cb6
|
|
@ -15,7 +15,7 @@ internal static class RevisionClass
|
|||
public const string Major = "3";
|
||||
public const string Minor = "9";
|
||||
public const string Build = "0";
|
||||
public const string Revision = "3364";
|
||||
public const string Revision = "3371";
|
||||
|
||||
public const string MainVersion = Major + "." + Minor;
|
||||
public const string FullVersion = Major + "." + Minor + "." + Build + "." + Revision;
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
%COREVERSION%=0
|
||||
%REVISION%=3364
|
||||
%MINOR%=9
|
||||
%REVISION%=3371
|
||||
%COREVERSION%=0
|
||||
%MAJOR%=3
|
||||
|
|
|
|||
|
|
@ -1 +1 @@
|
|||
3.9.0.3364
|
||||
3.9.0.3371
|
||||
|
|
|
|||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
|
@ -1 +1 @@
|
|||
!define VERSION '3.9.0.3364'
|
||||
!define VERSION '3.9.0.3371'
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
/// Учебный модуль, реализующий базовые алгоритмы информатики (21.09.2023)
|
||||
/// Учебный модуль, реализующий базовые алгоритмы информатики (02.10.2023)
|
||||
unit School;
|
||||
|
||||
interface
|
||||
|
|
@ -10,8 +10,10 @@ type
|
|||
addr2: string; // двоичный адрес
|
||||
addr10: longword; // адрес в виде десятичного числа
|
||||
|
||||
/// Проверка правильности записи адреса в десятичном формате с октетами
|
||||
function AddressValid(address: string): boolean;
|
||||
|
||||
/// Проверка правильности записи 32-разрядного адреса в бинарном представлении
|
||||
function AddressBinValid(address: string): boolean;
|
||||
|
||||
/// Перевод ip-адреса/маски из десятичного представления с октетами в 32-битное
|
||||
|
|
@ -291,6 +293,12 @@ function ReplaceMany(s: string; source, target: IList<string>): string;
|
|||
/// В строке s меняет местами подстроки ss1 и ss2
|
||||
procedure SwapSubstr(var s: string; ss1, ss2: string);
|
||||
|
||||
/// Множественная замена символов в строке s
|
||||
/// Каждый символ строки s[i] последовательно ищется в source.
|
||||
/// Если найден, source[j] заменяется target[j], если не найден - не меняется.
|
||||
/// Если j больше длины строки target, символ s[i] удаляется.
|
||||
function Translate(s, source, target: string): string;
|
||||
|
||||
implementation
|
||||
|
||||
type
|
||||
|
|
@ -368,7 +376,7 @@ function Oct(number: BigInteger): string;
|
|||
begin
|
||||
if number < 0 then number := -number;
|
||||
Result := '';
|
||||
while number >= 2 do
|
||||
while number >= 8 do
|
||||
begin
|
||||
Result += byte(number mod 8);
|
||||
number := number div 8
|
||||
|
|
@ -1138,6 +1146,33 @@ end;
|
|||
/// В строке s меняет местами подстроки ss1 и ss2
|
||||
procedure SwapSubstr(var Self: string; ss1, ss2: string);
|
||||
extensionmethod := SwapSubstr(Self, ss1, ss2);
|
||||
|
||||
/// Множественная замена символов в строке s
|
||||
/// Каждый символ строки s[i] последовательно ищется в source.
|
||||
/// Если найден, source[j] заменяется target[j], если не найден - не меняется.
|
||||
/// Если j больше длины строки target, символ s[i] удаляется.
|
||||
function Translate(s, source, target: string): string;
|
||||
begin
|
||||
var sb := new StringBuilder(s.Length);
|
||||
foreach var x in s do
|
||||
begin
|
||||
var ind := source.IndexOf(x);
|
||||
if ind >= 0 then
|
||||
begin
|
||||
if ind <= target.Length - 1 then
|
||||
sb.Append(target[ind + 1])
|
||||
end
|
||||
else sb.Append(x)
|
||||
end;
|
||||
Result := sb.ToString
|
||||
end;
|
||||
|
||||
/// Множественная замена символов в строке s
|
||||
/// Каждый символ строки s[i] последовательно ищется в source.
|
||||
/// Если найден, source[j] заменяется target[j], если не найден - не меняется.
|
||||
/// Если j больше длины строки target, символ s[i] удаляется.
|
||||
function Translate(Self, source, target: string): string;
|
||||
extensionmethod := Translate(Self, source, target);
|
||||
|
||||
{$endregion}
|
||||
|
||||
|
|
|
|||
|
|
@ -188,7 +188,7 @@ namespace VisualPascalABC
|
|||
{
|
||||
CodeFileDocumentControl tp = new CodeFileDocumentControl(this);
|
||||
//tp.BorderStyle=BorderStyle.Fixed3D;
|
||||
//tp.Font = new Font("MS Sans Serif", tp.Font.Size);
|
||||
//tp.Font = new System.Drawing.Font("MS Sans Serif", tp.Font.Size);
|
||||
RichTextBox tb = OutputWindow.outputTextBox;
|
||||
if (OpenDocuments.Count > 0)
|
||||
tb = CopyTextBox(OutputWindow.outputTextBox);
|
||||
|
|
|
|||
|
|
@ -449,6 +449,18 @@ namespace VisualPascalABC
|
|||
|
||||
private void Form1_Load(object sender, EventArgs e)
|
||||
{
|
||||
// Куча констант - VS2005DockPaneStrip.cs строка 98
|
||||
// _DocumentIconGapBottom сделать 5 вместо 2
|
||||
// _DocumentTabMaxWidth 600 сделать и в Win версии!!!
|
||||
|
||||
MainDockPanel.Theme.Skin.DockPaneStripSkin.TextFont = menuStrip1.Font;
|
||||
BottomDockPanel.Theme.Skin.DockPaneStripSkin.TextFont = menuStrip1.Font;
|
||||
statusStrip1.Font = menuStrip1.Font;
|
||||
//var name = BottomDockPanel.Theme.Skin.DockPaneStripSkin.TextFont.Name;
|
||||
//var sz = (float)9.0;
|
||||
//MainDockPanel.Theme.Skin.DockPaneStripSkin.TextFont = new Font(name, sz);
|
||||
//BottomDockPanel.Theme.Skin.DockPaneStripSkin.TextFont = new Font(name, sz);
|
||||
|
||||
BottomDockPanel.AllowEndUserDocking = false;
|
||||
|
||||
//CurrentCodeFileDocument.TextEditor.ActiveTextAreaControl.TextArea.KeyEventHandler += TextArea_KeyEventHandler;
|
||||
|
|
|
|||
|
|
@ -193,7 +193,7 @@ namespace VisualPascalABC
|
|||
// SSM 03.06.22 - это надо убрать здесь - почему-то не работает активация - надо туда
|
||||
//_currentCodeFileDocument = tp; // должно по DockStateChanged - но мб неверно
|
||||
//tp.BorderStyle=BorderStyle.Fixed3D;
|
||||
//tp.Font = new Font("MS Sans Serif", tp.Font.Size);
|
||||
//tp.Font = new System.Drawing.Font("MS Sans Serif", tp.Font.Size);
|
||||
RichTextBox tb = OutputWindow.outputTextBox;
|
||||
if (OpenDocuments.Count > 0)
|
||||
tb = CopyTextBox(OutputWindow.outputTextBox);
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
/// Учебный модуль, реализующий базовые алгоритмы информатики (21.09.2023)
|
||||
/// Учебный модуль, реализующий базовые алгоритмы информатики (02.10.2023)
|
||||
unit School;
|
||||
|
||||
interface
|
||||
|
|
@ -10,8 +10,10 @@ type
|
|||
addr2: string; // двоичный адрес
|
||||
addr10: longword; // адрес в виде десятичного числа
|
||||
|
||||
/// Проверка правильности записи адреса в десятичном формате с октетами
|
||||
function AddressValid(address: string): boolean;
|
||||
|
||||
/// Проверка правильности записи 32-разрядного адреса в бинарном представлении
|
||||
function AddressBinValid(address: string): boolean;
|
||||
|
||||
/// Перевод ip-адреса/маски из десятичного представления с октетами в 32-битное
|
||||
|
|
@ -291,6 +293,12 @@ function ReplaceMany(s: string; source, target: IList<string>): string;
|
|||
/// В строке s меняет местами подстроки ss1 и ss2
|
||||
procedure SwapSubstr(var s: string; ss1, ss2: string);
|
||||
|
||||
/// Множественная замена символов в строке s
|
||||
/// Каждый символ строки s[i] последовательно ищется в source.
|
||||
/// Если найден, source[j] заменяется target[j], если не найден - не меняется.
|
||||
/// Если j больше длины строки target, символ s[i] удаляется.
|
||||
function Translate(s, source, target: string): string;
|
||||
|
||||
implementation
|
||||
|
||||
type
|
||||
|
|
@ -368,7 +376,7 @@ function Oct(number: BigInteger): string;
|
|||
begin
|
||||
if number < 0 then number := -number;
|
||||
Result := '';
|
||||
while number >= 2 do
|
||||
while number >= 8 do
|
||||
begin
|
||||
Result += byte(number mod 8);
|
||||
number := number div 8
|
||||
|
|
@ -1138,6 +1146,33 @@ end;
|
|||
/// В строке s меняет местами подстроки ss1 и ss2
|
||||
procedure SwapSubstr(var Self: string; ss1, ss2: string);
|
||||
extensionmethod := SwapSubstr(Self, ss1, ss2);
|
||||
|
||||
/// Множественная замена символов в строке s
|
||||
/// Каждый символ строки s[i] последовательно ищется в source.
|
||||
/// Если найден, source[j] заменяется target[j], если не найден - не меняется.
|
||||
/// Если j больше длины строки target, символ s[i] удаляется.
|
||||
function Translate(s, source, target: string): string;
|
||||
begin
|
||||
var sb := new StringBuilder(s.Length);
|
||||
foreach var x in s do
|
||||
begin
|
||||
var ind := source.IndexOf(x);
|
||||
if ind >= 0 then
|
||||
begin
|
||||
if ind <= target.Length - 1 then
|
||||
sb.Append(target[ind + 1])
|
||||
end
|
||||
else sb.Append(x)
|
||||
end;
|
||||
Result := sb.ToString
|
||||
end;
|
||||
|
||||
/// Множественная замена символов в строке s
|
||||
/// Каждый символ строки s[i] последовательно ищется в source.
|
||||
/// Если найден, source[j] заменяется target[j], если не найден - не меняется.
|
||||
/// Если j больше длины строки target, символ s[i] удаляется.
|
||||
function Translate(Self, source, target: string): string;
|
||||
extensionmethod := Translate(Self, source, target);
|
||||
|
||||
{$endregion}
|
||||
|
||||
|
|
|
|||
Binary file not shown.
Binary file not shown.
Loading…
Reference in a new issue