Recent

Author Topic: ANN: KControls 1.7  (Read 16929 times)

tk

  • Sr. Member
  • ****
  • Posts: 361
ANN: KControls 1.7
« on: August 12, 2015, 08:17:11 pm »
Hi everybody,
time has come to release new KControls update. Within this update, the work on my new rich edit control has been pushed forward and some other new components and bugfixes were added to this update.

Just some points to the new KMemo rich edit control. Together with KGrid and other components from my package it is already VERY useful to me and our most recent project.
I just hope it will be useful for others as well.

Unlike the rich edit components known to Lazarus users (lzRichedit or RichMemo), KMemo is not bound to external rich edit libraries, was written from scratch and uses its native powerful word processor. The features:

-text formatting - font colors, styles, text backgrounds, capitals, small capitals, subscript, superscript etc.
-paragraph formatting - left, center, right alignments, top and bottom indents, first line indents, fully automated bullets and numbering even with multilevel heading numbering (MS Word 97+ style), paragraph backgrounds, paragraph borders, selectable word wrap mode etc.
-positioned objects (images, text containers) with absolute or relative positioning, different modes of text floating (none, both sides, left or right side)
-advanced table support with full row/cell formatting and even with cell merging support, so even very complex tables created with MS Word can be loaded, saved, viewed and edited in KMemo
-document background image/color
-full load/save support from/to Rich Text Format featuring all supported text/paragraph styles, tables, positioned objects, etc. Furthermore, these load/save routines support files and streams, they support saving/loading only part of a document, so e.g. append or insert one RTF document into other is easy to implement.
-clipboard operations (cut/copy/paste) with full RTF support, working hopefully on every OS
-print/preview support
-KMemoFrame featuring a simple editor including basic dialogs for text, paragraph and numbering formatting, easily embeddable to existing applications without coding
-user manual showing the basic features and two simple demos

For still missing/planned features see the KMemo readme in the package.

I already use the KMemo in my app for editing notes and for text/table reporting.

In KDBGrid, the empty dataset bug has been fixed.

You can download newest KControls on my page again (this web site would deserve some facelifting, though).
« Last Edit: August 12, 2015, 08:24:09 pm by tk »

Leledumbo

  • Hero Member
  • *****
  • Posts: 8747
  • Programming + Glam Metal + Tae Kwon Do = Me
Re: ANN: KControls 1.7
« Reply #1 on: August 13, 2015, 02:44:49 am »
Downloading, hopefully the methods are backward compatible with Delphi's rich edit. The idea is to be able porting Delphi apps which use rich edit control easily.

Groffy

  • Full Member
  • ***
  • Posts: 204
Re: ANN: KControls 1.7
« Reply #2 on: August 13, 2015, 08:17:30 am »
Thank you for your great work! Under Windows7 / qt I can't compile because of a missing LazAlphaControls package. Where can I find this package?

The package under http://www.alphaskins.com/index.php seems not compatible with Lazarus?


- Removed the reference to LazAlphaControls package - is compiling now. Thank you :-)

With best regards - Ulrich
« Last Edit: August 13, 2015, 08:34:09 am by Groffy »
Linux Mint / Windows 10 / Lazarus 3.0.0 / trunk -qt

tk

  • Sr. Member
  • ****
  • Posts: 361
Re: ANN: KControls 1.7
« Reply #3 on: August 13, 2015, 08:50:11 am »
hopefully the methods are backward compatible with Delphi's rich edit.

They are not, it would be too limiting for me, for many reasons.

tk

  • Sr. Member
  • ****
  • Posts: 361
Re: ANN: KControls 1.7
« Reply #4 on: August 13, 2015, 08:59:26 am »
Under Windows7 / qt I can't compile because of a missing LazAlphaControls package. Where can I find this package?

Yes this was obsolete, you did well.
I forgot to remove it - it was only a dummy package I've created for projects ported from Delphi that used AlphaControls.

taazz

  • Hero Member
  • *****
  • Posts: 5368
Re: ANN: KControls 1.7
« Reply #5 on: August 13, 2015, 05:36:13 pm »
I'll be looking at tkMemo in the near future. Thank you for sharing.
Good judgement is the result of experience … Experience is the result of bad judgement.

OS : Windows 7 64 bit
Laz: Lazarus 1.4.4 FPC 2.6.4 i386-win32-win32/win64

LuizAmérico

  • Sr. Member
  • ****
  • Posts: 457
Re: ANN: KControls 1.7
« Reply #6 on: August 13, 2015, 07:42:42 pm »
Is there any source code repository where we can checkout?
This is helpful to create eventual patches

tk

  • Sr. Member
  • ****
  • Posts: 361
Re: ANN: KControls 1.7
« Reply #7 on: August 13, 2015, 08:41:58 pm »
Yes we have our master repo on bitbucket but is still private.
And I am not convinced to make this public, even for read only.
The main reason is not the ads on the tkweb site :), but the fear that the eventual patches will not observe all the contributor notes in the readme :(
KControls is not just Lazarus but Delphi both non unicode and unicode.
Patches for KControls must be compilable and working at least in Lazarus Win, Lazarus Linux, Delphi 7-2007 and Delphi 2009-XE8.
Indeed we and many others use KControls still in non unicode old Delphi versions. So every patch is huge work.
And I observe that even developers in our company make patches only for what they need and don't observe anything else :(
So in fact I don't like patches, especially KControls patches :D

JD

  • Hero Member
  • *****
  • Posts: 1848
Re: ANN: KControls 1.7
« Reply #8 on: August 14, 2015, 12:28:15 am »
Kudos to you for all your hard work.  :D

JD
Windows - Lazarus 2.1/FPC 3.2 (built using fpcupdeluxe),
Linux Mint - Lazarus 2.1/FPC 3.2 (built using fpcupdeluxe)

mORMot; Zeos 8; SQLite, PostgreSQL & MariaDB; VirtualTreeView

Groffy

  • Full Member
  • ***
  • Posts: 204
Re: ANN: KControls 1.7 - problem with QT widgets
« Reply #9 on: August 14, 2015, 09:53:50 am »
Just tried to compile the KGrid demo under Lazarus 1.4.2. Its not possible to load the project anymore. Seems to be a problem with QT-widgets under Win7, with Win32 widgets its running. See attached error message when open a project with a KGrid control or try to place a KGrid control on to an empty form.


Best regards
« Last Edit: August 14, 2015, 10:48:06 am by Groffy »
Linux Mint / Windows 10 / Lazarus 3.0.0 / trunk -qt

tk

  • Sr. Member
  • ****
  • Posts: 361
Re: ANN: KControls 1.7
« Reply #10 on: August 15, 2015, 09:58:11 am »
I was not testing with QT because the further development for QT5 seems to be unclear or even dead in Lazarus. Please use either older KGrid in QT if it is still working or native OS widget sets.

EDIT: I can compile with QT widget override for KGrid demo but I cannot run with QT5 at all. If you want to remove the error in KControls 1.7. please exactly describe what with what you are compiling and running.
« Last Edit: August 15, 2015, 10:04:46 am by tk »

Groffy

  • Full Member
  • ***
  • Posts: 204
Re: ANN: KControls 1.7
« Reply #11 on: August 15, 2015, 10:46:43 am »
Hi Tomas,

I'm developing a small billing application running mainly under Win7, but it should also run under Linux and some month ago I switched completely to Linux Mint/KDE 17.x while developing at home. I decided that it might be a good idea to use QT on both platforms because the GUI should look identical. Currentliy its no problem to stay with KContols 1.6 because I'm using the KGrid control only and extended the navigation while editing inside the grid for my needs. And the grid control version is from Juli 2014, so there seems no changes for the KGrid control in KControls suite 1.7. I was just curious about the new KMemo control and installed the KControls 1.7. I will open a new thread to describe the problems under Win7 / QT.

Ulrich
« Last Edit: August 15, 2015, 10:48:53 am by Groffy »
Linux Mint / Windows 10 / Lazarus 3.0.0 / trunk -qt

tk

  • Sr. Member
  • ****
  • Posts: 361
Re: ANN: KControls 1.7
« Reply #12 on: August 15, 2015, 11:01:58 am »
Yes, there were only cosmetic changes in KGrid. Even the tree columns, which I planned, my colleague managed in KGrid perfectly without any specific KGrid support (he did an object inspector in virtual KGrid and it is perfect). Yes please describe the QT status in different thread. I changed my computer anyway so my old working QT installation is not available anymore. Now figuring out the recent QT status is somewhat weird.

tk

  • Sr. Member
  • ****
  • Posts: 361
Re: ANN: KControls 1.7
« Reply #13 on: August 15, 2015, 02:07:13 pm »
Finally after at least 2 hours struggling at the QT setup on my new computer I've found the cause.
It is the kcontrols.inc file, where, when I looked at the file history in the repo, somebody changed
Code: [Select]
{$IF NOT DEFINED(FPC) OR DEFINED(LCLWin32) OR DEFINED(LCLWin64)}
  {$DEFINE USE_WINAPI}
{$IFEND}
to

Code: [Select]
{$IF NOT DEFINED(FPC) OR DEFINED(WINDOWS)}
  {$DEFINE USE_WINAPI}
{$IFEND}

Which is imo wrong.
The directive USE_WINAPI cannot be defined when LCL is QT even when compiling on Windows.
Will be fixed in next release, please revert to original kcontrols.inc.

Groffy

  • Full Member
  • ***
  • Posts: 204
Re: ANN: KControls 1.7
« Reply #14 on: August 15, 2015, 06:26:13 pm »
Thank you for your efforts! Will test that on monday.

Ulrich
Linux Mint / Windows 10 / Lazarus 3.0.0 / trunk -qt

 

TinyPortal © 2005-2018