GoPal 4 Gyrosimulation
Inhaltsverzeichnis
Gyro-Sim Funktion einbauen in den Skin (480x272)
In der PFSkin oben unter Bitmaps zuerst folgende Einträge hinzufügen
420: PPSkin\GyroGps.png; //added 421: PPSkin\gyros_inaktiv.png; //added 422: PPSkin\gyros_aktiv.png; //added 423: PPSkin\RunderButton.png; //added 428: PPSkin\gyro_nav_start.png; //added 436: PPSkin\Simu_Aktiv.png; // added
Nun im Abschnitt „Route_options“ folgendes einfügen am Ende:
Gyro_Button { Class: LauncherButton; Coordinates: 275,15,10,10; Navigatable: no; Layer: OnTop; launch: $MORT_PFAD$\NR_gyrostart.exe; Enabled: 0,0,0,200,20,0,0,255,0,255; Pushed: 0,0,40,200,20,2,2,255,0,255; Icon: 0,0,0,30,30,5,5,255,0,255; }
Als nächstes im Abschnitt „mapview“ folgendes einfügen
ziemlich am Anfang des Abschnitts nach „panel“
Container_gyro_button { Class: SkinContainer; Form: SF_gyro_button; }
ganz am Ende des Abschnitts direkt vor „mapview_splitscreen“:
Container_gyro { Class: SkinContainer; Form: SF_gyro; }
die selben Eintrage erstellt ihr im Abschnitt „mapview_splitscreen“ und „TurnByTurn“
Als nächstes fügt ihr folgende Einträge ganz unten an die PFSkin mit an:
SF_gyro_button { // SkinElementModelCoder Class: SkinContainer; Coordinates: 0,0,480,272; TapMode: TapThrough; //Layer: OnTop; // FormModelCoder DynamicFormX: 0; DynamicFormY: 0; DynamicFormWidth: 50; DynamicFormHeight: 50; // SkinContainerModelCoder // SkinScrollbarOwnerModelCoder
Hinweis: Solltet ihr ein Navi mit Telefonfunktion haben, müsst ihr diese 2 Buttons nach unten verschieben, da sonst der Dailer Button unsere überlagert.
GyroAktivierung { Class: LauncherButton; Coordinates: 0,96,56,60; Enabled: 423,0,0,40,40,6,10,255,0,255; Pushed: 423,0,0,40,40,6,10,255,0,255; Icon: 421,0,0,22,22,16,19; PYOffset: 2; BGMode: Transparent; launch: "$KOORD_PFAD$"; params: "window=0 RegKeyMode=2 SendKey=\0x73\c-200,280,20\0x72\| RegKey=Software\Navirunner,Autogyros"; } GyroAnzeige { Class: LaunchFromRegistryButton; Coordinates: 0,96,56,60; Enabled: 423,0,0,40,40,6,10,255,0,255; Pushed: 423,0,0,40,40,6,10,255,0,255; Icon: 422,0,0,30,30,12,15,255,0,255; Navigatable: no; TapMode: TapThrough; BGMode: transparent; Registry: "HKCU,Software\Navirunner,Autogyros"; HideOnNonExistentRegistryEntry: yo; } } SF_gyro { // SkinElementModelCoder Class: SkinContainer; Coordinates: 0,0,480,272; TapMode: TapThrough; Layer: OnTop; // FormModelCoder DynamicFormX: 0; DynamicFormY: 0; DynamicFormWidth: 50; DynamicFormHeight: 50; // SkinContainerModelCoder // SkinScrollbarOwnerModelCoder Button_Stop { Class: PushButton; Layer: OnTop; Navigatable: no; Coordinates: 120,0,3,3; Enabled: 0,0,0,3,3,0,0; Pushed: 0,0,0,5,5,0,0; PressedEvent: 12; } Button_Start { Class: PushButton; Coordinates: 130,0,3,3; Layer: OnTop; Navigatable: no; Enabled: 0,0,0,3,3,0,0; Pushed: 0,0,0,5,5,0,0; PressedEvent: 11; } Button_Start { Class: PushButton; Coordinates: 140,0,5,5; Layer: OnTop; Navigatable: no; Enabled: 0,0,0,3,3,0,0; Pushed: 0,0,0,5,5,0,0; PressedEvent: 39; } Button_Stop { Class: PushButton; Layer: OnTop; Navigatable: no; Coordinates: 150,0,5,5; Enabled: 0,0,0,3,3,0,0; Pushed: 0,0,0,5,5,0,0; PressedEvent: 40; } gyro_gps_button { Class: NStateButton; Coordinates: 479,220,2,2; Layer: OnTop; Navigatable: no; // NStateButtonModelCoder States: 14; StateChangeOnTap: disable; Icon1: 420,0,0,1,1,0,0,255,0,255; Icon2: 420,0,0,1,1,0,0,255,0,255; Icon3: 420,0,0,1,1,0,0,255,0,255; Icon4: 420,0,0,1,1,0,0,255,0,255; Icon5: 0,0,2,1,1,0,0,255,0,255; Icon6: 0,0,2,1,1,0,0,255,0,255; Icon7: 0,0,4,1,1,0,0,255,0,255; Icon8: 0,0,4,1,1,0,0,255,0,255; Icon9: 0,0,4,1,1,0,0,255,0,255; Icon10: 0,0,6,1,1,0,0,255,0,255; Icon11: 0,0,6,1,1,0,0,255,0,255; Icon12: 0,0,6,1,1,0,0,255,0,255; Icon13: 0,0,6,1,1,0,0,255,0,255; Icon14: 0,0,6,1,1,0,0,255,0,255; MinValue: -1; MaxValue: 12; CurrentValue#DP: 65544; //_OUT_POS_SATELLITES } Simu_Aktiv_button { Class: SkinIcon; Coordinates: 479,218,2,2; Layer: OnTop; Navigatable: no; BitmapReference: 436,0,0,1,1,0,0; Visibility#DP: 3801124; } }
somit sind alle notwendigen Änderungen in der PFSkin vorhanden.
Jetzt müsst ihr noch in der „PFSpecial.skn“ dies einfügen am besten ans Ende!
Achtet dabei aber auf den korrekten Pfad.
Defines { KOORD_PFAD: "\Storage Card\programme\koord465.exe"; MORT_PFAD: "\Storage Card\progamme\MortScript"; }
In der Funktion „System“ fügt ihr noch bei „GlobalHK:“ diese 2 "Hardwaretasten-Events" mit ein.
F3@ThrowEvent.2621443,F4@ThrowEvent.2490403
damit wären die Änderungen abgeschlossen.
Zusätzlich braucht ihr noch 2 Programme: MortScript und Koord465
Nun müsst ihr noch:
- Diese Datei downloaden und entpacken und die PNGs in den Ordner MFD\navigation\Skin480x272\PPSkin einfügen.
Alternativ könnt ihr auch diese Grafik verwenden. Ihr müsst dann aber euren Code dementsprechend anpassen.
- das Mortscript in den Ordner MFD\programme\mortscript einfügen,
- die geänderte PFSkin wieder auf das Navi kopieren in den Ordner MFD\ navigation\Skin480x272,
- einen SoftReset machen und die Navigation starten.
Jetzt habt ihr in der Karte den Gyro Button und könnt diesen an und aus schalten.
Diskussionsthread im Forum dazu
Viel Spass damit.
Gyro-Sim Funktion einbauen in den Skin (320x240)
In der PFSkin oben unter Bitmaps zuerst folgende Einträge hinzufügen
420: PPSkin\GyroGps.png; //added 421: PPSkin\gyros_inaktiv.png; //added 422: PPSkin\gyros_aktiv.png; //added 423: PPSkin\RunderButton.png; //added 428: PPSkin\gyro_nav_start.png; //added 436: PPSkin\Simu_Aktiv.png; // added
Nun im Abschnitt „Route_options“ folgendes einfügen am Ende:
Gyro_Button { Class: LauncherButton; Coordinates: 300,5,10,10; Navigatable: no; Layer: OnTop; launch: $MORT_PFAD$\NR_gyrostart.exe; Enabled: 0,0,0,200,20,0,0,255,0,255; Pushed: 0,0,40,200,20,2,2,255,0,255; Icon: 0,0,0,30,30,5,5,255,0,255; }
Als nächstes im Abschnitt „mapview“ folgendes einfügen:
ziemlich am Anfang des Abschnitts nach „panel“
Container_gyro_button { Class: SkinContainer; Form: SF_gyro_button; }
ganz am Ende des Abschnitts direkt vor „mapview_splitscreen“:
Container_gyro { Class: SkinContainer; Form: SF_gyro; }
die selben Eintrage erstellt im Abschnitt „mapview_splitscreen“ (vor"MapAreaView") und „TurnByTurn (nach "panel")“
Als nächstes fügt ihr folgende Einträge ganz unten an die PFSkin mit an:
SF_gyro_button { // SkinElementModelCoder Class: SkinContainer; Coordinates: 0,0,320,240; TapMode: TapThrough; Layer: OnTop; // FormModelCoder DynamicFormX: 0; DynamicFormY: 0; DynamicFormWidth: 50; DynamicFormHeight: 50; // SkinContainerModelCoder // SkinScrollbarOwnerModelCoder GyroAktivierung { Class: LauncherButton; Coordinates: 0,85,56,60; Enabled: 423,0,0,40,40,6,10,255,0,255; Pushed: 423,0,0,40,40,6,10,255,0,255; Icon: 421,0,0,23,23,12,16,255,0,255; PYOffset: 2; BGMode: Transparent; launch: "$KOORD_PFAD$"; params: "window=0 RegKeyMode=2 SendKey=\0x73\c-200,305,10\0x72\| RegKey=Software\Navirunner,Autogyros"; } GyroAnzeige { Class: LaunchFromRegistryButton; Coordinates: 0,85,56,60; Enabled: 423,0,0,40,40,6,10,255,0,255; Pushed: 423,0,0,40,40,6,10,255,0,255; Icon: 422,0,0,23,23,12,16,255,0,255; Layer: OnTop; Navigatable: no; TapMode: TapThrough; BGMode: transparent; Registry: "HKCU,Software\Navirunner,Autogyros"; HideOnNonExistentRegistryEntry: yo; } } SF_gyro { // SkinElementModelCoder Class: SkinContainer; Coordinates: 0,0,320,240; TapMode: TapThrough; Layer: OnTop; // FormModelCoder DynamicFormX: 0; DynamicFormY: 0; DynamicFormWidth: 50; DynamicFormHeight: 50; // SkinContainerModelCoder // SkinScrollbarOwnerModelCoder Button_Stop { Class: PushButton; Layer: OnTop; Navigatable: no; Coordinates: 100,0,3,3; Enabled: 0,0,0,3,3,0,0; Pushed: 0,0,0,5,5,0,0; PressedEvent: 12; } Button_Start { Class: PushButton; Coordinates: 110,0,3,3; Layer: OnTop; Navigatable: no; Enabled: 0,0,0,3,3,0,0; Pushed: 0,0,0,5,5,0,0; PressedEvent: 11; } Button_Start { Class: PushButton; Coordinates: 120,0,5,5; Layer: OnTop; Navigatable: no; Enabled: 0,0,0,3,3,0,0; Pushed: 0,0,0,5,5,0,0; PressedEvent: 39; } Button_Stop { Class: PushButton; Layer: OnTop; Navigatable: no; Coordinates: 130,0,5,5; Enabled: 0,0,0,3,3,0,0; Pushed: 0,0,0,5,5,0,0; PressedEvent: 40; } gyro_gps_button { Class: NStateButton; Coordinates: 319,198,2,2; Layer: OnTop; Navigatable: no; // NStateButtonModelCoder States: 14; StateChangeOnTap: disable; Icon1: 420,0,0,1,1,0,0,255,0,255; Icon2: 420,0,0,1,1,0,0,255,0,255; Icon3: 420,0,0,1,1,0,0,255,0,255; Icon4: 420,0,0,1,1,0,0,255,0,255; Icon5: 0,0,2,1,1,0,0,255,0,255; Icon6: 0,0,2,1,1,0,0,255,0,255; Icon7: 0,0,4,1,1,0,0,255,0,255; Icon8: 0,0,4,1,1,0,0,255,0,255; Icon9: 0,0,4,1,1,0,0,255,0,255; Icon10: 0,0,6,1,1,0,0,255,0,255; Icon11: 0,0,6,1,1,0,0,255,0,255; Icon12: 0,0,6,1,1,0,0,255,0,255; Icon13: 0,0,6,1,1,0,0,255,0,255; Icon14: 0,0,6,1,1,0,0,255,0,255; MinValue: -1; MaxValue: 12; CurrentValue#DP: 65544; //_OUT_POS_SATELLITES } Simu_Aktiv_button { Class: SkinIcon; Coordinates: 319,196,2,2; Layer: OnTop; Navigatable: no; BitmapReference: 436,0,0,1,1,0,0; Visibility#DP: 3801124; } }
somit sind alle notwendigen Änderungen in der PFSkin vorhanden.
Nun müsst ihr noch:
- Diese Datei downloaden und entpacken ,
- die PNGs in den Ordner MFD\navigation\Skin320x240\PPSkin einfügen,
- das Mortscript in den Ordner MFD\programme\mortscript einfügen,
- die geänderte PFSkin wieder auf das Navi kopieren in den Ordner MFD\ navigation\Skin320x240,
- einen SoftReset machen und die Navigation starten.
Jetzt habt ihr in der Karte den Gyro-Button und könnt diesen an und aus schalten.