X-Git-Url: http://git.indexdata.com/?p=mkws-moved-to-github.git;a=blobdiff_plain;f=doc%2Fmkws-manual.markdown;h=e16fc72000041e92093f24a8fe1497dacf49dc47;hp=79ae4d4b5913d62dcf64d9d94a5f657efcdc2702;hb=1738ea09590749a3aaab760ae96504bc1fb8206a;hpb=9ffc2065df69d0252bb711565425e5b18c1e9a49 diff --git a/doc/mkws-manual.markdown b/doc/mkws-manual.markdown index 79ae4d4..e16fc72 100644 --- a/doc/mkws-manual.markdown +++ b/doc/mkws-manual.markdown @@ -1,6 +1,6 @@ % The MKWS manual: embedded metasearching with the MasterKey Widget Set % Mike Taylor -% October 2014 +% November 2014 Introduction @@ -41,7 +41,7 @@ flexibility against convenience: [Drupal](https://www.drupal.org/) sites. -All of these approaches require programming to a greater or lesser +All but the last of these approaches require programming to a greater or lesser extent. Against this backdrop, we introduced [MKWS (the MasterKey Widget Set)](http://mkws.indexdata.com/) -- a set of simple, very high-level HTML+CSS+JavaScript @@ -51,24 +51,24 @@ MKWS classes in any HTML page, the various components of an application can be embedded: search-boxes, results areas, target information, etc. -Simple Example +Simple example ============== The following is [a complete MKWS-based searching application](//example.indexdata.com/simple.html): - - - - MKWS demo client - - - - - -
- - + + + + MKWS demo client + + + + + +
+ + Go ahead, try it! Simply put the above in a file (e.g index.html), drop it into a folder accessible with an ordinary web-server (e.g @@ -99,8 +99,17 @@ and provide the components of the searching UI. The very simple application above has only two such widgets: a search box and a results area. But more are supported. -Widget Elements -=============== +Defining widget elements +======================== + +Widget type +----------- + +An HTML element is made an MKWS widget by including an MKWS +class-name. These names begin `mkws-`: what follows that prefix +specifies the type of the widget. The type can be any sequence of +alphanumeric characters and hyphens _except_ something beginning +`team` -- see below. The main widgets are: @@ -119,10 +128,10 @@ The main widgets are: * `mkws-switch` -- provides links to switch between a view of the result records and of the targets that provide them. Only - meaningful when `mkwsTargets` is also provided. + meaningful when `mkws-targets` is also provided. * `mkws-targets` -- the area where per-target information will appear - when selected by the link in the `mkwsSwitch` area. Of interest + when selected by the link in the `mkws-switch` area. Of interest mostly for fault diagnosis rather than for end-users. * `mkws-lang` -- provides links to switch between one of several @@ -132,80 +141,127 @@ The main widgets are: To see all of these working together, just put them all into the HTML `` like so: -
-
-
- -
-
-
+
+
+
+ +
+
+
The full set of supported widgets is described in the -reference guide below. +reference guide +[below](#widgets). + +Widget team +----------- -Old and new-style class-names ------------------------------ +In general a set of widgets work together in a team: in the example +above, the search-term that the user enters in the `mkws-search` +widget is used to generate the set of records that are displayed in +the `mkws-results` widget. -**NOTE.** Versions of MKWS before v1.0 used camel-case class-names: -without hyphens and with second and subsequent words capitalised. So -instead of `mkws-search`, it used to be `mkwsSearch`. The 1.x series -of MKWS versions also recognise these old-style class-names as a -facility for backwards compatibility. However, these **old class-names -are deprecated, and support will be removed in v2.0**. Existing -applications that use them should be upgraded to the new-style class -names as soon as convenient. +Sometimes, it's desirable to have multiple teams in a single page. A +widget can be placed in a named team by giving it (in addition to its +main class) a class that begins with `mkws-team-`: what follows that +prefix specifies the team that the widget is part of. For example, +`