KOffice – TDE office suite
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

CHANGELOG-Kexi-js 217KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275327632773278327932803281328232833284328532863287328832893290329132923293329432953296329732983299330033013302330333043305330633073308330933103311331233133314331533163317331833193320332133223323332433253326332733283329333033313332333333343335333633373338333933403341334233433344334533463347334833493350335133523353335433553356335733583359336033613362336333643365336633673368336933703371337233733374337533763377337833793380338133823383338433853386338733883389339033913392339333943395339633973398339934003401340234033404340534063407340834093410341134123413341434153416341734183419342034213422342334243425342634273428342934303431343234333434343534363437343834393440344134423443344434453446344734483449345034513452345334543455345634573458345934603461346234633464346534663467346834693470347134723473347434753476347734783479348034813482348334843485348634873488348934903491349234933494349534963497349834993500350135023503350435053506350735083509351035113512351335143515351635173518351935203521352235233524352535263527352835293530353135323533353435353536353735383539354035413542354335443545354635473548354935503551355235533554355535563557355835593560356135623563356435653566356735683569357035713572357335743575357635773578357935803581358235833584358535863587358835893590359135923593359435953596359735983599360036013602360336043605360636073608360936103611361236133614361536163617361836193620362136223623362436253626362736283629363036313632363336343635363636373638363936403641364236433644364536463647364836493650365136523653365436553656365736583659366036613662366336643665366636673668366936703671367236733674367536763677367836793680368136823683368436853686368736883689369036913692369336943695369636973698369937003701370237033704370537063707370837093710371137123713371437153716371737183719372037213722372337243725372637273728372937303731373237333734373537363737373837393740374137423743374437453746374737483749375037513752375337543755375637573758375937603761376237633764376537663767376837693770377137723773377437753776377737783779378037813782378337843785378637873788378937903791379237933794379537963797379837993800380138023803380438053806380738083809381038113812381338143815381638173818381938203821382238233824382538263827382838293830383138323833383438353836383738383839384038413842384338443845384638473848384938503851385238533854385538563857385838593860386138623863386438653866386738683869387038713872387338743875387638773878387938803881388238833884388538863887388838893890389138923893389438953896389738983899390039013902390339043905390639073908390939103911391239133914391539163917391839193920392139223923392439253926392739283929393039313932393339343935393639373938393939403941394239433944394539463947394839493950395139523953395439553956395739583959396039613962396339643965396639673968396939703971397239733974397539763977397839793980398139823983398439853986398739883989399039913992399339943995399639973998399940004001400240034004400540064007400840094010401140124013401440154016401740184019402040214022402340244025402640274028402940304031403240334034403540364037403840394040404140424043404440454046404740484049405040514052405340544055405640574058405940604061406240634064406540664067406840694070407140724073407440754076407740784079408040814082408340844085408640874088408940904091409240934094409540964097409840994100410141024103410441054106410741084109411041114112411341144115411641174118411941204121412241234124412541264127412841294130413141324133413441354136413741384139414041414142414341444145414641474148414941504151415241534154415541564157415841594160416141624163416441654166416741684169417041714172417341744175417641774178417941804181418241834184418541864187418841894190419141924193419441954196419741984199420042014202420342044205420642074208420942104211421242134214421542164217421842194220422142224223422442254226422742284229423042314232423342344235423642374238423942404241424242434244424542464247424842494250425142524253425442554256425742584259426042614262426342644265426642674268426942704271427242734274427542764277427842794280428142824283428442854286428742884289429042914292429342944295429642974298429943004301430243034304430543064307430843094310431143124313431443154316431743184319432043214322432343244325432643274328432943304331433243334334433543364337433843394340434143424343434443454346434743484349435043514352435343544355435643574358435943604361436243634364436543664367436843694370437143724373437443754376437743784379438043814382438343844385438643874388438943904391439243934394439543964397439843994400440144024403440444054406440744084409441044114412441344144415441644174418441944204421442244234424442544264427442844294430443144324433443444354436443744384439444044414442444344444445444644474448444944504451445244534454445544564457445844594460446144624463446444654466446744684469447044714472447344744475447644774478447944804481448244834484448544864487448844894490449144924493449444954496449744984499450045014502450345044505450645074508450945104511451245134514451545164517451845194520452145224523452445254526452745284529453045314532453345344535453645374538453945404541454245434544454545464547454845494550455145524553455445554556455745584559456045614562456345644565456645674568456945704571457245734574457545764577457845794580458145824583458445854586458745884589459045914592459345944595459645974598459946004601460246034604460546064607460846094610461146124613461446154616461746184619462046214622462346244625462646274628462946304631463246334634463546364637463846394640464146424643464446454646464746484649465046514652465346544655465646574658465946604661466246634664466546664667466846694670467146724673467446754676467746784679468046814682468346844685468646874688468946904691469246934694469546964697469846994700470147024703470447054706470747084709471047114712471347144715471647174718471947204721472247234724472547264727472847294730473147324733473447354736473747384739474047414742474347444745474647474748474947504751475247534754475547564757475847594760476147624763476447654766476747684769477047714772477347744775477647774778477947804781478247834784478547864787478847894790479147924793479447954796479747984799480048014802480348044805480648074808480948104811481248134814481548164817481848194820482148224823482448254826482748284829483048314832483348344835483648374838483948404841484248434844484548464847484848494850485148524853485448554856485748584859486048614862486348644865486648674868486948704871487248734874487548764877487848794880488148824883488448854886488748884889489048914892489348944895489648974898489949004901490249034904490549064907490849094910491149124913491449154916491749184919492049214922492349244925492649274928492949304931493249334934493549364937493849394940494149424943494449454946494749484949495049514952495349544955495649574958495949604961496249634964496549664967496849694970497149724973497449754976497749784979498049814982498349844985498649874988498949904991499249934994499549964997499849995000500150025003500450055006500750085009501050115012501350145015501650175018501950205021502250235024502550265027502850295030503150325033503450355036503750385039504050415042504350445045504650475048504950505051505250535054505550565057505850595060506150625063506450655066506750685069507050715072507350745075507650775078507950805081508250835084508550865087508850895090509150925093509450955096509750985099510051015102510351045105510651075108510951105111511251135114511551165117511851195120512151225123512451255126512751285129513051315132513351345135513651375138513951405141514251435144514551465147514851495150515151525153515451555156515751585159516051615162516351645165516651675168516951705171517251735174517551765177517851795180518151825183518451855186518751885189519051915192519351945195519651975198519952005201520252035204520552065207520852095210521152125213521452155216521752185219522052215222522352245225522652275228522952305231523252335234523552365237523852395240524152425243524452455246524752485249525052515252525352545255525652575258525952605261526252635264526552665267526852695270527152725273527452755276527752785279528052815282528352845285528652875288528952905291529252935294529552965297529852995300530153025303530453055306530753085309531053115312531353145315531653175318531953205321532253235324532553265327532853295330533153325333533453355336533753385339534053415342534353445345534653475348534953505351535253535354535553565357535853595360536153625363536453655366536753685369537053715372537353745375537653775378537953805381538253835384538553865387538853895390539153925393539453955396539753985399540054015402540354045405540654075408540954105411541254135414541554165417541854195420542154225423542454255426542754285429543054315432543354345435543654375438543954405441544254435444544554465447544854495450545154525453545454555456545754585459546054615462546354645465546654675468546954705471547254735474547554765477547854795480548154825483548454855486548754885489549054915492549354945495549654975498549955005501550255035504550555065507550855095510551155125513551455155516551755185519552055215522552355245525552655275528552955305531553255335534553555365537553855395540554155425543554455455546554755485549555055515552555355545555555655575558555955605561556255635564556555665567556855695570557155725573557455755576557755785579558055815582558355845585558655875588558955905591559255935594559555965597559855995600560156025603560456055606560756085609561056115612561356145615561656175618561956205621562256235624562556265627562856295630563156325633563456355636563756385639564056415642564356445645564656475648564956505651565256535654565556565657565856595660566156625663566456655666566756685669567056715672567356745675567656775678567956805681568256835684568556865687568856895690569156925693569456955696569756985699570057015702570357045705570657075708570957105711571257135714571557165717571857195720572157225723572457255726572757285729573057315732573357345735573657375738573957405741574257435744574557465747574857495750575157525753575457555756575757585759576057615762576357645765576657675768576957705771577257735774577557765777577857795780578157825783578457855786578757885789579057915792579357945795579657975798579958005801580258035804580558065807580858095810581158125813581458155816581758185819582058215822582358245825582658275828582958305831583258335834583558365837583858395840584158425843584458455846584758485849585058515852585358545855585658575858585958605861586258635864586558665867
  1. -----------------------------------------------------------------------------
  2. Kexi Development CHANGELOG Document
  3. From jstaniek's Point of View
  4. Copyright (C) 2003-2007 Jaroslaw Staniek js at iidea.pl / OpenOffice Polska
  5. Kexi home page: http://www.kexi-project.org/
  6. -----------------------------------------------------------------------------
  7. For most important commits use: CCMAIL:kexi-devel@kde.org
  8. For interesting commits use:
  9. FEATURE: <desctiption>
  10. CCMAIL:danny@commit-digest.org
  11. For bugfixes use CCMAIL:###-done@bugs.kde.org
  12. Legend:
  13. = -a fix for recently introduced bug or a minor/too technical fix not worth
  14. mentioning in the public changelog
  15. TODO: fix displaying default values in comboboxes (form and tableview)
  16. TODO: use KCompletionBox in (editable/noneditable) comboboxes
  17. 2007-04-11
  18. Forms
  19. - forms having parameter query as data source now ask for parameters
  20. 2.0: merged
  21. 2007-03-21, 22
  22. Table Designer
  23. - clear command history after successful saving of the design
  24. - on switching to data view, do not warn about removing data,
  25. if the data will stay untouched
  26. 2.0: merged
  27. Query Designer
  28. - removed possible crash in data view
  29. 2.0: merged
  30. 2007-03-16
  31. Query Designer
  32. - fixed table sizes in the Design View
  33. - fixed displaying relation connection lines when connected field is not visible
  34. - fixed mouse drop position when target points on a field of table with
  35. scrolled-down contents
  36. - do not show internal relationships for visible lookup fields (JOINs) in SQL view
  37. 2.0: merged
  38. Table View
  39. - make column readonly if query-based data source itself is stored (i.e. has connection)
  40. and lookup column is defined
  41. 2.0: merged
  42. 2007-03-15
  43. KexiDB
  44. - SQL parser can work recursively now (needed when multiple parsers are used
  45. in the same thread, removed possible crash)
  46. 2.0: merged
  47. 2007-03-12..14
  48. Main Window
  49. - main window is activated after closing "Insert image" file dialog
  50. = "find" action: restart searching from start for "Search all rows" mode if:
  51. == user has changed the value to find since previous searching, or
  52. == user has recently changed direction to "Search all rows"
  53. - searching is performed within lookup values as well
  54. Simple Printouts
  55. - fixed problem with records printed between page boundaries
  56. - fixed problem with updating print preview's page navigator when number of pages differs
  57. compared to previous preview
  58. 2.0: merged
  59. Table View
  60. - usability: within cells of type "Image" pressing Tab, Shift+Tab, Left
  61. or Right keys now closes the popup and moves the cursor
  62. 2.0: merged
  63. 2007-03-07
  64. Simple Printouts
  65. - fixed refreshing print preview after table data or query results changed
  66. 2.0: merged
  67. 2007-03-02
  68. Simple Printouts
  69. - added support for printing and previewing images
  70. - improved previewing quality
  71. - fixed landscape mode
  72. 2.0: merged
  73. 2007-02-27
  74. Forms
  75. - hide popup in combo box or image box as soon as it loses focus
  76. - changes made to combo box selection is cancelled if the popup
  77. loses focus without accepting
  78. - hide popup in combo box or image box as soon as user moves
  79. to other record (usually with a shortcut)
  80. - fixed handling page down/page up keys within combo box popups
  81. (previously it moved to other record)
  82. 2.0: merged
  83. 2007-02-23
  84. Forms
  85. - for buttons, left/up and right/down keys act like tab/backtab
  86. 2.0: merged
  87. 2007-02-19
  88. Forms
  89. - fixed displaying margin for image boxes
  90. - fixed assigning static images to image boxes without saving form's design;
  91. the images can now be saved also in data view mode
  92. - fixed handling tab key for image boxes
  93. - automatic tab order:
  94. -- fixed ordering for widgets within containers (e.g. a group box)
  95. -- widgets within tab widget pages are ordered by page number
  96. -- widgets inside tab widget that are not visible are skipped when moving
  97. focus using Tab/Shift+Tab key
  98. - Ctrl+Tab shortcut (for switching between tabs) works on windows
  99. if multiline text editor is focused
  100. 2.0: merged
  101. 2007-02-12
  102. Forms
  103. - fields dragging & dropping works for containers (tab widgets, frames and group boxes)
  104. 2.0: merged
  105. 2007-02-09..14
  106. Main Window
  107. - Edit->Find action added, works within table, query and form views as a global,
  108. context-dependent tool window.
  109. 2.0: merged
  110. ~~~~~~~~~~~~~~~~ 1.1.2 bugfix release (with KOffice 1.6.2) ~~~~~~~~~~~~~~~~
  111. 2007-02-09
  112. Table View
  113. - added more actions to the context menu in data view
  114. 2007-02-08
  115. Tools
  116. - added "Delete column" tool for deleting table columns without removing data;
  117. translation enabled; with GUI wrapper
  118. - fixes for "Add column" tool
  119. 2.0: merged
  120. 2007-02-07
  121. KexiDB
  122. = fixed possible crash when running a query without primary key included
  123. (encountered e.g. when a form contains static images)
  124. 2.0: merged
  125. Tools
  126. - added GUI version of "Add column" tool (with translation enabled)
  127. - the tool is now installed
  128. 2.0: merged
  129. 2007-02-06
  130. KexiDB
  131. - queries are supported as row source for lookup fields
  132. - sort query results by primary key fields if there is no explicit sorting specified
  133. (especially useful when there are complex joins)
  134. 2.0: merged
  135. 2007-02-05
  136. Query Designer
  137. - fixed crash if column being removed has sorting set up
  138. 2.0: merged
  139. 2007-01-26..2007-02-05
  140. Table Designer
  141. - added support for multiple visible columns in the combo box editor
  142. (the same for forms)
  143. - on altering table, remove old lookup field schema objects;
  144. make sure you do not save empty type/name fields to XML
  145. - fixed updating "lookup column" tab's contents
  146. 2.0: merged
  147. 2007-01-24..25
  148. Table Designer
  149. - fixed altering table schema when lookup column has been changed
  150. 2.0: merged
  151. Forms
  152. - align autofield's label to left if it is on the top
  153. - do not show popup after clicking on combo box
  154. - fixed popup position of combo boxes inside a container
  155. - fixed saving property values of type "enum" for subwidgets
  156. 2.0: merged
  157. 2007-01-23
  158. Table Designer
  159. - fixed crash on saving design with lookup columns defined
  160. 2.0: merged
  161. Forms
  162. - fixed handling "align" property for image boxes when scaling is off
  163. 2.0: merged
  164. 2007-01-09
  165. Table Designer
  166. - some changes do not require table removing now:
  167. e.g. field's caption, description, text width, defaultValue,
  168. visibleDecimalPlaces
  169. - fixed updating default value when field type changes
  170. 2.0: merged
  171. Forms
  172. - floating point values:
  173. -- values are now formatted in the same way as in table view,
  174. so "decimal places" property of the field is honoured
  175. -- locale-dependent decimal symbol can be entered instead of '.'
  176. 2.0: merged
  177. 2007-01-08
  178. Build system
  179. = fixed generating examples when Kexi binaries are not installed
  180. (it's the case for fresh compilation)
  181. 2.0: merged
  182. General
  183. - Fixed crash related to QtCurve widget style.
  184. 2.0: merged
  185. 2007-01-03
  186. Kexi
  187. - use transliteration table generated by a shell script
  188. to generate identifiers out of unicode characters;
  189. plus some adjustments made by hand
  190. BUG: 133170
  191. 2.0: merged
  192. 2007-01-02
  193. Startup
  194. - Command line option "--show-navigator" added - shows the Project Navigator
  195. side pane even if Kexi runs in User Mode.
  196. 2.0: merged
  197. Kexi
  198. = Example files are generated usign a standard automake rule and are installed
  199. to the Kexi's data dir (so packagers can ship it).
  200. 2.0: merged
  201. 2006-12-21..28
  202. Kexi 2.0
  203. = formeditor lib ported to KDE4 (not tested)
  204. Startup, Main Window
  205. - "User Mode" implemented; command line option --final-mode replaced with --user-mode
  206. as described at http://kexi-project.org/wiki/wikiview/index.php?UserMode;
  207. all actions related to design are hidden as well as property editor and navigator panes
  208. 2.0: merged
  209. General
  210. = removed usage of KEXI_SERVER_SUPPORT macro
  211. 2.0: merged
  212. 2006-12-18..20
  213. Forms
  214. - "Assign Action" dialog:
  215. -- added 'create new' and 'close view' actions with a given context
  216. -- "Current form" actions category added with actions like
  217. "go to next record", "go to new record"
  218. -- more design actions like 'undo' moved to the global category
  219. 2.0: merged
  220. Main Window
  221. - action tooltips made generic (not only for tables),
  222. e.g. "Save changes made to the current row"
  223. 2.0: merged
  224. 2006-12-13..15
  225. Startup
  226. = do not recreate kexi__blobs table when connection is readonly;
  227. - projects created with older Kexi versions can be now opened
  228. in readonly mode too
  229. 2.0: merged
  230. Project Migration
  231. - fixed copying existing objects to the destination database
  232. - MySQL and PostgreSQL
  233. -- fixed importing unicode text and static images if present in the source database (BLOBs)
  234. -- data types are better handled for import
  235. 2.0: merged
  236. Forms
  237. - action selection dialog:
  238. -- the list of menu commands now contains tooltips instead of action texts to improve
  239. readability and is displayed with full width
  240. -- actions are now categorized, so actions that have no practical use are hidden
  241. 2.0: merged
  242. General
  243. = typos fixed in API docs
  244. BUG:138542
  245. 2.0: merged
  246. 2006-12-07
  247. Tools
  248. - added 'add column' utility:
  249. This script adds a new empty column to a table in a .kexi (SQLite 3)
  250. database file without removing data from the table.
  251. 2.0: merged
  252. 2006-12-06..12
  253. Forms
  254. - action selection dialog:
  255. -- moved "Macros" and "Scripts" to "category" list,
  256. which also supports opening tables/queries/forms, running macros/scripts
  257. -- added "Action type" column so it is possible to assign printing
  258. and opening in objects design view
  259. -- added "Execute form's action" category
  260. 2.0: merged
  261. Main Window
  262. - Project Navigator:
  263. == widget moved to widgets/ for reuse
  264. -- double/single clicking on executable objects (macro, script) executes them
  265. 2.0: merged
  266. 2006-12-05
  267. General
  268. - missing i18n()
  269. 2.0: merged
  270. Query Designer
  271. - display "(All Columns)" near the "*"
  272. - SQL editor on Unix: initially, clear undo/redo buffer
  273. (otherwise Ctrl+Z clears the contents)
  274. 2.0: merged
  275. KexiDB
  276. - fixed problem with constructing SQL statements:
  277. for multi-table queries "ORDER BY column" prepends "table" only if "column"
  278. is not a name of alias
  279. 2.0: merged
  280. ~~~~~~~~~~~~~~~~ 2007 (OOPL) ~~~~~~~~~~~~~~~~
  281. 2006-11-28..29
  282. Examples
  283. - added parametrized query 'Owners by age'
  284. = update the parameter query: remove joins because there's still one related bug
  285. 2.0: merged
  286. 2006-11-27
  287. Examples
  288. - "Simple Database" example updated: added "Ownership" form and a macro
  289. - "Simple Database": added "write_simple_text_report" Python script
  290. 2.0: merged
  291. 2006-11-21
  292. Table View
  293. - fixed crash when combo box drop down button is clicked but bound column
  294. is not defined for lookup field
  295. 2.0: merged
  296. Forms
  297. - fixed possible crash when auto field is used for field with lookup
  298. column defined
  299. - sane icon for the Auto Field widget and Label, improved button icon
  300. 2.0: merged
  301. 2006-11-17
  302. CSV Export
  303. - export visible values for lookup columns instead of internal values
  304. Simple Printouts
  305. - print visible values for lookup columns instead of internal values
  306. 2.0: merged
  307. KexiDB
  308. - generate aliases for lookup table names to avoid errors because
  309. of ambiguous table names when the same lookup table is used more than once;
  310. For example, use persons1 and persons1 aliases here:
  311. SELECT service.id, service.emploee, service.service_man, persons1.surname,
  312. persons2.surname, service.OID FROM service
  313. LEFT OUTER JOIN persons AS persons1 ON service.emploee=persons1.id
  314. LEFT OUTER JOIN persons AS persons2 ON service.service_man=persons2.id;
  315. 2.0: merged
  316. ~~~~~~~~~~~~~~~~ 1.1.1 bugfix release (with KOffice 1.6.1) ~~~~~~~~~~~~~~~~
  317. Query Designer
  318. - propery initialize newly appended rows
  319. 2.0: merged
  320. 2006-11-16
  321. Table View
  322. - fixed updating contents of the combobox's internal text editor after
  323. pressing F2 or Enter key
  324. - fixed possible crash on application's close
  325. - fixed copying/pasting values from the combo box (visible text is now copied/pasted)
  326. 2.0: merged
  327. 2006-11-15
  328. Query Designer
  329. - fixed setting up sorting in the design view
  330. - fixed setting up string constants as criteria
  331. 2.0: merged
  332. Table View
  333. - fixed copying time and date/time values to clipboard
  334. - fixed pasting time, date and date/time values from clipboard
  335. 2.0: merged
  336. 2006-11-14
  337. Forms
  338. - fixed displaying Date/Time values
  339. - fixed crash when "Esc" key is pressed to "cancel row changes"
  340. and a combobox widget is focused
  341. - fixed handling Ctrl+Delete key for "Delete current row" action
  342. - fixed crash when an autofield's subwidget is painted but the parent
  343. is about to be deleted
  344. 2.0: merged
  345. Table View
  346. - fixed displaying visible values (usually a text) for lookup columns
  347. when there's a default value defined in the referenced table
  348. - visible values of types other than text or numbers are properly
  349. displayed (including images)
  350. 2.0: merged
  351. Queries
  352. - fixed retrieving parameters of type Text
  353. 2.0: merged
  354. 2006-11-07..13
  355. Main Window
  356. - switch contents of custom property tabs after switching the current tab/window
  357. (needed for Table Designer's tab)
  358. - added a warning message box with "Errors encountered during loading plugins"
  359. message, controled by dontShowWarningsRelatedToPluginsLoading configuration setting.
  360. - groups and items for nonexisting plugins are not visible now
  361. 2.0: merged
  362. Query Designer
  363. - show more error messages on opening query in design view
  364. (e.g. for unsupported column expressions)
  365. - fixed saving relationships: removed too strict checking for datatypes when creating
  366. relationships (signedness)
  367. 2.0: merged
  368. KexiDB
  369. - Parser: improved types evaluation for expressions
  370. - kexi__objectdata.o_data field type changed from BLOB to LongText (backward compatible)
  371. to improve human-readability
  372. 2.0: merged
  373. Forms
  374. - fixed problem with setting "invalid" flag for fields with invalid data source
  375. 2.0: merged
  376. Core
  377. = fixed possible crash on application exit when data changes listener is removed
  378. 2.0: merged
  379. General
  380. - Simple_Database.kexi example updated: combo boxes are now used; example data looks better
  381. 2.0: merged
  382. ~~~~~~~~~~~~~~~~ 1.1.1-pre ~~~~~~~~~~~~~~~~
  383. 2006-10-30..2006-11-06
  384. Table View
  385. - better displaying tooltips for columns with lookup data
  386. - sorting columns with lookup data works
  387. = various improvements for combo boxes
  388. 2.0: merged
  389. Forms
  390. - database-aware combo box form widget works, improved data displaying,
  391. mouse and keyboard handling
  392. - fixed bug #136688 - displaying dates (e.g. with dd.mm.yyyy format)
  393. = do not block Escape key if there are no data changes to cancel;
  394. do not block shortcuts like Shift+Left arrow
  395. 2.0: merged
  396. 2006-10-27
  397. Forms
  398. - display proper record when a new row was saved and user moved to previous record
  399. = fixed possible crash inside the row buffer
  400. 2.0: merged
  401. Table View
  402. = fixed handling data in lookup fields and cursor moving
  403. = fixed adjusting width of column containing lookup field
  404. 2.0: merged
  405. 2006-10-24..26
  406. Query Designer
  407. - New: Added support for parameter queries in design and SQL view.
  408. User is asked for entering value of a parameter in a dialog window.
  409. Paramers can be of any type except Object.
  410. (see also: MSA 2002 Bible, p. 767)
  411. 2.0: merged
  412. Table Designer
  413. - Byte datatype is always set to unsigned now
  414. - "Double precision" datatype is now the default for the floating point
  415. type group instead of Float (so we get better precision by default)
  416. 2.0: merged
  417. Table View
  418. - fixed validating Big Integer numbers
  419. 2.0: merged
  420. Forms
  421. - fixed validating Big Integer numbers
  422. 2.0: merged
  423. 2006-10-20
  424. Forms
  425. = fixed default size of combo box widgets
  426. = removed crash when a combobox without a data source was clicked
  427. 2.0: merged
  428. Main Window
  429. - accessibility: property editor can be focused using an accelerator key;
  430. moreover, Alt+2 now focuses main area and Alt+3 focuses Property Editor
  431. 2.0: merged
  432. Table Designer
  433. - "combo" icon is displayed near the field name that have lookup column defined
  434. 2.0: merged
  435. 2006-10-16
  436. Query Designer
  437. - refresh design view after a sequence of switches:
  438. text view -> data view -> design view
  439. 2.0: merged
  440. KexiDB
  441. = saving "lookup column" metadata supported
  442. 2.0: merged
  443. 2006-10-12
  444. Forms
  445. - fixed displaying contents "Data Source" property for multiple selections;
  446. unnecessary updates removed (GUI is updated only after adding
  447. the last widget to the selection)
  448. 2.0: merged
  449. Table Designer
  450. - "Lookup column" property tab added to the property pane
  451. 2.0: merged
  452. 2006-10-11
  453. KFormDesigner
  454. - removed crash on close and problems with displaying properties
  455. 2.0: merged
  456. Forms
  457. - do not update the property editor for every form (only one is active anyway)
  458. 2.0: merged
  459. 2006-10-09..10
  460. Table View
  461. - fixed drawing selection highlighting for the horizontal header immediately after
  462. scrolling the table
  463. 2.0: merged
  464. Query Designer
  465. - column sorting is also supported for columns with cleared "visible" flag
  466. - SQL view's section header now provides an accelerator
  467. 2.0: merged
  468. ~~~~~~~~~~~~~~~~ 1.1 stable (with KOffice 1.6) ~~~~~~~~~~~~~~~~
  469. 2006-10-06
  470. KexiDB
  471. = fixed constructing ORDER BY part of SQL statements (ambiguous fields)
  472. = when creating "columns by name" cache, also remeber "table.alias" identifiers
  473. = QuerySchema: retrieving infromation about columns much improved
  474. (needed by the parser and designer)
  475. 2.0: merged
  476. Query Designer
  477. = fixes for handling ordering information in design mode when there're asterisks
  478. in the query
  479. 2.0: merged
  480. Forms
  481. - fixed bug #134976: Yes/No field default value does not work properly
  482. (for required field: if you add a checkbox that points to a Yes/No
  483. field that has a default value the default value is not accepted)
  484. 2.0: merged
  485. Table View
  486. - fixed problem with editing floating-point values when there's default
  487. value set to 0.0
  488. 2.0: merged
  489. 2006-10-04, 05
  490. Table View
  491. = fixed displaying values for combobox fields
  492. = it is now possible to have empty combobox item: selecting it clears
  493. the value of combobox
  494. 2.0: merged
  495. Query Designer
  496. - invalid input (e.g. criteria or sorting) now displays a message box with
  497. "Correct" and "Discard Changes" buttons
  498. - added support for setting order of columns in Design and SQL views (ORDER BY)
  499. - fields were sometimes added twice
  500. 2.0: merged
  501. KexiDB
  502. = fixed handling information about columns ordering
  503. 2.0: ported
  504. KoProperty
  505. = Property: added a method for clearing "modified" flag
  506. 2.0: ported
  507. 2006-10-03
  508. Forms
  509. - solution for bug #134773: hide "Editor type" property for auto fields
  510. Kexi 2.0 will have it unhidden.
  511. 2.0: ported
  512. - fixed updating property values of enum type
  513. 2.0: merged
  514. Core
  515. - fixed bug #134977: enabling/disabling of actions in query editor
  516. 2.0: merged
  517. Main Window
  518. - fixed bug #134975: "Data actions do not appear on first open"
  519. workaround used before Kexi 2.0: the Data toolbar is always visible
  520. 2.0: merged
  521. ~ ~ ~ ~ End of aKademy 2006, Dublin ~ ~ ~ ~
  522. 2006-09-30
  523. KexiDB
  524. = support for ORDER BY while generating SQL statements
  525. 2.0: ported
  526. 2006-09-29
  527. Form
  528. - fixed bug #134504 "Several glitches in Kexi GUI"
  529. 2.0: ported
  530. Docs
  531. - fixed bug #134503 "Typos in several Kexi docs"
  532. 2006-09-28
  533. KexiDB
  534. = use COUNT(*), not COUNT() -- fixes MySQL support
  535. = missing ORDER BY usage while generating SQL statements
  536. 2.0: ported
  537. 2.0: 'parser' target added
  538. 2006-09-25
  539. Forms
  540. - The first widget of a given kind should be named "widget" by default,
  541. the second - "widget2" and so on. (thanks to Natalie)
  542. 2.0: ported
  543. 2006-09-21..27
  544. KexiDB
  545. - added support for ORDER BY clause
  546. 2.0: ported
  547. ~ ~ ~ ~ aKademy 2006, Dublin ~ ~ ~ ~
  548. 2006-09-19
  549. Forms
  550. - double clicking items of "Available fields" list inserts a new auto field
  551. - fixed form's selecting data source via the data source pane
  552. 2.0: merged
  553. KexiDB
  554. = fixed retrieving autonumber data
  555. 2.0: merged
  556. ~~~~~~~~~~~~ 1.1 RC1 release (with KOffice 1.6 RC1) ~~~~~~~~~~~~
  557. 2006-09-14
  558. KoProperty
  559. - property is not changed when new and old value are both null
  560. - spin boxes for integer and double values: deleting the contents
  561. now sets null value
  562. = consider unsigner long long and long long values as compatible
  563. 2.0: merged
  564. KexiDB
  565. - do not try to insert default values into a column with unique
  566. flag declared (or even PK)
  567. 2.0: merged
  568. Table View
  569. - Fixed repainting after "Edit->Clear Table Contents" action
  570. = display question mark for null values in boolean column even
  571. if it has to be "notNull"
  572. 2.0: merged
  573. Table Designer
  574. - set "false" as default value for columns with Yes/No types
  575. - when column type changes, default value is updated to match the new type
  576. (e.g. casted from integer to text; incompatible values are removed)
  577. 2.0: merged
  578. 2006-09-11..13
  579. KoProperty
  580. = fixed group widget's height
  581. 2.0: merged
  582. Table View
  583. = fixed drawing drop-down arrow for styles like ThinKeramik
  584. 2.0: merged
  585. - more shortcuts added, shortcuts are now usable and a bit MSA-like
  586. -- CTRL+End now moves to the last field in the last record
  587. (previously: the last record)
  588. -- CTRL+Home now moves to the first field in the first record
  589. (previously: the first record)
  590. -- CTRL+PgDown now moves to the next record
  591. -- CTRL+PgUp now moves to the previous record
  592. -- CTRL+Plus or CTRL+= now moves to the new record
  593. = some common code moved to KexiDataAwareObjectInterface from KexiTableView,
  594. thus allowing to reuse it in forms
  595. 2.0: merged
  596. Forms
  597. - fixed tab/backtab key handling
  598. - fixed displaying custom label text when "Auto Label" property is off
  599. - handling of global shortcuts like CTRL+PgDown is now shared with
  600. Table View (accesibility: it is now possible to move to next/previous
  601. record using keyboard)
  602. - moving to new row sets the focus in the first data-aware widget
  603. (in tab order)
  604. - fixed leaving from "editing" state on "accept row changes" or moving
  605. to other record
  606. 2.0: merged
  607. 2006-09-08
  608. Table Designer
  609. - fixed inserting fields of type "Object"
  610. = "subType" has no longer a special meaning for BLOB types,
  611. "objectType" is used for this purpose
  612. 2.0: merged
  613. KexiDB
  614. = fixed saving custom property values
  615. 2.0: merged
  616. 2006-09-07
  617. Forms
  618. - custom widget factories can be now loaded properly
  619. = X-KFormDesigner-XMLGUIFileName variable added
  620. to the KFormDesigner/WidgetFactory service type, so it's now
  621. possible to specify XMLGUI file for defining toolbar actions
  622. for custom widget factories
  623. 2.0: merged
  624. KexiDB
  625. = Added SimpleCommandLineApp class - an utility for writing small
  626. command line programs and tests that support database connections
  627. out of the box and provide required arguments.
  628. = debug areas fixed
  629. 2.0: merged
  630. 2006-09-04
  631. Kexi docs
  632. - things like 'e.g.' moved to &eg;
  633. - use <procedure> where appropriate
  634. - a chapter about forms translated to english
  635. i18n
  636. = Stephan Binner's fixes #579553 and #579330 ported to 2.0
  637. Forms
  638. - hide QRadioButton widget - current implementation is no-op
  639. ~~~~~~~~~~~~ 1.1 beta 1 release (with KOffice 1.6 beta 1) ~~~~~~~~~~~~
  640. 2006-09-01
  641. Forms
  642. = added KEXI_DB_COMBOBOX_WIDGET define required
  643. to add support for combobox form widget (disabled by default for beta 1)
  644. 2.0: merged
  645. KexiDB
  646. = dependency on newer (>=4.1) client library removed:
  647. MySQL driver now uses 'SELECT @@version' SQL statement instead of dedicated
  648. API function
  649. = added possibility for switching off "LIMIT 1" optmization
  650. for methods like Connection::querySingleString()
  651. (e.g. needed for 'SELECT @@version')
  652. 2.0: merged
  653. 2006-08-29
  654. General
  655. - Added unicode->latin1 mappings for Czech characters
  656. 2.0: merged
  657. 2006-08-25
  658. Table View
  659. = tooltips are displayed also for "insert" row, if needed
  660. Forms
  661. = fixed displaying widget names for unbound auto fields
  662. and image boxes while in design mode
  663. = fixed setting data source for auto field
  664. - initial version of the combo box widget (will be disabled for beta 1)
  665. 2.0: merged
  666. 2006-08-24
  667. Table View
  668. = displaying cell's selection background fixed for nonstandard font
  669. 2.0: merged
  670. 2006-08-22..23
  671. Forms
  672. - display default values in the new row;
  673. default text is displayed with a special style (italic blue) as in table view;
  674. cancelling changes in a widget reverts its contents to default value
  675. (if available); the special style is removed as soon as the editing starts
  676. - "redo" action removed from the data-aware widgets' context menu
  677. (to avoid problems with data handling)
  678. 2.0: merged
  679. Table Designer
  680. = fixed setting subtype by user
  681. 2.0: merged
  682. 2006-08-21
  683. CSV Import Dialog
  684. = fixed delimiter change using the combo box (introduced by the prev commit)
  685. = unnecessary rows are removed after delimiter changes
  686. 2.0: merged
  687. Table View
  688. - do not display default values for autonumbered fields
  689. - do not fill default values for already filled fields
  690. = boolean editor in tristate mode: fixed switching between true/false/NULL values
  691. - display default boolean values in blue
  692. - display tooltip with row number when the vertical scrollbar is dragged
  693. = fixed displaying tooltips for default values in the "insert" row
  694. 2.0: merged
  695. 2006-08-17
  696. Table View
  697. - tooltips are displayed for cells with too large contents
  698. 2.0: merged
  699. CSV Import Dialog
  700. - delimiter detection is now even more clever, allowing to import more complex data:
  701. characters outside quotes have higher priority; additional algorithm counting
  702. number of candidates for delimiters is used.
  703. 2.0: merged
  704. 2006-08-14
  705. Table View
  706. - default values are displayed and work properly with editing
  707. - current row and column are marked as selection on the vertical
  708. and horizontal header sections
  709. 2.0: merged
  710. KexiDB
  711. = improved table name altering
  712. = row edit buffer now handles default values
  713. 2.0: merged
  714. 2006-08-11
  715. KoProperty
  716. = "3rdState" option for boolean types now uses a combo box with 3 items
  717. = removed unmaintained QT_ONLY code
  718. 2.0: merged
  719. = 2.0: some dependency on Qt3 removed
  720. CSV Export
  721. = fixed crash on exporting to clipboard
  722. - time and object values: fixed exporting or copying to clipboard
  723. 2.0: merged
  724. Main Window
  725. = "copy special" action is available after switching back to table data view
  726. 2.0: merged
  727. 2006-08-09
  728. KoProperty
  729. = "3rdState" option added for BoolEdit - i18n'd QString, if not empty,
  730. the the editor's button accept third "null" state with name equal to this string.
  731. When this value is selected, Widget::value() returns null QVariant.
  732. This option is used for example in the "defaultValue" property for a field
  733. of type boolean (in Kexi Table Designer). Third, "null" value of the property
  734. means there is no "defaultValue" specified.
  735. Table Designer
  736. - Added "defaultValue" property to the designer
  737. = Alter Table Test Suite: added "i" variable support (including operator++),
  738. closeWindow command, quit command, and optional "clipboard" flag
  739. for showSchema, showActions, showTableData. Improved showTableData command.
  740. Added "defaultvalues" test.
  741. 2.0: merged
  742. KexiDB
  743. = added BLOB-encoding/decoding-related functions
  744. = improved storing and retrieving "defaultValue" property of table field
  745. 2.0: merged
  746. 2006-08-08
  747. General
  748. = operator tristate::bool() removed (unsafe, comparison with false was broken)
  749. 2.0: merged
  750. Table Designer, KexiDB
  751. - fields of type yes/no have default value set to false (by default)
  752. = schema editing improved; on table altering, default values are inserted
  753. and not-empty values are used is there's no default
  754. 2.0: merged
  755. 2006-08-07
  756. KexiDB
  757. = improved version-related parts of the API
  758. = server version information is retrieved
  759. 2.0: merged
  760. 2006-08-03
  761. KexiDB
  762. = PostgreSQL: use TIMESTAMP, not DATETIME for date/time data type
  763. 2.0: merged
  764. 2006-08-02
  765. CSV Export
  766. = GUI-less exporting is supported in the API (usable for tests)
  767. 2.0: merged
  768. General
  769. - "skip-startup-dialog" command line option added
  770. 2.0: merged
  771. KexiDB
  772. = Field::typeForString() and Field::typeGroupForString() are now case-insensitive.
  773. = added missing support for "indexed" and "type" properties for functions
  774. like KexiDB::setFieldProperty()
  775. 2.0: merged
  776. KoProperty
  777. = Property::oldValue() should not return value() if no value is available.
  778. 2.0: merged
  779. Table Designer
  780. = fixed setting types and subtypes
  781. = fixed a crash when there are more than 50 "alter table" actions
  782. 2.0: merged
  783. 2006-08-01
  784. Table Designer
  785. = A test suite added for table altering
  786. 2.0: merged
  787. ~~~~~~~~~~~~ 1.1 alpha 1 release (with KOffice 1.6 alpha 1) ~~~~~~~~~~~~
  788. 2006-07-31
  789. KexiDB
  790. = custom properties can be set for Field objects
  791. 2.0: merged
  792. Table View
  793. - deleting cell contents containing Yes/No values
  794. - do not display drop-down buttons for read-only data
  795. 2.0: merged
  796. Query Designer
  797. - possible crash fixed when new design is saved in the data view:
  798. only rebuild schema if it has not been rebuilt previously
  799. 1.0/2.0: ported
  800. 2006-07-28
  801. Table Designer
  802. - fields of Yes/No type have "not null" set by default
  803. - fixed clearing "not null" property
  804. 2.0: merged
  805. Table View
  806. - boolean "not null" field displays "false" instead of null in the new row
  807. = fixed column width adjustment
  808. = unused code removed
  809. 2.0: merged
  810. 2006-07-26..27
  811. Property Editor
  812. - fixed image scaling in the image editor
  813. 2.0: merged
  814. Forms
  815. - image box: (in data view) do not allow to show context menu using keyboard
  816. for static image (i.e. if no data source is assigned);
  817. such a widget also ignores focus events (effective focus policy is NoFocus then);
  818. focus frame is painted when needed
  819. 2.0: merged
  820. 2006-07-24
  821. Main Window
  822. - fixed setting focus after switching between views
  823. 2.0: merged
  824. 2006-07-18..2006-07-25
  825. KexiDB
  826. - added support for db-aware lookup fields
  827. 2.0: merged
  828. Table View
  829. - added support for db-aware combobox fields
  830. - displaying values in combo box popup fixed
  831. 2.0: merged
  832. CSV Import Dialog
  833. - leading 0xFEFF "BOM" unicode character is skipped
  834. (http://www.unicode.org/charts/PDF/UFFF0.pdf)
  835. - added "Strip leading and trailing blanks off of text values" option
  836. - fixed changing options
  837. 2.0: merged
  838. 2006-07-17
  839. Forms
  840. - fixed maintaining focus when menu has been clicked
  841. - fixed tab/backtab for button widget (non-db-aware widgets in general)
  842. 2.0: merged
  843. 2006-07-10..14
  844. Forms
  845. - context menus now have consistent title: "<objectname> : <objecttype>"
  846. - cut/copy/paste shared actions work for form widgets in data view
  847. 2.0: merged
  848. Table View
  849. - context menu from image box reused in the Table View's cell editor
  850. - cut/copy/paste/clear actions work for the image cells, including shortcuts
  851. - cut/copy/paste/clear actions work for text/number/boolean cells
  852. - fractional character ("," or ".") can be entered as the first character for
  853. floating-point data types, what means 0.xxxxx
  854. - fixed updating row number info in the record navigator and updating the current
  855. cell after column sorting
  856. - BLOB data is sorted by size
  857. 2.0: merged
  858. KexiDB
  859. - SQLite driver: read only connections work again
  860. 2.0: merged
  861. 2006-07-07
  862. Forms
  863. - AutoField, Image Box: fixed setting background color;
  864. drop-down button keeps its default color
  865. 2.0: merged
  866. Table View
  867. - added drop down button as image cell editor
  868. 2.0: merged
  869. ~~~~~~~~~~~~~~~~ 1.0.2 bugfix release (with KOffice 1.5.2) ~~~~~~~~~~~~~~~~
  870. ~ Now, as 1.0.x is closed for changes, all the changes are merged into 2.0 only ~~
  871. 2006-07-06
  872. Forms
  873. - Data Source tab of the Property Pane: fixed entering field or table/query
  874. name by hand: pressing return accepts selection; focus-out accepts selection;
  875. entering in-progress clears previous selection
  876. 2.0: merged
  877. - displaying images optimized: no background is cached or painted
  878. 2.0: merged
  879. - text box widget now displays text aligned to the left after loosing the focus
  880. 2.0: merged
  881. - possible crash removed when changing property of enum type
  882. 1.0/2.0: ported
  883. Table View
  884. - Image cell editor: appearance improved, tooltip with a thumbnail added,
  885. dropdown button with context menu added (the same as in Image Box form widget)
  886. 2.0: merged
  887. KoProperty
  888. - fixed handling groups
  889. (1.0.2)
  890. Forms
  891. - improvements related to data editing within forms backported from 1.1
  892. (1.0.2)
  893. 2006-07-05
  894. Forms
  895. - AutoField: fixed handling foreground and background colors;
  896. added "foregroundLabelColor" and "backgroundLabelColor" properties;
  897. subproperties coming from super classes are now visible;
  898. better handling internal layout depending on label's position
  899. 2.0: merged
  900. - "tristate" property for check box widget redefined:
  901. supports DefaultTristate, TristateYes, TristateNo values.
  902. Thus, for bound widgets null values can be set
  903. and for unbound widgets only Yes or No values can be set (by default).
  904. 2.0: merged
  905. - fixed creating modified property objects of enum type
  906. 2.0: merged
  907. KoProperty
  908. - fixed possible crash when clicking "undo" button causing
  909. the full property set's reload (it was the case for "Editor Type"
  910. property of the AutoField widget)
  911. 1.0/2.0: ported
  912. 2006-07-04
  913. KexiDB
  914. - fixed copying index and table objects
  915. 1.0/2.0: ported
  916. 2006-07-03
  917. Forms
  918. - AutoField: focus label's associated widget (editor)
  919. when user clicked the label
  920. 2.0: merged
  921. - AutoField: update data source and values for subproperties on form loading
  922. also when we're switching from design to data view
  923. 1.0/2.0: ported
  924. - AutoField: removed crash when table field has been renamed in the data source
  925. 1.0/2.0: ported
  926. 2006-06-28
  927. KexiDB
  928. - SQLite 3.2: fixed opening databases with non-latin1 pathnames
  929. 2.0: merged
  930. CSV Import Dialog
  931. - parsing data improved: values without leading zeros, like 1/2/2006 work;
  932. Since apps like MS Access in the USA creates csv files with date
  933. format month/day/year, (and without leading zeros), text with "/"
  934. inside is assumed to be in this format.
  935. 1.0/2.0: ported
  936. 2006-06-27
  937. Forms
  938. - Image Box widget: now supports saving data in the database!
  939. Fixed filling duplicated data widgets; fixed editing;
  940. "Drop-Down Button Visible" property added.
  941. 2.0: merged
  942. 2006-06-26
  943. Forms
  944. - AutoField widget: changing value of "Widget Type" property reloads the entire
  945. property set, so new properties can appear and unused properties can be hidden
  946. in the Property Editor.
  947. 2.0: merged
  948. KoProperty
  949. - delayed deleting of editors on setting a new property set
  950. 1.0/2.0: ported
  951. - added additional, internal "property change" signal so it will be always emitted
  952. _before_ the public one; thus e.g. it is legal to reload the property set within
  953. the "property change" handler
  954. 2.0: merged
  955. 2006-06-19..23
  956. Forms
  957. - ImageBox widget: drop-down button moved to bottom-right, usability improved
  958. (e.g. keyboard handling for popup), db-awareness added,
  959. frame-related properties added, tab/backtab handling fixed,
  960. fixed updating position of image when the frame changes
  961. 2.0: merged
  962. - AutoField widget: added support for Image (Object) type,
  963. fixed handling color properties, internal editor's properties are
  964. automatically inherited by the AutoField widget as so-called subproperties
  965. 2.0: merged
  966. - removed flickering of the Property Pane after dropping a new field
  967. onto the form
  968. 2.0: merged
  969. 2006-06-06
  970. CSV Import Dialog
  971. - fixed recursion when importing clipboard data
  972. 1.0/2.0: ported
  973. - allow to change the delimiter when importing clipboard data
  974. 1.0/2.0: ported
  975. Migration
  976. - improved usability for selecting type of destination database
  977. (no mention of SQLite for now)
  978. 2.0: merged
  979. KexiDB
  980. - renaming table fields works, table schema is recreated when needed,
  981. and just altered in-place when it's enough to do so
  982. 2.0: merged
  983. Table View
  984. - cell editor: the contents are marked as changed only when the original
  985. value differs from the current
  986. 1.0/2.0: ported
  987. Table Designer
  988. - changing field's description is supported by undo/redo commands
  989. and by alter table actions.
  990. 2.0: merged
  991. - Internal Debugger: added "Real alter table" button,
  992. for convenience, "save" action now uses the old alter table code
  993. 2.0: merged
  994. 2006-06-05
  995. KoProperty
  996. - clear all properties and group names when using operator =
  997. 1.0/2.0: ported
  998. KexiDB
  999. - SQLite library upgraded from 3.0.7 to 3.2.8 (backward compatible),
  1000. to get "table renaming" function.
  1001. 2.0: merged
  1002. - optimization: "rename table" action now uses "ALTER TABLE RENAME TO"
  1003. SQL statement, O(1).
  1004. 2.0: merged
  1005. - X-Kexi-DoNotAllowProjectImportingTo KexiDB driver property added, false by defaut
  1006. 2.0: merged
  1007. 2006-06-02
  1008. KexiDB
  1009. - fixed setting database filename when relative path has been provided
  1010. 1.0/2.0: ported
  1011. - minor utilities added usable for altering
  1012. 2.0: merged
  1013. - table altering improved for SQLite: changing data types will be possible soon
  1014. 2.0: merged
  1015. 2006-05-31
  1016. KoProperty
  1017. - methods in Set::Iterator are now const
  1018. 2.0: merged
  1019. - added propertyValues(const Set& set) utility function
  1020. 2.0: merged
  1021. 2006-05-30
  1022. Table View
  1023. - spreadsheet mode: fixed inserting empty rows and deleting rows
  1024. 1.0/2.0: ported
  1025. Table Designer
  1026. - improved undo/redo actions: deleting and redoing actions fixed
  1027. 2.0: merged
  1028. - added title to the context menu
  1029. 2.0: merged
  1030. KexiDB
  1031. - improved alter table machinery; now fields are identified by UIDs
  1032. to avoid problems with multiple fields sharing the same name
  1033. 2.0: merged
  1034. 2006-05-29
  1035. KoProperty
  1036. - animate clicking on the group title's area
  1037. 2.0: merged
  1038. - added a container widget that can be used to split information into hideable sections
  1039. 2.0: merged
  1040. Form Designer
  1041. - data source pane splitted vertically into two sections for clarity
  1042. 2.0: merged
  1043. Table Designer
  1044. - clear PK when selecting non-integer type
  1045. 2.0: merged
  1046. 2006-05-27
  1047. KoProperty
  1048. - Possible fix for crash. Not sure this is the definitive fix for bug 124917.
  1049. Thanks to Jaime Torres
  1050. 2.0: merged
  1051. - group items now have rather pretty appearance styled with KDE style
  1052. 2.0: merged
  1053. - fixed groups order, API changed: now it's possible to get order of groups
  1054. 2.0: merged
  1055. - sorting disabled when groups are present
  1056. 2.0: merged
  1057. - icons can be defined and displayed within the group items
  1058. 2.0: merged
  1059. 2006-05-26
  1060. KexiDB
  1061. - improved handling extended table schema information
  1062. - improved alter table
  1063. 2.0: merged
  1064. Table Designer
  1065. - improved undo/redo actions; prepared for reuse
  1066. in the table-altering machinery of KexiDB
  1067. 2.0: merged
  1068. 2006-05-25
  1069. Forms
  1070. - set the data source readonly if it comes from query
  1071. 1.0/2.0: ported
  1072. - "Read only" property is now supported by all data-aware widgets,
  1073. and form itself
  1074. 2.0: merged
  1075. - background color of the line edit in read-only mode is blended with white
  1076. to get lighter gray
  1077. 2.0: merged
  1078. - accessibility+usability: read only line edit widget now shows the caret
  1079. 2.0: merged
  1080. - display field caption as title for editor's context menu
  1081. 2.0: merged
  1082. ~~~~~~~~~~~~~~~~ 2006.1.1 (OOPL, bugfix) ~~~~~~~~~~~~~~~~
  1083. 2006-05-18
  1084. Table Designer
  1085. - improved support Undo/Redo actions
  1086. 2.0: merged
  1087. Forms
  1088. - fixed saving data changes for db-aware checkboxes
  1089. (fixed by setting StrongFocus policy as default)
  1090. 1.0/2.0: ported
  1091. ~~~~~~~~~~~~~~~~ 1.0.1 bugfix release (with KOffice 1.5.1) ~~~~~~~~~~~~~~~~
  1092. 2006-05-17
  1093. Main Window
  1094. - Project Navigator: remove Enter and CTRL+Enter accels,
  1095. as these blocks other actions
  1096. - Project Navigator: fix setting focus
  1097. 1.0/2.0: ported
  1098. 2006-05-16
  1099. Migration
  1100. - display error for not found import/export driver
  1101. 1.0/2.0: ported
  1102. Startup
  1103. - (temporary) do not propose importing broken SQLite databases files
  1104. as there is no import driver implemented yet; display error message instead
  1105. 1.0/2.0: ported
  1106. Table Designer
  1107. - fixed saving boolean types for table design
  1108. 1.0/2.0: ported
  1109. 2006-05-15
  1110. General
  1111. - -execute command line option added; useful for executing macros, scripts, etc.
  1112. 2.0: merged
  1113. Table View
  1114. - small API and source code improvements (s/buf/set)
  1115. 2.0: merged
  1116. KoProperty
  1117. - fixed making a deep copy of Set object containing custom properties
  1118. - deep copy of Set object now maintains the original order
  1119. - fixed possible crash on deleting Set object created by copy constructor
  1120. 1.0/2.0: ported
  1121. 2006-05-09
  1122. KoProperty
  1123. - API changed: a few methods are now const; optimization
  1124. 2.0: merged
  1125. 2006-05-08
  1126. KexiDB
  1127. - fixed converting floating-point values to SQL-compatible strings when the number
  1128. was provided as string QVariant
  1129. 1.0/2.0: ported
  1130. Forms
  1131. - fixed entering floating-point values for locales where ',', not '.' is the fractional point
  1132. 1.0/2.0: ported
  1133. Query Designer
  1134. - show error message when switching to other view failed (i18n-safe)
  1135. - just show empty editor when opening a design in text view and there is no sql
  1136. statement found in the backend
  1137. 1.0/2.0: ported
  1138. MDB Import
  1139. - fixed importing decimal (numeric) values
  1140. (by fixing setting fractional point's position and adding negative sign when needed)
  1141. 1.0: ported
  1142. 2006-05-05
  1143. Table Designer
  1144. - Undo/Redo actions added and integrated with table altering
  1145. Internal
  1146. - "AlterTable" tab added to the "Kexi Internal Debugger" window
  1147. ~~~~~~~~~~~~~~~~ 2006.1 (OOPL) ~~~~~~~~~~~~~~~~
  1148. 2006-05-04
  1149. Main Window
  1150. - fixed crash when double (or single, depending on the settings) clicking
  1151. on the empty area of the Project Browser
  1152. 1.0/2.0: ported
  1153. Query Designer
  1154. - fix saving design changes while in Data View
  1155. 1.0/2.0: ported
  1156. 2006-05-02
  1157. CSV Import Dialog
  1158. - fixed importing floating-point values where there are integer
  1159. and floating-point values mixed
  1160. 1.0/2.0: ported
  1161. MDB Import
  1162. - fixed importing floating-point or decimal values (there is still a bug in mdbtools
  1163. with fetching decimal values)
  1164. KexiDB
  1165. - fixed building SQL INSERT statements for "prepared statement"
  1166. 1.0/2.0: ported
  1167. 2006-05-01
  1168. KexiDB
  1169. - ported to Qt4; tests/newapi works
  1170. 2006-04-28
  1171. KexiDB
  1172. - SQLite3 driver: report error when closing database failed
  1173. 1.0/2.0: ported
  1174. Core
  1175. - KexiProject: report error when closing database failed
  1176. Query Data View
  1177. - properly destroy cursor on view removing; this also fixes the problem
  1178. with compacting Kexi database when it cannot be reopened read/write when
  1179. there was opened view with query data because of db cursor blocking the database
  1180. - properly close as soon as the data is fetched (temporary solution)
  1181. General
  1182. - "Kexi Internal Debugger" introduced to help in Kexi development;
  1183. "showKexiDBDebuger" in [General] should be set to true and KEXI_DEBUG_GUI defined
  1184. to use this.
  1185. Form Designer
  1186. - fixed possible crash on closing form
  1187. 1.0/2.0: ported
  1188. 2006-04-27
  1189. KexiDB
  1190. - "visibleDecimalPlaces" property added for table fields of type floating point
  1191. (will be added for decimal and currency too); "Auto" state is supported
  1192. as default so only meaningful fractional digits are be displayed
  1193. Table Designer
  1194. - "visibleDecimalPlaces" property supported for floating point types
  1195. Table View
  1196. - "visibleDecimalPlaces" property supported when displaying and editing
  1197. floating point values
  1198. MDB Import
  1199. - on importing table rows: report failure when inserting row failed
  1200. 2006-04-25
  1201. CSV Import
  1202. - simplify whitespace of text in cells (for preview only)
  1203. - fixed delimiter detecting
  1204. - priority in delimiter detection changed: now ";" has priority over ","
  1205. 1.0/2.0: ported
  1206. Form Designer
  1207. - hide minimumSize and maximumSize widget properties
  1208. 1.0/2.0: ported
  1209. 2006-04-13
  1210. Kexi 2.0
  1211. - merged changes since revision 523723
  1212. KexiDB
  1213. - fixed loading length of text fields within table schema
  1214. 0.9/1.0/2.0: ported
  1215. 2006-04-12
  1216. CSV Import
  1217. - fixed problem with importing data with more than 100 columns (for default settings)
  1218. 1.0/2.0: ported
  1219. - only the first 10KiB of data is loaded for the preview by default; can be adjusted
  1220. by setting ImportExport/MaximumBytesForPreviewInImportDialog option in kexirc
  1221. 1.0/2.0: ported
  1222. - display rows number on the top of the window
  1223. 2.0: merged
  1224. 2006-04-11
  1225. Forms Designer
  1226. - fixed prossible crash while clearing "data source" field name;
  1227. now setting the autofield to unbound state works
  1228. 2006-04-10
  1229. KexiDB
  1230. - QuerySchema(TableSchema* tableSchema) ctor:
  1231. To avoid problems (e.g. with fields added outside of Kexi using ALTER TABLE)
  1232. we do not use "all-tables query asterisk" (see QueryAsterisk) item
  1233. but instead we add all the fields explicity.
  1234. 0.9/1.0/2.0: ported
  1235. - PostgreSQL driver: fixed crash when a new field has been added to existing
  1236. table outside of Kexi
  1237. 0.9/1.0/2.0: ported
  1238. Table Designer
  1239. - More intrusive warning when altering table design
  1240. 1.0: ported (except the message)
  1241. 2.0: merged
  1242. Forms Designer
  1243. - fixed possible crash when switching to data view mode unbound autofield widgets
  1244. - while in data mode, do not display "(unbound)" text for unbound autofield widgets
  1245. 2006-04-08
  1246. KexiDB
  1247. - use SQL-compliant TRUE and FALSE constants for PostgreSQL
  1248. (1 and 0 are unsupported)
  1249. 0.9/1.0/2.0: ported
  1250. 2006-04-07
  1251. Table View & Form View
  1252. - "invalid data warning" tool tip improved and reused in Kexi forms
  1253. - many fixes related to handling date, time and date/time values
  1254. 2006-04-05
  1255. Form Designer
  1256. - KexiDBDoubleSpinBox and KexiDBIntSpinBox replaced line edit with validator because
  1257. of problems with handling null data and signalling changes.
  1258. (there's no backward compatibility problems as these two widgets were used internally
  1259. in the AutoField data widget)
  1260. - fixed saving data changes made within auto field widgets
  1261. - fixed support for tab/backtab key within auto field widgets
  1262. - fixed problem when sometimes form was not filled with data after change of the design
  1263. 1.0/2.0: ported
  1264. 2006-04-04
  1265. CSV Import
  1266. - possible crash fixed after switching character encoding
  1267. 1.0/2.0: ported
  1268. Main Window
  1269. - "Compact Database": now closing the current project is required;
  1270. if there's no project is opened, user is asked for picking one
  1271. Property Editor
  1272. - possible crash fixed when bool editor's state is quickly switched
  1273. 1.0/2.0: ported
  1274. 2006-03-29
  1275. Main Window
  1276. - "Compact Database" admin action added
  1277. KexiDB
  1278. - API version increased to 1.8
  1279. - "Compact Database" implemented for SQLite3 databases
  1280. 2006-03-28
  1281. Startup
  1282. - --readonly command line option added
  1283. TableView
  1284. - boolean editor: only accept clicking on the [x] rect
  1285. 1.0/2.0: ported
  1286. TODO: merge trunk with revision 523723
  1287. ~~~~~~~~~~~~~~~~ 1.0 stable (with KOffice 1.5) ~~~~~~~~~~~~~~~~
  1288. ~~~~~~~~~~~~~~~~ 1.0 rc1 (with KOffice 1.5 rc1) ~~~~~~~~~~~~~~~~
  1289. 2006-03-20
  1290. KexiDB
  1291. - use local sockets by default for local server connections, if possible
  1292. 2006-03-16
  1293. KexiDB
  1294. - added simple encryption for stored passwords
  1295. - allow to save empty password in .kexis and .kexic files
  1296. Startup
  1297. - ask for password (without storing it) for connection data without stored password
  1298. ~~~~~~~~~~~~~~~~ 1.0 beta 2 (with KOffice 1.5) ~~~~~~~~~~~~~~~~
  1299. 2006-02-28, 03-03
  1300. PostgreSQL driver
  1301. - fix for displaying unicode error messages
  1302. - fixed escaping binary data (octal values are used for special characters)
  1303. - fixed loading and saving BLOB data (images within forms work now)
  1304. ~~~~~~~~~~~~~~~~ 2006 (OOPL) ~~~~~~~~~~~~~~~~
  1305. 2006-02-22
  1306. CSV Import Dialog
  1307. - fixed updating "primary key" checkbox
  1308. 2006-02-21
  1309. Table View
  1310. - row highlighting fixed for combo box popup, now it's used for any table view
  1311. 2006-02-20
  1312. Project Import Wizard
  1313. - do not ask about overwriting file if server-based destination has been selected
  1314. 2006-02-17
  1315. Query Designer
  1316. - fixed crash on saving new query design
  1317. Main Window
  1318. - disabled complex and redundant action 'View -> Tool Docks' menu.
  1319. This comes from KMDI, not Kexi itself and will be completely removed
  1320. in KDE4 version. IIRC, we could not hide it now as this may cause crashes.
  1321. Form Designer
  1322. - text label widgets: "word wrap" is turned on by default
  1323. - fixed update "word wrap" property for label widgets
  1324. - fixed random cursor setting for the form surface
  1325. - fixed problems with inserting widgets in a random position
  1326. and random rectangles painting problems
  1327. (all this due to MouseButtonRelease event coming BEFORE MouseButtonPress event)
  1328. 2006-02-16
  1329. Query Designer
  1330. - Row editing within the "Columns" area is accepted before saving.
  1331. If the editing cannot be accepted, saving is aborted.
  1332. Table Designer
  1333. - set property editor to read-only mode for read-only database connections
  1334. Data Table
  1335. - disable combobox editor's dropdown button for read-only database connections
  1336. Property Editor
  1337. - fix for read-only mode: support it also globally at property set level
  1338. - disable editing for read-only widgets
  1339. - fix for displaying double values for current locale
  1340. 2006-02-15
  1341. General
  1342. - when query design has been changed and saved, subsequent openings of a form using
  1343. it will reload its definition. The same for 'page setup' dialogs, etc.
  1344. - fixed crash when 'page setup' dialog is opened, closed, and opened again for
  1345. the same data object
  1346. 2006-02-10, 14
  1347. Main Window
  1348. - closing dialog is now marked as 'pending job', the same as for opening
  1349. - When there are pending jobs, 'quit' and 'close project' actions are
  1350. delayed and executed after last pending job finishes. This removed possible
  1351. crashes when user closed application's main window (or closed project)
  1352. when there are pending jobs.
  1353. 2006-02-03,07
  1354. Forms
  1355. - fixed painting "geometry" rectangle when inserting new widget
  1356. - update tab stops information before displaying "Tab Stops" dialog
  1357. - fixed invalid resizing for widget's inline editor
  1358. - 'edit->tab order' action is available also when form design is not focused
  1359. 2006-02-01
  1360. KexiDB
  1361. - MySQL: added temporary (unoptimized) implementation of Prepared Statement
  1362. - MySQL, SQLite: fixed inserting BLOB data (without Prepared Statements)
  1363. - MySQL: fixed fetching BLOB data (without Prepared Statements)
  1364. - MySQL, PostgreSQL: fixed entering strings containing characters like ' \ "
  1365. - most debug lines commented out
  1366. CSV Import Dialog
  1367. - fixed importing for MySQL backend
  1368. Form Designer
  1369. - fixed saving images (binary data) to MySQL backend
  1370. 2006-01-31
  1371. CSV Export Wizard
  1372. - When data is copied to clipboard, default delimiter is tabulator
  1373. and options are hidden.
  1374. 2006-01-30
  1375. Form Designer
  1376. - fixed saving new forms for MySQL databases
  1377. CSV Import Dialog
  1378. - fixed crash when importing CSV files smaller than 200 bytes
  1379. 2006-01-25,26
  1380. KexiDB
  1381. - SQLite3 driver & kexisql3: fixes for read-only opening
  1382. Main Window
  1383. - fixed usability: read-only flag of the db connection is now visible
  1384. in the statusbar
  1385. - added question about opening db file as read-only when it is already opened
  1386. - disable actions that require write access to the db if it's opened as readonly
  1387. Startup
  1388. - fixed support for "-print-preview" command line option
  1389. Simple Printing
  1390. - enlarge default zoom
  1391. Property Editor
  1392. - fixed editor refreshing after contents loading
  1393. Table View
  1394. - 'inserting enabled' flag is always false for read-only objects
  1395. 2006-01-24
  1396. KexiDB
  1397. - Unicode support fixed for MySQL
  1398. 2006-01-23
  1399. Table View
  1400. - fixed acceping am/pm for entering time values
  1401. - various fixes for entering date, time and date/time values
  1402. - time can be entered without seconds
  1403. - small passive warning box is displayed when entered value is invalid
  1404. (currently for date, time and date/time types)
  1405. ~~~~~~~~~~~~~~~~ 1.0 beta 1 (with KOffice 1.5) ~~~~~~~~~~~~~~~~
  1406. Main Window
  1407. - 'single click opens' is mode is off by default, can be turned on
  1408. Table Designer
  1409. - Object type hidden for beta1
  1410. Table View
  1411. - date, time and date/time values are displayed using KDE settings
  1412. 2006-01-20
  1413. General
  1414. - examples/ directory in the source code tree now contains
  1415. example database(s)
  1416. Form Designer
  1417. - Data source pane: disable widget's data source combo box
  1418. when there is no form's data source defined
  1419. - temporary disable AutoField
  1420. - temporary disable cursor property
  1421. Query Designer
  1422. - fixed displaying criteria if WHERE section contains '('
  1423. - tables positions are preserved if possible when
  1424. relations view updating is needed
  1425. 2006-01-18, 19
  1426. Form Designer
  1427. - widget library naming made more verbose to avoid potential
  1428. conflicts between packages
  1429. - versioning added for widget library plugins; this can also
  1430. avoid conflicts between plugins as we've just renamed them
  1431. Query Designer
  1432. - fixed displaying criteria for table view rows when 'visible'
  1433. column is set to false
  1434. - all-tables-asterisk is also hidden when last table is hidden
  1435. - temporary data member isolated; fixed possible crash when
  1436. switching back from SQL View to Design View
  1437. 2006-01-17
  1438. KexiDB
  1439. - even more verbose error messages for failed SQL statement execution
  1440. CSV Import Dialog
  1441. - tabulator is default field delimiter for clipboard data
  1442. - delimiter detection improved
  1443. General
  1444. - "Dangerous" flag set for potentially destructive dialogs
  1445. - a few redundant i18n strings removed
  1446. Table View
  1447. - data for large table view is destroyed without blocking GUI
  1448. 2006-01-16
  1449. Project Import Wizard
  1450. - hide Kexi file extensions in source connection file dialog's filter
  1451. Main Window
  1452. - fixed saving Project Navigator Side Panel's visibility
  1453. - do not allow to open the same dialog twice - it was possible
  1454. for slowly loading dialogs with large data (e.g. a table view with 10^4 rows);
  1455. pending 'open' actions are now known
  1456. Simple Printing
  1457. - do not paint invalid values of type time, date or date/time
  1458. Table Designer
  1459. - fixed selecting subtypes
  1460. KexiDB
  1461. - SQLite driver: missing {} in PreparedStatement
  1462. - testing connection executes "USE DATABASE" if needed (e.g. for PostgreSQL)
  1463. 2006-01-12
  1464. Table View
  1465. - Usability: Date, Date/Time and Time cell editors reimplemented
  1466. 2006-01-11
  1467. Migration
  1468. - fixed opening project after import if user wanted this
  1469. 2006-01-09
  1470. Form Designer
  1471. - infinite loop removed when updating multiple selection
  1472. 0.9: backported
  1473. 0.8: backported
  1474. - "Assign Action" dialog cleaned
  1475. KexiDB
  1476. - generate cleaner query statements:
  1477. if there's single table in query schema, skip "table." prefix in resulting
  1478. SQL string, e.g. build "SELECT a, b FROM t" instead of "SELECT t.a, t.b from t".
  1479. Query Designer
  1480. - "Totals" column hidden as it is not implemented
  1481. 2006-01-05..6, 10
  1482. CSV Import Dialog
  1483. - optimalization for large data: only about 100 rows are loaded for preview
  1484. - progress dialog added on dialog creation (opening can be cancelled)
  1485. - layout fixes
  1486. - missing column with primary key is added if user wants it
  1487. - optimized importing large (many thousands of rows) tables:
  1488. GUI is not used to store entire table before importing;
  1489. only current record is kept in memory buffer
  1490. - progress dialog added on importing (importing can be cancelled)
  1491. 2006-01-02..04
  1492. Startup
  1493. - "--skip-dialog" command line option added.
  1494. Skips displaying connection dialog\n"
  1495. and connects directly. Available when opening .kexic
  1496. or .kexis shortcut files.
  1497. - opening server-based projects works in File->Open when
  1498. there's already project opened.
  1499. - "--connection <shortcut_filename>" command line option added.
  1500. Specifies a database connection shortcut .kexic file containing
  1501. connection data. Can be used with --createdb or --create-opendb
  1502. for convenience instead of using options like --user, --host
  1503. or --port. Note: Options like --user, --host have precedence
  1504. over settings defined in the shortcut file.
  1505. - creating server-based projects works in File->New when
  1506. there's already project opened.
  1507. Migration
  1508. - Project Migration Wizard is proposed if a server-based database
  1509. is incompatible with Kexi and cannot be opened
  1510. - if a destination for imported project is a server, it is also
  1511. opened after import, if user wanted this
  1512. 2005-12-23, 29
  1513. General
  1514. - (data forms, table view): fixed entering row number in the row navigator
  1515. - win32: fixed saving recently displayed directories in file dialogs
  1516. KexiDB
  1517. - SQLite: opened files are now locked for read/write by default;
  1518. related error messages improved
  1519. Simple Printouts
  1520. - pages to print can be selected
  1521. - number of copies can be entered
  1522. - pages collation switch on or off (i.e. 1-2..n; 1-2..n.... for collation
  1523. and 1-1-...1; 2-2..2; .. for "no collation")
  1524. - page count is properly computed and printed on the footer as "Page x of y"
  1525. - "Page Setup" action added;
  1526. now it's window is only presented when user really wants this
  1527. - text of the page title properly updated
  1528. 2005-12-12..22
  1529. Simple Printouts
  1530. - added Simple Printouts window with print preview and settings
  1531. Table View
  1532. - failed accepting of row editing now cancels window closing
  1533. - fixes for updating row data (this was sometimes visible in Table Designer)
  1534. Table Designer
  1535. - avoid asking twice for saving changes to the design on window closing
  1536. - find unique name for autogenerated primary key fields
  1537. Kexi Core
  1538. - possibility of adding non-db-aware windows/tabs in Kexi
  1539. General
  1540. - added --print and --print-preview command line options
  1541. - (temporary) mini-kolibs added to get print settings stuff and remain
  1542. independent on kolibs
  1543. 2005-12-09
  1544. Forms
  1545. - memory for data is now properly freed before closing a form
  1546. 0.9: backported
  1547. 0.8: backported
  1548. CSV Export
  1549. - CRLF characters are used as in RFC 4180
  1550. - fixed gcc compiler-specific crash
  1551. - quote characters are escaped inside strings
  1552. - date/time values are exported without "T" inside (from ISO format)
  1553. CSV Import
  1554. - fixed handling line endings inside strings
  1555. - time and date/time types import and detection added
  1556. 2005-12-05..08
  1557. Property Editor
  1558. - repaint fixes when column width changes or when persistent selection is set
  1559. - Property::captionForDisplaying() added: beter support for multiline property captions
  1560. - method names improved in Factory
  1561. - do not steal focus when selection is preserved
  1562. - possible crashes fixed when property values are changed in an instant reaction
  1563. on changing a property value in the editor; this is the case e.g. in Kexi Table Designer
  1564. - API docs updated
  1565. General
  1566. - custom "Identifier" property type and editor added (allows only entering identifiers);
  1567. used in Table/Form/Report Designers
  1568. Table Designer
  1569. - Field captions can be now entered by users instead of names.
  1570. Field names are then automatically generated.
  1571. - fixed problem with undo button for subtype combo box
  1572. - support for BLOB (Object) type; "Image" is now the only subtype of this type
  1573. - "unique" and "indexed" properties hidden for BLOB type
  1574. Table View
  1575. - clearing text removes value in combo box field for "enum" mode
  1576. 2005-12-02
  1577. Main Window
  1578. - usability: for IDEAl mode tabs are also visible when one window is opened
  1579. (otherwise user could not know what the window's caption is)
  1580. - usability: added "close" button to the tab widget for IDEAl mode
  1581. - 'hover close button' is now turned off by default for IDEAl mode
  1582. (added HoverCloseButtonForTabs setting to kexirc for changing this)
  1583. 2005-11-29..12-01
  1584. General
  1585. - file dialog's filters now contain only filters that make sense,
  1586. e.g. there's no "mdb" filter when we're writing to a file.
  1587. - usability: file dialogs now store recent directory paths
  1588. in the config file, and this is now used everywhere in Kexi
  1589. - default extension is properly added when there's multiple filters set
  1590. in the file dialog
  1591. Startup Dialog
  1592. - check for existence of a file user has selected to open
  1593. CSV Files Export
  1594. - CSV Export dialog added (also for copying to clipboard)
  1595. with storable export options
  1596. CSV Files Import
  1597. - usability: integer spin box used for "Start at line" option instead
  1598. of a combo box
  1599. 2005-11-28
  1600. Main Window
  1601. - "File->Export->Data Table" and "Edit->Copy Special->As Data Table"
  1602. actions added
  1603. Parts
  1604. - X-Kexi-PartVersion increased to 2
  1605. - added boolean servicetype property: X-Kexi-SupportsDataExport;
  1606. true for tables and queries
  1607. CSV Import
  1608. - space saved: radio buttons replaced by combo boxes
  1609. - added "Always use this encoding when importing CSV data files" option
  1610. to "CSV Import Options" dialog (saved to Kexi config file).
  1611. 2005-11-26
  1612. Project Migration
  1613. - added "Always use this encoding in similar situations" option
  1614. to "Advanced options" dialog (saved to Kexi config file).
  1615. 2005-11-25
  1616. Project Migration
  1617. (API CHANGED)
  1618. - Added versioning for migration drivers (current one is 1.1)
  1619. - Added properties support for migration drivers
  1620. - All error messages are displayed on the last "Failure" page
  1621. - Added "Advanced options" button and dialog, currently with "Encoding" parameter
  1622. for source database. Currently used by MDB driver for MSJet3 files.
  1623. General
  1624. - KexiCharacterEncodingComboBox added - a combobox widget providing
  1625. a list of possible character encodings
  1626. 2005-11-22..23
  1627. Project Migration
  1628. - "All Supported Files" filter added to Kexi file dialogs
  1629. - Files like MS Access .mdb can be now clicked and then Import Wizard will pop up
  1630. with preselected parameters. This also works using command line.
  1631. - Import Wizard's GUI: improved messages, added real Finish page
  1632. - No need to select source driver, it's enought to select a filename or db connection
  1633. Startup
  1634. - Better usablity of 'Open Existing' tab page
  1635. - Better usablity of 'New project wizard'
  1636. General
  1637. - compile fix for some compilers
  1638. 0.9: backported
  1639. 0.8: backported
  1640. 2005-11-15
  1641. Forms
  1642. - AutoField widget: update m_label for font/palette change
  1643. - AutoField widget: display "Unbounded Auto Field" text when
  1644. no data source is set (in design time, like for image box)
  1645. 2005-11-09..14
  1646. Forms
  1647. - AutoField widget: improved behaviour in design time
  1648. (setting caption/type/label position)
  1649. - frameColor property added for widgets like text label or frame:
  1650. behaves well also for "raised" frame shapes
  1651. - new widget KexiFrame, will provide more features; backward compatible
  1652. with QFrame
  1653. - do not allow to move top-level widget's position using arrow keys
  1654. Property Editor
  1655. - fix entering text into string-type editors with 'autoSync' flag
  1656. 2005-11-07
  1657. Startup
  1658. - When opening connection (most often using .kexic file), connection dialog is shown
  1659. so user can adjust connetion parameters, (optionally save them) and finally perform
  1660. the connection to see available databases. If connection failed, connection dialog
  1661. is popping up again.
  1662. 2005-11-02..04
  1663. 2005-10-31
  1664. Project Migration
  1665. - call KexiProject is used to create destination database instead of KexiDB::Connection
  1666. because tables like kexi__parts and kexi__blobs have to be created.
  1667. - Moving kexi projects from database servers to database files works.
  1668. kexi__objects table contents are properly copied if existed in source database,
  1669. so queries, forms etc. are properly imported
  1670. - Wizard's GUI improvements
  1671. KexiDB
  1672. - More verbose error messages:
  1673. Error messages and result numbers can be now inherited by using
  1674. Object::setError( KexiDB::Object *obj, const QString& prependMessage ),
  1675. so less information will be lost while displaying message e.g.
  1676. on failed cursor opening.
  1677. - mysql/pgsql/sqlite/mdb drivers updated for the current API
  1678. - Tables: fixed retrieving field captions and descriptions
  1679. 0.9: backported
  1680. 0.8: backported
  1681. 2005-10-27
  1682. KexiDB
  1683. - kexi__parts internal table is now created within KexiProject,
  1684. not KexiDB::Connection
  1685. - kexi__useractions and kexi__final are no longer created
  1686. Project Migration
  1687. - speedup: table creation and data copying is performed within transactions
  1688. - Added possibility of migrating Kexi projects from one backend to another
  1689. (e.g. from MySql server to SQLite file) internal kexi__ tables are properly recreated;
  1690. data, e.g. for kexi__parts and kexi__blobs is properly copied
  1691. 2005-10-24..26
  1692. Forms
  1693. - Property editor widget for pixmaps now uses KexiBLOBBuffer
  1694. - forms manager turned into singleton,
  1695. and two widget libraries are now created: one for forms and one for reports
  1696. Property Editor
  1697. - show preview box in visible area
  1698. KexiDB
  1699. - DatabaseProperties utility class added to API
  1700. Table View
  1701. - Fixed ugly bug for switching sorting order (thanks Aaron)
  1702. 0.9: backported
  1703. 0.8: backported
  1704. - Better sorting:
  1705. -- NULL values are smaller than everything else
  1706. -- Special sorting for data/time/datetime/bin integers/floating point numbers
  1707. 0.9: backported
  1708. 0.8: backported
  1709. 2005-10-19
  1710. Forms
  1711. - image box doesn't provide popup in data view mode when
  1712. no data source is assigned
  1713. - Kexi Form widgets code splitted
  1714. 2005-10-18
  1715. KexiDB
  1716. - Connection::querySingleRecord() improved
  1717. - QuerySchema::addToWhereExpression() added
  1718. - SQLite driver: fixed BLOBs retrieval
  1719. 2005-10-15
  1720. Table View
  1721. - crash fixed in combo box
  1722. CCBUG: 114697
  1723. 0.9: backported
  1724. 0.8: backported
  1725. - alt+down shortcut can be used to drop down combo box (previously only F4 worked)
  1726. 0.9: backported
  1727. 0.8: backported
  1728. - combo box editor's popup:
  1729. row repainting fixed after current highlighted row has changed
  1730. 0.9: backported
  1731. 0.8: backported
  1732. Table Designer
  1733. - avoid possible infinite recursion
  1734. - selecting non-integer type group using 'type combo' clears PKEY flagm, if set
  1735. 2005-10-14
  1736. Forms
  1737. - It was not possible to change the tab order of
  1738. widgets in the Edit Tab Order dialog with keyboard.
  1739. 2005-10-12
  1740. Project Import Wizard
  1741. - usability++: after successful import, the project is opened
  1742. Query Designer
  1743. - conditions: ambiguous expressions fixed:
  1744. "t1.id > 100" is used instead of "id > 100" in queries like
  1745. SELECT * FROM t1, t2 WHERE t1.id = t2.id AND t1.id > 100
  1746. - fixed possible crash when invalid query design is loaded in design view
  1747. - fixed switching to design mode after invalid query was opened directly in text mode
  1748. - eat parentheses on criteria loading, in WHERE conditions like (a.id = value)
  1749. - also accept tableName.fieldName on criteria loading, not only tableName
  1750. - also accept e.g. "2 = variable" as condition, not only "variable = 2"
  1751. - graphical representation of joins is generated back from SQL statement not only
  1752. based on explicit query schema's relations but are also retrieved
  1753. from "[t1.]f1 = [t2.]f2" expressions within WHERE section
  1754. TODO: joins are not visible when switching from design to text mode (and conversely)
  1755. when there are no columns selected in FROM section, eg. "select from a, b"
  1756. 2005-10-06
  1757. KexiCore
  1758. - Fixed autogenerating object names (e.g. tables, queries) based on caption:
  1759. latin1 base name can be now chosen by translator
  1760. BUG: 104858
  1761. 2005-10-05
  1762. KexiDB
  1763. - PreparedStatement introduced
  1764. - mysql, sqlite drivers: avoid double freeing data member in ConnectionInternal implementations
  1765. 2005-09-27..29
  1766. Forms
  1767. - Images are stored in memory in original form, converting to QPixmap is only performed
  1768. for displayoing purposes. Such original pixmap can be saved back to file.
  1769. Original file name is also kept. KexiImageBox handles pixmap data with QByteArray member
  1770. - KexiBLOBBuffer introduced: Application-wide buffer for local (static) BLOB data like pixmaps.
  1771. For now only pixmaps are supported. Used on design time before objects are stored.
  1772. This allows to copy multimegabyte pixmaps within Kexi without unnecessary memory loss.
  1773. - KexiCustomPropertyFactory introduced: handles Kexi-specific property editor items
  1774. 2005-09-26
  1775. KoProperty lib
  1776. - Editor: possible crash fixed
  1777. - Property: guarded ptrs are used to store pointers to Set objects
  1778. to avoid dangling pointers
  1779. 2005-09-24
  1780. General
  1781. - KEXI_STANDALONE compile time definition added
  1782. - description in 'about data' mentions whether it is a standalone or 'bundled'
  1783. Kexi version
  1784. - .po files are now prefixed with "standalone_" for standalone versions
  1785. to avoid conflicts with KOffice installations
  1786. - yes, 1.0 is marked as standalone version
  1787. - custom defines cleaned up
  1788. 2005-09-21..22
  1789. MDB Driver
  1790. - all strings are now properly decoded (object names and data):
  1791. MDB(UCS2)->MDBTOOLS(UTF8, using libiconv)->KEXI_MDB(QString)
  1792. - non latin1 filenames handling fixed
  1793. - fixed date, date/time types handling (including Y2k problem for years >=1930)
  1794. - fixed currency handling (double type is assumed for now)
  1795. Table View; Data Interface
  1796. - fixed possible crashes for comboboxes within non-db-aware table views
  1797. Table Designer
  1798. - fixed 'subtype' combo refreshing within property editor
  1799. KexiDB
  1800. - DriverManager: to avoid conflicts with other copies of KexiDB,
  1801. eg. in ShowImg application, "kexidb_" prefix is required for KexiDB
  1802. driver files (KDE modules)
  1803. - some docs and above information added for Doxygen
  1804. 2005-09-17..20
  1805. KexiProject
  1806. - createInternalStructures() added; semi-internal (not well suited for kexidb itself)
  1807. structures like kexi__blobs table are created now if not yet exist
  1808. - internal kexi__blobs table introduced: for BLOB storage
  1809. General
  1810. - some i18n strings fixed
  1811. - KEXI_NO_AUTOFIELD_WIDGET, KEXI_NO_IMAGEBOX_WIDGET temp. compile time options added
  1812. 2005-09-16
  1813. Forms
  1814. - FormIO: some fixes in method's naming
  1815. KexiDB
  1816. - tristate type is used in some more methods, so it's now possible
  1817. to catch "no data" cases, not only "server errors"
  1818. - InternalTableSchema class added (to avoid polluting TableSchema/Conenction APIs)
  1819. 2005-09-15
  1820. Kexi supports static and data-aware images boxes
  1821. - properties implemented: scaling (aspect ration can be kept),
  1822. horizontal/vertical alignment
  1823. Project Migration
  1824. - cleaned up the code a bit
  1825. - 'back' button works well on "dest. type" page when file-based driver is used
  1826. - user is warned when no source filename was specified
  1827. Forms
  1828. - view mode (design/preview) is now also passed as option
  1829. to WidgetFactory::createWidget() so widget's look&feel can differ depending
  1830. on the view mode
  1831. 2005-09-14
  1832. Property Editor
  1833. - PixmapEditor improved displaying, and value changes support
  1834. - Editor's widgets have proper geometry set a bit earlier
  1835. 2005-09-06 (aKademy)
  1836. 2005-09-08..13
  1837. Forms
  1838. - data-aware image box widget
  1839. (partial implementation started during flight back from Girona to Warsaw)
  1840. -- "insertFromFile", "saveAs", "cut", "copy", "paste", "delete", "properties"
  1841. popup actions added
  1842. - "readOnly" property added for image, spinboxes and dbfield widgets
  1843. 2005-09-03 (aKademy)
  1844. Relations view
  1845. - fixed redrawing (in an unoptimized way)
  1846. Property Editor
  1847. - updating combobox items after change of list data
  1848. TableView
  1849. - combo box popup behaves more like a normal combo (highlighting, selecting)
  1850. - added "what's this" support for table columns
  1851. 2005-08-27
  1852. Forms
  1853. - a fix for 'value changed' flag and datachangeslistener in autofields
  1854. 2005-08-19
  1855. Startup
  1856. - "-type connection" command line arg added
  1857. (i.e. support for applications/x-kexi-connectiondata mime type)
  1858. Main Window
  1859. - project navigator visibility flag is now stored in config file (usable for IDEAl)
  1860. 2005-08-16..18
  1861. Main Window
  1862. - Toplevel (buggy) and Tabbed (redundant) KMDI modes hidden in Window menu;
  1863. Changing MDI mode now requires application restart (the lesser of two evils)
  1864. - 'Create' menu renamed to more typical 'Insert'; 'Data' menuu moved after 'Format'
  1865. - project navigator: usability fixes
  1866. Widgets
  1867. - KexiSmallToolButton helper class added
  1868. - fixes for KexiFlowLayout
  1869. Forms
  1870. - "other widgets" toolbar popup added for clarity
  1871. 2005-08-12
  1872. Form Designer
  1873. - possible crashes fixed
  1874. 2005-08-10, 11
  1875. Form Designer
  1876. - added possibility of inserting autofields using 'Insert fields' button
  1877. from Data Source tab
  1878. - CommandGroup usability improved: it's now possible to addCommand()
  1879. with flag telling that it will not be executed on CommandGroup::execute()
  1880. - above CommandGroup's feature is used to make a single command
  1881. out of 'inserting multiple autoFields' task
  1882. - top-level form surface is resized when inserted autoField(s) couldn't fit
  1883. - inserting autofields is atomic command supporting undo/redo
  1884. General
  1885. - applications/x-kexi-connectiondata MIME type defined
  1886. 2005-08-09
  1887. Form Designer
  1888. - data source tab: usability improved for field list
  1889. Widgets
  1890. - KexiFieldListView is now displaying unique fields list for queries
  1891. KexiDB
  1892. - 'bool unique' arg supported for QuerySchema::fieldsExpanded()
  1893. and TableOrQuerySchema::columns()
  1894. Query Designer
  1895. - fixes for recent API change of KexiFieldListView
  1896. 2005-08-08
  1897. Main
  1898. - better readibility: new project type selector uses listview, not icon view
  1899. 2005-08-05
  1900. Property Editor
  1901. - '-flat' arg added for test app
  1902. - painting improved for both flat and groupped mode
  1903. 2005-07-29..2005-08-02
  1904. Form Designer
  1905. - field editor's types list reuses KexiDB::fieldName() for i18n
  1906. - autocaption is set properly for field editor on design time
  1907. - field editor's labelCaption is no longer needed
  1908. - propeditor: preserve "changed" flags (marked with BOLD) between property set switching
  1909. - KAcceleratorManager::setNoAccel(QWidget*) is used for widgets in design mode
  1910. to avoid adding accelerators (for FormIO and for new widgets inserting)
  1911. - factories: isPropertyVisibleInternal() is now called for superclass when needed
  1912. (thus, properties like "iconText" are properly hidden)
  1913. - when a widget is deleted or cut, its parent container become selected
  1914. KoProperty library
  1915. - fix for spin box editor's width
  1916. - better display for composed editors for types like Rect
  1917. - fixed undo button's size in Editor
  1918. - font editor fixed
  1919. - Editor: expand/collapse boxes painted using styles; whitespace added on the left hand
  1920. - Editor: editor widget's focusing fixed
  1921. Table Designer
  1922. - a fix for 'subType' combo
  1923. Main Window
  1924. - Navigator: when items renaming, treat "*" ("changed" flag) as a special character,
  1925. not a part of the item's name
  1926. 2005-07-28
  1927. Form Designer
  1928. - field editor's default focus policy is now inherited from internal editor
  1929. 2005-07-25..27
  1930. Form Designer
  1931. - better support for Auto Fields, including drag&drop
  1932. - DesignTimeDynamicChildWidgetHandler added - interface for adding
  1933. dynamically created (at design time) widget to event eater
  1934. - editor inside KexiDBFieldEdit is visible at design time
  1935. - KexiDataItemInterface::field() changed to columnInfo()
  1936. -> more information can be now reused for visual field (i.e. query alias)
  1937. - dbwidgets moved to libformutils as we're reusing many
  1938. of them outside of dbwidgets factory
  1939. - version information is loaded/saved within form's UI string
  1940. 2005-07-23
  1941. Core
  1942. - management related to Part's ID improved; fixed related bug
  1943. 2005-07-22
  1944. KexiDB
  1945. - support for PostgreSQL on win32
  1946. - PostgreSQL driver's transactions handling improved
  1947. 2005-07-21
  1948. Form Designer
  1949. - checkbox inline editing enabled
  1950. - width of inserted widgets' size hint increased a bit to for better usability
  1951. 2005-07-13..20
  1952. General
  1953. - @internal added for private classes to make api docs more readable
  1954. Startup / Server Support
  1955. - connection data editor improved
  1956. - connection data is now storable
  1957. - added support for adding/deleting/editing connection data
  1958. KexiDB
  1959. - BIC CHANGE (witin v1.7): bool ConnectionData::savePassword flag added
  1960. - KexiDB::connectionTestDialog() added for performing test connections
  1961. TODO:::::::
  1962. -fix shared actions availability for ideal mode! (reported by ccpasteur)
  1963. -fix "edit tab order" action: not working when prj browser is focused...
  1964. TODO: koproperty: us ListData-like struct instead of QMap, because data combo boxes should be sorted
  1965. 2005-07-10
  1966. KexiDB
  1967. - BIC CHANGE TO v1.7: (portability fix) pkeyfieldsorder and fieldsorder mapping
  1968. now use int instead of uint
  1969. 2005-07-08
  1970. KoProperty
  1971. - 'list data' introduced to clearly define 'keys' and 'strings' for combobox-like editors
  1972. - cursor editor fixed
  1973. - other minor fixes
  1974. 2005-07-05..07
  1975. Form Designer
  1976. - Data source fields can be dragged from Data Source Pane
  1977. and dropped on the form's surface to create data-aware line edit widgets
  1978. - on new form empty creation, undo/redo history is cleared
  1979. and undo/redo actions are not available
  1980. - on design time, 'dataSource' properties for forms and dataaware widgets
  1981. are synced with data source combo boxes
  1982. 2005-07-04
  1983. Property Editor
  1984. - properties now have 'sortingKey', so the order of properies is maintained
  1985. - fixed bug in Set::clear()
  1986. Form Designer's Property Editor
  1987. - better handling multiple widget selection
  1988. - fixes for widget info label
  1989. 2005-07-02
  1990. Form Designer
  1991. - fixed i18n for property captions
  1992. - fixed filling enum values
  1993. 2005-06-20..30
  1994. - * KexiProperty library made more generic as KoProperty *
  1995. - Kexi now uses KoProperty
  1996. Form Designer
  1997. - Data source tab in the Property Pane implemented
  1998. - 'dataSourceMimeType' property added for data-aware widgets, so it can be explicity
  1999. defined whether an object pointed by 'dataSource' property is a table of query.
  2000. This change is backward compatible.
  2001. - fixed switching property buffers when switching between child windows
  2002. - record navigator is now hidden if there's no data source assigned for a form
  2003. Query Designer
  2004. - object combo box now also contain queries (supporting queries is not implemented yet though)
  2005. the list within the combo is property sorted and grouped; it's reused in 'Data source' tab
  2006. of Prop. Pane; the combo now reacts on deleting/creating/renaming of table or query
  2007. KexiDB
  2008. - TableOrQuerySchema helper class added
  2009. Main Window
  2010. - crash fixed in 'detach window' action
  2011. Core
  2012. - Field draging: API improved, now both query and table fields/columns can be dragged;
  2013. added support for multiple fields dragging
  2014. - added 'higlight object' action for KexiProject (available from property pane)
  2015. - improved API for reaction on object creation/deletion/renaming
  2016. General
  2017. - small icons cleaned up; added better query/form/report/script icons
  2018. - 'X-Kexi-GroupIcon' property no longer used; such icons are too hard to design and recognize
  2019. - KexiFieldListView and KexiFieldComboBox added
  2020. - "kfd:customHeader" element added for inserting custom information like kexiformdesigner's version
  2021. - Number of currently selected tab of the Property Pane is preserved when switching back
  2022. to dialog for a particular part (in design mode). So if a user have looked at "data source" tab,
  2023. it's no longer necessary to click this tab again.
  2024. 2005-06-10..16
  2025. General
  2026. - more utility functions and clases moved to kexiutils library
  2027. Form Designer
  2028. - data aware 'text editor' widget added
  2029. - inline editor pointer is now being kept only within parent factory
  2030. - we're not creating additional (blue) resize handle set, but just changes color
  2031. of existing set thus resizing works well even if we're during inline editing
  2032. - inconsistences with storing pointers to currently edited widget removed
  2033. (m_widget, m_editor members are now private)
  2034. - we're copying common properties from an editing widget to an inline editor
  2035. (e.g. "margin")
  2036. - fixed resetting cursor after editing
  2037. - on creating a new spring, splitter and line widget, orientation is set according
  2038. its to aspect ratio; if the ratio is undefined, popup menu with vertical/horizontal/cancel
  2039. options is displayed
  2040. - fixed crash when pressing Tab key on form surface in design mode
  2041. - added 2 custom tabs to property pane: Data Source (mockup for now), Widgets
  2042. Property Pane
  2043. - widget class is displayed above property editor
  2044. - blinking reduced on property buffer switching
  2045. 2005-06-08
  2046. KexiDB
  2047. - fixed crash for SQLite2 driver
  2048. CSV Import Dialog
  2049. - deadlock removed when importing CSV text like ","
  2050. Form Designer
  2051. - (all branches) temp. fix: QTabWidget used instead of KTabWidget ('&' bug)
  2052. 2005-06-01
  2053. General
  2054. - (all branches) missing icons added
  2055. KexiDB
  2056. - (all branches) field names converted to lowercase in memory to avoid problems with comparisons
  2057. 2005-05-31
  2058. Core
  2059. - editor within property panel is accepted before buffer switching
  2060. Form Designer
  2061. - record is properly fetched on subsequent switching to Data View mode,
  2062. especially after data source changes
  2063. 2005-05-25
  2064. 2005-05-27
  2065. Form Designer
  2066. - fixed crash when there're missing widgets
  2067. Query Designer
  2068. - bug for relationships creation fixed
  2069. 2005-05-23
  2070. CSV Import Dialog
  2071. - "Start at line" parameter in now better updated
  2072. 2005-05-13, 14
  2073. Form Designer
  2074. - "vAlign" property is now invisible for lineedit widgets (it's noop there)
  2075. - "(autonumber)" label is (identical to the one in tableview) is displayed
  2076. in lineedit and label widgets assigned to autonumbered fields
  2077. - shadow in label widgets is properly set for altered indenting, margins and alignment
  2078. - double focusing of text field fixed
  2079. - "format_font" action added; it's now possible setting font for one or multiple widget's
  2080. standard using font dialog
  2081. Core
  2082. - fixed possible crash when an object has beed saved with a different name than proposed
  2083. TODO:
  2084. - in "kexi" mode, "font" property is not visible e.g. for top-level form widget,
  2085. and other widgets that doesn't display text
  2086. - fix data src updating in the data view when it has been changed in design view
  2087. CSV Import Dialog
  2088. - support for setting primary key (including autodetection)
  2089. - support for 'first row contains column names' flag (including autodetection)
  2090. - column types are autodetected
  2091. - import is performed within a single transaction
  2092. - characted encoding fixes; different encoding can be selected
  2093. - delimiting character is autodetected
  2094. - clipboard support re-added
  2095. - floating-point values are properly parsed
  2096. - empty cells are supported
  2097. - new table name is based on provided filename
  2098. Main Window
  2099. - 'close all' works well if there are more than one yes/no/cancel dialogs required to show
  2100. ~~~~~~~~~~~~~~~~ 0.9 ~~~~~~~~~~~~~~~~
  2101. ~~~~~~~~~~~~~~~~ 0.8 (excluding updated i18n; with KOffice 1.4) ~~~~~~~~~~~~~~~~
  2102. 2005-05-10
  2103. Project Migration
  2104. - MS Access filename filter added for convenience (it's autoselected when needed)
  2105. - SQLite3 type is selected as default for destination engine type (for convenience)
  2106. 2005-05-09
  2107. Forms
  2108. - fixed crash because main window didn't notice property buffer change
  2109. form's property buffer is shared (ObjPropertyBuffer instance)
  2110. - setting and clearing 'formName' property value for subform fixed
  2111. - fixed problems with data in subforms: data provider only sets data
  2112. for own items, not inside subforms (data-awarness is disabled in subforms for now)
  2113. 2005-05-06
  2114. Core, Property Editor, Form Designer
  2115. - powerfull "property options" added to kexi properties:
  2116. can change behaviour of property editor's items
  2117. - properties: for integer types it's now possible to set "min", "max", and "minValueText"
  2118. options; "minValueText", if available, is properly displayed:
  2119. e.g. see:"indent" property of Kexi's label widget
  2120. Form Designer
  2121. - shadow doesn't blink; properly refreshed on 'indent' property change
  2122. KexiDB
  2123. - inserting rows with autoinc values > than 0x7fffffff supported
  2124. 2005-05-05
  2125. Form Designer
  2126. - basic data type validating added to lineedit widget
  2127. - spring drawing improved
  2128. TODO: fix KIntValidator::validate()?
  2129. 2005-05-04
  2130. Form Designer
  2131. - row deleting and inserting implemented
  2132. - when started new row editing, 'next' btn is enabled (code shared with table view)
  2133. - "+ button" code shared with table view
  2134. 2005-05-02
  2135. KexiDB
  2136. - we're handling application/x-sqlite2 and application/x-sqlite3
  2137. (those mime types are defined within kexi but we'll also add them for another KDE
  2138. release)
  2139. 2005-04-30
  2140. KexiDB
  2141. - magic data is now defined for application/x-sqliteX, not for
  2142. application/x-kexiproject-sqliteX (X == 2 or 3)
  2143. - file-based drivers can now define a list of supported mimetypes, not just
  2144. one mime type (added all known mimetypes thee, including Knoda's mimes, for
  2145. compatibility)
  2146. 2005-04-29
  2147. Form Designer
  2148. - fixed many crashes appearing when a widget name was changed
  2149. - setting duplicated or invalid widget name is now impossible
  2150. 2005-04-28
  2151. Form Designer
  2152. - all known property and enum names are translated; names are simplified
  2153. - more properties turned to advanced set and thus made invisible in Kexi
  2154. - kexiproperty object is created only once for on propbuffer creation
  2155. for every QWidget's property. This fixes problems like
  2156. 'toggleButton' property being added twice to propeditor
  2157. - looking for i18n'd property description or enum value description:
  2158. on failure, we're also asking parent widget factory for this, if one exists
  2159. ~~~~~~~~~~~~~~~~ 0.8 beta 1 (with KOffice 1.4) ~~~~~~~~~~~~~~~~
  2160. 2005-04-27
  2161. Form Designer
  2162. - KexiGradientWidget ifdef'd out for 0.1 release
  2163. (using KEXI_USE_GRADIENT_WIDGET macro) due to problems with performance
  2164. and child widget's palettes
  2165. - added possibility of forcing particular class to be hidden
  2166. (eg. because it's not ready to use yet or makes no sense in current context)
  2167. - fixed creating KexiProperties for enum values
  2168. - property buffer: sometimes enums are remembered as casted to ints,
  2169. sometimes as string representations...
  2170. - a few properties are now hidded due to inmaturity or senseless
  2171. 2005-04-25
  2172. Main Window
  2173. - fixed possible crash of the property editor on detached window closing
  2174. KexiDB/SQL Parser
  2175. - SQL Parser now accepts unicode characters for identifiers and strings
  2176. Project Migration
  2177. - drop existing database before if user configmed overwriting
  2178. - close connection on failures
  2179. - fixes for mdb driver
  2180. 2005-04-22..23
  2181. Table View
  2182. - Ctrl+Delete (delete row) shortcut also works inside cell's lineedit editor
  2183. (default shortcut is overriden)
  2184. Table Designer
  2185. - on switching to design mode, row buffers are initialized after old buffers
  2186. are cleared, not before (this fixes bug with disappearing property buffer)
  2187. Form Designer
  2188. - fix for setting background (gradient widget cleared background color value)
  2189. 2005-04-21
  2190. Main Window
  2191. - 'edit > select all' global shared action added
  2192. Core
  2193. - Active window can be found even if it's detached (as in KMDI).
  2194. This fixes shared actions availability for detached windows.
  2195. Form Designer, Report Designer
  2196. - KexiFormManager reused for reporting
  2197. - we can now assign any kexi action to a button, not only shared one..
  2198. 2005-04-20
  2199. Form Designer
  2200. - we're not plugging to data-related actions for design view mode
  2201. 2005-04-19
  2202. Project Wizard
  2203. - 'finish' button disabled on 'select project type' page
  2204. Form Designer
  2205. - 'delete' key removes selected widget(s); except for top level form widget
  2206. - 'menu' key works
  2207. - avoid redundancy in action-creation code
  2208. - better context menu
  2209. - actions can interoperate with shared actions
  2210. TableView
  2211. - 'menu' key code taken from global settings
  2212. Main Window
  2213. - on startup propeditor is hidden if no project is opened
  2214. Startup
  2215. - Connection Selector: added information how to create connections
  2216. 2005-04-18
  2217. Core
  2218. - KexiProperty::setValue(): QCString type is now compatible with QString type
  2219. Form Designer
  2220. - assigning predefined Kexi actions to buttons
  2221. - WidgetLibrary::setAdvancedPropertiesVisible() added, so advanced properties
  2222. can be hidden in Kexi.
  2223. - WidgetLibrary::isPropertyVisible() improved
  2224. - 'edit pixmap collection' and 'edit connections'
  2225. disabled for current version of Kexi Forms
  2226. - using QString changed to QCString in maaany places
  2227. 2005-04-15..16
  2228. Main
  2229. - Navigator: double clicking on item which has no data view mode available,
  2230. opens it in design mode; Unavailable actions for given object types
  2231. are hidden in popup menu.
  2232. - main window: navigator's layout management fixes, again...
  2233. Form Designer
  2234. - initial version of 'assigning actions to push buttons'
  2235. - resizing main form widget is undoable and considered in setting dirty flag
  2236. - initial size of form surface fixed
  2237. - various fixes for form surface resizing and "Outer Area" text
  2238. Core
  2239. - Dialogs: new objects are not dirty by default but this is changed for forms
  2240. 2005-04-13
  2241. Form Designer
  2242. - On loading, top level form widgets with negative X or Y are moved to 0
  2243. to avoid weird behaviour.
  2244. 2005-04-12
  2245. KexiDB
  2246. - Scale property added for floating-point field types.
  2247. Now types like NUMERIC(precision,scale) are possible to declare.
  2248. Core
  2249. - String "Design of object \"%1\" has been modified." made well translatable
  2250. at plugins level.
  2251. 2005-04-11
  2252. Form Designer
  2253. - it's now possible to inherit features of a widget class from a different factory
  2254. 2005-04-07
  2255. Query Designer
  2256. - properies for rows were not cleared on switching back to design view
  2257. when statement changed
  2258. 2005-04-01..04
  2259. * Many improvements added for Kexi Forms,
  2260. including editable query results. *
  2261. KexiDB
  2262. - BIC CHANGE:
  2263. -- FieldList: field(const QString&) added
  2264. -- QuerySchema: field(const QString&) added;
  2265. insertField() and fieldsExpanded() improved;
  2266. - documentation improved
  2267. Forms
  2268. - setting (predefined) queries as form's dataSource works
  2269. - editing data for _editable_ queries works (but not rows adding or removing)
  2270. - setting "tablename.fieldname" for data-aware widget's dataSource works
  2271. - setting "queryname.fieldname" for data-aware widget's dataSource works
  2272. - when a table is set as form's data source, all primary key's fields
  2273. are always fetched (so editing works well with autonumbers)
  2274. - autoSync set to false for dataSource properties (using KexiDataAwareWidgetInfo)
  2275. - improved support for invalid dataSource property
  2276. - data-aware widgets with invalid dataSource property are now removed from tab-focus cycle
  2277. (setInvalidState() now implies setting ClickFocus flag)
  2278. - on form opening: first data-aware widget with TabFocus is focused (if available)
  2279. - void KexiFormDataProvider::fillDuplicatedDataItems() works well
  2280. also if there are data sources like "tablename.fieldname"
  2281. Forms Library
  2282. - autoSync flag can be overriden independently within every widget factory
  2283. for every single class, using WidgetInfo::setAutoSyncForProperty()
  2284. - when deselecting a widget with autoSync set to false property value is now set properly
  2285. Main
  2286. - KexiBrowser: pressing Enter key to accept item renaming won't execute "open" action
  2287. 2005-03-30
  2288. Forms
  2289. - setting form's background color property fixed
  2290. KexiDB
  2291. - BIC CHANGE: a few dtors made virtual
  2292. - Connection: data inserting/updating/deleting:
  2293. -- more error messages and codes added
  2294. -- we're checking if master table's primary key is available
  2295. - QuerySchema: pkeyFieldsOrder() improved, pkeyFieldsCount() added.
  2296. - FieldList::indexOf() added
  2297. 2005-03-29
  2298. Main Window
  2299. - dock windows' width is managed for TabPageMode in the same way as for ChildframeMode
  2300. - hiding property editor's dock when not needed
  2301. Table/Form Views
  2302. - database cursor deleted when not needed
  2303. Forms
  2304. - writing data changes implemented
  2305. 2005-03-25
  2306. Forms
  2307. - "cancel cell editing" and "cancel row editing" implemented
  2308. 2005-03-10..24
  2309. Forms, TableViews
  2310. - APIs for Forms and TableViews more integrated:
  2311. -- KexiTableEdit now inherits KexiDataItemInterface
  2312. -- KexiDataItemInterface is now used in KexiDataAwareObjectInterface,
  2313. not KexiTableEdit
  2314. -- KexiFormScrollView and KexiDBForm now uses KexiDataAwareObjectInterface API
  2315. for dealing with r/w data
  2316. - data-aware widgets with duplicated data source are updated concurently
  2317. on editing one of them
  2318. - within forms, "column" term is now related not to column within data model,
  2319. but to order of data-aware widget. This "column" value is translated to
  2320. column number within data model when needed. This allows to duplicate data
  2321. widgets, hide them, change their ordering, etc. For example, tab order
  2322. (and visual order) of data-aware widgets is independant of column ordering
  2323. within data model.
  2324. KexiDB
  2325. - BIC CHANGE: QuerySchema::parentTable() renamed to masterTable()
  2326. - QuerySchema::masterTable() now tries to return a table
  2327. if there's only one defined
  2328. - Connection::createTable() - on error, existing table schema object
  2329. is not destroyed (i.e. it is still available e.g.
  2330. using within Connection::tableSchema(const QString& ),
  2331. even if the table was physically dropped.
  2332. This fixes crash for "alter table dialog" when recreating table failed
  2333. (the dialog expects that old table schema won't be destroyed).
  2334. - Connection::resultExists() avoid appending optimizing "LIMIT 1" suffix when
  2335. the query statement is not "SELECT".
  2336. - Connection::createTableStatement(): length parameter is now only used
  2337. for text and not long text field types.
  2338. Alter Table Dialog
  2339. - changing subType to LongText hides "length" property;
  2340. changing subType to Text shows "length" property.
  2341. 2005-03-04
  2342. KexiDataAwareObjectInterface (TableView)
  2343. - fixed setting cursor position (and iterator) when changing selected
  2344. row after row editing
  2345. 2005-03-03
  2346. - doc/dev/compile_time_options.txt document added
  2347. KexiDB
  2348. - API CHANGED - version 1.5
  2349. - KexiMessageHandler moved to KexiDB::MessageHandler, KexiDB::Title added
  2350. as public available, KexiDB::Object now uses MessageHandler.
  2351. KexiProject
  2352. - KexiProject now uses recent KexiDB additions
  2353. Migration (Import Project Wizard)
  2354. - fixed accepting entered target db filename
  2355. - user is asked for confirming overwrites
  2356. Main
  2357. - KEXI_CUSTOM_HARDCODED_CONNDATA temp. compile-time option added,
  2358. see doc/dev/compile_time_options.txt
  2359. KexiStartupFileDialog
  2360. - Esc key is filtered-out so it's not hidden and
  2361. dialogs using this widget can bahave properly
  2362. 2005-02-27
  2363. KexiDB
  2364. - mysql/sqlite drivers: fixed problem with xxxxConnection::value(int)
  2365. when we're using raw sql statements (so expanded field list is empty)
  2366. - MySQL Driver: a hack to enable local connections without using
  2367. a local socket file: if user doesn't want to use local socket file,
  2368. host name is automatically set (internally) to "127.0.0.1"
  2369. before connecting. This is especially usable when we're using SSH tunneling.
  2370. 2005-02-26
  2371. Widgets
  2372. - KexiTableRM moved to KexiRecordMarker in libguiutils
  2373. Forms
  2374. - "pen" icon is displayed on editing within a standard form, see:
  2375. www.kexi-project.org/wiki/wikiview/index.php?Forms%20embedded%20inside%20Kexi#3.5._
  2376. - fixed Tab/BackTab ordering when there're widgets without TabFocus focus policy set
  2377. - TabOrder dialog: "dirty" flag is always set to the curent form when the dialog is accepted
  2378. KexiDB
  2379. - Connection::dropTable(): be sure that we handle the correct TableSchema object
  2380. - Connection::storeObjectSchemaData() if we already have stored a schema data
  2381. with the same name and type - just update it's properties as it would be existing object
  2382. KexiRecordMarker
  2383. 2005-02-23..25
  2384. Forms
  2385. - fixed Tab/BackTab ordering within form's fields, including cycles
  2386. and problems after detaching/attaching windows for Child Frame Mode.
  2387. QApplication::sendEvent() used instead setFocus() for more realistic
  2388. (especially for QLineEdits) focusing effects when tabulator is pressed.
  2389. - QLabel and KexiPixmapLabel available again in KFD
  2390. Main
  2391. - useful Statusbar debug info about focused widget added
  2392. (enable this using KEXI_STATUSBAR_DEBUG compile-time macro)
  2393. 2005-02-21
  2394. Kexi Startup
  2395. - "useLocalSocketFile" option for .kexis file implemented
  2396. Forms
  2397. - "autoTabStops" property added.
  2398. It is synced with changed made by TabStopDialog's checkbox.
  2399. 2005-02-11...2005-02-20
  2400. Kexi Startup
  2401. - Support for ".kexis" shortcut files added. You can now easily create
  2402. a shortcut file once, and connect to your remote database server with
  2403. just one click :)
  2404. - "-type" command line option added
  2405. (specifies a type of a file provided as argument)
  2406. - opened file types are additionally checked by name extension
  2407. (if mimetype was not detected) -- this is useful for shortcut files
  2408. - KexiDBShortcutFile class added
  2409. - database/connection dialog reimplemented
  2410. - KexiDBDriverComboBox added: a combo box for selecting a database driver
  2411. 2005-02-17
  2412. Forms
  2413. - Avoid errors and handle invalid dataSource property values within forms
  2414. - show errors as "#NAME?" in line edits and other data-aware widgets
  2415. 2005-02-04
  2416. KexiDB
  2417. - DateTime values: back to ISO 8601 datetime format:
  2418. http://www.w3.org/TR/NOTE-datetime
  2419. (ie. "1994-11-05T13:15:30" not "1994-11-05 13:15:30")
  2420. --backward compatible
  2421. 2005-02-02
  2422. Tables/Forms
  2423. - navigating within rows optimized by using iterators
  2424. Forms
  2425. - navigating readded (still read-only)
  2426. 2005-01-29..31
  2427. Forms
  2428. - KexiGradientWidget introduced:
  2429. new special effects within form surface;
  2430. Shadow Labels introduced
  2431. (by Christian Nitschkowski; segfault_ii at web.de)
  2432. - "show ui xml code" debug function added to forms
  2433. - 1st attempt to port Forms to updated data-awarness API
  2434. 2005-01-27..29
  2435. Widgets
  2436. - fixed several blind slot-signal connections
  2437. Forms
  2438. - fixed slots/signals signatures with namespaces
  2439. - better resizing new forms contents
  2440. 2005-01-26
  2441. Widgets
  2442. - fixed focusing-out record navigator's line edit
  2443. 2005-01-20
  2444. Core
  2445. - On failed plugins loading, proper error message is associated with KexiPart::Info
  2446. and available later; instead of only assigning it globally to KexiPart::Manager.
  2447. 2005-01-17
  2448. SQL Editor
  2449. - focus is correctly to editor widget
  2450. API, Utils
  2451. - KexiDataAwareView, KexiDataAwareObjectInterface introduced
  2452. - API and GUI Consistency highly improved:
  2453. KexiTableView and subclasses use the same api
  2454. as KexiFormView and all friends
  2455. 2005-01-14
  2456. General
  2457. - KEXI_REPORTS_SUPPORT compile-time define added
  2458. Core
  2459. - new Part Item added after saving to KexiProject object's structure
  2460. and removed from temporary list of unsaved items.
  2461. 2005-01-10
  2462. Forms
  2463. - KexiDataItemChangesListener added to allow signaling changes
  2464. from widgets implementing KexiDataItemInterface
  2465. 2005-01-08
  2466. KexiDB
  2467. - TableSchema: table names should be lower case to ease comparisons
  2468. - we're using "lower(o_name)='givenobjname'" comparison in kexi__objects table
  2469. to avoid problems even if somebody hacked this table with upper case letters;
  2470. thanks to Martin Ellis for mentioning the problem
  2471. Kexi Data-aware Widgets
  2472. - KexiRecordNavigatorHandler interface introduced -handles requests
  2473. generated by KexiRecordNavigator
  2474. Forms
  2475. - Database-aware forms finally introduced
  2476. Core
  2477. - KexiDataItemInterface: An interface for declaring
  2478. widgets to be data-aware
  2479. 2005-01-06
  2480. MainWindow
  2481. - maximized child window (dialog) state is preserved
  2482. (a fix after recent KMDI behaviour changed)
  2483. 2005-01-04
  2484. PropertyEditor
  2485. - prevent scrolling to previously selected item on mouse click
  2486. 2004-12-22
  2487. Reports
  2488. - data view mode: record navigator is now "page navigator"
  2489. (it has also [+] button hidden)
  2490. 2004-12-21
  2491. Core
  2492. - KexiProperty - added 'fixed' flag for 'list' types
  2493. (the flag is used in Property Editor in most cases)
  2494. - KexiPart::ObjectTypes introduced
  2495. - KexiProperty:
  2496. property is unchanged if we're moving from null value to a null pixmap, etc.
  2497. Form Designer
  2498. - some fixes for efficiency
  2499. - WidgetFactory can now define custom i18n'd:
  2500. -property descriptions
  2501. -property value descriptions
  2502. 2004-12-20
  2503. SQLite Drivers (2 and 3)
  2504. *DATABSE FORMAT CHANGED to 1.4*
  2505. - date-time data type is now stored as "YYYY-MM-DD HH:MM:SS", not as
  2506. "YYYY-MM-DDTHH:MM:SS". This is compatible with SQLite format
  2507. http://www.sqlite.org/cvstrac/wiki?p=DateAndTimeFunctions
  2508. The change is backward compatible.
  2509. (thanks for reporting: Richard Groult)
  2510. KexiDB
  2511. - Connection: queryStringList() convenience function added
  2512. - information about "possible problems" is displayed in details sections
  2513. of error message on failed loading db driver
  2514. Migration
  2515. - wizard fixed a bit
  2516. - kexi__* tables are not copied on high-level
  2517. - MySQL Migration driver, contributed by Martin Ellis <m.a.ellis@ncl.ac.uk>
  2518. KexiDB Drivers
  2519. - MySQL driver better splitted to internal and public part,
  2520. so migration driver can easier use it
  2521. 2004-12-18
  2522. Forms
  2523. - WidgetLibrary: check for duplicated factories added
  2524. - factory groups introduced
  2525. - factories loading splitted for lookup/loading stages
  2526. - added 'override' flag for alternate widget class names
  2527. - minor optimizations
  2528. Form Plugin
  2529. - fixed showing form's property right after form's window loading
  2530. - record navigator added in data view
  2531. 2004-12-17
  2532. KPropertyEditor
  2533. - fixed editor positioning
  2534. - bool editor height fixed
  2535. - test: more property types
  2536. 2004-12-14
  2537. Form Plugin
  2538. - handling form's boundaries improved
  2539. - after switching to/from form in data view mode, its contents position is preserved
  2540. - fixed form's size setting in data view mode
  2541. - two form's resize modes introduced, see
  2542. http://www.kexi-project.org/wiki/wikiview/index.php?Forms#Form_Resize_Modes_for_form_windows_inside_Kexi
  2543. - in data view mode, scrollview is properly resized to avoid showing
  2544. outer area and without scrollbars flickering
  2545. General
  2546. - version info moved to kexi_version.h; kexi_global.h is auto-included
  2547. 2004-12-13
  2548. Widgets
  2549. - libkexiguiutils added (KexiDB-independent widgets)
  2550. - KexiRecordNavigator widget added (the old one was unused)
  2551. Core
  2552. - Part::openInstance(): dlg->registerDialog() moved after successful dialog opening
  2553. to avoid focusing non-exisitng dialog and/or flickering
  2554. in a case of obj. loading errors
  2555. 2004-12-02
  2556. KexiDB
  2557. - version field added to kexidb driver's service files
  2558. 2004-11-29
  2559. Plugins
  2560. - Migration plugin added (this removed main<->migration circular dependency)
  2561. Kexi Internal Parts
  2562. - API improved
  2563. ~~~~ 2004 LT ~~~~
  2564. 2004-11-24
  2565. Main
  2566. - unix: fixed problem with SIGPIPE on running another Kexi process
  2567. (stdin/err/out is closed now)
  2568. 2004-11-22
  2569. I18N
  2570. - pl translation updated
  2571. Main
  2572. - disabling forms support fixed
  2573. KexiDB
  2574. - fixed setting relationships within query
  2575. Query Designer
  2576. - criteria handling fixed
  2577. - information syncing fixed a bit more
  2578. 2004-11-20
  2579. KexiDB
  2580. - TableSchemaChangeListenerInterface added to signal changes
  2581. in tableschema set
  2582. Query Designer
  2583. - registers usage of table schema
  2584. - fixes in GUI editor
  2585. - more checks for schema changes
  2586. Main
  2587. - on table schema altering or removing, user if now asked
  2588. for closing windows using this table
  2589. win32 File Dialog
  2590. - make 'My Documents' folder as default
  2591. Query Designer, SQL Parser
  2592. - fixed invalid parsing string constants
  2593. 2004-11-19
  2594. Query Designer
  2595. - clearing "PK" flag is not needed in few cases
  2596. - it's now possible to enter "alias_name: simple_expression"
  2597. in the column #1
  2598. Table View
  2599. - fixed repainting visible rows below a deleted row
  2600. (required if no confirmation box is displayed)
  2601. - record navigator's rec # indicator field:
  2602. -- fixed value validation on number entering
  2603. -- fixed focus out
  2604. - added support for editable comboboxes
  2605. Main
  2606. - always ask for removing objects
  2607. Property Editor
  2608. - do not steal Key_Home and Key_End key presses from editor item
  2609. - Key_Tab and Key_BackTab work like down/up keys
  2610. 2004-11-17
  2611. Startup dialogs
  2612. - win32: fixed problem with changing directory for a new db file
  2613. Kexi Utils
  2614. - string2Identifier() : non-latin1 characters converted to latin1
  2615. eg. 'oacute' to 'o'
  2616. 2004-11-16
  2617. Relations Widget
  2618. - fixed updating tables combo box on table adding
  2619. - on new table creation, combo box is updated with a new item
  2620. Main Window
  2621. - fixed setting non-latin1 characters (e.g. db name) for the title
  2622. 2004-11-15
  2623. Main Window
  2624. - close_project action's shortcut removed
  2625. (to avoid conflict with KMDI's 'close current child window')
  2626. - CTRL+F4 key closes child window on win32
  2627. Table View
  2628. - KexiComboBoxPopup: selection is changed on mouse release event,
  2629. not on press, to avoid weird effect when selection is dragged
  2630. - dropdown button placement fixed after clicking for KexiComboBoxTableEdit
  2631. - fixed race condition in GUI on fast row inserting
  2632. (due to QApplication::precessEvents())
  2633. - fixed vheader offset on row inserting
  2634. Query Designer
  2635. - user is warned about empty 'column' item while 'table' item is not empty
  2636. - simple criterias are loaded to GUI
  2637. KexiDB
  2638. - expression classes optimized for space and speed (NArgExpr is not used)
  2639. 2004-11-13
  2640. Property Editor
  2641. - fixed moving selection (esp. using Home key)
  2642. Query Designer
  2643. - never ending story: fixed actions availability os switching back to design more
  2644. - setting column aliases available using GUI
  2645. - "caption" property hidden for KEXI_NO_UNFINISHED
  2646. - wait cursor enabled for query executing
  2647. Kexi Browser
  2648. - CTRL+Enter shortcut handling fixed
  2649. Main Window
  2650. - property editor is shown before opening dialog (not after)
  2651. to allow initialize proper size inside the dialog.
  2652. E.g. this fixes column widths in query designer's view.
  2653. Table View
  2654. - sorting settings are cleared on setData()
  2655. 2004-11-12
  2656. Kexi
  2657. - 2 icons fixed
  2658. KexiDB
  2659. - Support for Generic SQL Keywords Escaping
  2660. contributed by Martin Ellis <m.a.ellis@ncl.ac.uk>
  2661. 2004-11-11, 12
  2662. Property Editor
  2663. - 'undo changes' button improved (icon, tooltip)
  2664. - Esc key now properly undoes changes using KexiProperty::resetValue()
  2665. - setWidget() usage fixed for spin box editors, and similar: this fixes problems with
  2666. key press event filtering for these editors
  2667. - Home and End keys now moves to first/last row, also for nested properties
  2668. - moving selection using keyboard now ensures an item is visible
  2669. Properties
  2670. - KexiProperty::resetValue() does nothing if property is unchanged
  2671. 2004-11-10
  2672. Property Editor
  2673. - on focus
  2674. --previously focused editor is activated;
  2675. --first visible item is activated if no item was active
  2676. - fixed buffer switching (focus is not set)
  2677. - focusing for combo box (list) editor fixed
  2678. - focus is set again if was set before
  2679. Table View Prop. Buffer
  2680. - fixed memory leak and possible crash
  2681. Table Designer
  2682. - switching from design view to data view: it's now posible to discard changes
  2683. - typo in prop name fixed
  2684. Main
  2685. - Key_F6/F7/F8 added for data/design/text modes
  2686. 2004-11-09
  2687. Main
  2688. - fix conflict of CTRL+Tab with tabbed/ideal mode on win32
  2689. Query Designer
  2690. - 'check query' action is now avaialble under Key_F9 (was CTRL+Key_Enter)
  2691. to avoid conflict with editor
  2692. 2004-11-08
  2693. Main
  2694. - a fix for saving main windows settings (now mdimode is saved to proper
  2695. section)
  2696. - window_next, window_previous actions added
  2697. KexiDB
  2698. - DriverBehaviour::AUTO_INCREMENT_TYPE added
  2699. 2004-11-05
  2700. Main
  2701. - fixes for actions
  2702. 2004-11-04
  2703. Migration
  2704. - fixed compilation (problems due to curcular libs dependencies)
  2705. KexiDB
  2706. - alterTableName()
  2707. --works better with already started transactions
  2708. --finally works even for SQLite!
  2709. - lowlevel Connection: drv_containsTable(), drv_getTablesList() added;
  2710. impelemnted for all 3 drivers
  2711. - Connection::dropTable(): No error is raised if the table does not exist physically
  2712. -its schema is removed even in this case.
  2713. Core
  2714. - Kexi::setWaitCursor(), Kexi::removeWaitCursor() do nothing for non-GUI-aware apps.
  2715. - KexiGUIMessageHandler now calls Kexi::removeWaitCursor()
  2716. - If an object could not be opened in design/data view,
  2717. user is asked to let it to be opened in text mode (if available)
  2718. - KexiDialogBase: temp data handling improved
  2719. Main
  2720. - "Open in Text View" added to the Browser
  2721. Query Designer
  2722. - SQL Editor is now able to open also invalid SQL statements,
  2723. so user can now open (and probably fix) statements.
  2724. 2004-11-03
  2725. KexiSQLite 2, 3
  2726. - crashes fixed for architectures where sizeof(char*) != 4
  2727. Core
  2728. - Property, PropertyBuffer: some methods made explicity inline
  2729. - warnings added when trying to set a value to a null property
  2730. or when property not found. Setting value to null property disabled)
  2731. TableView
  2732. - in KexiTableView::acceptEditor():
  2733. there might be called cancelEditor() in updateRowEditBuffer() handler,
  2734. if this is true, d->pEditor is NULL. So we're checking
  2735. d->pEditor and calling startEditCurrentCell() only if it's present
  2736. - Empty row is appended on row deletion when 'spreadsheet mode' is on.
  2737. - fixed setting row numbers in record navigator for empty data sets
  2738. - fixed editing large FP numbers (removed scientific mode)
  2739. SQL Parser
  2740. - added Date/DateTime/Time types support to ConstExpr
  2741. (parser does not operate on these constants yet)
  2742. Query Designer
  2743. - added support for Date/DateTime/Time criterias
  2744. Table Designer
  2745. - some properties are hidden for KEXI_NO_UNFINISHED
  2746. Main
  2747. - BUG: 89381 proposed fix, please test
  2748. - Browser: added override for Key_Delete (items removing)
  2749. KexiDB
  2750. - DriverBehaviour: QString AUTO_INCREMENT_PK_FIELD_OPTION and
  2751. bool AUTO_INCREMENT_REQUIRES_PK added. This fixes problem with
  2752. pgsql sequences.
  2753. - Connection:
  2754. --fixed generationg 'create table' statements.
  2755. --added drv_dropTable(), drv_alterTableName().
  2756. 2004-11-02
  2757. Main
  2758. - fixes for kexi__parts
  2759. Query Designer
  2760. - fixed adding fields by entering column names by hand
  2761. - entering (simple) criteria now is working
  2762. KexiDB
  2763. - DriverBehaviour: SELECT_1_SUBQUERY_SUPPORTED added,
  2764. used in Connection::resultExists()
  2765. Forms
  2766. - on failed saving new form's data, all saving is rolled back
  2767. - fixed saving form data for mysql (and probably pgsql)
  2768. 2004-10-29
  2769. Query Designer
  2770. - fixed focusing
  2771. Table View
  2772. - fixes for combo box
  2773. ===================== Kexi 0.1 Beta 5 "Halloween" =====================
  2774. 2004-10-27
  2775. Kexi
  2776. - a little speedup: QValueList::Iterator changed to QValueList::ConstIterator
  2777. TableView
  2778. - never-ending-story: fixed repaint of "insert row" for empty tables;
  2779. fixed setting contents size based on tableSize() on table view creation
  2780. (delayed slotUpdate() is used)
  2781. - setBottomMarginInternal() added e.g. for popups
  2782. - Appearance class introduced: defines table view's detailed appearance settings
  2783. - "row highlighting" option added, comboboxpopup uses it
  2784. - fixed doubled empty row inserting (edit_insert_empty_row action)
  2785. - ensureCellVisible() fixed when record navigator is hidden
  2786. - many improvements in combo box editor and popup
  2787. Query Designer
  2788. - "*" are better handled on schema building
  2789. 2004-10-25..26
  2790. - defines moved from Makefile.global
  2791. - minor compile fixes and some warnings removed
  2792. I18N
  2793. - pl translation updated
  2794. Forms
  2795. - fixed crash in connection editor
  2796. TableView
  2797. - datatimeedit hack disabled for !win32
  2798. - "edit_clear_table" action added
  2799. - KexiTableViewDataBase made protected in KexiTableViewData for safety
  2800. - on row inserting, enable "next" button
  2801. - record navigator
  2802. -- now takes full width, painting fixed
  2803. -- update width when number of digits in rows counter changes
  2804. Main
  2805. - preferences and configureToolbars actions ifdefed using KEXI_SHOW_UNIMPLEMENTED
  2806. Plugins
  2807. - Default implementation of Part::remove() added again.
  2808. This is enough eg. for Form plugin.
  2809. - table and query plugin: Connection::eemoveObject() is called even
  2810. if object's could not be loaded, what allows to remove invalid objects.
  2811. 2004-10-22
  2812. TableView
  2813. - KexiDateTimeTableEdit, KexiTimeTableEdit implemented
  2814. Table Designer
  2815. - BLOB types ifdefed using KEXI_SHOW_UNIMPLEMENTED
  2816. KexiDB
  2817. - DriverManager does not list derver-based projects
  2818. when KEXI_SERVER_SUPPORT is undefined
  2819. Startup
  2820. - added error message when explicity provided db driver name not found
  2821. 2004-10-21
  2822. Core
  2823. - shared action's "enabler" introduced
  2824. Startup
  2825. - KexiStartupFileDialog: filename handling fixed for win32; fixed focusing
  2826. - avoid asking for conversion when '--dbdriver sqlite2'
  2827. or '--createdb' CL option is present
  2828. TableView
  2829. - highlighting for int and float types fixed
  2830. - fixed initializing for date picker
  2831. - added 'datetime' and 'time' types support
  2832. - adding empty rows when possible also for db-aware table views
  2833. (ie. RowEditoBuffer can be empty on insert)
  2834. - it's now allowed to click "+" button in record navigator to insert rows
  2835. (current editing is accepted)
  2836. - on failed row insert/update, user is informed
  2837. about "data_cancel_row_changes" action availability
  2838. - on invalid value entered in a cell (after a msg box is closed),
  2839. the cell's editor is focused again
  2840. Compile-time switches
  2841. - KEXI_STARTUP_SHOW_TEMPLATES, KEXI_STARTUP_SHOW_RECENT,
  2842. KEXI_SERVER_SUPPORT, KEXI_FORMS_SUPPORT added (currently all enabled by default)
  2843. Main
  2844. - copy/paste/cut on navigator items enabled only for KEXI_SHOW_UNIMPLEMENTED
  2845. - toolbars redesigned: now "design" toolbar is for kexipart's design view
  2846. and "data" is for data view. This avoids toolbars duplication.
  2847. - propeditor dock window is hidden when a window in data view mode is active
  2848. (or no window is present). This feature is partially disabled
  2849. (using PROPEDITOR_VISIBILITY_CHANGES), though,
  2850. --REENABLE when blinking and dock width changes will be removed in KMDI
  2851. - "data_cancel_row_changes" action added
  2852. KexiDB
  2853. - FORMAT CHANGED: SQLite Driver: 'date', 'datetime' and 'time'
  2854. types support fixed: Qt::ISODate format is used
  2855. - FieldList: simple methods made inline; fixed bug in hasField()
  2856. - findRef() instead of find() used in few places for speedup
  2857. - a hack needed because QVariant(QTime) has broken isNull():
  2858. Internally: null time value is now null QDateTime(), not-null time value
  2859. is now QDateTime(QDate(0,1,2),time); This allows to store 00:00:00 times.
  2860. See also stringToHackedQTime(const QString& s).
  2861. Table Designer
  2862. - "tablepart_toggle_pkey" action temporary removed from toolbar
  2863. (will be re-added after shared toggle actions fix);
  2864. - "tablepart_toggle_pkey" action added to popup menu and to Edit menu
  2865. 2004-10-20
  2866. Main
  2867. - "file_open" and "file_new" actions now start a new process
  2868. for creating/opening database, if needed.
  2869. - KEXI_SHOW_UNIMPLEMENTED macro added
  2870. KexiDB Parser
  2871. - fixed handling large integer constants
  2872. Table Designer
  2873. - primary-key-fields: BigInteger type is enforced; subtypes are hidden
  2874. Kexi Properties
  2875. - KexiPropertyEditor::setBuffer() can be now safely called even from
  2876. KexiPropertyBuffer::propertyChanged() signal handlers (refreshing is delayed).
  2877. Core
  2878. - KexiViewBase::propertyBufferReloaded(): bool preservePrevSelection added
  2879. 2004-10-19
  2880. Main
  2881. - "delete_row" action shortcut is now CTRL+Delete, to avoid conflict with edit_cut (Shift Delete)
  2882. - fixes for KexiBrowser
  2883. TableView
  2884. - KexiComboBoxTableEdit improved
  2885. - KexiTableViewColumn: try harder to get a column name
  2886. Startup
  2887. - --password option removed
  2888. - --create-opendb CL option added
  2889. 2004-10-18
  2890. KexiDB Parser, KexiDB
  2891. - Field::Type type() introduced for expression classes
  2892. - type(): integer subtypes (Integer, BigInteger, ..)
  2893. are detected for int constants; the same for strings
  2894. - Field::type(): If there's expression assigned,
  2895. type of the expression is returned instead.
  2896. - Field::Type::Null added
  2897. Query View
  2898. - Expressions are now displayed, with header names
  2899. Core
  2900. - KexiDialogBase::activate() -another focus-related fix
  2901. 2004-10-16
  2902. Core
  2903. - KexiSharedActionConnector introduced
  2904. SQL Editor
  2905. - double clicking on a history item selects it for editing
  2906. 2004-10-15
  2907. - small speedup for Kexi global objects on startup
  2908. - fixes for KexiStartupFileDialog
  2909. - tests/newapi is compield by default. Other tests disabled.
  2910. Core, Plugins
  2911. - SPEEDUP OF STARTUP:
  2912. Part::initActions() splitted to Part::initPartActions() (default one)
  2913. and Part::initInstanceActions() (lazy one)
  2914. Kexi
  2915. - name argument is now passed to KGenericFactory to avoid runtime warnings
  2916. KexiDB Parser, KexiDB
  2917. - Expression:
  2918. -- former type renamed to token
  2919. -- 'type' member added; typechecks added to validate()
  2920. - more SQL statements are supported
  2921. 2004-10-14
  2922. Kexi
  2923. - more debug areas added
  2924. - KexiStartupFileDialog wrapped for win32 again
  2925. TODO: move some things to kdeui/win32
  2926. KexiDB Parser, KexiDB
  2927. - WHERE expression is supported
  2928. - operators like "IS SIMILAR TO" and "IS NOT NULL" better supported
  2929. - brackets better supported
  2930. - both <> and != supported
  2931. 2004-10-11
  2932. Parser:
  2933. - ER004 supported
  2934. 2004-10-09
  2935. Kexi Startup
  2936. - ksqlite2to3 script added for unices. It's used instead of two QProcesses.
  2937. - ksqlite2: -verbose-dump added for ksqlite2to3
  2938. 2004-10-06
  2939. 3rd Party
  2940. - kexisql migrated to SQLite 3.0.7 (new kexisql3/ directory added);
  2941. former libkexisql is now libkexisql2 (updated to 2.8.15, by the way)
  2942. KexiDB Drivers
  2943. - "SQLite3" driver introduced. "SQLite" driver is now removed;
  2944. use "SQLite2" driver for comaptibility.
  2945. KexiDB
  2946. - static QString Driver::defaultFileBasedDriverMimeType()
  2947. and static QString Driver::defaultFileBasedDriverName() added,
  2948. so let's don't compare driver names against "sqlite" string when looking for default.
  2949. Startup
  2950. - sqlite version is now autodetected on startup
  2951. - sqlite2 to sqlite3 format autoconversion added (with progress dialog)
  2952. 2004-10-04
  2953. - command line options added: --user (-u), --port,
  2954. --host (-h), --password, --local-socket
  2955. - password can be now entered using dialog, if it's a server-based conn.
  2956. 2004-10-01..02
  2957. Kexi Startup
  2958. - server-based (mysql, postgresql) projects are now available from command line
  2959. (usable since gui is not yet ready):
  2960. --createdb, --dropdb, --dbdriver command line options added
  2961. - db creation and dropping from command line works without starting entire gui
  2962. see http://www.kexi-project.org/wiki/wikiview/index.php?CommandLineOptions
  2963. Core
  2964. - KexiMessageHandler introduced: receives messages e.g. from KexiProject
  2965. - KexiGUIMessageHandler added
  2966. KexiDB
  2967. - improved error handling
  2968. MySQL Driver
  2969. - MySqlConnectionInternal added (like for SQLite)
  2970. General
  2971. - KMessageBox::warning**() used instead of question**() for dangerous messages.
  2972. - 'tristate' helper class introduced. This reduces a need for adding
  2973. bool& cancelled parameters.
  2974. - tristate class used where possible instead of 'bool& cancel' params
  2975. 2004-09-29
  2976. 2004-09-30
  2977. SQL Parser highly improved
  2978. - reduce/reduce conflicts solved: operators in expressions have now 9 valid precedence levels
  2979. - expressions are now parsed quite well: e.g. identifier checking is recursive
  2980. - better debugging
  2981. - ParseInfo introduced: Data used on parsing
  2982. - invalid use of reserver keywords are now detected:
  2983. '"KEYWORD" is reserved keyword: identifier was expected' message is now returned
  2984. instead of dumb "syntax error"
  2985. KexiDB
  2986. - Field: expressions are better supported
  2987. - Connection: expressions are visible in selectStatement()
  2988. 2004-09-28
  2989. KexiDB
  2990. - Field: documentation added
  2991. Kexi
  2992. - ConstIterators used where possible
  2993. 2004-09-27
  2994. SQL Parser
  2995. - ER102, ER103, OK104 SQL Issues resolved (see statements.txt)
  2996. - several bugfixes
  2997. 2004-09-17
  2998. KexiDB
  2999. - Connection::selectStatement(): alias is used insetead of table name,
  3000. if available
  3001. - QuerySchema: 'index' term replaced by 'position' ; insertField(), addField()
  3002. overloads added allowing tables binding by position; addTable() now allows
  3003. to specify table alias; tablePositionForAlias(), tablePositions() added;
  3004. many docs and examples added
  3005. SQL Parser
  3006. - many improvements and checks:
  3007. -- ERR: there's no "persons" table in this query (alias "p" covers it)
  3008. select persons.id from persons p;
  3009. -- alias "p" for table "persons" is used
  3010. select p.id from persons p;
  3011. -- multiple aliases for the same table
  3012. select persons.id from persons, persons p, persons p2
  3013. 2004-09-15..16
  3014. SQL Parser
  3015. - select statements are now parser in more functional way, instead
  3016. of using global pointers. This enables nested statements in the future.
  3017. - field alias support fixed
  3018. - table alias support added
  3019. KexiDB
  3020. - (API CHANGED) QuerySchema:
  3021. --"Field" in isFieldVisible(), setFieldVisible() renamed to "Column"
  3022. --alias() renamed to columnAlias(), and so on
  3023. --Table aliases are now supported: tableAlias() added, and so on
  3024. --QueryFieldInfo class renamed to QueryColumnInfo
  3025. 2004-09-14
  3026. TableView
  3027. - hack added for KDownArrowPushButton for drawing with thinkeramik style.
  3028. - convenient ctor added for KexiTableViewData
  3029. KexiDB
  3030. - Driver::escapeIdentifier() : "" are only added if there is a space inside the name.
  3031. This keeps SQL statements more readable, especially in SQL View.
  3032. - DriverBehaviour::QUOTATION_MARKS_FOR_IDENTIFIER added
  3033. - Driver::drv_escapeIdentifier() added:
  3034. This method is used by escapeIdentifier().
  3035. Implement escaping for any character like " or ' as your
  3036. database engine requires. Do not append or prepend any quotation
  3037. marks characters - it is automatically done by escapeIdentifier() using
  3038. DriverBehaviour::QUOTATION_MARKS_FOR_IDENTIFIER.
  3039. Parser
  3040. - tokens like '123abc' are now reported as invalid by lexer to parser
  3041. 2004-08-25
  3042. Core
  3043. - KexiSharedActionHost::invalidateSharedActions(QObject *o)
  3044. if o is not KexiDialogBase or its child,
  3045. only invalidate actions if these come from mainwindow's KActionCollection
  3046. (thus part-actions are untouched when the focus is e.g. in the Property Editor.
  3047. - KexiViewBase::setDirty() -do not signal 'dirty' flag's changes if no change
  3048. - ObjectStatus now also stores related KexiDB::Obeject's, for more verbose errors
  3049. KexiDB
  3050. - Field::isAutoIncrementEnabled() added + some checks for 'autoincrement' flag
  3051. - fixed saving SQL statements for possible later error messages.
  3052. Object class now also better handles previous server error messages and numbers.
  3053. - KexiDB::getHTMLErrorMesage() improved, it's more verbose in certain cases
  3054. - Driver::escapeIdentifier() added; used in Connection in every place
  3055. where SQL statements are generated. Thanks to Martin Ellis.
  3056. CC_MAIL: m.a.ellis@ncl.ac.uk
  3057. TableView
  3058. - "yes" button for "do you want to delete row?" dlg has "Delete row" text
  3059. (as KDE HIG requires)
  3060. - cell-cursor's is position not reset after initDataContents() on show()
  3061. if it was set before KexiTableView widget showing.
  3062. Table Designer
  3063. - many validations added related to primary key and autonumber properties
  3064. - On table creation (or altering), if there is no primary key, user is asked
  3065. if it should be added (automatically).
  3066. Useful setting "dont show this again" added for this as well.
  3067. 2004-08-24
  3068. Table View
  3069. - redraw fixed -very special case: If you're during editing a new row, and click
  3070. on last (empty) row, and your newly entered row has no data in its cells,
  3071. (what ends up with cancelRowEdit()), cursor is now moved one line up.
  3072. - unknown, non-printable key events are not ignored now, but passed to superclass;
  3073. this e.g. fixes blocking ESC key in dialogs
  3074. - fixed setting cursor on row removing
  3075. Kexi Properties, Property Editor
  3076. - icon added as optional property member
  3077. Form Designer
  3078. - Connection editor implementation cleaned a bit (bug #44)
  3079. Table Designer
  3080. - "autonumber" property is now visible
  3081. - icons added to propertybuffer
  3082. Form Module
  3083. - kexidbwidgets.so ported to win32
  3084. 2004-08-23
  3085. Table Designer
  3086. - fixed code because of new column has been prepended
  3087. KexiDB
  3088. - KexiDB::Field::Type defaultTypeForGroup(KexiDB::Field::TypeGroup typeGroup)
  3089. added and used in Table Designer.
  3090. - KexiDB::idForObjectName() convenience function added
  3091. Table View
  3092. - fixed methods for 'visible' flag in KexiTableViewColumn
  3093. 2004-08-21
  3094. Table View
  3095. - Key_Left, Key_Right now by default behaves like Key_BackTab, Key_Tab
  3096. - KexiTableViewData::deleteRows(): refresh is requested only
  3097. if at least one row has been removed. This also magically fixed
  3098. a bug with missing vheaders in the Query Designer :)
  3099. Main Window
  3100. - opening object: if object is already opened but in other view,
  3101. its activated and switchToViewMode() is simply called.
  3102. This fixes switching GUIClient for "design" action called from the Navigator.
  3103. - Kexi::ViewMode is repaced with int type in most places
  3104. to ease future extensibility.
  3105. 2004-08-20
  3106. KexiDB, Table View
  3107. - Kexi now supports and shows autonumber (sequences) column, see
  3108. http://www.iidea.pl/~js/kexi/shots/beta5/unicode_chars_and_autonumber.png
  3109. Table View
  3110. - autoincremented field can be omitted (left as null or empty)
  3111. if we're inserting a new row
  3112. - fixed displaying "autonumber" cell on row inserting
  3113. - row editing is accepted on sorting
  3114. - on failed sorting, sort indicator is reverted
  3115. - Key_Tab, Key_BackTab work again;
  3116. skipping to next/previous row added
  3117. - when the user doubleclicks on the edge (handle)
  3118. of horizontal header's section, column's width
  3119. is adjusted to widest cell size
  3120. Table Designer
  3121. - before switching to design view, row editing is accepted
  3122. Main
  3123. - PropertyEditor/FontSize setting is now stored
  3124. 2004-08-19
  3125. KexiDB
  3126. - DriverPrivate added to avoid binary incompatibilities
  3127. - driver (QCString keys, QVariant values) properties added
  3128. (some prdefined properties added as well)
  3129. Table View
  3130. - optimizations in KexiTableViewData::saveRow()
  3131. New API Tests
  3132. - "dr_prop" test added
  3133. SQLITE Driver
  3134. - Kexi file driver now supports UTF8 storage for text fields
  3135. Shared Actions
  3136. - data_sort_az, data_sort_za, data_filter actions are now shared & volatile,
  3137. KexiTableView and KexiDataTable now use these
  3138. 2004-08-17..18
  3139. Core
  3140. - added KexiViewBase::setAvailable() overload. This one and sharedAction()
  3141. now call parent's method, when needed.
  3142. - Shared actions: some fixes for plugging/unplugging
  3143. KexiBrowser
  3144. - "rename" action is now shared as "edit_edititem" action
  3145. KexiTableView
  3146. - "start edit" action (for F2/Enter key) is now shared
  3147. as "edit_edititem" action
  3148. - KexiKIconTableEdit introduced: Cell editor for displaying kde icon
  3149. (using icon name provided as string).
  3150. - TableViewHeader (inherits QHeader) introduced: supports tooltips
  3151. when needed (for column description of if column is not wide enough)
  3152. KexiTableView ComboBox
  3153. - QStyle primitives are better used for drawing combo button
  3154. - button is depressed after popup hidding
  3155. Table Designer
  3156. - "tablepart_toggle_pkey" shared action added for design view
  3157. - "Not empty" field's property is now called "Allow Zero Size"
  3158. (and has opposite meaning)
  3159. - 1st column with "key" icon (for pkey) added (using KexiKIconTableEdit)
  3160. KexiDB
  3161. - QString Field::subType() added
  3162. - QuerySchema::autoIncrementFields() fixed (caused crash sometimes)
  3163. 2004-08-06
  3164. Table Designer
  3165. - some rules added: e.g. setting 'indexed' property to false clears 'primaryKey';
  3166. setting 'primaryKey' to true sets 'indexed', 'unique', etc. to true
  3167. Core
  3168. - KexiProperty, KexiPropertyBuffer: some operators added, operator [QCString] now
  3169. returns KexiProperty, convenient operator = (QVariant) added; KexiProperty::null added
  3170. TODO: KexiProperty: add support for positive integers, "Auto" values e.g. for integer ==0
  3171. like defined in QSpinBox. Reuse this in PropIntSpinBox.
  3172. 2004-08-05
  3173. PropertyEditor
  3174. - Bool Editor: toggle button has now without ugly focus (space key still works)
  3175. - KexiPropertySubEditor:setWidget() focus proxy is set only if the widget has
  3176. non-zero focus policy.
  3177. - [+][-] branch box is better positioned; treeStepSize is now narrower
  3178. - font size is decreased to a reasonable minimum
  3179. Core
  3180. - generateIconSetWithStar() not used, static icons added insted (icon cache was confused)
  3181. MainWindow
  3182. - right dock width is now stored in config file
  3183. 2004-08-04
  3184. MySQL Driver
  3185. - introduced again! thanks to Martin Ellis
  3186. CC_MAIL: m.a.ellis@ncl.ac.uk
  3187. KexiDB
  3188. - alterTable() added (now only drops and recreates table)
  3189. - createTable() 'zombie' rows from 'kexi__fields' table is removed for safety
  3190. - Connection::storeObjectSchemaData() identifier is not obtained if
  3191. it's already provided
  3192. - DriverManagerInternal::aboutDelete() added: called from Driver dtor
  3193. (because sometimes KLibrary is destroyed before DriverManagerInternal)
  3194. - DriverBehaviour::ROW_ID_FIELD_RETURNS_LAST_AUTOINCREMENTED_VALUE added
  3195. True if the value (fetched from field (or function)
  3196. defined by ROW_ID_FIELD_NAME member) is EXACTLY the value if autoincremented field,
  3197. not just an implicit (internal) row number. Default value is false.
  3198. --used in Connection::lastInsertedAutoIncValue()
  3199. Table Designer
  3200. - saving changes to tables works now (data is just dropped, though);
  3201. user is warned about this, when needed
  3202. - DataTable view is updated after saving table's design
  3203. - temporary data added; KexiAlterTable_DataView implemented
  3204. (this fixes lack of updating datatable view after schema changes)
  3205. 2004-07-28..2004-08-03
  3206. KexiDB
  3207. - ProjectDB FORMAT CHANGED (remains backward compatible):
  3208. - kexi__query* tables removed (to complicated, not needed since we
  3209. are primarily using kexi__objectdata and xml)
  3210. - Driver::IgnoreTransactions flag added: transactions are silently bypassed,
  3211. (temporary, useful for current mysql driver implementation)
  3212. - Query Schema: QueryFieldInfo introduced:
  3213. "select a as one, a as two from table" is now possible
  3214. (two different aliases for the same field);
  3215. this also maintains field visibility.
  3216. - Most needed expression classes added (BaseExpr-derived)
  3217. - most debugs removed
  3218. - more debugString() methods added for few classes
  3219. - FieldList: removeField(), insertField() (at position) implemented
  3220. addField() now uses insertField()
  3221. KexiDB/parser
  3222. - 'bison -dv' used instead of yacc
  3223. - single-char tokens are now used as chars: symbols are dropped for better
  3224. code readability
  3225. - more safe and readable code: $$ is now used instead of changing global variables
  3226. - realType added
  3227. - loadDataBlock(), storeDataBlock(), removeDataBlock() moved to Connection class
  3228. - Connection::querySchema() methods now use parser
  3229. - Connection::createTable() now also allows table replacing
  3230. - Connection::storeObjectSchemaData() now reuses schema's id if > 0
  3231. NEWAPI Test
  3232. - now KCmdLineOptions are used, see README
  3233. - "parser" test added
  3234. KexiTableView
  3235. - KexiTableViewPropertyBuffer: a fix for maintaining `dirty' flag
  3236. - updates for QueryFieldInfo
  3237. - compiler warnings removed
  3238. Core, Widget, Plugins
  3239. - updates for QueryFieldInfo
  3240. - compiler warnings removed
  3241. 2004-07-24
  3242. Form Designer
  3243. - added icons for ajust/align icons
  3244. 2004-07-23
  3245. Core
  3246. - KexiViewBase::removeDataBlock() and KexiDialogBase::removeDataBlock() added.
  3247. - more error messages added
  3248. Main
  3249. - Startup dialog re-enabled
  3250. KexiDB
  3251. - Utils: most smaller functions are now inline
  3252. - optimizations:
  3253. * Connection::querySingleRecord(), querySingleString():
  3254. " LIMIT 1" is added to the statement
  3255. * Connection::resultExists(): "SELECT 1 FROM (<statement>) LIMIT 1"
  3256. statement is executed
  3257. * Connection::resultCount() added: "SELECT COUNT() FROM (<statement>)"
  3258. statement is executed
  3259. - Cursor::open(): sets error message when needed
  3260. Query Designer
  3261. - KexiQueryView: shows error on failed execution
  3262. 2004-07-22
  3263. Main
  3264. - Kexi Browser: "create new" action added to browser's mini-toolbar;
  3265. icons for particular "create" actions are generated in a funny way
  3266. - "project_new" and "project_open" actions removed from the main toolbar
  3267. 2004-07-20..21
  3268. Kexi Browser
  3269. - "rename object" action added (inline editor uses IdentifierValidator)
  3270. - popup menu for group nodes now have a title
  3271. Core
  3272. - KexiProject, KexiPart supports object renaming
  3273. - KexiProject::removeObject() and KexiProject::renameObject()
  3274. now operate within transaction.
  3275. - KexiProject: more error mesages added.
  3276. KexiDB
  3277. - Connection::drv_executeSQL() is now protected. Connection::executeSQL() public
  3278. method added which remembers last executed sql statement for better error handling.
  3279. Main
  3280. - KexiBrowser: After item's successful rename, it's resorted,
  3281. and if it's dialog is opened, it's caption is updated as well.
  3282. 2004-07-19
  3283. Kexi
  3284. - We've now --final-mode and --design-mode CL-options for completness.
  3285. KexiCore, KexiMain
  3286. - KexiStartupHandler introduced: handles startup actions, that
  3287. are new performed independently from Main Window's stuff.
  3288. We're now prepared to having 'startup mode'
  3289. database's property, which can be overriden by --final-* CL-options.
  3290. Form Designer
  3291. - A small fix to reduce widget flickering on resizing:
  3292. when we're dragging left, top-left or top
  3293. handle, both size and position of widget changes. We're now hiding
  3294. the widget and showing it again after transformation.
  3295. 2004-07-16
  3296. Form Designer
  3297. - some strings fixed
  3298. ===================== Kexi 0.1 Beta 4 "FireDuck" =====================
  3299. 2004-07-15
  3300. Forms
  3301. - form's initial sizeHint is now hardcoded to (400,300), will be fixed later
  3302. Query Designer
  3303. - saving existing queries work in SQL View
  3304. Core
  3305. - after successful storeData() or storeNewData(): 'dirty' flag is cleared
  3306. for _every_ dialog's view
  3307. 2004-07-14
  3308. Kexi
  3309. - polish translation updated (also for KFormDesigner)
  3310. Core
  3311. - "current mode" member is now reverted if afterSwitchFrom() failed
  3312. - removed one (I hope unnecessary?) shared-action invalidation
  3313. - storeNewData() and storeData() new have 'bool &cancel' parameter
  3314. Query Designer
  3315. - storing and mode switching fixed
  3316. - KexiQueryDesignerSQLView::storeNewData():
  3317. we won't store query layout: it is recreated 'by hand' in GUI Query Editor
  3318. Table Designer
  3319. - temporary behaviour: altering data is cancelled
  3320. - fixed switching between Data and Design view
  3321. 2004-07-12..13
  3322. KexiDB
  3323. - Connection: selectStatement(): "SELECT FROM ..." queries (ie. without columns)
  3324. are allowed (needed for desiger); omitting "FROM" allowed
  3325. KexiDB/Parser
  3326. - "SELECT FROM " rule added
  3327. Core
  3328. - KexiPart::Part::openInstance(): now virtual KexiDialogBase::loadSchemaData() is called
  3329. what allows to reimplement stored schema data loading (reimpelemnted for queries)
  3330. - KexiDialogBase::dirty() now is true if any view is dirty
  3331. KexiTableView
  3332. - If ensureCellVisible() is called before table view is visible, it's (col,row) arguments are
  3333. stored and ensureCellVisible() is called just after show event. This fixes invalid scrolling.
  3334. Query editor, Table Editor
  3335. - storage/ loading/ view switching/ dirty flag updating - improved
  3336. 2004-07-10
  3337. TableView
  3338. - "edit_delete" action is disabled for read-only tables
  3339. 2004-07-09
  3340. KexiDB
  3341. - It's possible to define relationships for QuerySchema
  3342. (with Relationship objects)
  3343. - Connection: optimization: QString::reserve() used
  3344. before generationg SQL statements
  3345. - Connection::selectStatement() now generates joining rules
  3346. (i.e. relationships using WHERE)
  3347. Query Designer
  3348. - joins defined by GUI are now visible in SQL View
  3349. 2004-07-08
  3350. Query Designer
  3351. - switching between design modes improved
  3352. - on generating sql from GUI: "*" added if no fields are picked
  3353. KexiMainWindow
  3354. - neverending-story: actions availability updating fixed
  3355. TableView
  3356. - KexiTableViewPropertyBuffer: all buffers are cleared when view's
  3357. data is cleared (using clear())
  3358. Relation Widget
  3359. - view clearing supported
  3360. Core
  3361. - KexiViewBase: 'dirty' flag is now better signaled to a dialog
  3362. KexiDB/SQL Parser
  3363. - lexer: USER_DEFINED_NAME now accepts also [0-9] (after 1st char)
  3364. - optional ';' is allowed at the end of top level statement
  3365. - dummy table is removed from query after parsing
  3366. 2004-07-07
  3367. Core
  3368. - KexiDialogBase: Never Ending Story: Shared actions are invalidated on activate()
  3369. - ObjectStatus general purpose class introduced. KexiDialogBase now uses this
  3370. to indicate errors.
  3371. - KexiPart::Part: if newly opened dialog (KexiDialogBase) cannot display 1st view, it's closed
  3372. (via close()) and error message is set up
  3373. - KexiPart, KexiProject:
  3374. const Kexi::ObjectStatus& lastOperationStatus() added for not-kexidb errors
  3375. KexiMainWindow
  3376. - formpart is now available by default; menu for switching it off is hidden
  3377. - more errors taken from KexiProject are friendly displayed :)
  3378. Query GUI Editor
  3379. - saved layout (etc.) is loaded in afterSwitchFrom() for mode==Kexi::NoViewMode,
  3380. instead of doing it in the ctor
  3381. SQL View
  3382. - switching to other views improved: msgbox is displayed for invalid sql texts
  3383. - Intelligence Built In: we're doing our best to avoid regenerate the same
  3384. query from almost unchanged sql text
  3385. 2004-07-02..05
  3386. XMLGUI
  3387. - Tools menu added
  3388. - undo/redo global actions added
  3389. - tolbar setup consistent with ui_standards.rc and incoming katepart
  3390. Main Window
  3391. - hack: `window' menu moved right before settings menu
  3392. Widgets
  3393. - KexiSectionHeader: adding buttons connected to actions allowed on the right hand
  3394. - Relation View: saved table widgets' geometries are better setup on loading
  3395. (fix for differences between font sizes on differens computers)
  3396. - SQL Editor: better integration with katepart's actions using new shared action's API
  3397. Core
  3398. - KexiDialogBase now has activate(), deactivate() handlers,
  3399. KexiViewBase::updateActions(bool activated) is called for a current view
  3400. - Workaround found for integrating katepart's actions with Kexi's shared actions:
  3401. - katepart KXMLGUIClient's KActions are now pluggable to KexiActionProxy
  3402. - KXMLGUIClient's KAction::enabled(bool) signals are now automatically mapped
  3403. to KexiActionProxy::setAvailable(bool)
  3404. <TODO>: introduce KexiSharedXMLGUIClient class:
  3405. ctor: KexiSharedXMLGUIClient(KexiSharedActionHost *host, KXMLGUIClient *client).
  3406. A single instance is created for particular xml file (eg. katepartui.rc) and inserted
  3407. int KexiMainWindow's internal dictionary. This GUI client will be attached when needed
  3408. (ie. when given KexiViewBase object that is activated asks for this) and detached
  3409. when not needed.
  3410. showOnlyActions(QCStringList) - declares custom action list that will only be available
  3411. In any time, no KActions will be created if these already are available globally
  3412. within KexiMainWindow.
  3413. </TODO>
  3414. SQL View
  3415. - history behaviour reverted to previous
  3416. - added "clear history" and "select this query text" buttons in KexiSectionHeader
  3417. - added popup menu with above actions
  3418. 2004-07-01
  3419. SQL View
  3420. - kate part now better integrates its actions with kexi menus/toolbars
  3421. TODO fix it: actions, shortcuts
  3422. - 'Tools' menu added, 'Window' menu is now repositioned before 'settings' menu
  3423. 2004-06-30
  3424. SQL View
  3425. - fully implemented history/status mode switching
  3426. - both modes work with "check SQL" action
  3427. Core
  3428. - KexiViewBase::updateActions() virt. method added for convenience
  3429. 2004-06-28
  3430. KexiCore
  3431. - KexiViewBase now knows own view mode
  3432. SQL Parser, SQL View
  3433. - fixed error handling (syntax error is only set when no detailed error is known)
  3434. - on error: fixed jumping to proper character (even where are more lines and tabulators)
  3435. - status label's height is properly increased, when needed
  3436. - jumping to proper character impelmented also for QT_ONLY_SQL_EDITOR
  3437. - fixed crash for parsing empty SQL string
  3438. Main Window
  3439. - removed redundant MDI Mode option from View menu
  3440. Core
  3441. - some docs added
  3442. - KexiSharedActionHost::createSharedAction() : subclassName arg added
  3443. 2004-06-25
  3444. KexiCore
  3445. - fixed switching for other mode
  3446. (formpart behaviour was really weird because of that)
  3447. 2004-06-24
  3448. KexiCore
  3449. - Some doxygen docs added.
  3450. - Fixed activeView() when we're just switched to other view in KexiDialogBase
  3451. Widgets
  3452. - SQL Editor: now properly emits signal about text changes.
  3453. - SQL Editor: now has QT_ONLY_SQL_EDITOR compile-time option (both modes works on win32)
  3454. Utils
  3455. - Kexi::setWaitCursor(), Kexi::removeWaitCursor() -for delayed cursors added (eg. user on view opening)
  3456. KexiMain
  3457. - --edittext [<object_type>:]<object_name> C.L. option added:
  3458. like --open, but the object will\nbe opened in Text Mode
  3459. KexiDB
  3460. - Parser::query() public function added; select() is now internal
  3461. SQL Editor
  3462. - CTRL+Return shortcut; added information what to do to validate query text
  3463. 2004-06-23
  3464. KexiCore
  3465. - Fixed focusing previously selected dialog after Kexi main window's activation
  3466. - KatePart is working on win32 as well
  3467. 2004-06-21
  3468. KexiActionProxy
  3469. - activateSharedAction(), isAvailable() now have alsoCheckInChildren arg.
  3470. KexiDialogBase
  3471. - actions availability is invalidated on view switching
  3472. KexiPart::Part
  3473. - proper integration with SharedActionHost
  3474. - actions creating simplified with Part::createSharedAction()
  3475. - finally: initPartActions() and initInstanceActions()
  3476. replaced with single call of initActions().
  3477. createSharedPartAction() and createSharedAction() added
  3478. Parts
  3479. - all parts code updated for API changes
  3480. 2004-06-19
  3481. KexiTableView
  3482. - added checks if column is >=0 (this avoid crashes)
  3483. FormDesigner
  3484. - TabStopDialog:
  3485. * was badly implemented: exec() in ctor. exec() moved from ctor to
  3486. TabStopDialog::exec(Form*) method
  3487. * fixed crash: QVBoxLayout was added twice! 1st via ctor, 2nd view QLayout::addLayout()
  3488. --removed 1st
  3489. Query Designer
  3490. - kexiquerypartinstui.rc added and some actions
  3491. Core
  3492. - sql parser is now allocated in KexiProject
  3493. KexiDB
  3494. - docs greatly improved, thx Martin!
  3495. - UNSIGNED INT -> INT UNSIGNED
  3496. 2004-06-18
  3497. Query Designer
  3498. - SQL Editor: added KexiSectionHeader
  3499. - KexiQueryDesignerSQLView -> KexiQueryDesignerSQL
  3500. - KexiQueryDesignerSQLEditor: now inherits KexiViewBase
  3501. - Double clicking on table's field in Relation View allows to auto-add this field
  3502. - KexiQueryDocument no longer used, similar KexiQueryPart::TempData is used
  3503. - switching to SQL View working again
  3504. - added warning when switching to dataview with empty design
  3505. KexiTableView
  3506. - Editor's focus position is updated (moved down)
  3507. when new row is inserted above current row
  3508. KexiDialogBase
  3509. - returning without failure when KexiViewBase::beforeSwitchTo()
  3510. returned cancel==true and success==false
  3511. 2004-06-17
  3512. KexiTableView
  3513. - Combobox's button is now in "toggle" mode; popping up is now better hidden/shown
  3514. KexiViewBase
  3515. - storeNewData(), storeDataBlock() simplified; parts code updated for this change
  3516. Query Designer
  3517. - relations widget: geometries for tables and connection lines are now stored
  3518. - 'dirty' flag better updated
  3519. 2004-06-15
  3520. 2004-06-16
  3521. TableView, Alter Table
  3522. - Table Cell Editor's Focus is cleared on slotRefreshRequested()
  3523. - fixed columns recreating on data resetting for a table
  3524. TableView
  3525. - fixed inserting row (empty or dropped)
  3526. - dropping indicator line is now painted with XOR mode
  3527. - more intuitive dragging and dropping rows: dropping on bottom 1/3 row's area means
  3528. dropping below this row
  3529. - dropping after the last row is now possible
  3530. - KexiTableViewData and KexiTableViewPropertyBuffer now supports multiple
  3531. rows deletion with cost O(n). KexiTableView is updated properly for this action.
  3532. Alter Table
  3533. - afted hiding table, rows (and prop. buffers) that are connected with it are deleted
  3534. 2004-06-14
  3535. Core/Parts
  3536. - For all parts: Instance GUI Clients are now splitted for per-view
  3537. GUI clients (switched on view switching) and common GUI client
  3538. (not switched within given dialog).
  3539. 2004-06-10
  3540. 2004-06-12
  3541. KFormDesigner
  3542. - rectangle on widget inserting, resize handles and grid's dots:
  3543. are now painted in white XORed color on top of all other widgets
  3544. - fixed widget raising to top on clicking: also container members
  3545. are raised (eg. for tab widget)
  3546. - more guarded ptrs added; fixed crash on ObjectTree destruction
  3547. - selection rectangle is drawn unclipped now, on top of all widgets
  3548. 2004-06-09
  3549. KexiTableViewPropertyBuffer:
  3550. - slots' connections fixed
  3551. KFormDesigner, Kexi Forms
  3552. - "pointer" action: better icon added (from Karbon); action moved to "widgets" toolbar/menu
  3553. - all "widgets" actions and "pointer" action are mutually exclusive
  3554. 2004-05-15
  3555. KexiDB:
  3556. - fixed bug: Connection::resultExists() now properly closes temp. cursor
  3557. ===================== Kexi 0.1 Beta 3 "United Europe" =====================
  3558. 2004-05-08
  3559. Form Designer: Extra widgets
  3560. - fixes for trinity.1 compatibility
  3561. - implicit deleting is cleaner than explicit
  3562. 2004-05-06
  3563. Main Window
  3564. - Messages are displayed on failed switching to othe view.
  3565. Lucijan's stuff
  3566. - Compile fixes, will be backported
  3567. 2004-05-03
  3568. Kexi Main Window
  3569. - Dialog dictionary is properly cleared on project close (fixed possible crash)
  3570. - Not stored dialogs are properly removed from a dictionary
  3571. Kexi Startup
  3572. - fixed possible crash due to deleting not owned connection data, deep copy is now performed
  3573. 2004-05-01
  3574. KexiDB
  3575. - QuerySchema: 'visible' field's property is now assigned to possition, not to field pointer,
  3576. because the same field can be added more than one time to a query
  3577. - Connection::selectStatement(): only visible fields are shown
  3578. Query Designer
  3579. - executing (switching to data view mode) is working again!
  3580. 2004-04-30
  3581. TableView:
  3582. - dropdown button position properly updated when scrollview's x-offset is non-0
  3583. Kexi Forms
  3584. - toolbar moved from 'part-wide' area to 'part-instance' area
  3585. Reationships/Query Editor
  3586. - master/detail sides of the realtionship are swapped when correction is needed
  3587. KexiViewBase
  3588. - added possibility of disable data storing on view switching; for some cases
  3589. [INFOSYSTEM 2004]
  3590. ~~~~~~~~~~~~~~~~ beta3 pre2 ~~~~~~~~~~~~~~~~
  3591. 2004-04-16
  3592. Kexi Core
  3593. - introduced KexiDialogTempData
  3594. TODO: make KexiQueryDocument inherit KexiDialogTempData
  3595. - added 'Settings->Other->Enable Forms' menu switch (off by default)
  3596. Global
  3597. - version: beta3 pre2
  3598. - updated readme_en
  3599. - Kexi backported to KDE3.1 and Qt3.1.1
  3600. KexiDB
  3601. - setting length is only available for Text fields
  3602. Kexi Alter Table
  3603. - 'length' property is set to 0 on changing type from Text to any other, and set to default (200)
  3604. otherwise
  3605. 2004-04-15
  3606. Kexi Main
  3607. - KexiNameWidget, KexiNameDialog: caption is now not required; geometry fixed
  3608. - Ugly bug fixed: active window sometimes changed to
  3609. other on menu clicking or leaving dialog's focus (because KexiTableView had NoFocus policy)
  3610. 2004-04-14..15
  3611. Table Views
  3612. - insertEmptyRow() improved
  3613. - KexiTableViewPropertyBuffer introduced
  3614. - cell editors that have no editor widgets: current internal value is now displayed
  3615. - KexiDataTableView: fixed columns double initializing
  3616. Cell Editors
  3617. - Boolean cells are now treated as other types: validation and edit buffering works
  3618. - Boolean cell editor moved to separate KexiBoolTableEdit class
  3619. - Enter key also toggles boolean editor's value
  3620. - clickedOnContents() added -allows to toggle value without using
  3621. editor widget (used in boolean cells)
  3622. - hasFocusableWidget() added -allows cell editors that have no editor widgets (e.g. boolean type)
  3623. Query Designer
  3624. - many functional improvements
  3625. - property editor is now used, like in Alter Table Dialog (with KexiTableViewPropertyBuffer)
  3626. KexiDB
  3627. - Connection::useDatabase(): fix for non-sqlite dbases:
  3628. we're not checking for database inconsistencies when using temporary database.
  3629. - SQLite cursor: added decoding for boolean values
  3630. TODO: move this decoding somewhere to generic functions
  3631. - Connection::useDatabase() : kexiCompatible param. added to allow using native dbases
  3632. 2004-04-13
  3633. Forms
  3634. - linkage fixes for win32
  3635. - some null-checks added
  3636. - widget deletion is now delayed (because of problems with qt/win32 events)
  3637. Table Views
  3638. - KexiTableView::maximizeColumnsWidth() added
  3639. Relations Editor
  3640. - Combo box is updated on table hidding
  3641. - popup menu titles added
  3642. Query Designer
  3643. - columns' data is better updated
  3644. 2004-04-06..08
  3645. KexiDB
  3646. - Reference class renamed to Relationship, documentation improved
  3647. - QuerySchema: added 'field visibility' flag
  3648. Table Views
  3649. - added 'column visibility' flag, inherited from QuerySchema's 'field visibility'
  3650. - many sanity checks added usable when data is destroyed
  3651. - added possibility of disabling vertical scrollbar's tooltip
  3652. - table can be refreshed if data model changed outside of this table
  3653. Combobox Table Columns
  3654. - key-based related data in columns added as an option (still of Field::Enum type)
  3655. - flickering removed when popping up for the first time
  3656. Query Designer
  3657. - table of fields ('field' and 'table' columns) is updated a bit on table adding;
  3658. not finished though
  3659. 2004-04-05
  3660. Kexi Alter Table
  3661. - fixed possible crash when the view is initialized with no table schema specified
  3662. (ie. for designing a new table)
  3663. - a pointer to table schema is updated after creating a new table
  3664. - compilter warnings removed
  3665. KexiDB
  3666. - names and docs in Reference class improved
  3667. - Connection: major versions of database and kexidb is are compared on useDatabase():
  3668. errors are presented if needed
  3669. 2004-04-02
  3670. KexiDialogBase
  3671. - beforeSwitchTo(int mode, bool &cancelled) is called also on newly created view
  3672. 2004-03-29..2004-04-01
  3673. Kexi Query Designer Editor
  3674. - KexiSectionHeader class introduced
  3675. - section's size hind fixed
  3676. Relations widget
  3677. - asterisks added to table boxes
  3678. - asterisks are not drag&drop enabled
  3679. - hiding tables implemented (connections are removable as well)
  3680. Table View
  3681. - Temporary FIX: BLOB editors are disabled
  3682. (in KexiBlobEditorFactoryItem::createEditor()) because of unstability.
  3683. TODO: reenable this
  3684. - setData(): when the same data object is passed, tableview is just refreshed
  3685. - setDropsAtRowEnabled() added; row-droping-indicator implemented
  3686. - KexiTableView::editor(): only if ignoreMissingEditor is false (the default),
  3687. and editor cannot be instantiated, current row editing (if present) is cancelled.
  3688. Thus: Now it's possible to edit data for tables where there are cells
  3689. that have no valid editors (yet?), such as BLOB now.
  3690. - paintCell(): if there is no editor defined, just a focus box is displayed,
  3691. filled with additional grayed diagonal pattern
  3692. Table View Editors
  3693. - clicking on date table popup selects current date
  3694. - QScrollView is passed on editors creation instead of QWidget
  3695. - QScrollView::moveChild() is used for moving external widgets, instead of QWidget::move()
  3696. - fixed uninitialized leftMargin value for FP-Number editor (on win32)
  3697. Alter Table Dialog
  3698. - Temporary: 'defaultValue' property hidden- we'll show this after we
  3699. get properly working editor for QVariant
  3700. Kexi
  3701. - Welcome screen now uses html 'welcome_<locale>' fiels.
  3702. These are Temporary! Do Not Translate!
  3703. Kexi Core
  3704. - KexiPartManager is now KexiDB::Object-derived; error texts are set now
  3705. - Action Proxies: child focus is better handled
  3706. - KexiViewBase: focus change tracking and actions updating improved
  3707. 2004-03-27
  3708. Form Editor
  3709. - buggy deleting fixed: ResizeHandleSet::Dict defined, we're using that instead
  3710. of not-fully-defined QDict<ResizeHandleSet>
  3711. Kexi
  3712. - added 'Welcome' screen with hot informations for our users
  3713. ~~~~~~~~~~~~~~~~ beta3 pre1 ~~~~~~~~~~~~~~~~
  3714. 2004-03-26
  3715. - pl translate updated
  3716. - some I18N_NOOP turned to i18n
  3717. - fixed crash on Relationships window closing due to lack of Part Item
  3718. KexiTableView
  3719. - "dontAskBeforeDeleteRow" config key is better
  3720. - after removing a row, all rows below are updated
  3721. - repaint of bottom few pixels (empty) area fixed when scrolling and resizing
  3722. Kexi
  3723. - "-new <object_type>" CLI option added: "Start new object design of type <object_type>"
  3724. (also convenient for everyday tests)
  3725. Main Window
  3726. - MDI mode is now stored and restored
  3727. - fixed problems with property dock window when using IDEAl mode
  3728. KMDI
  3729. - Fixed memory leak & crash:
  3730. Tab/IDEAl mode: mdiview was never destroyed but just moved out of the tab widget
  3731. - KMdiChildFrm: Mouse button press filtering is checked against every client's child,
  3732. not just client
  3733. TODO: backport this to qextmdi???
  3734. 2004-03-25
  3735. KexiTableView
  3736. - adjustColumnWidthToContents(-1) now mean that all columns' width is adjusted
  3737. - after calling adjustColumnWidthToContents(), editor width is updated, if needed
  3738. - setSpreadsheetMode() added
  3739. KexiQueryDesignerGuiEditor
  3740. - spreadsheet-like mode set
  3741. - more columns added: totals & sum
  3742. 2004-03-24
  3743. Main Window
  3744. - Wrong behaviour fixed:
  3745. after switching to other MDI mode, pointer to current dialog needs to be updated
  3746. (property editor was empty)
  3747. - previous 'view mode' toggle action is checked back properly after cancelled switch
  3748. Table View
  3749. - fixed editing initializing with 'removeOld' mode
  3750. Alter Table Dialog
  3751. - Temporary workaround:
  3752. if data is dirty and table schema was saved before --user is asked
  3753. for discarding changes.
  3754. - switching to Data Mode is cancelled if current design is empty (never saved and !dirty)
  3755. KexiDialogBase
  3756. - switchToViewMode() has now option for cancelling switching
  3757. (if user is able to cancel in any case)
  3758. - switchToViewMode() calls saveObject() on main window before switching, if needed
  3759. - KexiViewBase::afterSwitchFrom() and beforeSwitchTo() have now bool &cancelled
  3760. parameter that allows to gently cancel switching
  3761. (probably after showing some info messages)
  3762. 2004-03-23
  3763. 2004-03-24
  3764. Core, Main Window
  3765. - Volatile Actions introduced
  3766. - Menu updating and focusing fixed
  3767. Kexi TableView, Kexi Table Data
  3768. - Empty row inserting implemented
  3769. Kexi Alter Table
  3770. - Empty row inserting action added
  3771. 2004-03-22
  3772. Main Window
  3773. - when toggling to other view mode (using radio action) failed, action for
  3774. previous mode is toggled back.
  3775. 2004-03-19
  3776. 2004-03-20
  3777. KEXIDB:
  3778. <KEXIDB FORMAT CHANGED TO 1.2>
  3779. - 'kexi__objectdata' table introduced: contains object's data, such as form's xml def
  3780. SCHEMA: table kexi__objectdata
  3781. o_id integer REFERENCES kexi__objects(o_id),
  3782. o_data BLOB,
  3783. o_sub_id varchar(200)
  3784. </KEXIDB FORMAT CHANGED TO 1.2>
  3785. - Field::typeForString(typeString) Field::typeGroupForString(typeGroupString) added
  3786. - Connection::querySingleString() and Connection::resultExists() added
  3787. - KexiDB::sqlWhere() utility function added
  3788. Alter Table Dialog
  3789. - Saving field types FIXED
  3790. CORE:
  3791. - KexiDialogBase::storeDataBlock() added
  3792. Table View
  3793. - fixed row's painting for empty table that have only row "for inserting"
  3794. - vertical record marker: fixed painting during inserting 1st row
  3795. - function for inserting an empty row above the cursor added (not finished yet)
  3796. CORE:
  3797. - Shared Actions: unplugSharedAction(action_name, widget) added
  3798. Main window:
  3799. - "Insert empty row" shared action added
  3800. - Shared actions are updated on switching between dialog view modes
  3801. 2004-03-17
  3802. -KexiProperty: fix for fix :) changes from null string to "" string (or vice-versa) are ignored
  3803. -Kexi Property editor receives signal KexiPropertyBuffer::propertyReset()
  3804. (called from KexiProperty::resetValue()) so property is property visually reseted
  3805. even on calling resetValue() either by clicking "reset" button or by hand.
  3806. 2004-03-13
  3807. -KexiProperty: changes from null string to "" string (or vice-versa) are ignored
  3808. 2004-03-12
  3809. Table View
  3810. -Combo box editor: cursorAtEnd() and cursorAtStart() are just used
  3811. from KexiInputTableEdit
  3812. -Some debug disabled
  3813. -setColumnWidth() added
  3814. Alter Table Dialog
  3815. -now KexiDataTable is inherited instead of using KexiTableView internally.
  3816. Thus we have actions like 'row deleting' available.
  3817. -on table schema saving: checking for duplicated field names is now case insensitive
  3818. -convenient width set for 'type' column
  3819. Kexi Data Table widget
  3820. -Added ctor for not-db-aware version; docs updated
  3821. Kexi Core
  3822. -string2identifier(): fixed bug for strings started from not alphanumeric char
  3823. -New validator added: KexiDBObjectNameValidator for checking
  3824. for 'kexi__' name violations
  3825. -KexiMultiValidator added
  3826. Main Window
  3827. -KexiNameWidget now uses multivalidator, so it's easy to add additional validations
  3828. -above is used with KexiDBObjectNameValidator to check for violating 'kexidb__' names
  3829. KexiDB
  3830. -Driver::isKexiDBSystemObjectName() static function added; isSystemObjectName()
  3831. uses this now by default
  3832. 2004-03-11
  3833. Main Window
  3834. -fix: object's name and caption entered by user is used to create this object
  3835. -brand new objects have changed part item id --this is updated in main window's
  3836. structs as well
  3837. -in removeObject(): if object's dialog is opened -it's quietly closed before removing
  3838. -added check/hack to avoid inf. recursion between removeObject() and closeDialog()
  3839. -crash fixed: on dialog closing, it's properly removed from dictionary.
  3840. Kexi Dialogs
  3841. -'neverSaved' flag is cleared on first successful saving
  3842. -active view is 0 on its parent dialog destruction
  3843. -Dialog's docID is not just id, and inherits part item's (KexiPart::Item) identifier
  3844. Alter Table Dialog
  3845. -'name' and 'description' properties are updated on change
  3846. -on table schema saving, user is warned about: 1) duplicated field names
  3847. 2) not added fields at all; 3) fields without names
  3848. Table View:
  3849. -'removeOld' flag is passed from TV to initializer, so given editor's implementation
  3850. can decide what to do
  3851. 2004-03-10
  3852. Table View
  3853. -Combo box editor: after new row selecting (not hightlighting) editing is accepted
  3854. -setFilteringEnabled() added
  3855. KexiDB::Field
  3856. -forgotten: Byte is numeric type, of course
  3857. Alter Table Dialog
  3858. -anyway, subtype property is always created (may be needed later)
  3859. -subtype is properly opdated on type (group) changing
  3860. Properties
  3861. -fixed possible crash
  3862. -KexiProperty: now it's possible to change a list of values (in case
  3863. of property of type 'list')
  3864. KexiViewBase
  3865. -propertyBufferReloaded() added -called whenever current
  3866. property buffer is changed that few properties are now visible
  3867. and/or few other are invisible
  3868. 2004-03-09
  3869. Main Window : some top level polishing
  3870. -most tooltips/what's this added for actions
  3871. -'save' action now works int the current dialog context
  3872. -message about more not impelmented features added
  3873. -proper quitting and project closing
  3874. -KMainWindow::queryExit() and queryClose() impelmented instad of closeEvent()
  3875. -"Create" menu is disabled when no project is loaded
  3876. -On last dialog closing, guiclient is removed (so dead toolbar are hidden now)
  3877. -Main Window: dock windows are disabled on project closing, for sanity
  3878. -some fixes for mime data (QString -> QCString)
  3879. -part manager's part lookup can be called only once now
  3880. (refreshing will be impl. one day)
  3881. -dock windows (navigator and propeditor) are properly handled on closing/reopening projects
  3882. -opening project after closing fixed
  3883. -caption is updated on dialog data saving; after saving brand new data,
  3884. item is added to the navigator
  3885. Property Editor
  3886. -fixed crash on changing invisible properties
  3887. Alter Table Dialog
  3888. -creating new tables works partially
  3889. 2004-03-08
  3890. Table View
  3891. -'acceptsRowEditAfterCellAccepting' flag added
  3892. Main Window
  3893. -closeDialog(), saveObject(), closeProject() methods have now 'cancelled'
  3894. parameter, so they can tell you if user just cancelled operation or there was
  3895. rather a real error.
  3896. -Duplicate names are checked on new object saving; user is prompted for unique name.
  3897. -On dialog closing: 'Dirty' flag is cleared when user discards dialog saving
  3898. KexiDB::Field
  3899. -Connection::findObjectSchemaData() added for looking for objects by type and name
  3900. -INDEXED flag added to KexiDB::Field (now you can declare field to be indexed
  3901. even without any constraint)
  3902. -More implied rules added for methods like setPrimaryKey()
  3903. -More docs added
  3904. Alter Table Dialog
  3905. -most missing field properties are now visible in property editor
  3906. -Creating new table: table schema is (almost) created using current buffers' state
  3907. 2004-03-06
  3908. 2004-03-05
  3909. KexiDB
  3910. -'helpText' for SchemaData and Field members renamed to 'description'
  3911. -KEXIDB METADATA FORMAT CHANGED (to 1.1):
  3912. helpText renamed to description in kexi__objects table
  3913. -Connection::storeObjectSchemaData() added -can be reused mostly for object storage
  3914. Core
  3915. -string2Identifier(): now created identifier is forced to lowercase
  3916. Kexi Parts
  3917. -part item's and part info's 'mime' is now of QCString type
  3918. -structures like items dicts are now case insensitive QAsciiDict
  3919. Kexi Dialogs
  3920. -storeData() and storeNewData() methods added
  3921. -currently used KexiDB::SchemaData object is pointed by KexiDialogBase
  3922. (useful for data saving)
  3923. Kexi Views
  3924. -storeData() and storeNewData() methods added; called by parent dialog
  3925. Kexi Project
  3926. -now keeps a list of never-stored part items (on 1st saving, a given
  3927. item is moved to a list of regular part items)
  3928. -createObject() -generic method for initiating object creation on the backend;
  3929. updates item's data when necessary, etc.
  3930. Kexi Properties
  3931. -QCString is used for property name instead of QString
  3932. -structure like properties dict (in the buffer) is now case insensitive QAsciiDict
  3933. KexiMainWindow
  3934. -saveObject() added, KexiNameDialog is used for prompting for object name and caption
  3935. -user is asked for object saving on dialog closing (and thus on app closing as well)
  3936. Kexi Alter Table
  3937. -storeNewObject() and storeObject() implementation started
  3938. Main
  3939. -KexiNameWidget and KexiNameDialog utility classes
  3940. (for entering both names and caption names) implemented
  3941. 2004-03-04
  3942. Main Window
  3943. -Both on window close and application close: User is prompted for saving
  3944. unsaved data for each "dirty" dialog. Pressing "Cancel"
  3945. -cancels application closing.
  3946. -only stored objects are added to the Navigator
  3947. -few methods move to protected
  3948. -graphical notification about 'dirty'==unsaved data ("*" sign at the right hand)
  3949. added to the names on captions, taskbar and navigator
  3950. -API for saving kexi dialog's data added, plugged to the main window
  3951. Kexi Dialogs
  3952. -currently not only dialog is activated when focus come to any of its children,
  3953. but also when any children is clicked.
  3954. -KexiViews have now 'dirty' flag and parent KexiDialog reuses that
  3955. 2004-03-03
  3956. 2004-03-02
  3957. Kexi Dialog / View
  3958. -fixed internal view's focusing: on click on a view, dialog is activated
  3959. -focus cell is now grayed for disabled table views, not for unfocused
  3960. KexiDB
  3961. -"kexi__parts" table is now filled with default (required) parts info
  3962. automatically in Connection::createDatabase(), not somewhere outside
  3963. TODO: add version info?
  3964. Main Window
  3965. -Part type name removed MDI Taskbar buttons' captions, to save some space
  3966. -User is now asked for saving object data on dialog closing (if it's dirty)
  3967. -Not stored objects are removed from memory and gui completely,
  3968. if user won't let to save them
  3969. -Not stored objects (part instances) have now identifiers < than -1
  3970. Kexi Views/Dialogs
  3971. -"dirty" and "neverSaved" flags added
  3972. Parts / Kexi Project
  3973. -so-called "unstoredItems" introduced, so they can initially exist in memory only
  3974. and user may want to give up, not saving them
  3975. Table View
  3976. -Fixed focus-stealing from editor problem
  3977. 2004-02-27
  3978. Kexi Property Editor, Kexi Property Framework
  3979. -propertyChanged() signal is received from assigned property buffer,
  3980. and values are visually updated (including children)
  3981. -changeProperty() code (for checking for changes)
  3982. moved from buffer to property setValue to avoid mistakes in class usage
  3983. -property editor class now has a dict of all items, based on its names
  3984. -each KexiProperty now has a pointer to its buffer, ans uses it to emit
  3985. signals on value changes
  3986. -fixed crash on moveEditor() when called from ctor
  3987. -KexiPropertyEditor is safely updated right before PropertyBuffer destroying
  3988. Kexi Validator
  3989. -allows to define whether empty values are ok or not
  3990. Alter Table Dialog:
  3991. -'name' and 'type' columns can be empty now (that just means the row is empty)
  3992. -buffer and 'type' column is cleared when 'name' column is cleared
  3993. -row deleting works (buffer is destroyed as well)
  3994. Table View's Data
  3995. -aboutToDeleteRow() signal is emited before row deleting and rowDeleted() -after
  3996. Table View
  3997. -contents size is updated after row deleting
  3998. 2004-02-26
  3999. Kexi Property Editor
  4000. -leaveTheSpaceForRevertButton introduced for subeditor class.
  4001. This removes confucion when user clicks on a spinbox arrow and it suddenly
  4002. moves left.
  4003. -parent item is updated on children updates
  4004. -editor position is updated when user collapses or expands a property node
  4005. -resetting composed property value also resets all children
  4006. Kexi Property Framework
  4007. -testiong for property change: for date and datetime types we're now comparing
  4008. values using strings, because there can be miliseconds difference in a time;
  4009. strings comparison fixed for null strings
  4010. -resetValue() added to KexiProperty for convenience
  4011. -for composed properties (like Rect):
  4012. * changing property child updates parent value
  4013. * setting property unchanged (eg. on resetting) updates parent's 'changed' flag
  4014. -QSizePolicy-type property helper improved
  4015. -setValue() renamed to setChildValue() to remove messy overload
  4016. 2004-02-24
  4017. Table View:
  4018. -KexiTableViewData is now QObject-derived
  4019. -signals like aboutToChangeCell() or rowChanged() moved from KexiTableView
  4020. to KexiTableViewData, so it'll be easier to reuse KexiTableViewData
  4021. with a forms, and easier to share common data object between views.
  4022. -It's now allowed to call acceptRowEdit() from inside of cell-accept handlers
  4023. e.g.: KexiTableViewData::aboutToChangeCell() signal
  4024. (no infinite recursion is preformed but instead: the row is saved after
  4025. cell's acception).
  4026. KexiDB:
  4027. -ResultInfo introduced
  4028. -getHTMLErrorMesage() utility method introduced
  4029. -Cursor: now pointer to connection is guarded
  4030. -Connection, Cursor: error status is cleared before performing update/delete/insert
  4031. -Connection::recentSQLString() added (useful for debugging and on-screen
  4032. error messages
  4033. -Connection: further error message fixes
  4034. Alter Table Dialog:
  4035. -after 'name' field is entered, 'type' column as automatically filled
  4036. -"newrow" property is added for each new buffer to indicate for later processing
  4037. that these buffers are for newly added fields
  4038. Properties are now indexed using case insensitive names.
  4039. 2004-02-22
  4040. KexiDB:
  4041. -copy constructors added for classes: table schema, field list, index schema, field
  4042. Alter Table Dialog:
  4043. -all changes are made to the deep copy of the table, not to the original
  4044. TODO: KEXIDB: copy constructors: also copy references of the index schema
  4045. 2004-02-21
  4046. Main Window:
  4047. -buffer in the property editor is properly cleared when current dialog is changed
  4048. or there is no dialog
  4049. Table View:
  4050. -clearSelection() and field(int) methods added
  4051. -on row deleting: cursor is moved up only if we're deleted the last row
  4052. and row-inserting is not enabled
  4053. -fixed selecting row after no row was selected
  4054. -messagees are displayed on failed row updating/inserting
  4055. -CONSTRAINTS: illegal null/empty fields are checked on updating/inserting
  4056. (msg boxes are used if required)
  4057. -the cursor is moved to faulty cell's value on record update/insert error
  4058. Combo box editor:
  4059. -selection on the popup table view is cleared then no test is entered
  4060. -up/down/left/right key presing leaves the lineedit if there is no
  4061. line selected on the popup table
  4062. -improved editing convenience
  4063. KexiDB:
  4064. -isEmptyValue() generic function added for checking if a value of QVariant
  4065. is empty but not null
  4066. Alter Table Dialog:
  4067. -"data type" column declared as NOT EMPTY
  4068. 2004-02-20
  4069. KexiDB::Field:
  4070. -setNonEmpty() fixed
  4071. -NOT EMPTY constraint is now implied by PRIMARY KEY constraint
  4072. Table View:
  4073. -on a table cell edit accepting: violating of the following:
  4074. --NOT NULL or NOT EMPTY constraints
  4075. --validation rules (using attached KexiValidator)
  4076. so LATER this may be also used for forms
  4077. --from-editor value getting errors (d->pEditor->value())
  4078. ..is now signaled using message box
  4079. Alter Table Dialog:
  4080. -"field name" field acts like a primary key
  4081. 2004-02-19
  4082. KFormEditor lib:
  4083. -ported to win32
  4084. -some sanity checks added
  4085. 2004-02-18
  4086. KexiPropertyEditor:
  4087. -font editor item: description text moved to kexiproperty::format(); added weight & italic info
  4088. -new method of column sorting: instead ascending - default order,
  4089. instead descending - alpha order
  4090. - "revert to original value" button is automatically shown when property value is changed
  4091. and becames hidden when the value is reverted to original value
  4092. KexiTableView: added new signals:
  4093. -for checking validity of curent cell, before changing
  4094. -for checking validity of curent row, before updating
  4095. -for checking validity of a new row, before inserting
  4096. In a case when checking for validity failed, row edititing/inserting
  4097. (or cell updating) is cancelled --> editor is not removed
  4098. - KexiPropertyBuffer: clear() reimplemented for proper clearing the data
  4099. - KexiValidator class introduced
  4100. KexiTableView:
  4101. -acceptEditor() returns bool, so now it's checked if we can proceed with cursor moving, etc.
  4102. -KexiValidator is used to check whether cell editing should be accepted or not.
  4103. Alter Table Dialog:
  4104. -hidden "name" property added, ident. validator is now used
  4105. -added KexiDB::RowEditBuffer* argument to aboutToUpdate and aboutToInsert signals
  4106. 2004-02-17
  4107. - KexiDB::typeStringsForGroup() ustility function added
  4108. - KexiDB::Field: array of field type names fixed
  4109. Kexi Property Framework improved:
  4110. - properties can be nested, e.g. for Rect type there are automatically
  4111. created two properties: x and y
  4112. - pointer to a parent property is kept, if present
  4113. - all data is stored in KexiProperty and KexiPropertyBuffer, not just in GUI objects
  4114. - editoritem text for composed values (like Rectangle) now displayed properly
  4115. - reverting to default works properly for properties of type 'list'
  4116. - By default, sorting is disabled (properties are in order of insert time)
  4117. - KexiPropertyEditor: fixed value changes for prop. children
  4118. 2004-02-12
  4119. - typeName() added to KexiPropertyBuffer
  4120. - typeString(), typeGroupString() added to KexiDB::Field
  4121. - KexiDB Utils: typeNamesForGroup() and typesForGroup() utility functions added
  4122. - KexiPropertyEditorList crash fixed for StringList type
  4123. 2004-02-10
  4124. - Property editor is now used globally in Kexi (property buffer's change comes from active KexiView)
  4125. - Alter Table Dialog connected to global property editor
  4126. - Kexi Main Window: removed unused code
  4127. - Action for Focusing Property editor (alt+2) added
  4128. - KexiProperty and KexiPropertyBuffer classes moved to core/
  4129. from widget/propertyeditor
  4130. - KexiProperty has now oldValue() and changed() methods -- usable
  4131. since we've global property editor
  4132. 2004-02-09
  4133. --design command-line option added, especially useful for developers
  4134. main window:
  4135. - dock/layout/geometries settings are stored/restored (a bit better, not complete though)
  4136. - table view: update width of a combobox popup on editor's resizing
  4137. 2004-02-08
  4138. - libkeximain introduced (by splitting libkexicore)
  4139. Main Window settings:
  4140. - main window size stored and restored before showing
  4141. - "maximized childframes" setting stored/restored
  4142. 2004-02-04
  4143. Table view:
  4144. -Generic Cell Editor Framework introduced
  4145. -selection background painting moved to editor's implementation
  4146. -for row-selection mode: Home/End keys always move to the 1st/last row
  4147. -page up/page down actions added as methods
  4148. ComboBox Editor improoved:
  4149. -we're completely dropping use of regular combobox
  4150. -new layout: a lineedit + dropdown button + popup tableview, when needed
  4151. -methods used (and few added) for tableview to enable adjusting
  4152. it for use it as dropdown tv:
  4153. --hidden vtoolbar
  4154. --hidden header (on user demand, and automatically, when only one
  4155. column is visible in the dropdown tv
  4156. --hidden the context menu
  4157. --hidden the record navigator
  4158. --added and used a method for selecting entire row, not just a cell
  4159. --tv's recordset made readonly, disable inserting
  4160. --sorting disabled
  4161. Property Editor:
  4162. pointer to current editor is now guarded, fixed crash (on sorting)
  4163. due to uninitialized member
  4164. 2004-01-29
  4165. -KexiDB: crash fixed for records buffering, when a value is NULL
  4166. (for some targets strdup crashes on NULLs)
  4167. -KexiDB: i18n'd names for datatype groups added, just like datatype names.
  4168. This will be used eg. in Alter Table Dialog
  4169. 2004-01-28
  4170. - Main Window: toggle actions are checked off before disabling
  4171. - Table View:
  4172. -fixed size of Vertical header's item (record marker) used in Table View
  4173. (now also works ok with Windows style)
  4174. -don't paint contents of edited cell - painted editor is enough
  4175. -methods added for showing/hiding vertical and horizontal header
  4176. -framework for showing cell's focus depending on editor type added to cell
  4177. editor (eg. dropdown btn for combobox)
  4178. - Main Window:
  4179. Fixed problem with autoincremented identifier in kexi__object
  4180. table on ObjectCreation for some backends
  4181. lucijan: what about using kexiDB API, not hardcoding?
  4182. 2004-01-27
  4183. - Combo box editor
  4184. -key events fixed
  4185. 2004-01-26
  4186. - Table View:
  4187. -KexiCellEditorFactory and KexiCellEditorFactoryItem introduced for generalized cell
  4188. editor creation and cell painting
  4189. -now, we don't try to recreate cell editors but store one editor instance for every
  4190. column and just show/hide/move it when needed
  4191. -column width is now adjustable with adjustColumnWidthToContents() and stretchable with
  4192. setColumnStretchEnabled()
  4193. ===================== Kexi 0.1 Beta 2 "Warsaw By Night" =====================
  4194. 2004-01-20
  4195. - kmdi captions fix backported to kexi_compat
  4196. - kexistartupfiledialog: we're using paths unstead urls now for better compat.
  4197. 2004-01-19
  4198. RESIZING HELL RESOLVED
  4199. - KexiDialogBase resizing fixed for maximize state: only resize a dialog if it is in normal state
  4200. - KexiMainWindow: for dialogs in normal state: decrease dialog's height if it exceeds area contents
  4201. - KexiViewBase:
  4202. -preferred size hint introduced;
  4203. -parentDialog() convenience method added for getting view's dialog parent.
  4204. - KexiDB::Connection:
  4205. -tableNames() return only tables that have valid names
  4206. -the same for any other objects
  4207. - actions in 'Create' menu work
  4208. - PropertyEditor has cell borders' color like this used in table view
  4209. - closing() signal added to KexiViewBase - it works like in KexiDialogBase.
  4210. Effect: table view's data is saved on closing if editing is in progress
  4211. - table view, kexidb: after row inserting, autoincremented fields have displayed values
  4212. - query removing works
  4213. - KexiMainWindow: shared actions are disabled when no proxy is available
  4214. 2004-01-17
  4215. - KexiDialogBase: minimum height fixed: added height of its caption
  4216. - KexiTableView: repainting of bottom contents FINALLY FIXED
  4217. - ALTER TABLE Dialog impl. started
  4218. - query part: crashes removed when no sql string defined for query; by default "visible" column is true
  4219. - relation view:
  4220. -for global db relations -all tables are shown (will be customized later)
  4221. -open table/design table actions fixed
  4222. - bool Kexi::isIdentifier(QString) added for convenience
  4223. - KexiDB: Tables and queries with invalid names (that are not valid identifiers) are skipped on lookup
  4224. - KexiProject: The same for any objects and KexiProject level
  4225. 2004-01-14
  4226. CORE API CHANGED:
  4227. - Kexi Dialogs : view modes functionality added -- KexiViewBase, and integrated with KexiMainWindow
  4228. and KexiDialogBase
  4229. - KexiDockBase removed because if KexiViewBase existence
  4230. - If a dialog is already opened in given mode and user have dbl-clicked on the Navigator,
  4231. the dialog is not switched to other mode
  4232. - InternalParts and dialogs without multiple modes FIXED
  4233. - KexiTableView: when cursor is moved down and navigator covers the cursor's area,
  4234. area is scrolled up.
  4235. 2004-01-13
  4236. KexiActionProxy:
  4237. - isSupported(const char* action_name) added -returns true, if action is supported by the proxy
  4238. - isAvailable() now lookups also in the childrens actions, if actual action proxy does
  4239. not support a given action
  4240. - Relation View:
  4241. some action availability updates
  4242. - more icon sizes added: state_sql, table; state_text added for future "text view" mode
  4243. - KexiMainWindow: actions are invalidated more accurate on dialogs switching/closing
  4244. - KexiDialogBase: added flags t ocheck if given dialog's implementation accepts given view mode
  4245. (data/design/sql modes)
  4246. - Kexi::ViewMode introduced - view modes for kexi dialogs (i.e. data/design/sql)
  4247. 2004-01-12
  4248. - Relation View:
  4249. - tables focusing fixed
  4250. - actions 'remove table', 'remove relation' work (not impl)
  4251. - "relation view" widget extracted and moved from relations/ plugin to widget/relations/
  4252. (because it's used also in queries)
  4253. - KexiRelationDialog renamed to KexiRelationWidget to avoid mistakes
  4254. - actions moved from KexiRelationView up to KexiRelationDialog (simplicity)
  4255. - added new actions: "open table", "design table"
  4256. - KexiActionProxy:
  4257. new plugSharedAction() overload added for easy creating alternative action names.
  4258. 2004-01-10
  4259. - KexiDB::Field::isIntegerType() added. Now It's easier to detect if a field is integer.
  4260. - Fixed loading and saving values of type Float or Double in database tables.
  4261. - Row updating/inserting: Fixed converting decimal symbol from locale back to db backend format
  4262. 2004-01-09
  4263. - PartManager: Parts are sorted using definition stored in kexirc
  4264. (code taken from the old API)
  4265. - .ui files can be now translated
  4266. 2004-01-08
  4267. - KexiInternalPart introduced (as generalized KexiRelationPart):
  4268. produces internal Kexi dialogs and widgets ON DEMAND
  4269. (so: KexiRelationPart is removed)
  4270. - Kexi Relations (widget and dialog) is now produced by KexiInternalPart
  4271. - Tables in relation view: sizes fixed
  4272. 2004-01-07
  4273. - Build fixes for gcc2.95 on trinity.1
  4274. - Relations View: connection and viewtable focusing fixed and some actions added
  4275. 2004-01-06
  4276. - KexiTableView:
  4277. -rowEditStarted(int) signal is emitted when row editing is started
  4278. (for updating or inserting)
  4279. -rowEditTerminated(int) emmited when row editing is terminated
  4280. (no matter if accepted or not)
  4281. -proper availability updates for "edit_delete_row" (disabled when tv is
  4282. readonly) and "data_save_row" (enabled only on row editing)
  4283. - KexiDialogBase/KexiPart : fixed caption icons setting for dialogs created by
  4284. parts
  4285. - Shared Actions:
  4286. - KexiSharedActionHost introduced - it's "action sharing" functionality extracted from KexiMainWindow.
  4287. - global default KexiSharedActionHost added for convenience
  4288. - KexiActionProxy now uses KexiSharedActionHost as it's host instead of explicity pointed KexiMainWindow
  4289. - on destruction, KexiSharedAction object is taken out of its KexiSharedActionHost
  4290. - int KexiMainWindow::generatePrivateDocID() added, so we can use this when we want to get unique doc id
  4291. e.g. for KexiDialogBase.
  4292. - generatePrivateDocID() is used in Relations dialog
  4293. - KexiMainWindow: fixed bug in virtual function
  4294. - KexiSharedActionHost: fixed behaviour on destruction
  4295. -KMDI:
  4296. -caption's icon is resized on setIcon() when needed
  4297. -default icon changed to SmallIcon("filenew"),
  4298. if not found - filenew.xpm is used
  4299. 2004-01-05
  4300. - QueryAsterisk:
  4301. -setTable() added - a must for parser to work
  4302. -debug improoved
  4303. - Connection: dropTable() added
  4304. - Query Part ported to win32
  4305. - KexiBrowser: nice title added for popup under part item
  4306. - KexiTableView:
  4307. -navigator showing/hiding implemented
  4308. -cursor setting a bit fixed for empty view
  4309. -cell's text has now proper color for read-only column
  4310. - KMDI: fixed bad QWidget filter lookup and unsafe identifier hiding in childview's eventfilter
  4311. - kexipropertyeditor ported to win32, kexiproperty and kexipropertybuffer moved from core
  4312. 2004-01-04
  4313. - KexiActionProxy: "action" term in methods substituted by more readable: "sharedAction"
  4314. - some actions (in browser) marked as KEXI_UNFINISHED
  4315. - KexiMainWindow: KStdActions are now also acceptable as shared actions
  4316. - copy/cut/paste actions are shared now; added to edit menu
  4317. - "relations" action reintroduced
  4318. - closing() convenient signal added to KexiDialogBase
  4319. - on Table closing - any edits that are in progress are accepted (thx to lucijan for report)
  4320. - KexiTableView:
  4321. -fixed crash while counting minimum size for columnless tableview
  4322. -preventing from crash when no data is set before constructing is finished
  4323. - KexiProject: openObject() and removeObject() added so we will be able to catch kexidb errors
  4324. - KexiPart items are now removable! (both from GUI and db backend)
  4325. - Kexi Browser is items are removed if required
  4326. - KexiDialog: now has itemIcon() possible for reimpl. and Kexi Relation View reimpl this, since
  4327. it has no KexiPart
  4328. - Kexi Relation View: small crash fixed
  4329. 2004-01-03
  4330. - KexiDB, core:
  4331. -ConnectionData and KexiProjectData now inherit QObject
  4332. (useful for QGuardedPtr, sharing and for notifications about changes)
  4333. -project_caption, project_desc properties are now created and stored in projects
  4334. -some utility functions added in kexidb/utils.cpp
  4335. - KexiMainWindow: application's caption now also contain current project's caption (or name)
  4336. (this also works ok for maximized windows)
  4337. - mysql driver reenabled (may not work correctly)
  4338. - ConnectionData
  4339. -conflict with QObject fixed
  4340. -"name" member is now: "connName"
  4341. 2004-01-02
  4342. - table view:
  4343. -in key event - we give up with executing actions that are shared with main window, because
  4344. these actions are executed at main window's level. These actions are declared using
  4345. plugSharedAction().
  4346. -row deleting works
  4347. -rows number is updated in tv navigator after row deletion
  4348. - actions: MSA-like "Delete Record" substituted by "Delete Row"
  4349. TODO: show posible errors (as well as for INSERTs and UPDATEs)!!!
  4350. 2003-12-30
  4351. ** Many cleanups and behavioral fixes
  4352. - KexiMainWindow:
  4353. -focusing fixed again (now menubar doesn't grab move focus from navigator)
  4354. -shared action set is now simplified, generalized
  4355. -getlogin() used at least on win32, cause lack of KUser :)
  4356. - KexiDockBase added as a base for docked widgets hat offer shared actions.
  4357. Now it is a pair with KexiDialogBase class (both inherit KexiActionProxy).
  4358. - "Data" menu entry introduced
  4359. - KexiTableView:
  4360. -added action for current cell removing
  4361. -added popup menu
  4362. -cell focus-marker is not grayed when popup menu is executed
  4363. -Key_Space pressing fixed
  4364. -added possibility for plugging shared actions to table view (using plugSharedAction()),
  4365. e.g. "data_save_row" action, so shortcuts are properly handled
  4366. -deleting row while new row is edited just cancels editing
  4367. -vscrollbar tooltip is not visible when corliing is dont using keyboard instead of a mouse
  4368. -stranger's key events (e.g. pressing up arrow in navigator's line edit)
  4369. aren't processed by table view (in keyPressEvent())
  4370. 2003-12-22
  4371. - KexiTableView most keyboard events are now only accesible without key modifiers (eg. CTRL+Key_Up now
  4372. doesn't work)
  4373. 2003-12-21
  4374. - KexiActionProxy introduced
  4375. - New terms introduced: part's gui client and part instance's gui client.
  4376. The latter is removed from main window's guifactory when part instance is deactivated
  4377. e.g. "Filter" action of tablepart is hidden when needed),
  4378. while the former is premanent in main window (e.g. "New Table" action is always visible).
  4379. - KexiMainWindow:
  4380. -dockwidgets' (like e.g. browser) focusing on main window's activate/deactivate
  4381. and on menu bar popups - fixed.
  4382. -removed toolbar item's fileckering when we're closing one kexidialog and another kexidialog
  4383. of the same type (guiclient) has to be activated (solution: guiclients are removed not
  4384. on kexidialog closing but before activating another, it new activated dialog has different client.
  4385. - Global Action availability updates: 1) KexiMainWindow updates its actions on dialog switching,
  4386. or even on focusing dockwidget, like e.g. browser; 2) from dialog point of view - when required,
  4387. action availiability (true/false) is signalled from currently focused dialog to main window
  4388. - Browser: popup menu re-added, (there is also example how to plug
  4389. both custom and global actions to the popup)
  4390. - Opening part instances in design mode prepared (openInstance())
  4391. 2003-12-20
  4392. - KexiDialogBase remembers its creator (a KexiPart::Part object)
  4393. - KMdiChildFrm's icon is scaled when needed (e.g. when detached/attached)
  4394. - KexiPart's classes: some methods are now protected
  4395. - Toolbar buttons are now flicker-free, because gui clients are now attached
  4396. to parts instead of part instances
  4397. 2003-12-19
  4398. - KexiDB::Field:
  4399. -many properties of type int are now of type uint
  4400. -WIDTH property added
  4401. -NOTEMPTY property added
  4402. -canBeEmpty(), typeGroup(), isDateTimeType() added
  4403. - KexiDBTableViewColumn merged with KexiTableViewColumn, now column properties are always reused
  4404. from KexiDB::Field's properties
  4405. - KexiTableView: full handling of NULL or EMPTY values on editor accepting, e.g.:
  4406. * cells are displayed as empty EVEN for numeric types, if null values are allowed
  4407. * cell value is forced to NULL if empty values are not allowed (e.g.: for numeric types)
  4408. - Updating with NULL values fixed, and it's done only when needed.
  4409. - KexiTableView editors: pressing "left arrow" key at begginning of cell's text moves
  4410. to cell on the left hand; the same for end of text+right arrow key
  4411. - Finally: new row inserting works (no data integrity checking or warnings added though).
  4412. - KexiTableView: cells: fixed displaying of text (and text selection) longer than cell's width
  4413. - KexiDB:
  4414. -escapeString() and valueToSQL() moved from Connection to Driver
  4415. -escaping ' and " chars fixed
  4416. 2003-12-18
  4417. 2003-12-17
  4418. 2003-12-16
  4419. 2003-12-15
  4420. - tableview: changes in keys behaviour:
  4421. -Ctrl+home moves to 1st row, Ctrl+end - to last row,
  4422. Home -to 1st col., End -to last col.
  4423. Ctrl+Shift+home moves to 1st row and col, Ctrl+Shift+end - to last row and col,
  4424. -Key_BackTab is also used to navigate cells
  4425. -row editing improoved: buffer containing changes for current
  4426. edited row introduced (KexiDB::RowEditBuffer)
  4427. - tableview cell editors / items:
  4428. -KexiTableItem simply inherits from KexiDB::RowData
  4429. -Tab and Shift+tab, Up, Down, Home, End, etc. keys work also when cell editor is visible
  4430. - FINALLY: row editing fully working: data is updated @ the backend using KexiDB
  4431. - keximainwindow:
  4432. -Tab key pressed on navigator activates current child window
  4433. -Mainwindow's caption now contains (for Childframe Mode) child window's caption
  4434. as the prefix if the child is attached and maximized. This works well with attaching/detaching
  4435. and deactivating child windows.
  4436. - KMdiChildArea: 2x crash fix for childframe mode
  4437. -when KMdiChildArea::setTopChild(0) is called and m_pZ is empty, pMaximizedChild is 0
  4438. -in KMdiChildArea::manageChild(), first - we need to take old references to childwindow
  4439. that is added to m_pZ (crash reproduction: detach one childwindow, attach it, detach again)
  4440. -KexiDB:
  4441. -IndexSchema's pkey retrieving for loaded project -fixed
  4442. -RowEditBuffer class introduced
  4443. -Object::debugError() shows more error info
  4444. -Connection::updateRow() and Cursor::updateRow() inttroduced for row updating
  4445. -some metods goes inline
  4446. -expanded list (obtained from QuerySchema::fieldsExpanded())
  4447. of Cursor's all query fields is cached within cursor
  4448. -FieldList - fields lookup is now case insensitive
  4449. -results of QuerySchema::fieldsExpanded() is cached inside QuerySchema
  4450. -QuerySchema::pkeyFieldsOrder(), QuerySchema::fieldsOrder() methods introduced (results are cached)
  4451. -Drivers:
  4452. -SQLite driver updated for current API
  4453. -MySQL driver just compiles
  4454. 2003-12-13
  4455. - browser: focusing fixed: doesn't lose focus when clicked
  4456. 2003-12-12
  4457. - added caching to KexiProject::items() and KexiPartInfo
  4458. - objects lookup-and-opening functionality moved from navigator (KexiBrowser) to keximainwindow
  4459. - "-open" CLO reintroduced
  4460. - KexiMainWindow: error messaging generalized a bit
  4461. - KexiTableView - editors API and behaviour improoved
  4462. - KexiPart::Part objects are cached
  4463. - pointers to KexiPart::Item are used instead of values
  4464. - KexiStartupFileDialog's file selection works on win32
  4465. 2003-12-11
  4466. - Cursor::movePrev() impl. updated
  4467. - DriverManager: result names are available for KParts::ComponentFactory::ComponentLoadingError errors
  4468. - Detached KexiDialogBase windows now have proper icons
  4469. - KexiTableView:
  4470. - size hint and minimum size hint fixed
  4471. - better widths for text fields in navigator
  4472. - cell redrawing & colors fixed
  4473. - KexiDataTable: size hint and minimum size hint is reused from KexiTableView
  4474. - Some fixes for KMDI taskbar
  4475. - KexiInputTableEdit:
  4476. - fixed adding first char on starting edit
  4477. - numeric field == 0 is cleared on edit
  4478. - KexiDialogBase, KexiPart::Part: creating part instances and registering generalized
  4479. - KexiMainWindow: foxusing improoved, added action for focusing navigator
  4480. - KexiMainWindow: members moved to d-pointer
  4481. - KexiPart::GUIClient is created by KexiPart on demand, if GUI window available
  4482. 2003-12-10
  4483. - KexiMainWindow:
  4484. * "show navigator" action is auto-handled by kmdi
  4485. * fixed : pointer to current xmlgui is now cleared before closing kexidialog
  4486. - KexiTableView::paintRow() fixed crash when col number was ==-1
  4487. 2003-12-08
  4488. - Kexi MainWindows' settings are now stored and restored:
  4489. - toolbars, docks positions
  4490. - MDI mode
  4491. - added workaround for TaskBar positioning problem
  4492. 2003-12-06
  4493. - sources synced with win32 target, again
  4494. - Kexi:: singletons are now accessed via functions, eg. Kexi::connset()
  4495. 2003-12-03
  4496. - KMDI modes enabled
  4497. - KexiStatusBar introduced
  4498. 2003-11-30
  4499. - KexiDB::Field::isFPNumericType() added
  4500. - KexiTableView now entirely uses KexiDB::Field::Type for types checking, not QVariant
  4501. - KexiTableView::paintCell() simplified
  4502. 2003-11-28
  4503. - KexiStartupDialog: existing file opening fixed (problem with autocompletion);
  4504. "accept" aborting when no filename entered
  4505. - some minor fixes and TODOs
  4506. 2003-11-25
  4507. Finally commited again
  4508. General:
  4509. - PostgreSQL-based projects: tables are now visible in Kexi
  4510. - KexiProjectSelectorWidget for "projectopen" action reused with KexiProjectSelectorDialog
  4511. - most KexiDB errors are connected to message boxes, even driver loading failures
  4512. - after unsuccessfull Cursor::moveFirst() eof() and bof() now return true
  4513. - '..' substituted with ".." for message strings
  4514. - pqxx driver:
  4515. - cursor's internal transaction is now destroyed on error in drv_open()
  4516. - cursor's internal transaction has an unique name for easy debugging
  4517. - Kexi::detectProjectData() added for detecting file type both on startup and after
  4518. filename is selected in Kexi's file dialog
  4519. - KexiPart::Manager is now shared between project sessions
  4520. - KexiPart:: classes' implementation a bit refreshed
  4521. - QValidator and helper functions for identifiers added
  4522. - Main Window:
  4523. - "Open Existing Project" action works both for file- and server-based projects
  4524. - "New Project" action works both for file- and server-based projects
  4525. - above actions now work also after startup, from toolbar
  4526. - KexiPart::dbAvailable signal not needed since openProject() function returns boolean
  4527. - KexiStartupDialog:
  4528. - KexiConnSelectorWidget reused
  4529. - if single page is configured, no tabs are visible,
  4530. so KexiStartupDialog is reused for projectopen and projectnew actions
  4531. - KexiStartupFileDialog introduced as embeddable widget,
  4532. reusable for different file types (e.g. .kexi and .kexis)
  4533. - KexiNewProjectWizard introduced for creating empty projects (both file and server based)
  4534. it will be also reused for "project templates wizards"
  4535. 2003-11-24
  4536. 2003-11-23
  4537. - KexiDB: Connection::databaseExists() now works correctly with file-based drivers
  4538. - just file existence is checked
  4539. - KexiDB::Connection
  4540. - creating or dropping system database is not permitted
  4541. - databaseExists(): full file paths are compared for file-based drivers
  4542. - KexiDB::Driver i18n fix, thanks for Malcolm Hunter
  4543. CCMAIL: malcolm.hunter@gmx.co.uk
  4544. - KexiPart::Manager is now shared
  4545. - KexiPart:: classes' implementation a bit refreshed
  4546. TODO: keep ownership properly in KexiPart namespace!!!!!!
  4547. 2003-11-22
  4548. 2003-11-21
  4549. - drivermanager cleanup hack
  4550. - some improovements in kexidb clases
  4551. - KexiDB:
  4552. - Driver::isSystemDatabaseName() added
  4553. - some methods converted to const
  4554. - Connection::databaseNames() now has parameter for skipping system database names
  4555. - Driver::isValid()
  4556. - now checks driver's major version and compares against kexidb library major version
  4557. - now is called on createConnection() instead of Connection::connect() so errors
  4558. can be catch earlier
  4559. - KEXIDB_DRIVER (like Q_OBJECT) in driver.h and KEXIDB_DRIVER_INFO in driver_p.h macros
  4560. introduced for ease driver development and decrease error count
  4561. 2003-11-19
  4562. - KexiNewProjectWizard added
  4563. - KexiStartupFileDialog convenient KFileDialog subclass added/reused
  4564. 2003-11-17
  4565. - KexiDB: buffered cursors: the first record was shown 2 times
  4566. - KexiDB::Connection: some internal query fixes
  4567. - newapi tests: -buffered-cursors switch added, non-internal cursor for all tests
  4568. are now unbuffered by default; fixed buggy behaviour on nonsuccessful t.v. test
  4569. 2003-11-15
  4570. - small compiler issues fixed in pqxxconnection
  4571. 2003-11-14
  4572. - Field: inlines fixed for newer compilers
  4573. - DriverManagerInternal::slotAppQuits() used to destroy all drivers
  4574. on QApplication quit, so even if there are DriverManager's static
  4575. instances that are destroyed on program "static destruction",
  4576. drivers are not kept after QApplication death.
  4577. 2003-11-12
  4578. 2003-11-13
  4579. - Kexi startup procedure for both files and db connections introduced
  4580. - startup dialog integrated
  4581. - projectdata redesigned
  4582. - menu items improoved, polished; e.g. Changed "File" menu entry to "Database"
  4583. - ConnectionData:
  4584. -added id for connectiondata
  4585. -some const added
  4586. 2003-11-10
  4587. - added global kexi version info, like in koffice
  4588. - configure.in.in: added checking for qextmdi if required
  4589. 2003-11-07
  4590. 2003-11-06
  4591. 2003-11-05
  4592. - KexiTableView:
  4593. - Navigation bar added
  4594. - cell's focus indicator frame is now also visible after focusout
  4595. - before entering to edit mode, we ensure that current cell is visible
  4596. - vscrollbar tooltip added
  4597. - Cursor: some members made private or protected
  4598. - Cursor: m_beforeFirst is probably not needed anymore; m_at==0 is enough
  4599. - Field: isNumericType(), isTextType() added, etc.;
  4600. type names are now i18n'd in an array;
  4601. some methods inlined
  4602. TODO: void KexiTableView::cancelRowEdit() still dont repaint properly!!
  4603. TODO: update on lostfocus
  4604. - SQLiteConnection:: sqlite_freemem() used to free error message when needed;
  4605. do the same for SQLiteCursor
  4606. - serverResult(), etc. methods aded also to Cursor class, so finer grained error
  4607. info is available
  4608. 2003-11-04
  4609. - Documentation added for few newer and older methods.
  4610. 2003-10-31
  4611. - KexiDB::Cursor: many code like drv_getNextRecord() moved from SQLiteCursor down
  4612. to Cursor class
  4613. 2003-10-29
  4614. 2003-10-30
  4615. - KexiStartupDialog added. Now, although it is project-and-connection-oriented,
  4616. it is designed to be still consistent with conventional document-driver startup
  4617. dialogs used for other KOffice apps.
  4618. - KexiProjectSelectorWidget introduced
  4619. - KexiProjectData structure added
  4620. - KexiProjectSet structure added
  4621. - Test for new KexiStartupDialog. Code written here will be reused for
  4622. "fileopen" and "filenew" Kexi actions.
  4623. 2003-10-28
  4624. - KexiStartupDialog introduced
  4625. - KexiDB::ConnectionData: now offers (optional) driverName info
  4626. - KexiDB::Driver::Info (short usefull structure) is now offered by DriverManager
  4627. - ConnectionData::localSocketFileName optional attribute added
  4628. 2003-10-23
  4629. - new icons for few kexi-specific contexts;
  4630. - most icons are installed into Kexi app dir
  4631. 2003-10-22
  4632. - KexiTableView:
  4633. - sorting works again
  4634. - before sorting, row editing is cancelled
  4635. - better "ensure visible" code when scrolling on small area
  4636. - inserting rows code completed
  4637. - vheader repaint fixed
  4638. 2003-10-21
  4639. - tests/newapi : Now all test types accept <db_name>
  4640. - KexiTableView:
  4641. - page down key also move cursor to "insert row" if one is present
  4642. - double clicking on cell (opening cell editor) fixed
  4643. - fixed cell's repaint when autoscroll is performed after clicking cell at different row
  4644. - sorting by column enabled, full set of methods added for this
  4645. - new feature: empty row is appended right after start of editing new row (like in MSA),
  4646. to allow user to move to a next row
  4647. - KexiDB driver services' properties updated:
  4648. - X-Kexi-DriverType=[File|Network]
  4649. - and X-Kexi-FileDBDriverMime (for file-based drivers only;
  4650. for sqlite it is: application/x-sqlite)
  4651. -MimeType property removed
  4652. - startup speed improoved: drivers lookup in KexiDB::DriverManager is now on demand.
  4653. - Driver name now reuses QObject::name()
  4654. - Connection::lastInsertedAutoIncValue() introduced
  4655. 2003-10-19
  4656. - Connection::useTemporaryDatabaseIfNeeded() now is also reused
  4657. for databaseExists() and databaseNames(), so these methods work when engine
  4658. needs used any database before asking for info
  4659. - ConnectionPrivate::m_skip_databaseExists_check_in_useDatabase used
  4660. to avoid endless recursion between useDatabase() and databaseExists()
  4661. when useTemporaryDatabaseIfNeeded() is working
  4662. - Connection::setupKexiDBSystemSchema() added check to prevent creating
  4663. system tables schema more that once per connection
  4664. - Connection: reomved default values from useDatabase() and createDatabase()
  4665. because this might be confusing to use first-found database name here; (thanks piggz!)
  4666. - FieldList: cached string == comma-separated list of fields added
  4667. - Connection: valueToSQL() overload added, insertRecord() overload added so we can omit
  4668. some fields from inserting; this is also internally used when kexi__* tables are
  4669. filled what improoves backward compatibility
  4670. - FieldList now offers lookup by field name, list of field names, it can create
  4671. subLists, usable to define list of fields for data inserting
  4672. - fixed compiler-dependent bug in insertRecord()
  4673. 2003-10-18
  4674. - Connection:
  4675. - useTemporaryDatabaseIfNeeded() added - Because some engines need to have
  4676. opened any database before executing administrative sql statements
  4677. like "create database" or "drop database",
  4678. this method is used to use appropriate, existing database for this connection.
  4679. - above method is now used in createDatabase() and dropDatabase() if needed.
  4680. - QString anyAvailableDatabaseName() - returns name of any (e.g. first found)
  4681. database for this connection, eg. "template1" for PostgreSQL.
  4682. - DriverBehaviour::ALWAYS_AVAILABLE_DATABASE_NAME added when hardcoded value
  4683. for above is enough.
  4684. - setAvailableDatabaseName(const QString& dbName) - This is option that e.g.
  4685. application that make use of KexiDB library can set to tune connection
  4686. behaviour when it need to temporary connect to any database
  4687. in the server to do some work (e.g. DROP DATABASE).
  4688. - Connection cleaning up bug fixed a bit.
  4689. - Naming Conventions document added
  4690. - drv_isDatabaseUsed() introduced for additional state-checks
  4691. 2003-10-17
  4692. - Driver developers should not change values of several important Connection
  4693. class members, so these are now private.
  4694. 2003-10-16
  4695. - KexiTableView:
  4696. - maany repainting, updating, resizing improoved, code simplifications
  4697. - editing row session introduced: edits for the same row is not accepted until move to another row
  4698. This allows multiple fields editing before row editing accept.
  4699. 2003-10-15
  4700. - missing QuerySchema::addAsterisk(QueryAsterisk *asterisk) added
  4701. - KexiTableView headers and cells repainting improoved
  4702. - for mysql driver: beh->ROW_ID_FIELD_NAME="_ROWID", is this ok?
  4703. 2003-10-14
  4704. - DriverBehaviour::ROW_ID_FIELD_NAME added
  4705. - bool Driver::isValid() invented, it is so clever that obsolete or bad driver
  4706. can not be easily harmfull for application.
  4707. - KexiTableView and KexiDataTableView reimplemented for new KexiDB API.
  4708. - few classes renamed, e.g. KexiTableViewData is here now instead KexiTableList
  4709. - KexiTableViewData is now mostly data structure, special rows like "inserter" will be handled
  4710. by KexiTableView code.
  4711. - KexiDataTableView now uses Cursor (a bit not efficient yet).
  4712. 2003-10-13
  4713. - Cursor has now two ways for definition: 1) use raw statement 2) use QuerySchema
  4714. - Conenction: prepareQuery() accepting QuerySchema overload added
  4715. - TableSchema::query() convenience function added
  4716. - tableview: QuerySchema is now used a bit
  4717. - QuerySchema(TableSchema* tableSchema) is created by defining
  4718. "all-tables query asterisk" (see QueryAsterisk) item.
  4719. - Connection: implemented and selectStatement() replaced queryStatement() because
  4720. not only "select" queries will be implemented.
  4721. - QuerySchema::fieldsExpanded() convenient function added to expand query asterisks
  4722. - KexiDataTableView uses QuerySchema even smarter
  4723. - kexi/kexidb/tests moved to kexi/ to avoid curcular deps
  4724. 2003-10-12
  4725. - Connection::isDatabaseUsed() fixed
  4726. - Connection: isConnected() is substituted with isDatabaseUsed() in some cases
  4727. and checkIsDatabaseUsed() is substituted with checkConnected() in many cases.
  4728. - kexidb/tests/newapi tableview now uses KexiDataTableView
  4729. - Connection:: many overloads like queryStatement( KexiDB::QuerySchema& querySchema ) or
  4730. executeQuery( QuerySchema& query, uint cursor_options = 0 ) added
  4731. - KexiDataTableView: simplified: setDataSet() -> setData(); record -> cursor
  4732. 2003-10-11
  4733. - Transaction::isNull() fixed
  4734. - now tables creation seems to be ok ('tests/newapi sqlite tables' works)
  4735. - sources synced again with win32 target
  4736. - kexidb/parser and kexidb/tests/parser ported to win32
  4737. - KexiDB::Expression introduced
  4738. - isSystemObjectName() now checks for "kexi__" prefixes
  4739. - checks on create table: if name is not system, if table is not empty, if fields are not system
  4740. - KexiDB::Reference introduced
  4741. - KexiDB::IndexSchema now contains informations about multiple related Reference objects
  4742. - kexidb/tests/newapi : now tests are functions, so can be called as subtests if needed;
  4743. gui tests group added; tableview gui test introduced
  4744. 2003-10-10
  4745. - FIX: creating kexidb system tables schema objects on useDatabase()
  4746. - KexiDB::Object::debugError() added for convenience
  4747. - Object: serverErrorMsg(), serverResult(), serverResultName(),
  4748. drv_clearServerResult() added
  4749. - virtual Q_ULLONG Connection::drv_lastInsertRowID() added - returns unique
  4750. identifier of last inserted row.
  4751. - DriverBehaviour::AUTO_INCREMENT_FIELD_OPTION added; autoinc field's option is now
  4752. used in "CREATE TABLE" statement building; bool SPECIAL_AUTO_INCREMENT_DEF added
  4753. - fixed crash on mass transactions closing during closeDatabase()
  4754. - added tables creation subtest to kexidb/tests/newapi
  4755. - SQLite* classes: last operation's result is now stored for later checking
  4756. 2003-10-09
  4757. KexiDB::Connection:
  4758. - "select * from ..." substituted by "select <field name(s)> from ..."
  4759. where possible, so after future kexi_* tables change it will still work.
  4760. - list of internally used kexi__* tables available with new static method
  4761. - bool TableSchema::isKexiDBSystem() added for tables that are internal for KexiDB
  4762. - bool SchemaData::isNative() added for objects that are native, ie. not contain additional
  4763. metadata information.
  4764. - Connection::destroy() instead of Connection::disconnect() should be called
  4765. from xxxxConnection subclasses.
  4766. - ~TableSchema calls Connection::removeMe() so it is removed from tables list if needed
  4767. - ordering in Field object added
  4768. - quite hacky and thus effective insertRecord() overloads added
  4769. - some schema is added to kexi__* tables on createTable()
  4770. 2003-10-07
  4771. - KexiDB::QueryAsterisk class introduced to define select queries with asterisks, like
  4772. "staff.*" in "SELECT staff.*, cars.model from staff, cars WHERE staff.car = cars.number"
  4773. (1st ttype) or "*" in "SELECT * from staff, cars WHERE staff.car = cars.number" (2nd type)
  4774. - Query schemas storage added
  4775. - using include path returned by 'mysql_config --mysql_config' as
  4776. is instead of eating mysql suffix
  4777. - Transaction::null and isNull() added
  4778. - Connection: Simulated AutoCommit feature implemented,
  4779. createTable() added - it uses autocommit if enabled.
  4780. - Driver: DriverBehaviour member added - Detailed definition
  4781. of driver's default behaviour.
  4782. 2003-10-06
  4783. -KexiDB::QuerySchema:
  4784. - field aliases added and checking if there is alias
  4785. - list of tables used in query added
  4786. - debug() updated
  4787. 2003-10-05
  4788. -KexiDB::
  4789. - fields() now offered by fieldlist
  4790. - Field::Field( ) args order fixed (compiler didn't complain..)
  4791. - TableSchema: primary idx setting added
  4792. - TableSchema: autogenerated indices are added implicity on addField()
  4793. - IndexSchema: unique flag added, primary flag is now dependend on this
  4794. 2003-10-04
  4795. -KexiDB:: addedd better access to creating schemas
  4796. 2003-10-03
  4797. -KexiDB:: API extended for db transactions
  4798. - Transaction is now implicity shared container for storing transaction handle,
  4799. TransactionData is used as internal driver-dependent storage
  4800. - former Transaction class is now TransactionGuard
  4801. - "default transaction" added to Conenction
  4802. - SingleTransactions, MultipleTransactions and NestedTransactions added to KexiDB::Driver::Features
  4803. - autoCommit option added to Connection (can use both driver-specific feature ans simulate),
  4804. (not fully implemented yet)
  4805. - active transactions are rolled back on database close
  4806. - heavily commented :)
  4807. - index.* moved to indexschema.*
  4808. 2003-10-02
  4809. -KexiDB::
  4810. - IndexSchema now inherits also from SchemaData (its additional
  4811. properties will be used at least in gui)
  4812. - IndexSchema now points to a table that contains it, not connection
  4813. - fixed owning rules for FieldList: not only TableSchema owns its fileds,
  4814. while QuerySchema, IndexSchema not
  4815. - more methods moved to const
  4816. - QueryData offers now information about its parent table
  4817. - some record inserting introduced in Connection
  4818. - yet more methods moved to const
  4819. - KexiDB version info added (both as functions and defines)
  4820. - global definitions file added
  4821. 2003-10-01
  4822. -KexiDB::
  4823. - Table and query schemas now can be looked up using its id or name using Connection::tableSchema()
  4824. and Connection::querySchema()
  4825. - Connection::querySingleRecord() added for easy retrieval single (first) record
  4826. from query's result set
  4827. - Cursor::storeCurrentRecord(RecordData &data) added: Puts current record's data into data
  4828. (makes a deep copy).
  4829. - update after moving query.*, table.* file to queryschema.*, tableschema.*
  4830. - Cursor buffering-related members moved from SQLiteCursor to Cursor
  4831. - Cursor::moveFirst() fixed for buffered cursors - reopen() is now not needed
  4832. - SQLiteCursor::drv_getNextRecord() we don't try to fetch records when
  4833. we know that buffer is already fully loaded.
  4834. - Uff, It is first time since ~3 moths I can see kexi main window after kexiDB change
  4835. 2003-09-28
  4836. - KexiDB:
  4837. - Table, Query and Index classes renamed to TableSchema, QuerySchema and IndexSchema
  4838. - query schemas storage introduced
  4839. - kexi__table 'system table' renamed to kexi__objects and for it now will be used for
  4840. storing also other types of objects, eg. queries. Some properties added to this table.
  4841. - kexi__querydata added for query schemas
  4842. - kexi__db added for storing database properties, e.g. kexidb version
  4843. 2003-09-26
  4844. - new kexidb/newapi test added: dbcreation
  4845. - KexiDB::Connection::databaseExists() has now arg. that allows ignoring error messages (deflt)
  4846. - params for createDatabase() and useDatabase() are now optional for more convenient
  4847. use file-based drivers
  4848. 2003-09-24
  4849. bool buffering_completed added to SQLiteCursor: true if we have already all
  4850. records stored in the buffer
  4851. 2003-09-18
  4852. - Buffered KexiDB::Cursor type introduced, for this type KexiDB::Cursor::isBuferred() is true;
  4853. this is "test" implementation for SQLiteConnection only [INCOMPLETE].
  4854. Cursor options introduced (Cursor::options()). Cursor's buffered flag if one these options.
  4855. Options are now optional parameters both for protected Coursor's constructor and for
  4856. Conenction::executeQuery() and Conenction::prepareQuery()
  4857. - virtual bool Connection::drv_databaseExists( const QString &dbName ) added for optional
  4858. reimplementation. It is a pair with drv_getDatabasesList(), both are used in databaseExists() now.
  4859. See comments for details.
  4860. - Connection::useDatabase(dbName) now do not allows dbName that do not exists,
  4861. while for single-db-per-connection-engines (eg. file-based engines) Connection::databaseExists()
  4862. returns true only for single db name (eventually URL).
  4863. - for file drivers: file existence checks moved to databaseExists()
  4864. - in Conenction::useDatabase(dbName): closeDatabase() is called before other database should be used,
  4865. if there already was opened database.
  4866. - Connection::drv_getDatabasesList() has now default implementation that returns empty list.
  4867. - sources in drivers/mySQL/ updated just to work with kexidb API changes
  4868. - Connection::drv_databaseExists(dbName) is now by default just checking if dbName
  4869. is on the db names list
  4870. - Some code for bufering added - forward moving with buffered cursors looks
  4871. better.
  4872. 2003-09-17
  4873. - KexiDB::Query introduced: Table::name() and Query::name() moved to FieldList.
  4874. - Field::ListIterator FieldList::fieldsIterator(), Field::FieldList::debug() and clear() added
  4875. - ERR_CURSOR_RECORD_FETCHING added
  4876. TODO: add
  4877. -static cursor types
  4878. -scrollable cursor types
  4879. 2003-09-16
  4880. - KexiDB::DriverManager: driver names accepted by KexiDB::DriverManager::driver(name)
  4881. and KexiDB::DriverManager::serviceInfo(name) methods are now case insensitive.
  4882. - 3rdparty/kexisql: added files needed by win32 target
  4883. - removed kexidb/drivers/sqlite/driver directory: now we include sqlite.h from 3rdparty/kexisql/src/
  4884. - MySqlDriver's service name is "kexidb_mysqldriver", export macro is KEXIDB_MYSQL_DRIVER_EXPORT;
  4885. win32 compilation fixed.
  4886. 2003-09-15
  4887. - KexiDB::Cursor:
  4888. - movePrev(), bof() added;
  4889. - drv_getRecord() splitted to drv_getNextRecord(), drv_getPrevRecord()
  4890. - fieldCount() added, not fully works yet
  4891. - on open() we have always bof()==true and eof()==false
  4892. - simplification: now bof() is computed as m_at==0
  4893. - we are internally counting records from 1 and externally from 0
  4894. (what is visible using at()).
  4895. - m_at and thus at() has now Q_LLONG type
  4896. 2003-09-14
  4897. - KexiDB::Object::setErrorMsg renamed to setError
  4898. - KexiDB::DriverManager is now just a container for one reference
  4899. to Internal Library's Driver Manager, so all you are expected to do is to remember
  4900. about deleting KexiDB::DriverManager instance in your app.
  4901. You can create many KexiDB::DriverManager objects.
  4902. - KexiDB lib now handles automatic deletion of drivers after last
  4903. KexiDB::DriverManager object deletion (thus refcount==0).
  4904. - tests/newapi now looks more simply at the end of main.cpp file :)
  4905. TODO: do the same with DriverManager as Driver
  4906. - KexiDB::Connection::tableSchema() updated for new KexiDB::Connection::executeQuery() semantic.
  4907. - DriverManager::self() no longer needed
  4908. TODO: add fieldCount() to Cursor
  4909. 2003-09-13
  4910. KexiDB:
  4911. - Connection::prepareQuery() added for creating not opened cursors.
  4912. - Connection::executeQuery() now automatically opens the query with created cursor.
  4913. - Connection::destroy() convenient method added for obligatory use
  4914. in Conenction subclasses' dctors. destroy() just disconnets() and takes the Connection
  4915. object out of parent (Driver).
  4916. - SQLiteConnection updated for above requirements
  4917. - cursors and tabledefs are now deleted not in ~Connection but
  4918. on every Connection::disconnect().
  4919. - kexidb/tests/newapi also compiles with qmake and runs on unix
  4920. TODO: add auto removing Drivers on DriverManager deletion.
  4921. 2003-09-12
  4922. Great day for KexiDB in cvs:
  4923. - Old KexiDB moved with actual Kexi version to non-default old_db_api branch.
  4924. - Current (HEAD) now contains new kexidb/ dir for with API
  4925. - kexidb/tests/ added to cvs with one 'newapi' test
  4926. 2003-09-11
  4927. - Index::List and Field::List are now QPrrList<Field>, so Field objects are now stored as a pointers,
  4928. no as a values. These are owned by Table objects.
  4929. 2003-09-10
  4930. - Html Doxygen-generated docs for KexiDB module configured
  4931. - KexiDB::Index introduced - definition of single table index (1 or multi-field)
  4932. - KexiDB::FieldList introduced - list of fields; base class for KexiDB::Index, KexiDB::Table
  4933. TODO: add KexiDB::Query and use this object eg. as argument for Cursor* Connection::executeQuery()
  4934. 2003-09-09
  4935. kexidb:
  4936. - Every Connection object stores cursors opened with it. On Connection destruction,
  4937. cursors are deleted automatically. The same with table schemas within Connection object.
  4938. QPtrDict is used for storing cursor objects.
  4939. - Every Driver object stores connection using QPtrDict, not QPtrList.
  4940. - Driver::isSystemObjectName(), Driver::isSystemFieldName() are case insensitive.
  4941. TODO: PROPOSAL: add compile-time option for kexidb to be kde-independent.
  4942. This could be quite easy.
  4943. 2003-09-08
  4944. kexidb:
  4945. - QStringList Driver::systemNames() is now bool Driver isSystemObjectName()
  4946. -- Checks system object names,
  4947. eg. build-in system tables that cannot be used by user,
  4948. and in most cases user even shouldn't see these. Specific for
  4949. a given driver implementation.
  4950. For SQLITE driver system object names are these with prefix "sqlite_"
  4951. - QStringList isSystemFieldName( n ) added: return true if n is a system field names,
  4952. build-in system fields that cannot be used by user,
  4953. and in most cases user even shouldn't see this. Specific for
  4954. a given driver implementation.
  4955. For SQLITE driver this has one system field name: "_ROWID_" (see CHANGELOG-Kexi-SQLITE).
  4956. - QString Connection::valueToSQL( const Field::Type ftype, QVariant& v )
  4957. added for encoding values for sql queries
  4958. - Connection::createTableStatement(): unique, default and not null flags are now added.
  4959. TODO: also fields with UNIQUE flags should cause KexiDB::Table to have appropriate KexiDB::Index
  4960. 2003-09-06
  4961. - new KexiDB is stored in "kexidb" subdir, old api in "kexiDB", on win32 in "kexidb_old"
  4962. - virtual QString escapeString(const QString& str)
  4963. virtual QCString escapeString(const QCString& str) added for Connection
  4964. - Field::setDefaultValue(const QCString& d) added. Default values are stored in 'f_default Text'
  4965. field of kexi__fields table and are string-encoded there.
  4966. 2003-09-04
  4967. - kexidb CHANGES FROM JOWENN: No ; after namespac, some d Pointers,
  4968. littlebit different includes, littlebit modified destructors
  4969. 2003-09-01
  4970. KexiDB::
  4971. - Cursor:: moveFirst(), moveLast(), moveNext(), eof(), at(), QVariant value(int i)
  4972. TODO: Cursor::value(int i) should use schema information to convert types of values
  4973. (now all values are strings)
  4974. - Connection::tableSchema() - returns schema of given table retrieved
  4975. using connection's system kexi__* tables
  4976. - Connection::deleteCursor()
  4977. - Driver::sqlTypeName(int id_t) - returns sql type name for given driver
  4978. - static QString Driver::defaultSQLTypeName(int id_t) - returns sql type name for given
  4979. driver
  4980. (usable when we do not have Driver instance yet)
  4981. - Table::debug()
  4982. TODO: add default value storage
  4983. 2003-08-29
  4984. - KexiDB::Cursor class, Cursor* KexiDB::Connection::executeQuery(statement) creates cursor
  4985. - KexiDB::Connection::drv_executeSQL(): executes query \a statement, but without returning resulting
  4986. rows (used mostly for functional queries).
  4987. 2003-08-28
  4988. - KexiDB::Transaction helper class introduced, transaction-related methods added for KexiDB::Connection.
  4989. - drv_createTable() and createTableStatement() moved up to KexiDB::Connection
  4990. 2003-08-27
  4991. - KexiDB::Table, KexiDB::Field classes introduced.
  4992. New DB-storage design started: kexi__table, kexi__fields system tables
  4993. (for db schema storage).
  4994. 2003-07-28
  4995. - KexiDataTableView::tableSize() removed (wasn't this unnecessary?)
  4996. 2003-07-26
  4997. - KexiRelationViewTableContainer: width is now based on maximum width of
  4998. the field name or header name.
  4999. - KexiDataTable do not stores members like KexiDB or KexiDBRecordSet bu
  5000. uses these from KexiDataTableView.
  5001. 2003-07-25
  5002. - KexiDialogBase now also inherits from KXMLGUIClient for easy actions management.
  5003. Do not make KXMLGUIClient subclass but just call setXMLFile() in KexiDialogBase:: subclasses' ctor
  5004. and add actions to KexiDialogBase::actionColection().
  5005. - KexiRelationDialog:
  5006. - now uses KXMLGUIClient to better utilize its actions
  5007. - right-click context menus fully works
  5008. - 'hide selected table', 'open selected table' actions added (unimpl.), kexirelationsview.rc
  5009. added.
  5010. - Main Kexi menu bar little more standarized: 'Edit' menu added, 'View' menu moved just after Edit menu.
  5011. TODO: implement selected table hiding
  5012. TODO: implement selected table opening
  5013. TODO: add drag from browser
  5014. 2003-07-24
  5015. - --open command line option added for automatic opening objects at startup, this will help in our
  5016. testing (see 'kexi --help' or main.cpp for details).
  5017. - KexiDialogBase got sizeHint() now that make it fit to qworkspace if it is a in-workspace window.
  5018. - virtual QString KexiProjectHandler::groupName() added that offers store plurar form of part name,
  5019. while name() offers singular form.
  5020. - KexiRelationViewTable:
  5021. - list items (fields) without icons are aligned using transparent icons;
  5022. - moving TableViews back from outside of scroll view area automatically shrinks scroll view's
  5023. area to smallest possible size
  5024. - field that we drag over now is highlighted
  5025. TODO: fix KListView::viewportPaintEvent() like in KexiRelationViewTable::drawItemHighlighter()
  5026. and commit to cvs (kdeui)
  5027. - KexiRelationViewTableContainer got now focus/unfocus/z-order functionality. Colors of table headers
  5028. are consistent with focusing and OS settings
  5029. TODO: fix connection lines painting
  5030. 2003-07-23
  5031. - KexiTableView:
  5032. - KexiTableViewPrivate d-pointer added with "kexitableview_p.h", "kexitableview_p.cpp"
  5033. - Fixed repainting empty areas (background) in KexiTableView: QColorGroup::Base color is used.
  5034. - editableOnDoubleClick(), setEmptyAreaColor() added
  5035. - For Qt::Key_Menu key, context menu is show below the current cell, if available.
  5036. - KexiDialogBase reorganized. Now it offers more generic properties and functionality,
  5037. so subclasses can be more cleanly written and consistent with API and behaviour.
  5038. - Relations window is registered with 'kexi/relations' id,
  5039. while relations window embedded in query designer has id 'kexi/query/<query_name>/relations'
  5040. TODO: implement sizeHint() for KexiDialogBase subclasses
  5041. TODO: make open, create, delete and edit functions in KexiProjectHandlerProxy subclasses more generic
  5042. 2003-07-22
  5043. - scrollbars enabled in KexiWorkspaceMDI
  5044. 2003-07-21
  5045. - Kexi project 'kexi_doc' icon added, on win32 it is added to kexi.exe resources (id=1) and registered for
  5046. .kexi extension on installation.
  5047. TODO: add "New document" (empty or from template) command-line option, so it can be registered
  5048. as "shell/new" in HKCR registry key on win32.
  5049. TODO: like above: "Print" and "Print to"
  5050. 2003-07-18
  5051. - " " prepended to Project Browsers' list items' texts for better look (maybe add this feature
  5052. to KListView or make its generic subclass?)
  5053. - Some fixes with text positioning in tableview cells: float and date type y-offset,
  5054. date type editor frames removed
  5055. TODO: maybe optionally use KDateWidget (this needs to extend and improve this class)?
  5056. QDateEdit is good enough (but this need to follow date format for locale or settings
  5057. using QDateEdit::Order, etc.).
  5058. TODO: fix KDatePicker (in kdeui): accepting with Return key or dblclick, and setting focus.
  5059. - KexiTableEdit has now QColorGroup::Base (usually: white) background
  5060. - KexiInputTableEdit has now some space on the left, so strings look better.
  5061. TODO: add default hint for columns widths, based on type of field
  5062. 2003-07-17
  5063. - actions for Form, Kugar, Relations, Script Parts updated using KexiPartItemAction,
  5064. KexiProjectHandlerProxy::groupContextMenu() and itemContextMenu()
  5065. like in Tables and Queries' Parts
  5066. - kexikugarhandlerui.rc moved to kexi/data/
  5067. - 'Other Licenses' submenu made in 'Help' menu, 'Report Generator Licensing'
  5068. entry moved here from Kugar Part's popup menu
  5069. TODO: move this submenu after 'Error report' Entry (requires changes to koffice_shell.rc).
  5070. - kexirc added
  5071. - added option for KexiBrowserItem to be sorted in FIFO order (top level items - by default,
  5072. others are sorted in alpha order). Visible Parts' order is now specified (by library name)
  5073. in the Kexi's main config file "kexirc" ([Parts]/Order), because KTrader sorts parts
  5074. by name in aplha order. Unspecified Parts are appended at the end of list.
  5075. This order setting is loaded and used on parts loading (KexiProject::loadHandlers()).
  5076. 2003-07-16
  5077. - fixed registering (registerAs) for query designer's windows,
  5078. query from project browser removing fixed
  5079. - project browser's groups items (tables, queries,..) are now non-selectable
  5080. as these are rather special constant containers
  5081. - added convenient hidden(), shown() signals to KexiDialogBase
  5082. - added KexiDialogBase::plugToggleAction(KToggleAction *toggle_action) for syncing window
  5083. visibility with toggle action's state
  5084. 2003-07-15
  5085. - Kexi/win32 synced with cvs again after plugins/ rearrangement.
  5086. - New Kexi icon updated for win32
  5087. - menubar and popupmenu entries in Query Part merged using KexiPartItemAction (new KAction subclass);
  5088. The same for Tables Part. KexiPartPopupMenu now collaborates with KexiPartItemAction to reuse its
  5089. action's information (avoid redundancy).
  5090. TODO: add delete_item action icon (equal "button_cancel" in crystalsvg) to the koffice/actions icons
  5091. TODO: like above, add "script" icon to kexi/actions ("moc_src" is used)
  5092. 2003-07-01
  5093. - Some table view text positions painting fixes for x11, for dbl and int type, editor's position fixed.
  5094. TODO: add left margin for cells' text (at least for x11)
  5095. 2003-06-28
  5096. - Project Wizard: fixed align for big picture, some widgets availability fixes,
  5097. big picture moved to KexiCreateProjectPage superclass.
  5098. - KEXI_ADD_EXAMPLE_ENGINES compile-time option added: if set, example engines will be added
  5099. to the drivers list in the Project wizard
  5100. 2003-06-22
  5101. - Alter Table Window: info about not implemented rows removal added for KEXI_NO_UNFINISHED option
  5102. Redundant label with table name removed from top of the window.
  5103. Double click in KexiTableView reenabled.
  5104. PropertyEditor and KexiTableView size hints little fixed.
  5105. - KexiTableView: now clicking outside of a grid do not activates any cell;
  5106. (crash fixed) sorting disabled while in-cell editor is visible
  5107. - "Project properties" function disabled for KEXI_NO_UNFINISHED option
  5108. 2003-06-21
  5109. - automatically set focus inside Alter Table Window and show cursor
  5110. - fixed crash on entering data in 2nd, 3rd, etc. columns in table added during current session
  5111. (table def struct wasn't created for new table)
  5112. 2003-06-17
  5113. ([JK] - fix proposed by Jakub Kubica)
  5114. [JK]- (in kofficecore): KoMainWindow::KoMainWindow: KStdAction::configureToolbars disabled:
  5115. TODO: enable this when configure window will work
  5116. [JK]- "Settings>Configure Kexi" action temporary disabled for KEXI_NO_UNFINISHED option
  5117. TODO: reenable this!
  5118. [JK]- "Save password" in authorization page of the Project wizard removed for KEXI_NO_UNFINISHED option
  5119. TODO: reenable this!
  5120. - <ActionList name="toolbarlist"> line removed from koffice_shell.rc (this removed redundant actions)
  5121. [JK]- now, after failed db connection Project wizard do not allow moving to DB selection page
  5122. - now it's not allowed to close alter table window for a table that do not contain fields
  5123. (message box is displayed then). The same is when user try to delete table (without fields)
  5124. that is currently opened
  5125. TODO: allow the user to give up and delete this table
  5126. 2003-06-15
  5127. - when KEXI_NO_UNFINISHED option is set, msgbox information is presented for unimplemented actions
  5128. - kexidb: added information about if database (given by name) is considered as system db
  5129. - projectwizard: only non-system databases are visible on the db list; db icon added
  5130. - propertyeditor in altertable window has narrower 2nd column
  5131. 2003-06-14
  5132. - inserting queries into list fixed
  5133. - added KEXI_NO_FILTER_DLG compile-time option for incomplete filter dialog in query editor
  5134. - added KEXI_NO_UNFINISHED compile-time option for disabling unfinished features
  5135. - KexiTableView::DeletionPolicy is now (mostly) used for choose KexiTableView deletion method
  5136. TODO: KexiTableView::AskDelete flag is not implemented
  5137. TODO: do the same with KexiTableView::AdditionPolicy
  5138. - auto popup menu is added for KexiTableView when KexiTableView::DeletionPolicy != NoDelete
  5139. or the same is for KexiTableView::AdditionPolicy, so no more external (e.g. in KexiDataTable)
  5140. popup menu creation is required for just addition and deletion actions.
  5141. - fixed row deletion in query designer's table view
  5142. - fixed subwindows sizes: now these are resized to the workspace size
  5143. - tableview's cells text positioning fixed, synced with editors, cells size fixed,
  5144. numeric cells' editors are now right-aligned
  5145. 2003-06-13
  5146. - Fixed crash on altering newly created table
  5147. - (temporary fix) MySqlRecord is now always set to r-w mode
  5148. TODO: MySqlRecord: get readonly flag from the database
  5149. TODO: IMPORTANT: Kaxi must automatically add primary key it is not added by user,
  5150. or at least propose this for user before saving altered table. If given table does not conatin
  5151. a PK, then it will be readonly.(or at least removing given row wont be possible if this row
  5152. is duplicated)
  5153. CURRENT STATE: removing rows works only for table having PK
  5154. - data table window's caption fixed
  5155. - Control+Delete shortcut added for current record removing
  5156. - fixed removing vertical header item after current record removing
  5157. - KexiTableEdit now uses layout for proper displaying its Editor
  5158. TODO: KexiTableEdit shouldnt have subwidget like KLineEdit but its subclasses should
  5159. inherit also from given editor widget (eg. from KLineEdit)
  5160. TODO: KexiTableView's vertical header isn't updated after several actions
  5161. - windows now have icons == KexiProjectHandler::itemPixmap()
  5162. - normal size for relations dialog's combobox
  5163. TODO: change method for adding tables to relations
  5164. - KexiDialogBase subclasses now registers to view with
  5165. identifier == KexiProjectHandlerItem::fullIdentifier(), not caption or title
  5166. - KexiRelationDialog is now registered to view as "kexi/relations",
  5167. so relations window is unique per view
  5168. TODO: disable altering when the same table is opened for data viewing
  5169. - avoid opening both alter view and data view for the same table
  5170. - avoid creating multiple tables with the same name
  5171. TODO: other objects too: move this to common method
  5172. TODO: avoid creating/altering table with no fields
  5173. 2003-06-12
  5174. - Table View Editor keyboard actions fixed, double type validating fixed,
  5175. fixed Enter, Delete keys, added F2 key, disabled non-printable unused keys
  5176. TODO: use QValidator everywhere here!
  5177. - after opening KexiDataTable focus is set inside automatically
  5178. 2003-06-11
  5179. - Kexi objects have now titles - user-visible text instead low-level names
  5180. 2003-06-09
  5181. - calling KexiView::finalizeInit() moved to KexiProject, actions for toggling
  5182. dock windows visiblity fixed, simplified code
  5183. - some icons, actions fixed
  5184. - KexiProjectHandlerItem redesign
  5185. 2003-06-05
  5186. - relation view's fixes and redesign
  5187. 2003-06-04
  5188. - projectWizard: double click on dbases list opens selected db
  5189. - navigator: KEXI_NO_MULTI_TABS option added for disable showing redundant tabs
  5190. 2003-05-28
  5191. - fixed problem with project window's increased width while clicking on the
  5192. tabs; multitabbar fonts improvements; code cleanups
  5193. 2003-05-27
  5194. - i18n-pl finished for ui and servicenames
  5195. - kexi can load and save documents
  5196. 2003-05-17
  5197. - kexi has icon on win32
  5198. - kexi installer
  5199. 2003-05-08
  5200. - kexi cvs merge:
  5201. KPath removed (qt/win32 will be patched instead)
  5202. - libkexifilters added
  5203. - core/kexisettings, core/kexiworkspaceSDI kexiDB/kexidbupdaterecord ported
  5204. 2003-04-28
  5205. - fresh cvs and win32 version merge
  5206. - kexifilter added
  5207. 2003-04-22
  5208. - partial (example) polish l18n for GUI
  5209. 2003-04-15
  5210. - keximysqlinterface lib. ported
  5211. - updated servicetypes/kexidbdriver.desktop installed
  5212. - mysqlinterface.desktop removed: valid is keximysqlinterface.desktop
  5213. 2003-04-12
  5214. - libraries ported: kexipart kexihandler_form kexihandler_query kexihandler_relation
  5215. kexihandler_table kexiprojectwizard
  5216. - Kexi running with projectwizard (no db avaliable although)
  5217. 2003-04-07
  5218. - now Kexi has visible menu, toolbar and 'welcome' dialog
  5219. 2003-04-02
  5220. - application's start process is simply hacked inside main() instead of inside KoApplication::start()
  5221. so, Kexi application running on screen for the first time on win32
  5222. 2003-04-01
  5223. - kexi runs but is invisible
  5224. 2003-03-31
  5225. - KEXI_NO_PRINT=1 (temporary) disables printing functionality
  5226. - kexiDB/kexidb.h: KexiDBDriver *m_currentDriver moved from public slots section to private
  5227. - kexicore and kexidb libs ported
  5228. - kexi at least now compiles (but crashes)
  5229. 2003-03-28
  5230. - first touch on Kexi sources for porting
  5231. 2002-06-23, Sunday, 00:20:36 (Lucijan)
  5232. - First Kexi commit, SVN revision #162554
  5233. details: http://websvn.kde.org/trunk/koffice/kexi/?rev=162554