Lazarus
Announcements => Third party => Topic started by: tonyw on February 25, 2021, 02:25:35 pm
-
MWA Software is pleased to announce the release of version 2.4.0 of IBX for Lazarus. This version supports the new Firebird 4 data types and has been tested with the latest version of lazarus (2.0.12) and FPC (3.2.0). All users are recommended to upgrade to this version. It is available for download from
https://www.mwasoftware.co.uk/ibx
The new Firebird data types supported are: TIME WITH TIME ZONE, TIMESTAMP WITH TIME ZONE, INT128, DECFLOAT and extended precision NUMERIC fields. Due to recent changes to the Firebird 4 API, no version of Firebird 4 less than Firebird 4 rc1 is supported.
See the updated user guide for more information on how to use these new data types.
A major addition to IBX 2.4.0 for lazarus is the inclusion of a comprehensive testsuite. This is not included in the distribution archives, but can be downloaded from our svn repository (https://www.mwasoftware.co.uk/svn-repository).
The testsuite is intended to provide a set of tests with a pass/fail result determined by a simple inspection of the "diff" file. It uses the same approach as the existing testsuite for the Firebird Pascal API, also bundled in with IBX for Lazarus.
The testsuite comprises 28 separate tests, testing 230 identified features present in the IBX non-visual components. It is intended to provide comprehensive test coverage of all test features in order to demonstrate a high degree of confidence that the software performs as expected and when run on different platforms (32 bit and 64 bit, Linux and Windows) and with different versions of the Firebird database (2.5, 3 and 4). It also supports regression testing. See doc/TestCoverage.pdf for a list of tests and test features and which test covers which test features. The file ibx/testsuite/readme.txt contains information on how to run the test suite.
Version 2.4.0 has been tested using the testsuite for Firebird 2.5.9, Firebird 3.0.5 and Firebird 4 rc1 in various combinations of 32-bit and 64-bit Linux and Windows platforms, and with recent versions of FPC.
-
MWA Software is pleased to announce the release of version 2.4.0 of IBX for Lazarus.
Thanks Tony. Downloading now...
-
Thank you, Tony.
However, this morning I updated (trunk version) and there is some problem with paths. See attached snapshot.
-
Same with R2-4-0 branch.
IB.pas(160,2) Fatal: Cannot open include file "include\dyn_consts.inc"
-
Thank you very much, Tony!
Aside:
Thank you, Tony.
However, this morning I updated (trunk version) and there is some problem with paths. See attached snapshot.
I don't know if it could have a link with this problem, if it could be a wild hazard, but I believe that a DBTreeView maybe with the same name (inspired by IBX DBTreeView, but having to work with fpSQL framework), should have appeared in the trunk: https://forum.lazarus.freepascal.org/index.php/topic,52822.msg390117.html#msg390117 (https://forum.lazarus.freepascal.org/index.php/topic,52822.msg390117.html#msg390117) .
-
Thank you, Tony.
However, this morning I updated (trunk version) and there is some problem with paths. See attached snapshot.
Thanks for the QA check. The problem is now fixed and as this svn sync problem has happened before, there is no excuse on my side! A quick audit also found another 4 files that hadn't made it across.
-
MWA Software is pleased to announce the release of version 2.4.0 of IBX for Lazarus. This version supports the new Firebird 4 data types and has been tested with the latest version of lazarus (2.0.12) and FPC (3.2.0). All users are recommended to upgrade to this version. It is available for download from
https://www.mwasoftware.co.uk/ibx
Thanks Tony
-
Thanks for the QA check. The problem is now fixed and as this svn sync problem has happened before, there is no excuse on my side! A quick audit also found another 4 files that hadn't made it across.
You need not apologize for minor mistake.
Thank you for many working hours devoted to our community.
IBX trunk (svn rev. 329) still does not compile. Now, when trying to install dclibx I get:
IBTreeView.pas(34,7) Fatal: Cannot find DBTreeView used by IBTreeView. Check search path of package ibcontrols, try a clean rebuild, check implementation uses sections..
That is on Windows 10 64-bit; Lazarus fixes 2.0.13 32-bit; FPC stable 3.2.0
-
What is really annoying is that this was one of the files I identified this morning as being MIA from the public repository. I may have improved IBX testing, but I obviously need a better test plan for the public svn :(
Problem fixed.
-
Thanks for your great work :)
I`ve found an error at IBX4 Lazarus Guide (Issue 1.9, 21 Feb 2021), sec. 5.4.2.1 and 5.4.2.2:
Seems like sample code should have ParamByName('Param1') be written instead of ParamByName('MyProc').
-
What is really annoying is that this was one of the files I identified this morning as being MIA from the public repository. I may have improved IBX testing, but I obviously need a better test plan for the public svn :(
Problem fixed.
hi tony,
could ibx dbctrlgrid used without database? or with any other type od database aside from firebird , how could we control the flow panel if i want to put trackbar in the panel to show the progress of sound file (attached photo) , how i control each item in draw panel even i moved the focus to other item
please help
thanks
-
hi tony,
could ibx dbctrlgrid used without database? or with any other type od database aside from firebird , how could we control the flow panel if i want to put trackbar in the panel to show the progress of sound file (attached photo) , how i control each item in draw panel even i moved the focus to other item
please help
thanks
TDBControlGrid is distributed with IBX and used by the IBX examples. However, it does not require IBX or Firebird and will work with any TDataSource. This does not have to be a database sourced dataset but could e.g. be a TMemDataset.
-
TDBControlGrid is distributed with IBX and used by the IBX examples. However, it does not require IBX or Firebird and will work with any TDataSource. This does not have to be a database sourced dataset but could e.g. be a TMemDataset.
is there is any sample ,how to work with drawpanel , how i control each row if yu look in my previes photo, can i do this ?
thanks
-
TDBControlGrid is distributed with IBX and used by the IBX examples. However, it does not require IBX or Firebird and will work with any TDataSource. This does not have to be a database sourced dataset but could e.g. be a TMemDataset.
is there is any sample ,how to work with drawpanel , how i control each row if yu look in my previes photo, can i do this ?
thanks
The IBX zip contains an example in ibx/examples/dbcontrolgrid. There is also some documentation in the IBX User Guide.
The example uses a TPanel. However, you can also use a TFrame or any TWinControl as the surface for each row. You can put any controls you like on the (e.g.) TPanel and they are replicated for each row in the dataset. Most will be data aware controls linked to the same datasource. Then each row contains that row's value for the control.
-
i have done this , but when i open the sqlquery it is loading the first row till i scroll the mouse down then it shows other rows , (1.gif) - when i press play button in any row and when i move the focus into other row the controls in panel for example track bar also move , i wan only the row where i press button to interact not other rows.(2.gif)
thanks
-
i have done this , but when i open the sqlquery it is loading the first row till i scroll the mouse down then it shows other rows , (1.gif) - when i press play button in any row and when i move the focus into other row the controls in panel for example track bar also move , i wan only the row where i press button to interact not other rows.(2.gif)
thanks
It's probably worth calling the sqlquery's "Last" method after opening it. This will ensure that the RecordCount is correct.
-
It's probably worth calling the sqlquery's "Last" method after opening it. This will ensure that the RecordCount is correct.
thanks i added it and it solved first issue, please have a look on the gif when i scroll down other rows got affected , i am playing one record dont want the others to be affected
-
The thing you need to be careful about with a DBControlGrid is that there is an element of "illusion" about the list of rows. Only the currently focused row is the actual TPanel + controls, the others are no more than saved images in a cache..
The control works by selecting each row in the current window and then drawing the panel to an in memory image. It then positions the panel so that it is located where the focused row is displayed. The remaining rows are then drawn from the cache. If you are playing a multimedia object and move the focus then the current playback will be stopped and replaced by the media from the selected row.
If you don't want to interrupt a playback then you need to add a "BeforeScroll" handler to the underlying dataset, check to see if the media is still playing and ask the user if they want to interrupt playback. You will need to raise an exception to stop the dataset scrolling if the user does not want to stop the playback.
-
i have done small example ,guys can use from this link
https://youtu.be/gG9HlLqRPhU (http://)
thanks
-
Package IBControls no more compiles in Lazarus trunk.
DBTreeView.pas(568,11) Error: Identifier not found "tvsUpdating"
It is since Lazarus rev. 64855, from 2021-03-22 (https://svn.freepascal.org/cgi-bin/viewvc.cgi?view=revision&root=lazarus&revision=64855).
It seems that tvsUpdating was just removed -- https://svn.freepascal.org/cgi-bin/viewvc.cgi/trunk/lcl/comctrls.pp?root=lazarus&r1=64848&r2=64855&pathrev=64855 (https://svn.freepascal.org/cgi-bin/viewvc.cgi/trunk/lcl/comctrls.pp?root=lazarus&r1=64848&r2=64855&pathrev=64855)
-
It seems that tvsUpdating was just removed -- https://svn.freepascal.org/cgi-bin/viewvc.cgi/trunk/lcl/comctrls.pp?root=lazarus&r1=64848&r2=64855&pathrev=64855 (https://svn.freepascal.org/cgi-bin/viewvc.cgi/trunk/lcl/comctrls.pp?root=lazarus&r1=64848&r2=64855&pathrev=64855)
I reported it as LCL bug (mantis 38735) (https://bugs.freepascal.org/view.php?id=38735), as I think that a value should not be just removed; if it is not needed, then it should first be marked as deprecated and wait at least one Lazarus release before actually removing it, to allow third party developers to adjust their code.
-
WP returned tvsUpdating in rev. 64947.
So, the package compiles again, but Tony, please take a look at wp's comment in the bug report (https://bugs.freepascal.org/view.php?id=38735).
-
Firebird 4.0.0 was released on 1st June. A small change from Firebird 4 rc1 has exposed a typo in the Firebird Pascal Interface file FB30Statement.pas that can result in an unknown data type error.
This has been fixed in the SVN release, but has not yet been progressed into the release zips. There will be a few days delay before re-issuing the zip files. This delay is intended to ensure that no other bugs are reported that affect Firebird 4.0.0 users.
To update from SVN see https://mwasoftware.co.uk/svn-repository
-
Firebird 4.0.0 was released on 1st June. A small change from Firebird 4 rc1 has exposed a typo in the Firebird Pascal Interface file FB30Statement.pas that can result in an unknown data type error.
This has been fixed in the SVN release, but has not yet been progressed into the release zips. There will be a few days delay before re-issuing the zip files. This delay is intended to ensure that no other bugs are reported that affect Firebird 4.0.0 users.
To update from SVN see https://mwasoftware.co.uk/svn-repository
Thanks for letting us know, I tested it now and it really has a datatype error.
I downloaded it from svn but it continues with the error, I will wait for a corrected version.
Thanks.
-
Dear Tony.
Thank you in advance for the tremendous work at MWA Software.
I'm new to Lazarus but I have a lot of experience with Delphi up to the 2007 version and most of that experience has been with IBX so when I discovered your work, I felt ready to be able to migrate my code of so many years to this environment.
The following happens and this is why I ask you to please help me.
I just cleanly installed the latest version of Lazarus and immediately downloaded IBX for Lazarus version 2.4.0 from the MWA site. I unzipped the file, I copied the ibx folder to the Lazarus components folder, I opened the dclibx.lpk file I went to use-> install, I waited for it to compile, install, and rebuild the IDE but when restarting it throws me the following error:
Object reference is Nil.
Press Ok to continue and risk data corruption.
Press Abort to stop the program
I have tried both options and neither gives any results.
My English is written by google translator with some corrections so I apologize if something is not quite correct.
A screenshot of the error is attached.
Is there anything I can do to fix this?
Thank you in advance for your response. I greet you cordially