Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > SynUniHighlighter и SynEdit > Будет ли поддержка Delphi5?


Автор: Igor SH 10.8.2005, 14:44
Здравствуйте!

Будет ли поддержка Delphi5?

Автор: Vit 10.8.2005, 15:23
Проблем с работой на Delphi 5 быть не должно. Скорее всего там нужны лишь косметические изменения типа закомментировать "Variants" в Uses и т.п. Попробуйте... обычно в течение 3-5 минут можно локализовать и исправить все такие мелочи

Автор: s-mike 10.8.2005, 20:13
Цитата(Vit @ 10.8.2005, 15:23)
Проблем с работой на Delphi 5 быть не должно. Скорее всего там нужны лишь косметические изменения типа закомментировать "Variants" в Uses и т.п. Попробуйте... обычно в течение 3-5 минут можно локализовать и исправить все такие мелочи

Ну если только в этом вопрос, то можно ведь в коде поставить несколько лишних IFDEF'ов.

Автор: Vit 10.8.2005, 21:19
Цитата(s @ 10.8.2005, 11:13)
Ну если только в этом вопрос, то можно ведь в коде поставить несколько лишних IFDEF'ов.



Как я понимаю только в этом и именно так и решается... Вот только нашёлся бы кто-то кто это сделал

Автор: Igor SH 11.8.2005, 08:35
при попытки компиляции ругается на BoolToStr и т.д.

Автор: Vitalik 11.8.2005, 18:52
Цитата(Igor @ 11.8.2005, 08:35)
при попытки компиляции ругается на BoolToStr и т.д.

Гм... Как приеду в Харьков (в начале сентября) попробую найти пятую версию делфей...

А сейчас, Igor SH, давайте совместными усилиями попробуем вернуть компоненту работоспособность в Delphi 5...

Вот, что я нарыл в модуле SysUtils у седьмой делфи:
Код
var
  TrueBoolStrs: array of String;
  FalseBoolStrs: array of String;

const
  DefaultTrueBoolStr = 'True';   // DO NOT LOCALIZE
  DefaultFalseBoolStr = 'False'; // DO NOT LOCALIZE

//...

procedure VerifyBoolStrArray;
begin
  if Length(TrueBoolStrs) = 0 then
  begin
    SetLength(TrueBoolStrs, 1);
    TrueBoolStrs[0] := DefaultTrueBoolStr;
  end;
  if Length(FalseBoolStrs) = 0 then
  begin
    SetLength(FalseBoolStrs, 1);
    FalseBoolStrs[0] := DefaultFalseBoolStr;
  end;
end;

//...

function BoolToStr(B: Boolean; UseBoolStrs: Boolean = False): string;
const
  cSimpleBoolStrs: array [boolean] of String = ('0', '-1');
begin
  if UseBoolStrs then
  begin
    VerifyBoolStrArray;
    if B then
      Result := TrueBoolStrs[0]
    else
      Result := FalseBoolStrs[0];
  end
  else
    Result := cSimpleBoolStrs[B];
end;

Что при желании можно сократить до
Код
function BoolToStr(B: Boolean; UseBoolStrs: Boolean = False): string;
const
  cSimpleBoolStrs: array [boolean] of String = ('0', '-1');
begin
  if UseBoolStrs then
  begin
    if B then
      Result := 'True'
    else
      Result := 'False';
  end
  else
    Result := cSimpleBoolStrs[B];
end;

И вставить в исходники компонента smile

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)