mirror of
https://git.vladimir.cc/vladimir/ewsdr.git
synced 2026-08-25 19:45:09 +00:00
Phase 3 (WA2b): move web Drive handler into the web adapter
Now that SetDrive is a complete command, the web/CAT Drive handler moves into TWebAdapter.OnDrive (the one handler WA1 left behind). CAT context SetDriveLevel repointed to it too. Makes the channel-power-clear reactive: ChannelController.OnDriveChanged fires on the rfDrive event and clears FPreChannelPower for any external drive change (slider/web/encoder), guarded by FRestoringDrive for the unit's own apply/restore. This removes the imperative ClearPreChannelPower coupling so SetDrive callers need no channel knowledge. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 4.8
parent
03f7359184
commit
e5a13096dc
@@ -45,6 +45,7 @@ type
|
||||
procedure SyncAGC;
|
||||
procedure SyncAGCTop;
|
||||
procedure SyncVolume;
|
||||
procedure SyncDrive;
|
||||
procedure SyncWfAGC;
|
||||
procedure SyncWfNF;
|
||||
procedure SyncMute;
|
||||
@@ -70,6 +71,7 @@ type
|
||||
procedure OnAGC(Mode: Integer);
|
||||
procedure OnAGCTop(DB: Integer);
|
||||
procedure OnVolume(V: Integer);
|
||||
procedure OnDrive(V: Integer);
|
||||
procedure OnWfAGC(On_: Boolean);
|
||||
procedure OnWfNF(On_: Boolean);
|
||||
procedure OnMute(On_: Boolean);
|
||||
@@ -145,6 +147,12 @@ begin FSyncInt := V; FController.Invoke(@SyncVolume); end;
|
||||
procedure TWebAdapter.SyncVolume;
|
||||
begin FController.SetVolume(FSyncInt); end;
|
||||
|
||||
procedure TWebAdapter.OnDrive(V: Integer);
|
||||
begin FSyncInt := V; FController.Invoke(@SyncDrive); end;
|
||||
|
||||
procedure TWebAdapter.SyncDrive;
|
||||
begin FController.SetDrive(FSyncInt); end; // rfDrive снимет память канала (ChannelController)
|
||||
|
||||
procedure TWebAdapter.OnWfAGC(On_: Boolean);
|
||||
begin FSyncBool := On_; FController.Invoke(@SyncWfAGC); end;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user