Changelog 117 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275327632773278327932803281328232833284328532863287328832893290329132923293329432953296329732983299330033013302330333043305330633073308330933103311331233133314331533163317331833193320332133223323332433253326332733283329333033313332333333343335333633373338333933403341334233433344334533463347334833493350335133523353335433553356335733583359336033613362336333643365336633673368336933703371337233733374337533763377337833793380338133823383338433853386338733883389339033913392339333943395339633973398339934003401340234033404340534063407340834093410341134123413341434153416341734183419342034213422342334243425342634273428342934303431343234333434343534363437343834393440344134423443344434453446344734483449345034513452345334543455345634573458345934603461346234633464346534663467346834693470347134723473347434753476347734783479348034813482348334843485348634873488348934903491349234933494349534963497349834993500350135023503350435053506350735083509351035113512351335143515351635173518351935203521352235233524352535263527352835293530353135323533353435353536353735383539354035413542354335443545354635473548354935503551355235533554355535563557355835593560356135623563356435653566356735683569357035713572357335743575357635773578357935803581358235833584358535863587358835893590359135923593359435953596359735983599360036013602360336043605360636073608360936103611361236133614361536163617361836193620362136223623362436253626362736283629363036313632363336343635363636373638363936403641364236433644364536463647364836493650365136523653365436553656365736583659366036613662366336643665366636673668366936703671367236733674367536763677367836793680368136823683368436853686368736883689369036913692369336943695369636973698369937003701370237033704370537063707370837093710371137123713371437153716371737183719372037213722372337243725372637273728372937303731373237333734373537363737373837393740374137423743374437453746374737483749375037513752375337543755375637573758375937603761376237633764376537663767376837693770377137723773377437753776377737783779378037813782378337843785378637873788378937903791379237933794379537963797379837993800380138023803380438053806380738083809381038113812381338143815381638173818381938203821382238233824382538263827382838293830383138323833383438353836383738383839384038413842384338443845384638473848384938503851385238533854385538563857385838593860386138623863386438653866386738683869387038713872387338743875387638773878387938803881
  1. WARNING! This file is no longer used.
  2. Please refer to the ReleaseNotes for major changes, and the git log for
  3. more fine-grained information on changes.
  4. 28-11-2013:
  5. * WRasterImage: now also support skia as backend. Cmake option
  6. ENABLE_GM is replaced by WT_RASTERIMAGE_IMPLEMENTATION, which has
  7. to be set to none, GraphicsMagick, or skia.
  8. 10-07-2013:
  9. * WSignal: Due to boost 1.54 complaining on boost.signals being
  10. deprecated, namespace Wt::Signals was created. This namespace contains
  11. the boost signals implementation that is optimal for your boost: for
  12. boost < 1.54 it will be signals, for boost > 1.54 it will be signals2.
  13. 15-05-2013:
  14. * WStandardItem, WStandardItemModel: before: checkboxes are rendered
  15. in enabled state when ItemIsUserCheckable flag is set. Now: checkboxes
  16. are rendered when CheckStateRole is present. If ItemIsUserCheckable is
  17. set, the checkbox will be editable. If ItemIsUserCheckable is not set,
  18. the checkbox will be uneditable. setCheckable(true) will add a
  19. CheckStateRole of false when no CheckStateRole was present on the
  20. element.
  21. 05-04-2013:
  22. * Client SSL certificates can be queried from (static) WResources
  23. 26-02-2013:
  24. * Fixed bugs #1711, #1712, #1713, #1714, #1715
  25. * Wt-3.3.0-rc3
  26. 19-02-2013:
  27. * Fixed bugs #1689, #1698, #1687 (from Starius)
  28. * Implemented features #1675 (from Thomas Saquet)
  29. * Wt-3.3.0-rc2
  30. 18-02-2013:
  31. * Fixed regression in resource continations
  32. 15-02-2013:
  33. * Fixed bugs #1699, #1697, #1696, #1695, #1677, #1676
  34. * Fixed WPopupMenu::triggered() behaviour change from 3.2.3
  35. 12-02-2013:
  36. * Wt-3.3.0-rc1
  37. 25-01-2013:
  38. * Merged in bootstrap branch, with many additions, changes and above
  39. all addition of support for Twitter's Bootstrap framework as a new
  40. theme
  41. 12-12-2012:
  42. * Added binary WebGL VBO buffers, contributed by Tassilo Glander
  43. 01-11-2012:
  44. * Wt-3.2.3
  45. 05-10-2012:
  46. * Layouts: various bug fixes and improvements
  47. * Render: added support for repeating table headers
  48. * WApplication: added some tentative methods for 404 generation in
  49. response to internal paths
  50. 13-09-2012:
  51. * Render: added support for explicit page breaks and % widths
  52. * layouts: fix popup widgets confusing preferred size calculations
  53. (tentatively)
  54. 13-08-2012:
  55. * Payment: new API for payment processing, with an implementation
  56. for PayPal
  57. 10-08-2012:
  58. * layouts: fix various issues
  59. * WTextEdit: fix behaviour inside a WPanel
  60. * Render: code reorganizations for java port
  61. 03-08-2012:
  62. * QueryModel: added stableResultRow() method which has more guarantees
  63. of consistently returning the same result regardless of database
  64. changes
  65. 27-07-2012:
  66. * Dbo/Exception: add support for SQLSTATE code information
  67. * Mail/Client: log configuration that will be used on first use
  68. * WAnchor: use <a> tag even if no link has been provided (#1348)
  69. * WDoubleSpinBox: fix formatting (#1358)
  70. * WSlider: add more hooks for custom styles
  71. 25-07-2012:
  72. * Layouts: fix error in switching to contents determining layout size
  73. * Wt-3.2.2-p1
  74. 23-07-2012:
  75. * WebController: workaround filesystem runtime problem for boost 1.50
  76. * Wt-3.2.2
  77. 16-07-2012:
  78. * Wt: fix compile issues with boost 1.50
  79. * WPieChart: support TooltipRole data
  80. * WGridLayout, WBoxLayout: fix dynamic add/remove behaviour, fix
  81. behaviour in WGroupBox, and honor minimum size settings on container
  82. * Wt-3.2.2-rc2
  83. 04-07-2012:
  84. * Wt-3.2.2-rc1
  85. 28-06-2012:
  86. * WAbstractSpinBox: fix (server-side) validate()
  87. * WComboBox: handle current index when deleting rows
  88. * WTreeView: use hasChildren() do determine need for expand icon
  89. * layout: properly constrain minimum sizes in the application root
  90. 23-05-2012:
  91. * dbo: add One-to-One relations, using Wt::Dbo::weak_ptr<>
  92. * dbo: check relations are soundly defined instead of generating wrong
  93. SQL
  94. * dbo: collection::clear() method added
  95. * Utils::base64Encode(): added option to omit CRLFs from generated
  96. base64 stream
  97. * WGridLayout, WBoxLayout: more fixes to be backwards compatible
  98. with previous version
  99. * http/WtReply: fix memory leak when too-large files are uploaded
  100. leaving stale temporary files
  101. * WebSession: clean-up session-id file for FastCGI (regression)
  102. * WApplication::setInternalPath(): make it work properly when used
  103. without JavaScript
  104. 15-05-2012:
  105. * feature/dbo/tutorial9 example added: splits the classes over several
  106. files
  107. * WCartesianChart: add support for custom markers, and custom axis
  108. padding
  109. * WGridLayout, WBoxLayout: several bug fixes
  110. 14-05-2012:
  111. * WInteractWidget::setMouseOverDelay() configures a delay before
  112. the mouse over signal is fired
  113. * WInteractWidget::doubleClicked() has been reimplemented using
  114. mouseClicked() so that not both will fire in case both have events
  115. attached
  116. 09-05-2012:
  117. * WGridLayout, WBoxLayout: new implementation, which should get rid
  118. of misfeatures and annoyances
  119. * WebRenderer: do not generate double '//' when loading theme CSS
  120. * WebSession: do not wait for 'load' signal if not using ajax puzzle
  121. * WFileUpload: fix behaviour in MS HTA mode
  122. 05-04-2012:
  123. * StdGridLayoutImpl.js: unbreak layout in WGroupBox behaviour
  124. * Dbo/QueryModel: fix Firefox not showing header problem (LevelRole error)
  125. 03-04-2012:
  126. * WGlobal: add more forwards
  127. * WTreeView: relax fix for behaviour in layout manager
  128. * Dbo::QueryModel: make const methods const
  129. 30-03-2012:
  130. * Wt 3.2.1 (final) released
  131. 03-01-2012:
  132. * Wt/Utils: new header with utility functions that implement
  133. commonly used hash functions and encoding/decoding
  134. * WAxis: fix Date and DateTime scale rendering, to take into acount
  135. labelInterval() and better choice of label values
  136. 28-12-2011:
  137. * Dbo/Transaction: do not require a commit() to commit a transaction
  138. (but preserve behaviour to rollback in case of an exception)
  139. 27-12-2011:
  140. * Auth/: reorganisation, more model/widget separation
  141. 26-12-2011:
  142. * WSlider: implement disabled rendering
  143. 22-12-2011:
  144. * hangman example: add Russian translation
  145. 19-12-2011:
  146. * Render/: optimize table rendering
  147. 07-12-2011:
  148. * WGoogleMap: unify loading for v2 and v3, fixes bugs in loading
  149. a second v3 google map
  150. 01-12-2011:
  151. * Wt.js, WtReply: more robust handling of flaky WebSocket connections
  152. * hangman example: misc editorial changes
  153. * WReadOnlyProxyModel: a simple proxy model that allows sharing of
  154. source model between different sessions (but read-only)
  155. * Dbo: added belongsTo() and hasMany() overloads which infers the
  156. foreign key names from the foreign table
  157. * Dbo: added session() method to actions
  158. * WStringStream: optimization for string literals which avoids
  159. strlen()
  160. * WDialog: fix positionAt()
  161. * wtfcgi: fix regression (data corruption) when built with DEBUG=ON
  162. 29-11-2011:
  163. * Released: 3.2.0
  164. 21-11-2011:
  165. * Wt/Dbo/backend/Firebird: merged Firebird backend contributed by
  166. Lukasz Matuszewski from Technical University of Gdansk.
  167. * Wt/WLogger: the library now uses macros that wrap around
  168. Wt::log() by default for internal logging, but this could be
  169. adapted to use another logging system of your choice. We also
  170. abide the third law of logging libraries: that they will expand
  171. their features until they become unusable: we added configurations
  172. options to enable or disable specific logging.
  173. * WServer: support catching SIGHUP (on unix-like) systems to
  174. reread the configuration file.
  175. * httpd: implement newer (and newest) WebSocket drafts (protocol
  176. versions 7, 8 and 13)
  177. * all: closed several bugs and feature requests (#956, #1015,
  178. #1018, #1064)
  179. 18-11-2011:
  180. * WString: we now store arguments as WString so they are also
  181. properly i18n-ed (#1059).
  182. 07-11-2011:
  183. * WException: new, public exception class (was previously an internal
  184. one)
  185. * WIOService: new, public service class for async I/O, and its
  186. thread pool
  187. * WStringStream: new, public fast stringstream implementation (was
  188. previously an internal class)
  189. * Wt/Auth: new, authentication module
  190. * Wt/Json: new, JSON library
  191. * Wt/Mail: new, mail client
  192. * Wt/Http/Client: new, http client (former Client renamed to WtClient)
  193. * Wt/Test/WTestEnvironment: has moved to a "wttest" pseudo-connector
  194. library
  195. * WFormWidget: added a valueText() that returns the textual
  196. representation of the current value
  197. * WApplication: added deferRendering() and resumeRendering() API,
  198. useful for asynchronous client operations
  199. * Wt::log(): global logging method, similar to but more useful
  200. than WApplication::log()
  201. * WTemplate: added support for functions, and two standard functions
  202. id() and tr()
  203. * WTemplate: implemented arguments parsing and use ("class")
  204. * WebSession: added DoS meausures: ajax puzzle and plain session
  205. rate limitation
  206. 19-10-2011:
  207. * WAbstractItemView: reimplemented and simplified header item rendering
  208. * Wt.js: workaround browser bugs in scrollLeft reading in RTL mode,
  209. fixing WAbstractItemView column resizing in RTL layouts.
  210. 12-10-2011:
  211. * WRectF: fix isEmpty() to be more restrictive: only a rect with
  212. width = 0 and height = 0 is now empty
  213. 11-10-2011:
  214. * WPopupMenuItem: fix crash with re-showing hidden popup
  215. * WDialog: add setClosable() which adds a close icon to the title bar
  216. * WAbstractItemView: more flexible API for header height and vertical
  217. alignment
  218. 05-10-2011
  219. * WMediaPlayer: make sure that relative URLs resolve against deployment
  220. path (#1007)
  221. 03-10-2011
  222. * Dbo: added dialect option for 'rows ? to ?' (Firebird database).
  223. 23-09-2011
  224. * Wt 3.1.11 released
  225. 19-09-2011
  226. * WAnchor, RefEncoder: added indirection to strip session ID from the
  227. referrer before navigating to an external URL (#607)
  228. * wthttp: stabilized WebSockets handling
  229. 13-09-2011
  230. * WConfig: added a check to detect header/library version mismatches
  231. * Chart/WAxis.C: a fix from Joe Garcia, crash with log scaling
  232. * WItemDelegate: set target new window for WLink data when it references
  233. a resource
  234. * WMenu: fix hiding of a menu item to hide the entire item, not just
  235. the contents (label)
  236. 05-09-2011
  237. * WResource, Http/ResponseContinuation: added API to suspend a response
  238. while waiting for more data, and resuming later
  239. 31-08-2011:
  240. * WResource: use suggestedFilename() also when set during
  241. handleRequest() (#920)
  242. 22-08-2011:
  243. * Dbo/DbAction: fix missing actId() in FromAnyAction triggered
  244. by QueryModel with natural ids
  245. * WAbstractServer, WebMain, WebSession: added support for
  246. scheduling events, used to timeout bootstyle response to avoid problems
  247. on IE(9) ?
  248. * WCssDecorationStyle: fix border() segfault
  249. 10-08-2011:
  250. * WContainerWidget, WScrollArea, DomElement: use overflow-x and
  251. overflow-y CSS style since now well cross-browser supported (#830)
  252. * Dbo/Session: add forceReread parameter to load()
  253. * WLength: throw exception when unit is corrupt
  254. * WTreeTable: throw exception on contract abuse
  255. * examples/wt-homepage: Russian translation contributed by Dmitriy
  256. Igrishin
  257. 09-08-2011:
  258. * Wt.js: fix z-index for drag widget (#927)
  259. * WTreeView.js: fix column 0 resizing with total treeview regression
  260. * WFormWidget.C: do not allow editing when isReadOnly()
  261. * Dbo/ptr: fix ptr operator bool() loading the object (#909)
  262. * Dbo/CMakeLists.txt: support building and installing Wt::Dbo
  263. independently from Wt (#907)
  264. 05-08-2011:
  265. * WApplication: added a docRoot() method which returns the webserver
  266. document root
  267. 03-08-2011:
  268. * WMediaPlayer: new cross-browser, flexible, audio/video player widget
  269. * WHTML5Video, WHTML5Audio, WHTML5Media: renamed to WVideo, WAudio, WAbstractMedia
  270. * WSound, SoundManager: reimplemented using WMediaPlayer
  271. * WPopupMenu: new method setAutoHide() for automatic hide when
  272. the mouse leaves
  273. * WLink, ...: new utility class that abstracts a link destination (be
  274. it a URL, a WResource or an internal path)
  275. * WPopupMenuItem: new methods setLink() and setLinkTarget()
  276. associate a link with the popup menu
  277. 25-07-2011:
  278. * WPopupMenu, WPopupMenuItem: improved triggered() signal API and
  279. added setSelectable() signals
  280. 18-07-2011:
  281. * WMenuItem: fix takeContents() (#897)
  282. * WMenu, WMenuItem, WSubMenuItem: simplifiy internal path handling with submenus
  283. 15-07-2011:
  284. * examples/feature/broadcast: add an example that illustrates
  285. server push, WServer::post() and synchronizing a shared resource
  286. across sessions
  287. 14-07-2011:
  288. * fix min-width being ignored in layout managers
  289. * WDialog: implement setResiable() (#612)
  290. 12-07-2011:
  291. * collection: implemented count() method for relational
  292. collections (#882)
  293. 11-07-2011:
  294. * WFileUpload, WApplication: fix maximum request size and fileTooLarge()
  295. bugs (#794)
  296. * WTestEnvironment: add methods to test reentrant eventloops (#711)
  297. 08-07-2011:
  298. * Wt 3.1.10 !
  299. 07-07-2011:
  300. * Dbo: allow foreign key constraints to be passed to a
  301. primary key (that is also a foreing key)
  302. * Dbo: implement ostream<< for a ptr<C>.
  303. 06-07-2011:
  304. * Wt.js: fix HTML5 history spec weirdness with null state
  305. * WFileUpload: fix second upload() crash (#888).
  306. 04-07-2011:
  307. * WWebWidget: added childrenChanged() signal and use this in
  308. WMenu to track contents stack updates
  309. 29-06-2011:
  310. * WWidget: show/hide animations also work on FF5 now
  311. * WMenu: better handling of internal path changes to use best
  312. match (when components include more than one level)
  313. * WMenu: fix stateless slot learning issue with submenu items
  314. 28-06-2011:
  315. * Dbo/ptr: let modify() return a proxy mutator object which marks
  316. dirty from its constructor and destructor, ensuring that
  317. modifications are not lost in the case the session is flushed
  318. amidst a modification.
  319. 27-06-2011:
  320. * Dbo/collection: implement insert() and erase() for ManyToOne
  321. collections
  322. 24-06-2011:
  323. * WApplication: implemented changeSessionId() method, useful to
  324. mitigate session fixation attacks
  325. * WApplication: added removeMetaHeader() method
  326. * WFontMetrics: solve pango font-based metrics for cursive fonts
  327. * WTableCell, WTableRow, WTableColumn: add more convenience
  328. methods for navigating the row, column
  329. 23-06-2011:
  330. * WApplication: button img style to keep HTML4 behaviour of centering
  331. the icon vertically in the button
  332. * WWidget, WWebWidget, js/ToolTip: implement an XHTML tooltip using
  333. JavaScript
  334. * WTableView: fix setHeaderRowHeight() in plain HTML mode, other
  335. plain HTML style consistency improvements
  336. 19-06-2011:
  337. * collection: implement copy constructor which is needed for relational
  338. collections
  339. 14-06-2011:
  340. * WTemplate, WText: implement setInternalPathEncoding() method which
  341. encodes anchors with internal path references
  342. * WAnchor, ... resolve relative paths correctly when HTML5 History
  343. internal path implementations are used
  344. 30-05-2011:
  345. * WAbstractItemView, WTreeView: fix browser memory leaks of
  346. inline stylesheet definitions (#834)
  347. 27-05-2011:
  348. * WebRenderer, WebSession: better detection of IE9 and workaround
  349. its bugs (box-sizeing border-box)
  350. * WWebWidget: do not set an offset auto for IE (gets confused)
  351. 23-05-2011:
  352. * WTextEdit: implement missing toolBar() method
  353. * WCssDecorationStyle: fix operator= behaviour and unset properties
  354. (#816)
  355. 20-05-2011:
  356. * WServer, http: remove singleton objects to allow multiple
  357. WServer instances
  358. * WAbstractSpinBox: fix behaviour on IE
  359. * Wt.js: fix button up registration
  360. 19-05-2011:
  361. * WTextEdit: make all things configurable per instance (#801).
  362. 13-05-2011:
  363. * WebSession: relax needs for setting baseURL. Looks good !
  364. * WWidget, WAnimation: added animation options for setHidden(),
  365. and new methods animateShow() and animateHide()
  366. * WStackedWidget: added support for a transition animation
  367. * WDialog: added animation support for the dialog cover as well,
  368. and improved centering on IE (at least it seems to me ?)
  369. 06-05-2011:
  370. * WebSession: fix baseURL property usage and internal path
  371. inconsistencies
  372. * WObject: fixed memory leak (signal destroyed was never deleted)
  373. * WTreeTable: fixed progressive bootstrap behaviour
  374. * WTableView: pageSize is minimally 1
  375. * http/Connection: fix HTTP1.0 + continuations error (#810)
  376. * WTestEnvironment: fix reading from server_ = 0 bug
  377. 27-04-2011:
  378. * backend/Postgres: use actual autogenerated id field name instead
  379. of "id"
  380. 26-04-2011:
  381. * http/Connection: fix a leak in websocket sockets (file descriptors)
  382. * WLayout: added a clear() method which removes all contents
  383. * WDataSeries: fix setLabelColor() being ignored
  384. * Dbo/backend/Postgres: set client encoding to UTF8
  385. * WTable: added moveRow() and moveColumn() methods
  386. * WTableView: fix setColumnHidden() with headerColumns()
  387. * WebSession: use baseURL property for self-referencing URLs
  388. * WServer: post() with optional fallbackFunction that is called
  389. when the targeted session is dead (by Gaetano Mendola)
  390. 14-04-2011:
  391. * WAbstractArea: fix anchor not being deleted
  392. 13-04-2011:
  393. * WebSession: fix setting cookies when using websockets
  394. * WApplication: fix unload() interfering with session reload
  395. when reload-is-new-session is set to false
  396. * sqlite3: bump to version 3.7.6
  397. 12-04-2011:
  398. * WebSession, WebRenderer: handle WidgetSet session reloading
  399. 11-04-2011:
  400. * http/Configuration.C: fix missing --docroot segfault problem
  401. * web/WebRenderer: option to allow splitting skeleton file in an
  402. invariant and variant part (useful if refreshing frequently)
  403. * WGoogleMap: fix rendering in layout manager on webkit
  404. * WStreamResource: refactored WFileResource, contributed by Dmitriy
  405. Igrishin
  406. 07-04-2011:
  407. * 3.1.9: release time !
  408. 05-04-2011:
  409. * target/android, target/osx: starting to support these mobile targets
  410. * Ext/Calendar: set selected date on render
  411. 01-04-2011:
  412. * Chart/WChart2DRenderer.C: avoid clipping with WRasterImage backend of
  413. labels, titles by rendering in a wider box
  414. * WServer::post(): for lock-free event delivery to a session, instead of
  415. taking the WApplication::UpdateLock. Simplechat and codeview exapmles were
  416. adapted to use this approach.
  417. 29-03-2011:
  418. * WAbstractItemView: fix API usage when not rendered
  419. * WDate: patches from Gaetano Mendola w.r.t. invalid dates after month/year
  420. operations + isLeapYear() implementation
  421. 25-03-2011:
  422. * FontSupportPango: store leaky pango_font_map in thread local memory
  423. * WRasterImage: fix clipping problem with text rendering
  424. * W*Slider: fix 0 value and readonly attribute behaviour (#748, #749)
  425. * Wt.js: fitToWindow() when object is wider/taller than window (#766)
  426. * WebSession: support cookies in CORS (withCredentials flag)
  427. * Wt/WAxis: setResolution() implementation, contributed by Gaetano Mendola
  428. 23-03-2011:
  429. * target/osx: Add script to generate an OSX Framework for iPad/iPhone
  430. * Dbo/Query: fix limit_ and offset_ not being copied in copy constructor
  431. * Chart/WCartesianChart: allow custom color for a single bar in a bar
  432. series using BarPenColorRole and BarBrushColorRole data roles
  433. 21-03-2011:
  434. * Dbo/QueryModel: honour original limit() and offset()
  435. 25-02-2011:
  436. * WSpinBox, WDoubleSpinBox: separated integer from double spinbox,
  437. rewrite to take into account #737, #727, #721. Note that the API
  438. changed in several ways.
  439. 23-02-2011:
  440. * WRasterImage: implement drawImage() and improved text rendering,
  441. using libpango as font selector and glyph shaper, if available.
  442. * WPdfImage: use libpango for selecting (truetype) fonts, if available.
  443. 15-02-2011:
  444. * WebSession: support HTML5 History API for internal paths
  445. * wthttpd: a value for docroot like .:/css,/resources,/style is
  446. interpreted as defaulting to a deployed app except for the given
  447. paths, allowing deployment without ugly URLs (?_=)
  448. 12-02-2011:
  449. * WSubMenuItem: behave more consistently w.r.t selection (#694)
  450. 11-02-2011:
  451. * WString, WMessageResourceBundle: added i18n support for plural forms
  452. * WSlider: provide better CSS-ability and support for HTML5 input range
  453. native control
  454. 10-02-2011:
  455. * WRun(), WServer::addEntryPoint(): uses a boost::function for the
  456. application creator callback, so that you can bind additional arguments
  457. * WServer::initializeThread() a virtual method which can be used to
  458. initialize thread in a specialized WServer class (only for built-in httpd)
  459. 09-02-2011:
  460. * WTableView, WTreeView: renamed (and implemented for WTableView)
  461. setColumn1Fixed to setRowHeaderCount()
  462. 04-02-2011:
  463. * Released 3.1.8
  464. 28-01-2011:
  465. * Dbo: belongsTo() and hasMany(/* ManyToMany */) can now be passed
  466. foreign key constraints such as NotNull and OnDeleteCascade.
  467. 27-01-2011:
  468. * StdGridLayout: collapse paddings of empty items (affects all non-Ext
  469. layout managers)
  470. 25-01-2011:
  471. * Wt/Text/Renderer: warn but proceed when minimum render width exceeds
  472. page width
  473. * Wt/WPaintDevice: solve inconsistencies w.r.t. clear()
  474. * WebRenderer, WebSession, Boot.html: wait for stylesheets to load
  475. before loading widget tree in default bootstrap mode
  476. * WApplication: initial work for RTL layout, set using
  477. setLayoutDirection()
  478. 19-01-2011:
  479. * Wt/WPdfImage: add true type font support (libharu patch pending)
  480. * Wt/WApplication.C: fix #693
  481. (sloppy WApplication::internalPathMatches())
  482. * Wt/WBoostAny.C: add support for bool types (#690)
  483. * Boot.html, Hybrid.html: fix IE8 unreliable startup (occasional
  484. blank screen)
  485. 13-01-2011:
  486. * Wt/Chart/WCartesianChart: implement legend location, alignment,
  487. and styling options
  488. * Wt/Chart/WDataSeries: add setXSeriesColumn() to allow for
  489. individual X series per Y series in a scatter plot.
  490. 11-01-2011:
  491. * Wt/WAbstractItemView: implement setHeaderItemDelegate() and defer
  492. rendering of header cells to the item delegate; also added
  493. WStandardItemModel::setHeaderFlags() to allow configuration of
  494. header flags.
  495. 07-01-2011:
  496. * Wt/WAbstractItemView: implement scrollTo()
  497. * Wt/Dbo: support for bool types
  498. 06-01-2011:
  499. * Render/WTextRenderer, Render/WPdfRenderer: XHtml-to-(PDF) renderer.
  500. * Wt/WFontMetrics: font metrics info
  501. * Wt/WPaintDevice: add methods for font metrics
  502. * WLength: add a string-based constructors which parses a CSS
  503. length declaration like "50%"
  504. * WFont: the string-based constructor now parses #aabbcc and
  505. rgb(a,b,c) values into rgb components.
  506. * WWidget: added setHeight() and setWidth() methods
  507. 21-12-2010:
  508. * WAbstractItemView, WTableView, WTreeView: persist editors through
  509. model changes and avoid closing editors when something changes
  510. * WAbstractItemModel: clarify (and narrow down) usage of internal data
  511. in a model index so that views can keep their relaxed take on stale
  512. indexes.
  513. 16-12-2010:
  514. * WEvent: add eventType() method
  515. * wt-homepage, simplechat examples: show-case widget set mode
  516. * blog example: add archive
  517. * libwtwithqt: simplify implementation since notify() is now used
  518. more consistently by Wt
  519. * WObject: object ids are now seeded by a random start value, to
  520. allow mixing of several wt applications
  521. * WRasterImage: implemented a getPixel() method
  522. 08-12-2010:
  523. * WApplication: fix unload event interfering with session refresh
  524. * WebSession: handle session quit() during a websocket message
  525. * WRandom: moved high-entropy random generator to public API, and
  526. a utility method to create a random id
  527. * wt-homepage example: illustrate use of a cookie to persist logins
  528. across sessions
  529. 02-12-2010:
  530. * WebSession, WApplication, ...: support CORS (Cross-Origin Resource
  531. Sharing including IE's XDomainRequest and WebSockets), deprecated
  532. WApplication::setAjaxMethod() which is now chosen automatically
  533. and support request pref-flighting using OPTIONS.
  534. 01-12-2010:
  535. * WApplication, examples/wtwithqt/DispatchThread: attach the Qt
  536. thread only during event handling
  537. * Dbo/Session: add rereadAll() option to reread single table
  538. * WFileUpload: correctly handle non-ascii tokens in suggestFileName()
  539. 30-11-2010:
  540. * fixed a regression in layout managers, released as 3.1.7a
  541. 27-11-2010:
  542. * js/StdGridLayout.js: implement rowspan handling
  543. 26-11-2010:
  544. * released 3.1.7
  545. 24-11-2010:
  546. * WAbstractItemView: added support for column hiding
  547. 23-11-2010:
  548. * Chart/WCartesianChart: support ToolTipRole data using WAbstractArea
  549. areas
  550. 15-11-2010:
  551. * Dbo/Sesion: add rereadAll()
  552. * Wt.js: fix IE6-8 history management regression
  553. 10-11-2010:
  554. * QueryModel: setData() now converts the incoming type to the database
  555. field type (if possible), and also uses a transaction to persist the
  556. result (if not nested in another transaction)
  557. 08-11-2010:
  558. * WebSession: landed Web Sockets support, must be enabled in the
  559. configuration file
  560. 05-11-2010:
  561. * Wt.js: fix opera script loading indicating failure when loading from
  562. cache
  563. 02-11-2010:
  564. * WebSession: initialize() in first notify()
  565. * WStringUtil: fix a bug in widen() when the underlying conversion
  566. gives an error
  567. * build: fixes suggested by Pau
  568. 29-10-2010:
  569. * Wt 3.1.6 released
  570. 28-10-2010:
  571. * WebSession: use sequence instead of random numbers for resources
  572. * WebRenderer: be resilient to multiple GET requests for the main
  573. script
  574. * WApplication: unload() does not quite() when reload-is-new-session
  575. is disabled
  576. * WebRenderer: fix regression where timers are stopped by refreshing
  577. a session when reload-is-new-session is disabled
  578. 27-10-2010:
  579. * examples/feature/dbo: added examples from the Wt::Dbo tutorial
  580. * WPushButton: added setRef() and setResource() APIs to make a button
  581. behave like an anchor
  582. * WString::widen() and WString::narrow(): fix broken implementation
  583. 26-10-2010:
  584. * WMessageResourceBundle: better preservation of white-space when
  585. parsing the XML resource bundle
  586. 25-10-2010:
  587. * WFileUpload: added setMultiple() which alows multiple files to
  588. be uploaded at once (and demonstrate in composer example)
  589. * Http/Request: changed UploadedFileMap typedef from std::map to
  590. std::multimap
  591. * WAbstractItemView: added methods sortColumn() and sortOrder()
  592. 22-10-2010:
  593. * WFileUpload, WResource: support upload progress tracking (currently
  594. only with wthttpd)
  595. 21-10-2010:
  596. * various: support IE9 in IE9 document mode, enabling HTML5 features
  597. like canvas and disabling workarounds no longer needed -- hooray !
  598. 19-10-2010:
  599. * WPopupMenu: fix recycling of popup menu
  600. 18-10-2010:
  601. * WSignal: EventSignal::connect(): added an overload which accepts
  602. a JavaScript function, as a short-cut for JSlot when connection
  603. management is not needed
  604. * WSpinBox: a spin box is in the making
  605. * WApplication: deprecated getUpdateLock() in favour of the more
  606. conventional RIIA UpdateLock(WApplication *app) constructor
  607. * WebSession: do not access WebSession shared_ptr during ~WebSession
  608. but allow acquiring the update lock to fail instead when an application
  609. is slated for destruction (#564)
  610. * SyncLock: an adaptor for a Boost Mutex lock which avoids dead-locks
  611. when used while holding an application lock
  612. 15-10-2010:
  613. * WApplication: addMetaHeader() allows now to set http-equiv meta
  614. headers and override the X-UA-Compatible meta header
  615. 14-10-2010:
  616. * WWebWidget: reimplemented buggy clear() optimisation.
  617. 12-10-2010:
  618. * WBoostAny: added registerType<Type>() method to register
  619. new types for boost::any support by standard item views.
  620. 11-10-2010:
  621. * Dbo/WtSqlTraits, Dbo/backends: added support for WTime
  622. * Dbo/QueryModel: added support for customized header data, and
  623. option for setQuery() to keep the current columns.
  624. * js/StdGridLayoutImpl: use parent node geometry for detecting need
  625. for relayout, fixes IE7+ behaviour
  626. 07-10-2010:
  627. * WTableView, WTreeView, *ProxyModel: shift model indexes only after
  628. the source model has inserted or removed rows, see bug #546
  629. * WProgressBar: added valueChanged() and progressCompleted() signals,
  630. from Omer Katz.
  631. 05-10-2010:
  632. * CMakeLists.txt: patch for gentoo, make many things optional which
  633. can be enabled or disabled explicitly regardless of whether the
  634. libraries and header files for it are found
  635. 01-10-2010:
  636. * WebController, WebSession: use shared_ptr for WebSession to resolve
  637. concurrency bug #544
  638. * Wt::Dbo: use a spirit based parser for sql queries to handle more
  639. complex queries like 'WITH ... SELECT ...' syntax, but also with
  640. complex aggregate functions in the SELECT clause.
  641. 28-09-2010:
  642. * WDatePicker: add setGlobalPopup() method which can be used to avoid
  643. clipping problems on a date picker
  644. * WDatePicker: add setPopupVisible() method
  645. * Http/Request: add getRanges(), parsing the HTTP 1.1 Ranges header
  646. * Http/Response: add setContentLength() allowing you to specify the
  647. content length.
  648. * WFileResource: support ranges to return partial file contents.
  649. 27-09-2010:
  650. * WMenuItem: destructor now cleans up properly
  651. * all connectors: consider appRoot as the location for the
  652. wt_config.xml file and provide ways to configure appRoot for
  653. wthttp and fastcgi connectors.
  654. 22-09-2010:
  655. * WProgressBar: based on a contribution by Thomas Suckow.
  656. 21-09-2010:
  657. * WRegExpValidator, WSortFilterProxyModel: support case-insensitive
  658. regular expressions
  659. * WSuggestionPopup: optimized behaviour w.r.t server-side and
  660. client-side filtering
  661. 20-09-2010:
  662. * WApplication: added makeAbsoluteUrl() method.
  663. * WPopupMenuItem: support setDisabled().
  664. 16-09-2010:
  665. * WPaintDevice: remove paintFlags() method; PaintUpdate is a property of
  666. the painted widget, and no longer something which has to do with
  667. WPainter. In this we revert to the old behaviour of supporting multiple
  668. WPainters on a single paint device in turn.
  669. 14-09-2010:
  670. * Wt.js: fix JavaScript memory leak after learning about the
  671. surprising JavaScript scoping rules
  672. * WApplication: add unload() and setConfirmCloseMessage() to handle the
  673. event of the user closing the window respectively have a confirmation
  674. * WInteractWidget, WMouseEvent: add mouseWheel() event
  675. * WTabWidget: fixed polished style close icon, and wrapping to next line
  676. if having many tabs
  677. * WFormWidget: implement hasFocus()
  678. * WLineEdit, WTextArea: implements methods for retrieving cursor
  679. position and current selection
  680. 08-09-2010:
  681. * WCheckBox: better tri-state support, using opacity: 0.5 as
  682. workaround instead of an image
  683. 07-09-2010:
  684. * WBoxLayout, WGridLayout: improved client-side performance by
  685. selectively doing relayout
  686. * WDate, WCalendar, WDatePicker, ...: support i18n through built-in
  687. message resource bundle and get rid of ugly i18n bool in API
  688. 23-08-2010:
  689. * fcgi: fix connector when using WDialog::exec() or server push
  690. (this is broken in 3.1.4!)
  691. * WSocketNotifier: finally (!) this beast works as advertised
  692. 10-08-2010:
  693. * isapi: various improvements
  694. * WSignal: SLOT/slots macro can be disabled using -DWT_NO_SLOT_MACROS
  695. * examples: cleanups to use appRoot() and no longer use SLOT() macro
  696. 02-08-2010:
  697. * WBatchEditProxyModel: a model that caches editing until submitted
  698. in batch (or reverted)
  699. * Dbo/QueryModel: remove edit strategy, this is now handled by
  700. WBatchEditProxyModel
  701. * WModelIndex: clarify usage when model rows/columns shift, implement
  702. in-place toRaw/fromRaw conversion
  703. * WDialog: add titleBar() to access the title bar
  704. 30-07-2010:
  705. * Dbo/Query: support 'select distinct/all' syntax, and case-insenstive
  706. query parsing
  707. 29-07-2010:
  708. * WSuggestionPopup: misc improvements to server-side filtering, fixing
  709. rendering glitches
  710. * examples/feature/suggestionpopup: example demonstrating WSuggestionPopup
  711. features
  712. 27-07-2010:
  713. * WRasterImage: Graphicsmagick backend implementation for WPaintDevice,
  714. sponsorted by Eurofer, can be used for PNG, GIF, etc... output
  715. 22-07-2010:
  716. * WPdfImage: PDF backend implementation for WPaintDevice,
  717. sponsored by Eurofer.
  718. * http/Reply.C: enable compression for image/svg+xml mime-type.
  719. * WInteractWidget: suppress click and double click mouse events when
  720. disabled
  721. 20-07-2010:
  722. * Wt/WTreeNode: added insertChildNode(), as suggested by
  723. Aleksey Chirkin
  724. 19-07-2010:
  725. * isapi: added a (first implementation) of an ISAPI connector,
  726. which provides native support in Microsft IIS.
  727. * WebSession: fix one possible race condition, and one possible dead-lock
  728. when grabbing the session lock
  729. * Dbo/QueryModel: implement write support (setData(), insertRows(),
  730. and removeRows())
  731. 15-07-2010:
  732. * Wt::Dbo: adds support for natural keys, including composite
  733. keys, custom id and version field names, and foreign key
  734. constraint definition that is compatible with mysql's broken sql.
  735. * Wt::Dbo: Dbo base class is now changed to Dbo<C> template
  736. class to take into account customizable id type.
  737. 14-07-2010:
  738. * resizable layout managers: reset total width percentage of all
  739. remaining columns to 100
  740. * WCanvasPaintDevice: fix transformation bug
  741. 07-07-2010:
  742. * examples/feature/serverPush: fix WIN32 build problem
  743. * Chart/WCartesianChart: fix clipping margin glitch
  744. * Dbo/QueryModel: fix missing implementation fields() method
  745. * WAbstractToggleButton: fix disabled/readonly properties #423
  746. * WApplication: useStyleSheet(): allow media to be specified
  747. * WCanvasPaintDevice: fix font rendering glitch
  748. * WTableView: improved keyboard navigation through editors
  749. 30-06-2010:
  750. * WTabWidget, WMenu: support for closing, hiding and disabing
  751. items, contributed by Dmitriy Igrishin
  752. * Wt::Dbo: fix boost::optional<T> support
  753. * WAbstractItemView: build fix for MSVC in non-Latin locales
  754. * WAbstractItemModel: copyData() does first nullify existing data
  755. * WSuggestionPopup: fix bug in handling of model row removal
  756. * WWebWidget, WebRenderer: fix statelss slot learning bug when a
  757. stubbed widget is affected (see treelist example)
  758. * WWebWidget: fix addStyleClass(), removeStyleClass()
  759. implementations with force=true (from Dmitriy Igrishin)
  760. * WTableView: improved handling of arrow keys for navigating editors
  761. 10-06-2010:
  762. * WTableView, WTreeView: workaround IE bug w.r.t. white-space: nowrap
  763. * Chart/WCartesianChart: added createLegendItemWidget() to paint the
  764. legend item outside the chart
  765. * WItemDelegate, WAbstractItemView: add support for validation
  766. * WBorderLayout: add missing setSpacing() method to control internal
  767. spacing
  768. * WWidget: addStyleClass() and removeStyleClass() (finally!)
  769. * WContainerWidget: workaround scrolling bug in IE caused by
  770. position: relative
  771. * WEnvironment: agent() and agentIsXXX() methods
  772. * WSvgImage: give in to inkscape's CSS font needs
  773. * WHTML5Video, WHTML5Audio: HTML5 video and audio support
  774. * WSuggestionPopup: implement explicit trigger (icon, key down)
  775. * WTreeNode: support selection by click on whole row
  776. * WWebWidget: added doJavaScript()
  777. * examples/blog: improved support for MSVC builds, new feature allowing
  778. profile editing
  779. * examples/feature/serverpush: simple example illustrating use of
  780. server push
  781. 20-05-2010:
  782. * build: added support for cygwin
  783. 19-05-2010:
  784. * WMenu: fix first selection not emitting internal path change (dmitry)
  785. * WTableView: properly react to model changes
  786. * WItemDelegate: explicit focus support
  787. 18-05-2010:
  788. * Chart/WChart2DRenderer: fix rendering glitch when rendering grids
  789. 13-05-2010:
  790. * WInteractWidget: added mouseDragged()
  791. * WApplication: added addMetaHeader()
  792. 10-05-2010:
  793. * WTableView: now supports (almost) same API as WTreeView, with the
  794. similar style, but better performance for tabular data.
  795. * WTableView, WTreeView, WAbstractItemView: support non-AJAX rendering
  796. using a paging bar.
  797. * WAbstractItemDelegate, WItemDelegate, WAbstractItemView:
  798. supports editing
  799. * Dbo/QueryModel: a Wt model for viewing data from a Dbo::Query
  800. result (a first version).
  801. * Dbo/SqlTraits: sql_result_traits was renamed to query_result_traits,
  802. and its API updated to allow more robust query creation and result
  803. interpretation as a list of boost::any's
  804. * Signal: SignalBase and EventSignalBase are now documented API
  805. * WFlashObject: reimplemented: no longer relies on JavaScript to load
  806. the flash movie. WFlashObject no longer uses SwfObject.js. The objects
  807. will also be resized when inserted in a layout manager.
  808. * WHTML5Video: HTML-5 video implementation, will become part of
  809. generic video support later
  810. * http/Reply.C, http/StaticReply.C: support for http range header
  811. and partial content
  812. * web/CgiParser.C: fix parsing logic error for multi-part/formdata
  813. 28-04-2010:
  814. * WTimer: implement singleShot(f) with f a function object variant
  815. 21-04-2010:
  816. * WMenu: support usage without contentsStack_
  817. * rapidxml.hpp: fix bug #344 (some special entity characters not being
  818. handled properly)
  819. * examples/planner: new example illustrating simple dbo usage
  820. 20-04-2010:
  821. * Dbo/SqlConnectionPool, Dbo/FixedSqlConnectionPool: connection pool
  822. implementations
  823. * Dbo/Query: support for several bind strategies, including a new
  824. DynamicBinding strategy which supports incremental query
  825. specification
  826. * Dbo/Session: add execute() method for executing SQL that does not
  827. return results
  828. 08-04-2010:
  829. * Http/Request: added headerValue()
  830. 07-04-2010:
  831. * WSuggestionPopup: add setFilterLength() and filterModel() methods
  832. which allow for server-side filtering based on initial input. Also
  833. support setMaxSize() to specifiy maximum height of the popup and
  834. scrolling through the list of suggestions
  835. 30-03-2010:
  836. * WPanel: make titleBarWidget() public
  837. 26-03-2010:
  838. * Wt/WShadow, Wt/WPainter: add support for drop shadows
  839. * Wt/Chart/WDataSeries, Wt/Chart/WChart2DRenderer: add support for shadows
  840. 25-03-2010:
  841. * Wt/Dbo/backend: provide generic properties() and API clean-ups
  842. 24-03-2010:
  843. * Wt/Dbo/Query: also support queries without 'from' or 'select'
  844. * Wt/Dbo/DbAction.C: create indexes on join table for each referenced
  845. table id
  846. * Wt/Dbo: support schema-qualified tables
  847. 23-03-2010:
  848. * Wt/Dbo/Postgres, Wt/Dbo/Sqlite3: add proper support for dates,
  849. time stamps, binary blobs, var chars
  850. 19-03-2010:
  851. * WCheckBox, WRadioButton: fix inconsistencies when setting style
  852. attributes and they have a non-empty label
  853. 15-03-2010:
  854. * Dbo/backend/Postgres: a PostgreSQL backend, contributed by Hilary
  855. Cheng
  856. 12-03-2010:
  857. * EscapeOStream, WSvgImage: a host of performance improvements by
  858. tossing away stringstream in favour of a simple SStream
  859. * WWidget: add setLayoutSizeAware() and layoutSizeChanged() methods
  860. 08-03-2010:
  861. * WResource: add setInternalPath() to deploy a resource at a
  862. deterministic URL
  863. 05-03-2010:
  864. * WebSession: add support for http PUT/DELETE methods.
  865. * src/Http/Request: add method() to access request method
  866. * src/Http/Response: add setStatus() to set the response status
  867. 03-03-2010:
  868. * WCalendar: add HorizontalHeaderFormat enum (long day name support),
  869. currentPageChanged signal, clicked signal, activated signal,
  870. SelectionMode enum (NoSelection mode support), renderCell() virtual
  871. method
  872. 01-03-2010:
  873. * WGridLayout, WBoxLayout: add support for user resizing ('splitter')
  874. functionality
  875. * WTreeView, WGridLayout: externalize JS
  876. 25-02-2010:
  877. * src/Wt/WString: fix narrow() and widen() character encoding
  878. conversions
  879. * http connector: spool large POSTs to a temporary file instead
  880. of in-memory, and avoid extra copies
  881. * web/CgiParser.C: skip large file uploads entirely (instead of
  882. erroneously buffering them to memory)
  883. 22-02-2010:
  884. * Dbo/StdSqlTraits: support float and double
  885. * WApplication: missing initialization messes up refresh() by reload
  886. * WPainter: now has defined behavior when missing horizontal or vertical
  887. alignment flags in drawText()
  888. 18-02-2010:
  889. * web/EscapeOStream.C: fix build error on MSVC
  890. * Wt 3.1.1 released
  891. 12-02-2010:
  892. * mxml: replace mxml with an (adapted) rapidxml browser.
  893. 28-01-2010:
  894. * Ext/Container.C, WStackedWidget.C: fixed behavior in combination
  895. with layout managers
  896. 25-01-2010:
  897. * WTreeView.C: simplified column resize handling code
  898. 22-01-2010:
  899. * WCanvasPaintDevice: Use HTML5 native canvas text when available
  900. 21-01-2010:
  901. * WSuggestionPopup, WTree, WTreeNode, & co: make CSS themed
  902. 18-01-2010:
  903. * Dbo: additional optional parameter to hasMany() allows the
  904. definition of the joinId in the joinTable (you need this if you
  905. are doing Many-to-Many between the same table).
  906. * WDateTime, WTime: fix AM/PM parsing problem
  907. * Dbo/SqlStatement: explicit null binding, since SQLite3 does not
  908. reset bindings on reset()
  909. * WTreeView: fix ite column 0 changing
  910. 12-01-2010:
  911. * WTemplate: do not rerender bound widgets when rerendering the
  912. template if the widget was already rendered
  913. 11-01-2010:
  914. * themes/polished: several improvements
  915. * WPanel, WCalendar, WDatePicker, WDialog: improved theme support
  916. * WTreeView: several bug fixes and improved IE bug workaround support
  917. 05-01-2010:
  918. * Chart/WAxis: added setLabelFont(), labelFont() methods
  919. * WTreeNode: fix selection handling when removing and readding a node
  920. * Boot.html, Hybrid.html: fix an XSS vulnerability arising from the
  921. internal path
  922. 04-01-2010:
  923. * Wt.js, CommAjax.js, CommScript.js: support communication problems
  924. by retrying with exponential back-off
  925. 31-12-2009:
  926. * Dbo: quote all identifiers
  927. * WContainerWidget: support resetting a layout manager
  928. 29-12-2009:
  929. * Release 3.1.0, after some more bug fixes
  930. 22-12-2009:
  931. * Ext/FormWidget: add changed(), blurred() and focussed() signals
  932. 21-12-2009:
  933. * WTemplate: add handleUnresolvedVariable() from Maurice Gittens
  934. * WMenu: sanitize internal path handling
  935. * documentation: integrate asciidoc and doxygen in CMake (target
  936. 'doc'), and improve Wt::Dbo documentation
  937. 18-12-2009:
  938. * WTreeView: fix treeview column add/remove glitches with column 1 fixed
  939. 17-12-2009:
  940. * WSlider: correct upside down behavior of WSlider, use more accurate
  941. position handling
  942. 15-12-2009:
  943. * Wt/Dbo: new C++ ORM layer
  944. * test/: automated test suite (for non-GUI features)
  945. * src/Wt/WTemplate: new XHTML template-based widget
  946. * examples/blog: new example that implements a blog using Wt and
  947. Wt::Dbo
  948. * src/Wt/WDateTime, src/Wt/WTime: date time and time classes
  949. 15-12-2009:
  950. * CMakeLists.txt: add XML_FEATURES option which can be used to disable
  951. the (mini-)XML library
  952. 11-12-2009:
  953. * WPaintedWidget, Ext::Container: properly react to resizes within
  954. a Wt layout manager, both width and height
  955. * StdGridLayoutItem.C, Ext::Widget: concatenate html and body style
  956. classes to not have interference
  957. 09-12-2009:
  958. * WDataSeries: added setHidden(bool) and isHidden()
  959. * WCartesianChart: added renderLegendIcon()
  960. * WTextEdit: fix updating of contents
  961. 07-12-2009:
  962. * WWidget: added isRendered(), let widgets keep track of being rendered
  963. * WSignal: added connect(Function& f) method
  964. 04-12-2009:
  965. * src/web/skeleton/Wt.js: added getSelectionRange and setSelectionRange
  966. utility functions for line edits and text areas
  967. 30-11-2009:
  968. * src/mxml: updated to an unmodified mxml-2.6 (which includes our bug
  969. UTF-8 bug fixes)
  970. 25-11-2009:
  971. * all: added support for CSS-based themes.
  972. * WAbstractItemModel, WAggregateProxyModel, WTreeView: addded support
  973. for drilling down through treeview columns
  974. * WSlider: added sliderMoved() signal
  975. * Chart/WAxis: added setAutoLimits() and autoLimits() methods, and have
  976. maximum() and minimum() return computed values
  977. * Chart/WCartesianChart: use MarkerPenColorRole and
  978. MarkerBrushColorRole to override colors for markers per data point
  979. * WCanvasPaintDevice: several improvements for outputting more
  980. concise JavaScript rendering statements
  981. * WWidget: add find() method to find a widget with a particular
  982. objectName()
  983. * WFileUpload: fileTooLarge() signal now propagates within the
  984. event loop
  985. 10-11-2009:
  986. * Chart/WCartesianChart, Chart/WDataSeries: added mapFromDevice() and
  987. mapToDevice() methods.
  988. 03-11-2009:
  989. * WTreeView: fix for adding a first row to an otherwise empty model
  990. (from Guy De Leeuw)
  991. 03-11-2009:
  992. * 3.0.0: released!
  993. 21-10-2009:
  994. * WMenu: set correct internal path before loading a menu item
  995. 09-10-2009:
  996. * WAxis: add TimeDateScale to AxisScale enum
  997. 28-09-2009:
  998. * WCartesianChart: seriesIndexOf() is now private
  999. * WebRenderer: several small fixes for the hybrid bootstrap
  1000. 23-09-2009:
  1001. * WTableView: table_ is now private and a protected getter table() was
  1002. added
  1003. 18-09-2009
  1004. * Wt.js: cancelEvent() includes an option to only include cancelling
  1005. propagation or the default action
  1006. * WResource: add setChanged() and url() methods which are more
  1007. useful than the generateUrl() method
  1008. * http/RequestParser: fix possible shared_ptr corruption issue
  1009. reported by David Galicia
  1010. * WCssDecorationStyle: add method for WResource as background
  1011. image
  1012. * JSlot: fix internal consistency problem when connecting same
  1013. JSlot to same signal twice
  1014. * JSlot::exec() now takes parameters for object and event
  1015. * WTreeView: fix vertical scrolling showing mis-aligned columns
  1016. when column 1 is fixed
  1017. 15-09-2009:
  1018. * WWidget: move WFormWidget::setEnabled() to WWidget::setDisabled(),
  1019. allowing all widgets to be set enabled or disabled.
  1020. * WWidget: isVisible() and isEnabled() reflect the computed visibility
  1021. respectively being enabled taking int account ancestors settings
  1022. * WWidget: added setHiddenKeepsGeometry(), which uses css visibility
  1023. for setHidden()
  1024. 03-09-2009:
  1025. * WDialog, Ext::Dialog, and related: allow for multiple modal dialogs
  1026. and nested exec() calls.
  1027. * Boot.html, Hybrid.html: add a loadScript() method to defer loading of
  1028. user JavaScript
  1029. 01-09-2009
  1030. * WDatePicker: Use 'positionAtWidget' to make sure the widget
  1031. is rendered visible even if at bottom of page (folds up instead of down)
  1032. * WDialog: Fix JavaScript positioning for IE6
  1033. * WFileUpload: Fix empty file regression (#53)
  1034. 31-08-2009
  1035. * Wt.js: fix server push mayhem
  1036. * WTreeView: fix autoJavaScript performance
  1037. * Wt.js: fix mouse capture on IE, fix mouse capture of mouse up when
  1038. dragging outside the window
  1039. * Wt.js: fix synchronisation issue with 'load' request and loading
  1040. of JS libraries
  1041. * Wt.js, DomElement: use setExpression() to set a CSS expression
  1042. (for min/max-width)
  1043. * WApplication: fix conditional stylesheet condition parse error
  1044. with 'gte' expression
  1045. 26-08-2009
  1046. * Wt.js: attach mouse grab events to body using DOM event
  1047. capture
  1048. * HybridBoot.html, WebSession, WebRenderer: assimilate new
  1049. bootstrap method with a refactoring, make it all a bit less
  1050. stateful
  1051. * WApplication: notify() can now be used as a generic request
  1052. handling point where you grab and free request-specific
  1053. resources
  1054. 22-08-2009
  1055. * fcgi/Sever.C: make multi-threaded, using the <num-threads>
  1056. number of threads
  1057. 19-08-2009
  1058. * ProgressiveBoot.html, WebSession, WebRenderer: a new bootstrap
  1059. method has been added which implements the principle of
  1060. "progressive enhancement"
  1061. * WebSession, Boot.html: avoid one extra round-trip when
  1062. redirecting to the canonical URL.
  1063. * Plain.html: better SEO: do not render the form to a spider engine
  1064. 18-08-2009
  1065. * WWidget: add boxPadding() and boxBorder() methods, which are
  1066. used by the layout managers to correct for built-in borders and
  1067. paddings of form widgets
  1068. * WComboBox: listen to layoutChanged()
  1069. 06-08-2009
  1070. * WGoogleMap: add setCenter() method without zoom argument, change
  1071. myHtml argument to WString
  1072. 01-08-2009
  1073. * WLineEdit: work around IE's inability to change <input> type
  1074. attribute
  1075. * DomElement, WebRenderer, EscapeOStream: use IE alternative
  1076. createElement() which also sets all attribute values, and thus
  1077. saves JavaScript calls
  1078. * StdGridLayoutImpl, StdWidgetItemImpl: fix IE glitches in
  1079. layout managers
  1080. 31-07-2009
  1081. * WCssDecorationStyle: add custom cursor image functionality
  1082. 23-07-2009
  1083. * WApplication: simplified the semantics of internal path API signal
  1084. internalPathChanged(). You may still use the old behavior by
  1085. defining the property oldInternalPathAPI.
  1086. 20-07-2009:
  1087. * WAxis: fix crash when dealing with negative values and a logscale axis
  1088. 17-07-2009:
  1089. * WServer, WGlobal: move WServer::Application and WServer::WidgetSet to
  1090. global enum
  1091. * WAbstractToggleButton.C: put label inside a <span> so that it works
  1092. as expected when used within a layout manager
  1093. * Test/WTestEnvironment: test environment, for instantiating
  1094. WApplication instances usable for (unit) tests
  1095. 06-07-2009:
  1096. * WGridLayout, WBoxLayout, WTabWidget: better documentation that
  1097. discusses how to set contents with 100% height.
  1098. 29-06-2009:
  1099. * JSlot: fix exec() call as suggested by Adrian Sutherland
  1100. 25-06-2009:
  1101. * WCanvasPaintDevice, WSvgImage, WVmlImage: string -> stringstream
  1102. optimizations
  1103. * WTableCell: fix vertical component of content alignment
  1104. * WModelIndex: fix operator== to not use memcmp() since this gets
  1105. into trouble with struct padding bytes
  1106. 19-06-2009:
  1107. * Chart/WAbstractChart: react well to modelReset() and
  1108. modelLayoutChanged()
  1109. * WCheckbox, WRadioButton: internal cleanup and simplifications
  1110. * WButtonGroup: added checkedChanged() signal
  1111. * WIntValidator: allow entry of +/- signs
  1112. 15-06-2009:
  1113. * WGlobal: fix Horizontals = Left | Right and Verticals = Top | Bottom
  1114. * WPanel: clear the title bar
  1115. * DomElement: fix an unstubbing regression with ExtJS widgets
  1116. * Wt.js: fix server push + JSignal.emit()
  1117. * WGlobal: fix doxygen for WFlags masks
  1118. * http/Server.C: avoid http/https accept() to abort on Win32
  1119. * WResource, WFileResource: fix continuation + suggested filename
  1120. data corruption, and implement WFileResource::setBufferSize()
  1121. 10-06-2009:
  1122. * WRectF: added isEmpty() method, removed isNull() method
  1123. 09-06-2009:
  1124. * WEnvironment: added headerValue method
  1125. 08-06-2009:
  1126. * WPoint, WPointF, WLineF: removed obsolete isNull methods
  1127. 02-06-2009:
  1128. * WAbstractItemDelegate, WItemDelegate: new classes to which the
  1129. rendering of a model item is delegated.
  1130. * WTreeView: use WAbstractItemDelegate and WItemDelegates, and
  1131. API to customize the used item delegate class.
  1132. * WWidget: add setSelectable() method which can enable or disable
  1133. the rendering of the browser's default text selection handling
  1134. 29-05-2009:
  1135. * fcgi/Server.C: build fixes for FreeBSD and OpenSolaris
  1136. * fcgi/Server.C: implement a (mostly stub) WServer implementation
  1137. * Http/Response: add continuation() method to get a continuation
  1138. created for the response.
  1139. 28-05-2009:
  1140. * WMenu: show vertical scrollbar when needed
  1141. * WGridLayout: support row stretch value of -1, like 0, but
  1142. indicates that height of cell contents for that row still needs to
  1143. be managed
  1144. * DomElement.C: fix IE6 min/max-width workaround bugs
  1145. * WStackedWidget: make behave well in layout managers
  1146. * WPainter::Image: add constructor that fetches image dimensions
  1147. from file (from Daniel Derr)
  1148. * DomElement.C: fix style.float -> style.cssFloat or
  1149. style.styleFloat property
  1150. 26-05-2009:
  1151. * WebRenderer, Configuration, WebSession, http/WServer: add support
  1152. for a favicon per EntryPoint, and in general for a favicon not in
  1153. "/favicon.ico"
  1154. 18-05-2009:
  1155. * WAbstractItemModel: add reset() method and modelReset() signal, which
  1156. are used to invalidate the whole model. Adjusted the views to listen
  1157. to this signal, and make WStandardItemModel::clear() call reset()
  1158. * Ext/ToolBar: implement addStretch()
  1159. * WPaintedWidget, WPaintDevice: support PaintUpdate flag which does
  1160. not erase the painting but merely adds to it
  1161. * WTreeView: fix setColumnWidth() for column 0 bug,
  1162. setSortingEnabled() when no model yet set bug, column removal
  1163. behavior bug, JavaScript error when no column sort/resize handles
  1164. * StdGridLayoutImpl, WStackedWidget: make WStackedWidget manage
  1165. children height actively when in a layout manager
  1166. * WebSession: make server push survive refresh(), and fix cookie
  1167. support detection regression
  1168. * WApplication.C: fix expose logic for widgets removed from the
  1169. widget tree
  1170. * WCssDecorationStyle: WBorder::None is not always default
  1171. 11-05-2009
  1172. * WDate: refactor modifiedJulianDate() to toJulianDate(), replaced
  1173. modifiedJulianDate constructor to static fromJulianDate function
  1174. 05-05-2009
  1175. * WebSession: fix WApplication::attachThread(), simplify use of
  1176. thread specific storage
  1177. 04-05-2009
  1178. * WString: do not assume a message resource bundle as localized
  1179. strings
  1180. * Wt.js: fix empty line edit regression
  1181. * WCalendar: setSingleClickSelect()
  1182. * WEnvironment: getDeploymentPath()
  1183. 23-04-2009:
  1184. * WCheckBox, WAbstractToggleButton: tri-state checkboxes
  1185. * WAbstractItemModel, WModelIndex, WStandardItem: support
  1186. tri-state checkboxes (ItemIsTriState ItemFlag)
  1187. 22-04-2009:
  1188. * WebRenderer: keep iterating the update map as long as render()
  1189. calls add new widgets to it
  1190. 21-04-2009:
  1191. * WFormWidget: add setReadOnly(), isReadOnly() methods
  1192. * WTimer.C: fix multiple signals firing when stopping and
  1193. restarting, and use client-side repetition if the signal is not
  1194. exposed
  1195. * WFileUpload: deprecated isUploaded(), new method canUpload()
  1196. 16-04-2009:
  1197. * WApplication, WDialog: simplify dialog rendering, allow
  1198. (multiple) non-modal dialogs (WDialog::setModal(false)), allow
  1199. dialogs to be moved around by dragging in the title bar
  1200. * WWebWidget: saner handling of z-index, only apply IE6 shim to DIVs
  1201. * WPaintedWidget: fix use of WImage for WAbstractArea's
  1202. * WImage, Wt.js: fix position reporting in mouse events from
  1203. WAbstractArea's in non-compliant browsers (all except for Firefox)
  1204. 07-04-2009:
  1205. * Ext/FormField: add setFocus() method
  1206. 30-03-2009:
  1207. * WEnvironment.C, WebSession.C, wt_config.xml: allow configuration
  1208. of AJAX-capable user agents and bots in configuration file
  1209. * Configuration.C, wt_config.xml: synchronize configuration
  1210. defaults. WARNING: default settings have changed! (see
  1211. wt_config.xml what the default values are)
  1212. * WTabWidget.C: use a layout manager to manage vertical height
  1213. * WLabel.C: fix bug with placement of image and add option to place
  1214. image to left or right of label text
  1215. * WDatePicker.C: implement setEnabled()
  1216. * WT_SERIES, WT_MAJOR, WT_MINOR, WT_VERSION: change to hexadecimal
  1217. format for preprocessor defines
  1218. * Ext/TableView.C: fix access to null dataStore_
  1219. 26-03-2009:
  1220. * Fixed cookie handling. Cookie parser is now less strict, and cookie
  1221. values are URL encoded, similar to PHP. Fixed setting multiple
  1222. cookies.
  1223. 24-02-2009:
  1224. * WWebWidget: implement a real propagateRenderOk() that does not
  1225. cause render() of children widgets of stubbed widgets
  1226. * WTreeView: move JavaScript around that assumes jsRef() exists
  1227. * WGoogleMap: fix require() dependency
  1228. * install: do not overwrite existing configuration file wt_config.xml
  1229. 20-03-2009:
  1230. * WFormWidget: refuse to give focus to a disabled widget
  1231. * Wt.js: make sure updated autoJavaScript() is executed by onresize
  1232. handler
  1233. 19-03-2009:
  1234. * WGoogleMap: fix require() to depend on google.load
  1235. * filetostring: removed in favor of a CMAke-only solution
  1236. * simplechat: improve its behaviour
  1237. * WebSession/WebRenderer: update the form object list after
  1238. each event since it may contain stale objects
  1239. 17-03-2009:
  1240. * Fixes for cookie parser
  1241. * Send along form values and hash in each 'update', and keep
  1242. JavaScript updates around until acknowledged by the browser
  1243. (avoids loss of updates especially for server push situations)
  1244. 16-03-2009:
  1245. * fixed build errors and warnings on Sun Studio and Visual Studio
  1246. * WSignal: remove EventSignal<void> specialization, use
  1247. EventSignal<> everywhere
  1248. * add WT_NO_BOOST_INTRUSIVE compile option to use std::list instead
  1249. of boost::intrusive::list (needed for Sun Studio)
  1250. * WTableColumn, WTableRow: support for custom id's with setId()
  1251. * WViewWidget: fix interference problem with stateless slot learning
  1252. * WWebWidget: complement quickPropagateRenderOk() with a clean
  1253. rerender of itself
  1254. * Configuration.C: add option inline-css useful to disable inline
  1255. CSS stylesheets, in case you prefer all of them in an external style
  1256. sheet
  1257. * WTableCell, WDomElement: support colspan/rowspan as properties
  1258. * WTable.C: fix rendering problem for th/td reordering
  1259. * WebRenderer: WLoadingIndicator: fix rendering and stateless slot
  1260. learning interference
  1261. * WebSession: avoid superfluous 'none' request
  1262. 11-03-2009:
  1263. * WPushButton: allow line breaks in text using ('\n')
  1264. * WebController: fix widget set mode (default entry path parsing)
  1265. * CMakeLists.txt: also install Http/ directory
  1266. * XSSFilter: refactored
  1267. * WAbstractTableModel: new abstract model class
  1268. * WebSession: simplify session locking (and fix reentrant event
  1269. loop memory corrouption)
  1270. 06-03-2009:
  1271. * win32: fix build problems
  1272. * WMemoryResource: change API to unsigned char
  1273. 03-03-2009:
  1274. * WFileUpload.C: emit uploaded() signal in event loop.
  1275. 27-02-2009:
  1276. * WApplication.C, WebSession.C, Wt.js: finally a robust and simple
  1277. server-push implementation instead of orbited
  1278. * WMenu.C, WTabWidget.C: simplify CSS (better IE workaround)
  1279. * WCssDecorationStyle, WGlobal, WText, Ext/TableView: remove
  1280. deprecated enums and methods
  1281. * WButtonGroup: make API more complete
  1282. * WDatePicker: provide default constructor
  1283. * fcgi/FCGIStream.C: make FCGI connector work again in new branch
  1284. * lots of documentation updates
  1285. 24-02-2009:
  1286. * WOverlayLoadingIndicator.C: fixes for IE8 and opera
  1287. 23-02-2009:
  1288. * WAbstractItemModel.C, Wt.js: fix IE date propagation problem
  1289. * WLineEdit.C, WTextArea.C: do not set style classes when no validator
  1290. is configured
  1291. * WSocketNotifier.C: fixes for boost >= 1.36 (does not work yet
  1292. for win32)
  1293. 02-02-2009:
  1294. * fix konqueror show stopper bug
  1295. 28-01-2009:
  1296. * fix bug causing mouseup being called twice at end of drag (for
  1297. example confused mandlebrot example)
  1298. * WApplication.C: found cause for long standing IE6 mystery 19px
  1299. offset
  1300. * WDate.C: require 2 digits for 'dd' or 'MM' format entries
  1301. * WFormWidget.C: auto-validate when contents changes
  1302. * WebRenderer.C, Wt.js: fix several widgetset mode problems for
  1303. IE.
  1304. * Wt.js: do not block when getting an AJAX error
  1305. 26-01-2009:
  1306. * 2.2.3 released.
  1307. 23-01-2009:
  1308. * examples: misc improvements, update homepage
  1309. * src/Wt/WAbstractItemModel: support for const char * data in
  1310. boost::any()
  1311. * src/Wt/WTreeView: better support for non-JavaScript situations
  1312. * WDialog: fix layout regression
  1313. 21-01-2009:
  1314. * WRectF: normalized() returns a rectangle without negative width
  1315. or height, and is used within WPainter to normalize rectangle
  1316. arguments
  1317. * WebRenderer.C: fix embedded mode
  1318. 16-01-2009:
  1319. * new example 'gitmodel': demonstrates how to create a custom model
  1320. class, to be used in conjunction with WTreeView.
  1321. * WGridLayout, WBoxLayout, WBorderLayout: when used in conjuction
  1322. with WContainerWidget, there is now the possibility to hint an
  1323. alternative implementation for managing space horizontally, which
  1324. uses the 'table-layout: fixed' CSS property.
  1325. * WCssStyleSheet: fix JavaScript error on IE
  1326. * WTreeView: fixes for when the treeview is not immediately shown
  1327. 15-01-2009:
  1328. * WCanvasPaintDevice.C: fix arc drawing in singular case (width or
  1329. height == 0), and for very skewed arcs (widht / height <<< 1 or >>> 1)
  1330. 08-01-2009:
  1331. * WTreeView: react to column insertion and removal, and
  1332. fix WTreeNode::load() unintentionally overriding WWidget::load()
  1333. * WAbstractProxyModel: implement toRawIndex() and fromRawIndex() so
  1334. that WTreeView does not lose selection or expanded index list when
  1335. resorting (or partial refiltering)
  1336. 07-01-2009:
  1337. * WDialog: add setTitleBarEnabled() to disable the title bar
  1338. 06-01-2009:
  1339. * WTreeView: setColumnBorder() allows setting the color for a
  1340. border line between columns, setColumnResizeEnabled() for
  1341. disabling the resize handles, and the content in each column is
  1342. now rendered with some padding (3px to the left and right).
  1343. 05-01-2009:
  1344. * WAbstractTobbleButton.C: fix inserting label into widget tree when
  1345. parent is not passed in constructor
  1346. * Ext/Widget.C: fix hide() and show() to consistently use Ext methods
  1347. * Wt.js, WebRenderer.C, WApplication.C: fix IE CSS loading ?
  1348. 24-12-2008:
  1349. * WTreeView: setColumn1Fixed() allows fixing of the first column while
  1350. scrolling through the other columns in a large model.
  1351. 22-12-2008:
  1352. * WMenu, WTabWidget: implement removeItem() and removeTab()
  1353. * WebRenderer.C: fix internal path issue when starting with a path,
  1354. AJAX is available, and deployment ends on a /
  1355. * WDialog: fix usage of layout managers in contents area
  1356. * WJavaScript, WSignal: scope ::_1 in global scope
  1357. * WOverlayIndicator: allow style class customization (Goetz Babin-Ebell)
  1358. * CgiParser: cleanup when using GNU regexp API (Goetz Babin-Ebell)
  1359. * Ext/PagingToolBar.C: fix adding multiple additional toolbar items.
  1360. 10-12-2008:
  1361. * WCompositeWidget.C: fix implementation not being load()ed
  1362. * Boot.html, Wt.js: do not create a new stylesheet but add rules to
  1363. existing inline stylesheet (for ordering consistency)
  1364. * Wt.js: fix regression for widget coordinates
  1365. 06-12-2008:
  1366. * hello-widgetset: do not build with fcgi connector (Guy Deleeuw)
  1367. * global: do not use (unsigned) long long but
  1368. use (u)int64_t (Goetz Babin-Ebell and Pau)
  1369. * DomElement.C: convert <img> to <input type=image> instead of
  1370. wrapping it in a button, when JavaScript is not available (Anthony
  1371. aka roja)
  1372. 04-12-2008:
  1373. * treeview-dragdrop: new example, demonstrating Drag&Drop operations
  1374. between treeviews, WSortFilterProxyModel usage, and context popup
  1375. menus.
  1376. 02-12-2008:
  1377. * WWidget: remove parent_ member, use WObject::parent() instead
  1378. 27-11-2008:
  1379. * WPopupMenu, WPopupMenuItem: implementation of a popup menu
  1380. * WAbstractProxyModel, WSortFilterProxyModel: proxy model classes
  1381. for WAbstractItemModel, that provide filtered and sortered views
  1382. of a source model
  1383. * StdGridLayoutImpl.C: more consistent layout rendering, now using
  1384. JavaScript on all browsers, and using relative positioning of contents
  1385. to avoid overflow the layout when the child manages its size using
  1386. JavaScript (like WTreeView)
  1387. * WButtonGroup: add count() method (from Torsten Schulz)
  1388. * WComboBox: add findText() method.
  1389. * WDialog.C: avoid applying css rules to contained tables.
  1390. * WDropEvent: add mouseEvent() to access causing mouse event details
  1391. * JSignal: support passing original event too using Wt.createEventCall()
  1392. * WTreeView: add expandToDepth() method, and pass mouse event in
  1393. item clicked, doubleClicked and mouseWentDown signals.
  1394. * WTreeView: better support for item drag&drop.
  1395. 19-11-2008:
  1396. * StaticReply.C: do not bwarf when we cannot determine file
  1397. size (i.e. for a pipe, reported by Michael Sorensen)
  1398. * WMenuItem.C, DomElement.C: do not prevent default action for
  1399. anchor click, by default, (reported by Bin tan)
  1400. 18-11-2008:
  1401. * WTreeNode.C: apply width to TD only for IE
  1402. * WTreeTable.C: fix scrollbar issues for IE6 and IE7
  1403. * TabWidget.C: fix offsets hiding problem
  1404. 17-11-2008:
  1405. * Boot.html, examples/hello-widgetset/hello.html: fix race
  1406. condition for IE7/6 with ExtJS loading (thanks to Guy Deleeuw for
  1407. help in debugging)
  1408. * Ext/Dialog.C: make sure dialog is not centered on too small window.
  1409. 14-11-2008:
  1410. * WOverlayLoadingIndicator: a more obvious loading indicator
  1411. 13-11-2008:
  1412. * WApplication.C: fix miscalculation of exposed signals
  1413. * WMenu.C: make Horizontal menus really behave horizontal
  1414. * WLoadingIndicator, WDefaultLoadingIndicator: interface and default
  1415. implementation for loading the indicator
  1416. 12-11-2008:
  1417. * Boot.hml: typo oops indicated by Anthony Roger Buck
  1418. * WApplication, WDialog, Ext::Dialog, Ext::MessageBox: more generic
  1419. way of preventing signals hidden by a modal dialog
  1420. * WTreeView: more accurate column widths
  1421. * CgiParser: fix handling of plain POSTs (indicated by Jim Koornneef)
  1422. * WebSession: fix handling of recursive event loop when JavaScript
  1423. is disabled
  1424. * Configuration.C, Wt.js: add configuration option for strict
  1425. event serialization, dropping events that happen while a response
  1426. is pending (off by default).
  1427. * WTreeTable.C, WTree.C, WTreeNode.C: backport IE fixes from
  1428. WTreeView to WTreeTable
  1429. 07-11-2008:
  1430. * Boot.html: fix issue with IE7 and extkitchen loading (do not
  1431. apply same fix as for IE6)
  1432. * WTreeView: support multi line headers, and rework layout management
  1433. for header row (revert to old style since it didn't work for IE7)
  1434. 06-11-2008:
  1435. * examples/extkitchen: use a WTreeView as another MVC-model
  1436. when demonstrating Ext::TableView
  1437. * WAbstractItemModel, WItemSelectionModel, WTreeView, Wt.js:
  1438. support for drag of item selections, and drop of item selections
  1439. or other events
  1440. * WTreeView: several bug fixes for incrementally handling row
  1441. insert and removals, and cosmetic improvements
  1442. 04-11-2008:
  1443. * WTreeView.C: allow setColumnWidth() and setContentAlignment for
  1444. column 0 too.
  1445. * WebRenderer.C, WContainerWidget.C: brush up WidgetSet mode
  1446. * examples/hello-widgetset: WidgetSet mode example
  1447. 03-11-2008:
  1448. * examples/treeview, examples/widgetgallery: new examples
  1449. * WSubMenuItem.C: a menu item that can contain a sub menu
  1450. * WGridLayout.C: do not attempt to layout when hidden since
  1451. measurements will fail
  1452. * WGridLayout.C: apply width rules to every row since first
  1453. row may contain overspanned cells
  1454. * WAnchor.C: support configurable word-wrap
  1455. * WTextArea: allow default Wt-invalid class for also for textarea
  1456. * WCssStyleSheet: implement assignment operator, and reimplement
  1457. addRule with WCssDecorationStyle, returns a WCssTemplateRule now.
  1458. * WMenu: allow multiple menus to use a single
  1459. WStackedWidget (useful for menus with submenus)
  1460. * WSuggestionPopup.C: pop up after widget itself
  1461. * WTable.C: fix memory leak introduced by incremental row rendering
  1462. * WTransform.C: fix double rounding error bug leading to NaNs
  1463. * WTreeView: add setHeaderHeight() and setColumnAlignment()
  1464. methods, and many rendering misc.
  1465. * Ext/Widget.C: apply correct style classes to body if Ext is not
  1466. loaded during initial page render
  1467. * WApplication.C, Boot.html, Wt.js: url encoding and decoding for
  1468. internal paths
  1469. * Boot.html, Wt.js: avoid race condition with IE when loading
  1470. application
  1471. * Wt 2.2.1 released
  1472. 27-10-2008:
  1473. * WAnchor.C: no clicked connect when setting internal paths
  1474. * WWidget, WWebWidget, WCompositeWidget: add setLineHeight() API
  1475. * WCssStyleSheet: WCssTemplateRule copies CSS properties from a
  1476. template widget
  1477. * WModelIndex: allow for SHA-1 internal Id's for on-disk models
  1478. * WTreeView, WModelIndex, WStandardItem: add UrlRole and
  1479. InternalPathRole
  1480. 23-10-2008:
  1481. * WAppliation.C: be more accurate about when to absolutelify
  1482. relative URLs
  1483. * WContainerWidget.C: use sorted vector instead of set to figure
  1484. out child insertions
  1485. * WResource.C: use Content-Disposition to trick IE to get the name
  1486. right (in addition to an internal path)
  1487. * WTable, DomElement.C: use table DOM API, and present row
  1488. additions incrementally
  1489. * RequestHandler.C: fix url decoding
  1490. 13-10-2008:
  1491. * WTreeView.C: loading indicator in spacer
  1492. * WTree.C: fix propagation of events inside table rows
  1493. 11-10-2008:
  1494. * src/WebSession.C: do not use relative Urls when JavaScript is
  1495. disabled since we cannot redirect to the canonical url (Bin Tan)
  1496. * WDate.C: bugfix in JS date parsing
  1497. * WServer.C: added new --config parameter to specify the
  1498. location of the wt_config.xml file
  1499. * WApplication.C: style Wt-invalid applies to all objects, not only
  1500. input
  1501. * Configuration.C: look for configuration file path in environment
  1502. variable WT_CONFIG_XML. This is overridden by program option --config
  1503. in wthttpd.
  1504. 11-10-2008:
  1505. * src/WebSession.C: do not use relative Urls when JavaScript is
  1506. disabled since we cannot redirect to the canonical url (Bin Tan)
  1507. * src/WTreeView[.C]: implement selection, make sorting controls
  1508. optional
  1509. 10-10-2008:
  1510. * WDateValidator.C: better client-side date validation
  1511. 09-10-2008:
  1512. * fcgi/Server.C: pass parent environment to children (suggested by
  1513. misi e)
  1514. * WBorderLayout[.C]: implement methods to retrieve widgets or
  1515. layout items set for a position.
  1516. * WAbstractItemModel[.C], WModelIndex[.C], WStandardItemModel[.C]:
  1517. add support for hierarchical models
  1518. * WAbstractItemModel[.C]: new abstract base class for
  1519. one-dimensional list models
  1520. * WAbstractToggleButton.C: do not generate no-op click handlers
  1521. * WApplication: update outdated documentation (rsh not longer
  1522. needed, and internal paths work for all major browsers since 2.2.0)
  1523. * WApplication.C: improve consistency for CSS + XHTML
  1524. * WComboBox.C, Ext/ComboBox.C: use WStringListModel instead of
  1525. WStandardItemModel by default
  1526. * WContainerWidget[.C]: add scrolled event signal
  1527. * WContainerWidget[.C], WWebWidget[.C]: implement different way of
  1528. handling insertChild() that fixes a bug with removing a child that
  1529. was just inserted but not yet rendered
  1530. * WCssDecorationStyle[.C]: support dynamic updates to style sheet
  1531. rules
  1532. * WCssStyleSheet[.C], Wt.js, WebRenderer.C: support dynamic
  1533. addition and removal of stylesheet rules
  1534. * Wt.js, WEvent, WebController.C: pipeline multiple events,
  1535. queueing events while a reply is pending.
  1536. * WEvent: add a WScrollEvent
  1537. * WLabel[.C]: add methods to configure and inspect word wrapping.
  1538. * WStandardItem[.C]: new class for implementing the hierarchical
  1539. WStandardItemModel
  1540. * WStringListModel[.C]: new model that implements a simple string list
  1541. * WTableRow[.C]: add setHidden() and related methods
  1542. * WTreeView[.C]: new view widget for displaying trees or tree tables
  1543. * Chart/WAbstractChart[.C], Chart/WCartesianChart[.C],
  1544. Chart/WPieChart[.C], Ext/ComboBox[.C], Ext/TableView[.C]: update
  1545. model listeners to use new hierarchical WAbstractItemModel API
  1546. * DomElement.C: generate more compact code by using more
  1547. aggressively innerHtml
  1548. 02-10-2008:
  1549. * Ext/TableView.C: shift selected rows when rows are
  1550. inserted/deleted
  1551. * WebController.C: do not send anything when the page script is
  1552. requested outside the Bootstrap.
  1553. 01-10-2008:
  1554. * WebController.C: fix refresh() regression, simplify, prevent
  1555. CSRF, and remove unnecessary code
  1556. 30-09-2008:
  1557. * Connection.C: catch exceptions thrown by
  1558. remote_endpoint() (reported by kal sason)
  1559. 28-09-2008:
  1560. * WContainerWidget.C: do not stub TDs for IE
  1561. 21-09-2008:
  1562. * DomElement.C: do not use innerHTML on IE6 for select element (fixes
  1563. WComboBox error reported by Sergey Bryukov)
  1564. 19-09-2008:
  1565. * WApplication.C: do not block timers when dialog is active (Billy
  1566. Muma)
  1567. 18-09-2008:
  1568. * various places: do not generate DOM ids when serving to a bot,
  1569. in the hope that this improves the way the bot indexes the page
  1570. since it should always look the same
  1571. * Configuration.C: add <num-threads> configuration option for
  1572. FastCGI deployments, to allow usage of reentrant event loops, as
  1573. used by (W)Dialog::exec() methods when using shared session
  1574. process deployments.
  1575. 10-09-2008:
  1576. * WLocalizedStrings: add an abstract class to localized WString,
  1577. which is by default implemented using WMessageResourceBundle, but
  1578. may be customized (as suggested by Lars Hamren)
  1579. * several files: fixes for RubyWt (Richard Dale)
  1580. * WTabWidget: CSS fix for IE7
  1581. 21-08-2008:
  1582. * all: build fixes for Sun Studio 12, and boost 1.36
  1583. * various places: better use of STL containers
  1584. 19-08-2008:
  1585. * src/web/WebSession.h: build fix for boost 1.36
  1586. * examples/wt-homepage: add Chinese translation (by Zhimin Song)
  1587. * various places: fixes suggested by Richard Dale and Pau
  1588. 18-08-2008:
  1589. * CMakeFile.txt: default is now boost 1.35
  1590. 13-08-2008:
  1591. * StdGridLayoutImpl.C: deal with padding in widgets correctly,
  1592. always fit item heights (this may cause rows to get stuck at a
  1593. particular height, but gives more consistent behaviour..., handle
  1594. UL children
  1595. * WApplication: simplify internalPath stuff
  1596. * WebController: propagate form values before touching the widget tree
  1597. 11-08-2008:
  1598. * WMenu: add setInternalBasePath(), do not specify display: inline
  1599. for a horizontal menu item, instead, should be handled by
  1600. programmer CSS
  1601. * WMenuItem: do not erronously delete contents in destructor, if
  1602. it was already loaded.
  1603. 08-08-2008:
  1604. * Bejing: olympics started! gogo Kim Gevaert!
  1605. * WApplication: more internal path small fixes
  1606. * Connection.C: build fixes for MSVC and Visual Age
  1607. 07-08-2008:
  1608. * WApplication: fix old behaviour of applicationName(), deprecate it
  1609. * WebSession.C, WebController.C, WebRenderer.C: improved url and
  1610. internal path handling: handle redirecting to a new internal path,
  1611. properly initialize application with an initial internal path,
  1612. more flexible internal paths (do not enforce trailing '/')
  1613. * WMenu: properly restore application internal path when doing
  1614. stateless slot learning
  1615. 06-08-2008:
  1616. * cmake/WtFindSsl.txt: removed redundant code
  1617. * src/web/skeleton/Wt.js: fix widget position bug when nested in scrolled
  1618. DOM elements or page on Safari/Opera/IE
  1619. * all: merged in prettyurls branch
  1620. - no longer use frameset in bootstrap page, load instead ajax script. Remove
  1621. all code that dealt with the frame, and Ajax skeleton page
  1622. - switch to own implementation of history management, remove really simple
  1623. history framework code
  1624. - add internal path API: see WApplication::setInternalPath(),
  1625. WAnchor::setRefInternalPath()
  1626. - remove internal iframes to deal with file uploads, found a workaround for IE
  1627. problem
  1628. - make JavaScript skeleton files compressable with YUI JS compressor
  1629. - WMenu and WMenuItems: API changes to work with internal path API
  1630. - improved marking of deprecated methods in API
  1631. * wt_config.xml: add new setting <redirect-message> used in anchor
  1632. for redirecting to non-JavaScript version
  1633. 05-08-2008:
  1634. * web/Configuration.C: remove cppfileno mess
  1635. 04-08-2008:
  1636. * WFormWidget.C: fix crash when calling setBuddy() twice (or only
  1637. once in case of WAbstractToggleButton)
  1638. * WTreeTable.C: fix problem when height is not explicitly set
  1639. 02-08-2008:
  1640. * WVMLImage.C: fix bounding box calculation for arc rendering in path when
  1641. rotated. It is still broken for non-uniform scale + rotation
  1642. * TableView.C: fix cellSelected signal when used together with a
  1643. PagingToolBar to not propagate the correct model indexes
  1644. 01-08-2008:
  1645. * src/http/StaticReply.C, src/http/StockReply.C: transmit response only
  1646. when all POST'ed data was received
  1647. * src/http/StaticReply.C: call stream_.clear() to recover from error state
  1648. 29-07-2008:
  1649. * WEnvironment.C, src/web/WebController.C, src/web/WebRenderer.C:
  1650. fix cookie setting and cookie parsing
  1651. * WMenuItem: move itemWidget() from protected to public scope.
  1652. 25-07-2008:
  1653. * WTextEdit[.C]: implement an XHTML rich text editor wrapping the
  1654. TinyMCE javascript library
  1655. * CMakeListst.txt: install resources/ folder to share/Wt/resources
  1656. * WText[.C]: deprecated WText::Formatting enum,
  1657. WText::setFormatting() and WText::formatting() for Wt::TextFormat
  1658. enum, WText::setTextFormat() and textFormat(). Add a constructor
  1659. that accepts the format as an argument, and update examples
  1660. * http/Reply.C, http/StaticReply.C: serve a .gz version of a file
  1661. with gzip content-encoding if possible and available, fix a
  1662. problem with logging when the reply is relayed
  1663. 22-07-2008:
  1664. * WAbstractArea, WRectArea, WCircleArea, WPolygonArea: new classes
  1665. that implement interactive areas on WImage and WPaintedWidget.
  1666. * WImage, WPaintedWidget: add methods for defining interactive
  1667. areas
  1668. * StdGridLayoutImpl.C: fix alignment margin glitch
  1669. * WApplication.C: default stylesheet: add border: 0px for images,
  1670. which are rendered using a border when adding a map.
  1671. * WMemoryResource: add constructors and methods for using C-style
  1672. array data.
  1673. * WLogger.C: fix error in ~WLogEntry
  1674. * all: misc build fixes for win32
  1675. 15-07-2008:
  1676. * src/wt: renamed to src/Wt
  1677. * src/Ext: renamed to src/Wt/Ext
  1678. * src/Chart: renamed to src/Wt/Chart
  1679. * src: upgrade to new include file locations <Wt/...>
  1680. * cmake/FindWt.cmake: update to new new include file locations,
  1681. and add some documentation for cmake newbies
  1682. * src/wt/StdLayoutImpl.C: fix itemAt() problem
  1683. * src/Wt/WMessageResource*, src/wt/WString[.C]: make literal
  1684. WString work properly with argument substitution (reported by
  1685. Micahel Ivanov)
  1686. * src/web/Configuration.C: setup loggers even if no wt_config.xml
  1687. file (reported by Goetz Babin-Ebell)
  1688. 14-07-2008:
  1689. * src/wt/WComboBox[.C], src/Ext/ComboBox[.C]: fix problem with
  1690. setModel wrongly deleting the previous model (reported by Michael
  1691. Ivanov).
  1692. * src/wt/WApplication, examples/composer/ComposeExample.C,
  1693. src/wt/WMessageResourceBundle: document and contrast expected
  1694. location for relative URLs or relative paths (suggested by Pau
  1695. Garcia)
  1696. * doc/main: improved Inroduction to include logging and error
  1697. handling, and related configuration options
  1698. * src/Chart/WChart2DRenderer.C: fix regression with stacked bars,
  1699. introduced by WAxis::setBreak() implementation
  1700. * */CMakeListst.txt: install header files in Wt/ subdirectory to
  1701. not clobber the main include directory. You should make sure that
  1702. ${CMAKE_INSTALL_PREFIX}/include/Wt is searched for these headers!
  1703. 13-07-2008:
  1704. * src/wt/WLogger[.C], src/wt/WApplication: logging API, new method
  1705. WApplication::log()
  1706. * src/web/Configuration.[Ch], src/wt/Configuration.[Ch]: add
  1707. configuration options for accesslog and application logging
  1708. * src/wt/WText[.C], src/wt/WWebWidget[.C]: allow to detect XML
  1709. parse errors when using XHTMLFormatting
  1710. * allover: code cleanups to use logging instead of std::cerr, to
  1711. throw exceptions for fatal errors
  1712. * src/wt/WLayout[.C]: change contract of count() and itemAt() to
  1713. allow for '0' layout items, fix crash with WGridLayout (reported by
  1714. bvh).
  1715. 10-07-2008:
  1716. * src/Ext/Widget.C: propagate CSS style class and inline style to
  1717. the Ext widget through the config.
  1718. * src/web/WtRandom.C: fix integer overflow compile warning (Pau
  1719. Garcia)
  1720. 09-07-2008:
  1721. * src/Chart/WAxis[.C]: add setBreak() to support a "broken" axis
  1722. that omits a part of the entire value range.
  1723. 07-07-2008:
  1724. * src/wt/WContainerWidget.C: implement clear() to also delete any
  1725. layout manager that was set, and support creation of a layout
  1726. manager in an existing widget
  1727. * examples/simplechat/SimpleChat.C: use clear() in conjunction
  1728. with layout managers
  1729. * src/web/DomElement.C: make sure style attribute is rendered as
  1730. JavaScript
  1731. * src/wt/WApplication.C: do not apply 19px IE6 offset bug to IE7 or
  1732. later
  1733. * src/wt/WGridLayout.C: use default spacing of 6px instead of 9px
  1734. * src/wt/WContainerWidget.C: setLayout() replace two bools
  1735. fitWidth and fitHeight with an alignment option
  1736. * examples/painting/PaintExample.C: use WGridLayout
  1737. 03-07-2008:
  1738. * src/web/skeletons/*, src/web/DomElement.C,
  1739. src/web/WebRenderer.C: make sure Wt homepage validates as proper
  1740. HTML or XHTML.
  1741. * src/wt/WText.C: autodetect common block-style XHTHML content and
  1742. call setInline(false) for block elements (helps in producing valid
  1743. XHTML).
  1744. * src/Ext/Widget.C: fix for Ext date picker and calendar with Firefox 3
  1745. * src/web/WebRenderer.C: fix JavaScript to reload an old session
  1746. (again!)
  1747. 02-07-2008:
  1748. * src/wt/WAppliation.C: block events from widgets under the modal
  1749. dialog cover
  1750. 01-06-2008:
  1751. * src/wt/WServer[.C]: API to start and stop the embedded http
  1752. server programatically.
  1753. * src/Ext/TextEdit.C: fix forgotten string literal bug (Michael
  1754. Ivanov)
  1755. * src/wt/WApplication.C: add auto-centering for WDialog using
  1756. JavaScript (Michael Ivanov)
  1757. 30-06-2008:
  1758. * src/wt/WGridLayout.C, src/wt/StdGridLayoutImpl.C: unify
  1759. cross-browser handling, fix alignment bugs, border handling
  1760. 27-06-2008:
  1761. * src/Ext/Widget.C: eliminate client-side memory leak of ExtW array
  1762. * src/wt/StdGridLayoutImpl.C: fix minimum row height calculation
  1763. bug, and some clean up + internal doc improvements
  1764. * src/Ext/Container.C: fix interference bugs between Ext and Wt
  1765. layout managers
  1766. * src/wt/WBoxLayout, src/wt/WGridLayout: implement alignment
  1767. 25-06-2008:
  1768. * src/wt/WBoxLayout[.C], src/wt/WGridLayout[.C],
  1769. src/wt/WBorderLayout[.C], src/wt/WContainerWidget[.C]: implemented
  1770. layout management for WContainerWidgets
  1771. * examples/chat: simplified by using layout managers instead of
  1772. absolute CSS layout.
  1773. * src/wt/WApplication.C: reset padding to 0 for the body. Add
  1774. padding to the WApplication::root() if you want to have it back.
  1775. * src/web/DomElement.C: change cancelEvent() signature, and add
  1776. emulate IE support for setMinimumSize() (using CSS expressions),
  1777. add support for CSS property white-space
  1778. * src/web/skeleton/Wt.js: add pixel calculation routines
  1779. * src/wt/WApplication.C: define declared functions as soon as
  1780. possible
  1781. * src/wt/WText[.C]: add setWordWrap() method
  1782. * src/wt/WLabel.C: use setWordWrap(false) for the text
  1783. * src/wt/WMenuItem.C: do not set margin-right for horizontal
  1784. items (Billy Muma)
  1785. 18-06-2008:
  1786. * CMakeLists.txt: fixed CONFIGDIR issues
  1787. * src/http/Reply.[Ch]: fixed non-multi threaded build
  1788. * src/wt/WTabWidget[C], src/wt/WMenu[C]: reimplement
  1789. currentChanged signal
  1790. 17-06-2008:
  1791. * src/wt/WContainerWidget.C: fix bug caused by not searching child
  1792. list before inserting child, triggered when using insertBefore()
  1793. * src/Ext/Dialog.C, src/Ext/MessageBox.C: workaround for missing
  1794. cursor problem in FireFox 1.5 and 2
  1795. 16-06-2008:
  1796. * CMakeLists.txt: CONFIGDIR variable (from Pau Garcia i Quiles)
  1797. * src/CMakeLists.txt: use a macro for FileToString
  1798. * examples/wtwithqt: new example and library for interopability
  1799. between Wt and Qt4.
  1800. 13-06-2008:
  1801. * LICENSE: Clarified that GPL Wt is only licensed under the
  1802. second version of the GNU GPL (requested by debian folks)
  1803. * src/wt/WWebWidget.C: performance improvement, do not search child
  1804. list before inserting child because we know for sure that it isn't
  1805. there
  1806. * src/Ext/Dialog.C: do not use display:none since this may
  1807. cause problems with certain Ext widgets that need hide-with-offsets
  1808. * src/Chart/WAxis[.C]: add support for axis titles with custom font
  1809. 12-06-2008:
  1810. * src/Ext/WWidgetItemImpl: do not use display:none since this may
  1811. cause problems with certain Ext widgets that need hide-with-offsets
  1812. 11-06-2008:
  1813. * add WEnvironment::pathInfo()
  1814. 10-06-2008:
  1815. * refactoring to simplify WWebWidget implementations
  1816. * preliminary support for AJAX on IE Mobile. Things that do not
  1817. yet work include WFileUpload, WTimer, and there are many rendering
  1818. layout glitches (such as in the tree list stuff).
  1819. * src/web/DomElement.C, src/web/WebController.C: fix handling
  1820. multiple buttons when JavaScript is not available
  1821. * src/Ext/TableView.C: clearSelection() fix (Archimedes Cortes)
  1822. * src/wt/WFormWidget, src/wt/WValidator: add an inputFilter()
  1823. method which allows filtering input characters against a regular
  1824. expression.
  1825. * src/wt/WTree.C: let selection only on the label, so that other
  1826. interactive widgets may be present in other columns
  1827. * src/web/DomElement.C: support return value, note this may break
  1828. existing behaviour of JavaScript slots, since they really need to
  1829. return properly! Better cross-platform event handling.
  1830. 30-05-2008:
  1831. * src/http/Server.[Ch]: fix potential thread safety issue on shutdown
  1832. (Max M)
  1833. 28-05-2008:
  1834. * src/Ext/LineEdit[.C]: add setMaxLength()
  1835. * src/wt/WAnchor.C: fix targetChanged_ is uninitialized bug
  1836. 27-05-2008:
  1837. * src/fcgi/Server.C, src/web/Configuration.C: support valgrind arguments
  1838. * src/web/Configuration.C: fix close(-1) valgrind warning, and
  1839. read 'valgrind-path' from fcgi-configuration
  1840. 26-05-2008:
  1841. * charts example: better support without JavaScript
  1842. * src/Ext/NumberField: fix undefined reference: setDecimalPrecision()
  1843. * src/Ext/TableView: add setColumnAlignment() method
  1844. * src/web/DomElement.C: better support for anchor onclick events:
  1845. use browser default when used with a modifier, otherwise prevent
  1846. browser default
  1847. * src/web/WebSession, src/web/WebController: propagate initial history
  1848. as a history event after application construction
  1849. * various places: documentation improvements
  1850. 21-05-2008:
  1851. * src/web/WWebWidget.C: allow disabling the stubbing of small
  1852. widgets (added setLoadLaterVisible() method)
  1853. * src/wt/WWidget: add htmlText() method to public API
  1854. 20-05-2008:
  1855. * src/wt/WTreeNode.C, src/wt/WIconPair.C: performance improvements
  1856. * src/wt/WTree.C: suppress browser text selection when selection is
  1857. enabled
  1858. * src/web/skeleton/Ajax.html: support for IE 8 beta
  1859. * various places: documentation improvements
  1860. * src/wt/WApplication[.C]: added WApplication::applicationName(),
  1861. from Goetz Babin-Ebell.
  1862. * src/wt/WWebWidget.C: optimize widget destruction
  1863. 15-05-2008:
  1864. * src/web/WebSession.C: fix build problem when threading is disabled
  1865. * src/wt/WVmlImage.C, Wt.js: fix selection problem on IE
  1866. 14-05-2008:
  1867. * src/wt/WInteractWidget.C: block changed signal after enterPressed
  1868. when the enterPressed signal is connected to get same behaviour across
  1869. all browsers
  1870. * src/wt/WLenghtValidator.C: fix bug in constructor
  1871. * src/wt/WLineEdit[.C]: add setMaxLength()
  1872. * src/wt/WWidget.C: disable the fixed JavaScript implementation
  1873. for hide() and show() and revert to stateless slot learning by
  1874. default to take into account reimplement setHidden() methods. This
  1875. is now overridden only in WTreeNode.
  1876. * src/web/CgiParser.C: open spoolfile in binary mode, fixes wrong
  1877. behaviour with binary files on Windows platforms
  1878. * src/wt/WApplication: revert behaviour change for url() to return
  1879. the entire application path
  1880. * src/wt/WSlider.C: avoid compile warning with gcc 4.2
  1881. 13-05-2008:
  1882. * src/wt/WValidator[.C], src/wt/WIntValidator[.C],
  1883. src/wt/WDoubleValidator[.C], src/wt/WDateValidator[.C],
  1884. src/wt/WRegExpValidator[.C]. src/wt/WLengthValidator[.C],
  1885. src/wt/WFormWidget[.C]: add javaScriptValidate() for
  1886. client-side validation
  1887. * src/wt/WDate[.C]: small cleanup and add conversion to perl
  1888. regular expression for client-side validation
  1889. * put Wt stateless client-side routines in a version-dependent
  1890. namespace WT_CLASS
  1891. * src/wt/WMessageResources.C: preserve white space and new lines for
  1892. message resources
  1893. 11-05-2008:
  1894. * src/wt/WSignal[.C]: reduce memory for unused event signals, and
  1895. add support for preventing the default handler (untested)
  1896. * src/wt/WInteractWidget: better keyboard event documetation
  1897. * src/wt/WTree[.C]: support for standard behaviour of Control and
  1898. Shift modifiers in extended selection mode
  1899. 10-05-2008:
  1900. * src/web/DomElement.C, src/web/skeleton/Wt.js, src/wt/WEvent[.C]:
  1901. improved keyboard and mouse event information
  1902. * src/wt/WInteractWidget: better keyboard event documetation
  1903. * src/wt/WTree[.C]: support for standard behaviour of Control and
  1904. Shift modifiers in extended selection mode
  1905. 08-05-2008:
  1906. * cmake/WtFindBoost.txt, src/web/random_device.cpp: add support
  1907. for MacOS X
  1908. * src/wt/WAbstractItemModel: add asString(const boost::any&) and
  1909. asNumber(const boost::any&), and add warnings when trying to read
  1910. or write data outside the bounds
  1911. * src/wt/WAbstractToggleButton.C, src/wt/WFormWidget.C: avoid
  1912. double changed event propagation (needs exception for bug in IE6
  1913. and IE7).
  1914. * src/wt/WCanvasPaintDevice.C: improve text rendering, optimize
  1915. path rendering, and fix bug with clipping and transformations
  1916. * src/wt/WColor: documentation improvements, and specify default
  1917. colors numerically
  1918. * src/wt/WComboBox: documentation improvements
  1919. * src/wt/WComboBox.C: do not emit changed() event when changing
  1920. the values using setCurrentIndex()
  1921. * src/wt/WDate: add support for conversion to integers using
  1922. julian day calculation, and add methods addDays(), addMonths(),
  1923. and addYears(), and fix string parse bug s/1900/2000
  1924. * src/wt/WDoubleValidator: fix default argument to real -inf
  1925. * src/wt/WPainter, src/wt/WVmlImage: add support for rectangle
  1926. clipping to VML renderer
  1927. * src/wt/WPainterPath: add support for bounding box calculations,
  1928. fix inverted angle calculation in getArcPosition()
  1929. * src/wt/WRectF: add intersection test and united() method
  1930. * src/wt/WResource: add write(std::ostream&) method to serialize a
  1931. resource (e.g. to a file)
  1932. * src/wt/WSvgImage: optimize paths even when transformations
  1933. change (only translations), fix clipPath definition so that it
  1934. works with inkscape and opera, and make drawText() more accurate
  1935. * src/wt/WVmlImage: optimize paths through transformations, and
  1936. use multiple parallel paths to avoid overlap artefacts, and add
  1937. full text support (including rotations and scales)
  1938. * src/wt/WWebWidget: fix bug with double processing of new siblings
  1939. * src/wt/WWidget: move enums to Wt:: scope (with full backwards
  1940. compatible support)
  1941. * src/Chart/: first release of the Wt charting library
  1942. * examples/charts/: example demonstrating the Wt charting library
  1943. * src/wt/WPanel: new widget (will evolve to support many standard
  1944. options you want for a panel)
  1945. 29-04-2008:
  1946. * src/wt/WLength: Added multiplication operator, and toPixels()
  1947. method
  1948. * src/wt/WFont: Fixed equality operator: fixed sizes are now also
  1949. compared
  1950. * src/wt/WVmlImage.C, src/web/WebController.C, src/wt/WEnvironment,
  1951. src/web/skeleton/Boot.html: Fixed rendering on high density
  1952. displays (DPI scaling)
  1953. 25-04-2008:
  1954. * CMakeLists.txt: Dynamic/static boost build fix
  1955. 24-04-2008:
  1956. * CMakeLists.txt: FindWt.cmake is now installed in /usr/share/...
  1957. instead of /usr/usr/share/...
  1958. * src/wt/WCssDecorationStyle.C: bugfix for setting background colors
  1959. 19-04-2008:
  1960. * src/web/WWebWidget.C: also update form objects in addChild()
  1961. and removeChild (could be optimized later)
  1962. 18-04-2008:
  1963. * CMakeLists.txt: LIB_INSTALL_DIR fixes. LIB_INSTALL_DIR must now be
  1964. a relative path.
  1965. * src/web/WebController.C: reroute all methods that may call user
  1966. code through WApplication::notify() (including rendering and
  1967. application refresh())
  1968. * src/wt/WApplication[.C], src/web/WebSession[.C]: allow
  1969. post-construction and pre-destruction application initialization
  1970. and finalization
  1971. * src/wt/WApplication[.C], src/web/WebSession[.C]: attachThread()
  1972. attaches an auxiliary thread to an application context
  1973. * src/http/Connection.C: use graceful connection shutdown on timeout,
  1974. to avoid the occasional 502 proxy errors
  1975. 17-04-2008:
  1976. * src/http/Connection.C. src/http/Reply.C: fix race condition on
  1977. shutdown, protect connection_ with a mutex, and illegal access to
  1978. dead connection's request in the logging
  1979. * src/http/HTTPRequest.[Ch]: keep a shared pointer (ReplyPtr)
  1980. instead of raw pointer for the WtReply
  1981. * src/web/WebController.C: remove killed sessions from sessions
  1982. map from sessions map in forceShutDown() so that they do not get
  1983. illegally accessed from expireSessions().
  1984. * src/web/WebSession: do not call finalize() on 0 app_
  1985. * src/wt/WResource: setRequest() flushes a previous request if
  1986. there is already one
  1987. * src/wt/WMenuItem.C: fix memory leak with LazyLoading
  1988. * various places: make build work on gcc 3.4.0 (thanks to Petr Cerny)
  1989. 14-04-2008:
  1990. * src/web/DomElement.C: do not use innerHTML in xhtml (opera
  1991. doesn't like it with inline SVG)
  1992. * src/wt/WPaintedWidget.C: prefer InlineSVG on Opera
  1993. * src/wt/WPaintDevice.C, src/wt/WVmlImage.C: scale pen widths with
  1994. transform
  1995. * src/web/skeletons/Wt.js: import XML nodes with correct namespace
  1996. into DOM
  1997. * revert commit 4e7766d105888ae898ca6a8d7446d2188ae09846, since IE
  1998. cannot handle special tokens in DOM element id's
  1999. * release 2.1.2
  2000. 13-04-2008:
  2001. * src/wt/WPainter[.C], src/wt/WCanvasPaintDevice[.C],
  2002. src/wt/WVmlImage[.C], src/wt/WSvgImage[.C]: add drawImage() methods
  2003. * src/wt/WRectF.C: fix setX() and setY() incorrect width adaptation
  2004. * src/wt/WSvgImage.C: fix regression in drawLine
  2005. * src/wt/WTransform.C: fix double comparison in SVD decomposition
  2006. * src/wt/WVmlImage.C: fix drawArc() wrong transformation problem
  2007. 12-04-2008:
  2008. * src/web/DomElement.C, src/web/skeleton/Wt.js: capture() mouse
  2009. down so that all subsequent mouse events are received by the same
  2010. element/widget
  2011. * src/web/WebRenderer.C: use JS reload(true) to force reload, and
  2012. disallow caching of bootstrap HTML
  2013. * src/web/WebRenderer.C, src/wt/WVmlImage.C: use VML in standards
  2014. compliant rendering mode
  2015. * src/web/skeleton/Wt.js: make private functions really sit within
  2016. "Wt" closure
  2017. * src/wt/WJavaScriptSlot.C: fix wrong JavaScript code when JSlot
  2018. is not owned by a WWidget, and thus not using function
  2019. declaration, and define JavaScript functions before loading
  2020. * src/wt/WPaintedWidget[.C]: update() on resize()
  2021. * src/wt/WSlider[.C]: initial implementation of a slider
  2022. control (rendered using WPaintedWidget)
  2023. * src/Ext/TabWidget[.C]: make sure currentIndex() is updated before
  2024. propagating the signal
  2025. * src/wt/WVmlImage.C: correct -1 vertical offset problem
  2026. * src/wt/WTreeTableNode.C: fix seg fault of calling virtual method
  2027. addChildNode() from WTreeNode constructor
  2028. * src/wt/WTree.C: fix seg fault on consecutive calls of setTreeRoot()
  2029. * src/wt/WTreeNode[.C]: rename expanded() to isExpanded() and add
  2030. two signals, expanded and collapsed
  2031. * src/wt/WSignal: allow late binding of a relay signal to
  2032. EventSignal<void>
  2033. * src/wt/WTableTreeNode: change incorrect protected scope of
  2034. addChildNode() to public
  2035. 11-04-2008:
  2036. * src/wt/WPainter[.C]: expand API with setViewPort() and
  2037. setWindow() methods
  2038. * src/wt/WTransform.C: fix reflexion bug in WTransform's SVD
  2039. * src/wt/WPen[.C]: define 0 width as cosmetic pen of width 1
  2040. pixel, independent of transformation matrix
  2041. * Boost 1.35 support
  2042. * CMakeLists.txt: The static version of Wt is now default
  2043. built on Windows
  2044. 10-04-2008:
  2045. * src/wt/WApplication[.C]: fix regression in
  2046. WApplication::processEvents()
  2047. * src/wt/WPainter[.C]: add WPainter::save() and
  2048. WPainter::restore() methods
  2049. * src/wt/WTransform.C: handle reflexions correctly in the singular
  2050. value decomposition
  2051. * Released 2.1.1
  2052. 09-04-2008:
  2053. * src/wt/WLineF, WPointF, WRectF, WPaintDevice, WPainter, WPen,
  2054. WBrush, WPainterPath, WVmlImage, WSVGImage, WCanvasPaintDevice:
  2055. complete implementation and documentation
  2056. * src/wt/WString: improve documentation
  2057. 07-04-2008:
  2058. * src/wt/WTreeNode[.C]: add virtual expandable() method which
  2059. returns whether a node is expandable (even when not populated)
  2060. * src/Ext/TabWidget.C: addTab(WWidget *, const WString&) checks if
  2061. the widget is a Panel, and only creates a Panel if not.
  2062. * src/wt/WJavaScriptSlot[.C], WObject[.C], add
  2063. implementPrelearned() to directly specify the JavaScript behavior
  2064. for a method. Add support to switch the implementation of a method
  2065. between implementStateless() and implementJavaScript().
  2066. * src/wt/WTreeNode[.C]: add setChildCountPolicy() to enable the
  2067. child count next to the label, which now by default is disabled
  2068. * src/wt/WWidget.C, src/wt/WWebWidget.C: performance optimization:
  2069. change implementation of hide() and show() from stateless to
  2070. prelearned
  2071. * src/wt/WTreeTable[.C]: use offsetHeight instead of clientHeight and
  2072. offsetTop to solve layout problem ?
  2073. * src/wt/WObject[.C]: use a simple 64-bit encoding for a valid
  2074. JavaScript identifier id
  2075. 02-04-2008:
  2076. * src/Ext/*.C: performance improvement: change config generation
  2077. to use streaming instead of string concatenation
  2078. * src/Ext/*.C: performance improvement: do not use addUpdateJS
  2079. when not yet rendered
  2080. 01-04-2008:
  2081. * src/wt/WApplication: support dynamic loading of scripts,
  2082. internal stylesheet changes, and external stylesheets. This fixes
  2083. the problem with using Ext widgets only later in the application.
  2084. * src/wt/WTableRow[.C], src/wt/WTableColumn[.C]: add support in
  2085. public API
  2086. * src/wt/WApplication.C: move default CSS for widgets to the
  2087. widget constructors
  2088. * src/wt/Ext/Widget.C, src/wt/WJavaScriptSlot.C: fix bugs when
  2089. using setId() to override the auto-generated id's.
  2090. * src/wt/WEnvironment[.C]: make hostName() and clientAddress()
  2091. robust to proxies at either the client or server side, add
  2092. urlScheme() method.
  2093. * src/fcgi/Server.C, src/http/PosixMain.C,
  2094. src/web/WebController.C: add support for multiple entry points
  2095. * src/http/Configuration.C: add --servername option to override
  2096. the DNS name as default host name
  2097. * src/http/Configuration.C: fix -1 error when removing trailing
  2098. '/' from directories.
  2099. * src/web/CgiParser.C: use GNU regex when HAVE_GNU_REGEX is defined.
  2100. * src/web/Configuration.C: add behind-reverse-proxy boolean
  2101. configuration option, and separate general from FastCGI specific
  2102. settings
  2103. * src/web/DomElement.C, src/web/EscapeOStream.C,
  2104. src/web/WebRenderer.C: more rendering performance improvements
  2105. * src/web/WebController.C: use GNU regex when HAVE_GNU_REGEX is defined.
  2106. * src/web/WebController.C, src/web/WebRenderer.C,
  2107. src/web/WebSession.C: preliminary support for embedded application
  2108. mode, cross-domain AJAX using dynamic script tags, and automatic
  2109. conversion from relative to absolute URLs
  2110. * src/web/skeletons/: reorganisation to have modular javascript,
  2111. and encapsulation in JavaScript "classes" to allow multiple
  2112. applications in a single page (in the future)
  2113. * src/wt/WApplication.C: make "Loading" feedback work properly on
  2114. all browsers
  2115. * src/wt/WCssDecorationStyle.C: do not generate no-op JavaScript
  2116. * src/wt/WCssStyleSheet[.C]: add functionality to check whether a
  2117. particular rule has already been added
  2118. * src/wt/WMessageResources.C: do not read the same XML file twice
  2119. when locale is empty
  2120. * src/wt/WPushButton.C: do not generated no-op JavaScript
  2121. * src/wt/WResource: change suggestFilename to suggestFileName, add
  2122. addHeader() method
  2123. * src/wt/WSignal.C: fix double removal of a user event signal from
  2124. the exposed signals list
  2125. 18-03-2008:
  2126. * src/wt/WStackedWidget[.C]: fix bug when trying to add a composite
  2127. widget to a stack (cannot yet call hide()) through parent passing,
  2128. reported by Michael Ivanov
  2129. 17-03-2008:
  2130. * src/web/DomElement.C: fix regression introduced 04-03-2008 with
  2131. alternate hiding method interfering with setPositionScheme()
  2132. * src/Ext/ComboBox.C: use modelColumn when indexing into model.
  2133. * src/web/DomElement.C: various performance improvements (const
  2134. char * for string literals)
  2135. * src/web/EscapeOStream[.C]: performance improvements
  2136. * src/web/FileServe.C: performance improvement: avoid char-based I/O
  2137. * src/web/WebRenderer.C: performance improvements: do not use
  2138. formName(), instead use pointer, do not propagateRenderOk() before
  2139. initial render, do stateless slot learning in JavaScript update
  2140. * src/wt/WObject.C: performance improvement: use sprintf() in formName()
  2141. * src/wt/WSignal.C: performance improvements: use local info to
  2142. track whether a signal was exposed instead of the expensive call
  2143. to WApplication
  2144. * src/wt/WWebWidget.C: performance improvements
  2145. * src/wt/WTreeNode[.C]: virtual method displayedChildCount()
  2146. * src/web/skeleton/Ajax.html: fix offset problem in coordinate
  2147. calculations
  2148. * src/wt/TableView[.C]: use SelectionBehavior instead of
  2149. SelectionUnit, which is now deprecated
  2150. * src/wt/WSelectionBox[.C]: add support for multiple selection
  2151. * src/web/DomElement.C: fix button wrap when using IE6 with
  2152. JavaScript disabled
  2153. * all: various documentation cleanups
  2154. 13-03-2008:
  2155. * wthttpd: make build without thread support really work without
  2156. linking to a thread library
  2157. * src/mxml/mxml-file.c: fix unicode encoding to not encode twice,
  2158. bug that was triggered on linux-arm platforms
  2159. * src/mxml: merge with latest official release 2.5
  2160. * src/wt/WDate.C, src/http/Request.C: fix non-cost string literals
  2161. * src/web/CgiParser.C: fix a regression to detect content-type
  2162. 12-03-2008:
  2163. * src/wt/WPainterPath: complete API, largely untested
  2164. 10-03-2008:
  2165. * src/wt/WPainterPath and devices: implement painter path arcTo()
  2166. 06-03-2008:
  2167. * examples/wt-homepage/: updated to emweb design
  2168. * src/wt/WApplication.C: disable state system for WebKit, since it
  2169. does not work at all
  2170. * src/wt/WMessageResources.C, src/wt/WWebWidget.C, src/web/DomElement.C:
  2171. do not let mxml self-close non-self-closing tags (gives problems in IE)
  2172. 05-03-2008:
  2173. * src/wt/WMenu[.C]: added method setRenderAsList() which allows
  2174. the menu to be rendered as an HTML list
  2175. * src/wt/WContainerWidget[.C]: added methods setList(), isList(),
  2176. isOrderedList(), isUnorderedList(), that allow the container to
  2177. be used to render HTML <ul> and <ol> lists.
  2178. 04-03-2008:
  2179. * src/wt/WTable.C: correctly participate in slot learning when
  2180. stubbed
  2181. * src/wt/WWebWidget[.C]: allow alternate method for hiding, which
  2182. propagates to parents. methods does not use display: none
  2183. * src/Ext/ComboBox.C, src/Ext/DateField.C: use alternate method
  2184. for hiding
  2185. 03-03-2008:
  2186. * examples/extkitchen/ExtKitchenExample.C: modify example to use
  2187. a WTable for layout
  2188. 02-03-2008:
  2189. * src/wt/WSignal: connect new signals at_front, since it seems
  2190. that boost signals will call slots being appended to the signal
  2191. during slot invocation -- contrary to the documentation
  2192. * src/wt/W[.*]Image: add support for VML rendering
  2193. * src/wt/WVmlImage.C: make text alignment work properly
  2194. 01-03-2008:
  2195. * src/wt/WMenu[Item][.C]: make itemSelected signal normal signal,
  2196. instead of being called from within stateless slot
  2197. * src/web/WebRenderer.C: do not show 'ignore' for updates to widgets
  2198. not inserted into the widget hierarchy
  2199. * src/wt/WObject.C: do not show internal error when (no)FormData
  2200. is called
  2201. * src/http/WinMain.C: adapted for non-boost asio
  2202. * src/wt/WWebWidget.C: Allow widget reparenting. setParent() for a
  2203. widget who has already a parent used to be a no-op; now it reparents
  2204. the widget.
  2205. * */CMakelists.txt: added 'd' suffix to debug libraries; added
  2206. FindWt.cmake (from Pau Garcia i Quiles)
  2207. * Released 2.1.0
  2208. 29-02-2008:
  2209. * */CMakeList.txt: Restructured the cmake files
  2210. * wthttp: made zlib dependency optional
  2211. * wthttp: asio_error becomes asio_error_code and asio_system_error
  2212. * src/Ext/Widget.C: make setHidden() behave properly also when
  2213. not yet rendered
  2214. 25-02-2008:
  2215. * documentation updates
  2216. 23-02-2008:
  2217. * several fixes for JavaScript handling after a reload of the same
  2218. session
  2219. 22-02-2008:
  2220. * src/wt/WTreeTable.C: fix layout bug when using a border for the
  2221. header
  2222. 16-02-2008:
  2223. * src/wt/WAnchor[.C]: allow referencing to dynamically generated
  2224. documents
  2225. 15-02-2008:
  2226. * src/Ext/TableView.C: implement enableColumnHiding() methods
  2227. * src/, src/http: move to boost-1.34.1 and (boost/non-boost) asio 0.3.9
  2228. * src/Ext/Dialog.C: implement setSizeGripEnabled(bool) method
  2229. * src/Ext/Panel[.C]: add collapse(), expand() methods and fix
  2230. setCollapsed() implementation
  2231. * src/Ext/TableView.C: fix setAutoExpandColumn min and max widths
  2232. 14-02-2008:
  2233. * src/Ext/PagingToolBar.C: render other buttons that were added,
  2234. as suggested by Michael Ivanov, 08-01-2008
  2235. * src/wt/WLabel[.C]: add setBuddy(Ext::FormField *) as suggested
  2236. by Pau Garcia i Quiles, 16-01-2008
  2237. * src/wt/WAnchor[.C]: add setTarget() method
  2238. 13-02-2008:
  2239. * src/Ext/MessageBox.[Ch]: fix delete from buttonClicked crash,
  2240. reported by Alex, 05-01-2008
  2241. * src/wt/WAnchor[.C]: fix anchor implementation problem reported
  2242. by Lasse Karkkainen, 15-01-2008. Note that the API has changed,
  2243. since we no longer use a WLabel (which caused the problem). Unless
  2244. your code relied on the fact that it was implemented using a label
  2245. there should be no problem in adapting to the new API.
  2246. * src/web/WebController.C: fix IE6 history problem reported by Joe
  2247. Croft, 28-01-2008
  2248. * src/web/WebRender.C: fix synchronization problem of form
  2249. objects, bug and patch by Goetz Babin-Ebell
  2250. * src/wt/WContainerWidget.C: syntax fix, by Goetz Babin-Ebell
  2251. * src/wt/WString and related: use UTF8 internally, as suggested by
  2252. Goetz Babin-Ebell
  2253. 02-01-2008:
  2254. * src/wt/WTreeTable[.C]: scroll content while keeping headers fixed
  2255. * src/wt/WTreeNode[.C]: add support for an invisible root node
  2256. * src/Ext/LayoutImpl.C: trigget layout recalculation after adding a
  2257. panel
  2258. * src/Ext/Button.C: fix bug not showing initial enabled/disabled state
  2259. * src/Ext/WWidgetItemImpl.C: wrap non-Container Widgets also, so that
  2260. their style is not lost
  2261. * src/Wt/WPainter: drawLine methods
  2262. * src/web/skeleton/Ajax.html: fix mouse position calculations in
  2263. presence of scrolled widgets
  2264. 01-01-2008:
  2265. * src/web/WebController.[Ch], src/http/HTTPStream.[Ch]:
  2266. addSocketNotifier and removeSocketNotifier as virtual methods in
  2267. WebStream instead of callbacks from wt lib to connector lib
  2268. 30-12-2007:
  2269. * src/wt/WRectF[.C], src/wt/WCanvasPaintDevice[.C], ...: further
  2270. improvements to painting infrastructure
  2271. * src/wt/WSignalMapper: API changes to be able to build on MSVC
  2272. * src/wt/WEnvironment: allow reading content type, and raw CGI
  2273. environment variables
  2274. * src/web/Configuration.C: switch back to default to HTML mime type
  2275. 29-12-2007:
  2276. * src/http/PosixMain.C: use asio::thread by default
  2277. * src/wt/WContainerWidget.C: fix bug to use delete[] instead of delete
  2278. on overflow_ array
  2279. * src/wt/WApplication: add notify(const WEvent& e) method to allow
  2280. custom event exception handling.
  2281. * src/wt/WEnvironment: add cgiValue() method to inspect any CGI
  2282. environment variable
  2283. 18-12-2007:
  2284. * various places: pass string by reference where it makes sense
  2285. * Ext/*: upgrade from Ext 1.x to Ext 2.x series, main addition is a
  2286. full layout management system
  2287. 12-12-2007:
  2288. * src/web/WebRenderer.C, src/web/DomElement.C, ...: serve XHTML
  2289. content-type if the browser accepts it, and if it is not disabled
  2290. in the config.xml file
  2291. * resources/orbited.js: produce valid XHTML (no document.write())
  2292. * resources/rsh.js: produce valid XHMTL (except for IE)
  2293. * src/wt/WApplication[.C]: split javascript in javascript that
  2294. needs to be run before starting the DOM (which is rendered
  2295. everytime the page is reloaded), and javascript that is run to
  2296. manipulate the DOM (which is the default)
  2297. * src/web/DomElement.C: fix button wrap layout that was adding
  2298. extra padding in non-javascript support rendering
  2299. * src/wt/WApplication.C: use lowercase CSS element selectors!
  2300. you will need to change your style sheets accordingly!
  2301. * src/wt/WBrush[.C], src/wt/WPaintDevice[.C],
  2302. src/wt/WPaintedWidget[.C], src/wt/WPainter[.C], src/wt/WPen[.C],
  2303. src/wt/WPointF[.C], src/wt/WVectorImageResource[.C]: initial
  2304. check-in of incomplete painting infrastructure
  2305. 10-12-2007:
  2306. * src/web/WebController.C: keep the server push connection alive
  2307. when receiving a heart-beat
  2308. * src/web/skeleton/Ajax.html: preliminary WinCE IE support
  2309. * src/wt/WImage[.C]: add loaded event
  2310. 02-12-2007:
  2311. * examples/simplechat: added a chat example (replaces previous
  2312. stupid serverpush example)
  2313. * src/web/WServerPushResource.C, resources/orbited.js: several
  2314. improvements to make server-push work
  2315. * src/web/WebSession.C: allow updating another session from within an
  2316. existing session
  2317. * src/wt/WContainerWidget: add setOverflow() method for easier
  2318. scrollbars
  2319. * src/wt/WString: add operator< to be able to put them in std::set<>
  2320. 01-12-2007:
  2321. * src/mxml: updated to mxml-2.4
  2322. * resources/rhs.js, resources/json2005.js, src/wt/WApplication.C,
  2323. src/web/WebController.C: upgraded to RSH 0.6 RC1 (works now in IE,
  2324. Firefox and Opera)
  2325. * examples/hello/hello.C: make example more interesting
  2326. * examples/serverpush/serverpush.C: adapted to test intermixing
  2327. event server and client events
  2328. * src/Ext/TableView.C: disconnect connections when changing model
  2329. * src/fcgi/FCGIStream.[Ch]: add socket notifier stubs
  2330. * src/http/Server.[Ch], src/web/WebController.[Ch]: implement
  2331. socket notification
  2332. * src/http/WtReply.[Ch]: robust handling of server shutdown and
  2333. connection closing
  2334. * src/web/WServerPushResource.C: adapted for orbited.js for as
  2335. server-push library
  2336. * src/web/WebController.C: no longer add --Quited to application
  2337. title when quiting an application
  2338. 27-11-2007:
  2339. * src/Ext/MessageBox.C: fix setting prompt value
  2340. * src/Ext/DataStore[.C], src/Ext/ComboBox[.C],
  2341. src/Ext/TableView[.C]: bundle model changes leading to
  2342. significant reduction in generated JS for model changes.
  2343. * src/Ext/DataStore[.C], src/Ext/TableView[.C]: support resetting the
  2344. model, and process row removals in reverse order
  2345. * src/wt/WAbstractToggleButton.C: use click signal instead of
  2346. change to make checked/unChecked signals work in IE.
  2347. * src/wt/WSignal.C: reorder emission of stateless and dynamic slots,
  2348. to avoid processing on a signal that has been deleted (which should
  2349. not happen in a stateless slot).
  2350. 23-11-2007:
  2351. * src/wt/WButtonGroup, src/Ext/RadioButton.C: add support for
  2352. Ext::RadioButton in WButtonGroup
  2353. 23-11-2007:
  2354. * CMakeLists.txt, src/CMakeLists.txt: add build option to disable
  2355. thread (in wthttpd) altogether
  2356. 22-11-2007:
  2357. * src/Ext/DataStore.C: fix use of DataStore when removing rows
  2358. 15-11-2007:
  2359. * src/Ext/DataStore.C: fix regression bug when inserting rows
  2360. * src/Ext/ComboBox.[Ch]: add activated signal
  2361. * src/Ext/DataStore.C: fix use of DataStore when inserting rows
  2362. 12-11-2007:
  2363. * src/Ext/ProgressDialog.C: don't show by default (unlike Qt)
  2364. 26-10-2007:
  2365. * src/Ext/TableView.C: add missing method implementations
  2366. 21-10-2007:
  2367. * src/Ext/DataStore.[Ch], src/Ext/TableView.[Ch]: support multiple row
  2368. selection, and be robust to sorting by using ids instead of row
  2369. indexes
  2370. * src/Ext/TabWidget[.C]: fix bug where children were not inserted
  2371. into the widget tree, and thus could not implement event handling
  2372. * src/wt/WTreeTableNode.C: fix konqueror/IE6 rendering problems
  2373. 18-10-2007:
  2374. * src/Ext/TableView[.C]: add methods for modifying and inspecting
  2375. the current selection
  2376. 17-10-2007:
  2377. * src/wt/WMessageResources.C: remove the trailing '\n' that was
  2378. being added to every WString in a resourcefile by mxml
  2379. 10-10-2007:
  2380. * examples/extkitchen/ExtKitchenExample.[Ch]: add a password prompt
  2381. dialog example
  2382. * src/wt/WAbstractToggletButton.[C], src/wt/WCheckBox.[Ch],
  2383. src/wt/WRadioButton.[C]: fix reversion caused by constructor with
  2384. bool as first argument resulting in missing label text
  2385. * src/wt/WFormWidget.[C]: add setFocus() method
  2386. * src/wt/WInPlaceEdit.C: focus line edit using setFocus()
  2387. stateless slot
  2388. * src/wt/WScrollArea.[C]: add vertical scrollbar stuff
  2389. 01-10-2007:
  2390. * src/web/skeleton/*.html: Reorder inline and external stylesheets so
  2391. that Wt's default rules can be overridden by applications
  2392. * src/wt/WAnchor: Inherit from WContainerWidget so that other stuff can
  2393. be added to it
  2394. 27-09-2007:
  2395. * src/CMakeLists.txt: integrate mxml sources directly in libwt.so (to
  2396. avoid the static non-PIC .a in dynamic .so problem with CMake)
  2397. 24-09-2007:
  2398. * resources/dhtml_dhtmlHistory.js, src/web/WebController.C: use
  2399. dynamically generated blank image
  2400. * src/wt/WApplication.C: use dhtml_dhtmlHistory.js in directory
  2401. specified using resourcesURL property
  2402. * src/web/skeleton/Ajax.html: fix Loading... CSS for Internet Explorer
  2403. 21-09-2007:
  2404. * src/wt/WMenuItem.C: fix segfault when container stack is deleted
  2405. before menu.
  2406. * src/mxml/*: supply a version of mxml(patched 2.3) which is used
  2407. by default instead of a system-installed mxml.
  2408. 11-09-2007:
  2409. * src/wt/WSignal: fixed EventSignal.emit() to also emit stateless
  2410. slots.
  2411. 08-09-2007:
  2412. * src/wt/WMenuItem, src/wt/WMenuItem.C: decouple render widget
  2413. from activate signal, move margin for horizontal items from WMenu.C
  2414. * src/wt/WObject, src/wt/WSignal: use WObject::Method typedef
  2415. * src/examples/wt/RoundedWidget.C: implement missing method, add
  2416. enabledRoundedCorners method for changing color in stateless
  2417. slot functions.
  2418. * src/wt/WTabWidget, src/wt/WTabWidget.C, others: implement
  2419. WTabWidget with doxygen look, based on WMenu.C
  2420. 07-09-2007:
  2421. * src/Ext/SplitterHandle.C, src/Ext/Splitter.C: implemented full
  2422. awareness of configured minimum and maximum sizes.
  2423. * src/Ext/TableView.C, src/wt/WAbstractItemModel.C: added full
  2424. support for other data types in models with respect to rendering
  2425. and editing
  2426. 04-09-2007:
  2427. * src/CMakeLists.txt: added -DBOOST_SPIRIT_THREADSAFE, fixes
  2428. thread safety problem (Max M)
  2429. * src/http/Reply.C: implemented If-Modified-Since, Last-Modified,
  2430. and 304 Not Modified response codes
  2431. * *CMakeLists.txt: add soversioning
  2432. * src/wt/WDllDefs: added WT_VERSION define (4gsystems)
  2433. * src/wt/WTimer: WTimer memory leak patch (4gsystems)
  2434. 03-09-2007:
  2435. * all: Released 2.0.5.
  2436. Didn't keep track of ChangeLog, intending to improve on
  2437. that, using GNU Changelog guidelines.
  2438. 12-05-2007:
  2439. * Haven't kept track of things in ChangeLog.. Sorry.
  2440. 18-02-2007:
  2441. * various transient and widget memory improvements
  2442. sample of sizeof() before and after:
  2443. WObject: 48 40
  2444. WResource: 84 60
  2445. WWidget: 92 68
  2446. WWebWidget: 592 108
  2447. WInteractWidget: 1356 300
  2448. WText: 1384 328
  2449. WTable: 1376 320
  2450. 16-02-2007:
  2451. * New widget: WTreeTable and example File Browser.
  2452. 18-12-2006:
  2453. * Use Boost.Signals instead of home-brew signal/slots
  2454. * Drag&Drop seems to work with firefox/konqueror, probably needs more
  2455. testing
  2456. * valgrind checked, no warnings no errors !
  2457. * adopt wide string array
  2458. 05-12-2006:
  2459. * Solaris patches by Patrick Mauritz
  2460. * Drag&Drop, initial implementation (not yet complete)
  2461. * Drag&Drop example
  2462. 01-12-2006:
  2463. * Happy birthday, Wt.
  2464. * many changes not documented in the Changelog.
  2465. 07-09-2006:
  2466. * Support for cookies for session management (when available) instead
  2467. of URL rewriting
  2468. * Support for reading and setting cookies (in respectively WEnvironment
  2469. and WApplication)
  2470. 04-09-2006:
  2471. * Starting to finalize event handling: WMouseEvent and WKeyEvent
  2472. * working on a new example and a new widget: WVirtualImage
  2473. 02-09-2006:
  2474. * Added WTreeNode and WIconPair widgets, derived from the
  2475. treelist example with different loading policies, and OO
  2476. overloading capabilities.
  2477. * Corrected API bug: hide() and show() are non-virtual but
  2478. setHidden() is the virtual one that you should reimplement
  2479. * Remove WCssDecorationStyle from WWebWidget header, and do
  2480. not allocated it until needed. Saves alot on memory usage
  2481. when using many widgets.
  2482. 01-09-2006:
  2483. * Moved Menu from the homepage example to become WMenu. Provides now
  2484. different loading policies for the items, and customizable
  2485. WMenuItem look (through OO inheritance).
  2486. * Fixed a nasty bug in stateless slot learning.
  2487. 30-08-2006:
  2488. * implemented WJavascriptSlot (abdiel) for pure client-side event
  2489. handling
  2490. * implemented WSuggestionPopup
  2491. * use two-phase rendering for all updates, and configuration option
  2492. to change the threshold
  2493. * separated examples in their own doxygen documentation
  2494. * added ContactSuggestions widget to the composer example
  2495. * various documentation improvements
  2496. * fix a bug with deleting a signal while emitting the slots (abdiel)
  2497. * avoid (?) race condition in blur() and click() handler in WSuggestionPopup.C
  2498. 24-08-2006:
  2499. * mindfully implemented all quoting stuff
  2500. * change behaviour at quit(): simply render the last changes, but
  2501. add -- Quited. to the title, and avoid receiving new events.
  2502. * fix non-javascript look for the wrap buttons.
  2503. 22-08-2006:
  2504. * add WWidget::isVisible()
  2505. * workaround for Firefox keeping 'Transferring data from:'
  2506. * yet another WFileUpload implementation -- the final one ?
  2507. * misc improvements to Composer example
  2508. * add support for external stylesheets
  2509. * fix stateless slots discarding changes after serving resource
  2510. * allow caching of WWidget resources
  2511. 21-08-2006:
  2512. * Added the composer example
  2513. * Fixed bug not quoting href attribute in DemoTreeList
  2514. * CgiParser: revert old behaviour, parsing through big requests
  2515. * move helper function escape and replace to DomElement
  2516. * WFileUpload::fileTooLarge in addition to WAppliation::requestTooLarge
  2517. * isLoaded is broken because of WCompositeWidget..., but not needed anyway
  2518. * add WEnvironment::getArgument, by Tomek Mazurek
  2519. * WFileUpload: looks much better (konqueror, opera & firefox).
  2520. * WFileUpload: added alternative firefox implementation that is even better (but is not used now)
  2521. * WFileUpload: add isUploaded to check if calling upload() will do anything
  2522. * WLineEdit: bugfix: escape preset text
  2523. * WText: bugfix: replace newlines with <br/> in plainFormatting
  2524. * WTextArea: bugfix: now set preset text correctly
  2525. * WWebWidget, WCompositeWidget: bugfix: fix destructor javascript code
  2526. * WWebWidget: bugfix: do not propagate renderOk in stubbed widgets
  2527. * WWebWidget: bugfix: escapeText returns the escaped text
  2528. * WWidget: bugfix: resourceMimeType: escape " in javascript code.
  2529. 18-08-2006:
  2530. * Documentation improvements
  2531. * Fixed WFileUpload and FileUpload example (one bug remains)
  2532. * Add propagateRenderOk() instead of creating the complete
  2533. DOM structure
  2534. * prevent XSS attacks at the heart by filtering user supplied
  2535. XHTML.
  2536. * Do not parse CGI input if too big anyway -- simply discard.
  2537. 17-08-2006:
  2538. * Documentation improvements, also doxygenified some reusable
  2539. classes in the examples.
  2540. 16-08-2006:
  2541. * improved look on non-javascript version, konqueror renders
  2542. wt-homepage now ok, but Firefox keeps adding padding inside
  2543. the button...
  2544. 14-08-2006:
  2545. * parse locale from browser and use it as start-up locale
  2546. and other things in WEnvironment
  2547. * release 1.1.5
  2548. 11-08-2006:
  2549. * performance improvement: keep track of widgets that need
  2550. to be repainted, and only process these when finding
  2551. changes in the DOM.
  2552. 10-08-2006:
  2553. * many new features, not kept track off in ChangeLog (bad habit)
  2554. * release 1.1.4
  2555. 13-07-2006:
  2556. * adopted cmake, an autoconf/tool/make alternative.
  2557. 26-04-2006:
  2558. * new: WContainerWidget::insert(WWidget *w, WWidget *before)
  2559. * WCssDecorationStyle background image may be positioned
  2560. * Added a Style example
  2561. 24-04-2006:
  2562. * Patch for gcc 4 compile errors (Alan Ezust).
  2563. * chased any remaining memory leaks in all examples, reworked
  2564. WCompositeWidget implementation -- you will need to update any code
  2565. * WFileUpload improvements: looks better, works better
  2566. Added a changed signal which allows capturing file selection on
  2567. some browsers
  2568. * WApplication: limit post-size API
  2569. * CgiParser: make buffer static
  2570. 22-04-2006:
  2571. * fix session behaviour with multiple fastcgi servers for high
  2572. performance settings
  2573. * added WDoubleValidator and WRegExpValidator and example of a
  2574. custom validator -- DateValidator
  2575. 20-04-2006:
  2576. * kick buggy cgi_util.c in favour of C++ CgiParser
  2577. * rewrote WFileUpload -- works well but looks ugly (most of the time)
  2578. * fixed some memory-leaks indicated by valgrind
  2579. 14-04-2006:
  2580. * many changes in the last months that were not recorded
  2581. in the Changelog.
  2582. 16-01-2006:
  2583. * add new example hangman, contributed by Wim Dumon
  2584. * add new example hello-word, contributed by Wim Dumon
  2585. * fixed contentAlignment() on non-inline children
  2586. * moved HorizontAlignment to WWidget (that was ugly!)
  2587. * add support for valgrind, and fixed dito bugs
  2588. * remove excess zeros in object ids
  2589. * release 1.0.14
  2590. 03-01-2006:
  2591. * add WSignalMapper class, suggested by Wim Dumon
  2592. * fix gcc 4 compile error, thanks to Costantino Giuliodori and Udo
  2593. Kreckel.
  2594. * release 1.0.13
  2595. * add WContainerWidget::clear()
  2596. * add WLineEdit::echoMode (Normal/Password)
  2597. 29-12-2005:
  2598. * add javascript but non-ajax code. But does not work with
  2599. netscape 4, because of 'onclick' not working ?
  2600. * release 1.0.12
  2601. 28-12-2005:
  2602. * make WWidget an abstract interface
  2603. * create WWebWidget
  2604. * create WCompositeWidget
  2605. * fixed a bug not initializing margin and padding
  2606. * add non-javascript support
  2607. * add message resource bundles, and support for localization to
  2608. most WWebWidgets
  2609. * add refresh() in WApplication and WWidget, and in wt-homepage
  2610. example.
  2611. 22-12-2005:
  2612. * fix (hack?) for browser going back to Wt page bug
  2613. * added side specific margin and padding, moved padding to
  2614. WContainerWidget
  2615. * More documented members in WWidget
  2616. * release 1.0.11
  2617. 21-12-2005:
  2618. * added WFont, and use in the wt-homepage example (for the navigation
  2619. menu)
  2620. * discovered, but not fixed, the reason why going back to the Wt page
  2621. does not work: when going backward, the page replays the same stuff
  2622. as if it was unloaded. So, we probably want our first keep-alive
  2623. message to be 'load', which should find out which things were
  2624. stubbed, and retransmit these -- are easier just trigger a reload
  2625. 20-12-2005:
  2626. * some bug fixes in WStackedWidget
  2627. * converted homepage to Wt (as new example)
  2628. * add support for WApplication.title()
  2629. * release 1.0.10
  2630. 19-12-2005:
  2631. * started doing ChangeLog
  2632. * read XHTML tutorial at w3org, now properly generate xhtml, no more
  2633. problems caused by closing non-empty tags (such as <select />), and
  2634. fixes some cross-browser inconsistencies such as disabled widgets
  2635. * add security checks around web references to resource and signal
  2636. instances (as suggested by Graydon Hoare).
  2637. * quit the application nicely on timeout by exiting the eventloop
  2638. (as suggested by Wim Dumon).
  2639. * release 1.0.9