Applications Library

TopicType

TopicType of all possible TopicTypes

Documentation

The TopicType is the root of the type system of the TWikiWorbench. Every TWikiTopic has got one or more TopicTypes. TopicTypes often correlate to TWikiForms, where a type indicates the properties and use of the form being attached to a topic. However, there are also TopicTypes that only serve more as an additional marker to a generic TWikiForm being used in different applications.

TopicTypes are able overcome TWiki's limitation to only allow one form to be attached to a topic. If you'd like to attach a second form to a topic, create a new TWikiForm that mixes two others and indicate this by merging the resulting TopicType properties. This procedure is the recommended way to derive new TopicTypes from existing ones building on top of them, e.g. by augmenting a CategorizedTopic with additional formfields.

TopicTypes have a special property that you might use to indicate a special way of derivation by means of inheritance. There is no real inheritance in TWiki but the way of thinking when dealing with objects and types can be clarified this way.

When you start writing a TWikiApplication, first think of the data objects you will need and create TopicTypes for each. You can double-mark a TopicType being a TWikiForm implementation in many cases, but you can also create a separate TWikiForm topic being distinct from the TopicType topic.

The TopicType topic is the factory to create new TopicTypes as well.

Installation

Install 'TopicType' TopicType in

Factory

New TopicType

Topics of type 'TopicType'

Nr Name Inheritance Summary Application
1 AdminTool ApplicationTopic TopicType for topics on the administrative level TWikiWorkbench
2 ApplicationFactory ApplicationTopic Tool to create an application instance TWikiWorkbench
3 ApplicationLicense ApplicationTopic License for TWikiApplications TWikiWorkbench
4 ApplicationTopic TWikiTopic A topic that is part of an application TWikiWorkbench
5 AuthorTool ApplicationTopic Topics used by authors, writers, content makers TWikiWorkbench
6 CascadingStyleSheet ApplicationTopic TopicType of a bunch of CSS definitions used in a TWikiApplication TWikiWorkbench
7 DevelopmentTool ApplicationTopic TopicType of topics on the development level TWikiWorkbench
8 DocuTopic ApplicationTopic Topics that contain pure documentation. TWikiWorkbench
9 FrontPage ApplicationTopic Type of topics that serve as a kind of entry point TWikiWorkbench
10 TWikiApplication ApplicationTopic TopicType of a TWikiApplication TWikiWorkbench
11 TWikiForm ApplicationTopic TopicType of System.TWikiForms TWikiWorkbench
12 TWikiFormAttribute ApplicationTopic TopicType for an attribute description of a TWikiForm TWikiWorkbench
13 TWikiTopic none A normal TWiki topic TWikiWorkbench
14 TopicFunction ApplicationTopic TopicType of topics to be called by a (parameterized) INCLUDE or DBCALL TWikiWorkbench
15 TopicStub ApplicationTopic A placeholder or redirect topic TWikiWorkbench
16 TopicTemplate ApplicationTopic Blueprints of TWiki content TWikiWorkbench
17 TopicType ApplicationTopic TopicType of all possible TopicTypes TWikiWorkbench
18 TopicView ApplicationTopic TopicType of topics that implement a TMPL template to view topics TWikiWorkbench

TopicType form

Name: Type: Size: Values: Tooltip message: Attributes:
TopicType checkbox 3 none, AdminTool, ApplicationFactory, ApplicationLicense, ApplicationTopic, AuthorTool, CascadingStyleSheet, DevelopmentTool, DocuTopic, FrontPage, TopicFunction, TopicStub, TopicTemplate, TopicType, TopicView, TWikiApplication, TWikiForm, TWikiFormAttribute, TWikiTopic Document type  
TopicTitle text 75   title  
Inheritance checkbox 3 none, AdminTool, ApplicationFactory, ApplicationLicense, ApplicationTopic, AuthorTool, CascadingStyleSheet, DevelopmentTool, DocuTopic, FrontPage, TopicFunction, TopicStub, TopicTemplate, TopicType, TopicView, TWikiApplication, TWikiForm, TWikiFormAttribute, TWikiTopic TopicType whose properties are implemented here too (see java's interfaces)  
Summary text 75   Short description of the role of this topic  
TWikiApplication select 1 none, ClassificationApp? , DiscussionApp? , EmployeePortalApp? , TWikiWorkbench Application this topic belongs to  

Applications.TopicType
TopicType: DevelopmentTool, DocuTopic, TopicType, TWikiFormAttribute
Inheritance: ApplicationTopic
Summary: TopicType of all possible TopicTypes
TWikiApplication: TWikiWorkbench
r0 - 27 Aug 2007 - 03:54:06 - TWikiContributor
© giant orange extension cord that reeks hip-hop, funk & soul