Welcome to TiddlyWiki created by Jeremy Ruston, Copyright © 2007 UnaMesa Association
<!--{{{-->
<link rel='alternate' type='application/rss+xml' title='RSS' href='index.xml' />
<!--}}}-->
Background: #fff
Foreground: #000
PrimaryPale: #8cf
PrimaryLight: #18f
PrimaryMid: #04b
PrimaryDark: #014
SecondaryPale: #ffc
SecondaryLight: #fe8
SecondaryMid: #db4
SecondaryDark: #841
TertiaryPale: #eee
TertiaryLight: #ccc
TertiaryMid: #999
TertiaryDark: #666
Error: #f88
/*{{{*/
body {background:[[ColorPalette::Background]]; color:[[ColorPalette::Foreground]];}
a {color:[[ColorPalette::PrimaryMid]];}
a:hover {background-color:[[ColorPalette::PrimaryMid]]; color:[[ColorPalette::Background]];}
a img {border:0;}
h1,h2,h3,h4,h5,h6 {color:[[ColorPalette::SecondaryDark]]; background:transparent;}
h1 {border-bottom:2px solid [[ColorPalette::TertiaryLight]];}
h2,h3 {border-bottom:1px solid [[ColorPalette::TertiaryLight]];}
.button {color:[[ColorPalette::PrimaryDark]]; border:1px solid [[ColorPalette::Background]];}
.button:hover {color:[[ColorPalette::PrimaryDark]]; background:[[ColorPalette::SecondaryLight]]; border-color:[[ColorPalette::SecondaryMid]];}
.button:active {color:[[ColorPalette::Background]]; background:[[ColorPalette::SecondaryMid]]; border:1px solid [[ColorPalette::SecondaryDark]];}
.header {background:[[ColorPalette::PrimaryMid]];}
.headerShadow {color:[[ColorPalette::Foreground]];}
.headerShadow a {font-weight:normal; color:[[ColorPalette::Foreground]];}
.headerForeground {color:[[ColorPalette::Background]];}
.headerForeground a {font-weight:normal; color:[[ColorPalette::PrimaryPale]];}
.tabSelected{color:[[ColorPalette::PrimaryDark]];
background:[[ColorPalette::TertiaryPale]];
border-left:1px solid [[ColorPalette::TertiaryLight]];
border-top:1px solid [[ColorPalette::TertiaryLight]];
border-right:1px solid [[ColorPalette::TertiaryLight]];
}
.tabUnselected {color:[[ColorPalette::Background]]; background:[[ColorPalette::TertiaryMid]];}
.tabContents {color:[[ColorPalette::PrimaryDark]]; background:[[ColorPalette::TertiaryPale]]; border:1px solid [[ColorPalette::TertiaryLight]];}
.tabContents .button {border:0;}
#sidebar {}
#sidebarOptions input {border:1px solid [[ColorPalette::PrimaryMid]];}
#sidebarOptions .sliderPanel {background:[[ColorPalette::PrimaryPale]];}
#sidebarOptions .sliderPanel a {border:none;color:[[ColorPalette::PrimaryMid]];}
#sidebarOptions .sliderPanel a:hover {color:[[ColorPalette::Background]]; background:[[ColorPalette::PrimaryMid]];}
#sidebarOptions .sliderPanel a:active {color:[[ColorPalette::PrimaryMid]]; background:[[ColorPalette::Background]];}
.wizard {background:[[ColorPalette::PrimaryPale]]; border:1px solid [[ColorPalette::PrimaryMid]];}
.wizard h1 {color:[[ColorPalette::PrimaryDark]]; border:none;}
.wizard h2 {color:[[ColorPalette::Foreground]]; border:none;}
.wizardStep {background:[[ColorPalette::Background]]; color:[[ColorPalette::Foreground]];
border:1px solid [[ColorPalette::PrimaryMid]];}
.wizardStep.wizardStepDone {background:[[ColorPalette::TertiaryLight]];}
.wizardFooter {background:[[ColorPalette::PrimaryPale]];}
.wizardFooter .status {background:[[ColorPalette::PrimaryDark]]; color:[[ColorPalette::Background]];}
.wizard .button {color:[[ColorPalette::Foreground]]; background:[[ColorPalette::SecondaryLight]]; border: 1px solid;
border-color:[[ColorPalette::SecondaryPale]] [[ColorPalette::SecondaryDark]] [[ColorPalette::SecondaryDark]] [[ColorPalette::SecondaryPale]];}
.wizard .button:hover {color:[[ColorPalette::Foreground]]; background:[[ColorPalette::Background]];}
.wizard .button:active {color:[[ColorPalette::Background]]; background:[[ColorPalette::Foreground]]; border: 1px solid;
border-color:[[ColorPalette::PrimaryDark]] [[ColorPalette::PrimaryPale]] [[ColorPalette::PrimaryPale]] [[ColorPalette::PrimaryDark]];}
.wizard .notChanged {background:transparent;}
.wizard .changedLocally {background:#80ff80;}
.wizard .changedServer {background:#8080ff;}
.wizard .changedBoth {background:#ff8080;}
.wizard .notFound {background:#ffff80;}
.wizard .putToServer {background:#ff80ff;}
.wizard .gotFromServer {background:#80ffff;}
#messageArea {border:1px solid [[ColorPalette::SecondaryMid]]; background:[[ColorPalette::SecondaryLight]]; color:[[ColorPalette::Foreground]];}
#messageArea .button {color:[[ColorPalette::PrimaryMid]]; background:[[ColorPalette::SecondaryPale]]; border:none;}
.popupTiddler {background:[[ColorPalette::TertiaryPale]]; border:2px solid [[ColorPalette::TertiaryMid]];}
.popup {background:[[ColorPalette::TertiaryPale]]; color:[[ColorPalette::TertiaryDark]]; border-left:1px solid [[ColorPalette::TertiaryMid]]; border-top:1px solid [[ColorPalette::TertiaryMid]]; border-right:2px solid [[ColorPalette::TertiaryDark]]; border-bottom:2px solid [[ColorPalette::TertiaryDark]];}
.popup hr {color:[[ColorPalette::PrimaryDark]]; background:[[ColorPalette::PrimaryDark]]; border-bottom:1px;}
.popup li.disabled {color:[[ColorPalette::TertiaryMid]];}
.popup li a, .popup li a:visited {color:[[ColorPalette::Foreground]]; border: none;}
.popup li a:hover {background:[[ColorPalette::SecondaryLight]]; color:[[ColorPalette::Foreground]]; border: none;}
.popup li a:active {background:[[ColorPalette::SecondaryPale]]; color:[[ColorPalette::Foreground]]; border: none;}
.popupHighlight {background:[[ColorPalette::Background]]; color:[[ColorPalette::Foreground]];}
.listBreak div {border-bottom:1px solid [[ColorPalette::TertiaryDark]];}
.tiddler .defaultCommand {font-weight:bold;}
.shadow .title {color:[[ColorPalette::TertiaryDark]];}
.title {color:[[ColorPalette::SecondaryDark]];}
.subtitle {color:[[ColorPalette::TertiaryDark]];}
.toolbar {color:[[ColorPalette::PrimaryMid]];}
.toolbar a {color:[[ColorPalette::TertiaryLight]];}
.selected .toolbar a {color:[[ColorPalette::TertiaryMid]];}
.selected .toolbar a:hover {color:[[ColorPalette::Foreground]];}
.tagging, .tagged {border:1px solid [[ColorPalette::TertiaryPale]]; background-color:[[ColorPalette::TertiaryPale]];}
.selected .tagging, .selected .tagged {background-color:[[ColorPalette::TertiaryLight]]; border:1px solid [[ColorPalette::TertiaryMid]];}
.tagging .listTitle, .tagged .listTitle {color:[[ColorPalette::PrimaryDark]];}
.tagging .button, .tagged .button {border:none;}
.footer {color:[[ColorPalette::TertiaryLight]];}
.selected .footer {color:[[ColorPalette::TertiaryMid]];}
.sparkline {background:[[ColorPalette::PrimaryPale]]; border:0;}
.sparktick {background:[[ColorPalette::PrimaryDark]];}
.error, .errorButton {color:[[ColorPalette::Foreground]]; background:[[ColorPalette::Error]];}
.warning {color:[[ColorPalette::Foreground]]; background:[[ColorPalette::SecondaryPale]];}
.lowlight {background:[[ColorPalette::TertiaryLight]];}
.zoomer {background:none; color:[[ColorPalette::TertiaryMid]]; border:3px solid [[ColorPalette::TertiaryMid]];}
.imageLink, #displayArea .imageLink {background:transparent;}
.annotation {background:[[ColorPalette::SecondaryLight]]; color:[[ColorPalette::Foreground]]; border:2px solid [[ColorPalette::SecondaryMid]];}
.viewer .listTitle {list-style-type:none; margin-left:-2em;}
.viewer .button {border:1px solid [[ColorPalette::SecondaryMid]];}
.viewer blockquote {border-left:3px solid [[ColorPalette::TertiaryDark]];}
.viewer table, table.twtable {border:2px solid [[ColorPalette::TertiaryDark]];}
.viewer th, .viewer thead td, .twtable th, .twtable thead td {background:[[ColorPalette::SecondaryMid]]; border:1px solid [[ColorPalette::TertiaryDark]]; color:[[ColorPalette::Background]];}
.viewer td, .viewer tr, .twtable td, .twtable tr {border:1px solid [[ColorPalette::TertiaryDark]];}
.viewer pre {border:1px solid [[ColorPalette::SecondaryLight]]; background:[[ColorPalette::SecondaryPale]];}
.viewer code {color:[[ColorPalette::SecondaryDark]];}
.viewer hr {border:0; border-top:dashed 1px [[ColorPalette::TertiaryDark]]; color:[[ColorPalette::TertiaryDark]];}
.highlight, .marked {background:[[ColorPalette::SecondaryLight]];}
.editor input {border:1px solid [[ColorPalette::PrimaryMid]];}
.editor textarea {border:1px solid [[ColorPalette::PrimaryMid]]; width:100%;}
.editorFooter {color:[[ColorPalette::TertiaryMid]];}
#backstageArea {background:[[ColorPalette::Foreground]]; color:[[ColorPalette::TertiaryMid]];}
#backstageArea a {background:[[ColorPalette::Foreground]]; color:[[ColorPalette::Background]]; border:none;}
#backstageArea a:hover {background:[[ColorPalette::SecondaryLight]]; color:[[ColorPalette::Foreground]]; }
#backstageArea a.backstageSelTab {background:[[ColorPalette::Background]]; color:[[ColorPalette::Foreground]];}
#backstageButton a {background:none; color:[[ColorPalette::Background]]; border:none;}
#backstageButton a:hover {background:[[ColorPalette::Foreground]]; color:[[ColorPalette::Background]]; border:none;}
#backstagePanel {background:[[ColorPalette::Background]]; border-color: [[ColorPalette::Background]] [[ColorPalette::TertiaryDark]] [[ColorPalette::TertiaryDark]] [[ColorPalette::TertiaryDark]];}
.backstagePanelFooter .button {border:none; color:[[ColorPalette::Background]];}
.backstagePanelFooter .button:hover {color:[[ColorPalette::Foreground]];}
#backstageCloak {background:[[ColorPalette::Foreground]]; opacity:0.6; filter:'alpha(opacity=60)';}
/*}}}*/
/*{{{*/
* html .tiddler {height:1%;}
body {font-size:.75em; font-family:arial,helvetica; margin:0; padding:0;}
h1,h2,h3,h4,h5,h6 {font-weight:bold; text-decoration:none;}
h1,h2,h3 {padding-bottom:1px; margin-top:1.2em;margin-bottom:0.3em;}
h4,h5,h6 {margin-top:1em;}
h1 {font-size:1.35em;}
h2 {font-size:1.25em;}
h3 {font-size:1.1em;}
h4 {font-size:1em;}
h5 {font-size:.9em;}
hr {height:1px;}
a {text-decoration:none;}
dt {font-weight:bold;}
ol {list-style-type:decimal;}
ol ol {list-style-type:lower-alpha;}
ol ol ol {list-style-type:lower-roman;}
ol ol ol ol {list-style-type:decimal;}
ol ol ol ol ol {list-style-type:lower-alpha;}
ol ol ol ol ol ol {list-style-type:lower-roman;}
ol ol ol ol ol ol ol {list-style-type:decimal;}
.txtOptionInput {width:11em;}
#contentWrapper .chkOptionInput {border:0;}
.externalLink {text-decoration:underline;}
.indent {margin-left:3em;}
.outdent {margin-left:3em; text-indent:-3em;}
code.escaped {white-space:nowrap;}
.tiddlyLinkExisting {font-weight:bold;}
.tiddlyLinkNonExisting {font-style:italic;}
/* the 'a' is required for IE, otherwise it renders the whole tiddler in bold */
a.tiddlyLinkNonExisting.shadow {font-weight:bold;}
#mainMenu .tiddlyLinkExisting,
#mainMenu .tiddlyLinkNonExisting,
#sidebarTabs .tiddlyLinkNonExisting {font-weight:normal; font-style:normal;}
#sidebarTabs .tiddlyLinkExisting {font-weight:bold; font-style:normal;}
.header {position:relative;}
.header a:hover {background:transparent;}
.headerShadow {position:relative; padding:4.5em 0 1em 1em; left:-1px; top:-1px;}
.headerForeground {position:absolute; padding:4.5em 0 1em 1em; left:0px; top:0px;}
.siteTitle {font-size:3em;}
.siteSubtitle {font-size:1.2em;}
#mainMenu {position:absolute; left:0; width:10em; text-align:right; line-height:1.6em; padding:1.5em 0.5em 0.5em 0.5em; font-size:1.1em;}
#sidebar {position:absolute; right:3px; width:16em; font-size:.9em;}
#sidebarOptions {padding-top:0.3em;}
#sidebarOptions a {margin:0 0.2em; padding:0.2em 0.3em; display:block;}
#sidebarOptions input {margin:0.4em 0.5em;}
#sidebarOptions .sliderPanel {margin-left:1em; padding:0.5em; font-size:.85em;}
#sidebarOptions .sliderPanel a {font-weight:bold; display:inline; padding:0;}
#sidebarOptions .sliderPanel input {margin:0 0 0.3em 0;}
#sidebarTabs .tabContents {width:15em; overflow:hidden;}
.wizard {padding:0.1em 1em 0 2em;}
.wizard h1 {font-size:2em; font-weight:bold; background:none; padding:0; margin:0.4em 0 0.2em;}
.wizard h2 {font-size:1.2em; font-weight:bold; background:none; padding:0; margin:0.4em 0 0.2em;}
.wizardStep {padding:1em 1em 1em 1em;}
.wizard .button {margin:0.5em 0 0; font-size:1.2em;}
.wizardFooter {padding:0.8em 0.4em 0.8em 0;}
.wizardFooter .status {padding:0 0.4em; margin-left:1em;}
.wizard .button {padding:0.1em 0.2em;}
#messageArea {position:fixed; top:2em; right:0; margin:0.5em; padding:0.5em; z-index:2000; _position:absolute;}
.messageToolbar {display:block; text-align:right; padding:0.2em;}
#messageArea a {text-decoration:underline;}
.tiddlerPopupButton {padding:0.2em;}
.popupTiddler {position: absolute; z-index:300; padding:1em; margin:0;}
.popup {position:absolute; z-index:300; font-size:.9em; padding:0; list-style:none; margin:0;}
.popup .popupMessage {padding:0.4em;}
.popup hr {display:block; height:1px; width:auto; padding:0; margin:0.2em 0;}
.popup li.disabled {padding:0.4em;}
.popup li a {display:block; padding:0.4em; font-weight:normal; cursor:pointer;}
.listBreak {font-size:1px; line-height:1px;}
.listBreak div {margin:2px 0;}
.tabset {padding:1em 0 0 0.5em;}
.tab {margin:0 0 0 0.25em; padding:2px;}
.tabContents {padding:0.5em;}
.tabContents ul, .tabContents ol {margin:0; padding:0;}
.txtMainTab .tabContents li {list-style:none;}
.tabContents li.listLink { margin-left:.75em;}
#contentWrapper {display:block;}
#splashScreen {display:none;}
#displayArea {margin:1em 17em 0 14em;}
.toolbar {text-align:right; font-size:.9em;}
.tiddler {padding:1em 1em 0;}
.missing .viewer,.missing .title {font-style:italic;}
.title {font-size:1.6em; font-weight:bold;}
.missing .subtitle {display:none;}
.subtitle {font-size:1.1em;}
.tiddler .button {padding:0.2em 0.4em;}
.tagging {margin:0.5em 0.5em 0.5em 0; float:left; display:none;}
.isTag .tagging {display:block;}
.tagged {margin:0.5em; float:right;}
.tagging, .tagged {font-size:0.9em; padding:0.25em;}
.tagging ul, .tagged ul {list-style:none; margin:0.25em; padding:0;}
.tagClear {clear:both;}
.footer {font-size:.9em;}
.footer li {display:inline;}
.annotation {padding:0.5em; margin:0.5em;}
* html .viewer pre {width:99%; padding:0 0 1em 0;}
.viewer {line-height:1.4em; padding-top:0.5em;}
.viewer .button {margin:0 0.25em; padding:0 0.25em;}
.viewer blockquote {line-height:1.5em; padding-left:0.8em;margin-left:2.5em;}
.viewer ul, .viewer ol {margin-left:0.5em; padding-left:1.5em;}
.viewer table, table.twtable {border-collapse:collapse; margin:0.8em 1.0em;}
.viewer th, .viewer td, .viewer tr,.viewer caption,.twtable th, .twtable td, .twtable tr,.twtable caption {padding:3px;}
table.listView {font-size:0.85em; margin:0.8em 1.0em;}
table.listView th, table.listView td, table.listView tr {padding:0px 3px 0px 3px;}
.viewer pre {padding:0.5em; margin-left:0.5em; font-size:1.2em; line-height:1.4em; overflow:auto;}
.viewer code {font-size:1.2em; line-height:1.4em;}
.editor {font-size:1.1em;}
.editor input, .editor textarea {display:block; width:100%; font:inherit;}
.editorFooter {padding:0.25em 0; font-size:.9em;}
.editorFooter .button {padding-top:0px; padding-bottom:0px;}
.fieldsetFix {border:0; padding:0; margin:1px 0px;}
.sparkline {line-height:1em;}
.sparktick {outline:0;}
.zoomer {font-size:1.1em; position:absolute; overflow:hidden;}
.zoomer div {padding:1em;}
* html #backstage {width:99%;}
* html #backstageArea {width:99%;}
#backstageArea {display:none; position:relative; overflow: hidden; z-index:150; padding:0.3em 0.5em;}
#backstageToolbar {position:relative;}
#backstageArea a {font-weight:bold; margin-left:0.5em; padding:0.3em 0.5em;}
#backstageButton {display:none; position:absolute; z-index:175; top:0; right:0;}
#backstageButton a {padding:0.1em 0.4em; margin:0.1em;}
#backstage {position:relative; width:100%; z-index:50;}
#backstagePanel {display:none; z-index:100; position:absolute; width:90%; margin-left:3em; padding:1em;}
.backstagePanelFooter {padding-top:0.2em; float:right;}
.backstagePanelFooter a {padding:0.2em 0.4em;}
#backstageCloak {display:none; z-index:20; position:absolute; width:100%; height:100px;}
.whenBackstage {display:none;}
.backstageVisible .whenBackstage {display:block;}
/*}}}*/
/***
StyleSheet for use when a translation requires any css style changes.
This StyleSheet can be used directly by languages such as Chinese, Japanese and Korean which need larger font sizes.
***/
/*{{{*/
body {font-size:0.8em;}
#sidebarOptions {font-size:1.05em;}
#sidebarOptions a {font-style:normal;}
#sidebarOptions .sliderPanel {font-size:0.95em;}
.subtitle {font-size:0.8em;}
.viewer table.listView {font-size:0.95em;}
/*}}}*/
/*{{{*/
@media print {
#mainMenu, #sidebar, #messageArea, .toolbar, #backstageButton, #backstageArea {display: none !important;}
#displayArea {margin: 1em 1em 0em;}
noscript {display:none;} /* Fixes a feature in Firefox 1.5.0.2 where print preview displays the noscript content */
}
/*}}}*/
<!--{{{-->
<div class='header' macro='gradient vert [[ColorPalette::PrimaryLight]] [[ColorPalette::PrimaryMid]]'>
<div class='headerShadow'>
<span class='siteTitle' refresh='content' tiddler='SiteTitle'></span>
<span class='siteSubtitle' refresh='content' tiddler='SiteSubtitle'></span>
</div>
<div class='headerForeground'>
<span class='siteTitle' refresh='content' tiddler='SiteTitle'></span>
<span class='siteSubtitle' refresh='content' tiddler='SiteSubtitle'></span>
</div>
</div>
<div id='mainMenu' refresh='content' tiddler='MainMenu'></div>
<div id='sidebar'>
<div id='sidebarOptions' refresh='content' tiddler='SideBarOptions'></div>
<div id='sidebarTabs' refresh='content' force='true' tiddler='SideBarTabs'></div>
</div>
<div id='displayArea'>
<div id='messageArea'></div>
<div id='tiddlerDisplay'></div>
</div>
<!--}}}-->
<!--{{{-->
<div class='toolbar' macro='toolbar [[ToolbarCommands::ViewToolbar]]'></div>
<div class='title' macro='view title'></div>
<div class='subtitle'><span macro='view modifier link'></span>, <span macro='view modified date'></span> (<span macro='message views.wikified.createdPrompt'></span> <span macro='view created date'></span>)</div>
<div class='tagging' macro='tagging'></div>
<div class='tagged' macro='tags'></div>
<div class='viewer' macro='view text wikified'></div>
<div class='tagClear'></div>
<!--}}}-->
<!--{{{-->
<div class='toolbar' macro='toolbar [[ToolbarCommands::EditToolbar]]'></div>
<div class='title' macro='view title'></div>
<div class='editor' macro='edit title'></div>
<div macro='annotations'></div>
<div class='editor' macro='edit text'></div>
<div class='editor' macro='edit tags'></div><div class='editorFooter'><span macro='message views.editor.tagPrompt'></span><span macro='tagChooser excludeLists'></span></div>
<!--}}}-->
To get started with this blank [[TiddlyWiki]], you'll need to modify the following tiddlers:
* [[SiteTitle]] & [[SiteSubtitle]]: The title and subtitle of the site, as shown above (after saving, they will also appear in the browser title bar)
* [[MainMenu]]: The menu (usually on the left)
* [[DefaultTiddlers]]: Contains the names of the tiddlers that you want to appear when the TiddlyWiki is opened
You'll also need to enter your username for signing your edits: <<option txtUserName>>
These [[InterfaceOptions]] for customising [[TiddlyWiki]] are saved in your browser
Your username for signing your edits. Write it as a [[WikiWord]] (eg [[JoeBloggs]])
<<option txtUserName>>
<<option chkSaveBackups>> [[SaveBackups]]
<<option chkAutoSave>> [[AutoSave]]
<<option chkRegExpSearch>> [[RegExpSearch]]
<<option chkCaseSensitiveSearch>> [[CaseSensitiveSearch]]
<<option chkAnimate>> [[EnableAnimations]]
----
Also see [[AdvancedOptions]]
<html><a class="button" href="#" onclick="story.displayTiddlers(null,['NewSlide'])" >New Slide</a></html>
|''PageTemplate''|##PageTemplate|
|''StyleSheet''|##StyleSheet|
!PageTemplate
<!--{{{-->
<div id='header'>
<p class='siteTitle' refresh='content' tiddler='SiteTitle'></p>
<div class="modeSwitch" refresh='content' tiddler='ModeSwitch'></div>
</div>
<div id='messageArea'></div>
<div id='author'>
<div id="mainNav">
<div id='authorButtons' refresh='content' tiddler='AuthorButtons'></div>
<div id='mainMenu' refresh='content' force='true' tiddler='MainMenuWrapper'></div>
</div>
<div id="displayContainer">
<div id='displayArea'>
<div id='tiddlerDisplay'></div>
</div>
<div id='sidebar'>
<div id='sidebarOptions' refresh='content' tiddler='SideBarOptions'></div>
<div id='sidebarTabs' refresh='content' force='true' tiddler='SideBarTabs'></div>
</div>
</div>
</div>
<div id='footer'></div>
<!--}}}-->
!StyleSheet
[[StyleSheet]]
/*{{{*/
#contentWrapper {
width: 100%;
max-width: 100%;
}
#author {
width: 100em;
margin: 0 auto;
text-align: left;
}
#mainNav {
width: 18em;
max-width: 20%;
float: left;
margin: 1em 0;
}
#displayContainer {
float: right;
width: 75em;
margin: 0;
}
#tiddlerDisplay {
display: inline-block;
margin: 0;
padding: 0;
}
#displayArea {
width: 50em;
display: inline;
margin: 0;
padding: 0;
}
#sidebar {
width: 18em;
margin: 0;
right: 0;
top: 0;
float: left;
margin: 0;
padding: 0;
margin: 0;
position: static;
float: right;
/* IE6 hack */
_position: absolute;
_top: 8em;
}
#footer {
clear: both;
}
#sidebarTabs .tabContents {
margin: 0 auto;
text-align: left;
}
#sidebarOptions {
padding-top:1em;
}
#sidebarOptions a {
margin:0;
padding:0;
display: inline;
}
#sidebarOptions input {
margin:0.4em 0.5em;
}
#sidebarTabs .tabContents {
width: 15em;
overflow: hidden;
color: [[ColorPalette::SecondaryMid]];
border: 2px solid [[ColorPalette::PrimaryPale]];
background-color: [[ColorPalette::Background]];
margin: 0;
}
#sidebar .tabUnselected {
background-color: [[ColorPalette::SecondaryMid]];
color: [[ColorPalette::Background]];
margin: 0;
}
#sidebar .tiddlyLinkExisting {
color: [[ColorPalette::SecondaryMid]];
margin: 0;
}
#authorButtons {
height: 3.5em;
padding: 0 auto;
}
#sidebar a.button,
#authorButtons a.button {
text-align: center;
font-size: 1.2em;
}
/* ie6.0 hack */
div#tiddlerDisplay div.viewSlide {
_height: 475px;
}
/*}}}*/
/***
|''Name:''|BackstageTiddlersPlugin|
|''Description:''|Adds a backstage panel allowing easy access to all tiddlers|
|''Author:''|JeremyRuston|
|''Source:''|http://www.osmosoft.com/#BackstageTiddlersPlugin |
|''CodeRepository:''|http://svn.tiddlywiki.org/Trunk/contributors/JeremyRuston/plugins/BackstageTiddlersPlugin.js |
|''Version:''|0.0.1|
|''Date:''|Feb 28, 2008|
|''Comments:''|Please make comments at http://groups.google.co.uk/group/TiddlyWikiDev |
|''License:''|[[BSD License|http://www.opensource.org/licenses/bsd-license.php]] |
|''~CoreVersion:''|2.3|
***/
//{{{
if(!version.extensions.BackstageTiddlersPlugin) {
version.extensions.BackstageTiddlersPlugin = {installed:true};
config.tasks.tiddlers = {
text: "tiddlers",
tooltip: "Access the raw tiddlers",
content: "<<tabs txtMainTab 'Timeline' 'Timeline' TabTimeline 'All' 'All tiddlers' TabAll 'Tags' 'All tags' TabTags 'More' 'More lists' TabMore>>"};
config.backstageTasks.push("tiddlers");
} //# end of 'install only once'
//}}}
[[View East|http://www.flickr.com/photos/psd/72440450/]] is a photograph taken by [[Paul Downey|http://blog.whatfettle.com]] of the [[Buncefield Fire|http://en.wikipedia.org/wiki/Buncefield_fire]] from [[Berkhamsted|http://en.wikipedia.org/wiki/Berkhamsted]] on the 11th December 2005.
Bespin
JSBin
JSFiddle
... TiddlyWiki
Background: #fff
Foreground: #000
PrimaryPale: #e8e8e8
PrimaryLight: #747474
PrimaryMid: #333
PrimaryDark: #111
SecondaryPale: #f8f8f8
SecondaryLight: #dddddd
SecondaryMid: #5B6D6E
SecondaryDark: #000
TertiaryPale: #e8e8e8
TertiaryLight: #dddddd
TertiaryMid: #404040
TertiaryDark: #000
Error: #faa
SelectedPale: #dafaff
SelectedLight: #459BF9
SelectedDark: #07f
TiddlySlidyLight: #50a0fc
TiddlySlidyMid: #2d00ff
TiddlySlidyDark: #0069dd
<<knob "|◄" "story.firstTiddler()" "First slide">><<knob "◄" "story.prevTiddler()" "Previous slide">><<knob "▣" "story.switchTheme('AuthorMode');" "Author mode">><<knob "►" "story.nextTiddler()" "Next slide">><<knob "►|" "story.lastTiddler()" "Last slide">><<currentPosition "MainMenu" "SlideSorter">><<progressBar MainMenu>><<knob "F" "#fullscreen" "Full screen" "fullscreen">>
/*{{{*/
.controls {
font-size: 1.2em;
color: [[ColorPalette::PrimaryMid]];
background-color: [[ColorPalette::PrimaryPale]];
border: 2px solid [[ColorPalette::SecondaryLight]];
width: 600px;
height: 2em;
margin: 0 auto 1em auto;
padding: 1em;
font-family: Helvetica Neue, Arial, Helvetica, sans-serif;
text-align: center;
-moz-border-radius: 8px;
-webkit-border-radius: 8px;
border-radius: 8px;
}
.knob {
float: left;
margin: 0;
border: 2px solid [[ColorPalette::PrimaryPale]];
background-color: [[ColorPalette::PrimaryPale]];
font-family: Helvetica, Arial, sans-serif;
font-size: 1em;
font-weight: normal;
width: 1.5em;
height: 1.5em;
line-height: 1.5em;
text-align: center;
-moz-border-radius: 1px;
-webkit-border-radius: 1px;
border-radius: 1px;
}
.contents {
width: 6em;
text-align: center;
}
.controls a:hover div,
.controls a:hover div div,
.controls .contents a:hover {
text-decoration: none;
color: [[ColorPalette::Foreground]];
background-color: [[ColorPalette::Background]];
}
.controls a:active div,
.controls a:active div div,
.controls .contents a:active {
color: [[ColorPalette::Background]];
}
.controls *:focus {
outline: none;
}
.controls .fullscreen a:hover div,
.controls .fullscreen a:active div {
text-decoration: none;
background-color: [[ColorPalette::PrimaryMid]];
border: 2px solid [[ColorPalette::PrimaryMid]];
}
.controls .fullscreen a:hover div div,
.controls .fullscreen a:active div div {
-webkit-box-shadow: none;
-moz-box-shadow: none;
box-shadow: none;
}
.knob div {
font-weight: bolder;
-webkit-border-radius: 1em;
-moz-border-radius: 1em;
border-radius: 1em;
color: [[ColorPalette::Background]];
background-color: [[ColorPalette::PrimaryMid]];
-webkit-box-shadow: 2px 2px 3px rgba(135, 139, 144, 0.4);
-moz-box-shadow: 2px 2px 3px rgba(135, 139, 144, 0.4);
box-shadow: 2px 2px 3px rgba(135, 139, 144, 0.4);
}
.squeeze {
letter-spacing: -3px;
}
.fullscreen {
float: right;
background-color: [[ColorPalette::PrimaryPale]];
margin-top: -0.2em;
}
.fullscreen div {
border: 2px solid [[ColorPalette::PrimaryMid]];
background-color: [[ColorPalette::PrimaryPale]];
width: 1em;
height: 1em;
-moz-border-radius: 2px;
-webkit-border-radius: 2px;
border-radius: 2px;
}
.fullscreen div div {
text-indent: -300px;
overflow: hidden;
background-color: [[ColorPalette::PrimaryMid]];
border: 2px solid [[ColorPalette::PrimaryMid]];
margin-top: -2px;
margin-left: -2px;
display: block;
float: left;
width: 50%;
height: 50%;
}
.progressBar {
margin-top: 0.4em;
}
.progressBar ul {
list-style-type: none;
word-spacing: 0px;
display: inline;
padding: 0px;
}
.progressBar li {
display: inline;
cursor: pointer;
}
.progressBar a {
display: block;
margin: 2px;
float: left;
border: 2px solid [[ColorPalette::PrimaryMid]];
line-height: 5px;
min-width: 5px;
width: 5px;
background-color: [[ColorPalette::PrimaryPale]];
color: [[ColorPalette::Foreground]];
padding: 0;
-webkit-border-radius: 1em;
-moz-border-radius: 1em;
-border-radius: 1em;
-webkit-box-shadow: 2px 2px 3px rgba(135, 139, 144, 0.4);
-moz-box-shadow: 2px 2px 3px rgba(135, 139, 144, 0.4);
box-shadow: 2px 2px 3px rgba(135, 139, 144, 0.4);
}
.progressBar .selected {
background-color: [[ColorPalette::PrimaryMid]];
color: [[ColorPalette::PrimaryMid]];
border-color: [[ColorPalette::PrimaryMid]];
}
/*
* tooltip balloon
*/
#balloonHook {
display: none;
position: relative;
z-index: 100;
opacity: 0.9;
}
#balloonHook .balloon {
position: absolute;
z-index: 101;
margin: 1em auto;
background-color: [[ColorPalette::PrimaryPale]];
font-family: Constantia,Palatino,"Palatino Linotype","Palatino LT STD","Times New Roman",serif;
width: 15em;
left: -7.25em;
bottom: 0.2em;
display: block;
opacity: 0.95;
}
#balloonHook .balloon > div {
background-color: [[ColorPalette::PrimaryMid]];
}
#balloonHook .balloon .content {
color: [[ColorPalette::Background]];
background-color: [[ColorPalette::PrimaryMid]];
line-height: 1em;
padding: 1em;
text-align:center;
-moz-border-radius: 1em;
-webkit-border-radius: 1em;
}
#balloonHook .balloon .pointer {
height: 0.5em;
}
#balloonHook .balloon .pointer span {
background-color: [[ColorPalette::PrimaryPale]];
width: 49.5%;
height: 100%;
}
#balloonHook .balloon .pointer .left {
-moz-border-radius-topright: 1em;
-webkit-border-top-right-radius: 1em;
float: left;
}
#balloonHook .balloon .pointer .right {
-moz-border-radius-topleft: 1em;
-webkit-border-top-left-radius: 1em;
float: right;
}
.contents {
float: left;
font-size: 0.8em;
padding: 0.4em 1em 0;
font-weight: lighter;
}
.contents a {
padding: 0.3em 1em;
}
.contents > a.tiddlyLink,
.contents > a.tiddlyLink:hover {
padding: 1em 0 0.5em 0;
}
.contents .spacer {
padding-left: 0.3em;
}
#contents .balloon {
bottom: 0.6em;
left: -4.5em;
}
#contentsBalloon,
#contentsBalloon a.tiddlyLink {
background-color: [[ColorPalette::PrimaryMid]];
color: [[ColorPalette::Background]];
font-size: 1.1em;
}
#contentsBalloon a.tiddlyLink:hover {
color: [[ColorPalette::PrimaryMid]];
background-color: [[ColorPalette::Background]];
}
#contentsBalloon ul {
list-style: none;
text-align: left;
padding-left: 0;
margin-left: 0;
line-height: 1.8em;
}
#contentsBalloon li {
list-style: none;
}
/*}}}*/
/***
|''Name:''|CurrentPositionPlugin|
|''Description:''| Display current position n/n in a list of tiddlers |
|''Author:''|PaulDowney (psd (at) osmosoft (dot) com) |
|''Source:''|http://whatfettle.com/2008/07/CurrentPositionPlugin/ |
|''CodeRepository:''|http://svn.tiddlywiki.org/Trunk/contributors/PaulDowney/plugins/CurrentPositionPlugin/ |
|''Version:''|0.1|
|''License:''|[[BSD License|http://www.opensource.org/licenses/bsd-license.php]] |
|''Comments:''|Please make comments at http://groups.google.co.uk/group/TiddlyWikiDev |
|''~CoreVersion:''|2.4|
!!Documentation
Developed for TiddlySlidy, this Macro to displays the position of the current slide (the most recently displayed tiddler) in a list of tiddlyLinks in the form n/n.
<<currentPosition>>
!!Code
***/
//{{{
/*jslint onevar: false nomen: false plusplus: false */
/*global config onClickTiddlerLink store wikify */
(function ($) {
version.extensions.CurrentPositionPlugin = {installed: true};
config.macros.currentPosition = {};
var macro = config.macros.currentPosition;
macro.handler = function (place, macroName, params) {
var list = params[0] || "MainMenu";
var tiddlylink = params[1] || list;
var listtext = store.fetchTiddler(list).text;
var text = listtext.replace(/\**\s*\[\[/g, "");
text = text.replace(/\]\]\s*$/, "");
var items = text.split(/\]\]\s*/);
var total = items.length;
var first = $('#tiddlerDisplay .tiddler').attr('tiddler');
var current = items.indexOf(first) + 1;
$('<div id="contents" class="contents">' +
'<a class="tiddlyLink" href="javascript:;" tiddlyLink="' + tiddlylink + '">' +
'<span class="current">' + current + '</span>' +
'<span class="spacer">/</span>' +
'<span class="total">' + total + '</span>' +
'</a></div>'
).appendTo(place);
$(place).find('a.tiddlyLink')
.click(onClickTiddlerLink)
.each(function () {
if (config.macros.progressBar) {
var e = $('<span id="contentsBalloon"></span>')[0];
wikify(listtext, e, null, store.getTiddler(list));
config.macros.progressBar.popup(this, e);
$(e).find('a').attr('title', '');
}
});
};
})(jQuery);
//}}}
/***
|''Name:''|DefaultTiddlerListPlugin|
|''Description:''|DefaultTiddlers taken from a list of tiddler references |
|''Author:''|PaulDowney (psd (at) osmosoft (dot) com) |
|''Source:''|http://whatfettle.com/2008/07/DefaultTiddlerListPlugin/ |
|''CodeRepository:''|http://svn.tiddlywiki.org/Trunk/contributors/PaulDowney/plugins/DefaultTiddlerListPlugin/ |
|''Version:''|0.1|
|''License:''|[[BSD License|http://www.opensource.org/licenses/bsd-license.php]] |
|''Comments:''|Please make comments at http://groups.google.co.uk/group/TiddlyWikiDev |
|''~CoreVersion:''|2.4|
!!Documentation
This plugin constructs the default tiddlers from the MainMenu or other tiddler containing a list of tiddler references.
!!Code
***/
//{{{
/*jslint onevar: false nomen: false plusplus: false */
/*global config */
(function ($) {
version.extensions.DefaultTiddlerListPlugin = {installed: true};
config.extensions.DefaultTiddlersListPlugin = {
list: 'MainMenu',
max: 1,
filter: function(list, max) {
var list = store.getTiddlerText("MainMenu");
list = list.replace(/^[^\[]*\[\[/, "[[");
list = list.replace(/\]\][^\[]*(\[\[|$)/g, "]]$1");
return store.filterTiddlers(list).slice(0,max);
}
};
var macro = config.extensions.DefaultTiddlersListPlugin;
Story.prototype.displayDefaultTiddlers = function()
{
this.displayTiddlers(null, macro.filter(macro.list, macro.max));
};
})(jQuery);
//}}}
http://12days.osmosoft.com/#Forum
<html>
<object width="400" height="300"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=9978872&server=vimeo.com&show_title=1&show_byline=1&show_portrait=0&color=&fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=9978872&server=vimeo.com&show_title=1&show_byline=1&show_portrait=0&color=&fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="400" height="300"></embed></object><p></p>
</html>
/***
|''Name:''|DisableWikiLinksPlugin|
|''Description:''|Allows you to disable TiddlyWiki's automatic linking of WikiWords|
|''Author:''|Martin Budden (mjbudden (at) gmail (dot) com)|
|''Source:''|http://www.martinswiki.com/#DisableWikiLinksPlugin |
|''CodeRepository:''|http://svn.tiddlywiki.org/Trunk/contributors/MartinBudden/plugins/DisableWikiLinksPlugin.js |
|''Version:''|0.1.3|
|''Date:''|Aug 5, 2006|
|''Comments:''|Please make comments at http://groups.google.co.uk/group/TiddlyWikiDev |
|''License:''|[[Creative Commons Attribution-ShareAlike 2.5 License|http://creativecommons.org/licenses/by-sa/2.5/]] |
|''~CoreVersion:''|2.1.0|
|''Disable WikiLinks''|<<option chkDisableWikiLinks>>|
***/
//{{{
// Ensure that the DisableWikiLinksPlugin is only installed once.
if(!version.extensions.DisableWikiLinksPlugin) {
version.extensions.DisableWikiLinksPlugin = {installed:true};
if(version.major < 2 || (version.major == 2 && version.minor < 1))
{alertAndThrow('DisableWikiLinksPlugin requires TiddlyWiki 2.1 or newer.');}
if (config.options.chkDisableWikiLinks==undefined)
{config.options.chkDisableWikiLinks = false;}
Tiddler.prototype.autoLinkWikiWords = function()
{
if(config.options.chkDisableWikiLinks==true)
{return false;}
return !this.isTagged('systemConfig') && !this.isTagged('excludeMissing');
};
} // end of 'install only once'
//}}}
<!--{{{-->
<div class='title' macro='view title'></div>
<div class='editor' macro='edit title'></div><div macro='annotations'></div>
<div class="label">Master</div><div class="master editor" macro="edit theme"></div>
<div macro='message views.editor.tagPrompt'></div>
<div class='editor' macro='edit tags'></div>
<div class='editor' macro='edit text'></div>
[[EditToolbar]]
<!--}}}-->
<div class='toolbar' macro='toolbar -cancelTiddler deleteTiddler +saveTiddler'></div>
Can also embed audio, video, font faces, etc.
http://softwareas.com/offline-sound-no-flash-no-file
/***
|''Name:''|FadingMessagesPlugin|
|''Description:''|Automatically clear a displayed message after an interval |
|''Author:''|PaulDowney (psd (at) osmosoft (dot) com) |
|''Source:''|http://whatfettle.com/2008/07/FadingMessagesPlugin/ |
|''CodeRepository:''|http://svn.tiddlywiki.org/Trunk/contributors/PaulDowney/plugins/FadingMessagesPlugin/ |
|''Version:''|0.2|
|''License:''|[[BSD License|http://www.opensource.org/licenses/bsd-license.php]] |
|''Comments:''|Please make comments at http://groups.google.co.uk/group/TiddlyWikiDev |
|''~CoreVersion:''|2.4|
|''Overrides:''|displayMessage|
|''Requires:''|WikifiedMessagesPlugin|
!!Documentation
Displayed messages automatically fade away after a short interval.
!!Options
|<<option txtFadingMessagesTimeout>>|<<message config.optionsDesc.txtFadingMessagesTimeout>>|
|<<option chkAnimate>>|<<message config.optionsDesc.chkAnimate>>|
!!Code
***/
//{{{
if(!version.extensions.FadingMessagesPlugin) {
version.extensions.FadingMessagesPlugin = {installed:true};
config.options.txtFadingMessagesTimeout = 5;
config.optionsDesc.txtFadingMessagesTimeout = "seconds before a displayed message clears itself";
config.animDurationFade = 900;
config.extensions.FadingMessages = {
Fader: function(e,done)
{
e.style.overflow = 'hidden';
e.style.display = 'block';
var p = [];
p.push({style: 'display', atEnd: 'none'});
p.push({style: 'opacity', start: 1, end: 0, template: '%0'});
p.push({style: 'filter', start: 100, end: 0, template: 'alpha(opacity:%0)'});
return new Morpher(e,config.animDurationFade,p,done);
},
clearMessageBox: function(e)
{
try { removeNode(e); } catch(ex) {}
var msgArea = document.getElementById("messageArea");
var n = msgArea.getElementsByTagName('div');
if(!(n&&n.length)){
msgArea.style.display = "none";
}
},
fadeMessageBox: function(e)
{
var me = config.extensions.FadingMessages;
if(config.options.chkAnimate && anim){
anim.startAnimating(new me.Fader(e,me.clearMessageBox));
}else{
me.clearMessageBox(e);
}
},
createClearAllButton: function(e)
{
return null;
},
createClearMessageButton: function(e)
{
var me = config.extensions.FadingMessages;
return createTiddlyButton(createTiddlyElement(e,"span",null,"messageClear"),
"×","",
function(){me.clearMessageBox(e);});
},
_displayMessage: displayMessage,
displayMessage: function(text,linkText)
{
var me = config.extensions.FadingMessages;
var e = me._displayMessage(text,linkText);
if(e){
window.setTimeout(function(){me.fadeMessageBox(e);},config.options.txtFadingMessagesTimeout*1000);
}
return e;
}
};
displayMessage = config.extensions.FadingMessages.displayMessage;
config.extensions.WikifiedMessages.createClearMessageButton = config.extensions.FadingMessages.createClearMessageButton;
config.extensions.WikifiedMessages.createClearAllButton = config.extensions.FadingMessages.createClearAllButton;
}
//}}}
{{{
var fso = new ActiveXObject("Scripting.FileSystemObject");
var file = fso.OpenTextFile(filePath,2,-1,0);
file.Write(content);
file.Close();
}}}
{{{
if(document.applets["TiddlySaver"])
return document.applets["TiddlySaver"]
.saveFile
(javaUrlToFilename(filePath),"UTF-8",content);
}}}
{{{
var s = new java.io.PrintStream
(new java.io.FileOutputStream(javaUrlToFilename(filePath)));
s.print(content);
s.close();
}}}
{{{
netscape.security.PrivilegeManager.enablePrivilege
("UniversalXPConnect");
var file = Components.classes
["@mozilla.org/file/local;1"]
.createInstance(Components.interfaces.nsILocalFile);
...
var out = Components.classes
["@mozilla.org/network/file-output-stream;1"]
.createInstance(Components.interfaces.nsIFileOutputStream);
out.init(file,0x20|0x02,00004,null);
out.write(content,content.length);
out.flush();
out.close();
}}}
Type the text for 'File Access [Mozilla'
http://www.tiddlywiki.com/firstversion.html
<<<
This FirstVersion of TiddlyWiki doesn't handle saving at all elegantly. Click the 'Save all' link at the top right for more details.
|''ViewTemplate''|##ViewTemplate|
|''EditTemplate''|##EditTemplate|
|''StyleSheet''|##StyleSheet|
!ViewTemplate
<!--{{{-->
<h2 class="preview">Preview Four Images: <span macro="view title"></span></h2>
<div class='viewSlide'>
<div class='fourImagesSlide'>
<div class='title viewer' macro='view title wikified'></div>
<div class='subtitle viewer' macro='view subtitle wikified'></div>
<div class='boxes'>
<div class='box'>
<div class='caption viewer' macro='view caption wikified'></div>
<div class='image viewer' macro="imagezoom @image"></div>
</div>
<div class='box'>
<div class='caption viewer' macro='view caption2 wikified'></div>
<div class='image viewer' macro="imagezoom @image2"></div>
</div>
<div class='box'>
<div class='caption viewer' macro='view caption3 wikified'></div>
<div class='image viewer' macro="imagezoom @image3"></div>
</div>
<div class='box'>
<div class='caption viewer' macro='view caption4 wikified'></div>
<div class='image viewer' macro="imagezoom @image4"></div>
</div>
</div>
</div>
</div>
[[ViewToolbar]]
<!--}}}-->
!EditTemplate
<!--{{{-->
<h2>Edit Four Images Slide: <span macro="view title"></span></h2>
<div class='editSlide fourImagesSlideEdit'>
<div class="label">Title</div><div class="title editor" macro="edit title"></div>
<div class="label">Subtitle</div><div class="subtitle editor" macro="edit subtitle"></div>
<div class="label">Caption</div><div class="subtitle editor" macro="edit caption"></div>
<div class="label">Image</div><div class="subtitle editor" macro="edit image"></div>
<div class="label">Caption</div><div class="subtitle editor" macro="edit caption2"></div>
<div class="label">Image</div><div class="subtitle editor" macro="edit image2"></div>
<div class="label">Caption</div><div class="subtitle editor" macro="edit caption3"></div>
<div class="label">Image</div><div class="subtitle editor" macro="edit image3"></div>
<div class="label">Caption</div><div class="subtitle editor" macro="edit caption4"></div>
<div class="label">Image</div><div class="subtitle editor" macro="edit image4"></div>
</div>
[[EditToolbar]]
<!--}}}-->
!StyleSheet
/*{{{*/
.fourImagesSlide {
font-size: 2em;
text-align: left;
background-color: #e8e8e8;
height: 100%;
min-height: 400px;
}
.fourImagesSlide .title {
color: #747474;
font-weight: normal;
letter-spacing: 0;
padding-left: 0.5em;
}
.fourImagesSlide .subtitle {
color: #747474;
font-weight: normal;
font-size: 0.8em;
padding-left: 1em;
}
.fourImagesSlide .boxes {
padding-left: 2em;
}
.fourImagesSlide .box {
margin: 2px;
height: auto;
width: 22%;
float: left;
padding: 1em 0;
text-align: center;
}
.fourImagesSlide .caption {
text-align: center;
font-size: 0.6em;
}
.fourImagesSlide .image img {
border: 1px solid #fff;
padding: 0;
margin: 0;
width: 90%;
height: auto;
}
/*}}}*/
Single Page Application (SPA)
Single Page Application/Database (SPAD)
Single Page Application Development Environment (SPADE)
[[Frosty Figs|http://www.flickr.com/photos/psd/64465147/]] is a photograph taken by [[Paul Downey|http://blog.whatfettle.com]] in [[Berkhamsted|http://en.wikipedia.org/wiki/Berkhamsted]].
|''PageTemplate''|##PageTemplate|
|''StyleSheet''|##StyleSheet|
!PageTemplate
<!--{{{-->
<div id='messageArea'></div>
<div id='presentation'>
<div id='slide'>
<div id='tiddlerDisplay'>display</div>
</div>
</div>
<div id='footer'>
<div class="controls" refresh='content' tiddler='ControlPanel'></div>
</div>
<!--}}}-->
!StyleSheet
[[StyleSheet]]
/*{{{*/
#messageArea {
display: none;
}
a#backstageShow {
color: [[ColorPalette::SecondaryPale]];
}
#presentation .tiddler,
#presentation .viewSlide {
overflow: scroll;
}
/*}}}*/
/*{{{*/
#messageArea {
border:none;
background: transparent;
}
#messageArea .messageBox {
border:2px solid [[ColorPalette::SecondaryMid]];
color:[[ColorPalette::Foreground]];
background:[[ColorPalette::SecondaryLight]];
width:20em;
padding:10px;
margin-top:0px;
margin-bottom:5px;
-moz-border-radius:5px;
-webkit-border-radius:5px;
filter:alpha(opacity=80);
}
#messageArea .messageText {
display:block;
width:15em;
margin:0;
padding:0;
}
#messageArea .messageClear {
display:block;
float:right;
width:1em;
}
#messageArea .messageClear a {
text-decoration:none;
background-color: transparent;
color:[[ColorPalette::Foreground]];
}
/*}}}*/
jQuery plugin:
http://jquery.tiddlywiki.org/twFile.html
http://softwareas.com/svg-and-vml-in-one-chameleon-file
http://project.mahemoff.com/vector/ellipse.xhtml
1. Receive SVG from Ajax call
2. ???
3. SVG diagram is displayed
{{{
var svgObject = document.createElement('object');
svgObject.setAttribute('type',
'image/svg+xml');
svgObject.setAttribute('data',
'data:image/svg+xml,'+ svgCode);
$("#reportSVGDiv").append(svgObject);
}}}
Unique namespacing http://gist.github.com/362627
e.g. http://tiddlywiki.mahemoff.com/html5.html
1. Build HTML document
2. ???
3. HTML is rendered in iFrame
http://softwareas.com/design-pattern-script-islands
cf Google's performance optimisation
{{{
<script>
/*
alert("this is my script - it's eval'd on demand");
*/
</script>
}}}
http://tiddlywiki.com/#Examples
http://tiddlywiki.com/#filter:[tag[community]]
The Law of Unintended Consequences
Firefox Extension → Core code
/***
|''Name:''|ImageMacroPlugin|
|''Description:''| macro to create an image using a tiddler field |
|''Author:''|PaulDowney (psd (at) osmosoft (dot) com) |
|''Source:''|http://whatfettle.com/2008/07/ImageMacroPlugin/ |
|''CodeRepository:''|http://svn.tiddlywiki.org/Trunk/contributors/PaulDowney/plugins/ImageMacroPlugin/ |
|''Version:''|0.1|
|''License:''|[[BSD License|http://www.opensource.org/licenses/bsd-license.php]] |
|''Comments:''|Please make comments at http://groups.google.co.uk/group/TiddlyWikiDev |
|''~CoreVersion:''|2.4|
!!Documentation
This macro was created to assist including images in a tiddler view template, where the source
of an image is defined by a tiddler field:
<<image "http://tiddlywiki.com/fractalveg.jpg">>
<<image "http://tiddlywiki.com/fractalveg.jpg">>
<<image "@image">>
<<image @image>>
!!Code
***/
//{{{
/*jslint onevar: false nomen: false plusplus: false */
/*global config */
if (!version.extensions.ImageMacroPlugin) {
version.extensions.ImageMacroPlugin = {installed: true};
config.macros.image = {};
config.macros.image.handler = function(place, macroName, params, wikifier, paramString,tiddler) {
var value = params[0].match(/^@/) ? store.getValue(tiddler, params[0].substring(1))
: value = params[0];
var e = createTiddlyElement(place, 'img', null, null);
e.setAttribute('src', value);
}
}
//}}}
/***
|''Name:''|ImageZoomMacroPlugin|
|''Description:''| macro to create a zoomable image using a tiddler field |
|''Author:''|PaulDowney (psd (at) osmosoft (dot) com) |
|''Source:''|http://whatfettle.com/2008/07/ImageZoomMacroPlugin/ |
|''CodeRepository:''|http://svn.tiddlywiki.org/Trunk/contributors/PaulDowney/plugins/ImageZoomMacroPlugin/ |
|''Version:''|0.1|
|''License:''|[[BSD License|http://www.opensource.org/licenses/bsd-license.php]] |
|''Comments:''|Please make comments at http://groups.google.co.uk/group/TiddlyWikiDev |
|''~CoreVersion:''|2.4|
!!Documentation
This macro was created to assist including images in a tiddler view template, where the source
of an image is defined by a tiddler field:
<<imagezoom "http://tiddlywiki.com/fractalveg.jpg">>
<<imagezoom "http://farm1.static.flickr.com/33/65468830_ef7d984ba2_o.jpg">>
<<imagezoom "@image">>
<<imagezoom @image>>
Clicking on the image creates a display containing the full sized image.
Both the image and the fullframe version may be styled using CSS.
!!Code
***/
//{{{
/*jslint onevar: false nomen: false plusplus: false */
/*global config jQuery store window */
(function ($) {
version.extensions.ImageZoomMacroPlugin = {installed: true};
config.macros.imagezoom = {};
config.macros.imagezoom.color = '#000';
config.macros.imagezoom.handler = function (place, macroName, params, wikifier, paramString, tiddler) {
var src = params[0].match(/^@/) ? store.getValue(tiddler, params[0].substring(1))
: params[0];
if (!src) {
return;
}
$(place).append($("<img>")
.attr("src", src)
.css('cursor', 'pointer')
.click(function () {
$('body').append("<div id='fullframe'><img src='" + this.src + "'></div>");
$('#contentWrapper').hide();
$('#fullframe img')
.css('display', 'block')
.css('margin', 'auto');
$('#fullframe')
.click(function () {
$(this).remove();
$('#contentWrapper').show();
})
.css('position', 'absolute')
.css('z-index', '999')
.css('top', '0')
.css('left', '0')
.css('width', '100%')
.css('height', Math.max($('#fullframe img').height(), $(window).height()))
.css('background-color', config.macros.imagezoom.color);
}));
};
})(jQuery);
//}}}
http://project.mahemoff.com/josh/
<!--
// Javascript goes here
window.onload = function() {
// blah blah
}
/*
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
HTML goes here
</html>
<!--
*/
-->