Welcome, Registration, and other StartingPoints; TWiki history & Wiki style; All the docs...
View   r4  >  r3  ...
TwistyContrib 4 - 22 Feb 2006 - Main.TWikiContributor
Line: 1 to 1
 

TwistyContrib

Changed:
<
<
>
>
This contrib packages in a convenient way the JavaScript library and the CSS file needed to implement Twisty sections.
 
Changed:
<
<

Summary

>
>
TwistyContrib is installed by default in TWiki 4 and used by Twisty Plugin.
 
Changed:
<
<
This contrib packages in a convenient way the Javascript library and the CSS file needed to implement TWisty Sections.
>
>
It is recommended to use the TwistyPlugin as it eases the deployment and use of this contrib.
 
Changed:
<
<
See the attached file for a demo and an example of usage.
>
>
This Contrib should work in all versions of TWiki. It has been tested against TWiki 3 and TWiki 4.
 
Changed:
<
<
To use the libraries, you must place the following scriplet either in the head section of the page (by modifying the TWikiSkins) or putting it somewhere in the topic:
>
>
 
Changed:
<
<
<style type="text/css" media="all">
@import url("%PUBURLPATH%/TWiki/TwistyContrib/twist.css");
</style>
>
>

Usage examples

If the contrib is properly installed (and JavaScript is enabled in your browser) you should see two folding sections below.

 
Changed:
<
<
>
>

Basic Twisty

<span id="demo1show" class="twistyTrigger twistyMakeVisible"><button class="twikiButton"> Unfold </button></span>
<span id="demo1hide" class="twistyTrigger twistyHidden"><button class="twikiButton"> Fold </button></span>
<span id="demo1toggle" class="twistyContent twistyMakeHidden">
my twisty content
</span>
 
Changed:
<
<
It's recommended to use the TWiki:Plugins.TwistyPlugin, as it eases the deployment and use of this contrib.
>
>
Generates:
 
Changed:
<
<
Caution: If the previous scriplet is put in the HEAD section of the page or the TWiki:Plugins.TwistyPlugin is used, it won't work if the <body onload=""> manager is set by the skin. Check the twist.js file for an idea on how to register an eventmanager for the onload event without overwriting the previous one.
>
>
my twisty content
 
Changed:
<
<
This Contrib should work in all versions of TWiki. It has been tested against TWiki:Codev.CairoRelease and TWiki:Codev.DakarRelease.
>
>

Twisty with placeholder text

<span id="demo2show" class="twistyTrigger twistyMakeVisible"><a href="#">Expand...</a> <span class="twistyPlaceholder">Hamlet is without question the most famous play in the English language...</span></span>
<span id="demo2hide" class="twistyTrigger twistyHidden"><a href="#">Collapse...</a></span>
<span id="demo2toggle" class="twistyContent twistyMakeHidden">
Hamlet is without question the most famous play in the English language. Probably written in 1601 or 1602, the tragedy is a milestone in Shakespeare's dramatic development.
</span>
 
Changed:
<
<

Customization

>
>
Generates:

Expand... Hamlet is without question the most famous play in the English language... Collapse... Hamlet is without question the most famous play in the English language. Probably written in 1601 or 1602, the tragedy is a milestone in Shakespeare's dramatic development.

 Skins can customize the color of the twisty placeholder by modifiying the .twistyPlaceholder style.
Added:
>
>

Twisty made easy

Manual written by Harald Joerg. Examples require Spreadsheet Plugin to work (installed by default).

Some of my TWiki users are impressed by the optical effect of what can be done with TWiki:Plugins.TwistyPlugin - and they keep asking me: "How do I do that? I don't understand the documentation, and I don't understand the raw text of your topics!"

They indeed have a point here. The docs aren't easily understood. It isn't easy to pick all the variables needed from a single example, and just copypasting sometimes fails in embarrassing ways if non-unique id attributes are present in a topic. Maybe it is easy for a power user, but it surely isn't easy enough. There ought to be a way to make it easier.

Well, here you are.

Just set a couple of site preferences, and your users will immediately understand your examples and start writing their own twisties. And what's more: They'll do so in a consistent way, across all your topics in all webs.

You Write

In your Main.TWikiPreferences write:
   * Set FLIP = <span id="twid_%CALC{$SETM(twisty_id, + 1)$GET(twisty_id)}%show" class="twistyTrigger twistyMakeVisible">
       <a href="#">more...</a>
     </span>
     <span id="twid_%CALC{$GET(twisty_id)}%hide" class="twistyTrigger twistyHidden">
       <a href="#">close</a>
     </span>
     <div id="twid_%CALC{$GET(twisty_id)}%toggle" class="twistyContent twistyMakeHidden">
   * Set FLOP = </div>
TIP You can include the text in a verbatim block if you want (like I have done here). Additionally I've added plenty of newlines and spaces to make it readable. This works, and you don't have to care for invalid HTML!

Your Users Write

In any topic, your users can now write things like this:
   * *Brace and parenthesize in K&R style* 
     %FLIP% 
     When setting out a code block, use the K&R style of bracketing.  
     That is, place the opening brace at the end of the construct that controls the block. ... 
     %FLOP%
   * *Separate your control keywords from the following opening bracket* 
     %FLIP% 
     Control structures regulate the dynamic behaviour of a program, so the keywords 
     of control structures are the most critical components of a program. ... 
     %FLOP%

You See

  • Brace and parenthesize in K&R style more... close
    When setting out a code block, use the K&R style of bracketing. That is, place the opening brace at the end of the construct that controls the block. ...
  • Separate your control keywords from the following opening bracket more... close
    Control structures regulate the dynamic behaviour of a program, so the keywords of control structures are the most critical components of a program. ...

All on, all off

You can toggle all Twisties on or off at once by putting a link or button on the page with class twistyExpandAll or twistyCollapseAll.

<button class="twistyExpandAll twikiButton">Expand all</button> 
<button class="twistyCollapseAll twikiButton">Collapse all</button>

Creates these controls:

When you want to use links, write:

#VarTOGGLE

<a href="#TOGGLE" class="twistyExpandAll">Expand all</a> 
<a href="#TOGGLE" class="twistyCollapseAll">Collapse all</a>

Expand all Collapse all

 

Settings

  • Set SHORTDESCRIPTION = Twisty section javascript library to open/close content dynamically
Line: 41 to 152
 
File: Description:
data/TWiki/TwistyContrib.txt  
lib/TWiki/Contrib/TwistyContrib.pm  
Deleted:
<
<
pub/TWiki/TwistyContrib/toggle-optm-jsoff-sep.html  
 
pub/TWiki/TwistyContrib/twist.css  
pub/TWiki/TwistyContrib/twist.js  
Added:
>
>
pub/TWiki/TwistyContrib/twist.compressed.js  
 
  • Optionally, run TwistyContrib_installer to automatically check and install other TWiki modules that this module depends on. You can also do this step manually.
  • Alternatively, manually make sure the dependencies listed in the table below are resolved.
Changed:
<
<
None

Demo & Text

If the contrib is properly installed (and Javascript is enabled in your browser!), then you should see some folding sections below. Look at /twiki/bin/view/TWiki.TwistyContrib?raw=on to see how it's done.


Click on the button above to fold this section.

Expand... Hamlet is without question the most famous play in the English language... Collapse...

Hamlet is without question the most famous play in the English language. Probably written in 1601 or 1602, the tragedy is a milestone in Shakespeare's dramatic development; the playwright achieved artistic maturity in this work through his brilliant depiction of the hero's struggle with two opposing forces: moral integrity and the need to avenge his father's murder.

More... Hide more

>
>
NameVersionDescription
TWiki::Plugins::BehaviourContrib>=1.000Required
 
Deleted:
<
<
For more Shakespeare plays, see Wikipedia:WilliamShakespeare
 

Contrib Info

Changed:
<
<
Authors: Javascript created by TWiki:Main.SamHasler, Contrib packaged by TWiki:Main.RafaelAlvarez
Copyright ©: 2005 Sam Hasler and Rafael Alvarez
>
>
Authors: JavaScript created by TWiki:Main.SamHasler, Contrib packaged by TWiki:Main.RafaelAlvarez
Copyright ©: 2005 Sam Hasler and Rafael Alvarez, 2006 Arthur Clemens
 
License: GPL
Changed:
<
<
Dependencies: None
>
>
Dependencies:
NameVersionDescription
TWiki::Plugins::BehaviourContrib>=1.000Required
25 Oct 2006 1.2 Arthur Clemens - Updated JavaScript to support TwistyPlugin version 1.2
26 Sep 2006 1.010 Arthur Clemens - Complete JavaScript rewrite
 
12 Sep 2005 1.000 First Version
Home: http://TWiki.org/cgi-bin/view/Plugins/TwistyContrib
Feedback: http://TWiki.org/cgi-bin/view/Plugins/TwistyContribDev
Line: 108 to 176
 Related Topics: TWikiPreferences

Changed:
<
<
-- TWiki:Main.SamHasler - 12 Sep 2005
META FILEATTACHMENT attachment="twist.js" attr="" comment="Javscript library" date="1126427179" name="twist.js" path="twist.js" size="3441" stream="twist.js" user="TWikiContributors" version="0"
>
>
META FILEATTACHMENT attachment="twist.js" attr="" comment="!JavaScript library" date="1126427179" name="twist.js" path="twist.js" size="3441" stream="twist.js" user="TWikiContributors" version="0"
 
META FILEATTACHMENT attachment="twist.css" attr="" comment="Style Sheet" date="1126427224" name="twist.css" path="twist.css" size="122" stream="twist.css" user="TWikiContributors" version="0"
Deleted:
<
<
META FILEATTACHMENT attachment="toggle-optm-jsoff-sep.html" attr="" comment="Example of usage" date="1126427282" name="toggle-optm-jsoff-sep.html" path="toggle-optm-jsoff-sep.html" size="1716" stream="toggle-optm-jsoff-sep.html" user="TWikiContributors" version="0"

Revision 4r4 - 22 Feb 2006 - 08:42:37 - TWikiContributor
Revision 3r3 - 22 Feb 2006 - 08:42:37 - TWikiContributor
This site is powered by the TWiki collaboration platform.
All material on this collaboration platform is the property of the contributing authors.
All material marked as authored by Eben Moglen is available under the license terms CC-BY-SA version 4.
Syndicate this site RSSATOM