Author: christian.bauer(a)jboss.com
Date: 2008-02-27 09:31:31 -0500 (Wed, 27 Feb 2008)
New Revision: 7491
Added:
trunk/examples/wiki/src/etc/i18n/messages_dirToc_en.properties
trunk/examples/wiki/src/main/org/jboss/seam/wiki/plugin/dirToc/
trunk/examples/wiki/src/main/org/jboss/seam/wiki/plugin/dirToc/DirTocPreferences.java
trunk/examples/wiki/src/main/org/jboss/seam/wiki/plugin/dirToc/DirTocPreferencesSupport.java
trunk/examples/wiki/src/main/org/jboss/seam/wiki/plugin/dirToc/DirTocQuery.java
trunk/examples/wiki/view/plugins/dirToc/
trunk/examples/wiki/view/plugins/dirToc/plugin.xhtml
trunk/examples/wiki/view/themes/default/css/dirToc.css
trunk/examples/wiki/view/themes/inrelationto/css/dirToc.css
trunk/examples/wiki/view/themes/sfwkorg/css/dirToc.css
Modified:
trunk/examples/wiki/src/etc/WEB-INF/components.xml
trunk/examples/wiki/src/test/org/jboss/seam/wiki/test/KnowledgeBase.dbunit.xml
trunk/examples/wiki/view/includes/directoryBrowserPath.xhtml
Log:
JBSEAM-2634, table-of-contents plugin
Modified: trunk/examples/wiki/src/etc/WEB-INF/components.xml
===================================================================
--- trunk/examples/wiki/src/etc/WEB-INF/components.xml 2008-02-27 08:41:59 UTC (rev 7490)
+++ trunk/examples/wiki/src/etc/WEB-INF/components.xml 2008-02-27 14:31:31 UTC (rev 7491)
@@ -98,9 +98,7 @@
<value>i18n.messages_feedAggregator</value>
<value>i18n.messages_feedConnector</value>
<value>i18n.messages_forumTopPosters</value>
- <!--
<value>i18n.messages_dirToc</value>
- -->
</core:bundle-names>
</core:resource-loader>
Copied: trunk/examples/wiki/src/etc/i18n/messages_dirToc_en.properties (from rev 7445,
trunk/examples/wiki/src/etc/i18n/messages_dirMenu_en.properties)
===================================================================
--- trunk/examples/wiki/src/etc/i18n/messages_dirToc_en.properties
(rev 0)
+++ trunk/examples/wiki/src/etc/i18n/messages_dirToc_en.properties 2008-02-27 14:31:31 UTC
(rev 7491)
@@ -0,0 +1,8 @@
+dirToc.preferences.Name=Plugin: Directory TOC
+dirToc.preferences.ShowRootDocuments=Show documents of root directory
+dirToc.preferences.ShowDefaultDocuments=Show default documents of all directories
+dirToc.preferences.ShowLastUpdatedTimestamp=Show 'Last Updated' timestamp
+dirToc.preferences.WithHeaderMacro=Only show documents with macro in header
+dirToc.preferences.RootDocumentLink=Wiki link to root document of TOC
+
+dirToc.label.LastUpdated=Last Updated
Added:
trunk/examples/wiki/src/main/org/jboss/seam/wiki/plugin/dirToc/DirTocPreferences.java
===================================================================
--- trunk/examples/wiki/src/main/org/jboss/seam/wiki/plugin/dirToc/DirTocPreferences.java
(rev 0)
+++
trunk/examples/wiki/src/main/org/jboss/seam/wiki/plugin/dirToc/DirTocPreferences.java 2008-02-27
14:31:31 UTC (rev 7491)
@@ -0,0 +1,73 @@
+/*
+ * JBoss, Home of Professional Open Source
+ *
+ * Distributable under LGPL license.
+ * See terms of license at
gnu.org.
+ */
+package org.jboss.seam.wiki.plugin.dirToc;
+
+import org.jboss.seam.wiki.preferences.annotations.Preferences;
+import org.jboss.seam.wiki.preferences.annotations.PreferenceProperty;
+import org.jboss.seam.wiki.preferences.PreferenceVisibility;
+import org.hibernate.validator.Length;
+
+/**
+ * @author Christian Bauer
+ */
+@Preferences(name = "DirToc", description =
"#{messages['dirToc.preferences.Name']}")
+public class DirTocPreferences {
+
+ @PreferenceProperty(
+ description =
"#{messages['dirToc.preferences.ShowRootDocuments']}",
+ visibility = {PreferenceVisibility.INSTANCE}
+ )
+ private Boolean showRootDocuments;
+
+ @PreferenceProperty(
+ description =
"#{messages['dirToc.preferences.ShowDefaultDocuments']}",
+ visibility = {PreferenceVisibility.INSTANCE}
+ )
+ private Boolean showDefaultDocuments;
+
+ @PreferenceProperty(
+ description =
"#{messages['dirToc.preferences.ShowLastUpdatedTimestamp']}",
+ visibility = {PreferenceVisibility.INSTANCE}
+ )
+ private Boolean showLastUpdatedTimestamp;
+
+ @PreferenceProperty(
+ description =
"#{messages['dirToc.preferences.WithHeaderMacro']}",
+ visibility = {PreferenceVisibility.INSTANCE},
+ editorIncludeName = "AdaptiveTextInput"
+ )
+ @Length(min = 0, max = 255)
+ private String withHeaderMacro;
+
+ @PreferenceProperty(
+ description =
"#{messages['dirToc.preferences.RootDocumentLink']}",
+ visibility = {PreferenceVisibility.INSTANCE},
+ editorIncludeName = "AdaptiveTextInput"
+ )
+ @Length(min = 0, max = 255)
+ private String rootDocumentLink;
+
+ public Boolean getShowRootDocuments() {
+ return showRootDocuments;
+ }
+
+ public Boolean getShowDefaultDocuments() {
+ return showDefaultDocuments;
+ }
+
+ public Boolean getShowLastUpdatedTimestamp() {
+ return showLastUpdatedTimestamp;
+ }
+
+ public String getWithHeaderMacro() {
+ return withHeaderMacro;
+ }
+
+ public String getRootDocumentLink() {
+ return rootDocumentLink;
+ }
+}
Added:
trunk/examples/wiki/src/main/org/jboss/seam/wiki/plugin/dirToc/DirTocPreferencesSupport.java
===================================================================
---
trunk/examples/wiki/src/main/org/jboss/seam/wiki/plugin/dirToc/DirTocPreferencesSupport.java
(rev 0)
+++
trunk/examples/wiki/src/main/org/jboss/seam/wiki/plugin/dirToc/DirTocPreferencesSupport.java 2008-02-27
14:31:31 UTC (rev 7491)
@@ -0,0 +1,27 @@
+/*
+ * JBoss, Home of Professional Open Source
+ *
+ * Distributable under LGPL license.
+ * See terms of license at
gnu.org.
+ */
+package org.jboss.seam.wiki.plugin.dirToc;
+
+import org.jboss.seam.annotations.Name;
+import org.jboss.seam.wiki.preferences.metamodel.PreferencesSupport;
+import org.jboss.seam.wiki.preferences.metamodel.PreferenceEntity;
+
+import java.util.Set;
+import java.util.HashSet;
+
+/**
+ * @author Christian Bauer
+ */
+@Name("dirTocPreferencesSupport")
+public class DirTocPreferencesSupport extends PreferencesSupport {
+
+ public Set<PreferenceEntity> getPreferenceEntities() {
+ return new HashSet<PreferenceEntity>() {{
+ add( createPreferenceEntity(DirTocPreferences.class) );
+ }};
+ }
+}
Added: trunk/examples/wiki/src/main/org/jboss/seam/wiki/plugin/dirToc/DirTocQuery.java
===================================================================
--- trunk/examples/wiki/src/main/org/jboss/seam/wiki/plugin/dirToc/DirTocQuery.java
(rev 0)
+++
trunk/examples/wiki/src/main/org/jboss/seam/wiki/plugin/dirToc/DirTocQuery.java 2008-02-27
14:31:31 UTC (rev 7491)
@@ -0,0 +1,123 @@
+/*
+ * JBoss, Home of Professional Open Source
+ *
+ * Distributable under LGPL license.
+ * See terms of license at
gnu.org.
+ */
+package org.jboss.seam.wiki.plugin.dirToc;
+
+import org.hibernate.Query;
+import org.hibernate.Session;
+import org.jboss.seam.Component;
+import org.jboss.seam.ScopeType;
+import org.jboss.seam.annotations.In;
+import org.jboss.seam.annotations.Name;
+import org.jboss.seam.annotations.Observer;
+import org.jboss.seam.annotations.Scope;
+import org.jboss.seam.wiki.core.dao.WikiNodeDAO;
+import org.jboss.seam.wiki.core.engine.WikiLinkResolver;
+import org.jboss.seam.wiki.core.model.WikiDirectory;
+import org.jboss.seam.wiki.core.model.WikiDocument;
+import org.jboss.seam.wiki.core.nestedset.query.NestedSetNodeWrapper;
+import org.richfaces.component.UITree;
+
+import javax.persistence.EntityManager;
+import java.io.Serializable;
+import java.util.*;
+
+/**
+ * @author Christian Bauer
+ */
+@Name("dirTocQuery")
+(a)Scope(ScopeType.CONVERSATION)
+public class DirTocQuery implements Serializable {
+
+ @In
+ EntityManager restrictedEntityManager;
+
+ @In
+ Integer currentAccessLevel;
+
+ @In
+ WikiDirectory currentDirectory;
+
+ @In("#{preferences.get('DirToc', currentMacro)}")
+ DirTocPreferences prefs;
+
+ @In
+ WikiNodeDAO wikiNodeDAO;
+
+ NestedSetNodeWrapper<WikiDirectory> tocRoot;
+
+ public NestedSetNodeWrapper<WikiDirectory> getTocRoot() {
+ if (tocRoot == null) loadTocRoot();
+ return tocRoot;
+ }
+
+ @Observer(value = "Macro.render.dirToc", create = false)
+ public void loadTocRoot() {
+
+ if (prefs.getRootDocumentLink() != null) {
+ Long id =
((WikiLinkResolver)Component.getInstance("wikiLinkResolver"))
+ .resolveWikiDirectoryId(currentDirectory.getAreaNumber(),
prefs.getRootDocumentLink());
+ WikiDirectory foundDir = wikiNodeDAO.findWikiDirectory(id);
+ if (foundDir != null)
+ currentDirectory = foundDir;
+ }
+
+ // Query the directory tree
+ tocRoot = wikiNodeDAO.findWikiDirectoryTree(currentDirectory);
+
+ Set<Long> directoryIds = new
HashSet<Long>(tocRoot.getFlatTree().keySet());
+ if (prefs.getShowRootDocuments() != null && prefs.getShowRootDocuments())
{
+ directoryIds.add(tocRoot.getWrappedNode().getId());
+ }
+ if (directoryIds.size() == 0) return; // Early exit
+
+ // Now query the documents for the directories in the tree
+ StringBuilder queryString = new StringBuilder();
+ queryString.append("select d from WikiDocument d ");
+ // TODO: Rewrite this query to use a subselect nested set query, this has limits
+ queryString.append("where d.parent.id in (:directories) ");
+ if (prefs.getWithHeaderMacro() != null)
+ queryString.append("and d.headerMacrosString like
:headerMacro").append(" ");
+ queryString.append("order by d.createdOn asc");
+
+ Query query = getSession().createQuery(queryString.toString());
+ query.setParameterList("directories", directoryIds);
+ if (prefs.getWithHeaderMacro() != null)
+ query.setParameter("headerMacro",
"%"+prefs.getWithHeaderMacro()+"%");
+ query.setComment("retrieving documents for toc directory tree");
+
+ List<WikiDocument> flatDocs = query.list();
+
+ // Now attach the documents as payloads to the directories in the tree
+ for (WikiDocument flatDoc : flatDocs) {
+
+ Long directoryId = flatDoc.getParent().getId();
+ NestedSetNodeWrapper<WikiDirectory> dirWrapper;
+
+ if (prefs.getShowRootDocuments() != null &&
prefs.getShowRootDocuments()
+ && directoryId.equals(tocRoot.getWrappedNode().getId())) {
+ dirWrapper = tocRoot;
+ } else {
+ dirWrapper = tocRoot.getFlatTree().get(directoryId);
+ }
+
+ if (dirWrapper.getPayload() == null)
+ dirWrapper.setPayload(new ArrayList<WikiDocument>());
+
+ ((Collection)dirWrapper.getPayload()).add(flatDoc);
+ }
+
+ }
+
+ public boolean expandTocTree(UITree tree) {
+ return true; // Expand all nodes by default;
+ }
+
+ private Session getSession() {
+ return ((Session)((org.jboss.seam.persistence.EntityManagerProxy)
restrictedEntityManager).getDelegate());
+ }
+
+}
Modified: trunk/examples/wiki/src/test/org/jboss/seam/wiki/test/KnowledgeBase.dbunit.xml
===================================================================
---
trunk/examples/wiki/src/test/org/jboss/seam/wiki/test/KnowledgeBase.dbunit.xml 2008-02-27
08:41:59 UTC (rev 7490)
+++
trunk/examples/wiki/src/test/org/jboss/seam/wiki/test/KnowledgeBase.dbunit.xml 2008-02-27
14:31:31 UTC (rev 7491)
@@ -32,9 +32,9 @@
<WIKI_DOCUMENT
NODE_ID="202"
NAME_AS_TITLE="true" ENABLE_COMMENTS="false"
ENABLE_COMMENT_FORM="false" ENABLE_COMMENTS_ON_FEEDS="false"
- HEADER_MACROS="hideCreatorHistory" CONTENT_MACROS="dirMenu"
FOOTER_MACROS="[NULL]"
+ HEADER_MACROS="hideCreatorHistory" CONTENT_MACROS="dirToc
dirMenu" FOOTER_MACROS="[NULL]"
HEADER="[<=hideCreatorHistory]" FOOTER="[NULL]"
- CONTENT="Knowledge
Base...

[<=dirMenu[onlyMenuItems=true]]"/>
+ CONTENT="Knowledge Base...

<div
style="float:right;">[<=dirMenu[onlyMenuItems=true]]</div>

[<=dirToc[showDefaultDocuments=true][showLastUpdatedTimestamp=true][withHeaderMacro=tocEntry]]"/>
<WIKI_NODE
@@ -77,5 +77,62 @@
NS_LEFT="208" NS_RIGHT="209" NS_THREAD="1"/>
<WIKI_MENU_ITEM DIRECTORY_ID="206" DISPLAY_POSITION="3"/>
+
+ <WIKI_NODE
+ NODE_ID="207" OBJ_VERSION="0" RATING="0"
PARENT_NODE_ID="204"
+ AREA_NR="200" NAME="Some setup instructions"
WIKINAME="SomeSetupInstructions"
+ CREATED_ON="2006-09-23 13:45:00" CREATED_BY_USER_ID="1"
LAST_MODIFIED_ON="[NULL]" LAST_MODIFIED_BY_USER_ID="[NULL]"
+ READ_ACCESS_LEVEL="0" WRITE_ACCESS_LEVEL="0"
WRITE_PROTECTED="false"/>
+ <WIKI_FILE
+ NODE_ID="207" FILE_REVISION="0"/>
+ <WIKI_DOCUMENT
+ NODE_ID="207"
+ NAME_AS_TITLE="true" ENABLE_COMMENTS="false"
ENABLE_COMMENT_FORM="false" ENABLE_COMMENTS_ON_FEEDS="false"
+ HEADER_MACROS="tocEntry" CONTENT_MACROS="[NULL]"
FOOTER_MACROS="[NULL]"
+ HEADER="[<=tocEntry]" FOOTER="[NULL]"
+ CONTENT="This is a document with a tocEntry header macro."/>
+
+ <WIKI_NODE
+ NODE_ID="208" OBJ_VERSION="0" RATING="0"
PARENT_NODE_ID="204"
+ AREA_NR="200" NAME="More setup instructions"
WIKINAME="MoreSetupInstructions"
+ CREATED_ON="2006-09-24 13:45:00" CREATED_BY_USER_ID="1"
LAST_MODIFIED_ON="[NULL]" LAST_MODIFIED_BY_USER_ID="[NULL]"
+ READ_ACCESS_LEVEL="0" WRITE_ACCESS_LEVEL="0"
WRITE_PROTECTED="false"/>
+ <WIKI_FILE
+ NODE_ID="208" FILE_REVISION="0"/>
+ <WIKI_DOCUMENT
+ NODE_ID="208"
+ NAME_AS_TITLE="true" ENABLE_COMMENTS="false"
ENABLE_COMMENT_FORM="false" ENABLE_COMMENTS_ON_FEEDS="false"
+ HEADER_MACROS="tocEntry" CONTENT_MACROS="[NULL]"
FOOTER_MACROS="[NULL]"
+ HEADER="[<=tocEntry]" FOOTER="[NULL]"
+ CONTENT="This is a document with a tocEntry header macro."/>
+
+ <WIKI_NODE
+ NODE_ID="209" OBJ_VERSION="0" RATING="0"
PARENT_NODE_ID="205"
+ AREA_NR="200" NAME="Another knowledge page"
WIKINAME="AnotherKnowledgePage"
+ CREATED_ON="2006-09-25 13:45:00" CREATED_BY_USER_ID="1"
LAST_MODIFIED_ON="2006-09-25 13:45:00" LAST_MODIFIED_BY_USER_ID="1"
+ READ_ACCESS_LEVEL="0" WRITE_ACCESS_LEVEL="0"
WRITE_PROTECTED="false"/>
+ <WIKI_FILE
+ NODE_ID="209" FILE_REVISION="0"/>
+ <WIKI_DOCUMENT
+ NODE_ID="209"
+ NAME_AS_TITLE="true" ENABLE_COMMENTS="false"
ENABLE_COMMENT_FORM="false" ENABLE_COMMENTS_ON_FEEDS="false"
+ HEADER_MACROS="tocEntry" CONTENT_MACROS="[NULL]"
FOOTER_MACROS="[NULL]"
+ HEADER="[<=tocEntry]" FOOTER="[NULL]"
+ CONTENT="This is a document with a tocEntry header macro."/>
+
+ <WIKI_NODE
+ NODE_ID="210" OBJ_VERSION="0" RATING="0"
PARENT_NODE_ID="205"
+ AREA_NR="200" NAME="A document not in the TOC"
WIKINAME="ADocumentNotInTheTOC"
+ CREATED_ON="2006-09-26 13:45:00" CREATED_BY_USER_ID="1"
LAST_MODIFIED_ON="[NULL]" LAST_MODIFIED_BY_USER_ID="[NULL]"
+ READ_ACCESS_LEVEL="0" WRITE_ACCESS_LEVEL="0"
WRITE_PROTECTED="false"/>
+ <WIKI_FILE
+ NODE_ID="210" FILE_REVISION="0"/>
+ <WIKI_DOCUMENT
+ NODE_ID="210"
+ NAME_AS_TITLE="true" ENABLE_COMMENTS="false"
ENABLE_COMMENT_FORM="false" ENABLE_COMMENTS_ON_FEEDS="false"
+ HEADER_MACROS="[NULL]" CONTENT_MACROS="[NULL]"
FOOTER_MACROS="[NULL]"
+ HEADER="[NULL]" FOOTER="[NULL]"
+ CONTENT="This is a document with no tocEntry header macro, so it does not
appear in the TOC."/>
+
</dataset>
Modified: trunk/examples/wiki/view/includes/directoryBrowserPath.xhtml
===================================================================
--- trunk/examples/wiki/view/includes/directoryBrowserPath.xhtml 2008-02-27 08:41:59 UTC
(rev 7490)
+++ trunk/examples/wiki/view/includes/directoryBrowserPath.xhtml 2008-02-27 14:31:31 UTC
(rev 7491)
@@ -16,7 +16,7 @@
<s:fragment>
<a:commandLink action="#{directoryBrowser.showTree}"
tabindex="1"
- reRender="#{renderOnSelect},
directoryBrowserPath"
+ reRender="#{renderOnSelect}"
rendered="#{not
directoryBrowserSettings.treeVisible}"
status="globalStatus">
<h:graphicImage
value="#{themePath}/img/menu_right.gif" width="18"
height="18"/>
Added: trunk/examples/wiki/view/plugins/dirToc/plugin.xhtml
===================================================================
--- trunk/examples/wiki/view/plugins/dirToc/plugin.xhtml (rev 0)
+++ trunk/examples/wiki/view/plugins/dirToc/plugin.xhtml 2008-02-27 14:31:31 UTC (rev
7491)
@@ -0,0 +1,71 @@
+<wiki:plugin
+
xmlns="http://www.w3.org/1999/xhtml"
+
xmlns:ui="http://java.sun.com/jsf/facelets"
+
xmlns:h="http://java.sun.com/jsf/html"
+
xmlns:f="http://java.sun.com/jsf/core"
+
xmlns:a="https://ajax4jsf.dev.java.net/ajax"
+
xmlns:wiki="http://jboss.com/products/seam/wiki"
+
xmlns:rich="http://richfaces.ajax4jsf.org/rich"
+
xmlns:s="http://jboss.com/products/seam/taglib">
+
+ <rich:tree switchType="client" styleClass="dirToc"
+ adviseNodeOpened="#{dirTocQuery.expandTocTree}">
+
+ <rich:treeNodesAdaptor
+ var="rootDoc"
+ nodes="#{dirTocQuery.tocRoot.payload}"
+ includedNode="#{rootDoc.id !=
dirTocQuery.tocRoot.wrappedNode.defaultFile.id or preferences.get('DirToc',
currentMacro).showDefaultDocuments}">
+ <rich:treeNode>
+ <f:facet name="iconLeaf">
+ <h:graphicImage value="#{themePath}/img/icon.doc.gif"
width="18" height="20"/>
+ </f:facet>
+ <h:outputLink value="#{wikiURLRenderer.renderURL(doc)}">
+ <h:outputText styleClass="tocDocumentLabel"
value="#{doc.name}"/>
+ </h:outputLink>
+ </rich:treeNode>
+ </rich:treeNodesAdaptor>
+
+ <rich:recursiveTreeNodesAdaptor
+ var="tocDir"
+ roots="#{dirTocQuery.tocRoot.wrappedChildren}"
+ nodes="#{tocDir.wrappedChildren}">
+
+ <rich:treeNode>
+ <f:facet name="icon">
+ <h:graphicImage value="#{themePath}/img/icon.dir.gif"
width="18" height="20"/>
+ </f:facet>
+ <f:facet name="iconLeaf">
+ <h:graphicImage value="#{themePath}/img/icon.dir.gif"
width="18" height="20"/>
+ </f:facet>
+ <s:span styleClass="undecoratedLink">
+ <h:outputLink
value="#{wikiURLRenderer.renderURL(tocDir.wrappedNode)}">
+ <h:outputText styleClass="tocDirectoryLabel"
value="#{tocDir.wrappedNode.name}"/>
+ </h:outputLink>
+ </s:span>
+ </rich:treeNode>
+
+ <rich:treeNodesAdaptor var="doc"
nodes="#{tocDir.payload}"
+ includedNode="#{doc.id !=
tocDir.wrappedNode.defaultFile.id or preferences.get('DirToc',
currentMacro).showDefaultDocuments}">
+ <rich:treeNode>
+ <f:facet name="iconLeaf">
+ <h:graphicImage
value="#{themePath}/img/icon.doc.gif" width="18"
height="20"/>
+ </f:facet>
+ <h:outputLink
value="#{wikiURLRenderer.renderURL(doc)}">
+ <h:outputText styleClass="tocDocumentLabel"
value="#{doc.name}"/>
+ </h:outputLink>
+ <s:span styleClass="tocLastUpdatedLabel"
+ rendered="#{preferences.get('DirToc',
currentMacro).showLastUpdatedTimestamp and not empty doc.lastModifiedOn}">
+ <h:outputText
value=" (#{messages['dirToc.label.LastUpdated']}: "/>
+ <h:outputText value="#{doc.lastModifiedOn}">
+ <f:convertDateTime pattern="dd. MMM yyyy, HH:mm"
timeZone="#{preferences.get('Wiki').timeZone}"/>
+ </h:outputText>
+ <h:outputText
value=" #{preferences.get('Wiki').timeZone}"/>
+ <h:outputText value=")"/>
+ </s:span>
+ </rich:treeNode>
+ </rich:treeNodesAdaptor>
+
+ </rich:recursiveTreeNodesAdaptor>
+ </rich:tree>
+
+</wiki:plugin>
\ No newline at end of file
Added: trunk/examples/wiki/view/themes/default/css/dirToc.css
===================================================================
--- trunk/examples/wiki/view/themes/default/css/dirToc.css (rev
0)
+++ trunk/examples/wiki/view/themes/default/css/dirToc.css 2008-02-27 14:31:31 UTC (rev
7491)
@@ -0,0 +1,20 @@
+.dirToc {
+}
+
+.tocDirectoryLabel {
+ font-weight: bold;
+}
+
+.tocDirectoryLabel {
+ cursor: pointer;
+}
+
+.tocDocumentLabel {
+ margin-left: 5px;
+ cursor: pointer;
+}
+
+.rich-tree-node-highlighted .tocDirectoryLabel,
+.rich-tree-node-highlighted .tocDocumentLabel {
+ color: black;
+}
Added: trunk/examples/wiki/view/themes/inrelationto/css/dirToc.css
===================================================================
--- trunk/examples/wiki/view/themes/inrelationto/css/dirToc.css
(rev 0)
+++ trunk/examples/wiki/view/themes/inrelationto/css/dirToc.css 2008-02-27 14:31:31 UTC
(rev 7491)
@@ -0,0 +1,20 @@
+.dirToc {
+}
+
+.tocDirectoryLabel {
+ font-weight: bold;
+}
+
+.tocDirectoryLabel {
+ cursor: pointer;
+}
+
+.tocDocumentLabel {
+ margin-left: 5px;
+ cursor: pointer;
+}
+
+.rich-tree-node-highlighted .tocDirectoryLabel,
+.rich-tree-node-highlighted .tocDocumentLabel {
+ color: black;
+}
Added: trunk/examples/wiki/view/themes/sfwkorg/css/dirToc.css
===================================================================
--- trunk/examples/wiki/view/themes/sfwkorg/css/dirToc.css (rev
0)
+++ trunk/examples/wiki/view/themes/sfwkorg/css/dirToc.css 2008-02-27 14:31:31 UTC (rev
7491)
@@ -0,0 +1,21 @@
+.dirToc {
+}
+
+.tocDirectoryPanel {
+ margin-top: 5px;
+}
+
+.tocDirectoryLabel {
+ font-weight: bold;
+ cursor: pointer;
+}
+
+.tocDocumentLabel {
+ margin-left: 5px;
+ cursor: pointer;
+}
+
+.rich-tree-node-highlighted .tocDirectoryLabel,
+.rich-tree-node-highlighted .tocDocumentLabel {
+ color: black;
+}