BadaBoard Themes erstellen
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.
badaBoards Pseudo-CSS
So sieht die aktuelle DefaultStyle.css Datei aus:
// Default-Style // Allgemeine Einstellungen * { BackColor : #000000 FontColor : #FFFFFF } *.List { HightlightBackColor : #282828 } *.Tabbar { BackColor : #bd520f } // Main und SubText in den Listen *.MainText { FontSize : 30 } *.SubText { FontSize : 22 } // Einstellungen für die Anzeige von Postings *.Posting.MainText { FontSize : 30 } *.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 }
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- List
BackColor, ForumIcon, EditForumIcon , RemoveForumIcon - Footer
BackColor
- List
- Forum - Die 1. Übersicht eines Forums
BackColor- Header
- Tabbar
BackColor - List - Die Liste der Foren bzw. Topics
BackColor, ForumIcon, TopicIcon, StickyIcon, AnouncementIcon, SweepTopicLastPost, SweepTopicSubscribe, HightlightBackColor- ForumElement
- MainText
FontSize, FontColor - SubText
FontSize, FontColor
- MainText
- TopicElement
- MainText
FontSize, FontColor - SubText
FontSize, FontColor
- MainText
- ForumElement
- Footer
UserCPIcon, NewTopicIcon, ActiveTopicIcon,MoreIcon
- Topic
BackColor- Header
- Tabbar
BackColor - List - Die Liste der Beiträge im Topic
BackColor, ElementBackgroundIcon, ElementBackgroundIcon2, HightlightBackColor- Posting
- Siehe PostingPopUp->Posting für untergeordnete Elemente
- Posting
- Footer
ReplyIcon
- PostingPopUp
BackColor- Posting
BackColor- MainText
FontSize, FontColor - QuotedText
FontSize, FontColor, BackColor - SpoilerText
FontSize, FontColor, BackColor - LinkText
FontSize, FontColor
- MainText
- Posting
- NewPosting
- ReplyPosting
- UserCP - Das User Control-Panel
BackColor- Tabbar
BackColor - List
BackColor, SweepPMDeleteIcon, SweepDeSubscribeIcon - Footer
PMListIcon, PMNewIcon, SubscriptionIcon
- Tabbar
- NewPM
- ReplyPM
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