User:Zeljan

From Lazarus wiki
Revision as of 00:08, 27 July 2007 by Zeljan (talk | contribs)
Jump to navigationJump to search

This is my page ? ;) Hi I'm Zeljan Rikalo (everybody calls me Zeljko), currently trying to finish qt4 interface for lazarus. Any feedback about qt-lcl from linux,win32 or mac is welcome (patches also). All about Qt interface you can find at http://wiki.lazarus.freepascal.org/index.php/Qt_Interface

Mailing list: http://www.lazarus.freepascal.org/pipermail/qt

My TODO list

  1. Fix painting problems.
    Most problems are paintings outside paintEvent() ...
    As of r11578 it's fixed (at least for most LCL controls), bottleneck is SynEdit (speed and unsynced paints)
  2. CloseAction=caFree lazarus bug http://www.freepascal.org/mantis/view.php?id=9155
    For test , create normal form, say CloseAction := caFree in OnClose() event, now during runtime when we close this form it stays visible. This doesn't affect ModalForms.
  3. Implement more winapi functions.
  4. Get SynEdit useable with Qt.
  5. Finally, make IDE useable.
  6. TPrinterSetupDialog.
  7. Implement missing routines for various controls.
  8. lazarus bugs:
  9. TStatusBar bug: It's invisible, until we resize form for the first time.

TODO Geometry problems & layouts

1. We'll use contentsRect() for GetClientRect() and geometry() for GetClientBounds(), helped with OffsetRect().

  Currently tested on FC3 & FC4, WinXP pro with res 1280x1024 , 96dpi. Looks good.

2. QLayout's & FCentralWidget have to be removed from TQtGroupBox, let lcl calculate positions of controls, since QLayout is messed up with LCL's calculations, so we get messed up positions of eg CheckBoxes inside TCheckGroup.

  Tested on FC3 & FC4, WinXP pro, looks good without FCentralWidget & Layout.

3. MDI should be moved to default pos & realigned in ShowHide().

  Without changes in GetClientRect() and GetBoundsRect() MDI child controls are messed up, others work ok.

4. Study QRect about -1 Right and -1 Bottom (as Qt docs says "it's there for historical reasons").
5. Lines of TStringGrid have +1 pixel more than it should be ?!?
6. TStatusBar patch for linux , should be for windows too (TStatusBar is messed up on winXP also).
7. Remove at all scrollBar's creation for TCustomForms if visible = false in SetScrollInfo()
8. We have to use QRegion_translate() for TGraphicControls eg. TSpeedButton.
SOLUTION

 This is mainly fixed at my svn copy, but one must make heavy tests against this code.
 All offset problems comes from FCentralWidget & QMainWindow_setMenuBar.
 When I remove both, then all offsets are OK.
 Problem: QMenuBar doesn't follow QMainWindow resizing. 
Fixed as of r11616.