1.0
- P4A_Frame, P4A_Canvas and P4A_Sheet now checks if object were destroyed before rendering
- a bug in P4A_Number::format was fixed (it prevented setNewValue(0) to work)
- some code beautification were done

0.99.12
- Persian translation was added (thanks to JraNil)
- Catalan translation was added (thanks to Alvaro Gilabert)
- PEAR::Calendar 0.5.3 was added to libraries
- PEAR::Date 1.4.6 was added to libraries

0.99.11
- now is possible to do P4A_Widget::useTemplate('dir/file')
- P4A_Toolbar::addLabel() method was added
- a bug on P4A_Date::get_month_name() was fixed
- a bug on P4A_Table was fixed
- a bug with framework-wide libraries was fixed
- P4A_Frame can now handle if an anchored object was destroyed
- P4A_Toolbar(s) constructor was splitted to allow better customization
- some minor beautifications were done

0.99.10
- P4A_Array_Source::load() now can be called more than one time to change the data inside the array_source
- TinyFCK was updated to 0.12
- a bug about invisible labels for read-only P4A_Field was solved
- a bug with P4A_I18N_Messages::get() was solved
- Slovenian translation was added (thanks to Jernej Zorec)

0.99.9
- P4A_Data_Source, P4A_DB_Source and P4A_Array_Source now trigger beforeMoveRow, onMoveRow and afterMoveRow events
- P4A_Mask's beforeMoveRow, onMoveRow and afterMoveRow triggers are declared as "deprecated" and will be removed in 1.2
- some minor beautifications

0.99.8
- a bugfix about P4A_Date::unformat was fixed (1468679 - string padding)
- Polish translation was updated
- Danish translation was added (thanks to spinello)
- PEAR was updated to 1.4.9
- some minor bugfixes were made

0.99.7
- added a "clone" function to emulate php5 cloning system
- a php5 warning bug was solved
- P4A_DB_Source::setQuery() now automatically generates the counting query
- bug n. 1467199 on P4A_Field::getAsString() was solved
- minor beautifications were done

0.99.6
- a bug with mt_MT locale was fixed
- a complete syntax check was done on all files
- a bug with P4A_DB_Source about multiple join with homonym	fields was fixed

0.99.5
- a bug in P4A_Data_Source was fixed
- a bug with P4A_DB_Source::__sleep was fixed
- polish translation was added (thanks to Artur Stuczyński)
- a bug with P4A_Field::getAsRadio() was fixed

0.99.4
- tinyFCK updated to 0.10
- a bug with rich textarea upload was fixed
- a bug with null dates/numbers formatting was fixed
- XHTML width/height for P4A_Button were restored
- now P4A_Button::setSize() supports width and height with WIDTHxHEIGHT format
- a minor bugfix on P4A_Table CSS was made

0.99.3
- indonesian translation added (thanks to Akhmad Daniel Sembiring)
- japanese translation added (thanks to Tony Kimball)
- P4A_DB_Source now correctly handle multiordering/multipk
- fixed a bug that prevented the DHTML calendar to show correctly
- fixed a bug with P4A_DB_Source::setPageLimit(0)
- some documentation fixes were done

0.99.2
- chinese translation was added (thanks to Tony Kimball)
- bugfix on XHTML validation for P4A_Field::getAsDate()
- removed scrollbar's css for better css validation
- P4A_Widget::noUseTemplate() was removed because wrong, you can do P4A_Widget::useTemplate(false) instead
- P4A_Widget::clearDisplay() was renamed to P4A_Widget::clearTemplateVars()
- PEAR was updated to 1.4.8
- P4A_Table now implements the <COL> tag, resulting HTML was cleaned up

0.99.1
- the "new" icon was changes from "pencil" to "document"
- getAsMulticheckbox now rendered with checkbox + label
- a system was introduced to avoid browser's back/forward problems
- bugfix on P4A_Button, now l10n labels work again
- minor bugfixes and documentation changes

0.99.0
- slovak translation was added (thank to Tomas Lopasovsky)
- czech translation was completed (thanks to hanny)
- fixed a bug with non ordered P4A_DB_Source in P4A_Table
- PEAR was updated to 1.4.7
- minor bugfixes

0.45
- dutch translation added (thanks to fidodildo)
- fixed a bug on P4A_Table_Col of image type
- P4A_Table now use GD (if available) to display images thumbnails
- fixed an error on "am/pm" management in reverse formatting of time data
- TinyFck's filemanager is now restored

0.44
- TinyFCK was updated to 0.8
- locales were rebuilt with a new conversion engine, fixing some bugs

0.43
- phpThumb 1.6.2 was added in libraries
- if GD are installed image preview call phpThumb to generate thumbnails
- gettext like __("string") function has been added, alias of $p4a->i18n->messages->get("string")
- German translation completed (thanks to ibus)
- Romanian translation completed (thanks to Andrew and Giorgio Rimmer)
- P4A_Table now supports left/right alignment based on data type
- many improvements for handheld rendering
- some bugfixes on XHTML validation
- some bugfixes on print css
- minor bugfixes and beautifications

0.42
- bugfix on P4A_DB_Source::getFilters(), filtering now works with fields and data_fields
- French translation completed

0.41
- many translations added, look at http://p4a.sourceforge.net/translations
- a few translation strings were added (for P4A_Table)
- fixed some bugs with the i18n/l10n engine
- Portuguese translation completed (thanks to Tiago)
- Estonian translation completed (thanks to Eero)
- Spanish translation completed (thanks to Vanesa Callejo)
- Russian translation completed (thanks to Юрий Бб)
- Norvegian translation added (thanks to Jostein)
- bugfix on P4A_DB_Source::getFilters(), filtering with formatted fields now works

0.40
- TinyFCK was updated to 0.5
- P4A_Listener was removed because it was obsolete and unused
- P4A_Menu was totally refactored, dropping some methods
- PEAR packages were updated and cleaned out (now we only have PEAR 1.4.6, Console_Getopt 1.2, DB 1.7.6, HTML_Template_Flexy 1.2.4)
- new l10n formats loaded, 168 locales available
- bugfix on es_ES translations (removed htmlentities => UTF-8)
- some code reference was written

0.39
- fixed bug 1407473 (password obfuscator was shown also on null values)
- feature request 1413696 (removing non existing file does not produce a fatal error anymore)
- P4A_DENIED_EXTENSIONS constant was added
- P4A_Get_File_Extension() function was added to library
- P4A_Is_Extension_Allowed() function was added to library
- fixed bug 1404846 (when uploading a file with denied extension you'll get a fatal error)
- some methods were documented in the code reference

0.38
- Multiple DB connection support was added
- added setDSN method to p4a_db_source
- added getDSN method to p4a_db_source
- added setDSN method to p4a_data_field
- added getDSN method to p4a_data_field
- minor changes
- P4A_Box widget was added, it renders raw html
- Rich Text Editor was updated to TinyFCK 0.4
- Rich Text Editor image resizing was modularized a bit
- bugfix on RTE image resize
- minor changes

0.37
- MySQL Manager was removed from the main package and released as a contrib
- Base application contrib was released

0.36
- added CHANGELOG, README, COPYING and TODO files to code reference
- backward compatibility issue with P4A_Button was fixed
- a "find" icon was added (32x32)

0.35
- P4A_Table_Col can show image thumbnail: P4A_Table_Col::setType("image")
- P4A_Button can show icon and label at the same time
- rich text editor support original image reduction: $Config['ImageSize']['__original__'] = "800x800";
- a little spanish translation bug was fixed
- minor changes to tab_pane widget css were made

0.34
- TinyMCE was updated to 2.0.1
- PEAR packages were updated

0.33
- release builder script was updated
- base application was moved to contribs
- print css for P4A_Tab_Pane was added
- some bugfixes/cleanup were done on P4A_Field::getAsRadio()
- P4A_Message::setValue(0) bug was fixed
- removed "clean on startup" option from tinymce, seems to cause ie problems

0.32
- P4A_Tab_Pane was added (Thanks to Francesco Dominidiato)
- enabled rich text editor image resize (documentation on website)
- TinyMCE was updated to 2.0RC4

0.31
- bugfix on P4A_Table, now ordering works well
- bugfix on P4A_DB_Source, now addOrder() and setOrder always turn the ordering mode to uppercase
- PHP 4.4 P4A_Collection::nextItem() bugfix
- rich text editor now support image resizing (libGD support needed) (disabled by now)
- various bugfix and beautification

0.30
- PHP 4.4 porting completed (deep tests are needed)
- sample htaccess was added (needed to set some PHP settings that we can't set at runtime)
- TinyMCE rich text editor was introduced instead FCKEditor
- CKEditor file browser/upload was integrated in tinyMCE
- P4A_Field::enableUpload() was added
- P4A_Field::enableFileUpload() and P4A_Field::enableImageUpload() were removed
- fixed the setDefaultValue(0) bug
- various bugfixes and code beautification

0.29
- Template engine is now Flexy, many constants in config.php were dropped and template were heavily changed
- ie7 library was updated to 0.9
- P4A_REQUIRE_APPLICATION now supports application name or application dir
- mb_internal_encoding is set to UTF-8 if mbstring extension is available
- P4A_DB_Source::dropOrder() was added
- fixed P4A_Button::getAsString(), when icon is rendered, width and height are printed (now we can only have square icons)
- fixed P4A_Table_Col visibility issues
- fixed a bug about charset in mask's default template
- fixed a bug within P4A_Mask constructor (internal variable _name is now lowercase)
- PEAR packages were updated
- P4A_Table::isRollable(), P4A_Table::enableRollup(), P4A_Table::disableRollup(), P4A_Table::rollup(), P4A_Table::expand() and P4A_Table::collapse() were removed
- code cleanup, documentation added

0.28
- removed some unused CSS from screen.css
- added a "generic_file" icon (16x16)
- phpsniff library was removed from phpdocumentor source list
- FCKEditor was updated to 2.0
- safari was added to the compatibility list (thanks to Francesco Dominidiato)
- FCKConfig.ToolbarCanCollapse is now set to off (thanks to Francesco Dominidiato)
- fixed a bug on image preview mask printing (thanks to Francesco Dominidiato)
- image preview mask now show the file name in the title

0.27
- afterUpload event trigger was added
- FCKConfig.ProcessHTMLEntities is now off (thanks to Francesco Dominidiato) ;
- standardized accesskey notation in P4A_Button, now it renders as "[S] Save Row" instead of "Save Row (ALT+S)"
- bugfix on mysql_manager application
- P4A_I18N_Messages::get() now also accept no params, returning all messages
- asc/desc/selected alt for images were added to P4A_Table
- contribs were introduced, thanks to Major__Tom

0.26
- PEAR packages were updated fixing some security issues

0.25
- bugfix on P4A_Data_Source::prevRow(), now works well when calling it on the first row of a data source
- bugfix/beautifications on products_catalogue application
- bugfix on P4A_Table for a better rendering
- changed P4A_Table_Rows onBeforeDisplay, we cannot pass $rows by reference, thus you've to return $rows from your action handler

0.24
- changed XHTML output for textarea and rich_textarea, now HTML code in the value is escaped with htmlspecialchars(), allowing XHTML 1.1 validation
- added P4A_Quit_Toolbar, with only two buttons: print and quit
- added P4A_Mask_Image_Preview, system mask to view images preview
- many changed on the output of Field::getAsFile() ans Field::getAsImage()
  - removed the HTML links
  - added preview button for images
  - added download button
- changed P4A_Href::composeStringActions(), converted to XHTML parameter separator (&amp; instead of &) (check your php.ini configuration to support this feature)
- changed P4A_Data_Source::exportAsCSV(), added a die() on the last row
- renamed toolbar files in p4a/objects/widgets/toolbars
- some code was beautified
- updated TODO

0.23
- removed P4A_Menu_Item::setActive() and P4A_Menu_Item::setNoActive()
- changed top margin calculation into mask default template (themes/default/masks/default/default.tpl)
- textarea now have default width=500px, height=200px
- rich_textarea now have default width=500px, height=300px
- textarea and rich_textarea also have rows/cols properties
- removed some garbage from screen.css
- P4A_Menu is now pure XHTML/CSS (thanks to Justin Koivisto) and multilevel, removed template and javascript
- some code/css has been beautified
- done a lot of work work on XHTML 1.1 validation (still not finished)
- changed the internal CSS array structure, thus P4A::addCSS() and P4A::dropCSS() are changed
- added javascript and css local to every mask, thus P4A_Mask::addCss() and P4A_Mask::dropCss() were added
- added temporary javascript and css local to every mask, thus P4A_Mask::addTempCss() and P4A_Mask::dropTempCss() were added. These javascripts/css are dropped immediately after rendering
- changed the default mask template to reflect the CSS handling changes
- fixed a bug with date_calendar widget, now it's possible to have more than one calendars on a mask
- dropped date_calendar.tpl because it's not used anymore
- added themes/default/widgets/date_calendar/p4a.js with some javascript code
- changed the inclusion system for date_calendar and rich_textarea widget, now all javascript/css are included only once
- added possibility to extend a P4A Application
- added P4A_Base_Application (non included in the p4a release because we need documentation)
- added P4A_Simple_Toolbar
- fixed a bug in P4A_DB_Source::_composeSelectPkQuery() with joined tables
- updated TODO
- updated README

0.22
- fixed a bug in P4A_DB_Source with multivalue fields
- added P4A_Field::getAsMulticheckbox(), use it with $field->setType('multicheckbox')
- some code has been beautified
- updated CREDITS
- updated TODO

0.21
- all actions and events are now lowercase, also to print out corrected XHTML
- fixed a password rendering bug: if a password field is not filled, now you'll not see the obfuscator after submit
- renamed "menu_drop_down" template to "menu"
- removed P4A_Menu::setType()
- removed tabbed menu
- removed P4A_Sheets_Group widget
- some bugfixes in CSS
- added P4A::addJavascript() and P4A::dropJavascript()
- changed javascript file inclusion in masks templates
- updated TODO
- updated README, removed info about untested browsers
- ie7 (http://dean.edwards.name/IE7/) library has been implemented (thanks to Francesco Dominidiato)

0.20
- fixed screen.css bug on Internet Explorer
- added beforeMoveRow,onMoveRow and afterMoveRow on P4A_Mask::nextRow()

0.19
- upgraded all pear packages
- added constant P4A_FORCE_HANDHELD_RENDERING to force handheld rendering on any device (useful to have a handheld preview)
- handheld CSS now has a sans-serif font
- handheld CSS now has a nice color for all the links

0.18
- updated rich text editor (FCKeditor 2.0 FC)

0.17
- done some PHP5 fixes, seems to work fine but we need more tests
- updated TODO
- created CREDITS file and moved credits from README
- updated some copyright informations
- fixed an error in CHANGELOG

0.16
- updated TODO
- disabled P4A_Sheets_Group and tabbed menu because they're not completed
- updated all copyright informations

0.15

- now p4a_message can handle messages without icons
- some language fixes in the "products_catalogue" application

0.14
- fixed a bug in P4A_Number::format, if null is passed, null is returned (not zero)
- added P4A_Message::autoClear() to enable/disable auto clearing of messages
- removed P4A_Label::setType() because it were formally uncorrect
- P4A now can handle file/image uploads within rich_textarea fields (disabled by default)
- added P4A_Field:enableFileUpload() and P4A_Field:enableImageUpload()

0.13
- various bugfix in P4A_Link
- updated caledar widget to 1.0
- added P4A_Table_Col::setOrderable() and P4A_Table_Col::isOrderable() to set and check the possibility to enable the "order by" on a column
- added the possibility to intercept the "beforeDisplay" event on P4A_Table

0.12
- added folder.png and folder_open.png images in 16x16 pixels icons
- updated rich text editor (FCKeditor 2.0 RC3)
- now P4A_Field::getAsLabel() correctly handle multiline content
- P4A_Widget now instance a "handheld" smarty variable, passed to the template
- now P4A_Field::getAsDate() correctly manage handheld devices
- added some copyright notes to array_source.php, db_source.php, collection.php, data_source.php
- removed multivalue_field.php because it was obsolete
- removed P4A_Mask::addMultivalueField() because it was obsolete
- done some work on config.php to allow p4a to stay out of the document root (must have an alias set to /p4a), take a look at docs/httpd.conf
- added P4A_Mask::getPrevMask() and P4A::getPrevMask() to get an instance of the previous opened mask
- updated TODO
- updated READMEs
- bugfix in P4A_Table, now ordering works well with aliased fields
- changes in P4A_Frame, when viewed by an handheld no divs are generated and all elements float left (Pocket IE seems to not support floats)
- optimized P4A_Table_Navigation_Bar output for handhelds
- bugfix in P4A_Table_Navigation_Bar::addButton(), now margins are correct
- code cleanup
- removed some obsolete files
- handheld css change: now mask's title is centered
- handheld css change: now fieldset' title is centered
- handheld css change: now table's width is forced to 100% to avoid Pocket IE problem

0.11
- bugfix in MySQL Manager
- navigation bar bugfix in P4A_Table
- print css bugfix
- moved some inline css to external files
- output HTML optimizations

0.10
- moved some locale files, now ru_RU.CP121 and ru_RU.KOI8-R work again
- bugfix in getAsFile method in P4A_FIELD
- bugfix in saveRow method in P4A_DB_SOURCE
- bugfix in getAsDate method in P4A_FIELD
- null value bugfix in saveRow method on P4A_DB_SOURCE
- improved check_configuration library

0.9
- all javascript moved in p4a.js, the default form is now named "p4a"
- fixed a bug in mask default template, no javascript was included
- added the ability to detect handheld devices (a browser that does not support css2 is considered handheld)
- new library (phpSniff) to detect Internet Explorer
- optimized output HTML, cleaner and lighter

0.8
- changed P4A_MESSAGE layout
- fixed fieldset ie bug
- fixed deleteRow method on P4A_DATA_SOURCE
- fixed screen.css in default theme
- fixed anchorCenter bug in P4A_FRAME
- fixed anchorCenter bug in P4A_FIELDSET
- fixed an error P4A_FIELD::setNewValue that prevented the system from handling 0 as numeric value

0.7
- code cleanup
- added P4A_Navigation_Toolbar, a new default toolbar with "first", "prev", "next", "last", "exit" buttons
- updated TODO
- various bugfixes

0.6
- renamed changelog to CHANGELOG
- added TODO file
- added setlocale(LC_NUMERIC, "C") to avoid php 4.3.10 problems with numeric locales
- added setlocale(LC_MONETARY, "C") to avoid php 4.3.10 problems with numeric locales
- fixed P4A_TOOLBAR, now spacers work correctly
- fixed P4A_IMAGE, now supports the new default icon path
- added spacer.png image into icons
- DATA_SOURCE::getAsCSV() now suports fields names
- renamed DATA_SOURCE::exportToCSV() to DATA_SOURCE::exportAsCSV()
- added DATA_SOURCE::exportToCSV() as an alias of DATA_SOURCE::exportAsCSV()

0.5
- fixed a file upload bug that prevented a correct behaviour when the web server is listening on a port differt from 80
- fixed a bug in DATA_SOURCE filters engine
- added a message to MySQL Manager to suggest using Firefox
- fixed a bug in ARRAY_SOURCE getAll
- fixed a bug in ARRAY_SOURCE load

0.4
- removed pear/pear.php that caused errors on windows installation
- fixed various errors in array_source
- fixed a reference in frame
- various bugfixes

0.3
- changed PEAR repository management, now with web interface we can easily install/upgrade/remove PEAR modules
- added deleteRow to DATA_SOURCE interface
- added deleteRow to ARRAY_SOURCE
- moved some code for deleteRow from DB_SOURCE to DATA_SOURCE, now used also from ARRAY_SOURCE

0.2
- now db_source reload num_rows on setWhere, addFilter, dropFilter
- changed doctype for default template, now we're xhtml 1.1 (not validated, work in progress)
- changes in default template to start the xhtml validation
- fixed getAll in P4A_Array_Source
- fixed page in P4A_DB_Source
- fixed a problem with table and handheld Pocket Internet Explorer 2003
- added index.php file into applications directory, just for a redirect
- beautified handheld css

0.1
- initial release