mirror of
https://github.com/PepperDash/Essentials.git
synced 2026-01-11 19:44:52 +00:00
Working through little details on ecs-213
This commit is contained in:
Binary file not shown.
@@ -62,7 +62,7 @@ namespace PepperDash.Essentials.Fusion
|
|||||||
Room.OnFeedback.LinkInputSig(FusionRoom.SystemPowerOn.InputSig);
|
Room.OnFeedback.LinkInputSig(FusionRoom.SystemPowerOn.InputSig);
|
||||||
SourceNameSig = FusionRoom.CreateOffsetStringSig(50, "Source - Name", eSigIoMask.InputSigOnly);
|
SourceNameSig = FusionRoom.CreateOffsetStringSig(50, "Source - Name", eSigIoMask.InputSigOnly);
|
||||||
// Don't think we need to get current status of this as nothing should be alive yet.
|
// Don't think we need to get current status of this as nothing should be alive yet.
|
||||||
Room.CurrentSourceInfoChange += new SourceInfoChangeHandler(Room_CurrentSourceInfoChange);
|
Room.CurrentSingleSourceChange += new SourceInfoChangeHandler(Room_CurrentSourceInfoChange);
|
||||||
|
|
||||||
|
|
||||||
FusionRoom.SystemPowerOn.OutputSig.SetSigFalseAction(Room.PowerOnToDefaultOrLastSource);
|
FusionRoom.SystemPowerOn.OutputSig.SetSigFalseAction(Room.PowerOnToDefaultOrLastSource);
|
||||||
|
|||||||
Binary file not shown.
@@ -12,7 +12,7 @@ namespace PepperDash.Essentials
|
|||||||
public class EssentialsHuddleSpaceRoom : EssentialsRoomBase, IHasCurrentSourceInfoChange
|
public class EssentialsHuddleSpaceRoom : EssentialsRoomBase, IHasCurrentSourceInfoChange
|
||||||
{
|
{
|
||||||
public event EventHandler<VolumeDeviceChangeEventArgs> CurrentVolumeDeviceChange;
|
public event EventHandler<VolumeDeviceChangeEventArgs> CurrentVolumeDeviceChange;
|
||||||
public event SourceInfoChangeHandler CurrentSourceInfoChange;
|
public event SourceInfoChangeHandler CurrentSingleSourceChange;
|
||||||
|
|
||||||
public EssentialsRoomPropertiesConfig Config { get; private set; }
|
public EssentialsRoomPropertiesConfig Config { get; private set; }
|
||||||
|
|
||||||
@@ -70,7 +70,7 @@ namespace PepperDash.Essentials
|
|||||||
{
|
{
|
||||||
if (value == _CurrentSourceInfo) return;
|
if (value == _CurrentSourceInfo) return;
|
||||||
|
|
||||||
var handler = CurrentSourceInfoChange;
|
var handler = CurrentSingleSourceChange;
|
||||||
// remove from in-use tracker, if so equipped
|
// remove from in-use tracker, if so equipped
|
||||||
if(_CurrentSourceInfo != null && _CurrentSourceInfo.SourceDevice is IInUseTracking)
|
if(_CurrentSourceInfo != null && _CurrentSourceInfo.SourceDevice is IInUseTracking)
|
||||||
(_CurrentSourceInfo.SourceDevice as IInUseTracking).InUseTracker.RemoveUser(this, "control");
|
(_CurrentSourceInfo.SourceDevice as IInUseTracking).InUseTracker.RemoveUser(this, "control");
|
||||||
|
|||||||
@@ -12,7 +12,9 @@ namespace PepperDash.Essentials
|
|||||||
public class EssentialsPresentationRoom : EssentialsRoomBase, IHasCurrentSourceInfoChange
|
public class EssentialsPresentationRoom : EssentialsRoomBase, IHasCurrentSourceInfoChange
|
||||||
{
|
{
|
||||||
public event EventHandler<VolumeDeviceChangeEventArgs> CurrentVolumeDeviceChange;
|
public event EventHandler<VolumeDeviceChangeEventArgs> CurrentVolumeDeviceChange;
|
||||||
public event SourceInfoChangeHandler CurrentSourceInfoChange;
|
public event SourceInfoChangeHandler CurrentSingleSourceChange;
|
||||||
|
public event SourceInfoChangeHandler CurrentDisplay1SourceChange;
|
||||||
|
public event SourceInfoChangeHandler CurrentDisplay2SourceChange;
|
||||||
|
|
||||||
public EssentialsPresentationRoomPropertiesConfig Config { get; private set; }
|
public EssentialsPresentationRoomPropertiesConfig Config { get; private set; }
|
||||||
|
|
||||||
@@ -72,33 +74,72 @@ namespace PepperDash.Essentials
|
|||||||
IBasicVolumeControls _CurrentAudioDevice;
|
IBasicVolumeControls _CurrentAudioDevice;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// The SourceListItem last run - containing names and icons
|
/// The SourceListItem last run - containing names and icons. The complex setter is
|
||||||
|
/// to add/remove this room to the source's InUseTracking, if it is capable
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public SourceListItem CurrentSourceInfo
|
public SourceListItem CurrentSingleSourceInfo
|
||||||
{
|
{
|
||||||
get { return _CurrentSourceInfo; }
|
get { return _CurrentSingleSourceInfo; }
|
||||||
private set
|
private set
|
||||||
{
|
{
|
||||||
if (value == _CurrentSourceInfo) return;
|
if (value == _CurrentSingleSourceInfo) return;
|
||||||
|
|
||||||
var handler = CurrentSourceInfoChange;
|
var handler = CurrentSingleSourceChange;
|
||||||
// remove from in-use tracker, if so equipped
|
// remove from in-use tracker, if so equipped
|
||||||
if(_CurrentSourceInfo != null && _CurrentSourceInfo.SourceDevice is IInUseTracking)
|
if(_CurrentSingleSourceInfo != null && _CurrentSingleSourceInfo.SourceDevice is IInUseTracking)
|
||||||
(_CurrentSourceInfo.SourceDevice as IInUseTracking).InUseTracker.RemoveUser(this, "control");
|
(_CurrentSingleSourceInfo.SourceDevice as IInUseTracking).InUseTracker.RemoveUser(this, "control");
|
||||||
|
|
||||||
if (handler != null)
|
if (handler != null)
|
||||||
handler(this, _CurrentSourceInfo, ChangeType.WillChange);
|
handler(this, _CurrentSingleSourceInfo, ChangeType.WillChange);
|
||||||
|
|
||||||
_CurrentSourceInfo = value;
|
_CurrentSingleSourceInfo = value;
|
||||||
|
|
||||||
// add to in-use tracking
|
// add to in-use tracking
|
||||||
if (_CurrentSourceInfo != null && _CurrentSourceInfo.SourceDevice is IInUseTracking)
|
if (_CurrentSingleSourceInfo != null && _CurrentSingleSourceInfo.SourceDevice is IInUseTracking)
|
||||||
(_CurrentSourceInfo.SourceDevice as IInUseTracking).InUseTracker.AddUser(this, "control");
|
(_CurrentSingleSourceInfo.SourceDevice as IInUseTracking).InUseTracker.AddUser(this, "control");
|
||||||
if (handler != null)
|
if (handler != null)
|
||||||
handler(this, _CurrentSourceInfo, ChangeType.DidChange);
|
handler(this, _CurrentSingleSourceInfo, ChangeType.DidChange);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
SourceListItem _CurrentSourceInfo;
|
SourceListItem _CurrentSingleSourceInfo;
|
||||||
|
|
||||||
|
public SourceListItem Display1SourceInfo
|
||||||
|
{
|
||||||
|
get { return _Display1SourceInfo; }
|
||||||
|
set
|
||||||
|
{
|
||||||
|
if (value == _Display1SourceInfo) return;
|
||||||
|
|
||||||
|
var handler = CurrentDisplay1SourceChange;
|
||||||
|
if (handler != null)
|
||||||
|
handler(this, _Display1SourceInfo, ChangeType.WillChange);
|
||||||
|
|
||||||
|
_Display1SourceInfo = value;
|
||||||
|
|
||||||
|
if (handler != null)
|
||||||
|
handler(this, _Display1SourceInfo, ChangeType.DidChange);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
SourceListItem _Display1SourceInfo;
|
||||||
|
|
||||||
|
public SourceListItem Display2SourceInfo
|
||||||
|
{
|
||||||
|
get { return _Display2SourceInfo; }
|
||||||
|
set
|
||||||
|
{
|
||||||
|
if (value == _Display2SourceInfo) return;
|
||||||
|
|
||||||
|
var handler = CurrentDisplay2SourceChange;
|
||||||
|
if (handler != null)
|
||||||
|
handler(this, _Display2SourceInfo, ChangeType.WillChange);
|
||||||
|
|
||||||
|
_Display2SourceInfo = value;
|
||||||
|
|
||||||
|
if (handler != null)
|
||||||
|
handler(this, _Display2SourceInfo, ChangeType.DidChange);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
SourceListItem _Display2SourceInfo;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
///
|
///
|
||||||
@@ -124,8 +165,14 @@ namespace PepperDash.Essentials
|
|||||||
DefaultVolumeControls = (defaultAudio as IHasVolumeDevice).VolumeDevice;
|
DefaultVolumeControls = (defaultAudio as IHasVolumeDevice).VolumeDevice;
|
||||||
|
|
||||||
OnFeedback = new BoolFeedback(() =>
|
OnFeedback = new BoolFeedback(() =>
|
||||||
{ return CurrentSourceInfo != null
|
{ return (CurrentSingleSourceInfo != null
|
||||||
&& CurrentSourceInfo.Type == eSourceListItemType.Route; });
|
&& CurrentSingleSourceInfo.Type != eSourceListItemType.Off)
|
||||||
|
|| (Display1SourceInfo != null
|
||||||
|
&& Display1SourceInfo.Type != eSourceListItemType.Off)
|
||||||
|
|| (Display2SourceInfo != null
|
||||||
|
&& Display2SourceInfo.Type != eSourceListItemType.Off);
|
||||||
|
|
||||||
|
});
|
||||||
SourceListKey = "default";
|
SourceListKey = "default";
|
||||||
EnablePowerOnToLastSource = true;
|
EnablePowerOnToLastSource = true;
|
||||||
}
|
}
|
||||||
@@ -143,11 +190,27 @@ namespace PepperDash.Essentials
|
|||||||
else
|
else
|
||||||
DoVideoRoute("$off", display.Key);
|
DoVideoRoute("$off", display.Key);
|
||||||
}
|
}
|
||||||
|
Display1SourceInfo = sourceItem;
|
||||||
CurrentSourceInfo = sourceItem;
|
Display2SourceInfo = sourceItem;
|
||||||
|
CurrentSingleSourceInfo = sourceItem;
|
||||||
OnFeedback.FireUpdate();
|
OnFeedback.FireUpdate();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void SourceToDisplay1(SourceListItem sourceItem)
|
||||||
|
{
|
||||||
|
DoVideoRoute(sourceItem.SourceKey, Displays[1].Key);
|
||||||
|
Display1SourceInfo = sourceItem;
|
||||||
|
OnFeedback.FireUpdate();
|
||||||
|
}
|
||||||
|
|
||||||
|
public void SourceToDisplay2(SourceListItem sourceItem)
|
||||||
|
{
|
||||||
|
DoVideoRoute(sourceItem.SourceKey, Displays[2].Key);
|
||||||
|
Display2SourceInfo = sourceItem;
|
||||||
|
OnFeedback.FireUpdate();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Basic source -> destination routing
|
/// Basic source -> destination routing
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@@ -267,7 +330,7 @@ namespace PepperDash.Essentials
|
|||||||
|
|
||||||
// store the name and UI info for routes
|
// store the name and UI info for routes
|
||||||
if (item.SourceKey != null)
|
if (item.SourceKey != null)
|
||||||
CurrentSourceInfo = item;
|
CurrentSingleSourceInfo = item;
|
||||||
// And finally, set the "control". This will trigger event
|
// And finally, set the "control". This will trigger event
|
||||||
//CurrentControlDevice = DeviceManager.GetDeviceForKey(item.SourceKey) as Device;
|
//CurrentControlDevice = DeviceManager.GetDeviceForKey(item.SourceKey) as Device;
|
||||||
|
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ namespace PepperDash.Essentials
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public interface IHasCurrentSourceInfoChange
|
public interface IHasCurrentSourceInfoChange
|
||||||
{
|
{
|
||||||
event SourceInfoChangeHandler CurrentSourceInfoChange;
|
event SourceInfoChangeHandler CurrentSingleSourceChange;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,35 @@
|
|||||||
|
2/17/2017 8:49:15 AM, Info: Initializing SIMPLSharp Services...
|
||||||
|
2/17/2017 8:49:15 AM, Info: ProjectInfo successfully initialized.
|
||||||
|
2/17/2017 9:50:45 AM, Info: Validating assembly C:\Users\hvolmer\Desktop\working\essentials\PepperDashEssentials\PepperDashEssentials\bin\PepperDashEssentials.dll...
|
||||||
|
2/17/2017 9:50:46 AM, Info: Verifying assembly C:\Users\hvolmer\Desktop\working\essentials\PepperDashEssentials\PepperDashEssentials\bin\PepperDashEssentials.dll
|
||||||
|
2/17/2017 9:50:46 AM, Info: Creating Archive C:\Users\hvolmer\Desktop\working\essentials\PepperDashEssentials\PepperDashEssentials\bin\PepperDashEssentials.cpz...
|
||||||
|
2/17/2017 9:50:48 AM, Info: Saving project information...
|
||||||
|
2/17/2017 10:21:23 AM, Info: Validating assembly C:\Users\hvolmer\Desktop\working\essentials\PepperDashEssentials\PepperDashEssentials\bin\PepperDashEssentials.dll...
|
||||||
|
2/17/2017 10:21:23 AM, Info: Verifying assembly C:\Users\hvolmer\Desktop\working\essentials\PepperDashEssentials\PepperDashEssentials\bin\PepperDashEssentials.dll
|
||||||
|
2/17/2017 10:21:23 AM, Info: Creating Archive C:\Users\hvolmer\Desktop\working\essentials\PepperDashEssentials\PepperDashEssentials\bin\PepperDashEssentials.cpz...
|
||||||
|
2/17/2017 10:21:25 AM, Info: Saving project information...
|
||||||
|
2/17/2017 11:43:36 AM, Info: Validating assembly C:\Users\hvolmer\Desktop\working\essentials\PepperDashEssentials\PepperDashEssentials\bin\PepperDashEssentials.dll...
|
||||||
|
2/17/2017 11:43:37 AM, Info: Verifying assembly C:\Users\hvolmer\Desktop\working\essentials\PepperDashEssentials\PepperDashEssentials\bin\PepperDashEssentials.dll
|
||||||
|
2/17/2017 11:43:37 AM, Info: Creating Archive C:\Users\hvolmer\Desktop\working\essentials\PepperDashEssentials\PepperDashEssentials\bin\PepperDashEssentials.cpz...
|
||||||
|
2/17/2017 11:43:39 AM, Info: Saving project information...
|
||||||
|
2/17/2017 12:40:59 PM, Info: Validating assembly C:\Users\hvolmer\Desktop\working\essentials\PepperDashEssentials\PepperDashEssentials\bin\PepperDashEssentials.dll...
|
||||||
|
2/17/2017 12:40:59 PM, Info: Verifying assembly C:\Users\hvolmer\Desktop\working\essentials\PepperDashEssentials\PepperDashEssentials\bin\PepperDashEssentials.dll
|
||||||
|
2/17/2017 12:40:59 PM, Info: Creating Archive C:\Users\hvolmer\Desktop\working\essentials\PepperDashEssentials\PepperDashEssentials\bin\PepperDashEssentials.cpz...
|
||||||
|
2/17/2017 12:41:00 PM, Info: Saving project information...
|
||||||
|
2/17/2017 1:07:27 PM, Info: Validating assembly C:\Users\hvolmer\Desktop\working\essentials\PepperDashEssentials\PepperDashEssentials\bin\PepperDashEssentials.dll...
|
||||||
|
2/17/2017 1:07:27 PM, Info: Verifying assembly C:\Users\hvolmer\Desktop\working\essentials\PepperDashEssentials\PepperDashEssentials\bin\PepperDashEssentials.dll
|
||||||
|
2/17/2017 1:07:27 PM, Info: Creating Archive C:\Users\hvolmer\Desktop\working\essentials\PepperDashEssentials\PepperDashEssentials\bin\PepperDashEssentials.cpz...
|
||||||
|
2/17/2017 1:07:29 PM, Info: Saving project information...
|
||||||
|
2/17/2017 1:23:03 PM, Info: Validating assembly C:\Users\hvolmer\Desktop\working\essentials\PepperDashEssentials\PepperDashEssentials\bin\PepperDashEssentials.dll...
|
||||||
|
2/17/2017 1:23:04 PM, Info: Verifying assembly C:\Users\hvolmer\Desktop\working\essentials\PepperDashEssentials\PepperDashEssentials\bin\PepperDashEssentials.dll
|
||||||
|
2/17/2017 1:23:04 PM, Info: Creating Archive C:\Users\hvolmer\Desktop\working\essentials\PepperDashEssentials\PepperDashEssentials\bin\PepperDashEssentials.cpz...
|
||||||
|
2/17/2017 1:23:05 PM, Info: Saving project information...
|
||||||
|
2/17/2017 1:30:27 PM, Info: Validating assembly C:\Users\hvolmer\Desktop\working\essentials\PepperDashEssentials\PepperDashEssentials\bin\PepperDashEssentials.dll...
|
||||||
|
2/17/2017 1:30:27 PM, Info: Verifying assembly C:\Users\hvolmer\Desktop\working\essentials\PepperDashEssentials\PepperDashEssentials\bin\PepperDashEssentials.dll
|
||||||
|
2/17/2017 1:30:27 PM, Info: Creating Archive C:\Users\hvolmer\Desktop\working\essentials\PepperDashEssentials\PepperDashEssentials\bin\PepperDashEssentials.cpz...
|
||||||
|
2/17/2017 1:30:29 PM, Info: Saving project information...
|
||||||
|
2/17/2017 2:17:11 PM, Info: Validating assembly C:\Users\hvolmer\Desktop\working\essentials\PepperDashEssentials\PepperDashEssentials\bin\PepperDashEssentials.dll...
|
||||||
|
2/17/2017 2:17:12 PM, Info: Verifying assembly C:\Users\hvolmer\Desktop\working\essentials\PepperDashEssentials\PepperDashEssentials\bin\PepperDashEssentials.dll
|
||||||
|
2/17/2017 2:17:12 PM, Info: Creating Archive C:\Users\hvolmer\Desktop\working\essentials\PepperDashEssentials\PepperDashEssentials\bin\PepperDashEssentials.cpz...
|
||||||
|
2/17/2017 2:17:13 PM, Info: Saving project information...
|
||||||
|
2/17/2017 2:31:44 PM, Info: Terminating SIMPLSharp Services
|
||||||
@@ -0,0 +1,20 @@
|
|||||||
|
2/20/2017 11:06:26 AM, Info: Initializing SIMPLSharp Services...
|
||||||
|
2/20/2017 11:06:27 AM, Info: ProjectInfo successfully initialized.
|
||||||
|
2/20/2017 12:42:22 PM, Info: Validating assembly C:\Users\hvolmer\Desktop\working\essentials\PepperDashEssentials\PepperDashEssentials\bin\PepperDashEssentials.dll...
|
||||||
|
2/20/2017 12:42:23 PM, Info: Verifying assembly C:\Users\hvolmer\Desktop\working\essentials\PepperDashEssentials\PepperDashEssentials\bin\PepperDashEssentials.dll
|
||||||
|
2/20/2017 12:42:24 PM, Info: Creating Archive C:\Users\hvolmer\Desktop\working\essentials\PepperDashEssentials\PepperDashEssentials\bin\PepperDashEssentials.cpz...
|
||||||
|
2/20/2017 12:42:25 PM, Info: Saving project information...
|
||||||
|
2/20/2017 1:36:30 PM, Info: Validating assembly C:\Users\hvolmer\Desktop\working\essentials\PepperDashEssentials\PepperDashEssentials\bin\PepperDashEssentials.dll...
|
||||||
|
2/20/2017 1:36:30 PM, Info: Verifying assembly C:\Users\hvolmer\Desktop\working\essentials\PepperDashEssentials\PepperDashEssentials\bin\PepperDashEssentials.dll
|
||||||
|
2/20/2017 1:36:31 PM, Info: Creating Archive C:\Users\hvolmer\Desktop\working\essentials\PepperDashEssentials\PepperDashEssentials\bin\PepperDashEssentials.cpz...
|
||||||
|
2/20/2017 1:36:32 PM, Info: Saving project information...
|
||||||
|
2/20/2017 1:42:21 PM, Info: Saving project information...
|
||||||
|
2/20/2017 1:42:21 PM, Info: Saving project information...
|
||||||
|
2/20/2017 1:42:21 PM, Info: Saving project information...
|
||||||
|
2/20/2017 1:46:45 PM, Info: Saving project information...
|
||||||
|
2/20/2017 1:46:45 PM, Info: Saving project information...
|
||||||
|
2/20/2017 1:46:45 PM, Info: Saving project information...
|
||||||
|
2/20/2017 1:46:45 PM, Info: Saving project information...
|
||||||
|
2/20/2017 1:46:45 PM, Info: Saving project information...
|
||||||
|
2/20/2017 1:46:45 PM, Info: Saving project information...
|
||||||
|
2/20/2017 1:46:46 PM, Info: Terminating SIMPLSharp Services
|
||||||
@@ -0,0 +1,43 @@
|
|||||||
|
2/20/2017 1:48:17 PM, Info: Initializing SIMPLSharp Services...
|
||||||
|
2/20/2017 1:48:17 PM, Info: ProjectInfo successfully initialized.
|
||||||
|
2/20/2017 3:16:00 PM, Info: Validating assembly C:\Users\hvolmer\Desktop\working\essentials\PepperDashEssentials\PepperDashEssentials\bin\PepperDashEssentials.dll...
|
||||||
|
2/20/2017 3:16:01 PM, Info: Verifying assembly C:\Users\hvolmer\Desktop\working\essentials\PepperDashEssentials\PepperDashEssentials\bin\PepperDashEssentials.dll
|
||||||
|
2/20/2017 3:16:01 PM, Info: Creating Archive C:\Users\hvolmer\Desktop\working\essentials\PepperDashEssentials\PepperDashEssentials\bin\PepperDashEssentials.cpz...
|
||||||
|
2/20/2017 3:16:03 PM, Info: Saving project information...
|
||||||
|
2/20/2017 3:48:35 PM, Info: Validating assembly C:\Users\hvolmer\Desktop\working\essentials\PepperDashEssentials\PepperDashEssentials\bin\PepperDashEssentials.dll...
|
||||||
|
2/20/2017 3:48:36 PM, Info: Verifying assembly C:\Users\hvolmer\Desktop\working\essentials\PepperDashEssentials\PepperDashEssentials\bin\PepperDashEssentials.dll
|
||||||
|
2/20/2017 3:48:36 PM, Info: Creating Archive C:\Users\hvolmer\Desktop\working\essentials\PepperDashEssentials\PepperDashEssentials\bin\PepperDashEssentials.cpz...
|
||||||
|
2/20/2017 3:48:37 PM, Info: Saving project information...
|
||||||
|
2/20/2017 4:03:34 PM, Info: Validating assembly C:\Users\hvolmer\Desktop\working\essentials\PepperDashEssentials\PepperDashEssentials\bin\PepperDashEssentials.dll...
|
||||||
|
2/20/2017 4:03:34 PM, Info: Verifying assembly C:\Users\hvolmer\Desktop\working\essentials\PepperDashEssentials\PepperDashEssentials\bin\PepperDashEssentials.dll
|
||||||
|
2/20/2017 4:03:35 PM, Info: Creating Archive C:\Users\hvolmer\Desktop\working\essentials\PepperDashEssentials\PepperDashEssentials\bin\PepperDashEssentials.cpz...
|
||||||
|
2/20/2017 4:03:36 PM, Info: Saving project information...
|
||||||
|
2/20/2017 4:11:39 PM, Info: Validating assembly C:\Users\hvolmer\Desktop\working\essentials\PepperDashEssentials\PepperDashEssentials\bin\PepperDashEssentials.dll...
|
||||||
|
2/20/2017 4:11:40 PM, Info: Verifying assembly C:\Users\hvolmer\Desktop\working\essentials\PepperDashEssentials\PepperDashEssentials\bin\PepperDashEssentials.dll
|
||||||
|
2/20/2017 4:11:40 PM, Info: Creating Archive C:\Users\hvolmer\Desktop\working\essentials\PepperDashEssentials\PepperDashEssentials\bin\PepperDashEssentials.cpz...
|
||||||
|
2/20/2017 4:11:41 PM, Info: Saving project information...
|
||||||
|
2/20/2017 4:26:20 PM, Info: Validating assembly C:\Users\hvolmer\Desktop\working\essentials\PepperDashEssentials\PepperDashEssentials\bin\PepperDashEssentials.dll...
|
||||||
|
2/20/2017 4:26:20 PM, Info: Verifying assembly C:\Users\hvolmer\Desktop\working\essentials\PepperDashEssentials\PepperDashEssentials\bin\PepperDashEssentials.dll
|
||||||
|
2/20/2017 4:26:21 PM, Info: Creating Archive C:\Users\hvolmer\Desktop\working\essentials\PepperDashEssentials\PepperDashEssentials\bin\PepperDashEssentials.cpz...
|
||||||
|
2/20/2017 4:26:22 PM, Info: Saving project information...
|
||||||
|
2/20/2017 4:43:14 PM, Info: Validating assembly C:\Users\hvolmer\Desktop\working\essentials\PepperDashEssentials\PepperDashEssentials\bin\PepperDashEssentials.dll...
|
||||||
|
2/20/2017 4:43:14 PM, Info: Verifying assembly C:\Users\hvolmer\Desktop\working\essentials\PepperDashEssentials\PepperDashEssentials\bin\PepperDashEssentials.dll
|
||||||
|
2/20/2017 4:43:14 PM, Info: Creating Archive C:\Users\hvolmer\Desktop\working\essentials\PepperDashEssentials\PepperDashEssentials\bin\PepperDashEssentials.cpz...
|
||||||
|
2/20/2017 4:43:16 PM, Info: Saving project information...
|
||||||
|
2/20/2017 4:43:52 PM, Info: Validating assembly C:\Users\hvolmer\Desktop\working\essentials\PepperDashEssentials\PepperDashEssentials\bin\PepperDashEssentials.dll...
|
||||||
|
2/20/2017 4:43:52 PM, Info: Verifying assembly C:\Users\hvolmer\Desktop\working\essentials\PepperDashEssentials\PepperDashEssentials\bin\PepperDashEssentials.dll
|
||||||
|
2/20/2017 4:43:53 PM, Info: Creating Archive C:\Users\hvolmer\Desktop\working\essentials\PepperDashEssentials\PepperDashEssentials\bin\PepperDashEssentials.cpz...
|
||||||
|
2/20/2017 4:43:54 PM, Info: Saving project information...
|
||||||
|
2/20/2017 4:49:15 PM, Info: Validating assembly C:\Users\hvolmer\Desktop\working\essentials\PepperDashEssentials\PepperDashEssentials\bin\PepperDashEssentials.dll...
|
||||||
|
2/20/2017 4:49:15 PM, Info: Verifying assembly C:\Users\hvolmer\Desktop\working\essentials\PepperDashEssentials\PepperDashEssentials\bin\PepperDashEssentials.dll
|
||||||
|
2/20/2017 4:49:15 PM, Info: Creating Archive C:\Users\hvolmer\Desktop\working\essentials\PepperDashEssentials\PepperDashEssentials\bin\PepperDashEssentials.cpz...
|
||||||
|
2/20/2017 4:49:17 PM, Info: Saving project information...
|
||||||
|
2/20/2017 5:01:32 PM, Info: Validating assembly C:\Users\hvolmer\Desktop\working\essentials\PepperDashEssentials\PepperDashEssentials\bin\PepperDashEssentials.dll...
|
||||||
|
2/20/2017 5:01:32 PM, Info: Verifying assembly C:\Users\hvolmer\Desktop\working\essentials\PepperDashEssentials\PepperDashEssentials\bin\PepperDashEssentials.dll
|
||||||
|
2/20/2017 5:01:32 PM, Info: Creating Archive C:\Users\hvolmer\Desktop\working\essentials\PepperDashEssentials\PepperDashEssentials\bin\PepperDashEssentials.cpz...
|
||||||
|
2/20/2017 5:01:33 PM, Info: Saving project information...
|
||||||
|
2/20/2017 5:05:08 PM, Info: Validating assembly C:\Users\hvolmer\Desktop\working\essentials\PepperDashEssentials\PepperDashEssentials\bin\PepperDashEssentials.dll...
|
||||||
|
2/20/2017 5:05:08 PM, Info: Verifying assembly C:\Users\hvolmer\Desktop\working\essentials\PepperDashEssentials\PepperDashEssentials\bin\PepperDashEssentials.dll
|
||||||
|
2/20/2017 5:05:08 PM, Info: Creating Archive C:\Users\hvolmer\Desktop\working\essentials\PepperDashEssentials\PepperDashEssentials\bin\PepperDashEssentials.cpz...
|
||||||
|
2/20/2017 5:05:09 PM, Info: Saving project information...
|
||||||
|
2/20/2017 5:21:45 PM, Info: Terminating SIMPLSharp Services
|
||||||
@@ -16,13 +16,21 @@ namespace PepperDash.Essentials
|
|||||||
{
|
{
|
||||||
EssentialsPresentationPanelAvFunctionsDriver Parent;
|
EssentialsPresentationPanelAvFunctionsDriver Parent;
|
||||||
|
|
||||||
CTimer SourceSelectedTimer;
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Smart Object 3200
|
/// Smart Object 3200
|
||||||
/// </summary>
|
/// </summary>
|
||||||
SubpageReferenceList SourcesSrl;
|
SubpageReferenceList SourcesSrl;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// For tracking feedback on last selected
|
||||||
|
/// </summary>
|
||||||
|
BoolInputSig LastSelectedSourceSig;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The source that has been selected and is awaiting assignment to a display
|
||||||
|
/// </summary>
|
||||||
|
SourceListItem PendingSource;
|
||||||
|
|
||||||
bool IsSharingModeAdvanced;
|
bool IsSharingModeAdvanced;
|
||||||
|
|
||||||
public DualDisplaySimpleOrAdvancedRouting(EssentialsPresentationPanelAvFunctionsDriver parent) : base(parent.TriList)
|
public DualDisplaySimpleOrAdvancedRouting(EssentialsPresentationPanelAvFunctionsDriver parent) : base(parent.TriList)
|
||||||
@@ -58,16 +66,16 @@ namespace PepperDash.Essentials
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
///
|
///
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public override void Hide()
|
//public override void Hide()
|
||||||
{
|
//{
|
||||||
TriList.BooleanInput[UIBoolJoin.ToggleSharingModeVisible].BoolValue = false;
|
// TriList.BooleanInput[UIBoolJoin.ToggleSharingModeVisible].BoolValue = false;
|
||||||
TriList.BooleanInput[UIBoolJoin.StagingPageVisible].BoolValue = false;
|
// TriList.BooleanInput[UIBoolJoin.StagingPageVisible].BoolValue = false;
|
||||||
if(IsSharingModeAdvanced)
|
// if(IsSharingModeAdvanced)
|
||||||
TriList.BooleanInput[UIBoolJoin.DualDisplayPageVisible].BoolValue = false;
|
// TriList.BooleanInput[UIBoolJoin.DualDisplayPageVisible].BoolValue = false;
|
||||||
else
|
// else
|
||||||
TriList.BooleanInput[UIBoolJoin.SelectASourceVisible].BoolValue = false;
|
// TriList.BooleanInput[UIBoolJoin.SelectASourceVisible].BoolValue = false;
|
||||||
base.Hide();
|
// base.Hide();
|
||||||
}
|
//}
|
||||||
|
|
||||||
public void SetCurrentRoomFromParent()
|
public void SetCurrentRoomFromParent()
|
||||||
{
|
{
|
||||||
@@ -103,9 +111,21 @@ namespace PepperDash.Essentials
|
|||||||
srcConfig.SourceKey);
|
srcConfig.SourceKey);
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
var localSrcConfig = srcConfig; // lambda scope below
|
var localSrcItem = srcConfig; // lambda scope below
|
||||||
|
var localIndex = i;
|
||||||
SourcesSrl.GetBoolFeedbackSig(i, 1).UserObject = new Action<bool>(b =>
|
SourcesSrl.GetBoolFeedbackSig(i, 1).UserObject = new Action<bool>(b =>
|
||||||
{ if (!b) UiSelectSource(localSrcConfig); });
|
{
|
||||||
|
if (IsSharingModeAdvanced)
|
||||||
|
{
|
||||||
|
if (LastSelectedSourceSig != null)
|
||||||
|
LastSelectedSourceSig.BoolValue = false;
|
||||||
|
SourceListButtonPress(localSrcItem);
|
||||||
|
LastSelectedSourceSig = SourcesSrl.BoolInputSig(localIndex, 1);
|
||||||
|
LastSelectedSourceSig.BoolValue = true;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
Parent.CurrentRoom.DoSourceToAllDestinationsRoute(localSrcItem);
|
||||||
|
});
|
||||||
SourcesSrl.StringInputSig(i, 1).StringValue = srcConfig.PreferredName;
|
SourcesSrl.StringInputSig(i, 1).StringValue = srcConfig.PreferredName;
|
||||||
i++;
|
i++;
|
||||||
|
|
||||||
@@ -115,7 +135,9 @@ namespace PepperDash.Essentials
|
|||||||
//item.RegisterForSourceChange(Parent.CurrentRoom);
|
//item.RegisterForSourceChange(Parent.CurrentRoom);
|
||||||
}
|
}
|
||||||
SourcesSrl.Count = (ushort)(i - 1);
|
SourcesSrl.Count = (ushort)(i - 1);
|
||||||
Parent.CurrentRoom.CurrentSourceInfoChange += CurrentRoom_CurrentSourceInfoChange;
|
Parent.CurrentRoom.CurrentSingleSourceChange += CurrentRoom_CurrentSourceInfoChange;
|
||||||
|
Parent.CurrentRoom.CurrentDisplay1SourceChange += CurrentRoom_CurrentDisplay1SourceChange;
|
||||||
|
Parent.CurrentRoom.CurrentDisplay2SourceChange += CurrentRoom_CurrentDisplay2SourceChange;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -124,26 +146,21 @@ namespace PepperDash.Essentials
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Called from button presses on source, where We can assume we want
|
|
||||||
/// to change to the proper screen.
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="key">The key name of the route to run</param>
|
|
||||||
void UiSelectSource(SourceListItem sourceItem)
|
|
||||||
{
|
|
||||||
if (IsSharingModeAdvanced)
|
|
||||||
{
|
|
||||||
SourceListButtonPress(sourceItem);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
Parent.CurrentRoom.DoSourceToAllDestinationsRoute(sourceItem);
|
|
||||||
}
|
|
||||||
|
|
||||||
void CurrentRoom_CurrentSourceInfoChange(EssentialsRoomBase room, SourceListItem info, ChangeType type)
|
void CurrentRoom_CurrentSourceInfoChange(EssentialsRoomBase room, SourceListItem info, ChangeType type)
|
||||||
{
|
{
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void CurrentRoom_CurrentDisplay1SourceChange(EssentialsRoomBase room, SourceListItem info, ChangeType type)
|
||||||
|
{
|
||||||
|
TriList.StringInput[UIStringJoin.Display1SourceLabel].StringValue = PendingSource.PreferredName;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
void CurrentRoom_CurrentDisplay2SourceChange(EssentialsRoomBase room, SourceListItem info, ChangeType type)
|
||||||
|
{
|
||||||
|
TriList.StringInput[UIStringJoin.Display2SourceLabel].StringValue = PendingSource.PreferredName;
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
///
|
///
|
||||||
@@ -164,6 +181,7 @@ namespace PepperDash.Essentials
|
|||||||
TriList.BooleanInput[UIBoolJoin.Display1ControlButtonEnable].BoolValue = false;
|
TriList.BooleanInput[UIBoolJoin.Display1ControlButtonEnable].BoolValue = false;
|
||||||
TriList.BooleanInput[UIBoolJoin.Display2AudioButtonEnable].BoolValue = false;
|
TriList.BooleanInput[UIBoolJoin.Display2AudioButtonEnable].BoolValue = false;
|
||||||
TriList.BooleanInput[UIBoolJoin.Display2ControlButtonEnable].BoolValue = false;
|
TriList.BooleanInput[UIBoolJoin.Display2ControlButtonEnable].BoolValue = false;
|
||||||
|
PendingSource = item;
|
||||||
}
|
}
|
||||||
|
|
||||||
void EnableAppropriateDisplayButtons()
|
void EnableAppropriateDisplayButtons()
|
||||||
@@ -172,11 +190,15 @@ namespace PepperDash.Essentials
|
|||||||
TriList.BooleanInput[UIBoolJoin.Display1ControlButtonEnable].BoolValue = true;
|
TriList.BooleanInput[UIBoolJoin.Display1ControlButtonEnable].BoolValue = true;
|
||||||
TriList.BooleanInput[UIBoolJoin.Display2AudioButtonEnable].BoolValue = true;
|
TriList.BooleanInput[UIBoolJoin.Display2AudioButtonEnable].BoolValue = true;
|
||||||
TriList.BooleanInput[UIBoolJoin.Display2ControlButtonEnable].BoolValue = true;
|
TriList.BooleanInput[UIBoolJoin.Display2ControlButtonEnable].BoolValue = true;
|
||||||
|
if (LastSelectedSourceSig != null)
|
||||||
|
LastSelectedSourceSig.BoolValue = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void Display1Press()
|
public void Display1Press()
|
||||||
{
|
{
|
||||||
EnableAppropriateDisplayButtons();
|
EnableAppropriateDisplayButtons();
|
||||||
|
Parent.CurrentRoom.SourceToDisplay1(PendingSource);
|
||||||
|
// Enable end meeting
|
||||||
}
|
}
|
||||||
|
|
||||||
public void Display1AudioPress()
|
public void Display1AudioPress()
|
||||||
@@ -184,6 +206,7 @@ namespace PepperDash.Essentials
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public void Display1ControlPress()
|
public void Display1ControlPress()
|
||||||
{
|
{
|
||||||
|
|
||||||
@@ -192,6 +215,7 @@ namespace PepperDash.Essentials
|
|||||||
public void Display2Press()
|
public void Display2Press()
|
||||||
{
|
{
|
||||||
EnableAppropriateDisplayButtons();
|
EnableAppropriateDisplayButtons();
|
||||||
|
Parent.CurrentRoom.SourceToDisplay2(PendingSource);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void Display2AudioPress()
|
public void Display2AudioPress()
|
||||||
|
|||||||
@@ -171,6 +171,9 @@ namespace PepperDash.Essentials
|
|||||||
.LinkInputSig(TriList.BooleanInput[UIBoolJoin.VolumeButtonPopupVisible]);
|
.LinkInputSig(TriList.BooleanInput[UIBoolJoin.VolumeButtonPopupVisible]);
|
||||||
|
|
||||||
PowerOffTimeout = 30000;
|
PowerOffTimeout = 30000;
|
||||||
|
|
||||||
|
TriList.StringInput[UIStringJoin.StartActivityText].StringValue =
|
||||||
|
"Tap Share to begin";
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -553,7 +556,7 @@ namespace PepperDash.Essentials
|
|||||||
_CurrentRoom.OnFeedback.OutputChange -= _CurrentRoom_OnFeedback_OutputChange;
|
_CurrentRoom.OnFeedback.OutputChange -= _CurrentRoom_OnFeedback_OutputChange;
|
||||||
_CurrentRoom.CurrentVolumeDeviceChange -= this._CurrentRoom_CurrentAudioDeviceChange;
|
_CurrentRoom.CurrentVolumeDeviceChange -= this._CurrentRoom_CurrentAudioDeviceChange;
|
||||||
ClearAudioDeviceConnections();
|
ClearAudioDeviceConnections();
|
||||||
_CurrentRoom.CurrentSourceInfoChange -= this._CurrentRoom_SourceInfoChange;
|
_CurrentRoom.CurrentSingleSourceChange -= this._CurrentRoom_SourceInfoChange;
|
||||||
DisconnectSource(_CurrentRoom.CurrentSourceInfo);
|
DisconnectSource(_CurrentRoom.CurrentSourceInfo);
|
||||||
}
|
}
|
||||||
_CurrentRoom = room;
|
_CurrentRoom = room;
|
||||||
@@ -595,7 +598,7 @@ namespace PepperDash.Essentials
|
|||||||
_CurrentRoom.OnFeedback.OutputChange += _CurrentRoom_OnFeedback_OutputChange;
|
_CurrentRoom.OnFeedback.OutputChange += _CurrentRoom_OnFeedback_OutputChange;
|
||||||
_CurrentRoom.CurrentVolumeDeviceChange += _CurrentRoom_CurrentAudioDeviceChange;
|
_CurrentRoom.CurrentVolumeDeviceChange += _CurrentRoom_CurrentAudioDeviceChange;
|
||||||
RefreshAudioDeviceConnections();
|
RefreshAudioDeviceConnections();
|
||||||
_CurrentRoom.CurrentSourceInfoChange += _CurrentRoom_SourceInfoChange;
|
_CurrentRoom.CurrentSingleSourceChange += _CurrentRoom_SourceInfoChange;
|
||||||
RefreshSourceInfo();
|
RefreshSourceInfo();
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
|||||||
@@ -16,6 +16,23 @@ namespace PepperDash.Essentials
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public class EssentialsPresentationPanelAvFunctionsDriver : PanelDriverBase
|
public class EssentialsPresentationPanelAvFunctionsDriver : PanelDriverBase
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Smart Object 3200
|
||||||
|
/// </summary>
|
||||||
|
SubpageReferenceList SourcesSrl;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// For tracking feedback on last selected
|
||||||
|
/// </summary>
|
||||||
|
BoolInputSig LastSelectedSourceSig;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The source that has been selected and is awaiting assignment to a display
|
||||||
|
/// </summary>
|
||||||
|
SourceListItem PendingSource;
|
||||||
|
|
||||||
|
bool IsSharingModeAdvanced;
|
||||||
|
|
||||||
CrestronTouchpanelPropertiesConfig Config;
|
CrestronTouchpanelPropertiesConfig Config;
|
||||||
|
|
||||||
public enum UiDisplayMode
|
public enum UiDisplayMode
|
||||||
@@ -102,10 +119,10 @@ namespace PepperDash.Essentials
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
PanelDriverBase Parent;
|
PanelDriverBase Parent;
|
||||||
|
|
||||||
/// <summary>
|
///// <summary>
|
||||||
/// Driver that manages advanced sharing features
|
///// Driver that manages advanced sharing features
|
||||||
/// </summary>
|
///// </summary>
|
||||||
DualDisplaySimpleOrAdvancedRouting DualDisplayUiDriver;
|
//DualDisplaySimpleOrAdvancedRouting DualDisplayUiDriver;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// All children attached to this driver. For hiding and showing as a group.
|
/// All children attached to this driver. For hiding and showing as a group.
|
||||||
@@ -114,13 +131,6 @@ namespace PepperDash.Essentials
|
|||||||
|
|
||||||
List<BoolInputSig> CurrentDisplayModeSigsInUse = new List<BoolInputSig>();
|
List<BoolInputSig> CurrentDisplayModeSigsInUse = new List<BoolInputSig>();
|
||||||
|
|
||||||
//// Important smart objects
|
|
||||||
|
|
||||||
///// <summary>
|
|
||||||
///// Smart Object 3200
|
|
||||||
///// </summary>
|
|
||||||
//SubpageReferenceList SourcesSrl;
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Smart Object 15022
|
/// Smart Object 15022
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@@ -158,10 +168,7 @@ namespace PepperDash.Essentials
|
|||||||
Config = config;
|
Config = config;
|
||||||
Parent = parent;
|
Parent = parent;
|
||||||
|
|
||||||
|
|
||||||
//SourcesSrl = new SubpageReferenceList(TriList, 3200, 3, 3, 3);
|
|
||||||
ActivityFooterSrl = new SubpageReferenceList(TriList, 15022, 3, 3, 3);
|
ActivityFooterSrl = new SubpageReferenceList(TriList, 15022, 3, 3, 3);
|
||||||
DualDisplayUiDriver = new DualDisplaySimpleOrAdvancedRouting(this);
|
|
||||||
SetupActivityFooterWhenRoomOff();
|
SetupActivityFooterWhenRoomOff();
|
||||||
|
|
||||||
ShowVolumeGauge = true;
|
ShowVolumeGauge = true;
|
||||||
@@ -176,6 +183,22 @@ namespace PepperDash.Essentials
|
|||||||
.LinkInputSig(TriList.BooleanInput[UIBoolJoin.VolumeButtonPopupVisible]);
|
.LinkInputSig(TriList.BooleanInput[UIBoolJoin.VolumeButtonPopupVisible]);
|
||||||
|
|
||||||
PowerOffTimeout = 30000;
|
PowerOffTimeout = 30000;
|
||||||
|
|
||||||
|
SourcesSrl = new SubpageReferenceList(TriList, 3200, 3, 3, 3);
|
||||||
|
|
||||||
|
TriList.StringInput[UIStringJoin.StartActivityText].StringValue =
|
||||||
|
"Tap an activity to begin";
|
||||||
|
|
||||||
|
// Sharing mode things
|
||||||
|
TriList.SetSigFalseAction(UIBoolJoin.ToggleSharingModePress, ToggleSharingModePressed);
|
||||||
|
|
||||||
|
TriList.SetSigFalseAction(UIBoolJoin.Display1AudioButtonPressAndFb, Display1AudioPress);
|
||||||
|
TriList.SetSigFalseAction(UIBoolJoin.Display1ControlButtonPress, Display1ControlPress);
|
||||||
|
TriList.SetSigTrueAction(UIBoolJoin.Display1SelectPress, Display1Press);
|
||||||
|
|
||||||
|
TriList.SetSigFalseAction(UIBoolJoin.Display2AudioButtonPressAndFb, Display2AudioPress);
|
||||||
|
TriList.SetSigFalseAction(UIBoolJoin.Display2ControlButtonPress, Display2ControlPress);
|
||||||
|
TriList.SetSigTrueAction(UIBoolJoin.Display2SelectPress, Display2Press);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -235,20 +258,61 @@ namespace PepperDash.Essentials
|
|||||||
base.Show();
|
base.Show();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
///
|
||||||
|
/// </summary>
|
||||||
public override void Hide()
|
public override void Hide()
|
||||||
{
|
{
|
||||||
HideAndClearCurrentDisplayModeSigsInUse();
|
var tl = TriList.BooleanInput;
|
||||||
TriList.BooleanInput[UIBoolJoin.TopBarVisible].BoolValue = false;
|
HideAndClearCurrentDisplayModeSigsInUse();
|
||||||
TriList.BooleanInput[UIBoolJoin.ActivityFooterVisible].BoolValue = false;
|
tl[UIBoolJoin.TopBarVisible].BoolValue = false;
|
||||||
TriList.BooleanInput[UIBoolJoin.StartPageVisible].BoolValue = false;
|
tl[UIBoolJoin.ActivityFooterVisible].BoolValue = false;
|
||||||
TriList.BooleanInput[UIBoolJoin.TapToBeginVisible].BoolValue = false;
|
tl[UIBoolJoin.StartPageVisible].BoolValue = false;
|
||||||
TriList.BooleanInput[UIBoolJoin.SelectASourceVisible].BoolValue = false;
|
tl[UIBoolJoin.TapToBeginVisible].BoolValue = false;
|
||||||
//TriList.BooleanInput[UIBoolJoin.StagingPageVisible].BoolValue = false;
|
tl[UIBoolJoin.ToggleSharingModeVisible].BoolValue = false;
|
||||||
|
tl[UIBoolJoin.StagingPageVisible].BoolValue = false;
|
||||||
|
if (IsSharingModeAdvanced)
|
||||||
|
tl[UIBoolJoin.DualDisplayPageVisible].BoolValue = false;
|
||||||
|
else
|
||||||
|
tl[UIBoolJoin.SelectASourceVisible].BoolValue = false;
|
||||||
|
|
||||||
VolumeButtonsPopupFeedback.ClearNow();
|
VolumeButtonsPopupFeedback.ClearNow();
|
||||||
CancelPowerOff();
|
CancelPowerOff();
|
||||||
|
|
||||||
base.Hide();
|
base.Hide();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
///
|
||||||
|
/// </summary>
|
||||||
|
void ShowCurrentSharingMode()
|
||||||
|
{
|
||||||
|
var tlb = TriList.BooleanInput;
|
||||||
|
tlb[UIBoolJoin.ToggleSharingModeVisible].BoolValue = true;
|
||||||
|
tlb[UIBoolJoin.StagingPageVisible].BoolValue = true;
|
||||||
|
if (IsSharingModeAdvanced)
|
||||||
|
{
|
||||||
|
tlb[UIBoolJoin.DualDisplayPageVisible].BoolValue = true;
|
||||||
|
TriList.StringInput[UIStringJoin.Display1TitleLabel].StringValue =
|
||||||
|
(CurrentRoom.Displays[1] as IKeyName).Name;
|
||||||
|
TriList.StringInput[UIStringJoin.Display2TitleLabel].StringValue =
|
||||||
|
(CurrentRoom.Displays[2] as IKeyName).Name;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
tlb[UIBoolJoin.SelectASourceVisible].BoolValue = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
///
|
||||||
|
/// </summary>
|
||||||
|
void HideCurrentSharingMode()
|
||||||
|
{
|
||||||
|
var tl = TriList.BooleanInput;
|
||||||
|
tl[UIBoolJoin.ToggleSharingModeVisible].BoolValue = false;
|
||||||
|
tl[UIBoolJoin.StagingPageVisible].BoolValue = false;
|
||||||
|
tl[UIBoolJoin.DualDisplayPageVisible].BoolValue = false;
|
||||||
|
tl[UIBoolJoin.SelectASourceVisible].BoolValue = false;
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Shows the various "modes" that this driver controls. Presentation, Setup page
|
/// Shows the various "modes" that this driver controls. Presentation, Setup page
|
||||||
@@ -296,51 +360,132 @@ namespace PepperDash.Essentials
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
///// <summary>
|
/// <summary>
|
||||||
/////
|
///
|
||||||
///// </summary>
|
/// </summary>
|
||||||
//void ToggleSharingModePressed()
|
void SetupSourceList()
|
||||||
//{
|
{
|
||||||
// HideSharingMode();
|
// get the source list config and set up the source list
|
||||||
// IsSharingModeAdvanced = !IsSharingModeAdvanced;
|
var config = ConfigReader.ConfigObject.SourceLists;
|
||||||
// TriList.BooleanInput[UIBoolJoin.ToggleSharingModePress].BoolValue = IsSharingModeAdvanced;
|
if (config.ContainsKey(CurrentRoom.SourceListKey))
|
||||||
// RevealSharingMode();
|
{
|
||||||
//}
|
var srcList = config[CurrentRoom.SourceListKey]
|
||||||
|
.Values.ToList().OrderBy(s => s.Order);
|
||||||
|
// Setup sources list
|
||||||
|
uint i = 1; // counter for UI list
|
||||||
|
foreach (var srcConfig in srcList)
|
||||||
|
{
|
||||||
|
if (!srcConfig.IncludeInSourceList) // Skip sources marked this way
|
||||||
|
continue;
|
||||||
|
|
||||||
///// <summary>
|
var sourceKey = srcConfig.SourceKey;
|
||||||
/////
|
var actualSource = DeviceManager.GetDeviceForKey(sourceKey) as Device;
|
||||||
///// </summary>
|
if (actualSource == null)
|
||||||
//void HideSharingMode()
|
{
|
||||||
//{
|
Debug.Console(0, "Cannot assign missing source '{0}' to source UI list",
|
||||||
// TriList.BooleanInput[UIBoolJoin.StagingPageVisible].BoolValue = false;
|
srcConfig.SourceKey);
|
||||||
// if (IsSharingModeAdvanced)
|
continue;
|
||||||
// {
|
}
|
||||||
// if (DualDisplayUiDriver != null)
|
var localSrcItem = srcConfig; // lambda scope below
|
||||||
// DualDisplayUiDriver.Hide();
|
var localIndex = i;
|
||||||
// }
|
SourcesSrl.GetBoolFeedbackSig(i, 1).UserObject = new Action<bool>(b =>
|
||||||
// else
|
{
|
||||||
// {
|
if (IsSharingModeAdvanced)
|
||||||
// TriList.BooleanInput[UIBoolJoin.SelectASourceVisible].BoolValue = false;
|
{
|
||||||
// }
|
if (LastSelectedSourceSig != null)
|
||||||
//}
|
LastSelectedSourceSig.BoolValue = false;
|
||||||
|
SourceListButtonPress(localSrcItem);
|
||||||
|
LastSelectedSourceSig = SourcesSrl.BoolInputSig(localIndex, 1);
|
||||||
|
LastSelectedSourceSig.BoolValue = true;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
CurrentRoom.DoSourceToAllDestinationsRoute(localSrcItem);
|
||||||
|
});
|
||||||
|
SourcesSrl.StringInputSig(i, 1).StringValue = srcConfig.PreferredName;
|
||||||
|
i++;
|
||||||
|
}
|
||||||
|
var count = (ushort)(i-1);
|
||||||
|
SourcesSrl.Count = count;
|
||||||
|
TriList.BooleanInput[UIBoolJoin.StagingPageAdditionalArrowsVisible].BoolValue =
|
||||||
|
count >= Config.SourcesOverflowCount;
|
||||||
|
|
||||||
///// <summary>
|
_CurrentRoom.CurrentDisplay1SourceChange += _CurrentRoom_CurrentDisplay1SourceChange;
|
||||||
/////
|
_CurrentRoom.CurrentDisplay2SourceChange += _CurrentRoom_CurrentDisplay2SourceChange;
|
||||||
///// </summary>
|
}
|
||||||
//void RevealSharingMode()
|
}
|
||||||
//{
|
|
||||||
// TriList.BooleanInput[UIBoolJoin.StagingPageVisible].BoolValue = true;
|
/// <summary>
|
||||||
// if (IsSharingModeAdvanced)
|
///
|
||||||
// {
|
/// </summary>
|
||||||
// if(DualDisplayUiDriver == null)
|
void ToggleSharingModePressed()
|
||||||
// DualDisplayUiDriver = new DualDisplaySimpleOrAdvancedRouting(this);
|
{
|
||||||
// DualDisplayUiDriver.Show();
|
HideCurrentSharingMode();
|
||||||
// }
|
IsSharingModeAdvanced = !IsSharingModeAdvanced;
|
||||||
// else
|
TriList.BooleanInput[UIBoolJoin.ToggleSharingModePress].BoolValue = IsSharingModeAdvanced;
|
||||||
// {
|
ShowCurrentSharingMode();
|
||||||
// TriList.BooleanInput[UIBoolJoin.SelectASourceVisible].BoolValue = true;
|
}
|
||||||
// }
|
|
||||||
//}
|
/// <summary>
|
||||||
|
///
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="item"></param>
|
||||||
|
public void SourceListButtonPress(SourceListItem item)
|
||||||
|
{
|
||||||
|
// start the timer
|
||||||
|
// show FB on potential source
|
||||||
|
TriList.BooleanInput[UIBoolJoin.Display1AudioButtonEnable].BoolValue = false;
|
||||||
|
TriList.BooleanInput[UIBoolJoin.Display1ControlButtonEnable].BoolValue = false;
|
||||||
|
TriList.BooleanInput[UIBoolJoin.Display2AudioButtonEnable].BoolValue = false;
|
||||||
|
TriList.BooleanInput[UIBoolJoin.Display2ControlButtonEnable].BoolValue = false;
|
||||||
|
PendingSource = item;
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
///
|
||||||
|
/// </summary>
|
||||||
|
void EnableAppropriateDisplayButtons()
|
||||||
|
{
|
||||||
|
TriList.BooleanInput[UIBoolJoin.Display1AudioButtonEnable].BoolValue = true;
|
||||||
|
TriList.BooleanInput[UIBoolJoin.Display1ControlButtonEnable].BoolValue = true;
|
||||||
|
TriList.BooleanInput[UIBoolJoin.Display2AudioButtonEnable].BoolValue = true;
|
||||||
|
TriList.BooleanInput[UIBoolJoin.Display2ControlButtonEnable].BoolValue = true;
|
||||||
|
if (LastSelectedSourceSig != null)
|
||||||
|
LastSelectedSourceSig.BoolValue = false;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void Display1Press()
|
||||||
|
{
|
||||||
|
EnableAppropriateDisplayButtons();
|
||||||
|
CurrentRoom.SourceToDisplay1(PendingSource);
|
||||||
|
// Enable end meeting
|
||||||
|
}
|
||||||
|
|
||||||
|
public void Display1AudioPress()
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public void Display1ControlPress()
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public void Display2Press()
|
||||||
|
{
|
||||||
|
EnableAppropriateDisplayButtons();
|
||||||
|
CurrentRoom.SourceToDisplay2(PendingSource);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void Display2AudioPress()
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public void Display2ControlPress()
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// When the room is off, set the footer SRL
|
/// When the room is off, set the footer SRL
|
||||||
@@ -370,7 +515,7 @@ namespace PepperDash.Essentials
|
|||||||
3, b => { if (!b) PowerButtonPressed(); }));
|
3, b => { if (!b) PowerButtonPressed(); }));
|
||||||
ActivityFooterSrl.Count = 3;
|
ActivityFooterSrl.Count = 3;
|
||||||
TriList.UShortInput[UIUshortJoin.PresentationListCaretMode].UShortValue = 2;
|
TriList.UShortInput[UIUshortJoin.PresentationListCaretMode].UShortValue = 2;
|
||||||
EndMeetingButtonSig = ActivityFooterSrl.BoolInputSig(2, 1);
|
EndMeetingButtonSig = ActivityFooterSrl.BoolInputSig(3, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -383,9 +528,7 @@ namespace PepperDash.Essentials
|
|||||||
{
|
{
|
||||||
ShareButtonSig.BoolValue = true;
|
ShareButtonSig.BoolValue = true;
|
||||||
TriList.BooleanInput[UIBoolJoin.StartPageVisible].BoolValue = false;
|
TriList.BooleanInput[UIBoolJoin.StartPageVisible].BoolValue = false;
|
||||||
DualDisplayUiDriver.Show();
|
ShowCurrentSharingMode();
|
||||||
//TriList.BooleanInput[UIBoolJoin.ToggleSharingModeVisible].BoolValue = true;
|
|
||||||
//RevealSharingMode();
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -457,10 +600,10 @@ namespace PepperDash.Essentials
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
void ShowCurrentSource()
|
void ShowCurrentSource()
|
||||||
{
|
{
|
||||||
if (CurrentRoom.CurrentSourceInfo == null)
|
if (CurrentRoom.CurrentSingleSourceInfo == null)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
var uiDev = CurrentRoom.CurrentSourceInfo.SourceDevice as IUiDisplayInfo;
|
var uiDev = CurrentRoom.CurrentSingleSourceInfo.SourceDevice as IUiDisplayInfo;
|
||||||
PageManager pm = null;
|
PageManager pm = null;
|
||||||
// If we need a page manager, get an appropriate one
|
// If we need a page manager, get an appropriate one
|
||||||
if (uiDev != null)
|
if (uiDev != null)
|
||||||
@@ -483,21 +626,6 @@ namespace PepperDash.Essentials
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
///// <summary>
|
|
||||||
///// Called from button presses on source, where We can assume we want
|
|
||||||
///// to change to the proper screen.
|
|
||||||
///// </summary>
|
|
||||||
///// <param name="key">The key name of the route to run</param>
|
|
||||||
//void UiSelectSource(SourceListItem sourceItem)
|
|
||||||
//{
|
|
||||||
// if (IsSharingModeAdvanced)
|
|
||||||
// {
|
|
||||||
// DualDisplayUiDriver.SourceListButtonPress(sourceItem);
|
|
||||||
// }
|
|
||||||
// else
|
|
||||||
// CurrentRoom.DoSourceToAllDestinationsRoute(sourceItem);
|
|
||||||
//}
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
///
|
///
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@@ -517,7 +645,9 @@ namespace PepperDash.Essentials
|
|||||||
but =>
|
but =>
|
||||||
{
|
{
|
||||||
if (but != 2)
|
if (but != 2)
|
||||||
|
{
|
||||||
CurrentRoom.DoSourceToAllDestinationsRoute(null);
|
CurrentRoom.DoSourceToAllDestinationsRoute(null);
|
||||||
|
}
|
||||||
else
|
else
|
||||||
ShareButtonSig.BoolValue = true; // restore Share fb
|
ShareButtonSig.BoolValue = true; // restore Share fb
|
||||||
EndMeetingButtonSig.BoolValue = false;
|
EndMeetingButtonSig.BoolValue = false;
|
||||||
@@ -609,22 +739,25 @@ namespace PepperDash.Essentials
|
|||||||
_CurrentRoom.OnFeedback.OutputChange -= _CurrentRoom_OnFeedback_OutputChange;
|
_CurrentRoom.OnFeedback.OutputChange -= _CurrentRoom_OnFeedback_OutputChange;
|
||||||
_CurrentRoom.CurrentVolumeDeviceChange -= this._CurrentRoom_CurrentAudioDeviceChange;
|
_CurrentRoom.CurrentVolumeDeviceChange -= this._CurrentRoom_CurrentAudioDeviceChange;
|
||||||
ClearAudioDeviceConnections();
|
ClearAudioDeviceConnections();
|
||||||
_CurrentRoom.CurrentSourceInfoChange -= this._CurrentRoom_SourceInfoChange;
|
_CurrentRoom.CurrentSingleSourceChange -= this._CurrentRoom_SourceInfoChange;
|
||||||
DisconnectSource(_CurrentRoom.CurrentSourceInfo);
|
DisconnectSource(_CurrentRoom.CurrentSingleSourceInfo);
|
||||||
}
|
}
|
||||||
_CurrentRoom = room;
|
_CurrentRoom = room;
|
||||||
|
|
||||||
if (_CurrentRoom != null)
|
if (_CurrentRoom != null)
|
||||||
{
|
{
|
||||||
DualDisplayUiDriver.SetCurrentRoomFromParent();
|
if (IsSharingModeAdvanced)
|
||||||
//SetupSourcesForSimpleRouting();
|
{} // add stuff here
|
||||||
|
else
|
||||||
|
SetupSourceList();
|
||||||
|
|
||||||
TriList.StringInput[UIStringJoin.CurrentRoomName].StringValue = _CurrentRoom.Name;
|
TriList.StringInput[UIStringJoin.CurrentRoomName].StringValue = _CurrentRoom.Name;
|
||||||
|
|
||||||
// Link up all the change events from the room
|
// Link up all the change events from the room
|
||||||
_CurrentRoom.OnFeedback.OutputChange += _CurrentRoom_OnFeedback_OutputChange;
|
_CurrentRoom.OnFeedback.OutputChange += _CurrentRoom_OnFeedback_OutputChange;
|
||||||
_CurrentRoom.CurrentVolumeDeviceChange += _CurrentRoom_CurrentAudioDeviceChange;
|
_CurrentRoom.CurrentVolumeDeviceChange += _CurrentRoom_CurrentAudioDeviceChange;
|
||||||
RefreshAudioDeviceConnections();
|
RefreshAudioDeviceConnections();
|
||||||
_CurrentRoom.CurrentSourceInfoChange += _CurrentRoom_SourceInfoChange;
|
_CurrentRoom.CurrentSingleSourceChange += _CurrentRoom_SourceInfoChange;
|
||||||
RefreshSourceInfo();
|
RefreshSourceInfo();
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@@ -648,44 +781,31 @@ namespace PepperDash.Essentials
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
DualDisplayUiDriver.Hide();
|
HideCurrentSharingMode();
|
||||||
SetupActivityFooterWhenRoomOff();
|
SetupActivityFooterWhenRoomOff();
|
||||||
TriList.BooleanInput[UIBoolJoin.StartPageVisible].BoolValue = true;
|
TriList.BooleanInput[UIBoolJoin.StartPageVisible].BoolValue = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//void SetupSourcesForSimpleRouting()
|
/// <summary>
|
||||||
//{
|
///
|
||||||
// // get the source list config and set up the source list
|
/// </summary>
|
||||||
// var config = ConfigReader.ConfigObject.SourceLists;
|
void _CurrentRoom_CurrentDisplay1SourceChange(EssentialsRoomBase room, SourceListItem info, ChangeType type)
|
||||||
// if (config.ContainsKey(_CurrentRoom.SourceListKey))
|
{
|
||||||
// {
|
if (type == ChangeType.DidChange)
|
||||||
// var srcList = config[_CurrentRoom.SourceListKey]
|
TriList.StringInput[UIStringJoin.Display1SourceLabel].StringValue =
|
||||||
// .Values.ToList().OrderBy(s => s.Order);
|
info == null ? "" : info.PreferredName;
|
||||||
// // Setup sources list
|
}
|
||||||
// uint i = 1; // counter for UI list
|
|
||||||
// foreach (var srcConfig in srcList)
|
|
||||||
// {
|
|
||||||
// if (!srcConfig.IncludeInSourceList) // Skip sources marked this way
|
|
||||||
// continue;
|
|
||||||
|
|
||||||
// var sourceKey = srcConfig.SourceKey;
|
/// <summary>
|
||||||
// var actualSource = DeviceManager.GetDeviceForKey(sourceKey) as Device;
|
///
|
||||||
// if (actualSource == null)
|
/// </summary>
|
||||||
// {
|
void _CurrentRoom_CurrentDisplay2SourceChange(EssentialsRoomBase room, SourceListItem info, ChangeType type)
|
||||||
// Debug.Console(0, "Cannot assign missing source '{0}' to source UI list",
|
{
|
||||||
// srcConfig.SourceKey);
|
if (type == ChangeType.DidChange)
|
||||||
// continue;
|
TriList.StringInput[UIStringJoin.Display2SourceLabel].StringValue =
|
||||||
// }
|
info == null ? "" : info.PreferredName;
|
||||||
// var localSrcConfig = srcConfig; // lambda scope below
|
}
|
||||||
// var item = new SubpageReferenceListSourceItem(i++, SourcesSrl, srcConfig,
|
|
||||||
// b => { if (!b) UiSelectSource(localSrcConfig); });
|
|
||||||
// SourcesSrl.AddItem(item); // add to the SRL
|
|
||||||
// item.RegisterForSourceChange(_CurrentRoom);
|
|
||||||
// }
|
|
||||||
// SourcesSrl.Count = (ushort)(i - 1);
|
|
||||||
// }
|
|
||||||
//}
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Hides source for provided source info
|
/// Hides source for provided source info
|
||||||
@@ -735,7 +855,7 @@ namespace PepperDash.Essentials
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
void RefreshSourceInfo()
|
void RefreshSourceInfo()
|
||||||
{
|
{
|
||||||
var routeInfo = CurrentRoom.CurrentSourceInfo;
|
var routeInfo = CurrentRoom.CurrentSingleSourceInfo;
|
||||||
// This will show off popup too
|
// This will show off popup too
|
||||||
if (this.IsVisible)
|
if (this.IsVisible)
|
||||||
ShowCurrentSource();
|
ShowCurrentSource();
|
||||||
@@ -749,7 +869,7 @@ namespace PepperDash.Essentials
|
|||||||
Parent.Show();
|
Parent.Show();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
else if (CurrentRoom.CurrentSourceInfo != null)
|
else if (CurrentRoom.CurrentSingleSourceInfo != null)
|
||||||
{
|
{
|
||||||
TriList.StringInput[UIStringJoin.CurrentSourceName].StringValue = routeInfo.PreferredName;
|
TriList.StringInput[UIStringJoin.CurrentSourceName].StringValue = routeInfo.PreferredName;
|
||||||
TriList.StringInput[UIStringJoin.CurrentSourceIcon].StringValue = routeInfo.Icon; // defaults to "blank"
|
TriList.StringInput[UIStringJoin.CurrentSourceIcon].StringValue = routeInfo.Icon; // defaults to "blank"
|
||||||
|
|||||||
@@ -64,7 +64,7 @@ namespace PepperDash.Essentials
|
|||||||
parent.SetItemMainText(index, room.Name);
|
parent.SetItemMainText(index, room.Name);
|
||||||
UpdateItem(room.CurrentSourceInfo);
|
UpdateItem(room.CurrentSourceInfo);
|
||||||
// Watch for later changes
|
// Watch for later changes
|
||||||
room.CurrentSourceInfoChange += new SourceInfoChangeHandler(room_CurrentSourceInfoChange);
|
room.CurrentSingleSourceChange += new SourceInfoChangeHandler(room_CurrentSourceInfoChange);
|
||||||
parent.SetItemButtonAction(index, buttonAction);
|
parent.SetItemButtonAction(index, buttonAction);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -178,6 +178,7 @@ namespace PepperDash.Essentials
|
|||||||
public const uint CurrentSourceIcon = 3903;
|
public const uint CurrentSourceIcon = 3903;
|
||||||
public const uint PowerOffMessage = 3911;
|
public const uint PowerOffMessage = 3911;
|
||||||
public const uint StartPageMessage = 3912;
|
public const uint StartPageMessage = 3912;
|
||||||
|
public const uint StartActivityText = 3913;
|
||||||
public const uint HelpMessage = 3922;
|
public const uint HelpMessage = 3922;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|||||||
@@ -11,5 +11,15 @@
|
|||||||
public bool UsesSplashPage { get; set; }
|
public bool UsesSplashPage { get; set; }
|
||||||
public bool ShowDate { get; set; }
|
public bool ShowDate { get; set; }
|
||||||
public bool ShowTime { get; set; }
|
public bool ShowTime { get; set; }
|
||||||
|
/// <summary>
|
||||||
|
/// The count of sources that will trigger the "additional" arrows to show on the SRL.
|
||||||
|
/// Defaults to 5
|
||||||
|
/// </summary>
|
||||||
|
public int SourcesOverflowCount { get; set; }
|
||||||
|
|
||||||
|
public CrestronTouchpanelPropertiesConfig()
|
||||||
|
{
|
||||||
|
SourcesOverflowCount = 5;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1,65 +1,65 @@
|
|||||||
//using System;
|
using System;
|
||||||
//using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
//using System.Linq;
|
using System.Linq;
|
||||||
//using System.Text;
|
using System.Text;
|
||||||
//using Crestron.SimplSharp;
|
using Crestron.SimplSharp;
|
||||||
//using Crestron.SimplSharpPro;
|
using Crestron.SimplSharpPro;
|
||||||
//using Crestron.SimplSharpPro.UI;
|
using Crestron.SimplSharpPro.UI;
|
||||||
|
|
||||||
//using PepperDash.Essentials.Core;
|
using PepperDash.Essentials.Core;
|
||||||
|
|
||||||
//namespace PepperDash.Essentials
|
namespace PepperDash.Essentials
|
||||||
//{
|
{
|
||||||
// public class SubpageReferenceListSourceItem : SubpageReferenceListItem
|
public class SubpageReferenceListSourceItem : SubpageReferenceListItem
|
||||||
// {
|
{
|
||||||
// public SourceListItem SourceItem { get; private set; }
|
public SourceListItem SourceItem { get; private set; }
|
||||||
|
|
||||||
// public SubpageReferenceListSourceItem(uint index, SubpageReferenceList owner,
|
public SubpageReferenceListSourceItem(uint index, SubpageReferenceList owner,
|
||||||
// SourceListItem sourceItem, Action<bool> routeAction)
|
SourceListItem sourceItem, Action<bool> routeAction)
|
||||||
// : base(index, owner)
|
: base(index, owner)
|
||||||
// {
|
{
|
||||||
// SourceItem = sourceItem;
|
SourceItem = sourceItem;
|
||||||
// owner.GetBoolFeedbackSig(index, 1).UserObject = new Action<bool>(routeAction);
|
owner.GetBoolFeedbackSig(index, 1).UserObject = new Action<bool>(routeAction);
|
||||||
// owner.StringInputSig(index, 1).StringValue = SourceItem.PreferredName;
|
owner.StringInputSig(index, 1).StringValue = SourceItem.PreferredName;
|
||||||
// }
|
}
|
||||||
|
|
||||||
// public void RegisterForSourceChange(IHasCurrentSourceInfoChange room)
|
public void RegisterForSourceChange(IHasCurrentSourceInfoChange room)
|
||||||
// {
|
{
|
||||||
// room.CurrentSourceInfoChange -= room_CurrentSourceInfoChange;
|
room.CurrentSingleSourceChange -= room_CurrentSourceInfoChange;
|
||||||
// room.CurrentSourceInfoChange += room_CurrentSourceInfoChange;
|
room.CurrentSingleSourceChange += room_CurrentSourceInfoChange;
|
||||||
// }
|
}
|
||||||
|
|
||||||
// void room_CurrentSourceInfoChange(EssentialsRoomBase room, SourceListItem info, ChangeType type)
|
void room_CurrentSourceInfoChange(EssentialsRoomBase room, SourceListItem info, ChangeType type)
|
||||||
// {
|
{
|
||||||
// if (type == ChangeType.WillChange && info == SourceItem)
|
if (type == ChangeType.WillChange && info == SourceItem)
|
||||||
// ClearFeedback();
|
ClearFeedback();
|
||||||
// else if (type == ChangeType.DidChange && info == SourceItem)
|
else if (type == ChangeType.DidChange && info == SourceItem)
|
||||||
// SetFeedback();
|
SetFeedback();
|
||||||
// }
|
}
|
||||||
|
|
||||||
// /// <summary>
|
/// <summary>
|
||||||
// /// Called by SRL to release all referenced objects
|
/// Called by SRL to release all referenced objects
|
||||||
// /// </summary>
|
/// </summary>
|
||||||
// public override void Clear()
|
public override void Clear()
|
||||||
// {
|
{
|
||||||
// Owner.BoolInputSig(Index, 1).UserObject = null;
|
Owner.BoolInputSig(Index, 1).UserObject = null;
|
||||||
// Owner.StringInputSig(Index, 1).StringValue = "";
|
Owner.StringInputSig(Index, 1).StringValue = "";
|
||||||
// }
|
}
|
||||||
|
|
||||||
// /// <summary>
|
/// <summary>
|
||||||
// /// Sets the selected feedback on the button
|
/// Sets the selected feedback on the button
|
||||||
// /// </summary>
|
/// </summary>
|
||||||
// public void SetFeedback()
|
public void SetFeedback()
|
||||||
// {
|
{
|
||||||
// Owner.BoolInputSig(Index, 1).BoolValue = true;
|
Owner.BoolInputSig(Index, 1).BoolValue = true;
|
||||||
// }
|
}
|
||||||
|
|
||||||
// /// <summary>
|
/// <summary>
|
||||||
// /// Clears the selected feedback on the button
|
/// Clears the selected feedback on the button
|
||||||
// /// </summary>
|
/// </summary>
|
||||||
// public void ClearFeedback()
|
public void ClearFeedback()
|
||||||
// {
|
{
|
||||||
// Owner.BoolInputSig(Index, 1).BoolValue = false;
|
Owner.BoolInputSig(Index, 1).BoolValue = false;
|
||||||
// }
|
}
|
||||||
// }
|
}
|
||||||
//}
|
}
|
||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -10,8 +10,8 @@
|
|||||||
<ArchiveName />
|
<ArchiveName />
|
||||||
</RequiredInfo>
|
</RequiredInfo>
|
||||||
<OptionalInfo>
|
<OptionalInfo>
|
||||||
<CompiledOn>2/16/2017 3:45:04 PM</CompiledOn>
|
<CompiledOn>2/20/2017 5:05:08 PM</CompiledOn>
|
||||||
<CompilerRev>1.0.0.28239</CompilerRev>
|
<CompilerRev>1.0.0.30753</CompilerRev>
|
||||||
</OptionalInfo>
|
</OptionalInfo>
|
||||||
<Plugin>
|
<Plugin>
|
||||||
<Version>Crestron.SIMPLSharp, Version=2.0.48.0, Culture=neutral, PublicKeyToken=812d080f93e2de10</Version>
|
<Version>Crestron.SIMPLSharp, Version=2.0.48.0, Culture=neutral, PublicKeyToken=812d080f93e2de10</Version>
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
MainAssembly=PepperDashEssentials.dll:5deb13632556e8d5c82a54c2bb816ea0
|
MainAssembly=PepperDashEssentials.dll:0b867fd313ed2c071ddab7aa55521c8b
|
||||||
MainAssemblyMinFirmwareVersion=1.009.0029
|
MainAssemblyMinFirmwareVersion=1.009.0029
|
||||||
MainAssemblyResource=SimplSharpData.dat:820b61c48c8a2cace82957eed4cc377c
|
MainAssemblyResource=SimplSharpData.dat:820b61c48c8a2cace82957eed4cc377c
|
||||||
ü
|
ü
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Reference in New Issue
Block a user