more links, add ParasiticalInheritance, make text selectable

This commit is contained in:
j 2012-04-19 20:33:27 +02:00
parent 9c2a3cc729
commit 0e45ec0e05
3 changed files with 27 additions and 4 deletions

View file

@ -443,7 +443,7 @@ Ox.load(function() {
page: function(page, replace) {
var $element = Ox.Container();
$('<div>')
.addClass('Ox____Serif page')
.addClass('Ox____Serif OxSelectable page')
.html(app.html[page].replace(app.re.version[0], app.re.version[1]))
.appendTo($element);
return $element;
@ -474,7 +474,7 @@ Ox.load(function() {
},
readme: function() {
var $list = Ox.Container().css({overflowY: 'scroll'}),
$text = Ox.Container().addClass('OxSerif text'),
$text = Ox.Container().addClass('OxSerif OxSelectable text'),
self = {},
that = Ox.SplitPanel({
elements: [

View file

@ -0,0 +1,23 @@
<h1>Parasitical Inheritance</h1>
<p>This will be a text about Parasitical Inheritance</p>
<p><pre class="code">
Ox.IconList = function(options, self) {
self = self || {};
var that = Ox.Element({}, self)
.defaults({
...
pageLength: 100,
selected: [],
size: 128,
sort: [],
...
})
.options(options || {});
...
return that;
}</pre>
</p>

View file

@ -4,9 +4,9 @@
<p><b>OxJS</b> (pronounced oh-ex-jay-ess) is a new JavaScript library. It was originially developed as part of <a href="http://pan.do/ra">pan.do/ra</a>, and is currently awaiting its first proper release. While it still has bugs, holes, design errors and lots of cruft, some parts of it may already be useful for a more general audience.</p>
<p>The core of <b>OxJS</b> is <code>Ox.js</code>, a general-purpose utility library (think underscore.js, but quite different). It provides <a href="#">lots</a> <a href="#">of</a> <a href="#">tools</a> <a href="#">for</a> <a href="#">dealing</a> <a href="#">with</a> <a href="#doc/Ox.formatDate">dates</a>, <a href="#doc/Ox.asinh">has</a> <a href="#doc/Ox.deg">all</a> <a href="#doc/Ox.log">the</a> <a href="#doc/Ox.mod">missing</a> <a href="#doc/Ox.rad">Math</a> <a href="#doc/Ox.sinh">functions</a> (<a href="#">plus</a> <a href="#">some</a> <a href="#">for</a> <a href="#">geographic</a> <a href="#">coordinates</a>), methods like <a href="#doc/Ox.range">range</a> or <a href="#doc/Ox.sub">sub</a> for those who like Python (and even <a href="#doc/Ox.forEach">some</a> <a href="#doc/Ox.loop">options</a> for those who never want to write a <code>for</code> loop again), can <a href="#doc/Ox.tokenize">tokenize</a> and <a href="#doc/Ox.minify">minify</a> JavaScript, comes with its own <a href="#doc/Ox.doc">documentation format</a>, including <a href="#doc/Ox.test">inline tests</a>, and can do about <a href="#readme/23_cool_things_you_can_do_with_oxjs">23 other cool things</a>.</p>
<p>The core of <b>OxJS</b> is <code>Ox.js</code>, a general-purpose utility library (think underscore.js, but quite different). It provides <a href="#doc/Ox.isLeapYear">lots</a> <a href="#doc/Ox.parseDate">of</a> <a href="#doc/Ox.getFirstDayOfTheYear">tools</a> <a href="#doc/Ox.getDaysInMonth">for</a> <a href="#doc/Ox.getTimezoneOffset">dealing</a> <a href="#doc/Ox.getDaysInYear">with</a> <a href="#doc/Ox.formatDate">dates</a>, <a href="#doc/Ox.asinh">has</a> <a href="#doc/Ox.deg">all</a> <a href="#doc/Ox.log">the</a> <a href="#doc/Ox.mod">missing</a> <a href="#doc/Ox.rad">Math</a> <a href="#doc/Ox.sinh">functions</a> (<a href="#doc/Ox.getArea">plus</a> <a href="#doc/Ox.getDistance">some</a> <a href="#doc/Ox.joinAreas">for</a> <a href="#doc/Ox.getXYByLatLng">geographic</a> <a href="#doc/getDegreesPerMeter">coordinates</a>), methods like <a href="#doc/Ox.range">range</a> or <a href="#doc/Ox.sub">sub</a> for those who like Python (and even <a href="#doc/Ox.forEach">some</a> <a href="#doc/Ox.loop">options</a> for those who never want to write a <code>for</code> loop again), can <a href="#doc/Ox.tokenize">tokenize</a> and <a href="#doc/Ox.minify">minify</a> JavaScript, comes with its own <a href="#doc/Ox.doc">documentation format</a>, including <a href="#doc/Ox.test">inline tests</a>, and can do about <a href="#readme/23_cool_things_you_can_do_with_oxjs">23 other cool things</a>.</p>
<p>Then there are modules, most notably <code>Ox.UI</code>, a user interface library for HTML5-compliant browsers (think YUI, but again rather different). <code>Ox.UI</code> has tons of widgets: <a href="#">all</a> <a href="#">the</a> <a href="#">form</a> <a href="#">elements</a> <a href="#">you</a> <a href="#">ever</a> <a href="#">wanted</a>, resizable <a href="#doc/Ox.SplitPanel">panels</a> and <a href="#doc/Ox.Dialog">dialogs</a>, <a href="#doc/Ox.MainMenu">menus</a> that actually work, <a href="#doc/Ox.IconList">lists</a> and <a href="#doc/Ox.TextList">tables</a> that can hold a million items, <a href="#doc/Ox.Map">maps</a> and <a href="#doc/Ox.Calendar">calendars</a> done right, and a great <a href="#doc/Ox.VideoPlayer">video player</a>. All these widgets are designed to that you can focus on your application and argue less with the DOM. And if you need to, <a href="#doc/Ox.Element">each of them</a> provides, by virtue of <a href="#">parasitical inheritance</a>, the exact same API as a <a href="#doc/Ox.JQueryElement">jQuery DOM object</a>. But <code>Ox.UI</code> also provides a framework to bring these elements together, including <a href="#">custom</a> <a href="#">events</a>, <a href="#examples/keyboard">keyboard</a> <a href="#examples/focus">focus</a>, remote <a href="#doc/Ox.API">API</a> discovery and client-side <a href="#doc/Ox.URL">URL</a> handling. It is ideal for real applications with back-ends that speak JSON and don't serve any HTML beyond <code>&lt;body&gt;&lt;/body&gt;</code>.</p>
<p>Then there are modules, most notably <code>Ox.UI</code>, a user interface library for HTML5-compliant browsers (think YUI, but again rather different). <code>Ox.UI</code> has tons of widgets: <a href="#doc/Ox.Input">all</a> <a href="#doc/Ox.DateTimeInput">the</a> <a href="#doc/Ox.PlacePicker">form</a> <a href="#doc/Ox.TimeInput">elements</a> <a href="#doc/Ox.Range">you</a> <a href="#doc/Ox.ColorPicker">ever</a> <a href="#doc/Ox.CheckboxGroup">wanted</a>, resizable <a href="#doc/Ox.SplitPanel">panels</a> and <a href="#doc/Ox.Dialog">dialogs</a>, <a href="#doc/Ox.MainMenu">menus</a> that actually work, <a href="#doc/Ox.IconList">lists</a> and <a href="#doc/Ox.TextList">tables</a> that can hold a million items, <a href="#doc/Ox.Map">maps</a> and <a href="#doc/Ox.Calendar">calendars</a> done right, and a great <a href="#doc/Ox.VideoPlayer">video player</a>. All these widgets are designed to that you can focus on your application and argue less with the DOM. And if you need to, <a href="#doc/Ox.Element">each of them</a> provides, by virtue of <a href="#readme/ParasiticalInheritance">parasitical inheritance</a>, the exact same API as a <a href="#doc/Ox.JQueryElement">jQuery DOM object</a>. But <code>Ox.UI</code> also provides a framework to bring these elements together, including <a href="#doc/Ox.Event">custom</a> <a href="#doc/Ox.Event">events</a>, <a href="#doc/Ox.Keyboard">keyboard</a> <a href="#doc/Ox.Focus">focus</a>, remote <a href="#doc/Ox.API">API</a> discovery and client-side <a href="#doc/Ox.URL">URL</a> handling. It is ideal for real applications with back-ends that speak JSON and don't serve any HTML beyond <code>&lt;body&gt;&lt;/body&gt;</code>.</p>
<p>Among the other modules, <code>Ox.Unicode</code> helps with sorting, <code>Ox.Image</code> can do steganography, and <code>Ox.Geo</code> is great if you're dealing with geographical data (or want to use a really nice set of flag icons).</p>