BadaBoard Themes erstellen: Unterschied zwischen den Versionen
Keine Bearbeitungszusammenfassung |
Keine Bearbeitungszusammenfassung |
||
(54 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
badaBoard Themes bestehen aus einer pseudo-CSS Datei und einer Ansammlung von Icons. Pseudo-CSS, weil die Datei zwar im groben so aussieht, wie eine CSS Datei, aber nur wenig mit dem echten CSS zu tun hat. Um ein Theme in badaBoard zu importieren, muss die CSS Datei zusammen mit den Bildern in einer Zip Datei verpackt werden, die genauso heisst, wie die CSS Datei. Der Name des Themes ergibt sich dabei aus dem Namen der Zip bzw. CSS Datei. Weichen die Namen voneinander ab, wird badaBoard die Datei nicht als gültiges Theme erkennen. | == badaBoard Themes == | ||
badaBoard Themes bestehen aus einer oder mehreren pseudo-CSS Datei und einer Ansammlung von Icons. Pseudo-CSS, weil die Datei zwar im groben so aussieht, wie eine CSS Datei, aber nur wenig mit dem echten CSS zu tun hat. Um ein Theme in badaBoard zu importieren, muss die CSS Datei auf Style enden, und zusammen mit den Bildern in einer Zip Datei verpackt werden, die wiederum genauso heisst, wie die CSS Datei. Der Name des Themes ergibt sich dabei aus dem Namen der Zip bzw. CSS Datei. Weichen die Namen voneinander ab, oder fehlt das Wort Style am Ende des Names, wird badaBoard die Datei nicht als gültiges Theme erkennen. Um für die unterschiedlichen Bildschirmauflösungen der verfügbaren bada Geräte eigene Einstellungen zu definieren, schaut die App noch nach weiteren .css Dateien, passend zur aktuellen Bildschirmauflösung. | |||
Beispiel<br> | |||
<nowiki> | |||
StyleName: MeinStyle | |||
CSS-Datei: MeinStyle.css | |||
- WVGA : MeinStyle_WVGA.css | |||
- HVGA : MeinStyle_HVGA.css | |||
- WQVGA : MeinStyle_WQVGA.css | |||
Zip-Datei: MeinStyle.zip | |||
</nowiki> | |||
Auf einem Wave-M oder Y würde also zuerst die Datei 'MeinStyle.css' geladen werden, und danach, sofern vorhanden, die Datei 'MeinStyle_HVGA.css'. Sind in der zweiten Datei Parameter enthalten, die schon in der ersten Datei vorhanden waren, werden die Parameter aus der ersten Datei mit denen aus der zweiten Datei überschrieben. | |||
== badaBoards Pseudo-CSS == | == badaBoards Pseudo-CSS == | ||
Zeile 8: | Zeile 22: | ||
// Default-Style | // Default-Style | ||
// Allgemeine Einstellungen | |||
* { | |||
BackColor : #000000 | |||
FontColor : #FFFFFF | |||
} | } | ||
*.Header { | |||
BackColor : default | |||
} | } | ||
*.Footer { | |||
BackColor : default | |||
} | } | ||
*. | *.ContextMenu { | ||
BackColor : | BackColor : default | ||
} | } | ||
*.List | *.List { | ||
HightlightBackColor : #282828 | |||
} | } | ||
*. | *.Tabbar { | ||
BackColor : #bd520f | |||
} | } | ||
// Main und SubText in den Listen | |||
*.MainText { | *.MainText { | ||
FontSize : 30 | FontSize : 30 | ||
} | } | ||
*.SubText { | *.SubText { | ||
FontSize : 22 | FontSize : 22 | ||
} | } | ||
*.QuotedText { | // Forenliste | ||
ForumList.List { | |||
FontSize: 36 | |||
} | |||
// Einstellungen für die Anzeige von Postings | |||
*.Posting.MainText { | |||
FontSize : 26 | |||
} | |||
*.Posting.SubText { | |||
FontSize : 22 | |||
} | |||
*.Posting.QuotedText { | |||
FontSize : 22 | FontSize : 22 | ||
BackColor : #333333 | BackColor : #333333 | ||
} | } | ||
*.SpoilerText { | *.Posting.SpoilerText { | ||
FontSize : 16 | FontSize : 16 | ||
FontColor : #333333 | FontColor : #333333 | ||
Zeile 73: | Zeile 83: | ||
} | } | ||
*.LinkText { | *.Posting.LinkText { | ||
FontColor : #0000FF | FontColor : #0000FF | ||
} | } | ||
// Alle Icons | |||
ForumList.List { | |||
ForumIcon : /forum/forumicon.png | |||
EditForumIcon : /forum/forumicon_edit.png | |||
RemoveForumIcon : /forum/forumicon_remove.png | |||
} | |||
UserCP.List { | |||
SweepPMDeleteIcon : /UserCP/maildelete.png | |||
SweepDeSubscribeIcon : /UserCP/desubscribe.png | |||
} | |||
UserCP.Footer { | |||
PMListIcon : /UserCP/mail.png | |||
PMNewIcon : /UserCP/mailnew.png | |||
SubscriptionIcon : /UserCP/subscription.png | |||
} | |||
Forum.List { | |||
ForumIcon : /forum/forumicon.png | |||
TopicIcon : /forum/topicicon.png | |||
StickyIcon : /forum/stickytopicicon.png | |||
AnnouncmentIcon : /forum/announcmenttopicicon.png | |||
SweepTopicLastPostIcon : /forum/topic_last.png | |||
SweepTopicSubscribeIcon : /forum/topic_subscribe.png | |||
} | |||
Forum.Footer { | |||
UserCPIcon : /forum/user_cp.png | |||
NewTopicIcon : /forum/topic_new.png | |||
ActiveTopicIcon : /forum/topic_active.png | |||
MoreIcon : /forum/topic_more.png | |||
} | |||
Topic.List { | |||
ElementBackgroundIcon : /formtopicelement/background100a.9.png | |||
ElementBackgroundIcon2 : /formtopicelement/background100b.9.png | |||
} | |||
Topic.Footer { | |||
ReplyIcon : /forum/reply_new.png | ReplyIcon : /forum/reply_new.png | ||
} | |||
*.Posting.Images { | |||
DummyImageIcon : /forum/dummyimage.png | |||
} | } | ||
</nowiki> | |||
=== Struktur === | |||
Die App ist in folgende Bereiche aufgeteilt, die als ID für die CSS Datei dienen: | |||
*'''ForumList''' - Das erste Fenster, mit der Auswahl der Foren.<br>''BackColor, ForumIcon'' | |||
**'''Header'''<br>''BackColor'', ''TitleColor'',''ButtonBackColor'', ''ButtonFontColor'' | |||
**'''List'''<br>''BackColor'',''FontSize'', ''FontColor'',''ForumIcon'', ''EditForumIcon '', ''RemoveForumIcon '' | |||
***'''SearchElement'''<br> | |||
****'''MainText'''<br>''FontSize, FontColor'' | |||
****'''SubText'''<br>''FontSize, FontColor'' | |||
**'''Footer'''<br>''BackColor'',''ButtonBackColor'', ''ButtonFontColor'' | |||
<br> | |||
*'''Forum''' - Die 1. Übersicht eines Forums<br>''BackColor'' | |||
**'''Header'''<br>''BackColor'', ''TitleColor'',''ButtonBackColor'', ''ButtonFontColor'' | |||
**'''Tabbar'''<br>''BackColor'' | |||
**'''List''' - Die Liste der Foren bzw. Topics<br>''BackColor'', ''ForumIcon'', ''TopicIcon'', ''StickyIcon'', ''AnouncementIcon'', ''SweepForumSubscribeIcon'', ''SweepTopicLastPostIcon'', ''SweepTopicSubscribeIcon'', ''HightlightBackColor'' | |||
***'''GroupHeader'''<br>''BackColor'' , ''FontSize'', ''FontColor'' | |||
***'''ForumElement''' | |||
****'''MainText'''<br>''FontSize'', ''FontColor'' | |||
****'''SubText'''<br>''FontSize'', ''FontColor'' | |||
***'''TopicElement''' | |||
****'''MainText'''<br>''FontSize'', ''FontColor'' | |||
****'''SubText'''<br>''FontSize'', ''FontColor'' | |||
**'''ContextMenu'''<br>''BackColor, FontColor'' | |||
**'''Footer'''<br>''BackColor, UserCPIcon'', ''NewTopicIcon'', ''ActiveTopicIcon'',''MoreIcon'' | |||
<br> | |||
*'''Topic'''<br>''BackColor'' | |||
**'''Header'''<br>''BackColor, TitleColor, ButtonBackColor, ButtonFontColor'' | |||
**'''Tabbar'''<br>''BackColor'' | |||
**'''List''' - Die Liste der Beiträge im Topic<br>''BackColor'', ''ElementBackgroundIcon'', ''ElementBackgroundIcon2'', ''HightlightBackColor'' | |||
***'''Posting''' | |||
****Siehe PostingPopUp->Posting für untergeordnete Elemente | |||
**'''Footer'''<br>''BackColor'', ''ReplyIcon'' | |||
<br> | |||
*'''PostingPopUp'''<br>''BackColor'' | |||
**'''Posting'''<br>''BackColor'' | |||
***'''MainText'''<br>''FontSize'', ''FontColor'' | |||
***'''QuotedText'''<br>''FontSize'', ''FontColor'', ''BackColor'' | |||
***'''SpoilerText'''<br>''FontSize'', ''FontColor'', ''BackColor'' | |||
***'''LinkText'''<br>''FontSize'', ''FontColor'' | |||
***'''Images'''<br>''DummyImageIcon'', ''ErrorImageIcon'' | |||
**'''Footer'''<br>''BackIcon'', ''EditIcon'', ''SaveIcon'', ''ThanksIcon, AddImageIcon'' | |||
<br> | |||
*'''NewPosting'''<br>''BackColor'' | |||
<br> | |||
*'''ReplyPosting'''<br>''BackColor'' | |||
**'''Header'''<br>''BackColor'', ''TitleColor'',''ButtonBackColor'', ''ButtonFontColor'' | |||
<br> | |||
*'''UserCP''' - Das User Control-Panel<br>''BackColor'' | |||
**'''Header'''<br>''BackColor, TitleColor, ButtonBackColor, ButtonFontColor'' | |||
**'''Tabbar'''<br>''BackColor'' | |||
**'''List'''<br>''BackColor'', ''SweepPMDeleteIcon'', ''SweepDeSubscribeIcon'' | |||
***'''PMElement''' | |||
****'''MainText'''<br>''FontSize'', ''FontColor'' | |||
****'''SubText'''<br>''FontSize'', ''FontColor'' | |||
***'''PMBoxElement'''<br>''FontSize'', ''FontColor'' | |||
***'''TopicElement''' | |||
****'''MainText'''<br>''FontSize'', ''FontColor'' | |||
****'''SubText'''<br>''FontSize'', ''FontColor'' | |||
**'''Footer'''<br>''BackColor, PMListIcon'', ''PMNewIcon, ForumSubscriptionIcon, TopicSubscriptionIcon'' | |||
<br> | |||
*'''PMPopup'''<br> | |||
*'''FilePicker'''<br>''DirectoryIcon, FileIcon'' | |||
=== Ablauf der Element-Suche === | |||
Wenn die App ein bestimmtes Element in der CSS sucht, geht sie folgt vor: | |||
# Alle Elemente des aktuellen Themes werden auf einen exakten Treffer abgesucht | |||
# Wenn das nicht gebracht hat, wird die Suche nochmal durchgeführt, diesmal wird das * als Wildcard im Elementnamen berücksichtigt | |||
# Wenn auch das nicht zu einem Ergebnis geführt hat, werden Schritt 1. und 2. mit Default-Style wiederholt | |||
# Wenn das auch nicht zu einem Treffer geführt hat, wird ein in der App festkodierter Wert genutzt:<br> | |||
Icons: ""<br> | |||
Farben: #FFFFFF<br> | |||
Zahlen: 0<br> | |||
=== Was ist zu beachten === | |||
==== Farben ==== | |||
Farben beginnen mit einem #-Zeichen, gefolgt von den Hexadezimal-kodierten RGB bzw. RGBA Werten. Es ist möglich einen zusätzlichen Alphakanal anzugeben, falls man Transparanz-Effekte erzielen möchte. | |||
Beispiele: | |||
<nowiki> | |||
#FFFFFF = Weiß | |||
#000000 = Schwarz | |||
#FF0000 = Rot | |||
#00FF00 = Grün | |||
#0000FF = Blau | |||
#00FF00AA = Grün mit leichter Transparenz | |||
</nowiki> | |||
==== Suchreihenfolge ==== | |||
Wenn mehere Elemente mit Wildcards für eine Suche in Frage kommen, wird immer das Element bevorzugt, welches den längsten Namen hat: | |||
<nowiki> | |||
*.MainText { | |||
FontSize : 22 | |||
}</nowiki> | |||
geht vor | |||
<nowiki> | |||
* { | |||
FontSize : 22 | |||
}</nowiki> | |||
==== Default Werte ==== | |||
Elemente wie die Header und Footer einer Maske können auch im bada standard Style belassen werden. Dazu muss explizit der Wert 'default' für eine Eigenschaft gesetzt werden. | |||
<nowiki> | |||
*.Header { | |||
BackColor : default | |||
} | } | ||
</nowiki> | |||
*.Footer { | |||
BackColor : default | |||
}</nowiki> | |||
==== Pfade ==== | |||
Pfadangaben für Icons sind immer relativ zu CSS Datei im Zip File anzugeben. | |||
Aktuelle Version vom 27. August 2012, 14:50 Uhr
badaBoard Themes
badaBoard Themes bestehen aus einer oder mehreren pseudo-CSS Datei und einer Ansammlung von Icons. Pseudo-CSS, weil die Datei zwar im groben so aussieht, wie eine CSS Datei, aber nur wenig mit dem echten CSS zu tun hat. Um ein Theme in badaBoard zu importieren, muss die CSS Datei auf Style enden, und zusammen mit den Bildern in einer Zip Datei verpackt werden, die wiederum genauso heisst, wie die CSS Datei. Der Name des Themes ergibt sich dabei aus dem Namen der Zip bzw. CSS Datei. Weichen die Namen voneinander ab, oder fehlt das Wort Style am Ende des Names, wird badaBoard die Datei nicht als gültiges Theme erkennen. Um für die unterschiedlichen Bildschirmauflösungen der verfügbaren bada Geräte eigene Einstellungen zu definieren, schaut die App noch nach weiteren .css Dateien, passend zur aktuellen Bildschirmauflösung.
Beispiel
StyleName: MeinStyle CSS-Datei: MeinStyle.css - WVGA : MeinStyle_WVGA.css - HVGA : MeinStyle_HVGA.css - WQVGA : MeinStyle_WQVGA.css Zip-Datei: MeinStyle.zip
Auf einem Wave-M oder Y würde also zuerst die Datei 'MeinStyle.css' geladen werden, und danach, sofern vorhanden, die Datei 'MeinStyle_HVGA.css'. Sind in der zweiten Datei Parameter enthalten, die schon in der ersten Datei vorhanden waren, werden die Parameter aus der ersten Datei mit denen aus der zweiten Datei überschrieben.
badaBoards Pseudo-CSS
So sieht die aktuelle DefaultStyle.css Datei aus:
// Default-Style // Allgemeine Einstellungen * { BackColor : #000000 FontColor : #FFFFFF } *.Header { BackColor : default } *.Footer { BackColor : default } *.ContextMenu { BackColor : default } *.List { HightlightBackColor : #282828 } *.Tabbar { BackColor : #bd520f } // Main und SubText in den Listen *.MainText { FontSize : 30 } *.SubText { FontSize : 22 } // Forenliste ForumList.List { FontSize: 36 } // Einstellungen für die Anzeige von Postings *.Posting.MainText { FontSize : 26 } *.Posting.SubText { FontSize : 22 } *.Posting.QuotedText { FontSize : 22 BackColor : #333333 } *.Posting.SpoilerText { FontSize : 16 FontColor : #333333 BackColor : #111111 } *.Posting.LinkText { FontColor : #0000FF } // Alle Icons ForumList.List { ForumIcon : /forum/forumicon.png EditForumIcon : /forum/forumicon_edit.png RemoveForumIcon : /forum/forumicon_remove.png } UserCP.List { SweepPMDeleteIcon : /UserCP/maildelete.png SweepDeSubscribeIcon : /UserCP/desubscribe.png } UserCP.Footer { PMListIcon : /UserCP/mail.png PMNewIcon : /UserCP/mailnew.png SubscriptionIcon : /UserCP/subscription.png } Forum.List { ForumIcon : /forum/forumicon.png TopicIcon : /forum/topicicon.png StickyIcon : /forum/stickytopicicon.png AnnouncmentIcon : /forum/announcmenttopicicon.png SweepTopicLastPostIcon : /forum/topic_last.png SweepTopicSubscribeIcon : /forum/topic_subscribe.png } Forum.Footer { UserCPIcon : /forum/user_cp.png NewTopicIcon : /forum/topic_new.png ActiveTopicIcon : /forum/topic_active.png MoreIcon : /forum/topic_more.png } Topic.List { ElementBackgroundIcon : /formtopicelement/background100a.9.png ElementBackgroundIcon2 : /formtopicelement/background100b.9.png } Topic.Footer { ReplyIcon : /forum/reply_new.png } *.Posting.Images { DummyImageIcon : /forum/dummyimage.png }
Struktur
Die App ist in folgende Bereiche aufgeteilt, die als ID für die CSS Datei dienen:
- ForumList - Das erste Fenster, mit der Auswahl der Foren.
BackColor, ForumIcon- Header
BackColor, TitleColor,ButtonBackColor, ButtonFontColor - List
BackColor,FontSize, FontColor,ForumIcon, EditForumIcon , RemoveForumIcon- SearchElement
- MainText
FontSize, FontColor - SubText
FontSize, FontColor
- MainText
- SearchElement
- Footer
BackColor,ButtonBackColor, ButtonFontColor
- Header
- Forum - Die 1. Übersicht eines Forums
BackColor- Header
BackColor, TitleColor,ButtonBackColor, ButtonFontColor - Tabbar
BackColor - List - Die Liste der Foren bzw. Topics
BackColor, ForumIcon, TopicIcon, StickyIcon, AnouncementIcon, SweepForumSubscribeIcon, SweepTopicLastPostIcon, SweepTopicSubscribeIcon, HightlightBackColor- GroupHeader
BackColor , FontSize, FontColor - ForumElement
- MainText
FontSize, FontColor - SubText
FontSize, FontColor
- MainText
- TopicElement
- MainText
FontSize, FontColor - SubText
FontSize, FontColor
- MainText
- GroupHeader
- ContextMenu
BackColor, FontColor - Footer
BackColor, UserCPIcon, NewTopicIcon, ActiveTopicIcon,MoreIcon
- Header
- Topic
BackColor- Header
BackColor, TitleColor, ButtonBackColor, ButtonFontColor - Tabbar
BackColor - List - Die Liste der Beiträge im Topic
BackColor, ElementBackgroundIcon, ElementBackgroundIcon2, HightlightBackColor- Posting
- Siehe PostingPopUp->Posting für untergeordnete Elemente
- Posting
- Footer
BackColor, ReplyIcon
- Header
- PostingPopUp
BackColor- Posting
BackColor- MainText
FontSize, FontColor - QuotedText
FontSize, FontColor, BackColor - SpoilerText
FontSize, FontColor, BackColor - LinkText
FontSize, FontColor - Images
DummyImageIcon, ErrorImageIcon
- MainText
- Footer
BackIcon, EditIcon, SaveIcon, ThanksIcon, AddImageIcon
- Posting
- NewPosting
BackColor
- ReplyPosting
BackColor- Header
BackColor, TitleColor,ButtonBackColor, ButtonFontColor
- Header
- UserCP - Das User Control-Panel
BackColor- Header
BackColor, TitleColor, ButtonBackColor, ButtonFontColor - Tabbar
BackColor - List
BackColor, SweepPMDeleteIcon, SweepDeSubscribeIcon- PMElement
- MainText
FontSize, FontColor - SubText
FontSize, FontColor
- MainText
- PMBoxElement
FontSize, FontColor - TopicElement
- MainText
FontSize, FontColor - SubText
FontSize, FontColor
- MainText
- PMElement
- Footer
BackColor, PMListIcon, PMNewIcon, ForumSubscriptionIcon, TopicSubscriptionIcon
- Header
- PMPopup
- FilePicker
DirectoryIcon, FileIcon
Ablauf der Element-Suche
Wenn die App ein bestimmtes Element in der CSS sucht, geht sie folgt vor:
- Alle Elemente des aktuellen Themes werden auf einen exakten Treffer abgesucht
- Wenn das nicht gebracht hat, wird die Suche nochmal durchgeführt, diesmal wird das * als Wildcard im Elementnamen berücksichtigt
- Wenn auch das nicht zu einem Ergebnis geführt hat, werden Schritt 1. und 2. mit Default-Style wiederholt
- Wenn das auch nicht zu einem Treffer geführt hat, wird ein in der App festkodierter Wert genutzt:
Icons: ""
Farben: #FFFFFF
Zahlen: 0
Was ist zu beachten
Farben
Farben beginnen mit einem #-Zeichen, gefolgt von den Hexadezimal-kodierten RGB bzw. RGBA Werten. Es ist möglich einen zusätzlichen Alphakanal anzugeben, falls man Transparanz-Effekte erzielen möchte.
Beispiele:
#FFFFFF = Weiß #000000 = Schwarz #FF0000 = Rot #00FF00 = Grün #0000FF = Blau #00FF00AA = Grün mit leichter Transparenz
Suchreihenfolge
Wenn mehere Elemente mit Wildcards für eine Suche in Frage kommen, wird immer das Element bevorzugt, welches den längsten Namen hat:
*.MainText { FontSize : 22 }
geht vor
* { FontSize : 22 }
Default Werte
Elemente wie die Header und Footer einer Maske können auch im bada standard Style belassen werden. Dazu muss explizit der Wert 'default' für eine Eigenschaft gesetzt werden.
*.Header { BackColor : default } *.Footer { BackColor : default }
Pfade
Pfadangaben für Icons sind immer relativ zu CSS Datei im Zip File anzugeben.