[Zope3-checkins] CVS: Zope3/src/zope/app/onlinehelp/browser/skin -
__init__.py:1.1 configure.zcml:1.1 favicon.png:1.1
onlinehelp.css:1.1 standardmacros.py:1.1 template.pt:1.1
view_macros.pt:1.1 zope3onlinehelplogo.gif:1.1
Philipp von Weitershausen
philikon at philikon.de
Fri Feb 27 11:15:27 EST 2004
Update of /cvs-repository/Zope3/src/zope/app/onlinehelp/browser/skin
In directory cvs.zope.org:/tmp/cvs-serv16018/onlinehelp/browser/skin
Added Files:
__init__.py configure.zcml favicon.png onlinehelp.css
standardmacros.py template.pt view_macros.pt
zope3onlinehelplogo.gif
Log Message:
Centralized the onlinehelp facility, its browser views/skins and its
interfaces in zope.app.onlinehelp.
=== Added File Zope3/src/zope/app/onlinehelp/browser/skin/__init__.py ===
#
# This file is necessary to make this directory a package.
=== Added File Zope3/src/zope/app/onlinehelp/browser/skin/configure.zcml ===
<zope:configure
xmlns:zope="http://namespaces.zope.org/zope"
xmlns="http://namespaces.zope.org/browser">
<layer name="onlinehelp" />
<skin name="Onlinehelp" layers="onlinehelp images css default" />
<page
for="*"
name="standard_macros"
permission="zope.View"
class=".standardmacros.StandardMacros"
allowed_interface="zope.interface.common.mapping.IItemMapping"
layer="onlinehelp" />
<page
for="*"
name="skin_macros"
permission="zope.View"
template="template.pt"
layer="onlinehelp" />
<page
for="*"
name="view_macros"
permission="zope.View"
template="view_macros.pt"
layer="onlinehelp" />
<resource
name="favicon.png"
file="favicon.png"
layer="onlinehelp" />
<resource
name="onlinehelp.css"
file="onlinehelp.css"
layer="css" />
<resource
name="zope3onlinehelplogo.gif"
file="zope3onlinehelplogo.gif"
layer="images" />
</zope:configure>
=== Added File Zope3/src/zope/app/onlinehelp/browser/skin/favicon.png ===
<Binary-ish file>
=== Added File Zope3/src/zope/app/onlinehelp/browser/skin/onlinehelp.css ===
/*
** Zope3 style sheet for CSS2-capable browsers.
**
*/
/*
* { border: 1px dotted red }
*/
/* Basic Elements */
body {
font: 85% Helvetica, Arial, sans-serif;
background: White;
color: Black;
margin: 0;
padding: 0;
/* These work in IE only, changes the look of the scrollbar + textareas */
scrollbar-base-color: White;
scrollbar-highlight-color: White;
scrollbar-track-color: #F8F8F8;
scrollbar-darkshadow-color: #F8F8F8;
scrollbar-3dlight-color: #336699;
scrollbar-shadow-color: #336699;
scrollbar-arrow-color: Black;
}
table {
font-size: 100%;
}
a {
text-decoration: none;
color: #336699;
background-color: transparent;
}
table {
}
img {
border: none;
vertical-align: middle;
}
p {
margin: 0.5em 0em 1em 0em;
line-height: 1.5em;
}
p a {
text-decoration: underline;
}
p a:visited {
color: Purple;
background-color: transparent;
}
p a:active {
color: Red;
background-color: transparent;
}
p img {
border: 0;
margin: 0;
}
hr {
clear: both;
height: 1px;
color: #336699;
background-color: transparent;
}
h1, h2, h3, h4, h5, h6 {
color: Black;
clear: left;
font: 100% bold Verdana, Helvetica, Arial, sans-serif;
margin: 0;
padding-top: 0.5em;
border-bottom: 1px solid #336699;
}
h1 {
font-size: 160%;
}
h2 {
font-size: 150%;
}
h3 {
font-size: 140%;
}
h4 {
font-size: 120%;
}
h5 {
font-size: 100%;
}
h6 {
font-size: 80%;
}
ul {
line-height: 1.5em;
/* list-style-image: url("bullet.gif"); */
margin-left: 2em;
padding:0;
}
ol {
line-height: 1.5em;
margin-left: 2em;
padding:0;
}
ul a, ol a {
text-decoration: underline;
}
dl {
}
dt {
font-weight: bold;
}
dd {
line-height: 1.5em;
margin-bottom: 1em;
}
fieldset {
border: 1px solid #A0A0A0;
margin: 2em 0em 1em 0em;
padding: 1em 0em;
}
legend {
background: White;
padding: 0.5em;
}
form {
border: none;
margin: 0;
}
textarea {
color: Black;
width: 88%;
padding: 0.1em;
}
input {
font: normal 100% Verdana, Helvetica, Arial, sans-serif;
color: Black;
vertical-align: middle;
margin-bottom: 1px; /* IE bug fix */
padding: 0.1em;
}
select {
font: normal 100% Verdana, Helvetica, Arial, sans-serif;
vertical-align: top;
}
abbr, acronym, .explain {
border-bottom: 1px dotted Black;
color: Black;
background-color: transparent;
cursor: help;
}
q {
font-family: Times, "Times New Roman", serif;
font-style: italic;
font-size: 120%;
}
blockquote {
font-family: Times, "Times New Roman", serif;
font-style: italic;
font-size: 120%;
}
code {
font-size: 120%;
color: Black;
background-color: #CCCCCC;
}
pre {
font-size: 120%;
padding: 1em;
border: 1px solid #A0A0A0;
color: Black;
background-color: #CCCCCC;
}
.netscape4 {
display: none;
}
/* Structural elements */
#global {
border-bottom: 0.1em solid black;
}
#global #userDetails {
float:right;
margin-top: 1.2em;
padding-right: 0.5em;
}
#breadcrumbsBar {
background: #336699;
border-left: 1px solid #336699;
border-right: 1px solid #336699;
padding: 0.3em;
color: WHITE;
border-collapse: collapse;
}
#breadcrumbsBar a {
color: WHITE;
padding: 0 0.2em;
}
#breadcrumbsBar a:hover {
color: GRAY;
}
#navigators {
width: 20%;
float: left;
padding: 0.5em 0.5em 0.5em 0.5em;
overflow: hidden;
}
#help {
float: left;
}
#settings {
float: left;
}
#workspace {
width: 75%;
float: left;
padding: 0.5em 0em 0.5em 0em;
}
#content {
float: left;
width: 75%;
}
#context_information {
padding-top: 1em;
width: 15%;
float: left;
padding-left: 0.5em 0.5em 0.5em 0.5em;
}
#helpers {
}
#inspectors {
}
#footer {
border-bottom: 1px solid black;
float: left;
clear: both;
}
div.row {
clear: both;
padding-top: 10px;
}
/* XXX: div.row div.field doesn't appear to be selecting. div.row div
is a workaround */
div.row div {
float: left;
}
div.row div.label {
text-align: right;
width: 100px;
margin-right: 0.8em;
font-weight: bold;
}
div.row div.error {
float: left;
color: red;
margin-left: 0.8em;
}
div.row div.error:before {
content: "\2190 "; /* Left pointing arrow */
}
div.box {
margin: 0em 0em 1em 0em;
padding: 0em;
}
div.box h4 {
background: #CCCCCC;
border: 1px solid #CCCCCC;
border-style: solid solid none solid;
color: #808080;
padding: 0em 0.5em;
display: block;
font-size: 1em;
height: 1em;
text-align: left;
}
div.box div.body {
background: transparent;
border-collapse: collapse;
border: 1px solid #CCCCCC;
}
div.box .content {
padding: 0.5em;
}
div.box h1,
div.box h2,
div.box h3,
div.box h4 {
margin: 0;
}
div.box .even {
background-color: #F8F8F8;
}
div.box .odd {
background-color: White;
}
.itemViews {
background: transparent;
border-collapse: collapse;
border-bottom: 1px solid #336699;
padding-left: 1em;
margin-top: 0.8em;
white-space: nowrap;
}
.itemViews a {
background: transparent;
border: 1px solid #336699;
color: Black;
font-weight: normal;
margin-right: 0.5em;
padding: 0.1em 0.5em 0.1em 0.5em;
}
.itemViews a.selected {
background: #336699;
border-bottom: #336699 1px solid;
color: White;
font-weight: normal;
}
.itemViews a:hover {
background-color: #336699;
color: White;
}
#viewspace {
border: 1px solid #336699;
border-collapse: collapse;
padding: 10px;
margin: 0;
}
table.listing {
/* The default table for document listings. Contains name, document types, modification times etc in a file-browser-like fashion */
border-collapse: collapse;
border-left: 1px solid #CCCCCC;
border-bottom: 1px solid #CCCCCC;
margin: 1em 0em 1em 0em;
/* clear: both; */
}
table.listing th {
background: #CCCCCC;
border-top: 1px solid #CCCCCC;
border-bottom: 1px solid #CCCCCC;
border-right: 1px solid #CCCCCC;
color: #808080;
font-weight: normal;
padding: 0em 1em 0em 1em;
white-space: nowrap;
}
table.listing td.top {
border-left: 1px solid White;
border-top: 1px solid White ! important;
border-right: 1px solid White ! important;
text-align: right ! important;
padding: 0em 0em 1em 0em;
/* insane IE row bug workaround */
position: relative;
left: -1px;
top: -1px;
}
table.listing tr.odd {
/*every second line should be shaded */
background: White;
}
table.listing tr.even {
background: #F8F8F8;
}
table.listing td {
border-right: 1px solid #CCCCCC;
padding: 0em 1em;
text-align: left;
}
table.listing img {
vertical-align: middle;
}
div.spacer {
clear: both;
}
div.message {
background: #FFCE7B;
border: 1px solid #FFA500;
color: Black;
font: bold 80% Verdana, Helvetica, Arial, sans-serif;
margin: 2em 0em 1em 0em;
padding: 0.5em 1em;
vertical-align: middle;
}
div.message a {
color: Black;
text-decoration: underline;
}
/* Style for page error divs. Use this for displaying errors for a
page as a whole.
*/
div.page_error {
background: #FFCE7B;
font: bold 80% Verdana, Helvetica, Arial, sans-serif;
padding: 0.5em 1em;
vertical-align: middle;
}
=== Added File Zope3/src/zope/app/onlinehelp/browser/skin/standardmacros.py ===
##############################################################################
#
# Copyright (c) 2002 Zope Corporation and Contributors.
# All Rights Reserved.
#
# This software is subject to the provisions of the Zope Public License,
# Version 2.0 (ZPL). A copy of the ZPL should accompany this distribution.
# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED
# WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
# WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS
# FOR A PARTICULAR PURPOSE.
#
##############################################################################
"""Standard macros for page templates in the ZMI
The macros are drawn from various different page templates.
"""
from zope.app.browser.skins.basic.standardmacros import \
StandardMacros as BaseMacros
class StandardMacros(BaseMacros):
macro_pages = ('skin_macros',
'view_macros')
=== Added File Zope3/src/zope/app/onlinehelp/browser/skin/template.pt ===
<metal:block define-macro="page"><metal:block define-slot="doctype"><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"></metal:block>
<html xmlns="http://www.w3.org/1999/xhtml"
xml:lang="en"
lang="en"
i18n:domain="zope">
<head>
<title metal:define-slot="title" i18n:translate="">Z3 UI Onlinehelp</title>
<style type="text/css"
media="all"
tal:content=
"string: @import url(${context/++resource++onlinehelp.css});"
>
@import url(onlinehelp.css);
</style>
<meta http-equiv="Content-Type"
content="text/html;charset=utf-8" />
<metal:block define-slot="headers" />
<metal:block define-slot="style_slot" />
<metal:block define-slot="ecmascript_slot" />
<link rel="icon" type="image/png"
tal:attributes="href context/++resource++favicon.png" />
</head>
<body tal:define="rooturl request/getApplicationURL;
thisbaseurl request/URL/-1;">
<div id="global">
<img tal:attributes="src context/++resource++zope3onlinehelplogo.gif" />
</div>
<div id="navigators">
<!-- Tree of the help topics that appears on the help namespace -->
<div class="box" id="help"
tal:condition="not:python:request.getURL().find('++help++')==-1">
<h4 i18n:translate="">Online Help - TOC</h4>
<div class="body">
<div tal:content="structure view/getTopicTree|nothing"
tal:omit-tag="">content of topicTree
</div>
</div>
</div>
<!-- Error message if you are not in the ++help++ namespace -->
<div class="box" id="help"
tal:condition="python:request.getURL().find('++help++')==-1">
<h4 i18n:translate="">Online Help - TOC</h4>
<div class="body content" i18n:translate="">
You are not in the ++help++ namespace.<br>
Add /++help++/ after your host address in the URL.<br>
And use the own help skin like:<br>
../++help++/++skin++Onlinehelp/
</div>
</div>
<!-- Tools for a nicer navigation -->
<div class="box" id="help"
tal:condition="not:python:request.getURL().find('++help++')==-1">
<h4>Toolbox</h4>
<div class="body content">
<a href="javascript:close()"
i18n:translate="">Close this window</a>
<br />
<a href="javascript:blur()"
i18n:translate="">Blur</a>
<br />
<a href="javascript:resizeTo(780,580)"
i18n:translate="">view 800x600</a>
<br />
<a href="javascript:resizeTo(980,740)"
i18n:translate="">view 1024x768</a>
<br />
<a href="javascript:print()"
i18n:translate="">Print</a>
<br />
</div>
</div>
<!-- bugfix; we have a box at the end of the navigation
with the last letter's of the box above -->
<div id="help">
</div>
</div>
<div id="workspace">
<!-- breadcrumb in the headline of the content -->
<div id="breadcrumbsBar"
metal:define-slot="tabs">
<span i18n:translate="">Location:</span>
<tal:block
repeat="breadcrumb context/@@absolute_url/breadcrumbs"
><a href=""
tal:condition="not:repeat/breadcrumb/start"
tal:content="string:${breadcrumb/name}"
tal:attributes="
href string:${breadcrumb/url}/"
>breadcrumb item</a>/</tal:block>
</div>
<div id="viewspace">
<div metal:define-slot="message" id="message">
</div>
<div id="content">
<metal:block define-slot="body">
<table class="listing">
<thead>
<th>Test</th>
<th>Another</th>
</thead>
<tbody>
<tr>
<td>content</td>
<td>thingy</td>
</tr>
<tr class="even">
<td>more</td>
<td>data</td>
</tr>
</tbody>
</table>
</metal:block>
</div>
<!-- We don't have pagetip's in the Onlinehelp itself.
I clean up this code later if I implement the
link for the context sensitive HelpTopics
in the Rotteram skin.
<div id="context_information">
<div id="helpers">
<div class="box" id="itemHelp" tal:condition="pagetip|nothing">
<h4 i18n:translate="">Tip</h4>
<div class="body">
<div class="content odd">
<metal:block define-slot="pagetip"
tal:replace="pagetip">
A short tip goes here
</metal:block>
</div>
</div>
</div>
<div class="spacer">
</div>
</div>
</div>
-->
<div class="spacer">
</div>
</div>
</div>
<div id="footer" metal:define-macro="footer" />
<div id="logger" />
</body>
</html>
</metal:block>
=== Added File Zope3/src/zope/app/onlinehelp/browser/skin/view_macros.pt ===
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html metal:define-macro="page">
<head metal:define-macro="head">
<title
metal:define-slot="title"
tal:content="options/getTitle|view/getTitle|context/getTitle|default"
>Zope</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<link href="/@@/zopetopBasic.css" rel="stylesheet" type="text/css"
tal:attributes="href string:/@@/zopetopBasic.css" />
<link href="/@@/zopetopWidgets.css" rel="stylesheet" type="text/css"
tal:attributes="href string:/@@/zopetopWidgets.css" />
<link href="/@@/zopetopStructure.css" rel="stylesheet" type="text/css"
tal:attributes="href string:/@@/zopetopStructure.css" />
<div metal:define-slot="headers">
</div>
</head>
<body>
<div metal:define-slot="body">
<p>Body here</p>
</div>
<div metal:define-macro="logged_user">
<p i18n:translate="">
User:
<span tal:replace="request/user/getTitle"
i18n:name="user_title">User</span>
</p>
</div>
<div metal:define-macro="footer">
<p i18n:translate="">Powered by Zope</p>
</div>
</body>
</html>
=== Added File Zope3/src/zope/app/onlinehelp/browser/skin/zope3onlinehelplogo.gif ===
<Binary-ish file>
More information about the Zope3-Checkins
mailing list