lazarus/components/fpweb
2011-10-03 22:14:26 +00:00
..
demo fcl-web: clean up: examples are now in fpc sources 2011-07-26 16:20:31 +00:00
images Add a shebang line to fpweb/images/make_img_list.sh 2011-08-11 16:35:27 +00:00
languages Translations: Brazilian Portuguese translation update by Marcelo B Paula, bug #19586 2011-06-19 12:25:10 +00:00
fpideexteditorinsertfilenameunit.lfm Components: first batch of TButtonPanel captions cleanup 2011-10-03 22:14:26 +00:00
fpideexteditorinsertfilenameunit.pas * Upgraded to version 0.5 2010-09-12 11:02:12 +00:00
fpweb_images.inc * New PRE tag support from Aleksey Lagunov 2010-09-15 06:59:22 +00:00
fpwebfieldsettagunit.lfm Components: first batch of TButtonPanel captions cleanup 2011-10-03 22:14:26 +00:00
fpwebfieldsettagunit.pas * Upgraded to version 0.5 2010-09-12 11:02:12 +00:00
fpwebhrefeditunit.lfm Components: first batch of TButtonPanel captions cleanup 2011-10-03 22:14:26 +00:00
fpwebhrefeditunit.pas * Fix from Alexei in HREF tag dialog 2010-09-22 18:32:15 +00:00
fpwebhtmltaglegendunit.lfm Components: first batch of TButtonPanel captions cleanup 2011-10-03 22:14:26 +00:00
fpwebhtmltaglegendunit.pas * Upgraded to version 0.5 2010-09-12 11:02:12 +00:00
fpwebnewhtmlfileunit.lfm Components: first batch of TButtonPanel captions cleanup 2011-10-03 22:14:26 +00:00
fpwebnewhtmlfileunit.pas * Upgraded to version 0.5 2010-09-12 11:02:12 +00:00
fpwebnewhtmlformunit.lfm Components: first batch of TButtonPanel captions cleanup 2011-10-03 22:14:26 +00:00
fpwebnewhtmlformunit.pas * Upgraded to version 0.5 2010-09-12 11:02:12 +00:00
fpwebnewhtmlimgunit.lfm Components: first batch of TButtonPanel captions cleanup 2011-10-03 22:14:26 +00:00
fpwebnewhtmlimgunit.pas * Upgraded to version 0.5 2010-09-12 11:02:12 +00:00
fpwebnewhtmlinputunit.lfm Components: first batch of TButtonPanel captions cleanup 2011-10-03 22:14:26 +00:00
fpwebnewhtmlinputunit.pas * Upgraded to version 0.5 2010-09-12 11:02:12 +00:00
fpwebnewhtmllistunit.lfm Components: first batch of TButtonPanel captions cleanup 2011-10-03 22:14:26 +00:00
fpwebnewhtmllistunit.pas * Upgraded to version 0.5 2010-09-12 11:02:12 +00:00
fpwebnewhtmltableunit.lfm Components: first batch of TButtonPanel captions cleanup 2011-10-03 22:14:26 +00:00
fpwebnewhtmltableunit.pas * Upgraded to version 0.5 2010-09-12 11:02:12 +00:00
fpwebnewhtmltagpreunit.lfm Components: first batch of TButtonPanel captions cleanup 2011-10-03 22:14:26 +00:00
fpwebnewhtmltagpreunit.pas * New PRE tag support from Aleksey Lagunov 2010-09-15 06:59:22 +00:00
fpwebnewhtmltagtdunit.lfm Components: first batch of TButtonPanel captions cleanup 2011-10-03 22:14:26 +00:00
fpwebnewhtmltagtdunit.pas Components, FpWeb: improved strings, regenerated translations and updated Russian translation 2010-09-24 14:06:28 +00:00
fpwebnewhtmltagtrunit.lfm Components: first batch of TButtonPanel captions cleanup 2011-10-03 22:14:26 +00:00
fpwebnewhtmltagtrunit.pas Components, FpWeb: improved strings, regenerated translations and updated Russian translation 2010-09-24 14:06:28 +00:00
fpwebselectoptionsunit.lfm Components: first batch of TButtonPanel captions cleanup 2011-10-03 22:14:26 +00:00
fpwebselectoptionsunit.pas * Upgraded to version 0.5 2010-09-12 11:02:12 +00:00
fpwebselecttagunit.lfm Components: first batch of TButtonPanel captions cleanup 2011-10-03 22:14:26 +00:00
fpwebselecttagunit.pas * Upgraded to version 0.5 2010-09-12 11:02:12 +00:00
fpwebstrconsts.pas * New Lazarus project type: HTTP application (FCL only) 2011-06-02 16:19:25 +00:00
fpwebtoolsunit.pas * New version (td tag) from Alexei 2010-09-20 19:48:24 +00:00
frmnewhttpapp.lfm Components: first batch of TButtonPanel captions cleanup 2011-10-03 22:14:26 +00:00
frmnewhttpapp.pp * New Lazarus project type: HTTP application (FCL only) 2011-06-02 16:19:25 +00:00
frmrpcmoduleoptions.lfm added package lazwebextra from Michael Van Canneyt 2010-06-06 10:16:08 +00:00
frmrpcmoduleoptions.pp Components, fpWeb: 2010-07-04 21:11:41 +00:00
lazweb.pp components: added fpweb from Michael Van Canneyt 2007-04-02 07:55:14 +00:00
lazwebextra.lpk * New Lazarus project type: HTTP application (FCL only) 2011-06-02 16:19:25 +00:00
README.txt added package lazwebextra from Michael Van Canneyt 2010-06-06 10:16:08 +00:00
reglazwebextra.pp * New Lazarus project type: HTTP application (FCL only) 2011-06-02 16:19:25 +00:00
weblaz.lpk Components: changed WebLaz package output directory to be the same with LazWebExtra one to avoid 'ambiguous units' error, bug #19584 2011-08-06 11:49:30 +00:00
weblaz.pas components: added fpweb from Michael Van Canneyt 2007-04-02 07:55:14 +00:00
weblazideintf.pp FpWeb: registered property editors for ItemField and ValueField properties of THTMLDatasetSelectProducer (allows to select their values in OI), patch from Alexey Lagunov. 2011-09-19 20:03:00 +00:00

This is the fpWeb components directory README.
It contains 2 packages:

The LazWeb package implements IDE functionality for FCL-Web.
It should work with version 2.4.x of FPC.

The LazWebExtra package implements more IDE projects and components,
which are available only as of version 2.5.1 of the compiler.
As these items become available in a stable release, the package will be
merged in Lazweb.

Both packages registers a series of project wizards, and some components.

The following project types are registered in the lazweb package:

- CGI application
- Apache Application (an apache module)
- Custom CGI application ("bare bones" cgi, no web modules)
- FastCGI application
- Custom FastCGI application ("bare bones" fastcgi, no web modules)

For each of these projects, a Web Module is created by default. 
The following web modules can be created:
- WebDataModule (TFPWebModule)
    This is a general-purpose HTTP request handling module, 
    which can be used to handle any HTTP request for any kind of data.
- HTMLModule (TFPHTMLModule)
    This is a specific HTTP request handling module, aimed specially
    at producing a HTML response.

The following components are registered:

 THTMLDatasetContentProducer
  Creates a HTML table based on a TDataset descendent
 THTMLSelectProducer
  Creates a <SELECT> element based on a TStringList.
 THTMLDatasetSelectProducer
  Creates a <SELECT> element based on a dataset (a lookup combo) 
 THTMLEntityProducer
  Creates a HTML ENTITY document
 THTMLPageProducer
  Creates a HTML page using an event handler.
THTMLDataSetFormShowProducer
  Creates a <FORM> which allows to show a single record of a dataset.
THTMLDataSetFormEditProducer
  Creates a <FORM> which allows to edit a single record of a dataset.
THTMLDataSetFormGridProducer
  Creates a series of forms.

The lazwebextra package additionally registers the following web modules
and components:
- Web Data Provider module (TFPWebProviderDataModule)
   Used to convert TDataset to a variety of formats and to handle updates to the data.
   (ExtJS JSON and XML currently)
- JSON-RPC request handling module (TJSONRPCModule)
   Used to handle JSON-RPC requests.
- Ext.Direct handling of JSON-RPC requests (TExtDirectModule)
   Handles the Ext.Direct variant of JSON-RPC.

The following components are registered:

TFPWebDataProvider
  Handles CRUD (Create/Read/Update/Delete) operations on a TDataset

TSQLDBWebDataProvider
  Handles CRUD (Create/Read/Update/Delete) operations on a TSQLConnection.
  (INSERT/SELECT/UPDATE/DELETE SQL statements can be specified).

TWebdataInputAdaptor
  Transforms HTTP request to a format that TFPWebDataProvider
  understands, using event handlers.

TExtJSJSonWebdataInputAdaptor
  TWebdataInputAdaptor descendent that transforms a ExtJS Datastore
  JSON request to input usable by TFPWebDataProvider.

TExtJSJSONDataFormatter
  Outputs JSON as expected by ExtJS datastores from all operations on a 
  TFPWebDataProvider instance.

TExtJSXMLWebdataInputAdaptor
  TWebdataInputAdaptor descendent that transforms a ExtJS Datastore
  XML request to input usable by TFPWebDataProvider.

TExtJSXMLDataFormatter,  
  Outputs XML as expected by ExtJS datastores from all operations on a
  TFPWebDataProvider instance.

TJSONRPCHandler
  Component that handles a single JSON-RPC request.

TJSONRPCDispatcher
  Component that dispatches a batch of JSON-RPC requests to appropriate
  TJSONRPCHandler instances.

TSessionJSONRPCDispatcher
  Component that dispatches a batch of JSON-RPC requests to appropriate
  TJSONRPCHandler instances, and which is session-aware. (session in the
fcl-web sense of the word)

TJSONRPCContentProducer
  Component that handles input from a HTTP request, passes it on to a
  TJSONRPCDispatcher instance and formats the result.

TExtDirectDispatcher
TExtDirectContentProducer
  Descendents of TJSONRPCDispatcher and TJSONRPCContentProducer that
  understand the Ext.Direct variant of extJS.

Demo projects are available in the demo subdirectory, and additional demos
can be found in the fcl-web/examples directory of FPC.

Additional READMEs with information on the components are in the fcl-web/src/*
directories.

Author: Michael Van Canneyt & Joost van der Sluis