5. Key calls
//*******************************************************************************************/
PUSH Key
{
INTEGER index;
STRING Temp$[255];
SIGNED_INTEGER Status;
If(PcPowerOffWaitFlag) ReTimeWait(300, PcPowerOffWait);
If(CommBusy) Terminateevent;
index = GetLastModifiedArrayIndex();
print("BtnPress=%u\n", index);
Switch(index)
{
Case(1): Call Connect("ExecBuiltIn(Action(Stop))", 0);
Case(2): Call Connect("getGUIStatus", 0);
Case(3): { Call Connect("ExecBuiltIn(Action(Pause))", 0); PlayingSpeed$ = "1x"; }
Case(4):
{
IF(PlaySpeed<1) PlaySpeed=1;
Else PlaySpeed=PlaySpeed*2;
IF(PlaySpeed>32) PlaySpeed=32;
Makestring(Temp$, "SetPlaySpeed(%d)", PlaySpeed);
Makestring(PlayingSpeed$, "%ux", PlaySpeed);
Switch(PlaySpeed)
{
Case(1): TransportIcon=1;
Case(2): TransportIcon=4; Case(4): TransportIcon=5; Case(8): TransportIcon=6; Case(16): TransportIcon=7; Case(32): TransportIcon=8;
Case(-2): TransportIcon=9; Case(-4): TransportIcon=10; Case(-8): TransportIcon=11; Case(-16): TransportIcon=12; Case(-32): TransportIcon=13;
}
Call Connect(Temp$, 0);
}
Case(5):
{
IF(PlaySpeed=0) PlaySpeed=-1;
IF(PlaySpeed=1) PlaySpeed=-1;
IF(PlaySpeed>0) PlaySpeed=1;
Else PlaySpeed=PlaySpeed*2;
IF(PlaySpeed<-32) PlaySpeed=-32;
Makestring(Temp$, "SetPlaySpeed(%d)", PlaySpeed);
Makestring(PlayingSpeed$, "%dx", PlaySpeed);
Switch(PlaySpeed)
{
Case(1): TransportIcon=1;
Case(2): TransportIcon=4; Case(4): TransportIcon=5; Case(8): TransportIcon=6; Case(16): TransportIcon=7; Case(32): TransportIcon=8;
Case(-2): TransportIcon=9; Case(-4): TransportIcon=10; Case(-8): TransportIcon=11; Case(-16): TransportIcon=12; Case(-32): TransportIcon=13;
}
Call Connect(Temp$, 0);
}
Case(6):
{
If(PlayFb) {PlaySpeed=1; Makestring(PlayingSpeed$, "%ux", PlaySpeed); Call Connect("SetPlaySpeed(1)", 0); }
If(PauseFb || StopFb){Call Connect("ExecBuiltIn(Action(Play))", 0); PlayingSpeed$ = "1x"; }
}
Case(7): Call Connect("SendKey(0xF051)", 0); //esc
Case(8): Call SendLyrics(1);
Case(9): Call SendLyrics(2);
Case(10): Call Connect("ExecBuiltIn(Action(AspectRatio))", 0);
Case(11): Call Connect("ExecBuiltIn(Action(PreviousMenu))", 0);
Case(12):
{
If(ActiveWindow=10025)
{
If(VideoNavHighlightFb) Call Connect("ExecBuiltIn(Action(Info))", 0);
Else { Call SendEventServer("up", BtnPress); }
}
Else Call Connect("ExecBuiltIn(Action(Info))", 0);
}
Case(13): Call Connect("ExecBuiltIn(Action(ShowSubtitles))", 0);
Case(14): Call Connect("ExecBuiltIn(Action(NextSubtitle))", 0);//
Case(15): Call Connect("ExecBuiltIn(Action(AudioNextLanguage))", 0);//
Case(16): Call Connect("ExecBuiltIn(Action(AudioDelayPlus))", 0);//
Case(17): Call Connect("ExecBuiltIn(Action(AudioDelayMinus))", 0);//
Case(18): Call Connect("ExecBuiltIn(Action(SubtitleDelayPlus))", 0);//
Case(19): Call Connect("ExecBuiltIn(Action(SubtitleDelayMinus))", 0);//
Case(20): Call SendEventServer("up", BtnPress);
Case(21):
{
If(ActiveWindow=10025)
{
If(VideoNavHighlightFb) Call SendEventServer("down", BtnPress);
}
Else Call SendEventServer("down", BtnPress);
}
Case(22):
{
If(!(ActiveWindow=10502 && ControlId=50) && !(ActiveWindow=10502 && ControlId=506))
{
Call SendEventServer("left", BtnPress);
}
}
Case(23):
{
If(!(ActiveWindow=10502 && ControlId=50) && !(ActiveWindow=10502 && ControlId=506))
{
Call SendEventServer("right", BtnPress);
}
}
Case(24):
{
If(HaltSelect = 0)
{
If(ActiveWindow=10025)
{
If(VideoNavHighlightFb) { Call SendEventServer("return", BtnPress); }
Else { Call SendEventServer("up", BtnPress); }
}
Else { If(ActiveWindow<>12005 && ActiveWindow<>12006) Call SendEventServer("return", BtnPress); }
}
Else Wait(200) {HaltSelect = 0;}
}
Case(25): Call SendEventServer("pageup", BtnPress); //Call Connect("ExecBuiltIn(Action(PageUp))", 0);//
Case(26): Call SendEventServer("pagedown", BtnPress); //Call Connect("ExecBuiltIn(Action(PageDown))", 0);//
Case(27): Call Connect("ExecBuiltIn(Action(Highlight))", 0);//
Case(28): Call Connect("ExecBuiltIn(Action(ParentDir))", 0);//
Case(29): Call Connect("ExecBuiltIn(Action(OSD))", 0);//
Case(30): Call Connect("ExecBuiltIn(Action(ShowVideoMenu))", 0);
Case(31): Call Connect("ExecBuiltIn(Action(ContextMenu))", 0);
Case(32): Call Connect("ExecBuiltIn(Action(NextPicture))", 0);
Case(33): Call Connect("ExecBuiltIn(Action(PreviousPicture))", 0);
Case(34): Call Connect("ExecBuiltIn(Action(ZoomOut))", 0);
Case(35): Call Connect("ExecBuiltIn(Action(ZoomIn))", 0);
Case(36): Call Connect("ExecBuiltIn(Action(ZoomNormal))", 0);
Case(37): Call Connect("ExecBuiltIn(Action(Rotate))", 0);
Case(38): Call Connect("ExecBuiltIn(Action(FullScreen))", 0);
Case(39): Call Connect("ExecBuiltIn(Action(ShowTime))", 0);
Case(40): Call Connect("ExecBuiltIn(Action(NextLetter))", 0);
Case(41): Call Connect("ExecBuiltIn(Action(PrevLetter))", 0);
Case(42): Call Connect("ExecBuiltIn(ActivateWindow(musiclibrary,artists,12600))", 0); //ActivateWindow(10025,movietitles))
Case(43): Call Connect("ExecBuiltIn(ActivateWindow(musiclibrary,albums,12600))", 0);//10502,albums)
Case(44): Call Connect("ExecBuiltIn(ActivateWindow(musiclibrary,genres,12600))", 0); //(10002)
Case(45): Call Connect("ExecBuiltIn(ActivateWindow(Weather, 12600))", 0);//10000)
Case(46): Call Connect("ExecBuiltIn(Action(StepForward))", 0);
Case(47): Call Connect("ExecBuiltIn(Action(StepBack))", 0);
Case(48): Call Connect("ExecBuiltIn(Action(BigStepForward))", 0);
Case(49): Call Connect("ExecBuiltIn(Action(BigStepBack))", 0);
Case(50): Call Connect("ExecBuiltIn(Action(SmallStepBack))", 0);
Case(51): Call Connect("ExecBuiltIn(Action(SkipNext))", 0);
Case(52): Call Connect("ExecBuiltIn(Action(SkipPrevious))", 0);
Case(53): Call Connect("ExecBuiltIn(Action(CodecInfo))", 0);
Case(54): Call Connect("ExecBuiltIn(Action(Number0))", 0);
Case(55): Call Connect("ExecBuiltIn(Action(Number1))", 0);
Case(56): Call Connect("ExecBuiltIn(Action(Number2))", 0);
Case(57): Call Connect("ExecBuiltIn(Action(Number3))", 0);
Case(58): Call Connect("ExecBuiltIn(Action(Number4))", 0);
Case(59): Call Connect("ExecBuiltIn(Action(Number5))", 0);
Case(60): Call Connect("ExecBuiltIn(Action(Number6))", 0);
Case(61): Call Connect("ExecBuiltIn(Action(Number7))", 0);
Case(62): Call Connect("ExecBuiltIn(Action(Number8))", 0);
Case(63): Call Connect("ExecBuiltIn(Action(Number9))", 0);
Case(64): Call Connect("ExecBuiltIn(Action(Play))", 0);
Case(65): Call Connect("ExecBuiltIn(Action(HideSubmenu))", 0);
Case(66): Call Connect("ExecBuiltIn(Action(NextResolution))", 0);
Case(67): Call Connect("ExecBuiltIn(Action(ResetCalibration))", 0);
Case(68): Call Connect("ExecBuiltIn(Action(Close))", 1);
Case(69): Call Connect("SetVolume(75)", 0);
Case(70): Call Connect("SetVolume(100)", 0);
Case(71): Call Connect("ExecBuiltIn(Container.NextViewMode)", 0);
Case(72): Call Connect("ExecBuiltIn(Container.PreviousViewMode)", 0);
Case(73): Call Connect("ExecBuiltIn(Container.NextSortMethod)", 0);
Case(74): Call Connect("ExecBuiltIn(Container.PreviousSortMethod)", 0);
Case(75): Call Connect("ExecBuiltIn(Container.SortDirection)", 0);
Case(76): Call Connect("ExecBuiltIn(EjectTray())", 0);
Case(77): Call Connect("getcurrentlyplaying", 0);
Case(78): Call Connect("ExecBuiltIn(ActivateWindow(videolibrary,tvshowtitles))", 0);
Case(79): Call Connect("Action(142)", 0);
Case(80): Call Connect("Action(143)", 0);
Case(81): Call Connect("Action(144)", 0);
Case(82): Call Connect("Action(145)", 0);
Case(83): Call Connect("Action(146)", 0);
Case(84): Call Connect("Action(147)", 0);
Case(85): Call Connect("Action(148)", 0);
Case(86): Call Connect("Action(149)", 0);
Case(87): Call Connect("ExecBuiltIn(Action(SmallStepForward))", 0);
Case(88):
{
Makestring(Temp$, "ExecBuiltIn(ActivateWindow(10002,%s))", CurrFolderPath[CurrFolder]);
CurrXbmcWindow = 5;
Temp$ = RepleaceSpace(Temp$);
Call Connect(Temp$, 1);
}
Case(89): Call Connect("ExecBuiltIn(PlayerControl(RandomOn))", 0);
Case(90): Call Connect("ExecBuiltIn(PlayerControl(RandomOff))", 0);
Case(91): Call Connect("ExecBuiltIn(PlayerControl(RepeatOne))", 0);
Case(92): Call Connect("ExecBuiltIn(PlayerControl(RepeatAll))", 0);
Case(93): Call Connect("ExecBuiltIn(PlayerControl(RepeatOff))", 0);
Case(94): Call Connect("Action(200)", 0);
Case(95):
{
If(VideoNavHighlightFb=0 && ActiveWindow=10025) { Call SendEventServer("up", BtnPress); Delay(20); }
Call SendEventServer("backspace", BtnPress); //Call Connect("Action(9)", 0);//bkspc
}
Case(96): Call Connect("ExecBuiltIn(ActivateWindow(musiclibrary,lastfm://,12600))", 0);
Case(97): Call Connect("ExecBuiltIn(ActivateWindow(10000))", 1);//home Call SendEventServer("escape", BtnPress); //
}
}