GoPal 4.0 Skinbefehle: Unterschied zwischen den Versionen

Aus GoPalWiki
Wechseln zu: Navigation, Suche
(Enabled/Focussed/Pushed/Disabled)
Zeile 524: Zeile 524:
 
Diese speziell für Buttons vorgesehen Eigenschaften bestimmen - entsprechend der unter [http://www.wiki.gopal-navigator.de/index.php?title=GoPal_2.0_Skin#Icon Icon] näher erläuterten Syntax - das Aussehen des Hintergrundes in den 4 möglichen Zuständen eines Buttons.
 
Diese speziell für Buttons vorgesehen Eigenschaften bestimmen - entsprechend der unter [http://www.wiki.gopal-navigator.de/index.php?title=GoPal_2.0_Skin#Icon Icon] näher erläuterten Syntax - das Aussehen des Hintergrundes in den 4 möglichen Zuständen eines Buttons.
 
  Enabled = Standard/Aktiviert
 
  Enabled = Standard/Aktiviert
  Focussed = Der Button hat den Focus (in einem Touchscreen gesteuerten System etwas unklare Bedeutung)
+
  Focussed = Der Button hat den Focus (wird nur für die Fernbedienung benötigt)
 
  Pushed = Der Button wird gedrückt  
 
  Pushed = Der Button wird gedrückt  
 
  Disabled = Deaktiviert
 
  Disabled = Deaktiviert

Version vom 5. Februar 2008, 21:20 Uhr


Achtung

Bevor Ihr irgend etwas ändert oder ausprobiert macht Bitte eine Sicherungskopie der PFSkin.skn damit Ihr wenn es schief geht immer wieder den original Zustand herstellen könnt. Wenn es zu unerklärlichen Fehlern kommt z.B. Speicherkarte wird auf einmal nicht mehr erkannt oder Navigation startet nicht durch, so kann das an euren Änderungen liegen. Bitte dann zuerst versuchen mit der original Datei zu starten wenn das Funktioniert solltet Ihr euch eure Änderungen einmal genauer ansehen, da es dann dort irgendwelche Unstimmigkeiten gibt.

Grundsätzlicher Aufbau der Skin-Dateien

Skin-Dateien der GoPal-Navigations-Software besitzen die Endung .skn. Es handelt sich um reine ASCII-Textdateien, die mit einem herkömmlichen ASCII-Texteditor bearbeitet werden können.

Die Dateien sind strukturiert aufgebaut. Jeder Block wird durch einen Bezeichner eingeleitet und die Definitionen dieses Objektes sind in geschweifte Klammern eingebettet.


Include-Dateien

Im Block Includes können andere Skin-Dateien eingebunden werden.

Beispiel:

Includes
{
	Include: PFSpecial.skn;
	Include: PFLang.skn;
}

Die PFSpecial.skn regelt hierbei die grundsätzlichen Einstellungen, den Aufbau des Systems


Referenz auf Grafiken

In der PFSkin.skn Im Block Bitmaps können Grafiken mit einer ID versehen werden. Auf die ID kann dann z. B. bei der Definition von Buttons verwiesen werden, so dass die referenzierte Grafik angezeigt wird. Beispiel

Bitmaps
{

	2: PPSkin\SplashScreen.png;
	3: PPSkin\CornerButtons.png;                   //outdated
	4: PPSkin\button_icons.png;
	5: PPSkin\About.png;
       ...usw....
}

Schriftarten definieren

In der PFSkin.skn können über den Block Fonts verschiedene Formatdefinitionen für die Ausgabe von Text hinterlegt werden. Jede Definition erhält eine eindeutige ID, eine Schriftart, Schriftgröße und bei Bedarf eine Formatierung wie Bold oder Italic. Beispiel:

Fonts
{
       0: Arial,18,BOLD;
       1: Arial,15,BOLD;
       2: Arial,16,BOLD;
       3: Arial,19,BOLD;
       4: Arial,26,BOLD;
       5: Arial,32,BOLD;
       6: Font\RoadFontInline.bf,Font\RoadFontOutline.bf;
       7: Arial,14,BOLD;
       8: Arial,21,BOLD;
       9: Arial,20,BOLD;
       10: Arial,13;
       11: Arial,15;
       12: Arial,23,BOLD;
       13: Arial,24,BOLD;
       32: Arial,13,BOLD;
      ...usw...
}

Über den Paramter Font:XXX kann dann auf die im Abschnitt Fonts definierten Textformatierungen zugegriffen werden.

Hauptbereiche

In der PFSkin.skn

mapview - Die normale Kartenansicht

Hier finden Anpassungen des Skins statt, die im Widescreen sichtbar sein sollen. Hier werden Rahmen eingebaut, Farben verändert, Buttons platziert. Die Möglichkeiten sind vielfältig und einiges davon wird hoffentlich noch in dieses Wiki einfliessen.

mapview_splitscreen - Die Splitscreenansicht

Hier finden Anpassungen des Skins statt, die im Splitscreen sichtbar sein sollen. Hier werden Rahmen eingebaut, Farben verändert, Buttons platziert. Die Möglichkeiten sind vielfältig und einiges davon wird hoffentlich noch in dieses Wiki einfliessen.

turnByTurn - Die Pfeilansicht

Hier können z. B. der Hintergrund- und die Pfeilfarbe verändert werden, oder Buttons hinzugefügt werden

compassView - Die Kompassansicht

Hier lässt sich eine Höhenanzeige und eine Kursanzeige aktivieren, die standardmäßig nicht angezeigt wird. Der Grund wird sein, dass mindestens das Signal von 4 Satelliten benötigt wird, um eine brauchbare Höhenangabe zu erhalten.
Ebenso haben manche Userskins hier eine Uhrzeitanzeige aktiviert, die leider nur die GMT-Zeit anzeigt, also um eine Stunde "nachgeht".

SF_Menu_panel - Das untere Panel in der Kartenansicht

Hier kann z. B. die Höhe eingefügt werden, oder auch versteckte Buttons um weiter Menüs aufzurufen. Ausserdem kann man hier das Erscheinungsbild der angezeigten Werte (Geschwindigkeit, Uhrzeit, Ankunftszeit ect.) ändern.


Auflistung der Masken-Definitionen.

Maske Beschreibung (ist noch nicht vollständig)
Includes Hier werden weitere *.skn Dateien eingebunden
Bitmaps Hier werden den Bitmaps ID Nr verpast die dann in den Buttons damit aufgerufen werden können.
Fonts Hier werden die Schriften eingebunden
Favorites_List Favoritenliste
POI_location_selection Sonderziel während der Route einfügen
Route_info_menu Routeninformations Fenster ( Wegbeschreibung, gehe zu)
Traffic_information Liste der Verkehrsmeldungen
trafficDetail_info Verkehrsmeldungen im Detail
Alternative_route
Directions
go_to Gehe zu ( aktuelle Position, Übersicht, Ziel )
Tour_Editor Routenplanung
Tour_Overview Routenübersicht
Tour_File_list Routenliste (gespeicherte Routen)
Detailed_information_hotel_de
POIFurtherInformationView
TelefonicBookingView
Ambiguity_List_With_Map
CurrentRouting
DestEntrySelect Hauptmenü 1
Detailed_information Ziel Detail Fenster
Enter_new Neues Ziel eingeben
Enter_new2
Progress_error_view Route berechnen ohne GPS
Progress_view Route berechnen
Enter_coords Koordinaten eingabe
Enter_new_selection Zieleingabemenu
Progress_view_poi
Last_Dest_List Liste aller letzten Ziele
Progress_view_externalDestinations
Ambiguity_List_With_Map_POI
DropDownList_Languages Liste der Sprachen
DropDownList_KeyboardChooser Lister der Tastaturlayouts
DropDownList_TimeZone Zeitzone
DropDownList_SpeedLimit Auswahl der Geschwindigkeitswarnung
DropDownList_vehicle_selection Fahrzeug Auswahl (PKW, Fußgänger, Fahrrad, Motorrad)
DropDownList_route_type Routetyp (schnell, ökonomisch, kurz)
DropDownList_by_pass Stauumfahrung (manuell, automatisch, keine)
DropDownList_day_night Tag - Nacht Einstellung
DropDownList_map Kartenauswahl (Länder)
DropDownList_keyboard Tastaturauswahl
DropDownList_zoom_settings Zoom Einstellung
DropDownList_Map_type Kartenansicht (Nur Karte, Dynamisch, Pfeil und Karte)
Generic_List
Generic_Info_Ok_Cancel STVO Abfrage
Generic_Info_Back
temp_Debug_Info
Speech_bubbles_list
Generic_Info_Close
debug_info_view
Speech_bubbles_list_for_mapview
KeyboardBlock_phone_numeric Nummern Tastatur
keyboard_normal
keyboard_phone
keyboardBlock_umlaut Umlaute Tastatur
KeyboardBlock_phone_alpha Telefon Tastatur
keyboardBlock
keyboardBlock_symbolic
keyboardBlock_numeric_only
keyboardBlock_qwertz Deutsche qwertz Tastatur
keyboard_coordinate_entry Koordinaten eingabe Tastatur
keyboardBlock_qwerty Englische qwertz Tastaur
keyboardBlock_azerty Französische azerty Tastatur
SF_Map_View_clicked Ziel aus Karte wählen
Mapview Kartenansicht
mapview_splitscreen Splitscreen Kartenansicht
tripInfo Trip Info Fenster
compassView Kompassansicht
turnByTurn Pfeilansicht
SF_Map_sign_post Abbiegepfeil, Spurassi
Show_location_in_map Ort in Karte anzeigen
SF_Map_info_icons Hier werden die Anzeigen für TMC, Akku und GPS eingestellt in der Karte oben rechts
SF_Map_Compass Einstellung zum Mapkompass (das Icon oben rechts mit dem N drauf)
SF_Splitscreen_sign_post Einstellung zum farbigen Strassenfeld im Splitscreen (grau, gelb, blau Overlay)
SF_splitscreen_tripinfo Hier besteht die Möglichkeit dir Tripinfodaten im Splitscreen an zu zeigen
SF_splitscreen_iconpanel Abbiegepfeil im Splitscreen
SF_splitscreen_coordinates
SF_splitscreen_lane_guidance Einstellungen zum Spurassistent im Splitscreen
SF_titlebar Einstellungen zur oberen Leiste (Titelbar) Entfernung, Strassennr.
SF_manoeuvre_distance_text
SF_splitscreen_iconpanel_new Einstellungen zum Abbiegepfeil im Splitscreen
SF_TBT_sign_post Einstellung zum farbigen Strassenfeld in der Pfeilansicht (grau, gelb, blau Overlay)
SF_show_in_map_info Einstellungen zu der Anzeige oben wenn man ein Ziel aus der Karte anklickt (Strassenname, Koordinaten ect)
SF_show_in_map_info_small Einstellungen zu der Anzeige oben im Splitscreen wenn man ein Ziel aus der Karte anklickt (Strassenname, Koordinaten ect)
Detailed_information_MapClick
HardwareConfigArea Positionierung wird nicht benutzt
DestinationRouteInfoShowInMapSelect Nutzungsbedingungen
SettingsDeviceSelect Nutzungsbedingung
HWConfigDiscoverArea Gerätesuche GPS Port einstellen
Application_menu Hauptmenu 2
Continue_route Route fortsetzen
Wait_screen Zielführung wird gestoppt. Bitte warten
Route_blocking Route sperren
Voice_input_screen Bitte sprechen Sie die gesuchte Stadt nach dem Signalton
License_view
DRM_Info_Ok_Cancel
Restart_screen
QuickMenuView Ansichtsmenü
Quick_menu_settings Quick-Menü-Einstellungen
Quick_menu_settings_category Quick-Menü-Einstellungen
Positioning GPS Positionierung
Volume_control Lautstärke
HotKeyVolume_control Lautstärke PopUp
Settings_listbox_level2
Settings_listbox_level2_test
Settings_listbox_level2_top_left
Zoom_settings Autozoom-Einstellungen
Map_view_settings Darstellung
Poi_Settings_Map Kartenansicht konfigurieren
Route_options Routenoptionen
POI_settings Sonderziele konfigurieren
TMC_settings TMC-Einstellungen
Application_settings Programmeinstellungen
Info_view Version
Settings_menu Hauptmenü 3
Speech_settings Spracherkennung-Einstellungen
SF_Main_menu_tabs Menü Hauptbutton unten
SF_MatchButtons Letzte Ziele Hauptmenü 1
SF_Menu_panel Kartenansicht Panel unten
SF_Simulation Simulations Button
SF_Simulation_splitscreen Simulations Button Splitscreen

Verwendung von Objekten

Coordinates / Grundsätzliches zum Koordinaten-System

Jedes auf dem Bildschirm darzustellende Element wird über den Parameter Coordinates platziert. Hierbei kann solch ein Element auch ein Container sein, in dem weitere Elemente gruppiert werden. Dies ist wichtig, da die einzugebenden Koordinaten immer relativ zur Position des übergeordneten Containers sind. Beispiel:

       mapview
       {
               // SkinElementModelCoder
               ID: 3801095;
               Class: SkinContainer;
               Coordinates: 0,0,480,272;
               // FormModelCoder
               DynamicFormX: 0;
               DynamicFormY: 0;
               DynamicFormWidth: 50;
               DynamicFormHeight: 50;
               // SkinContainerModelCoder
               // SkinScrollbarOwnerModelCoder
               MapAreaView
               {
                       // SkinElementModelCoder
                       ID: 3801096;
                       Class: MapView;
                       Coordinates: 0,23,480,201;

mapview ist der Container für das nachgeordnete Element MapAreaView, seine Koordinaten sind der Bezugspunkt für alle im Container gruppierten Elemente.

Syntax für die Koordinaten:

Die ersten beiden Werten geben die Position der linken oberen Ecke an:
0 = Der Abstand vom linken Rand
0 = Der Abstand von Oben

Die beiden letzten Werte geben die Größe an:
480 = die Feldgröße nach rechts
272 = die Feldgröße nach unten

In diesem Beispiel ist also die tatsächliche Position des Elementes MapAreaView:

0 Pixel vom linken Rand
23 Pixel von oben

TextCoordinates

Über die TextCoordinates kann speziell bei Text-Objekten der tatsächliche Text innerhalb des über die Coordinates definierten Hintergrundes pixelgenau positioniert werden. Beispiel:

               SpeedWarningButton
               {
                       // SkinElementModelCoder
                       ID: 3801100;
                       Class: PushButton;
                       Coordinates: 60,161,56,60;
                       Text#DP: 262204;    //_OUT_SL_CUR_SPEED_LIMIT
                       TextCoordinates: 7,11,44,44;
                       TextColor: 0,0,0;
                       Font: 3;

Hier wird der Text innerhalb des größeren (56x60) Hintergrunds beginnend bei Position 7,11 (relativ zu den Coordinates) in einer Größe 44x44 dargestellt.

HAlign/VAlign

Über die Eigenschaften HAlign (horizontal) und VAlign (vertikal) wird speziell bei Text-Objekten die Ausrichtung gesteuert. Mögliche Werte sind für HAlign: left, center, right (linksbündig, zentriert, rechtsbündig) und für VAlign: top, center, bottom (oben, zentriert, unten)

PYOffset

Über die Eigenschaft PYOffset kann auf einfache Art ein Y-Versatz (Verschieben nach oben oder unten) eines Objektes (Icon,Text etc.) innerhalb des durch die Coordinates bestimmten Hintergrundes erzielt werden.

Enabled/Focussed/Pushed/Disabled

Diese speziell für Buttons vorgesehen Eigenschaften bestimmen - entsprechend der unter Icon näher erläuterten Syntax - das Aussehen des Hintergrundes in den 4 möglichen Zuständen eines Buttons.

Enabled = Standard/Aktiviert
Focussed = Der Button hat den Focus (wird nur für die Fernbedienung benötigt)
Pushed = Der Button wird gedrückt 
Disabled = Deaktiviert

Icon

Mit der Eigenschaft Icon wird dem Objekt das darzustellende Symbol übergeben. Die verfügbaren Grafiken werden im Abschnitt Bitmaps definiert und mit einer ID versehen.

Die Syntax lautet: Icon <Grafik ID>, <X-Koord.>, <Y-Koord.>, <Größe-X>, <Größe-Y>, <X-Versatz>, <Y-Versatz>, <Transparenz (R, G, B)>
Beispiel:

               Recenter
               {
                       // SkinElementModelCoder
                       ID: 3801205;
                       Class: PushButton;
                       Coordinates: 369,132,62,51;
                       Visibility#DP: 3801148; 
  
                       // SkinButtonModelCoder
                       Enabled: 129,0,37,62,41,0,5,255,0,255;
                       Pushed: 129,0,37,62,41,0,5,255,0,255;
                       Icon: 196,0,0,45,35,12,8,255,0,255;
                       PressedEvent: 3538945;
                }

196 Bezeichnet welches Icon verwendet wird, die X und Y-Koordinaten dienen dazu, das Icon in einer MultiIcon-Datei (Grafik-Dateien, in denen mehrere Icons unter- und auch nebeneinander zusammengefasst sind) zu bestimmen. Wird in diesem Beispiel nicht genutzt deswegen sind hier 0,0 eingetragen X und Y-Versatz bedeutet in diesem Beispiel, dass das Icon (45x35) innerhalb des größeren Hintergrunds (62x51) mit einem Versatz von jeweils 12 Punkten nach rechts und 8 Punkten nach unten abgebildet wird. Die Farbwerte für transparent darzustellenden Bereiche in der Grafik <R,G,B> können optional definiert werden.