Вопросы по исходному коду

Форум для обсуждения деталей разработки программы SAS.Планета

Модераторы: vdemidov, Tolik

netsky
Новичок
Сообщения: 6
Зарегистрирован: 05 ноя 2015, 12:17
Благодарил (а): 2 раза

Re: Вопросы по исходному коду

Сообщение netsky »

Доброго времени суток!

А подскажите, где находятся реализации вывода датчиков скорости и азимута непосредственно в панеле датчиков.
Хочу попробовать убрать знаки после запятой.
Аватара пользователя
vdemidov
Гуру
Сообщения: 1687
Зарегистрирован: 12 дек 2008, 13:10
Откуда: Киев
Благодарил (а): 191 раз
Поблагодарили: 157 раз

Re: Вопросы по исходному коду

Сообщение vdemidov »

netsky писал(а):А подскажите, где находятся реализации вывода датчиков скорости и азимута непосредственно в панеле датчиков.
Хочу попробовать убрать знаки после запятой.
Вообще все что касается датчиков живет в папке Sensor. А конкретно вывод на панели в файле u_SensorViewTextTBXPanel.pas
Чтобы понять программу, вы должны стать одновременно и машиной, и программой.
netsky
Новичок
Сообщения: 6
Зарегистрирован: 05 ноя 2015, 12:17
Благодарил (а): 2 раза

Re: Вопросы по исходному коду

Сообщение netsky »

vdemidov писал(а):Вообще все что касается датчиков живет в папке Sensor. А конкретно вывод на панели в файле u_SensorViewTextTBXPanel.pas
Спасибо!
Всё что хотел, всё поправил, но никак не могу найти где живёт вывод высоты, в котором прописано сколько знаков после "," будет выводиться.
В u_ValueToStringConverter.pas пробовал менять здесь, но результата нет.

Код: Выделить всё

function TValueToStringConverter.AltitudeConvert(const AMeters: Double): string;
begin
  if IsNan(AMeters) then begin
    Result := 'NAN';
    Exit;
  end;

  Result := FormatFloat('0.0', AMeters) + ' ' + FUnitsMeters;
end;
Аватара пользователя
DJ VK
Гуру
Сообщения: 1468
Зарегистрирован: 16 апр 2009, 13:57
Откуда: 8 км. от МКАД
Благодарил (а): 80 раз
Поблагодарили: 314 раз

Re: Вопросы по исходному коду

Сообщение DJ VK »

организационные вопросы, дабы не переделывать потом код для "совместимости с репо".
пихаем в настройки флаг видимости, скажем, контекстного меню.и другие флаги скрытия визуалки.
1. Использовать для хранения настроек видимости контролов секцию [View], [MainForm], или создать свою?
2. Добавить переменные в уже существующий класс? Если да, то какой для этого лучше подходит?
Аватара пользователя
vdemidov
Гуру
Сообщения: 1687
Зарегистрирован: 12 дек 2008, 13:10
Откуда: Киев
Благодарил (а): 191 раз
Поблагодарили: 157 раз

Re: Вопросы по исходному коду

Сообщение vdemidov »

DJ VK писал(а):организационные вопросы, дабы не переделывать потом код для "совместимости с репо".
пихаем в настройки флаг видимости, скажем, контекстного меню.и другие флаги скрытия визуалки.
1. Использовать для хранения настроек видимости контролов секцию [View], [MainForm], или создать свою?
2. Добавить переменные в уже существующий класс? Если да, то какой для этого лучше подходит?
1. Нужно смотреть, но думаю, что лучше в отдельную секцию.
2. Как следствие из пункта 1 нужно создавать свой отдельный класс и добавлять его как агрегат в настройки главной формы.

Честно говоря не помню. Там вообще бардак с этими настройками.
Чтобы понять программу, вы должны стать одновременно и машиной, и программой.
Аватара пользователя
DJ VK
Гуру
Сообщения: 1468
Зарегистрирован: 16 апр 2009, 13:57
Откуда: 8 км. от МКАД
Благодарил (а): 80 раз
Поблагодарили: 314 раз

Re: Вопросы по исходному коду

Сообщение DJ VK »

Собрали проект, добавили изменения. все отлично.
открываем основную форму на просмотр.
В uses автоматом добавляются повторные
System.Actions, System.ImageList
удалить вручную по месту их не удается, так как они сиесекундно пересоздаются. Проект не компилируется...
:D
Где то в недрах вылезает MainForm.Modules.inc

Код: Выделить всё

{$IF (CompilerVersion >= 24)} // XE3 and UP
  Actions,
  ImageList,
{$IFEND}
На то, что они есть в инклюде программа кладет и добавляет их прям в юнит.
Что это за подарочек?
Последний раз редактировалось DJ VK 01 сен 2017, 16:21, всего редактировалось 1 раз.
Аватара пользователя
vdemidov
Гуру
Сообщения: 1687
Зарегистрирован: 12 дек 2008, 13:10
Откуда: Киев
Благодарил (а): 191 раз
Поблагодарили: 157 раз

Re: Вопросы по исходному коду

Сообщение vdemidov »

В последнем коммите Zed именно это исправил. Поэтому актуальный всегда совет "Запулиться, если что-то не работает".
Чтобы понять программу, вы должны стать одновременно и машиной, и программой.
Аватара пользователя
DJ VK
Гуру
Сообщения: 1468
Зарегистрирован: 16 апр 2009, 13:57
Откуда: 8 км. от МКАД
Благодарил (а): 80 раз
Поблагодарили: 314 раз

Re: Вопросы по исходному коду

Сообщение DJ VK »

VProvider := FStateConfigDataProvider.GetSubItem('Tweaks');
возвращает nil
такая секция добавлена, но не читается

или так нельзя:

Код: Выделить всё

  VProvider := FStateConfigDataProvider.GetSubItem('MainForm');
  FWinPosition.ReadConfig(VProvider);

  VProvider := FStateConfigDataProvider.GetSubItem('Tweaks');
  FFunctionalityTweaksConfig.ReadConfig(VProvider);
Аватара пользователя
vdemidov
Гуру
Сообщения: 1687
Зарегистрирован: 12 дек 2008, 13:10
Откуда: Киев
Благодарил (а): 191 раз
Поблагодарили: 157 раз

Re: Вопросы по исходному коду

Сообщение vdemidov »

DJ VK писал(а):VProvider := FStateConfigDataProvider.GetSubItem('Tweaks');
возвращает nil
такая секция добавлена, но не читается
В любом случае нужно проверять на нил. Это значит, что такой секции нет (возможно если она пустая, то будет тот же результат).
Посмотри любой из остальных конфигов.
Чтобы понять программу, вы должны стать одновременно и машиной, и программой.
Аватара пользователя
DJ VK
Гуру
Сообщения: 1468
Зарегистрирован: 16 апр 2009, 13:57
Откуда: 8 км. от МКАД
Благодарил (а): 80 раз
Поблагодарили: 314 раз

Re: Вопросы по исходному коду

Сообщение DJ VK »

короче надо писать не в основной тогда, а в MainFormState.ini
Ответить

Вернуться в «Раздел для разработчиков программы SAS.Планета»