Страница 15 из 26

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

СообщениеДобавлено: 25 мар 2015, 19:31
Alex54
vdemidov писал(а):Возможно вам лучш воспользоваться TChangeableWithSimpleLockBase в качестве базового. И посмотреть на его наследников что бы не наделать дедлоков.

Его и использую. Скажите, я правильно понимаю, что при вызове DoChangeNotify() система должна дергать
TBitmapLayerProviderChangeableForGpsTrack.CreateStatic() ? Чтобы повторно вызвать итератор для нового трека или очистки, если данных нет. Просто при вызове DoChangeNotify() не вижу изменений (

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

СообщениеДобавлено: 25 мар 2015, 19:36
vdemidov
Правильно. Возможно вы ненароком удалили подписку на уведомление об этом событии. Выглядит она так:
Код: Выделить всё
  LinksList.Add(
    TNotifyNoMmgEventListener.Create(Self.OnGPSRecorderChange),
    FGPSRecorder.ChangeNotifier
  );

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

СообщениеДобавлено: 25 мар 2015, 19:49
Alex54
vdemidov писал(а):Правильно. Возможно вы ненароком удалили подписку на уведомление об этом событии. Выглядит она так:
Код: Выделить всё
  LinksList.Add(
    TNotifyNoMmgEventListener.Create(Self.OnGPSRecorderChange),
    FGPSRecorder.ChangeNotifier
  );

В точку )
Компилятор ругается на ChangeNotifier (хотя мой кастомный TCustomGPSRecorder - класс-наследник от TChangeableWithSimpleLockBase, тот в свою очередь, производный от IChangeable)...

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

СообщениеДобавлено: 25 мар 2015, 19:51
vdemidov
Вероятно вы интерфейс не отнаследовали от IChangeable

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

СообщениеДобавлено: 25 мар 2015, 19:59
Alex54
vdemidov писал(а):Вероятно вы интерфейс не отнаследовали от IChangeable

Нет, сразу добавил его -
Код: Выделить всё
type TCustomGPSTrack = class(TChangeableWithSimpleLockBase, IChangeable)

Туплю где-то (

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

СообщениеДобавлено: 25 мар 2015, 20:08
zed
Alex54 писал(а):Компилятор ругается на ChangeNotifier

Как ругается-то?

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

СообщениеДобавлено: 25 мар 2015, 20:17
Alex54
zed писал(а):
Alex54 писал(а):Компилятор ругается на ChangeNotifier

Как ругается-то?

[dcc32 Error] E2003 Undeclared identifier: 'ChangeNotifier'
ума не приложу...

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

СообщениеДобавлено: 25 мар 2015, 20:22
zed
Alex54 писал(а):ума не приложу...

Вам в сообщении компилятора что-то не понятно? У данной переменной нет свойства ChangeNotifier.

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

СообщениеДобавлено: 25 мар 2015, 20:29
Alex54
zed писал(а):
Alex54 писал(а):ума не приложу...

Вам в сообщении компилятора что-то не понятно? У данной переменной нет свойства ChangeNotifier.

Очень извиняюсь, там же функция GetChangeNotifier(), конечно, разобрался, сразу не заметил ))

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

СообщениеДобавлено: 25 мар 2015, 20:31
zed
У вас там ахинея какая-то написана:
Код: Выделить всё
TCustomGPSTrack = class(TChangeableWithSimpleLockBase, IChangeable)

но TChangeableWithSimpleLockBase итак уже наследует интерфейс IChangeable через TChangeableBase.