View Issue Details

IDProjectCategoryView StatusLast Update
0024715LazarusWidgetsetpublic2013-10-13 20:53
ReporterAndrey Zubarev Assigned ToZeljan Rikalo  
PrioritynormalSeverityminorReproducibilityalways
Status closedResolutionfixed 
Product Version1.1 (SVN) 
Target Version1.2.0 
Summary0024715: Scrollbar on the TForm not working
DescriptionFrom here http://forum.lazarus.freepascal.org/index.php/topic,21436.0.html
procedure TForm1._oncreate(Sender: TObject);
begin
  self.VertScrollBar.Range:=1000;
end;
Works in GTK2 and WIN, but does not work in qt
TagsNo tags attached.
Fixed in Revision43218,43234,43236,43238
LazTarget1.2
WidgetsetQT
Attached Files

Activities

Zeljan Rikalo

2013-10-12 16:18

developer   ~0070764

Changed LazTarget to 1.2 since commit is prepared (via define QTSCROLLABLEFORMS).

Zeljan Rikalo

2013-10-12 16:30

developer   ~0070766

Please test and DO NOT CLOSE YET, just give feedback.
Scrollbars on forms means huge change in qt widgetset, and must be activated via enabling define QTSCROLLABLEFORMS in lcl/interfaces/qt/qtdefines.inc

This will be merged to 1.99 (1.2) branch too. When everything looks good I'll remove QTSCROLLABLEFORMS define, so they'll rely on QAbstractScrollArea per default.
Known issues: Auto complete window in ide source editor triggers QPainter assertions in console (but window is painted ok).

Andrey Zubarev

2013-10-12 16:47

reporter   ~0070768

It break docking if AnchorDockingDSGN package installed

Zeljan Rikalo

2013-10-12 17:39

developer   ~0070769

@Andrey, what exactly is broken with AnchorDocking ?

Andrey Zubarev

2013-10-12 18:28

reporter   ~0070770

Incorrectly determined the size of the forms at the time their appearance the scrollbar. I attach screenshots of before and after. A messages window appears when you start for a split second, then disappears

Andrey Zubarev

2013-10-12 18:28

reporter  

before.png (125,286 bytes)   
before.png (125,286 bytes)   

Andrey Zubarev

2013-10-12 18:29

reporter  

after.png (102,552 bytes)   
after.png (102,552 bytes)   

Zeljan Rikalo

2013-10-12 19:14

developer   ~0070771

Yes, that's thing which need to be fixed, but doesn't have anything with this issue. I'm using lazarus and test application without anchordocking and everything looks good (except that QPainter assertion I've mentioned before).
Anchordocking is something else, and probably there's something wrong when reparenting form (docking/undocking) so TQtMainWindow returns wrong clientRect.

Zeljan Rikalo

2013-10-12 22:16

developer   ~0070773

Also, when reparenting form from form (eg when you remove form from dock by mouse) then AV from qtlib occurs (already found where and why).

Zeljan Rikalo

2013-10-13 11:43

developer   ~0070784

I've fixed crash in r43234, now forms can be undocked without crashing.

Zeljan Rikalo

2013-10-13 11:43

developer   ~0070785

Fixed crash inside qt lib when we undock form with mouse.

Zeljan Rikalo

2013-10-13 14:22

developer   ~0070788

I've fixed sizing problems in r43236. Please test.

Zeljan Rikalo

2013-10-13 14:22

developer   ~0070789

Fixed sizing problem.

Zeljan Rikalo

2013-10-13 14:49

developer   ~0070790

Fixed QPainter assertion. Now you can close if everything is ok.
All revisions are marked to be merged to 1.0.99 (1.2)

Andrey Zubarev

2013-10-13 19:06

reporter   ~0070798

Thank you, now everything is working fine.
Do you plan to do QTSCROLLABLEFORMS by default?

Zeljan Rikalo

2013-10-13 20:33

developer   ~0070800

Yes, it will be enabled by default in next few weeks (I must test it in real production first). You can close this issue and if you find anything related to this issue open new one.Note that QTSCROLLABLEFORMS define will not be removed it will just be enabled by default.In that case if someone does not use scrollable forms at all, there's no need to have QAbstractScrollArea widget which is more complex than ordinary QWidget as form's central widget.

Andrey Zubarev

2013-10-13 20:53

reporter   ~0070801

Ok. Thanks!

Issue History

Date Modified Username Field Change
2013-07-07 20:32 Andrey Zubarev New Issue
2013-07-08 07:56 Zeljan Rikalo LazTarget => post 1.2
2013-07-08 07:56 Zeljan Rikalo Target Version => 1.2.0
2013-07-08 07:56 Zeljan Rikalo Assigned To => Zeljan Rikalo
2013-07-08 07:56 Zeljan Rikalo Status new => assigned
2013-09-03 12:07 Martin Friebe LazTarget post 1.2 => 1.4
2013-10-12 16:18 Zeljan Rikalo LazTarget 1.4 => 1.2
2013-10-12 16:18 Zeljan Rikalo Note Added: 0070764
2013-10-12 16:30 Zeljan Rikalo Fixed in Revision => 43218
2013-10-12 16:30 Zeljan Rikalo Note Added: 0070766
2013-10-12 16:30 Zeljan Rikalo Status assigned => resolved
2013-10-12 16:30 Zeljan Rikalo Resolution open => fixed
2013-10-12 16:47 Andrey Zubarev Note Added: 0070768
2013-10-12 17:39 Zeljan Rikalo Note Added: 0070769
2013-10-12 18:28 Andrey Zubarev Note Added: 0070770
2013-10-12 18:28 Andrey Zubarev File Added: before.png
2013-10-12 18:29 Andrey Zubarev File Added: after.png
2013-10-12 19:14 Zeljan Rikalo Note Added: 0070771
2013-10-12 22:16 Zeljan Rikalo Note Added: 0070773
2013-10-13 11:43 Zeljan Rikalo Note Added: 0070784
2013-10-13 11:43 Zeljan Rikalo Status resolved => feedback
2013-10-13 11:43 Zeljan Rikalo Fixed in Revision 43218 => 43218,43234
2013-10-13 11:43 Zeljan Rikalo Note Added: 0070785
2013-10-13 11:43 Zeljan Rikalo Status feedback => resolved
2013-10-13 14:22 Zeljan Rikalo Note Added: 0070788
2013-10-13 14:22 Zeljan Rikalo Status resolved => feedback
2013-10-13 14:22 Zeljan Rikalo Fixed in Revision 43218,43234 => 43218,43234,43236
2013-10-13 14:22 Zeljan Rikalo Note Added: 0070789
2013-10-13 14:22 Zeljan Rikalo Status feedback => resolved
2013-10-13 14:49 Zeljan Rikalo Status resolved => feedback
2013-10-13 14:49 Zeljan Rikalo Fixed in Revision 43218,43234,43236 => 43218,43234,43236,43238
2013-10-13 14:49 Zeljan Rikalo Note Added: 0070790
2013-10-13 14:49 Zeljan Rikalo Status feedback => resolved
2013-10-13 19:06 Andrey Zubarev Note Added: 0070798
2013-10-13 20:33 Zeljan Rikalo Note Added: 0070800
2013-10-13 20:53 Andrey Zubarev Note Added: 0070801
2013-10-13 20:53 Andrey Zubarev Status resolved => closed