Steckbrief (Ahnenblatt Plugin): Unterschied zwischen den Versionen
MarcP (Diskussion • Beiträge) |
MarcP (Diskussion • Beiträge) |
||
Zeile 52: | Zeile 52: | ||
Alle diese Eigenschaften dürfen frei verändert werden. Werden aber je nach Syntax im "Tag" während des Programmablaufs verändert. | Alle diese Eigenschaften dürfen frei verändert werden. Werden aber je nach Syntax im "Tag" während des Programmablaufs verändert. | ||
=== | ===Anzeigeelemente=== | ||
====Vorstellung==== | |||
*Label | |||
*Textbox | |||
*Textblock | |||
*Listview | |||
*Listbox | |||
*Image | |||
==== | ====Brücke zu den Daten==== | ||
Das Programm wählt anhand des Elementtyps aus, auf welche Eigenschaft der "tag" bzw diese Daten ausgegeben werden. | Das Programm wählt anhand des Elementtyps aus, auf welche Eigenschaft der "tag" bzw diese Daten ausgegeben werden. | ||
Zeile 87: | Zeile 87: | ||
Es dürfen natürlich auch sämtliche anderen Elemente der Entwicklungsumgebung benutzt werden. Nur werden diese nicht verarbeitet. | Es dürfen natürlich auch sämtliche anderen Elemente der Entwicklungsumgebung benutzt werden. Nur werden diese nicht verarbeitet. | ||
===Daten dynamisch eintragen lassen=== | |||
Um Werte aus der Datenbank auf den Elementen anzuzeigen muss ein Anzeigesyntax definiert werden. Dieser kommt in die "tag" Eigenschaft. | |||
zb ein Label: | |||
im "tag" steht "%name%" >> auf dem Label wird der name der momentan ausgewählten Person angezeigt. | |||
im xaml code sieht die definition zb so aus: | |||
<Label Content="abcd" Tag="%name%" HorizontalAlignment="Left" Height="92" Margin="72,177,0,0" VerticalAlignment="Top" Width="454" FontSize="16"/> | |||
beim Label stellt die "caption" Eigenschaft den Anzeigetext dar. Wurde auf dieser schon ein Text gelegt dann wird dieser überschrieben. (Im bsp "abcd") | |||
Wurde im "Tag" nichts hinterlegt so wird es nicht bearbeitet und schon vorbelegter Text bleibt so auch stehen. Wird zb genutzt um einfache starre Beschriftungen anzulegen. | |||
====Variablen==== | ====Variablen==== |
Version vom 2. Dezember 2014, 22:20 Uhr
Bezeichnung
- Steckbrief
Beschreibung
Zum erzeugen diverser Personenblätter Daten werden automatisch von Ahnenblatt übernommen. Das Programm stellt eine Personenliste und eine Vorlagenliste zur Auswahl
Vorlagen
aktuell sind mehrere Personenblätter enthalten.
- B
- C
- D
- f
Sondervorlagen:
- Interview - optimiert um Vordrucke für Befragungen durchzuführen. Vorausgefüllt mit bisher bekannten Daten. Es sollte die Option "Platzhalter setzen" aktiviert sein um leerStellen mit Raum aufzufüllen. zb "gestorben am........in........."
- Tester - zum testen von "Tag"Syntax. Enthält ein Textfeld zur eingabe von diesen. Wird gleichzeitig auf diverse Anzeigeelemente angwendet.
Optionen
- Farben entfernen - entfernt alle Hintergrundfarben aus Elementen
- Platzhalter setzen - leere Variablen werden nicht durch "nichts" ersetzt sondern Punktplatzhalter um Schreibraum zu schaffen. Oder um anzuzeigen das hier Daten fehlen
- keine Refnr - sämmtliche refnr Variablen werden nicht angewendet und gelöscht.
Vorlagen bearbeiten / neue erstellen
Hilfsprogramme
Datenformat der Vorlagen ist xaml. Dieses kann mittels eines normalen Texteditors (zb notepad) oder auch Graphisch per VisualStudio (ab 2013) oder MS Blend bearbeitet werden.
graphisch (empfohlen):
Download diverse Downloads kommen in Frage
- Express 2013 mit Update für Windows Desktop (kostenlos. enthält kein Blend)
- Community 2013 mit Update (kostenlos. mit Blend. noch sehr neu)
- Professional 2013 mit Update (90 Tage Testversion. inkl Blend)
nach 30 Tagen müssen die kostenlosen Versionen bei MS registriert werden (kostet nichts).
Text:
- Wordpad
- notepad++ (syntax einfärbung)
allgemein
Sämtliche Vorlagen liegen im "\Plugins\Steckbrief\Briefe" Unterverzeichniss. Jede Vorlage stellt ein definiertes Layout dar. Hier sind diverse Anzeigeelemente/Steuerelemente wie Textfelder oder Bildboxen platziert. Diese werden je nach Personenauswahl dynamisch befüllt.
Jedes Element besteht aus vielen weiteren Eigenschaften wie zb height (höhe),top (position von oben, fontcolor (farbe des textes) usw. ähnlich wie html.
Alle diese Eigenschaften dürfen frei verändert werden. Werden aber je nach Syntax im "Tag" während des Programmablaufs verändert.
Anzeigeelemente
Vorstellung
- Label
- Textbox
- Textblock
- Listview
- Listbox
- Image
Brücke zu den Daten
Das Programm wählt anhand des Elementtyps aus, auf welche Eigenschaft der "tag" bzw diese Daten ausgegeben werden.
momentan berüchsichtigte Elemente:
Elementtyp | Eigenschaft | Ausgabeformat |
label | content | text |
textbox | text | text |
textblock | text | text |
image | imagesource | bild |
listbox | items.text | auflistung (nur text) |
Es kann zb keine Ausgabe vom "tag" auf die "Fontcolor" (textfarbe) Eigenschaft gelegt werden. Was auch nicht viel Sinn macht.
Es dürfen natürlich auch sämtliche anderen Elemente der Entwicklungsumgebung benutzt werden. Nur werden diese nicht verarbeitet.
Daten dynamisch eintragen lassen
Um Werte aus der Datenbank auf den Elementen anzuzeigen muss ein Anzeigesyntax definiert werden. Dieser kommt in die "tag" Eigenschaft.
zb ein Label:
im "tag" steht "%name%" >> auf dem Label wird der name der momentan ausgewählten Person angezeigt.
im xaml code sieht die definition zb so aus:
<Label Content="abcd" Tag="%name%" HorizontalAlignment="Left" Height="92" Margin="72,177,0,0" VerticalAlignment="Top" Width="454" FontSize="16"/>
beim Label stellt die "caption" Eigenschaft den Anzeigetext dar. Wurde auf dieser schon ein Text gelegt dann wird dieser überschrieben. (Im bsp "abcd")
Wurde im "Tag" nichts hinterlegt so wird es nicht bearbeitet und schon vorbelegter Text bleibt so auch stehen. Wird zb genutzt um einfache starre Beschriftungen anzulegen.
Variablen
Alle Variablen werden von "%" Zeichen umschlossen
Variablen liefern zb Daten einer bestimmten Person. (Person je nach Auswahl und verwendeten Optionen)
Variablen auf Person bezogen
Name | Bedeutung |
%refnr% | Ref nr |
%name% | voller Name |
%gebort% | geburtsort |
%gebdat% | geburtsdatum |
sonstige Variablen
Name | Bedeutung |
%date-dmy% | aktuelles Datum im Format ddmmyyyy |
%date-d% | aktueller Tag |
%date-m% | aktueller Monat |
%time% | aktuelle zeit |
einfache Variablen ohne %%
Name | Bedeutung |
/n | Zeilenumbruch |
/tab | Tabulator |
Die Tabellen sind nur Auszüge. Sämtliche aktuelle Variablen können im Programm mit der Schaltfläche "Variablen" angezeigt werden
Optionen
Alle Optionen werden von "$" Zeichen umschlossen.
Optionen haben nur Einfluss auf den eigenen "Bereich" (siehe nächsten Abschnitt)
Sie geben selbst keine Werte wie Variablen aus. Personenangaben müssen immer am Anfang eines Bereichs aufgeführt sein.
Name | Bedeutung |
$p-fa$ | Vater |
$p-mo$ | Mutter |
$pl-ch$ | alle Kinder |
$pl-si$ | alle Geschwister |
$pl-sp$ | alle Partner |
$c-month$ | wandelt numerische Monatsangaben in Text zb ".01." >> ". Januar" |
Die Tabellen sind nur Auszüge. Sämtliche aktuelle Optionen können im Programm mit der Schaltfläche "Variablen" angezeigt werden
einfacher Syntax
Textteile welcher keine Variable oder Option darstellt wird als Fliesstext behandelt und 1 zu 1 ausgegeben
allgemein darf gemischt werden
zb Hans Dampf wurde ausgewählt:
Beispiele:
"%name%" >> "Hans Dampf"
"%name% ist am %gebdat% geboren" >> "Hans Dampf ist am 12.1.2001 geboren"
Bereich
Ein Bereich ist allgemein erstmal der komplette "tag" Bereich. Dieser wird hier als Hauptbereich bezeichnet.
Variablen im Hauptbereich beziehen sich auf den ausgewählten Probanden.
Es können Unterbereiche mittels eckiger Klammern definiert werden. Hier gelten die für diesen Bereich geltenden Optionen.
Ein Bereich kann sich auf eine andere Person beziehen. Soll zb auf den Vater mittels $p-fa$ verwiesen werden so kann eigener Unterbereich gesetzt werden.
Diese Unterbereiche beziehen sich so auf den darüberliegenden Bereich.
zb Vater des Probanden
"Vater von %name%: [$p-fa$ %name%]" >> "Vater von Hans Dampf: Ralf Rauch"
oder der Hauptbereich wird direkt auf den Vater gemünzt.
"$p-fa$ Vater: %name%" >> "Vater: Ralf Rauch"
Nachteil der zweiten Methode ist das kein einfacher zugriff mehr auf die Probandenwerte möglich ist (Name fehlt hier).
Es darf unbegrenzt tief und breit kaskadiert werden Symbolisches Beispiel mit Ziffern um die Bereiche zu markieren (Sechs Bereiche. 1 ist der Hauptbereich)
111[222[333]222]1[444[5[666]555]44]111
Syntax mit Unterbereiche
dh mit eckigen Klammern.
zb um Monatskonvertierung nur auf eine Variable anzuwenden. Sicherstellen das der restliche Text so nicht bearbeitet wird.
"%name% ist am [$c-month$%gebdat%] geboren" >> "Hans Dampf ist am 12.Januar 2001 geboren"
zb um Auflistungen durchzugehen.
die Option $pl-ch$ durchgeht alle Kinder der Person des darüberliegenden Bereiches.
Bsp wenn Hans Dampf ausgewählt. Dieser hat 3 Kinder haben hier einfach die Namen Kindx:
"[$pl-ch$ %name%,]" >> "Kind1, Kind2, Kind3"
"Kinder von %name%: [$pl-ch$ %name%,]" >> "Kinder von Hans Dampf: Kind1, Kind2, Kind3,"
geht auch noch weiter mit Kinder der Kinder, also Enkel:
"Enkel von %name%: [$pl-ch$[$pl-ch$ %name%,]]" >> "Enkel von Hans Dampf: Enkel1, Enkel2, Enkel3,"
es ist allerdings nicht ersichtlich welches Enkelkind vom welchen Kind stammt. Es könnten auch alle 3 von Kind 1 stammen und Kind2 und 3 sind Kinderlos
Lösung wäre zb dies:
"Nachfahren von %name%: [$pl-ch$ (%name%)[$pl-ch$ %name%,]]" >> "Nachfahren von Hans Dampf: (Kind1) Enkel1, Enkel2, (Kind2) Enkel3, (Kind3)"
Man sieht hier das Enkel1&2 von Kind 3 stammten und Enkel 3 von Kind2. Kind 3 ist kinderlos.
Syntax mit Unterbereiche für Auflistungselemente
zb Listbox, Listview sind Auflistungselemente. D.h. sie anthalten mehrere Textfelder. Je nachdem wieviele gebraucht werden. zb für jedes Kind ein eigenes Textfeld(zeile)
Versionen
- aktuell x
Sprache
deutsch
Autor
- Marc Philipp
Anforderungen
- Windows Vista/7/8
- .net Framework 4.5
- min Ahnenblatt 2.50
- Einbindung als AB Plugin (muss unter ..\Ahnenblatt\Plugins\ abgelegt sein)
Preis
- kostenlos (Freeware)