Little bit late to this discussion, but I am happy to see discussion
about `Mochichit Extensions` here. I too don't like mixing up two
different JS libraries while my preferred library (MK) is capable
enough to do what the others can. I like the jQuery very much for it's
powerful DOM manipulation and traversing functions but it's not good
enough for other generic usages. That's why, I have started making
something similar to jQuery for MochiKit. If you compare both, you
would found that MochiKit.Query tries to implement most of the DOM
traversing & iterating functions using MochiKit whenever possible and
contains little code from jQuery where it can't (that's why, I have
released ME under the GPL/MIT licences. Though, personally I always
prefer FSF approved licenses).

Regards
--
Amit Mendapara


On Oct 27, 2:49 pm, "Per Cederberg" <[EMAIL PROTECTED]> wrote:
> Hi everyone,
>
> Development of MochiKit 1.5 is about to start. But before we open the
> flood-gates, it might be useful to have a look at a summary of all
> proposed API:s. Below you'll find a comprehensive list of all API
> additions that I've found (so far).
>
> # Note 1. I've included everything, regardless of whether the
> author/originator actually suggested them for inclusion into MochiKit
> or not.
>
> # Note 2. In some cases the source code exists and has been tested.
> Not so in others.
>
> # Note 3. Some of these API suggestions might be duplicates of
> something already in MochiKit. Or are perhaps better implemented as
> improvements to existing functions. Some of them might just be common
> usage patterns that either deserve proper documentation or perhaps an
> alias function.
>
> So, in summary, please don't get too agitated about individual entries
> on the list below. Nothing is set in stone and I'm only looking to
> collect statistics, ideas, clarified names, generalizations, random
> thoughts and such. See this as my attempt to collect your thoughts and
> votes about what you want from MochiKit in the future.
>
> I'm holding off a bit on my own analysis. Will post my comments on
> individual suggestions later on.
>
> Cheers,
>
> /Per
>
> Source Notations:
> [trac] Enhancement suggestions in MochiKit Trac, usually without a
> proposed implementation.
>    http://trac.mochikit.com/report/3
> [me] Patches from the MochiKit Extensions project on LaunchPad
>    https://launchpad.net/mochikit-ext
> [mp] Patches from the mochikit-patches project on GitHub.
>    http://github.com/cederberg/mochikit-patches/tree/master
> [other] Random thoughts found elsewhere (don't know where)
>
> MochiKit.Base
>   o rbind -- [trac] binds a function, but adds new args before bound ones
>   o rpartial -- [trac] binds a function, but adds new args before bound ones
>   o extendURL -- [trac] merges name and values into a URL query string
>   o isFalse -- [mp] check for false, with wide interpretation
>   o defaultValue -- [mp] returns first non-undefined value
>   o dict -- [mp] merges keys and values to dictionary object
>   o select -- [mp] copies listed keys (and values) from an object
>   o mask -- [mp] removes listed keys (and values) from an object
>   o functionName -- [mp] returns the name of a function
>   o registerFunctionNames -- [mp] registers function names
>      - should probably be merged into nameFunctions
>   o stackTrace -- [mp] returns current execution stack trace
>   o injectStackTrace -- [mp] injects stack trace for a function
>   o version -- [other] returns an object for browser detection & such
>
> MochiKit.Async
>   o postSimpleXMLHttpRequest -- [trac] uses POST for a simple request
>   o postJSONDoc -- [trac] same as above and also eval:s response data
>   o sendJSONPrequest -- [trac] similar to the above, but different API
>   o loadScript -- [trac] loads a JavaScript file
>
> MochiKit.DateTime
>   o MILLIS_PER_SECOND -- [mp] constant millisecond value
>   o MILLIS_PER_MINUTE -- [mp] constant millisecond value
>   o MILLIS_PER_HOUR -- [mp] constant millisecond value
>   o MILLIS_PER_DAY -- [mp] constant millisecond value
>   o MILLIS_PER_WEEK -- [mp] constant millisecond value
>   o TimePeriod -- [mp] creates a new time period object
>       (with days, hours, minutes, seconds & millis)
>   o toApproxPeriod -- [mp] converts millis to an approximate time period
>
> MochiKit.DOM:
>   o NBSP -- [trac] creates a non-breaking space node
>   o unescapeHTML -- [trac] creates a DOM tree from an HTML string
>   o selectRange -- [trac] selects text in a text box or field
>   o NS.XHTML -- [mp] namespace constant
>   o NS.XLINK -- [mp] namespace constant
>   o NS.SVG -- [mp] namespace constant
>   o NS.XUL -- [mp] namespace constant
>   o NS.HTML -- [mp] namespace constant
>   o isDOM -- [mp] checks if an object looks like a DOM node
>   o isHTML -- [mp] checks if an object looks like an HTML or XHTML DOM node
>   o reprDOM -- [mp] creates debug representation of a DOM node
>   o attributeArray -- [mp] make existing impl. public
>   o childNode -- [mp] returns an immediate child node
>   o createDOMExt -- [mp] creates a DOM node with a namespace
>   o createTextNode -- [mp] creates a DOM text node
>   o createDOMFuncExt -- [mp] returns function for creating DOM nodes
>   o blurAll -- [mp] blurs (unfocuses) a DOM node and all relevant children
>
> MochiKit.Format
>   o truncate -- [mp] returns a right-truncated copy of a string
>   o formatter -- [mp] creates a generic formatter function
>   o format -- [mp] formats the arguments with a formatter pattern
>   o FormatPatternError -- [mp] a format pattern error class
>
> MochiKit.Style
>   o setPositionFixed -- [trac] sets fixed position in cross-browser way
>   o getContainingBlock -- [trac] returns the containing (layout) parent node
>   o getMarginBox -- [trac] returns the margin widths for an HTML DOM node
>   o getBorderBox -- [mp] returns the border widths for an HTML DOM node
>   o getPaddingBox -- [mp] returns the padding widths for an HTML DOM node
>   o getScrollOffset -- [mp] returns the scroll offset for an HTML DOM node
>   o setScrollOffset -- [mp] sets the scroll offset for an HTML DOM node
>   o resetScrollOffset -- [mp] resets the scroll offsets to zero
>   o adjustScrollOffset -- [mp] ensures optimal visibility for a box
>   o registerSizeConstraints -- [mp] registers algebraic constraints for an
>       element width, height and aspect ratio
>   o resizeElements -- [mp] resizes DOM nodes using parent sizes and registered
>       constraints
>
> MochiKit.Signal
>   o connectEventMap -- [trac] connect signals through a declarative map
>
> MochiKit.Visual
>   o slideOnLeft -- [trac] slides an element while moving from right to left
>   o slideOnRight -- [trac] variation of the theme above
>   o slideOffLeft -- [trac] variation of the theme above
>   o slideOffRight -- [trac] variation of the theme above
>   o slidePairLeft -- [trac] variation of the theme above
>   o slidePairRight -- [trac] variation of the theme above
>   o slidePair -- [trac] variation of the theme above
>
> MochiKit.Test -- publish & improve existing module [trac]
>
> MochiKit.Cookie -- new module in [trac]
>   o getCookie -- [trac] retrieves an HTTP cookie value
>   o setCookie -- [trac] sets an HTTP cookie value
>
> MochiKit.Queue, Stack and AsyncQueue -- new modules in [trac]
>   -- these are suggested data structures, should perhaps be placed in
> a Data module or similar.
>
> MochiKit.String -- new module in [me], here only missing MochiKit
> functions are presented
>   o isalnum -- [me] checks if a string contains only alphanumeric characters
>   o isalpha -- [me] checks if a string contains only A-Z characters
>   o isdigit -- [me] checks if a string contains only numeric characters
>   o isupper -- [me] checks if a string contains only upper-case characters
>   o islower -- [me] checks if a string contains only lower-case characters
>   o istitle -- [me] checks if a string is in title-case (is this same
> as camelCase?)
>   o startswith -- [me] checks if a string starts with a substring
>   o endswith -- [me] checks if a string ends with a substring
>   o capitalize -- [me] converts the first character to upper-case and
> the rest to lower-case
>   o swapcase -- [me] swaps the character case for a string
>   o title -- [me] converts a string to title case
>   o center -- [me] centers a string inside the specified width,
> padding with spaces
>   o ljust -- [me] left-justifies a string inside the specified width,
> padding with spaces
>   o rjust -- [me] right-justifies a string inside the specified width,
> padding with spaces
>
> MochiKit.Ajax -- new module in [me], names not exported (so no collisions)
>   o bind -- [me] connects a signal for HTTP responses
>   o unbind -- [me] disconnects a signal for HTTP responses
>   o request -- [me] sends an HTTP request
>   o get -- [me] sends an HTTP GET request
>   o post -- [me] sends an HTTP POST request
>
> MochiKit.Query -- new module in [me]
>   -- I won't document this module here, but it seems (mostly?) API
> compatible with jQuery. It uses MochiKit to implement (part of) that
> API.
>
> MochiKit.SVG -- new module in [mp]
>   o SVG -- [mp] creates an SVG document node
>   o DEFS -- [mp] creates an SVG definitions node
>   o G -- [mp] creates an SVG group node
>   o LINE -- [mp] creates an SVG line node
>   o RECT -- [mp] creates an SVG rectangle node
>   o CIRCLE -- [mp] creates an SVG circle node
>   o PATH -- [mp] creates an SVG path node
>   o TEXT -- [mp] creates an SVG text node
>   o RADIALGRADIENT -- [mp] creates an SVG radial gradient node
>   o STOP -- [mp] creates an SVG gradient stop node
>   o moveToTop -- [mp] moves a node to the top of the SVG drawing order
>   o moveToBottom -- [mp] moves a node to the bottom of the SVG drawing order
>   o rotate -- [mp] adds a rotation transform to an SVG DOM node
>
> MochiKit.Widget -- new module in [mp]
>   o isWidget -- [mp] checks if an object is a widget
>   o isFormField -- [mp] checks if an object is a form field
>   o createWidget -- [mp] creates a new widget
>   o createWidgetTree -- [mp] creates a tree of DOM nodes and widgets
>   o destroyWidget -- [mp] destroys a widget or a DOM node
>   o Widget -- [mp] prototype widget object, not used directly
>   o Button -- [mp] creates a new button widget
>   o Dialog -- [mp] creates a new dialog widget
>   o Field -- [mp] creates a new field widget
>   o Form -- [mp] creates a new form widget
>   o FormValidator -- [mp] creates a new form validator widget
>   o Icon -- [mp] creates a new icon widget
>   o Overlay -- [mp] creates a new overlay widget
>   o Pane -- [mp] creates a new pane widget
>   o Popup -- [mp] creates a new popup widget
>   o ProgressBar -- [mp] creates a new progress bar widget
>   o TabContainer -- [mp] creates a new tab container widget
>   o Table -- [mp] creates a new data table widget
>   o TableColumn -- [mp] creates a new data table column widget
>   o TextArea -- [mp] creates a new text area (or text box) widget
>   o TextField -- [mp] creates a new text field widget
>   o Tree -- [mp] creates a new tree widget
>   o TreeNode -- [mp] creates a new tree node widget.
>   o Wizard -- [mp] creates a new wizard widget
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"MochiKit" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/mochikit?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to