Mercurial > moin > 1.9
changeset 3796:668a7f2f1775
Introducing a remake of the default theme: Modernized
* a new set of tango icons
* improved colors of the header
* better display with CSS disabled
* minor spacing and border adjustments
* cleaner css for the header
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/MoinMoin/theme/modernized.py Tue Jun 24 22:39:50 2008 +0200 @@ -0,0 +1,314 @@ +# -*- coding: iso-8859-1 -*- +""" + MoinMoin - modern theme + + @copyright: 2003-2005 Nir Soffer, Thomas Waldmann + @license: GNU GPL, see COPYING for details. +""" + +from MoinMoin.theme import ThemeBase +from MoinMoin import wikiutil +from MoinMoin.Page import Page + +class Theme(ThemeBase): + + name = "modernized" + + _ = lambda x: x # We don't have gettext at this moment, so we fake it + icons = { + # key alt icon filename w h + # FileAttach + 'attach': ("%(attach_count)s", "moin-attach.png", 16, 16), + 'info': ("[INFO]", "moin-info.png", 16, 16), + 'attachimg': (_("[ATTACH]"), "attach.png", 32, 32), + # RecentChanges + 'rss': (_("[RSS]"), "moin-rss.png", 16, 16), + 'deleted': (_("[DELETED]"), "moin-deleted.png",16, 16), + 'updated': (_("[UPDATED]"), "moin-updated.png",16, 16), + 'renamed': (_("[RENAMED]"), "moin-renamed.png",16, 16), + 'conflict': (_("[CONFLICT]"), "moin-conflict.png", 16, 16), + 'new': (_("[NEW]"), "moin-new.png", 16, 16), + 'diffrc': (_("[DIFF]"), "moin-diff.png", 16, 16), + # General + 'bottom': (_("[BOTTOM]"), "moin-bottom.png", 16, 16), + 'top': (_("[TOP]"), "moin-top.png", 16, 16), + 'www': ("[WWW]", "moin-www.png", 16, 16), + 'mailto': ("[MAILTO]", "moin-email.png", 16, 16), + 'news': ("[NEWS]", "moin-news.png", 16, 16), + 'telnet': ("[TELNET]", "moin-telnet.png", 16, 16), + 'ftp': ("[FTP]", "moin-ftp.png", 16, 16), + 'file': ("[FILE]", "moin-ftp.png", 16, 16), + # search forms + 'searchbutton': ("[?]", "moin-search.png", 16, 16), + 'interwiki': ("[%(wikitag)s]", "moin-inter.png", 16, 16), + + # smileys (this is CONTENT, but good looking smileys depend on looking + # adapted to the theme background color and theme style in general) + #vvv == vvv this must be the same for GUI editor converter + 'X-(': ("X-(", 'angry.png', 16, 16), + ':D': (":D", 'biggrin.png', 16, 16), + '<:(': ("<:(", 'frown.png', 16, 16), + ':o': (":o", 'redface.png', 16, 16), + ':(': (":(", 'sad.png', 16, 16), + ':)': (":)", 'smile.png', 16, 16), + 'B)': ("B)", 'smile2.png', 16, 16), + ':))': (":))", 'smile3.png', 16, 16), + ';)': (";)", 'smile4.png', 16, 16), + '/!\\': ("/!\\", 'alert.png', 16, 16), + '<!>': ("<!>", 'attention.png', 16, 16), + '(!)': ("(!)", 'idea.png', 16, 16), + ':-?': (":-?", 'tongue.png', 16, 16), + ':\\': (":\\", 'ohwell.png', 16, 16), + '>:>': (">:>", 'devil.png', 16, 16), + '|)': ("|)", 'tired.png', 16, 16), + ':-(': (":-(", 'sad.png', 16, 16), + ':-)': (":-)", 'smile.png', 16, 16), + 'B-)': ("B-)", 'smile2.png', 16, 16), + ':-))': (":-))", 'smile3.png', 16, 16), + ';-)': (";-)", 'smile4.png', 16, 16), + '|-)': ("|-)", 'tired.png', 16, 16), + '(./)': ("(./)", 'checkmark.png', 16, 16), + '{OK}': ("{OK}", 'thumbs-up.png', 16, 16), + '{X}': ("{X}", 'icon-error.png', 16, 16), + '{i}': ("{i}", 'icon-info.png', 16, 16), + '{1}': ("{1}", 'prio1.png', 15, 13), + '{2}': ("{2}", 'prio2.png', 15, 13), + '{3}': ("{3}", 'prio3.png', 15, 13), + '{*}': ("{*}", 'star_on.png', 16, 16), + '{o}': ("{o}", 'star_off.png', 16, 16), + } + del _ + def header(self, d, **kw): + """ Assemble wiki header + + @param d: parameter dictionary + @rtype: unicode + @return: page header html + """ + html = [ + # Pre header custom html + self.emit_custom_html(self.cfg.page_header1), + + # Header + u'<div id="header">', + self.searchform(d), + self.logo(), + self.username(d), + u'<h1 id="locationline">', + self.interwiki(d), + self.title(d), + u'</h1>', + self.trail(d), + self.navibar(d), + #u'<hr id="pageline">', + u'<div id="pageline"><hr style="display:none;"></div>', + self.msg(d), + self.editbar(d), + u'</div>', + + # Post header custom html (not recommended) + self.emit_custom_html(self.cfg.page_header2), + + # Start of page + self.startPage(), + ] + return u'\n'.join(html) + + def editorheader(self, d, **kw): + """ Assemble wiki header for editor + + @param d: parameter dictionary + @rtype: unicode + @return: page header html + """ + html = [ + # Pre header custom html + self.emit_custom_html(self.cfg.page_header1), + + # Header + u'<div id="header">', + u'<h1 id="locationline">', + self.title(d), + u'</h1>', + self.msg(d), + u'</div>', + + # Post header custom html (not recommended) + self.emit_custom_html(self.cfg.page_header2), + + # Start of page + self.startPage(), + ] + return u'\n'.join(html) + + def footer(self, d, **keywords): + """ Assemble wiki footer + + @param d: parameter dictionary + @keyword ...:... + @rtype: unicode + @return: page footer html + """ + page = d['page'] + html = [ + # End of page + self.pageinfo(page), + self.endPage(), + + # Pre footer custom html (not recommended!) + self.emit_custom_html(self.cfg.page_footer1), + + # Footer + u'<div id="footer">', + self.editbar(d), + self.credits(d), + self.showversion(d, **keywords), + u'</div>', + + # Post footer custom html + self.emit_custom_html(self.cfg.page_footer2), + ] + return u'\n'.join(html) + + def title(self, d): + """ Assemble the title (now using breadcrumbs) + + @param d: parameter dictionary + @rtype: string + @return: title html + """ + _ = self.request.getText + content = [] + if d['title_text'] == d['page'].split_title(): # just showing a page, no action + curpage = '' + segments = d['page_name'].split('/') # was: title_text + for s in segments[:-1]: + curpage += s + content.append(Page(self.request, curpage).link_to(self.request, s)) + curpage += '/' + link_text = segments[-1] + link_title = _('Click to do a full-text search for this title') + link_query = { + 'action': 'fullsearch', + 'value': 'linkto:"%s"' % d['page_name'], + 'context': '180', + } + # we dont use d['title_link'] any more, but make it ourselves: + link = d['page'].link_to(self.request, link_text, querystr=link_query, title=link_title, css_class='backlink', rel='nofollow') + content.append(link) + else: + content.append(wikiutil.escape(d['title_text'])) + + location_html = u'<span class="sep">/</span>'.join(content) + html = u'<span id="pagelocation">%s</span>' % location_html + return html + + def username(self, d): + """ Assemble the username / userprefs link + + @param d: parameter dictionary + @rtype: unicode + @return: username html + """ + request = self.request + _ = request.getText + + userlinks = [] + # Add username/homepage link for registered users. We don't care + # if it exists, the user can create it. + if request.user.valid and request.user.name: + interwiki = wikiutil.getInterwikiHomePage(request) + name = request.user.name + aliasname = request.user.aliasname + if not aliasname: + aliasname = name + title = "%s @ %s" % (aliasname, interwiki[0]) + # link to (interwiki) user homepage + homelink = (request.formatter.interwikilink(1, title=title, id="userhome", generated=True, *interwiki) + + request.formatter.text(name) + + request.formatter.interwikilink(0, title=title, id="userhome", *interwiki)) + userlinks.append(homelink) + # link to userprefs action + if 'userprefs' not in self.request.cfg.actions_excluded: + userlinks.append(d['page'].link_to(request, text=_('Settings'), + querystr={'action': 'userprefs'}, id='userprefs', rel='nofollow')) + + if request.user.valid: + if request.user.auth_method in request.cfg.auth_can_logout: + userlinks.append(d['page'].link_to(request, text=_('Logout'), + querystr={'action': 'logout', 'logout': 'logout'}, id='logout', rel='nofollow')) + else: + query = {'action': 'login'} + # special direct-login link if the auth methods want no input + if request.cfg.auth_login_inputs == ['special_no_input']: + query['login'] = '1' + if request.cfg.auth_have_login: + userlinks.append(d['page'].link_to(request, text=_("Login"), + querystr=query, id='login', rel='nofollow')) + + userlinks_html = u'<span class="sep"> | </span>'.join(userlinks) + html = u'<div id="username">%s</div>' % userlinks_html + return html + + def trail(self, d): + """ Assemble page trail + + @param d: parameter dictionary + @rtype: unicode + @return: trail html + """ + request = self.request + user = request.user + html = '' + if not user.valid or user.show_page_trail: + trail = user.getTrail() + if trail: + items = [] + for pagename in trail: + try: + interwiki, page = wikiutil.split_interwiki(pagename) + if interwiki != request.cfg.interwikiname and interwiki != 'Self': + link = (self.request.formatter.interwikilink(True, interwiki, page) + + self.shortenPagename(page) + + self.request.formatter.interwikilink(False, interwiki, page)) + items.append(link) + continue + else: + pagename = page + + except ValueError: + pass + page = Page(request, pagename) + title = page.split_title() + title = self.shortenPagename(title) + link = page.link_to(request, title) + items.append(link) + html = u'<div id="pagetrail">%s</div>' % u'<span class="sep"> » </span>'.join(items) + return html + + def interwiki(self, d): + """ Assemble the interwiki name display, linking to page_front_page + + @param d: parameter dictionary + @rtype: string + @return: interwiki html + """ + if self.request.cfg.show_interwiki: + page = wikiutil.getFrontPage(self.request) + text = self.request.cfg.interwikiname or 'Self' + link = page.link_to(self.request, text=text, rel='nofollow') + html = u'<span id="interwiki">%s<span class="sep">: </span></span>' % link + else: + html = u'' + return html + +def execute(request): + """ + Generate and return a theme object + + @param request: the request object + @rtype: MoinTheme + @return: Theme object + """ + return Theme(request) +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/wiki/htdocs/modernized/css/common.css Tue Jun 24 22:39:50 2008 +0200 @@ -0,0 +1,517 @@ +/* common.css - MoinMoin Default Styles + +Copyright (c) 2001, 2002, 2003 by Juergen Hermann +*/ + +/* content styles */ + +html { + background-color: white; + color: black; + font-family: Arial, Lucida Grande, sans-serif; + font-size: 1em; +} + +body { + margin: 0; +} + +/* Links */ + +a {color: #0044B3;} +/* a:visited {color: #597BB3;} */ +a:visited {color: #FF7BB3;} +a.nonexistent, a.badinterwiki {color: gray;} + +a.www:before {content: url(../img/moin-www.png); margin: 0 0.2em;} +a.http:before {content: url(../img/moin-www.png); margin: 0 0.2em;} +a.https:before {content: url(../img/moin-www.png); margin: 0 0.2em;} +a.file:before {content: url(../img/moin-ftp.png); margin: 0 0.2em;} +a.ftp:before {content: url(../img/moin-ftp.png); margin: 0 0.2em;} +a.nntp:before {content: url(../img/moin-news.png); margin: 0 0.2em;} +a.news:before {content: url(../img/moin-news.png); margin: 0 0.2em;} +a.telnet:before {content: url(../img/moin-telnet.png); margin: 0 0.2em;} +a.irc:before,a.ircs:before {content: url(../img/moin-telnet.png); margin: 0 0.2em;} +a.mailto:before {content: url(../img/moin-email.png); margin: 0 0.2em;} +a.attachment:before {content: url(../img/moin-attach.png); margin: 0 0.2em;} +a.badinterwiki:before {content: url(../img/moin-inter.png); margin: 0 0.2em;} +a.interwiki:before {content: url(../img/moin-inter.png); margin: 0 0.2em;} + +li p { + margin: .25em 0; +} + +li.gap { + margin-top: 0.5em; +} + +dt { + margin-top: 0.5em; + font-weight: bold; +} + +dd { + margin-top: 0; + margin-bottom: 0; +} + +dd p { + margin: 0.25em 0; +} + +a, img, img.drawing { + border: 0; +} + +pre { + border: 1pt solid #AEBDCC; + background-color: #F3F5F7; + padding: 5pt; + font-family: courier, monospace; + white-space: pre; + /* begin css 3 or browser specific rules - do not remove! + see: http://forums.techguy.org/archive/index.php/t-249849.html */ + white-space: pre-wrap; + word-wrap: break-word; + white-space: -moz-pre-wrap; + white-space: -pre-wrap; + white-space: -o-pre-wrap; + /* end css 3 or browser specific rules */ +} + +pre.comment { + background-color: #CCCCCC; + color: red; + padding: 0; + margin: 0; + border: 0; +} + +pre.comment:before { + content: url(../img/attention.png); +} + + +/* .comment css definition must be top of .red/.green/.blue or it won't work */ +.comment { color: #555555; background-color: #DDDDFF; } + +.red { background-color: #FFCCCC; } +.green { background-color: #CCFFCC; } +.blue { background-color: #CCCCFF; } +.yellow { background-color: #FFF29F; } +.orange { background-color: #FFD59B; } + +.solid { border: 2px solid #000000; padding: 2px; } +.dashed { border: 2px dashed #000000; padding: 2px; } +.dotted { border: 2px dotted #000000; padding: 2px; } + + +table +{ + margin: 0.5em 0 0 0.5em; + border-collapse: collapse; +} + +th, td +{ + padding: 0.25em 0.5em 0.25em 0.5em; + border: 1pt solid #ADB9CC; +} + +td p { + margin: 0; + padding: 0; +} + +/* TableOfContents macro */ +.table-of-contents { border: 1px solid #bbbbbb; + color: black; background-color: #eeeeee; + font-size: small; + text-align:left; + margin: 0.5em; padding-left: 2em; + min-width:50%; } +.table-of-contents ol { margin:0; margin-left:1em; + list-style-type:decimal; } +.table-of-contents ul { margin:0; + list-style-type:none; } +.table-of-contents-heading { font-weight:bold; padding:0; margin:0; } + + +.footnotes div { + width: 5em; + border-top: 1pt solid gray; +} + +.footnotes ol { + padding: 0 2em; + margin: 0 0 1em; +} + +.footnotes li { +} + +.info { + float: right; + font-size: 0.7em; + color: gray; +} + +#pageinfo { + margin-top: 2em; +} + +.seperator { + color: gray; +} + +#pagebottom {clear: both;} + +/* standard rule ---- */ +hr { + height: 1pt; + background-color: #9C9C9C; + border: 0; +} + +/* custom rules ----- to ---------- */ +.hr1 {height: 2pt;} +.hr2 {height: 3pt;} +.hr3 {height: 4pt;} +.hr4 {height: 5pt;} +.hr5 {height: 6pt;} +.hr6 {height: 7pt;} + +/* Replacement for deprecated html 3 <u> element and html 4 <strike> */ +.u {text-decoration: underline;} +.strike {text-decoration: line-through;} + +/* eye catchers */ +.warning +{ + color: red; +} + +.error +{ + color: red; +} + +strong.highlight +{ + background-color: #CCE0FF; + padding: 1pt; +} + + +/* Recent changes */ + +.rcrss { + float: right; + margin: 0 7px 0 14px; + height: 0; + position: relative; + top: 9px; +} +*[div="rtl"] .rcrss { + float: left; +} +.recentchanges[dir="rtl"] .rcrss { + float: left; +} + +.recentchanges table { + clear: both; + border-collapse: collapse; + + border: 1px solid #4d7da9; +} + +.recentchanges td { + vertical-align: top; + border: none; + background: #e6eaf0; +} + + +.recentchanges .rcdaybreak td { + background: #81BBF2; + border: none; + border: 1px solid #4d7da9; +} + +.rcdaybreak td a { + font-size: 0.88em; +} + +.rcicon1, .rcicon2 { + text-align: center; +} + +.rcpagelink { + width: 33%; +} + +.rctime { + font-size: 0.88em; + white-space: nowrap; +} + +.rceditor { + white-space: nowrap; + font-size: 0.88em; +} + +.rccomment { + width: 50%; + color: gray; + font-size: 0.88em; +} + + +/* User Preferences */ + +.userpref table, .userpref td { + border: none; +} + +/* CSS for new code_area markup used by Colorizer and ParserBase */ + +div.codearea { /* the div makes the border */ + margin: 0.5em 0; + padding: 0; + border: 1pt solid #AEBDCC; + background-color: #F3F5F7; + color: black; +} + +div.codearea pre { /* the pre has no border and is inside the div */ + margin: 0; + padding: 10pt; + border: none; +} + +a.codenumbers { /* format of the line numbering link */ + margin: 0 10pt; + font-size: 0.85em; + color: gray; +} + +/* format of certain syntax spans */ +div.codearea pre span.LineNumber {color: gray;} +div.codearea pre span.ID {color: #000000;} +div.codearea pre span.Operator {color: #0000C0;} +div.codearea pre span.Char {color: #004080;} +div.codearea pre span.Comment {color: #008000;} +div.codearea pre span.Number {color: #0080C0;} +div.codearea pre span.String {color: #004080;} +div.codearea pre span.SPChar {color: #0000C0;} +div.codearea pre span.ResWord {color: #A00000;} +div.codearea pre span.ConsWord {color: #008080; font-weight: bold;} +div.codearea pre span.Error {color: #FF8080; border: solid 1.5pt #FF0000;} +div.codearea pre span.ResWord2 {color: #0080ff; font-weight: bold;} +div.codearea pre span.Special {color: #0000ff;} +div.codearea pre span.Preprc {color: #803999;} + +/* for diff parser */ +div.codearea pre span.DiffAdded {color: #4876FF;} +div.codearea pre span.DiffRemoved {color: #FF0000;} +div.codearea pre span.DiffChanged {color: #FF7F50;} +div.codearea pre span.DiffSeparator {color: #228B22; font-weight: bold} + +/* Search results */ +.advancedsearch { + border: 1pt solid #ADB9CC; +} + +.advancedsearch td { + vertical-align: top; + background-color: #E7E7E7; + border: 0px; +} + +.advancedsearch td.searchfor { + font-weight: bold; +} + +.advancedsearch input { + border: 1px solid #ADB9CC; + background-color: #fff; +} + +.advancedsearch input[disabled] { + background-color: #eee; +} + +.advancedsearch td.submit { + border-top: 1px solid #ADB9CC; + background-color: #fff; + text-align: right; +} + +.advancedsearch optioni, +.advancedsearch select { + border: 1px solid #ADB9CC; + background-color: #fff; +} + + +.searchresults dt { + margin-top: 1em; + font-weight: normal; +} + +.searchresults dd, .searchresults p { + font-size: 0.85em; +} + +.searchresults .searchhitinfobar { + color: #008000; + margin-left: 15px; + margin-top: 0; +} + +p.searchstats { + font-size: 0.8em; + text-align: right; + width: 100%; + background-color: #E6EAF0; + border-top: 1px solid #9088DC; + padding: 2px; +} + +p.searchhint { + background-color: #E6EAF0; + border: 1px solid #9088DC; + padding: 2px; +} + +.searchpages { + margin-left: auto; + margin-right: auto; +} + +.searchpages tr, .searchpages td { + border: 0; + padding: 5px; + margin: 0; + text-align: center; + vertical-align: middle; + color: #b93a58; + font-weight: bold; + font-size: 1.05em; +} + +.searchpages td a, .searchpages td a:link { + text-decoration: underline; +} + +/* MonthCalendar css */ + +/* days without and with pages linked to them */ +a.cal-emptyday { + color: #777777; + text-align: center; +} +a.cal-usedday { + color: #000000; + font-weight: bold; + text-align: center; +} +/* general stuff: workdays, weekend, today */ +td.cal-workday { + background-color: #DDDDFF; + text-align: center; +} +td.cal-weekend { + background-color: #FFDDDD; + text-align: center; +} +td.cal-today { + background-color: #CCFFCC; + border-style: solid; + border-width: 2pt; + text-align: center; +} +/* invalid places on the monthly calendar sheet */ +td.cal-invalidday { + background-color: #CCCCCC; +} +/* links to prev/next month/year */ +a.cal-link { + color: #000000; + text-decoration: none; +} +th.cal-header { + background-color: #DDBBFF; + text-align: center; +} + +/* for MonthCalendar mouseover info boxes */ +TABLE.tip { + color: black; + background-color: #FF8888; + font-size: small; + font-weight: normal; + border-style: solid; + border-width: 1px; +} + +TH.tip { + background-color: #FF4444; + font-weight: bold; + text-align: center; +} + +TD.tip { + text-align: left; +} +*[dir="rtl"] TD.tip { + text-align: right; +} + +/* end MonthCalendar stuff */ + +#message .hint {font-style: italic;} +#message .info { + float: none; + font-size: 1em; + color: black; +} +#message .info:before {content: url('../img/icon-info.png'); margin: 0 0.2em;} +#message .warning:before {content: url('../img/alert.png'); margin: 0 0.2em;} +#message .error:before {content: url('../img/icon-error.png'); margin: 0 0.2em;} + + +/* admonition start */ +#content div.caution, +#content div.important, +#content div.note, +#content div.tip, +#content div.warning { + border: 1pt solid #E5E5E5; + background-color: #F9F9FF; + color: black; + + margin: 10pt 30pt 10pt 30pt; + background-repeat: no-repeat; + background-position: 8px 8px; + min-height: 64px; /*64=48+8+8 but doesn't work with IE*/ + padding-left: 64px; +} + +#content div.caution p, +#content div.important p, +#content div.note p, +#content div.tip p, +#content div.warning p { + margin-top: 8px; /*to align text with bg graphic*/ +} + +#content div.tip { background-image: url("../img/admon-tip.png"); } +#content div.note { background-image: url("../img/admon-note.png"); } +#content div.important { background-image: url("../img/admon-important.png"); } +#content div.caution { background-image: url("../img/admon-caution.png"); } +#content div.warning { background-image: url("../img/admon-warning.png"); } + +/* admonition end */ +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/wiki/htdocs/modernized/css/msie.css Tue Jun 24 22:39:50 2008 +0200 @@ -0,0 +1,57 @@ +/* msie.css - MoinMoin MS Internet explorer bug workarounds */ + +/* IE6 and IE7 both suck with :before */ +a.www { padding-left: 14px; background: url(../img/moin-www.png) left center no-repeat; } +a.http { padding-left: 14px; background: url(../img/moin-www.png) left center no-repeat; } +a.https { padding-left: 14px; background: url(../img/moin-www.png) left center no-repeat; } +a.file { padding-left: 14px; background: url(../img/moin-ftp.png) left center no-repeat; } +a.ftp { padding-left: 14px; background: url(../img/moin-ftp.png) left center no-repeat; } +a.nntp { padding-left: 14px; background: url(../img/moin-news.png) left center no-repeat; } +a.news { padding-left: 14px; background: url(../img/moin-news.png) left center no-repeat; } +a.telnet { padding-left: 14px; background: url(../img/moin-telnet.png) left center no-repeat; } +a.irc,a.ircs { padding-left: 14px; background: url(../img/moin-telnet.png) left center no-repeat; } +a.mailto { padding-left: 14px; background: url(../img/moin-email.png) left center no-repeat; } +a.attachment { padding-left: 14px; background: url(../img/moin-attach.png) left center no-repeat; } +a.badinterwiki { padding-left: 14px; background: url(../img/moin-inter.png) left center no-repeat; } +a.interwiki { padding-left: 14px; background: url(../img/moin-inter.png) left center no-repeat; } +#message .warning { padding-left: 20px; background: url(../img/alert.png) left center no-repeat; } +#message .error { padding-left: 20px; background: url(../img/icon-error.png) left center no-repeat; } + +#pagetrail li, #pagelocation li { + border-left: 1px solid #AAA; + padding: 0 0.3em; +} + +/* Spans for line-anchors - needed for IE6 and IE7 where omitting the "display: none" triggers rendering bugs. */ +span.anchor { display: none; } + +/* +This could maybe avoid screen jumping in IE with IE7 hack. + +It works (or rather: should work) like this: +First, IE sees the a.interwiki definition only as it doesn't understand neither +* > a.interwiki, nor a.interwiki:before. We use a.interwiki to reserve some +space for the icon inserted later. +Later, the IE7 hack kicks in and then IE also understands those 2 other css lines. +The * > a.interwiki line now removes the space we previously reserved and the +:before inserts the icon. + +a.interwiki {margin-left: 25px; padding-top: 25px; padding-bottom: 25px;} +* > a.interwiki {margin-left: 0px; padding-top: 25px; padding-bottom: 25px;} +a.interwiki:before {content: url(../img/moin-inter.png);} + +Problem: +While margin-left seems to work, margin-/padding-top/bottom doesnt. +After getting it to work, this has to be fine-tuned to avoid screen jumping. +*/ + +/* Some * html hacks for IE6 and below only (IE7 ignores * html) */ + +/* IE6 has a bug with rendering of float elements. We workaround this bug by + * assigning those elements a height attribute because we currently don't know + * a better solution. This results in IE calculating the correct height of the + * characters and displaying them correctly. We don't know any negative side + * effects of this workaround: + */ +* html div#page, * html div#header { height: 0.001%; } +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/wiki/htdocs/modernized/css/print.css Tue Jun 24 22:39:50 2008 +0200 @@ -0,0 +1,53 @@ +/* print.css - MoinMoin Default Styles + +Copyright (c) 2001, 2002, 2003 by Juergen Hermann +*/ + +/* content styles */ + +html { + font-family: Times, serif; + font-size: 12pt; +} + +body { + /* Give about 3.4cm in Mozilla/Firefox and about 2.2cm in Safari */ + margin: 1.5cm; +} + +a, a:visited, a.nonexistent, a.badinterwiki { + color: black; + text-decoration: none; +} + +a:hover { + text-decoration: underline; +} + +.info a { + color: gray; +} + +pre { + font-size: 10pt; +} + +a.interwiki:before, a.badinterwiki:before { + content: attr(title) ":"; +} + +a.interwiki img, a.badinterwiki img { + display: none; +} + +.footnotes div { + width: 5em; + border-top: 1pt solid gray; +} + +/* user interface styles */ + +#header, #sidebar, #footer, #timings, #credits, #interwiki, #pagelocation { + display: none; +} +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/wiki/htdocs/modernized/css/projection.css Tue Jun 24 22:39:50 2008 +0200 @@ -0,0 +1,33 @@ +/* projection.css - MoinMoin Slide Styles + +Copyright (c) 2003 by Juergen Hermann +*/ + +@import url(screen.css); + +html { line-height: 1.8em; } + +body, b, em, a, span, div, p, td { font-size: 18pt; } + +h1 { font-size: 26pt; } +h2 { font-size: 22pt; } +h3 { font-size: 20pt; } +h4 { font-size: 18pt; } +h5 { font-size: 16pt; } +h6 { font-size: 14pt; } + +tt, pre { font-size: 16pt; } +sup, sub { font-size: 12pt; } + +table.navigation { + float: right; + margin: 2px; +} + +.navigation td, .navigation a { + font-size: 10pt; + padding: 2px; +} + +#interwiki, #pagelocation, #pageinfo { display: none; } +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/wiki/htdocs/modernized/css/screen.css Tue Jun 24 22:39:50 2008 +0200 @@ -0,0 +1,441 @@ +/* screen.css - MoinMoin Default Styles + +Copyright (c) 2001, 2002, 2003 by Juergen Hermann +*/ + +/* content styles */ + +/* debug +* {border: 1px dotted blue;} +*/ + +body { + padding: 0; + border: 0; +} + +a:link { color: #47f; text-decoration: none; } +a:link:hover, a:link:active { text-decoration: underline; color: green; } +a:visited { text-decoration: none; color: #04a;} +a:visited:hover { text-decoration: none; color: red; } + +a.download { + font-size: 120%; + letter-spacing: 0.05em; + font-weight: bold; + background: #E7E7E7; + border: 1px solid #9C9C9C; + padding: 0.5em; + text-align: center; +} + +input { + /* does strange effect to button (text size becomes bigger when clicking) + font-size: 1em; + font-family: Arial, Lucida Grande, sans-serif; + */ +} + +textarea { + font-size: 1em; + font-family: monospace; +} + +.disabled { + /* IE ignore disabled attribute, but at least show items in gray */ + color: gray; +} + +/* user interface styles */ + +#header { + margin: 1px; + padding: 1px; + background: #e6eaf0; + line-height: 1.1em; +} + +#logo { + float: left; + margin: 5px 10px; + padding: 0; + /* For text only logo */ + font-size: 1.4em; + line-height: 1em; + font-weight: bold; +} + +*[dir="rtl"] #logo { + float: right; +} + +#logo img { + vertical-align: middle; +} + +#logo a { + color: black; + text-decoration: none; +} + + +#username { + display; block; + margin: 8px 12px 4px 12px; + padding: 0; + font-size: 0.82em; +} + +#username form { + display: inline; +} + +#username input { + display: inline; + padding: 0; + margin: 0; + border: none; + background: transparent; + color: blue; + font-size: 0.82em; + cursor: pointer; +} + +#username input:hover { + color: red; +} + +#searchform { + margin: 4px 0.5em 8px 0.5em; + padding: 0; + font-size: 0.82em; + float: right; + clear: right; + text-align: right; +} +*[dir="rtl"] #searchform { + float: left; + clear: left; + text-align: left; +} +#searchform input { + font-size: 100%; + vertical-align: middle; +} +#pagetrail { + clear: right; + display: inline; + margin: 0.5em 0; + padding: 0; + font-size: 0.88em; +} + +*[dir="rtl"] #pagetrail { + clear: left; +} + +#interwiki { + font-size: 1em; +} + +#locationline { + padding: 0; + font-size: 100%; + font-weight: normal; + margin: 0.25em 12px 5px 12px; + clear: right; +} +*[dir="rtl"] #locationline { + clear: left; +} + +#pagelocation { + font-size: 1.5em; + letter-spacing: 0.05em; +} + + +*[dir="rtl"] #pagetrail span.sep { + visibility: hidden; +} +*[dir="rtl"] #pagetrail span.sep:after { + content: " « "; +} + +#navibar { + clear: both; /* problem: clear: right; aligns nicely right of logo, + but lets it float high in the header, disconnected from ground */ + display: block; + margin: 0; + padding: 0 10px; + font-size: 0.82em; + zoom: 1; /* for avoiding a gap between navibar and pageline on IE */ +} + +#navibar li { + float: left; + display: inline; + margin: 0 2px; + padding: 2px 5px; + border: 1px solid #acd; + border-bottom: none; + white-space: nowrap; +} + +*[dir="rtl"] #navibar li { + float: right; +} + +#navibar li.wikilink { + background: white; /*url(../img/tab-wiki.png) repeat-x;*/ +} + +#navibar li.userlink { + background: #E6EAF0; /*url(../img/tab-user.png) repeat-x;*/ +} + +#navibar a, #navibar a:visited { + color: black; + text-decoration: none; +} + +#navibar li.current a { + font-weight: bold; +} + +#navibar li:hover { + background: #d6e4f9; +} + +#navibar li.current, #navibar li.current:hover { + background: #81BBF2; /* url(../img/tab-selected.png) repeat-x; */ + border: 1px solid #4d7da9; + border-bottom: 1px solid #81bbf2; + margin-bottom: -1px; +} + +#pageline { + clear: both; + margin: 0; + padding: 0; + width: 100%; + /* sync these values, line-height is needed for IE */ + height: 4px; + line-height: 4px; + border-bottom: 1px solid #4d7da9; + border-top: 1px solid #4d7da9; + background: #81BBF2; +} + +.editbar { + clear: both; + display: block; + margin: 0; + padding: 2px 8px; + background: #d6e4f9; + font-size: 0.8em; + border-bottom: 1px solid #4d7da9; + border-top: 1px solid #4d7da9; + margin-top: -1px; +} + +.editbar form, .editbar form div { + display: inline; + margin: 0; +} + +.editbar select { + font-size: 100%; + vertical-align: middle; +} + +.editbar li { + display: inline; + padding: 0; + margin: 4px 6px; +} + +.editbar a, .editbar a:visited { color: #0044B3; } + +#message { + clear: both; + margin: 0; + padding: 5px 10px; + border-bottom: 1px solid #c9c9c9; + background: #E6EAF0; +} + +#message p { + margin: 5px 0; + padding: 0; + /* font-weight: bold; */ +} + +#message div.buttons { + font-weight: normal; +} + +.dialog form { + margin: 0 15px; +} + +.dialog td { + border: none; + padding: 5px; +} + +.dialog td.label { + text-align: right; + font-weight: bold; + width: 25%; +} + +*[dir="rtl"] .dialog td.label { + text-align: left; +} + +.dialog td.content input { + width: 100%; +} + +#page { + background-color: white; + margin: 0; + padding: 2px 20px 20px 20px; + + /* theses are some Firefox 1.5b1 specific extensions, see also the CSS3 draft. + -moz-column-width: 25em; + -moz-column-gap: 2em; + -moz-column-rule: solid black 0.3em; -- doesn't work yet with 1.5b1! + + TODO: make text/gui editor NOT use #page css, we don't want columns there! + */ +} + +/* We use here dumb css1 ids because of IE suckiness */ +#editor-textarea, #editor-help { + font-family: monospace; + border: 1px solid #8cacbb; + color: black; + background-color: white; + padding: 3px; + width: 100%; + margin-top: 0.5em; +} + +#editor-help { + font-size: small; + background-color: #EEEEFF; +} + +#editor-comment { + font-size: 100%; + border: 1px solid #8cacbb; + color: black; + background-color: white; + vertical-align: middle; + padding: 1px; + display: inline; + width: 70%; +} + +#preview, #previewbelow { + border: 1px solid #6C7680; + padding: 10px 30px 20px 30px; + background: url(../img/draft.png); + margin-top: 0.5em; +} + +#textcha { + font-size: 100%; + margin-top: 0.5em; + border: 2px solid #FF8888; + color: black; + vertical-align: middle; + padding: 3px 2px; +} + +#textcha-answer { + border: 2px solid #000000; + padding: 3px 2px; +} + +input.button { + /* + border: 1px solid #8cacbb; + color: black; + background-color: #CCCCCC; + vertical-align: middle; + text-decoration: none; + font-size: 100%; + cursor: pointer; + margin: 2px; + padding: 1px; + display: inline; + */ +} + +#footer { + clear: both; + margin: 0; + padding: 0; +} + +#credits, #version, #timings{ + margin: 5px 10px; + padding: 0; + text-align: center; + font-size: 0.88em; + color: #6C7680; +} + +#credits li, #timings li { + display: inline; + padding: 0 2px; + margin: 0 4px; +} + +#credits img { + vertical-align: middle; +} + +.diff { + width:99%; +} + +.diff-header { + font-weight: bold; +} + +.diff-title { + background-color: #C0C0C0; +} + +.diff-added { + background-color: #E0FFE0; + vertical-align: sub; +} + +.diff-removed { + background-color: #FFFFE0; + vertical-align: sub; +} + +.diff-added span { + background-color: #80FF80; +} + +.diff-removed span { + background-color: #FFFF80; +} + +table.navigation { + float: right; + margin: 2px; +} + +#openididentifier { + background: url(../../common/openid.png) no-repeat; + background-position: 0 50%; + padding-left: 18px; +}