gnomeweb-plone r30 - in trunk: wgo.buildout wgo.buildout-dev wgo.buildout-dev/products wgo.buildout-dev/src wgo.buildout-dev/var wgo.theme wgo.theme/docs wgo.theme/wgo wgo.theme/wgo.theme.egg-info wgo.theme/wgo/theme wgo.theme/wgo/theme/browser wgo.theme/wgo/theme/browser/images wgo.theme/wgo/theme/browser/stylesheets wgo.theme/wgo/theme/profiles wgo.theme/wgo/theme/profiles/default wgo.theme/wgo/theme/skins wgo.theme/wgo/theme/skins/wgo_theme_custom_images wgo.theme/wgo/theme/skins/wgo_theme_custom_templates wgo.theme/wgo/theme/skins/wgo_theme_styles
- From: ramonnb svn gnome org
- To: svn-commits-list gnome org
- Subject: gnomeweb-plone r30 - in trunk: wgo.buildout wgo.buildout-dev wgo.buildout-dev/products wgo.buildout-dev/src wgo.buildout-dev/var wgo.theme wgo.theme/docs wgo.theme/wgo wgo.theme/wgo.theme.egg-info wgo.theme/wgo/theme wgo.theme/wgo/theme/browser wgo.theme/wgo/theme/browser/images wgo.theme/wgo/theme/browser/stylesheets wgo.theme/wgo/theme/profiles wgo.theme/wgo/theme/profiles/default wgo.theme/wgo/theme/skins wgo.theme/wgo/theme/skins/wgo_theme_custom_images wgo.theme/wgo/theme/skins/wgo_theme_custom_templates wgo.theme/wgo/theme/skins/wgo_theme_styles
- Date: Thu, 9 Oct 2008 20:15:09 +0000 (UTC)
Author: ramonnb
Date: Thu Oct 9 20:15:08 2008
New Revision: 30
URL: http://svn.gnome.org/viewvc/gnomeweb-plone?rev=30&view=rev
Log:
The new skeletons of gnome web plone site , wgo.theme wgo.buildout-dev
Added:
trunk/wgo.buildout-dev/
trunk/wgo.buildout-dev/README.txt
trunk/wgo.buildout-dev/bootstrap.py
trunk/wgo.buildout-dev/buildout.cfg
trunk/wgo.buildout-dev/products/
trunk/wgo.buildout-dev/products/README.txt
trunk/wgo.buildout-dev/src/
trunk/wgo.buildout-dev/src/README.txt
trunk/wgo.buildout-dev/var/
trunk/wgo.buildout-dev/var/README.txt
trunk/wgo.theme/
trunk/wgo.theme/MANIFEST.in
trunk/wgo.theme/README.txt
trunk/wgo.theme/docs/
trunk/wgo.theme/docs/HISTORY.txt
trunk/wgo.theme/docs/INSTALL.txt
trunk/wgo.theme/docs/LICENSE.GPL
trunk/wgo.theme/docs/LICENSE.txt
trunk/wgo.theme/setup.cfg
trunk/wgo.theme/setup.py
trunk/wgo.theme/wgo/
trunk/wgo.theme/wgo.theme-configure.zcml
trunk/wgo.theme/wgo.theme.egg-info/
trunk/wgo.theme/wgo.theme.egg-info/PKG-INFO
trunk/wgo.theme/wgo.theme.egg-info/SOURCES.txt
trunk/wgo.theme/wgo.theme.egg-info/dependency_links.txt
trunk/wgo.theme/wgo.theme.egg-info/entry_points.txt
trunk/wgo.theme/wgo.theme.egg-info/namespace_packages.txt
trunk/wgo.theme/wgo.theme.egg-info/not-zip-safe
trunk/wgo.theme/wgo.theme.egg-info/paster_plugins.txt
trunk/wgo.theme/wgo.theme.egg-info/requires.txt
trunk/wgo.theme/wgo.theme.egg-info/top_level.txt
trunk/wgo.theme/wgo/__init__.py
trunk/wgo.theme/wgo/theme/
trunk/wgo.theme/wgo/theme/__init__.py
trunk/wgo.theme/wgo/theme/browser/
trunk/wgo.theme/wgo/theme/browser/__init__.py
trunk/wgo.theme/wgo/theme/browser/configure.zcml
trunk/wgo.theme/wgo/theme/browser/images/
trunk/wgo.theme/wgo/theme/browser/images/README.txt
trunk/wgo.theme/wgo/theme/browser/interfaces.py
trunk/wgo.theme/wgo/theme/browser/stylesheets/
trunk/wgo.theme/wgo/theme/browser/stylesheets/README.txt
trunk/wgo.theme/wgo/theme/browser/stylesheets/main.css
trunk/wgo.theme/wgo/theme/browser/viewlet.pt
trunk/wgo.theme/wgo/theme/browser/viewlets.py
trunk/wgo.theme/wgo/theme/configure.zcml
trunk/wgo.theme/wgo/theme/profiles/
trunk/wgo.theme/wgo/theme/profiles.zcml
trunk/wgo.theme/wgo/theme/profiles/default/
trunk/wgo.theme/wgo/theme/profiles/default/cssregistry.xml
trunk/wgo.theme/wgo/theme/profiles/default/import_steps.xml
trunk/wgo.theme/wgo/theme/profiles/default/jsregistry.xml
trunk/wgo.theme/wgo/theme/profiles/default/metadata.xml
trunk/wgo.theme/wgo/theme/profiles/default/skins.xml
trunk/wgo.theme/wgo/theme/profiles/default/viewlets.xml
trunk/wgo.theme/wgo/theme/profiles/default/wgo.theme_various.txt
trunk/wgo.theme/wgo/theme/setuphandlers.py
trunk/wgo.theme/wgo/theme/skins/
trunk/wgo.theme/wgo/theme/skins.zcml
trunk/wgo.theme/wgo/theme/skins/wgo_theme_custom_images/
trunk/wgo.theme/wgo/theme/skins/wgo_theme_custom_images/CONTENT.txt
trunk/wgo.theme/wgo/theme/skins/wgo_theme_custom_templates/
trunk/wgo.theme/wgo/theme/skins/wgo_theme_custom_templates/CONTENT.txt
trunk/wgo.theme/wgo/theme/skins/wgo_theme_styles/
trunk/wgo.theme/wgo/theme/skins/wgo_theme_styles/CONTENT.txt
trunk/wgo.theme/wgo/theme/skins/wgo_theme_styles/base.css.dtml
trunk/wgo.theme/wgo/theme/skins/wgo_theme_styles/base_properties.props
trunk/wgo.theme/wgo/theme/skins/wgo_theme_styles/portlets.css.dtml
trunk/wgo.theme/wgo/theme/skins/wgo_theme_styles/public.css.dtml
trunk/wgo.theme/wgo/theme/tests.py
trunk/wgo.theme/wgo/theme/version.txt
Removed:
trunk/wgo.buildout/
Added: trunk/wgo.buildout-dev/README.txt
==============================================================================
--- (empty file)
+++ trunk/wgo.buildout-dev/README.txt Thu Oct 9 20:15:08 2008
@@ -0,0 +1,327 @@
+=======================
+Using a custom buildout
+=======================
+
+Note: If you are using Windows, if you do not have PIL installed, or you are
+not using Python 2.4 as your main system Python, please see the relevant
+sections below.
+
+You probably got here by running something like:
+
+ $ paster create -t plone3_buildout
+
+Now, you need to run:
+
+ $ python bootstrap.py
+
+This will install zc.buildout for you.
+
+To create an instance immediately, run:
+
+ $ bin/buildout
+
+This will download Plone's eggs and products for you, as well as other
+dependencies, create a new Zope 2 installation (unless you specified
+an existing one when you ran "paster create"), and create a new Zope instance
+configured with these products.
+
+You can start your Zope instance by running:
+
+ $ bin/instance start
+
+or, to run in foreground mode:
+
+ $ bin/instance fg
+
+To run unit tests, you can use:
+
+ $ bin/instance test -s my.package
+
+Installing PIL
+--------------
+
+To use Plone, you need PIL, the Python Imaging Library. If you don't already
+have this, download and install it from http://www.pythonware.com/products/pil.
+
+Using a different Python installation
+--------------------------------------
+
+Buildout will use your system Python installation by default. However, Zope
+2.10 (and by extension, Plone) will only work with Python 2.4. You can verify
+which version of Python you have, by running:
+
+ $ python -V
+
+If that is not a 2.4 version, you need to install Python 2.4 from
+http://python.org. If you wish to keep another version as your main system
+Python, edit buildout.cfg and add an 'executable' option to the "[buildout]"
+section, pointing to a python interpreter binary:
+
+ [buildout]
+ ...
+ executable = /path/to/python
+
+Working with buildout.cfg
+-------------------------
+
+You can change any option in buildout.cfg and re-run bin/buildout to reflect
+the changes. This may delete things inside the 'parts' directory, but should
+keep your Data.fs and source files intact.
+
+To save time, you can run buildout in "offline" (-o) and non-updating (-N)
+mode, which will prevent it from downloading things and checking for new
+versions online:
+
+ $ bin/buildout -Nov
+
+Creating new eggs
+-----------------
+
+New packages you are working on (but which are not yet released as eggs and
+uploaded to the Python Package Index, aka PYPI) should be placed in src. You can do:
+
+ $ cd src/
+ $ paster create -t plone my.package
+
+Use "paster create --list-templates" to see all available templates. Answer
+the questions and you will get a new egg. Then tell buildout about your egg
+by editing buildout.cfg and adding your source directory to 'develop':
+
+ [buildout]
+ ...
+ develop =
+ src/my.package
+
+You can list multiple packages here, separated by whitespace or indented
+newlines.
+
+You probably also want the Zope instance to know about the package. Add its
+package name to the list of eggs in the "[instance]" section, or under the
+main "[buildout]" section:
+
+ [instance]
+ ...
+ eggs =
+ ${buildout:eggs}
+ ${plone:eggs}
+ my.package
+
+Leave the ${buildout:eggs} part in place - it tells the instance to use the
+eggs that buildout will have downloaded from the Python Package Index
+previously.
+
+If you also require a ZCML slug for your package, buildout can create one
+automatically. Just add the package to the 'zcml' option:
+
+ [instance]
+ ...
+ zcml =
+ my.package
+
+When you are finished, re-run buildout. Offline, non-updating mode should
+suffice:
+
+ $ bin/buildout -Nov
+
+Developing old-style products
+-----------------------------
+
+If you are developing old-style Zope 2 products (not eggs) then you can do so
+by placing the product code in the top-level 'products' directory. This is
+analogous to the 'Products/' directory inside a normal Zope 2 instance and is
+scanned on start-up for new products.
+
+Depending on a new egg
+----------------------
+
+If you want to use a new egg that is in the Python Package Index, all you need
+to do is to add it to the "eggs" option under the main "[buildout]" section:
+
+ [buildout]
+ ...
+ eggs =
+ my.package
+
+If it's listed somewhere else than the Python Package Index, you can add a link
+telling buildout where to find it in the 'find-links' option:
+
+ [buildout]
+ ...
+ find-links =
+ http://dist.plone.org
+ http://download.zope.org/distribution/
+ http://effbot.org/downloads
+ http://some.host.com/packages
+
+Using existing old-style products
+---------------------------------
+
+If you are using an old-style (non-egg) product, you can either add it as an
+automatically downloaded archive or put it in the top-level "products" folder.
+The former is probably better, because it means you can redistribute your
+buildout.cfg more easily:
+
+ [productdistros]
+ recipe = plone.recipe.distros
+ urls =
+ http://plone.org/products/someproduct/releases/1.3/someproduct-1.3.tar.gz
+
+If someproduct-1.3.tar.gz extracts into several products inside a top-level
+directory, e.g. SomeProduct-1.3/PartOne and SomeProduct-1.3/PartTwo, then
+add it as a "nested package":
+
+ [productdistros]
+ recipe = plone.recipe.distros
+ urls =
+ http://plone.org/products/someproduct/releases/1.3/someproduct-1.3.tar.gz
+ nested-packages =
+ someproduct-1.3.tar.gz
+
+Alternatively, if it extracts to a directory which contains the version
+number, add it as a "version suffix package":
+
+ [productdistros]
+ recipe = plone.recipe.distros
+ urls =
+ http://plone.org/products/someproduct/releases/1.3/someproduct-1.3.tar.gz
+ version-suffix-packages =
+ someproduct-1.3.tar.gz
+
+You can also track products by adding a new bundle checkout part. It
+doesn't strictly have to be an svn bundle at all, any svn location will do,
+and cvs is also supported:
+
+ [buildout]
+ ...
+ parts =
+ plone
+ zope2
+ productdistros
+ myproduct
+ instance
+ zopepy
+
+Note that "myproduct" comes before the "instance" part. You then
+need to add a new section to buildout.cfg:
+
+ [myproduct]
+ recipe = plone.recipe.bundlecheckout
+ url = http://svn.plone.org/svn/collective/myproduct/trunk
+
+Finally, you need to tell Zope to find this new checkout and add it to its
+list of directories that are scanned for products:
+
+ [instance]
+ ...
+ products =
+ ${buildout:directory}/products
+ ${productdistros:location}
+ ${plonebundle:location}
+ ${myproduct:location}
+
+Without this last step, the "myproduct" part is simply managing an svn
+checkout and could potentially be used for something else instead.
+
+=============
+Using Windows
+=============
+
+To use buildout on Windows, you will need to install a few dependencies which
+other platforms manage on their own.
+
+Here are the steps you need to follow (thanks to Hanno Schlichting for these):
+
+Python (http://python.org)
+--------------------------
+
+ - Download and install Python 2.4.4 using the Windows installer from
+ http://www.python.org/ftp/python/2.4.4/python-2.4.4.msi
+ Select 'Install for all users' and it will put Python into the
+ "C:\Python24" folder by default.
+
+ - You also want the pywin32 extensions available from
+ http://downloads.sourceforge.net/pywin32/pywin32-210.win32-py2.4.exe?modtime=1159009237&big_mirror=0
+
+ - And as a last step you want to download the Python imaging library available
+ from http://effbot.org/downloads/PIL-1.1.6.win32-py2.4.exe
+
+ - If you develop Zope based applications you will usually only need Python 2.4
+ at the moment, so it's easiest to put the Python binary on the systems PATH,
+ so you don't need to specify its location manually each time you call it.
+
+ Thus, put "C:\Python24" and "C:\Python24\Scripts" onto the PATH. You can
+ find the PATH definition in the control panel under system preferences on
+ the advanced tab at the bottom. The button is called environment variables.
+ You want to add it at the end of the already existing PATH in the system
+ section. Paths are separated by a semicolons.
+
+ - You can test if this was successful by opening a new shell (cmd) and type
+ in 'python -V'. It should report version 2.4.4 (or whichever version you
+ installed).
+
+ Opening a new shell can be done quickly by using the key combination
+ 'Windows-r' or if you are using Parallels on a Mac 'Apple-r'. Type in 'cmd'
+ into the popup box that opens up and hit enter.
+
+
+Subversion (http://subversion.tigris.org)
+-----------------------------------------
+
+ - Download the nice installer from
+ http://subversion.tigris.org/files/documents/15/35379/svn-1.4.2-setup.exe
+
+ - Run the installer. It defaults to installing into
+ "C:\Program Files\Subversion".
+
+ - Now put the install locations bin subfolder (for example
+ "C:\Program Files\Subversion\bin") on your system PATH in the same way you
+ put Python on it.
+
+ - Open a new shell again and type in: 'svn --version' it should report
+ version 1.4.2 or newer.
+
+
+MinGW (http://www.mingw.org/)
+-----------------------------
+
+ This is a native port of the gcc compiler and its dependencies for Windows.
+ There are other approaches enabling you to compile Python C extensions on
+ Windows including Cygwin and using the official Microsoft C compiler, but this
+ is a lightweight approach that uses only freely available tools. As
+ it's used by a lot of people chances are high it will work for you and there's
+ plenty of documentation out there to help you in troubleshooting problems.
+
+ - Download the MinGW installer from
+ http://downloads.sourceforge.net/mingw/MinGW-5.1.3.exe?modtime=1168794334&big_mirror=1
+
+ - The installer will ask you which options you would like to install. Choose
+ base and make here. It will install into "C:\MinGW" by default. The install
+ might take some time as it's getting files from sourceforge.net and you
+ might need to hit 'retry' a couple of times.
+
+ - Now put the install location's bin subfolder (for example "C:\MinGW\bin") on
+ your system PATH in the same way you put Python on it.
+
+ - Test this again by typing in: 'gcc --version' on a newly opened shell and
+ it should report version 3.4.2 or newer.
+
+
+Configure Distutils to use MinGW
+--------------------------------
+
+ Some general information are available from
+ http://www.mingw.org/MinGWiki/index.php/Python%20extensions for example but
+ you don't need to read them all.
+
+ - Create a file called 'distutils.cfg' in "C:\Python24\Lib\distutils". Open it
+ with a text editor ('notepad distutils.cfg') and fill in the following lines:
+
+ [build]
+ compiler=mingw32
+
+ This will tell distutils to use MinGW as the default compiler, so you don't
+ need to specify it manually using "--compiler=mingw32" while calling a
+ package's setup.py with a command that involves building C extensions. This
+ is extremely useful if the build command is written down in a buildout
+ recipe where you cannot change the options without hacking the recipe
+ itself. The z2c.recipe.zope2install used in ploneout is one such example.
Added: trunk/wgo.buildout-dev/bootstrap.py
==============================================================================
--- (empty file)
+++ trunk/wgo.buildout-dev/bootstrap.py Thu Oct 9 20:15:08 2008
@@ -0,0 +1,55 @@
+##############################################################################
+#
+# Copyright (c) 2006 Zope Corporation and Contributors.
+# All Rights Reserved.
+#
+# This software is subject to the provisions of the Zope Public License,
+# Version 2.1 (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.
+#
+##############################################################################
+"""Bootstrap a buildout-based project
+
+Simply run this script in a directory containing a buildout.cfg.
+The script accepts buildout command-line options, so you can
+use the -c option to specify an alternate configuration file.
+
+$Id$
+"""
+
+import os, shutil, sys, tempfile, urllib2
+
+tmpeggs = tempfile.mkdtemp()
+
+try:
+ import pkg_resources
+except ImportError:
+ ez = {}
+ exec urllib2.urlopen('http://peak.telecommunity.com/dist/ez_setup.py'
+ ).read() in ez
+ ez['use_setuptools'](to_dir=tmpeggs, download_delay=0)
+
+ import pkg_resources
+
+cmd = 'from setuptools.command.easy_install import main; main()'
+if sys.platform == 'win32':
+ cmd = '"%s"' % cmd # work around spawn lamosity on windows
+
+ws = pkg_resources.working_set
+assert os.spawnle(
+ os.P_WAIT, sys.executable, sys.executable,
+ '-c', cmd, '-mqNxd', tmpeggs, 'zc.buildout',
+ dict(os.environ,
+ PYTHONPATH=
+ ws.find(pkg_resources.Requirement.parse('setuptools')).location
+ ),
+ ) == 0
+
+ws.add_entry(tmpeggs)
+ws.require('zc.buildout')
+import zc.buildout.buildout
+zc.buildout.buildout.main(sys.argv[1:] + ['bootstrap'])
+shutil.rmtree(tmpeggs)
Added: trunk/wgo.buildout-dev/buildout.cfg
==============================================================================
--- (empty file)
+++ trunk/wgo.buildout-dev/buildout.cfg Thu Oct 9 20:15:08 2008
@@ -0,0 +1,79 @@
+[buildout]
+parts =
+ plone
+ zope2
+ productdistros
+ instance
+ zopepy
+
+# Add additional egg download sources here. dist.plone.org contains archives
+# of Plone packages.
+find-links =
+ http://dist.plone.org
+ http://download.zope.org/ppix/
+ http://download.zope.org/distribution/
+ http://effbot.org/downloads
+
+# Add additional eggs here
+# elementtree is required by Plone
+eggs =
+ elementtree
+ wgo.theme
+
+# Reference any eggs you are developing here, one per line
+# e.g.: develop = src/my.package
+develop =
+ src/wgo.theme
+
+[plone]
+recipe = plone.recipe.plone>=3.1.1,<3.2dev
+
+[zope2]
+recipe = plone.recipe.zope2install
+url = ${plone:zope2-url}
+
+# Use this section to download additional old-style products.
+# List any number of URLs for product tarballs under URLs (separate
+# with whitespace, or break over several lines, with subsequent lines
+# indented). If any archives contain several products inside a top-level
+# directory, list the archive file name (i.e. the last part of the URL,
+# normally with a .tar.gz suffix or similar) under 'nested-packages'.
+# If any archives extract to a product directory with a version suffix, list
+# the archive name under 'version-suffix-packages'.
+[productdistros]
+recipe = plone.recipe.distros
+urls =
+nested-packages =
+version-suffix-packages =
+
+[instance]
+recipe = plone.recipe.zope2instance
+zope2-location = ${zope2:location}
+user = admin:admin
+http-address = 8080
+debug-mode = on
+verbose-security = on
+
+# If you want Zope to know about any additional eggs, list them here.
+# This should include any development eggs you listed in develop-eggs above,
+# e.g. eggs = ${buildout:eggs} ${plone:eggs} my.package
+eggs =
+ ${buildout:eggs}
+ ${plone:eggs}
+ wgo.theme
+
+# If you want to register ZCML slugs for any packages, list them here.
+# e.g. zcml = my.package my.other.package
+zcml =
+
+products =
+ ${buildout:directory}/products
+ ${productdistros:location}
+ ${plone:products}
+
+[zopepy]
+recipe = zc.recipe.egg
+eggs = ${instance:eggs}
+interpreter = zopepy
+extra-paths = ${zope2:location}/lib/python
+scripts = zopepy
Added: trunk/wgo.buildout-dev/products/README.txt
==============================================================================
--- (empty file)
+++ trunk/wgo.buildout-dev/products/README.txt Thu Oct 9 20:15:08 2008
@@ -0,0 +1 @@
+Old-style Zope products you are developing can be added here
Added: trunk/wgo.buildout-dev/src/README.txt
==============================================================================
--- (empty file)
+++ trunk/wgo.buildout-dev/src/README.txt Thu Oct 9 20:15:08 2008
@@ -0,0 +1 @@
+Packages in eggs that you develop should go in this directory
Added: trunk/wgo.buildout-dev/var/README.txt
==============================================================================
--- (empty file)
+++ trunk/wgo.buildout-dev/var/README.txt Thu Oct 9 20:15:08 2008
@@ -0,0 +1 @@
+This directory contains the Data.fs ZODB data storage, and other runtime files
Added: trunk/wgo.theme/MANIFEST.in
==============================================================================
--- (empty file)
+++ trunk/wgo.theme/MANIFEST.in Thu Oct 9 20:15:08 2008
@@ -0,0 +1,2 @@
+recursive-include wgo *
+global-exclude *pyc
\ No newline at end of file
Added: trunk/wgo.theme/README.txt
==============================================================================
--- (empty file)
+++ trunk/wgo.theme/README.txt Thu Oct 9 20:15:08 2008
@@ -0,0 +1,4 @@
+Introduction
+============
+
+
Added: trunk/wgo.theme/docs/HISTORY.txt
==============================================================================
--- (empty file)
+++ trunk/wgo.theme/docs/HISTORY.txt Thu Oct 9 20:15:08 2008
@@ -0,0 +1,8 @@
+Changelog
+=========
+
+1.0 - Unreleased
+----------------
+
+* Initial release
+
Added: trunk/wgo.theme/docs/INSTALL.txt
==============================================================================
--- (empty file)
+++ trunk/wgo.theme/docs/INSTALL.txt Thu Oct 9 20:15:08 2008
@@ -0,0 +1,52 @@
+wgo.theme Installation
+==========================
+
+To install wgo.theme into the global Python environment (or a workingenv),
+using a traditional Zope 2 instance, you can do this:
+
+ * When you're reading this you have probably already run
+ ``easy_install wgo.theme``. Find out how to install setuptools
+ (and EasyInstall) here:
+ http://peak.telecommunity.com/DevCenter/EasyInstall
+
+ * If you are using Zope 2.9 (not 2.10), get `pythonproducts`_ and install it
+ via::
+
+ python setup.py install --home /path/to/instance
+
+ into your Zope instance.
+
+ * Create a file called ``wgo.theme-configure.zcml`` in the
+ ``/path/to/instance/etc/package-includes`` directory. The file
+ should only contain this::
+
+ <include package="wgo.theme" />
+
+.. _pythonproducts: http://plone.org/products/pythonproducts
+
+
+Alternatively, if you are using zc.buildout and the plone.recipe.zope2instance
+recipe to manage your project, you can do this:
+
+ * Add ``wgo.theme`` to the list of eggs to install, e.g.:
+
+ [buildout]
+ ...
+ eggs =
+ ...
+ wgo.theme
+
+ * Tell the plone.recipe.zope2instance recipe to install a ZCML slug:
+
+ [instance]
+ recipe = plone.recipe.zope2instance
+ ...
+ zcml =
+ wgo.theme
+
+ * Re-run buildout, e.g. with:
+
+ $ ./bin/buildout
+
+You can skip the ZCML slug if you are going to explicitly include the package
+from another package's configure.zcml file.
Added: trunk/wgo.theme/docs/LICENSE.GPL
==============================================================================
--- (empty file)
+++ trunk/wgo.theme/docs/LICENSE.GPL Thu Oct 9 20:15:08 2008
@@ -0,0 +1,222 @@
+ GNU GENERAL PUBLIC LICENSE
+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+ 0. This License applies to any program or other work which contains
+a notice placed by the copyright holder saying it may be distributed
+under the terms of this General Public License. The "Program", below,
+refers to any such program or work, and a "work based on the Program"
+means either the Program or any derivative work under copyright law:
+that is to say, a work containing the Program or a portion of it,
+either verbatim or with modifications and/or translated into another
+language. (Hereinafter, translation is included without limitation in
+the term "modification".) Each licensee is addressed as "you".
+
+Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope. The act of
+running the Program is not restricted, and the output from the Program
+is covered only if its contents constitute a work based on the
+Program (independent of having been made by running the Program).
+Whether that is true depends on what the Program does.
+
+ 1. You may copy and distribute verbatim copies of the Program's
+source code as you receive it, in any medium, provided that you
+conspicuously and appropriately publish on each copy an appropriate
+copyright notice and disclaimer of warranty; keep intact all the
+notices that refer to this License and to the absence of any warranty;
+and give any other recipients of the Program a copy of this License
+along with the Program.
+
+You may charge a fee for the physical act of transferring a copy, and
+you may at your option offer warranty protection in exchange for a fee.
+
+ 2. You may modify your copy or copies of the Program or any portion
+of it, thus forming a work based on the Program, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+ a) You must cause the modified files to carry prominent notices
+ stating that you changed the files and the date of any change.
+
+ b) You must cause any work that you distribute or publish, that in
+ whole or in part contains or is derived from the Program or any
+ part thereof, to be licensed as a whole at no charge to all third
+ parties under the terms of this License.
+
+ c) If the modified program normally reads commands interactively
+ when run, you must cause it, when started running for such
+ interactive use in the most ordinary way, to print or display an
+ announcement including an appropriate copyright notice and a
+ notice that there is no warranty (or else, saying that you provide
+ a warranty) and that users may redistribute the program under
+ these conditions, and telling the user how to view a copy of this
+ License. (Exception: if the Program itself is interactive but
+ does not normally print such an announcement, your work based on
+ the Program is not required to print an announcement.)
+
+These requirements apply to the modified work as a whole. If
+identifiable sections of that work are not derived from the Program,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works. But when you
+distribute the same sections as part of a whole which is a work based
+on the Program, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Program.
+
+In addition, mere aggregation of another work not based on the Program
+with the Program (or with a work based on the Program) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+ 3. You may copy and distribute the Program (or a work based on it,
+under Section 2) in object code or executable form under the terms of
+Sections 1 and 2 above provided that you also do one of the following:
+
+ a) Accompany it with the complete corresponding machine-readable
+ source code, which must be distributed under the terms of Sections
+ 1 and 2 above on a medium customarily used for software interchange; or,
+
+ b) Accompany it with a written offer, valid for at least three
+ years, to give any third party, for a charge no more than your
+ cost of physically performing source distribution, a complete
+ machine-readable copy of the corresponding source code, to be
+ distributed under the terms of Sections 1 and 2 above on a medium
+ customarily used for software interchange; or,
+
+ c) Accompany it with the information you received as to the offer
+ to distribute corresponding source code. (This alternative is
+ allowed only for noncommercial distribution and only if you
+ received the program in object code or executable form with such
+ an offer, in accord with Subsection b above.)
+
+The source code for a work means the preferred form of the work for
+making modifications to it. For an executable work, complete source
+code means all the source code for all modules it contains, plus any
+associated interface definition files, plus the scripts used to
+control compilation and installation of the executable. However, as a
+special exception, the source code distributed need not include
+anything that is normally distributed (in either source or binary
+form) with the major components (compiler, kernel, and so on) of the
+operating system on which the executable runs, unless that component
+itself accompanies the executable.
+
+If distribution of executable or object code is made by offering
+access to copy from a designated place, then offering equivalent
+access to copy the source code from the same place counts as
+distribution of the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+ 4. You may not copy, modify, sublicense, or distribute the Program
+except as expressly provided under this License. Any attempt
+otherwise to copy, modify, sublicense or distribute the Program is
+void, and will automatically terminate your rights under this License.
+However, parties who have received copies, or rights, from you under
+this License will not have their licenses terminated so long as such
+parties remain in full compliance.
+
+ 5. You are not required to accept this License, since you have not
+signed it. However, nothing else grants you permission to modify or
+distribute the Program or its derivative works. These actions are
+prohibited by law if you do not accept this License. Therefore, by
+modifying or distributing the Program (or any work based on the
+Program), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Program or works based on it.
+
+ 6. Each time you redistribute the Program (or any work based on the
+Program), the recipient automatically receives a license from the
+original licensor to copy, distribute or modify the Program subject to
+these terms and conditions. You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties to
+this License.
+
+ 7. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License. If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Program at all. For example, if a patent
+license would not permit royalty-free redistribution of the Program by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Program.
+
+If any portion of this section is held invalid or unenforceable under
+any particular circumstance, the balance of the section is intended to
+apply and the section as a whole is intended to apply in other
+circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system, which is
+implemented by public license practices. Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+ 8. If the distribution and/or use of the Program is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Program under this License
+may add an explicit geographical distribution limitation excluding
+those countries, so that distribution is permitted only in or among
+countries not thus excluded. In such case, this License incorporates
+the limitation as if written in the body of this License.
+
+ 9. The Free Software Foundation may publish revised and/or new versions
+of the General Public License from time to time. Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+Each version is given a distinguishing version number. If the Program
+specifies a version number of this License which applies to it and "any
+later version", you have the option of following the terms and conditions
+either of that version or of any later version published by the Free
+Software Foundation. If the Program does not specify a version number of
+this License, you may choose any version ever published by the Free Software
+Foundation.
+
+ 10. If you wish to incorporate parts of the Program into other free
+programs whose distribution conditions are different, write to the author
+to ask for permission. For software which is copyrighted by the Free
+Software Foundation, write to the Free Software Foundation; we sometimes
+make exceptions for this. Our decision will be guided by the two goals
+of preserving the free status of all derivatives of our free software and
+of promoting the sharing and reuse of software generally.
+
+ NO WARRANTY
+
+ 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
+FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
+OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
+PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
+OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
+TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
+PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
+REPAIR OR CORRECTION.
+
+ 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
+REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
+INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
+OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
+TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
+YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
+PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGES.
+
+ END OF TERMS AND CONDITIONS
Added: trunk/wgo.theme/docs/LICENSE.txt
==============================================================================
--- (empty file)
+++ trunk/wgo.theme/docs/LICENSE.txt Thu Oct 9 20:15:08 2008
@@ -0,0 +1,16 @@
+ wgo.theme is copyright Ramon Navarro Bosch
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ MA 02111-1307 USA.
Added: trunk/wgo.theme/setup.cfg
==============================================================================
--- (empty file)
+++ trunk/wgo.theme/setup.cfg Thu Oct 9 20:15:08 2008
@@ -0,0 +1,3 @@
+[egg_info]
+tag_build = dev
+tag_svn_revision = true
Added: trunk/wgo.theme/setup.py
==============================================================================
--- (empty file)
+++ trunk/wgo.theme/setup.py Thu Oct 9 20:15:08 2008
@@ -0,0 +1,33 @@
+from setuptools import setup, find_packages
+import os
+
+version = '1.0'
+
+setup(name='wgo.theme',
+ version=version,
+ description="The Visual design for Gnome Web on Plone",
+ long_description=open("README.txt").read() + "\n" +
+ open(os.path.join("docs", "HISTORY.txt")).read(),
+ # Get more strings from http://www.python.org/pypi?%3Aaction=list_classifiers
+ classifiers=[
+ "Framework :: Plone",
+ "Programming Language :: Python",
+ "Topic :: Software Development :: Libraries :: Python Modules",
+ ],
+ keywords='web zope plone theme',
+ author='Ramon Navarro Bosch',
+ author_email='ramon nb gmail com',
+ url='http://svn.gnome.org/svn/gnomeweb-plone',
+ license='GPL',
+ packages=find_packages(exclude=['ez_setup']),
+ namespace_packages=['wgo'],
+ include_package_data=True,
+ zip_safe=False,
+ install_requires=[
+ 'setuptools',
+ # -*- Extra requirements: -*-
+ ],
+ entry_points="""
+ # -*- Entry points: -*-
+ """,
+ )
Added: trunk/wgo.theme/wgo.theme-configure.zcml
==============================================================================
--- (empty file)
+++ trunk/wgo.theme/wgo.theme-configure.zcml Thu Oct 9 20:15:08 2008
@@ -0,0 +1 @@
+<include package="wgo.theme" />
\ No newline at end of file
Added: trunk/wgo.theme/wgo.theme.egg-info/PKG-INFO
==============================================================================
--- (empty file)
+++ trunk/wgo.theme/wgo.theme.egg-info/PKG-INFO Thu Oct 9 20:15:08 2008
@@ -0,0 +1,27 @@
+Metadata-Version: 1.0
+Name: wgo.theme
+Version: 1.0dev
+Summary: The Visual design for Gnome Web on Plone
+Home-page: http://svn.gnome.org/svn/gnomeweb-plone
+Author: Ramon Navarro Bosch
+Author-email: ramon nb gmail com
+License: GPL
+Description: Introduction
+ ============
+
+
+
+ Changelog
+ =========
+
+ 1.0 - Unreleased
+ ----------------
+
+ * Initial release
+
+
+Keywords: web zope plone theme
+Platform: UNKNOWN
+Classifier: Framework :: Plone
+Classifier: Programming Language :: Python
+Classifier: Topic :: Software Development :: Libraries :: Python Modules
Added: trunk/wgo.theme/wgo.theme.egg-info/SOURCES.txt
==============================================================================
--- (empty file)
+++ trunk/wgo.theme/wgo.theme.egg-info/SOURCES.txt Thu Oct 9 20:15:08 2008
@@ -0,0 +1,42 @@
+MANIFEST.in
+README.txt
+setup.cfg
+setup.py
+wgo/__init__.py
+wgo.theme.egg-info/PKG-INFO
+wgo.theme.egg-info/SOURCES.txt
+wgo.theme.egg-info/dependency_links.txt
+wgo.theme.egg-info/entry_points.txt
+wgo.theme.egg-info/namespace_packages.txt
+wgo.theme.egg-info/not-zip-safe
+wgo.theme.egg-info/requires.txt
+wgo.theme.egg-info/top_level.txt
+wgo/theme/__init__.py
+wgo/theme/configure.zcml
+wgo/theme/profiles.zcml
+wgo/theme/setuphandlers.py
+wgo/theme/skins.zcml
+wgo/theme/tests.py
+wgo/theme/version.txt
+wgo/theme/browser/__init__.py
+wgo/theme/browser/configure.zcml
+wgo/theme/browser/interfaces.py
+wgo/theme/browser/viewlet.pt
+wgo/theme/browser/viewlets.py
+wgo/theme/browser/images/README.txt
+wgo/theme/browser/stylesheets/README.txt
+wgo/theme/browser/stylesheets/main.css
+wgo/theme/profiles/default/cssregistry.xml
+wgo/theme/profiles/default/import_steps.xml
+wgo/theme/profiles/default/jsregistry.xml
+wgo/theme/profiles/default/metadata.xml
+wgo/theme/profiles/default/skins.xml
+wgo/theme/profiles/default/viewlets.xml
+wgo/theme/profiles/default/wgo.theme_various.txt
+wgo/theme/skins/wgo_theme_custom_images/CONTENT.txt
+wgo/theme/skins/wgo_theme_custom_templates/CONTENT.txt
+wgo/theme/skins/wgo_theme_styles/CONTENT.txt
+wgo/theme/skins/wgo_theme_styles/base.css.dtml
+wgo/theme/skins/wgo_theme_styles/base_properties.props
+wgo/theme/skins/wgo_theme_styles/portlets.css.dtml
+wgo/theme/skins/wgo_theme_styles/public.css.dtml
\ No newline at end of file
Added: trunk/wgo.theme/wgo.theme.egg-info/dependency_links.txt
==============================================================================
--- (empty file)
+++ trunk/wgo.theme/wgo.theme.egg-info/dependency_links.txt Thu Oct 9 20:15:08 2008
@@ -0,0 +1 @@
+
Added: trunk/wgo.theme/wgo.theme.egg-info/entry_points.txt
==============================================================================
--- (empty file)
+++ trunk/wgo.theme/wgo.theme.egg-info/entry_points.txt Thu Oct 9 20:15:08 2008
@@ -0,0 +1,3 @@
+
+ # -*- Entry points: -*-
+
\ No newline at end of file
Added: trunk/wgo.theme/wgo.theme.egg-info/namespace_packages.txt
==============================================================================
--- (empty file)
+++ trunk/wgo.theme/wgo.theme.egg-info/namespace_packages.txt Thu Oct 9 20:15:08 2008
@@ -0,0 +1 @@
+wgo
Added: trunk/wgo.theme/wgo.theme.egg-info/not-zip-safe
==============================================================================
--- (empty file)
+++ trunk/wgo.theme/wgo.theme.egg-info/not-zip-safe Thu Oct 9 20:15:08 2008
@@ -0,0 +1 @@
+
Added: trunk/wgo.theme/wgo.theme.egg-info/paster_plugins.txt
==============================================================================
--- (empty file)
+++ trunk/wgo.theme/wgo.theme.egg-info/paster_plugins.txt Thu Oct 9 20:15:08 2008
@@ -0,0 +1 @@
+PasteScript
Added: trunk/wgo.theme/wgo.theme.egg-info/requires.txt
==============================================================================
--- (empty file)
+++ trunk/wgo.theme/wgo.theme.egg-info/requires.txt Thu Oct 9 20:15:08 2008
@@ -0,0 +1 @@
+setuptools
\ No newline at end of file
Added: trunk/wgo.theme/wgo.theme.egg-info/top_level.txt
==============================================================================
--- (empty file)
+++ trunk/wgo.theme/wgo.theme.egg-info/top_level.txt Thu Oct 9 20:15:08 2008
@@ -0,0 +1 @@
+wgo
Added: trunk/wgo.theme/wgo/__init__.py
==============================================================================
--- (empty file)
+++ trunk/wgo.theme/wgo/__init__.py Thu Oct 9 20:15:08 2008
@@ -0,0 +1,6 @@
+# See http://peak.telecommunity.com/DevCenter/setuptools#namespace-packages
+try:
+ __import__('pkg_resources').declare_namespace(__name__)
+except ImportError:
+ from pkgutil import extend_path
+ __path__ = extend_path(__path__, __name__)
Added: trunk/wgo.theme/wgo/theme/__init__.py
==============================================================================
--- (empty file)
+++ trunk/wgo.theme/wgo/theme/__init__.py Thu Oct 9 20:15:08 2008
@@ -0,0 +1,3 @@
+
+def initialize(context):
+ """Initializer called when used as a Zope 2 product."""
Added: trunk/wgo.theme/wgo/theme/browser/__init__.py
==============================================================================
--- (empty file)
+++ trunk/wgo.theme/wgo/theme/browser/__init__.py Thu Oct 9 20:15:08 2008
@@ -0,0 +1 @@
+#
Added: trunk/wgo.theme/wgo/theme/browser/configure.zcml
==============================================================================
--- (empty file)
+++ trunk/wgo.theme/wgo/theme/browser/configure.zcml Thu Oct 9 20:15:08 2008
@@ -0,0 +1,30 @@
+<configure
+ xmlns="http://namespaces.zope.org/zope"
+ xmlns:browser="http://namespaces.zope.org/browser"
+ i18n_domain="wgo.theme">
+
+ <!-- 'Gnome Web Theme' Zope 3 browser layer -->
+ <interface
+ interface=".interfaces.IThemeSpecific"
+ type="zope.publisher.interfaces.browser.IBrowserSkinType"
+ name="Gnome Web Theme"
+ />
+
+ <!-- Viewlets registration -->
+ <!-- Zope 3 browser resources -->
+
+ <!-- Resource directory for images -->
+ <browser:resourceDirectory
+ name="wgo.theme.images"
+ directory="images"
+ layer=".interfaces.IThemeSpecific"
+ />
+
+ <!-- Resource directory for stylesheets -->
+ <browser:resourceDirectory
+ name="wgo.theme.stylesheets"
+ directory="stylesheets"
+ layer=".interfaces.IThemeSpecific"
+ />
+
+</configure>
Added: trunk/wgo.theme/wgo/theme/browser/images/README.txt
==============================================================================
--- (empty file)
+++ trunk/wgo.theme/wgo/theme/browser/images/README.txt Thu Oct 9 20:15:08 2008
@@ -0,0 +1,56 @@
+README for the 'browser/images/' directory
+==========================================
+
+This folder is a Zope 3 Resource Directory acting as a repository for images.
+
+Its declaration is located in 'browser/configure.zcml':
+
+ <!-- Resource directory for images -->
+ <browser:resourceDirectory
+ name="wgo.theme.images"
+ directory="images"
+ layer=".interfaces.IThemeSpecific"
+ />
+
+An image placed in this directory (e.g. 'logo.png') can be accessed from
+this relative URL:
+
+ "++resource++wgo.theme.images/logo.png"
+
+Note that it might be better to register each of these resources separately if
+you want them to be overridable from zcml directives.
+
+The only way to override a resource in a resource directory is to override the
+entire directory (all elements have to be copied over).
+
+A Zope 3 browser resource declared like this in 'browser/configure.zcml':
+
+ <browser:resource
+ name="logo.png"
+ file="images/logo.png"
+ layer=".interfaces.IThemeSpecific"
+ />
+
+can be accessed from this relative URL:
+
+ "++resource++logo.png"
+
+Notes
+-----
+
+* Whatever the way they are declared (in bulk inside a resource directory or
+ as separate resources), images registered as Zope 3 browser resources don't
+ have all the attributes that Zope 2 image objects have (i.e. the 'title'
+ property and the 'tag()' and 'get_size()' methods).
+ This means that if you want the html tag of your image to be auto-generated
+ (this is the case by default for the portal logo), you should store it in a
+ directory that is located in the 'skins/' folder of your package, registered
+ as a File System Directory View in the 'portal_skins' tool, and added to the
+ layers of your skin.
+
+* Customizing/overriding images that are originally accessed from the
+ 'portal_skins' tool (e.g. Plone default logo and icons) can be done inside
+ that tool only. There is no known way to do it with Zope 3 browser
+ resources.
+ Vice versa, there is no known (easy) way to override a Zope 3 browser
+ resource from a skin layer in 'portal_skins'.
Added: trunk/wgo.theme/wgo/theme/browser/interfaces.py
==============================================================================
--- (empty file)
+++ trunk/wgo.theme/wgo/theme/browser/interfaces.py Thu Oct 9 20:15:08 2008
@@ -0,0 +1,5 @@
+from plone.theme.interfaces import IDefaultPloneLayer
+
+class IThemeSpecific(IDefaultPloneLayer):
+ """Marker interface that defines a Zope 3 browser layer.
+ """
Added: trunk/wgo.theme/wgo/theme/browser/stylesheets/README.txt
==============================================================================
--- (empty file)
+++ trunk/wgo.theme/wgo/theme/browser/stylesheets/README.txt Thu Oct 9 20:15:08 2008
@@ -0,0 +1,61 @@
+README for the 'browser/stylesheets/' directory
+===============================================
+
+This folder is a Zope 3 Resource Directory acting as a repository for
+stylesheets.
+
+Its declaration is located in 'browser/configure.zcml':
+
+ <!-- Resource directory for stylesheets -->
+ <browser:resourceDirectory
+ name="wgo.theme.stylesheets"
+ directory="stylesheets"
+ layer=".interfaces.IThemeSpecific"
+ />
+
+A stylesheet placed in this directory (e.g. 'main.css') can be accessed from
+this relative URL:
+
+ "++resource++wgo.theme.stylesheets/main.css"
+
+Note that it might be better to register each of these resources separately if
+you want them to be overridable from zcml directives.
+
+The only way to override a resource in a resource directory is to override the
+entire directory (all elements have to be copied over).
+
+A Zope 3 browser resource declared like this in 'browser/configure.zcml':
+
+ <browser:resource
+ name="main.css"
+ file="stylesheets/main.css"
+ layer=".interfaces.IThemeSpecific"
+ />
+
+can be accessed from this relative URL:
+
+ "++resource++main.css"
+
+Notes
+-----
+
+* Stylesheets registered as Zope 3 resources might be flagged as not found in
+ the 'portal_css' tool if the layer they are registered for doesn't match the
+ default skin set in 'portal_skins'.
+ This can be confusing but it must be considered as a minor bug in the CSS
+ registry instead of a lack in the way Zope 3 resources are handled in
+ Zope 2.
+
+* There might be a way to interpret DTML from a Zope 3 resource view.
+ Although, if you need to use DTML for setting values in a stylesheet (the
+ same way as in default Plone stylesheets where values are read from
+ 'base_properties'), it is much easier to store it in a directory that is
+ located in the 'skins/' folder of your package, registered as a File System
+ Directory View in the 'portal_skins' tool, and added to the layers of your
+ skin.
+
+* Customizing/overriding stylesheets that are originally accessed from the
+ 'portal_skins' tool (e.g. Plone default stylesheets) can be done inside that
+ tool only. There is no known way to do it with Zope 3 browser resources.
+ Vice versa, there is no known way to override a Zope 3 browser resource from
+ a skin layer in 'portal_skins'.
Added: trunk/wgo.theme/wgo/theme/browser/stylesheets/main.css
==============================================================================
--- (empty file)
+++ trunk/wgo.theme/wgo/theme/browser/stylesheets/main.css Thu Oct 9 20:15:08 2008
@@ -0,0 +1,2 @@
+/* Stylesheet for the 'Gnome Web Theme' Plone theme */
+
Added: trunk/wgo.theme/wgo/theme/browser/viewlet.pt
==============================================================================
--- (empty file)
+++ trunk/wgo.theme/wgo/theme/browser/viewlet.pt Thu Oct 9 20:15:08 2008
@@ -0,0 +1 @@
+<div tal:content="view/computed_value"/>
Added: trunk/wgo.theme/wgo/theme/browser/viewlets.py
==============================================================================
--- (empty file)
+++ trunk/wgo.theme/wgo/theme/browser/viewlets.py Thu Oct 9 20:15:08 2008
@@ -0,0 +1,3 @@
+from Products.Five.browser.pagetemplatefile import ViewPageTemplateFile
+from plone.app.layout.viewlets.common import ViewletBase
+
Added: trunk/wgo.theme/wgo/theme/configure.zcml
==============================================================================
--- (empty file)
+++ trunk/wgo.theme/wgo/theme/configure.zcml Thu Oct 9 20:15:08 2008
@@ -0,0 +1,14 @@
+<configure
+ xmlns="http://namespaces.zope.org/zope"
+ xmlns:five="http://namespaces.zope.org/five"
+ xmlns:cmf="http://namespaces.zope.org/cmf"
+ i18n_domain="wgo.theme">
+
+ <five:registerPackage package="." initialize=".initialize" />
+
+ <include package=".browser" />
+
+ <include file="skins.zcml" />
+ <include file="profiles.zcml" />
+
+</configure>
Added: trunk/wgo.theme/wgo/theme/profiles.zcml
==============================================================================
--- (empty file)
+++ trunk/wgo.theme/wgo/theme/profiles.zcml Thu Oct 9 20:15:08 2008
@@ -0,0 +1,14 @@
+<configure
+ xmlns="http://namespaces.zope.org/zope"
+ xmlns:genericsetup="http://namespaces.zope.org/genericsetup"
+ i18n_domain="wgo.theme">
+
+ <genericsetup:registerProfile
+ name="default"
+ title="Gnome Web Theme"
+ directory="profiles/default"
+ description='Extension profile for the "Gnome Web Theme" Plone theme.'
+ provides="Products.GenericSetup.interfaces.EXTENSION"
+ />
+
+</configure>
Added: trunk/wgo.theme/wgo/theme/profiles/default/cssregistry.xml
==============================================================================
--- (empty file)
+++ trunk/wgo.theme/wgo/theme/profiles/default/cssregistry.xml Thu Oct 9 20:15:08 2008
@@ -0,0 +1,10 @@
+<?xml version="1.0"?>
+<object name="portal_css">
+
+ <stylesheet title=""
+ id="++resource++wgo.theme.stylesheets/main.css"
+ media="screen" rel="stylesheet" rendering="import"
+ cacheable="True" compression="safe" cookable="True"
+ enabled="1" expression=""/>
+
+</object>
Added: trunk/wgo.theme/wgo/theme/profiles/default/import_steps.xml
==============================================================================
--- (empty file)
+++ trunk/wgo.theme/wgo/theme/profiles/default/import_steps.xml Thu Oct 9 20:15:08 2008
@@ -0,0 +1,11 @@
+<?xml version="1.0"?>
+<import-steps>
+ <import-step id="wgo.theme.various"
+ version="20081009-01"
+ handler="wgo.theme.setuphandlers.setupVarious"
+ title="Gnome Web Theme: miscellaneous import steps">
+ <dependency step="skins" />
+ Various import steps that are not handled by GS import/export
+ handlers.
+ </import-step>
+</import-steps>
Added: trunk/wgo.theme/wgo/theme/profiles/default/jsregistry.xml
==============================================================================
--- (empty file)
+++ trunk/wgo.theme/wgo/theme/profiles/default/jsregistry.xml Thu Oct 9 20:15:08 2008
@@ -0,0 +1,4 @@
+<?xml version="1.0"?>
+<object name="portal_javascripts">
+
+</object>
Added: trunk/wgo.theme/wgo/theme/profiles/default/metadata.xml
==============================================================================
--- (empty file)
+++ trunk/wgo.theme/wgo/theme/profiles/default/metadata.xml Thu Oct 9 20:15:08 2008
@@ -0,0 +1,4 @@
+<?xml version="1.0"?>
+<metadata>
+ <version>1.0</version>
+</metadata>
Added: trunk/wgo.theme/wgo/theme/profiles/default/skins.xml
==============================================================================
--- (empty file)
+++ trunk/wgo.theme/wgo/theme/profiles/default/skins.xml Thu Oct 9 20:15:08 2008
@@ -0,0 +1,24 @@
+<?xml version="1.0"?>
+<object name="portal_skins" allow_any="False" cookie_persistence="False"
+ default_skin="Gnome Web Theme">
+
+ <object name="wgo_theme_custom_images"
+ meta_type="Filesystem Directory View"
+ directory="wgo.theme:skins/wgo_theme_custom_images"/>
+ <object name="wgo_theme_custom_templates"
+ meta_type="Filesystem Directory View"
+ directory="wgo.theme:skins/wgo_theme_custom_templates"/>
+ <object name="wgo_theme_styles"
+ meta_type="Filesystem Directory View"
+ directory="wgo.theme:skins/wgo_theme_styles"/>
+
+ <skin-path name="Gnome Web Theme" based-on="Plone Default">
+ <layer name="wgo_theme_custom_images"
+ insert-after="custom"/>
+ <layer name="wgo_theme_custom_templates"
+ insert-after="wgo_theme_custom_images"/>
+ <layer name="wgo_theme_styles"
+ insert-after="wgo_theme_custom_templates"/>
+ </skin-path>
+
+</object>
Added: trunk/wgo.theme/wgo/theme/profiles/default/viewlets.xml
==============================================================================
--- (empty file)
+++ trunk/wgo.theme/wgo/theme/profiles/default/viewlets.xml Thu Oct 9 20:15:08 2008
@@ -0,0 +1,4 @@
+<?xml version="1.0"?>
+<object>
+
+</object>
Added: trunk/wgo.theme/wgo/theme/profiles/default/wgo.theme_various.txt
==============================================================================
--- (empty file)
+++ trunk/wgo.theme/wgo/theme/profiles/default/wgo.theme_various.txt Thu Oct 9 20:15:08 2008
@@ -0,0 +1 @@
+This file is used as a marker in setuphandlers.py.
\ No newline at end of file
Added: trunk/wgo.theme/wgo/theme/setuphandlers.py
==============================================================================
--- (empty file)
+++ trunk/wgo.theme/wgo/theme/setuphandlers.py Thu Oct 9 20:15:08 2008
@@ -0,0 +1,11 @@
+def setupVarious(context):
+
+ # Ordinarily, GenericSetup handlers check for the existence of XML files.
+ # Here, we are not parsing an XML file, but we use this text file as a
+ # flag to check that we actually meant for this import step to be run.
+ # The file is found in profiles/default.
+
+ if context.readDataFile('wgo.theme_various.txt') is None:
+ return
+
+ # Add additional setup code here
Added: trunk/wgo.theme/wgo/theme/skins.zcml
==============================================================================
--- (empty file)
+++ trunk/wgo.theme/wgo/theme/skins.zcml Thu Oct 9 20:15:08 2008
@@ -0,0 +1,14 @@
+<configure
+ xmlns="http://namespaces.zope.org/zope"
+ xmlns:cmf="http://namespaces.zope.org/cmf"
+ i18n_domain="wgo.theme">
+
+ <!-- File System Directory Views registration -->
+ <cmf:registerDirectory
+ name="wgo_theme_custom_images"/>
+ <cmf:registerDirectory
+ name="wgo_theme_custom_templates"/>
+ <cmf:registerDirectory
+ name="wgo_theme_styles"/>
+
+</configure>
\ No newline at end of file
Added: trunk/wgo.theme/wgo/theme/skins/wgo_theme_custom_images/CONTENT.txt
==============================================================================
--- (empty file)
+++ trunk/wgo.theme/wgo/theme/skins/wgo_theme_custom_images/CONTENT.txt Thu Oct 9 20:15:08 2008
@@ -0,0 +1,3 @@
+This folder holds Filesystem Image files that are registered for the
+'Gnome Web Theme' Skin Selection only.
+They act as replacement for the default Plone (or 3rd party products) ones.
\ No newline at end of file
Added: trunk/wgo.theme/wgo/theme/skins/wgo_theme_custom_templates/CONTENT.txt
==============================================================================
--- (empty file)
+++ trunk/wgo.theme/wgo/theme/skins/wgo_theme_custom_templates/CONTENT.txt Thu Oct 9 20:15:08 2008
@@ -0,0 +1,3 @@
+This folder holds Filesystem Page Template files that are registered for the
+'Gnome Web Theme' Skin Selection only.
+They act as replacement for the default Plone (or 3rd party products) ones.
\ No newline at end of file
Added: trunk/wgo.theme/wgo/theme/skins/wgo_theme_styles/CONTENT.txt
==============================================================================
--- (empty file)
+++ trunk/wgo.theme/wgo/theme/skins/wgo_theme_styles/CONTENT.txt Thu Oct 9 20:15:08 2008
@@ -0,0 +1,10 @@
+This folder holds stylesheet files that are registered for the
+'Gnome Web Theme' Skin Selection only.
+
+It is a repository for customizations of the default Plone stylesheets,
+as well as for package specific stylesheets.
+
+
+Note
+ Stylesheet files that don't use DTML can also stored in the 'browser'
+ folder and accessed as Zope 3 file resources.
\ No newline at end of file
Added: trunk/wgo.theme/wgo/theme/skins/wgo_theme_styles/base.css.dtml
==============================================================================
--- (empty file)
+++ trunk/wgo.theme/wgo/theme/skins/wgo_theme_styles/base.css.dtml Thu Oct 9 20:15:08 2008
@@ -0,0 +1,18 @@
+/*
+ This file is based on the ploneCustom.css.dtml file shipped with Plone.
+
+ <dtml-with base_properties> (do not remove this)
+ <dtml-call "REQUEST.set('portal_url', portal_url())"> (not this either)
+*/
+
+/* YOUR CSS RULES START HERE */
+
+
+
+/* YOUR CSS RULES STOP HERE */
+
+/* </dtml-with> */
+
+/* Latest version of the documentation on pre-defined properties from Plone
+ can be found in CMFPlone/skins/plone_styles/ploneCustom.css.dtml */
+
Added: trunk/wgo.theme/wgo/theme/skins/wgo_theme_styles/base_properties.props
==============================================================================
--- (empty file)
+++ trunk/wgo.theme/wgo/theme/skins/wgo_theme_styles/base_properties.props Thu Oct 9 20:15:08 2008
@@ -0,0 +1,47 @@
+title:string=Gnome Web Theme's color, font, logo and border defaults
+
+plone_skin:string=Gnome Web Theme
+
+logoName:string=logo.jpg
+
+fontFamily:string="Lucida Grande", Verdana, Lucida, Helvetica, Arial, sans-serif
+fontBaseSize:string=69%
+fontColor:string=Black
+fontSmallSize:string=85%
+
+backgroundColor:string=White
+
+linkColor:string=#436976
+linkActiveColor:string=Red
+linkVisitedColor:string=Purple
+
+borderWidth:string=1px
+borderStyle:string=solid
+borderStyleAnnotations:string=dashed
+
+globalBorderColor:string=#8cacbb
+globalBackgroundColor:string=#dee7ec
+globalFontColor:string=#436976
+
+headingFontFamily:string="Lucida Grande", Verdana, Lucida, Helvetica, Arial, sans-serif
+
+contentViewBorderColor:string=#74ae0b
+contentViewBackgroundColor:string=#cde2a7
+contentViewFontColor:string=#578308
+
+inputFontColor:string=Black
+
+textTransform:string=lowercase
+
+evenRowBackgroundColor:string=#eef3f5
+oddRowBackgroundColor:string=transparent
+
+notifyBorderColor:string=#ffa500
+notifyBackgroundColor:string=#ffce7b
+
+discreetColor:string=#76797c
+helpBackgroundColor:string=#ffffe1
+
+portalMinWidth:string=70em
+columnOneWidth:string=16em
+columnTwoWidth:string=16em
Added: trunk/wgo.theme/wgo/theme/skins/wgo_theme_styles/portlets.css.dtml
==============================================================================
--- (empty file)
+++ trunk/wgo.theme/wgo/theme/skins/wgo_theme_styles/portlets.css.dtml Thu Oct 9 20:15:08 2008
@@ -0,0 +1,18 @@
+/*
+ This file is based on the ploneCustom.css.dtml file shipped with Plone.
+
+ <dtml-with base_properties> (do not remove this)
+ <dtml-call "REQUEST.set('portal_url', portal_url())"> (not this either)
+*/
+
+/* YOUR CSS RULES START HERE */
+
+
+
+/* YOUR CSS RULES STOP HERE */
+
+/* </dtml-with> */
+
+/* Latest version of the documentation on pre-defined properties from Plone
+ can be found in CMFPlone/skins/plone_styles/ploneCustom.css.dtml */
+
Added: trunk/wgo.theme/wgo/theme/skins/wgo_theme_styles/public.css.dtml
==============================================================================
--- (empty file)
+++ trunk/wgo.theme/wgo/theme/skins/wgo_theme_styles/public.css.dtml Thu Oct 9 20:15:08 2008
@@ -0,0 +1,18 @@
+/*
+ This file is based on the ploneCustom.css.dtml file shipped with Plone.
+
+ <dtml-with base_properties> (do not remove this)
+ <dtml-call "REQUEST.set('portal_url', portal_url())"> (not this either)
+*/
+
+/* YOUR CSS RULES START HERE */
+
+
+
+/* YOUR CSS RULES STOP HERE */
+
+/* </dtml-with> */
+
+/* Latest version of the documentation on pre-defined properties from Plone
+ can be found in CMFPlone/skins/plone_styles/ploneCustom.css.dtml */
+
Added: trunk/wgo.theme/wgo/theme/tests.py
==============================================================================
--- (empty file)
+++ trunk/wgo.theme/wgo/theme/tests.py Thu Oct 9 20:15:08 2008
@@ -0,0 +1,54 @@
+import unittest
+
+from zope.testing import doctestunit
+from zope.component import testing
+from Testing import ZopeTestCase as ztc
+
+from Products.Five import zcml
+from Products.Five import fiveconfigure
+from Products.PloneTestCase import PloneTestCase as ptc
+from Products.PloneTestCase.layer import PloneSite
+ptc.setupPloneSite()
+
+import wgo.theme
+
+class TestCase(ptc.PloneTestCase):
+ class layer(PloneSite):
+ @classmethod
+ def setUp(cls):
+ fiveconfigure.debug_mode = True
+ zcml.load_config('configure.zcml',
+ wgo.theme)
+ fiveconfigure.debug_mode = False
+
+ @classmethod
+ def tearDown(cls):
+ pass
+
+
+def test_suite():
+ return unittest.TestSuite([
+
+ # Unit tests
+ #doctestunit.DocFileSuite(
+ # 'README.txt', package='wgo.theme',
+ # setUp=testing.setUp, tearDown=testing.tearDown),
+
+ #doctestunit.DocTestSuite(
+ # module='wgo.theme.mymodule',
+ # setUp=testing.setUp, tearDown=testing.tearDown),
+
+
+ # Integration tests that use PloneTestCase
+ #ztc.ZopeDocFileSuite(
+ # 'README.txt', package='wgo.theme',
+ # test_class=TestCase),
+
+ #ztc.FunctionalDocFileSuite(
+ # 'browser.txt', package='wgo.theme',
+ # test_class=TestCase),
+
+ ])
+
+if __name__ == '__main__':
+ unittest.main(defaultTest='test_suite')
Added: trunk/wgo.theme/wgo/theme/version.txt
==============================================================================
--- (empty file)
+++ trunk/wgo.theme/wgo/theme/version.txt Thu Oct 9 20:15:08 2008
@@ -0,0 +1 @@
+1.0
\ No newline at end of file
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]