[lazarus] Color detector program

2007-11-13 Thread Graeme Geldenhuys
Hi,

I would like to implement a color detector program.

A quick description:
You simply run the program, point the mouse cursor anywhere on the
screen, and the color detector window will display the RGB values,
HTML hex code, and the Color Name of the color of the pixel pointed to
by the mouse cursor.


Anybody working on something like this?  I've seen loads of these
applications for Windows, but I need something like that to work under
Linux too.  Any thoughts on how you would implement something like
this?  I guess looking at Felipe's magnifier application should yield
some clues.


Regards,
  - Graeme -


___
fpGUI - a cross-platform Free Pascal GUI toolkit
http://opensoft.homeip.net/fpgui/

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


[lazarus] libatk1 dependency

2007-11-13 Thread Panagiotis Sidiropoulos

Application is developed on Linux (Ubuntu 6.10) using Lazarus.

.deb setup file while is installing on a Ubuntu 6.04 server reports Error: 
Dependency is not satisfiable: libatk1.0-0 but works normally on 
development machine Ubuntu 6.10.


Using Synaptic I installed any libatk1* files available but nothing is 
changed.


Application is running on Ubuntu 6.04.

Is anyone familiar with this situation?

Regards,
Panagiotis 


_
To unsubscribe: mail [EMAIL PROTECTED] with
   unsubscribe as the Subject
  archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] The use of Variants?

2007-11-13 Thread Sam Liddicott

Graeme Geldenhuys wrote:

Hi,

What are your feelings about the use of Variants?  I'm debating this
in another NG and would like some outside opinion.

My personal opinion on Variants:

  *  I don't like them. [if that's a reason]  :-)
  
Well they were darn useful in Delphi when dealing with com objects 
and embedding wsh scripting stuff.

  *  They seem like a bit of a hack. Native types seem to be a
  better solution to me, even though it might end up being
  a bit more work (coding wise).
  
better solution just exposes your area of main experience rather than 
making any definitive comment on the use of variants.
Spme people think object pascal and C are a hack and we should have just 
stuck with machine code whatever makes the job easier without 
offending reason (I'm thinking of BF here)

  *  They tend to be slow compared no native types. In
  Delphi 6 they were very slow. How does it compare
  in FPC 2.2.0?
  
Well, however slow they may be it's better than doing it by hand; if 
people use variants where they don't need to they have their-selves to 
blame for any slowness.


So. I've found 'em useful...

Sam

_
To unsubscribe: mail [EMAIL PROTECTED] with
   unsubscribe as the Subject
  archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Bad news

2007-11-13 Thread Michael Van Canneyt


On Tue, 13 Nov 2007, David Lyon wrote:

 
 Mr yap yap here...
 
 Apologies for not getting to Germany but I had some client matters and
 couldn't get away...
 
 Don't know where you guys are up to with the Trademarks/Foundation stuff. Any
 updates ?

Not much. I attended a firebird conference, and discussed with them about
their model of a foundation. They experience the same problem the FPC
developers fear: a balance between independence of developers and the
needs of the foundation.

 might be able to offer some stand space at cebit 2008 sydney if you guys are
 interested. But you need to get something sorted with the trademarks first.

Well, 
many core developers beg to differ with you in their opinion about this subject 
:-)

But everyone is open for a constructive discussion.

Michael.

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] The use of Variants?

2007-11-13 Thread Florian Klaempfl
Graeme Geldenhuys schrieb:
 Hi,
 
 What are your feelings about the use of Variants?  I'm debating this
 in another NG and would like some outside opinion.
 
 My personal opinion on Variants:

Variant based code is a nightmare to maintain. Just let somebody else
extend some variant based code. How should he know what a variant could
contain at a certain place? Such extensions are simply very error prone
to rte because of type mistaches. Variants are a step back to assembler
level: there you work also basically with typeless memory locations and
other people have to guess what a memory location could contain.

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Data-aware contols, updateSQL

2007-11-13 Thread Luca Olivetti

En/na Maxim Ganetsky ha escrit:

Howard Lee Harkness пишет:

I guess I need to check them out. However, the files on sourceforge
are about 6 years old. Is there a more recent version of ZeosDB?



Yes. See here:
http://zeosforum.net.ms/


I thought the official page was http://zeos.firmos.at
Anyway, I used the trunk from svn, see the Downloading section here:
http://zeos.firmos.at/viewtopic.php?t=1317

Bye
--
Luca Olivetti
Wetron Automatización S.A. http://www.wetron.es/
Tel. +34 93 5883004  Fax +34 93 5883007

_
To unsubscribe: mail [EMAIL PROTECTED] with
   unsubscribe as the Subject
  archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] The use of Variants?

2007-11-13 Thread Sam Liddicott

Michael Van Canneyt wrote:

On Tue, 13 Nov 2007, Graeme Geldenhuys wrote:
  

  *  They tend to be slow compared no native types. In
  Delphi 6 they were very slow. How does it compare
  in FPC 2.2.0?



They are slower than native types, there is no way around this.
Almost each and every operation involving variants has some 
implicit calls to variant support routines.
  
If the variant type is the correct type, no casts are done and the whole 
thing is very quick.

You should see that it is more than double the size.
If that doesn't convince someone that variants are SLOW, 
then I don't know what will. Use -al for compiler options.
  

Twice as big doesn't mean slow at all.

Most of the extra code covers different branches based on the variant 
type, most of the extra code is NEVER used but there in case because, 
as you say, pascal is a type safe language.


I would much rather have pascal manage the variant and conversions for 
me than I have to manage it and get it wrong.



Sam

_
To unsubscribe: mail [EMAIL PROTECTED] with
   unsubscribe as the Subject
  archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Bad news

2007-11-13 Thread Dave Coventry
On Nov 13, 2007 10:22 AM, Michael Van Canneyt [EMAIL PROTECTED] wrote:
 But everyone is open for a constructive discussion.

Speaking of which, Mr. Trefethen has posted what he claims are some of
the plagiarisms in the FPC code on his blog.

http://www.stevetrefethen.com/blog/IWishTheDelphiCommandLineCompilerWereFree.aspx

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] The use of Variants?

2007-11-13 Thread Sam Liddicott

Florian Klaempfl wrote:

Graeme Geldenhuys schrieb:
  

Hi,

What are your feelings about the use of Variants?  I'm debating this
in another NG and would like some outside opinion.

My personal opinion on Variants:



Variant based code is a nightmare to maintain. Just let somebody else
extend some variant based code. How should he know what a variant could
contain at a certain place? 

Why stop at variants? Undocumented code IS a nightmare.

Such extensions are simply very error prone
to rte because of type mistaches. 
nonsense. You easily get to check types, even before any automatic 
casting. Variants are a a union struct (C talk here) with automatic 
helper routines IF needed.



Variants are a step back to assembler
level: there you work also basically with typeless memory locations and
other people have to guess what a memory location could contain.
  

They aren't typeless at all, part of the structure indicates the type!
Pascal can check the type AND cast the type IF you want it to and it is 
needed.
They are only slow if the type needs casting, in which case you were 
going to have ot cast it anyway.



Sam

_
To unsubscribe: mail [EMAIL PROTECTED] with
   unsubscribe as the Subject
  archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] The use of Variants?

2007-11-13 Thread Michael Van Canneyt


On Tue, 13 Nov 2007, Sam Liddicott wrote:

 Michael Van Canneyt wrote:
  On Tue, 13 Nov 2007, Graeme Geldenhuys wrote:

 *  They tend to be slow compared no native types. In
 Delphi 6 they were very slow. How does it compare
 in FPC 2.2.0?
   
 
  They are slower than native types, there is no way around this.
  Almost each and every operation involving variants has some implicit calls
  to variant support routines.

 If the variant type is the correct type, no casts are done and the whole thing
 is very quick.

Exactly: IF. 

this means
a) Check if. This by itself involves a call to a helper routine.
b) convert if not the same

With native types it's just a straight copy.


  You should see that it is more than double the size.
  If that doesn't convince someone that variants are SLOW, then I don't know
  what will. Use -al for compiler options.

 Twice as big doesn't mean slow at all.

Just have a look at the code before saying that :-)

 Most of the extra code covers different branches based on the variant type,
 most of the extra code is NEVER used but there in case because, as you say,
 pascal is a type safe language.

It must be checked, each time over and over again. Just look at the code.

 I would much rather have pascal manage the variant and conversions for me than
 I have to manage it and get it wrong.

The point is that you don't need to do conversions when using typed variables.

Michael.

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] WinCE and remote database

2007-11-13 Thread Alvise Nicoletti

Hi Leonardo.

I will try to support you in the best way I can, but please keep in mind 
that I'm a noob both with lazarus and delphi.


The first thing you have to understand, is that lazarus itself is not 
able to do everything on a system, sometimes it uses (like it's supposed 
to be) external libraries for external program-use.


For example, if you want to use SQLdb on a machine, YOU MUST HAVE 
libmysql.dll (or .so for linux) correctly installed in the system.


I don't know how ZEOSDBO works on Lazarus, but I use them on windows and 
also mysqlclient.dll have to be installed on the system...
So... cause for Windows Mobile there is no mysqlclient.dll, there is 
also no way to connect to a mysql database.
I already writed at mysql stuff 7 months ago and they said me there was 
no solution, you will easily find my emails/posts with google.


I also don't know how does sqllite work, but if it's possible to connect 
to it remotely, maybe also mysqlclient.dll is used for that purpose.


So, my only solution for you is to use php scripts to select and update 
the data into the database (it's also very simple and the querys remain 
phisically on the server while your client is elsewere) and interrogate 
the database with an http connection.


For example, to get the data from a table you will use a xml parsing 
function like:
data_array;=parse_the_xml_data(http_get( 
'http://myserveraddress/myapplication/table1.php?key=1' ));


You can use the http_POST to give to apache/php data to insert into the 
database with other php scripts.
So, php/apache will be able to handle the mysql data (they do it 
greatly) while on your application you will just need to do the forms 
and to parse xml stuff with the DOM functions.


That is a workaround to make a web-based application that will work both 
on WinCE and all other systems doing the client with lazarus and using 
the same code for each client you compile.


However, if you manage to use ZeosDB on WinCE someway, you're more 
skilled than I thought ;)


Alvise

P.S. Are you already using a working lazarus with cross-compiler, or 
you're still trying the base-ide?
Cause things are a little different using a crosscompiler and you will 
encounter a lot of more problems using external components. For example 
neither SQLdb can be used on WinCE and Joost (it's creator) said there 
is no reason to make them compilable on that system due to the fact that 
no mysqlclient.dll exists for that kind of OS.


The only way to make that work would be to cross-compile mysqlclient.dll 
for ARM architecture, the dll should be open source like the software, 
but honestly I don't know if that is possible and with wich kind of 
software, nor I know if it could just... work.



I have found the ZEOSDBO-6.6.1_beta 
http://garr.dl.sourceforge.net/sourceforge/zeoslib/ZEOSDBO-6.6.1_beta.zip 
package.


With this package you can to connect to the remote database (I am not 
sure).


But it do not compiles under WinCE :(



2007/11/12, Leonardo M. Ramé [EMAIL PROTECTED] 
mailto:[EMAIL PROTECTED]:


Daniel Rincón García escribió:
 I already know how to connect to the database if it is in the
hard disk,
 but I do not know how to connect to the database if it is in the web
 server.

Sorry, but you can't. Sqlite isn't a database server, its a
local/embedded database.

Leonardo.


_
 To unsubscribe: mail [EMAIL PROTECTED]
mailto:[EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives




No virus found in this incoming message.
Checked by AVG Free Edition. 
Version: 7.5.503 / Virus Database: 269.15.30/1125 - Release Date: 11/11/2007 21.50
  


_
To unsubscribe: mail [EMAIL PROTECTED] with
   unsubscribe as the Subject
  archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] libatk1 dependency

2007-11-13 Thread Damien Gerard


On Nov 13, 2007, at 8:56 AM, Panagiotis Sidiropoulos wrote:


Application is developed on Linux (Ubuntu 6.10) using Lazarus.

.deb setup file while is installing on a Ubuntu 6.04 server reports  
Error: Dependency is not satisfiable: libatk1.0-0 but works  
normally on development machine Ubuntu 6.10.




You can try dpkg  --ignore-depends=libatk1.0-0 install mypackage.deb  
but it is not the solution.


In fact your libatk1 package may be a version prior to your need (for  
example on my Ubuntu 7.10 it is the version 1.20). The most common app  
require the version 1.13


* To see the version of you libatk1 :  apt-cache show libatk1.0-0
Example :
milipili-desktop [milipili] ...xie/client/distributions % apt-cache  
show  
libatk1.0 
-0 
 10 
:06 #51

Package: libatk1.0-0
Priority: optional
Section: libs
Installed-Size: 200
Maintainer: Ubuntu Accessibility Developers [EMAIL PROTECTED] 

Original-Maintainer: Debian GNOME Maintainers [EMAIL PROTECTED] 


Architecture: i386
Source: atk1.0
Version: 1.20.0-0ubuntu1
Depends: libc6 (= 2.6-1), libglib2.0-0 (= 2.14.0)


-- Version : 1.20 for Ubuntu



* To see the version needed by your deb file :  dpkg --info  
mypackage.deb

Example :
milipili-desktop [milipili] ...xie/client/distributions % dpkg -- 
info ./arch/ubuntu32/packages// 
pixie_0.3.2_i386 
.deb 
 Err 
 2 #50

 nouveau paquet Debian, version 2.0.
 taille 2136404 octets : archive de contrôle = 318 octets.
 258 octets, 9 lignes  control
 Package: pixie
 Version: 0.3.2-0
 Section: base
 Priority: optional
 Architecture: i386
 Depends: libpixie-common (=1.0), libpixie-cache (=1.0), liblua5.1- 
dev





Using Synaptic I installed any libatk1* files available but nothing  
is changed.


Application is running on Ubuntu 6.04.

Is anyone familiar with this situation?

Regards,
Panagiotis
_
   To unsubscribe: mail [EMAIL PROTECTED] with
  unsubscribe as the Subject
 archives at http://www.lazarus.freepascal.org/mailarchives




--
Damien Gerard
[EMAIL PROTECTED]



_
To unsubscribe: mail [EMAIL PROTECTED] with
   unsubscribe as the Subject
  archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] The use of Variants?

2007-11-13 Thread Sam Liddicott
* Michael Van Canneyt wrote, On 13/11/07 08:47:
 On Tue, 13 Nov 2007, Sam Liddicott wrote:

   
 Michael Van Canneyt wrote:
 
 On Tue, 13 Nov 2007, Graeme Geldenhuys wrote:
   
   
   *  They tend to be slow compared no native types. In
   Delphi 6 they were very slow. How does it compare
   in FPC 2.2.0?
 
 
 They are slower than native types, there is no way around this.
 Almost each and every operation involving variants has some implicit calls
 to variant support routines.
   
   
 If the variant type is the correct type, no casts are done and the whole 
 thing
 is very quick.
 

 Exactly: IF. 

 this means
 a) Check if. This by itself involves a call to a helper routine.
   
It can be a simple compare. The delphi variant code that I disassembled
was inline (hence twice as big, doesn't involve a call but a simple
compare).

The simple compare to determine the variant type is nothing compared to
the overheads that will exist between the two systems communicating
using the variants.

 b) convert if not the same

 With native types it's just a straight copy.
   
With variants it is usually a straight copy, and in cases where it
usually isn't you were going to have to convert by hand anyway.
 You should see that it is more than double the size.
 If that doesn't convince someone that variants are SLOW, then I don't know
 what will. Use -al for compiler options.
   
   
 Twice as big doesn't mean slow at all.
 

 Just have a look at the code before saying that :-)
   
I have disassembled the delphi variant code, ls -l doesn't give an
indication of execution time.
 Most of the extra code covers different branches based on the variant type,
 most of the extra code is NEVER used but there in case because, as you say,
 pascal is a type safe language.
 

 It must be checked, each time over and over again. Just look at the code.
   
The check is cheap. The conversion doesn't need to happen over and over
again unless you want it to.

People who really want to can use the variant to aid a one-off
conversion to a native statically typed variable, and this is STILL
neater and simpler and less error prone than managing a manual type
check and conversion and dealing with any error.
   
 I would much rather have pascal manage the variant and conversions for me 
 than
 I have to manage it and get it wrong.
 

 The point is that you don't need to do conversions when using typed variables.
   
This is not true; take most situations where variants are being used and
you see they are being used to manage conversions. Type-ing of variables
does not avoid the need for conversion. (Variants are typed in both
senses, but I know what you mean).

Variants may or may not be a hack, but they are less of a hack than the
alternative.

If people use variants when not integrating with duck-typing systems
then they get the performance penalty they deserve.

In this conversation I'm thinking of using variants when integrating
with COM systems, etc;

Perhaps you are thinking of lazy users who make everything a variant so
they can have some kind of loosely typed compiled pascal-script. The
fault would be with the user, not the variant.

Sam



Re: [lazarus] The use of Variants?

2007-11-13 Thread Damien Gerard


On Nov 13, 2007, at 10:12 AM, Sam Liddicott wrote:


* Michael Van Canneyt wrote, On 13/11/07 08:47:


On Tue, 13 Nov 2007, Sam Liddicott wrote:



Michael Van Canneyt wrote:


On Tue, 13 Nov 2007, Graeme Geldenhuys wrote:



  *  They tend to be slow compared no native types. In
  Delphi 6 they were very slow. How does it compare
  in FPC 2.2.0?



They are slower than native types, there is no way around this.
Almost each and every operation involving variants has some  
implicit calls

to variant support routines.


If the variant type is the correct type, no casts are done and the  
whole thing

is very quick.


Exactly: IF.

this means
a) Check if. This by itself involves a call to a helper routine.

It can be a simple compare. The delphi variant code that I  
disassembled was inline (hence twice as big, doesn't involve a  
call but a simple compare).


The simple compare to determine the variant type is nothing compared  
to the overheads that will exist between the two systems  
communicating using the variants.



b) convert if not the same

With native types it's just a straight copy.

With variants it is usually a straight copy, and in cases where it  
usually isn't you were going to have to convert by hand anyway.

You should see that it is more than double the size.
If that doesn't convince someone that variants are SLOW, then I  
don't know

what will. Use -al for compiler options.



Twice as big doesn't mean slow at all.


Just have a look at the code before saying that :-)

I have disassembled the delphi variant code, ls -l doesn't give an  
indication of execution time.
Most of the extra code covers different branches based on the  
variant type,
most of the extra code is NEVER used but there in case because,  
as you say,

pascal is a type safe language.

It must be checked, each time over and over again. Just look at the  
code.


The check is cheap. The conversion doesn't need to happen over and  
over again unless you want it to.


People who really want to can use the variant to aid a one-off  
conversion to a native statically typed variable, and this is STILL  
neater and simpler and less error prone than managing a manual type  
check and conversion and dealing with any error.


I would much rather have pascal manage the variant and conversions  
for me than

I have to manage it and get it wrong.

The point is that you don't need to do conversions when using typed  
variables.


This is not true; take most situations where variants are being used  
and you see they are being used to manage conversions. Type-ing of  
variables does not avoid the need for conversion. (Variants are  
typed in both senses, but I know what you mean).


Variants may or may not be a hack, but they are less of a hack than  
the alternative.


If people use variants when not integrating with duck-typing systems  
then they get the performance penalty they deserve.


In this conversation I'm thinking of using variants when integrating  
with COM systems, etc;


Perhaps you are thinking of lazy users who make everything a variant  
so they can have some kind of loosely typed compiled pascal-script.  
The fault would be with the user, not the variant.




I think it is the same debate between C++ programmers et PHP  
programmers. The first group like strong type checking because they  
want to know exacty how their data must be. The second one don't care  
of it and want lazy programming.


I do not agree with that, variant are not needed the most of the time,  
you always have a pascal routine to make your convertion if needed. If  
you always need a convertion, may be the type/modeling is not  
appropriated. Even if we have powerful computer nowdays, it is not  
necessary to add useless checks/code. We seek for performance because  
you don't want to be forced to have a 3GHz to open an explorer...


Another reason would be that I observe with a lazy programming  
language that programmers don't take care of their code and provide  
unmaintable code.


But it is only my thought




--
Damien Gerard
[EMAIL PROTECTED]





Re: [lazarus] Bad news

2007-11-13 Thread Joost van der Sluis
Op dinsdag 13-11-2007 om 10:47 uur [tijdzone +0200], schreef Dave
Coventry:
 On Nov 13, 2007 10:22 AM, Michael Van Canneyt [EMAIL PROTECTED] wrote:
  But everyone is open for a constructive discussion.
 
 Speaking of which, Mr. Trefethen has posted what he claims are some of
 the plagiarisms in the FPC code on his blog.
 
 http://www.stevetrefethen.com/blog/IWishTheDelphiCommandLineCompilerWereFree.aspx

Thanks for the head-up. I answered this one.

And I would almost ask him to write the same functionality in some other
way. Because I think there is no real alternative.

Those who have commit rights on Freepascal and Lazarus are very keen on
this kind of issues. Offcourse something could have slipped through,
because most of the fpc-developers simply don't know the Delphi-code, so
it's difficult te recognize is. Especially if you can not take a look in
the Delphi-code itself, since that could be a problem in itself
already. 

But Freepascal and Lazarus aren't build using Delphi code. I'm pretty
sure of that.

Joost



_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Clone objects

2007-11-13 Thread Damien Gerard


On Nov 12, 2007, at 8:37 PM, Mattias Gaertner wrote:


On Mon, 12 Nov 2007 22:04:55 +0300
Al Boldi [EMAIL PROTECTED] wrote:


Vincent Snijders wrote:

Mattias Gaertner schreef:

On Mon, 12 Nov 2007, Damien Gerard wrote:

I use this :
http://wiki.lazarus.freepascal.org/Streaming_components
However I ve got an exception error : Class  not found (I
put only a panel).


snip


Maybe this helps:
lazarus/examples/componentstreaming/
http://wiki.lazarus.freepascal.org/Streaming_components


Maybe it didn't work.


You are right.
Did you add TPanel to procedure TCompStreamDemoForm.OnFindClass?



Maybe this could be wrapped into a clone method.


It would be pretty slow, so implementing the Assign method is almost  
always better. For the rare cases where such a clone method makes  
sense:

You must provide an TFindComponentClassEvent event and register the
classes somewhere.





Due to the example program works perfectly (lazdir/examples/ 
componentsstreaming) I assume the issue comes from my program which do  
not do the right thing to do.



--
Damien Gerard
[EMAIL PROTECTED]



_
To unsubscribe: mail [EMAIL PROTECTED] with
   unsubscribe as the Subject
  archives at http://www.lazarus.freepascal.org/mailarchives


RE: [lazarus] manage multiple fpc/laz version

2007-11-13 Thread Giulio Bernardi

 check your fpc.cfg to see if it uses $fpcversion macro.
 
 How to know fpc.cfg supports $fpcversion macro?
 
 so that a compiler version will pick the correct files.
 
 For now, I have to edit manually my fpc.cfg to use wanted version each 
 time I need it. It just a few lines anyway. :-D
 

It's not fpc.cfg that supports $fpcversion, it's the compiler that supports 
it.
I'll try to explain a bit more.

if you have this in your fpc.cfg
-Fu/usr/local/lib/fpc/2.0.4/units/i386-linux
Then whichever compiler version you use, it will always search for ppus in that 
location, and it will fail if it's not 2.0.4.

If, instead, you have something like this
-Fu/usr/local/lib/fpc/$fpcversion/units/$fpctarget
Then the compiler will pick the right version of ppus.
This is because when you invoke the compiler, it reads fpc.cfg and replaces 
$fpcversion and $fpctarget with its version and the platform you are compiling 
for. This means that you can use a single fpc.cfg for all your installed 
compilers.

So, if you are compiling with a 2.2.0 compiler, $fpcversion becomes 2.2.0 and 
$fpctarget i386-linux (if you are compiling for i386-linux) so the compiler 
will search in
-Fu/usr/local/lib/fpc/2.2.0/units/i386-linux

so when I said check your fpc.cfg to see if it uses $fpcversion macro., I 
meant make sure that in fpc.cfg you have $fpcversion instead of a hardcoded 
version number in the search path.


 Another question... each time I do 'svn update' and recompile lazarus, 
 it uses default widgetset which is gtk1. How do tell 'make' to use gtk2 
 instead of gtk1? So, I don't need to do twice compilation, one using 
 make, another using Lazarus' build.
 
make all FPC=fpcyouwanttouse LCL_PLATFORM=platformyouwanttouse
(you can also build LCL platforms later from the command line simply going into 
lazarus/lcl directory and typing the command above)

bye
Giulio
_
Explore the seven wonders of the world
http://search.msn.com/results.aspx?q=7+wonders+worldmkt=en-USform=QBRE

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] The use of Variants?

2007-11-13 Thread Sam Liddicott
* Damien Gerard wrote, On 13/11/07 09:31:


 I think it is the same debate between C++ programmers et PHP programmers.

Nearly. It's a meta-debate on whether or not pascal users should be
ALLOWED to use variants, not whether or not pascal should implement
everything as a variant.

 The first group like strong type checking because they want to know
 exacty how their data must be.

Or maybe the tedium of conformity is appealing? There are so many of
them it is difficult to know all their reasons.

I've had to write too much API-glue and conversion in my time, perhaps
thats why I like variants.
I re-wrote swig-php to make it easier and of course ended up writing
even more in the process :-)

 The second one don't care of it and want lazy programming.

This may often be true, but it is also as often un-true. I find it
interesting that you choose a flattering generalization for those you
agree with and an un-flattering generalization for those you disagree
with; and yet it is not clear that those php programmers you disagree
with care for pascal and variants anyway.

I find generally that when there are two sides to a debate, both sides
fail to properly grasp the facts of the other view, preferring to cling
to the straw which better justifies their own opinion.

If you find duck-typing programmers lazy and not worth associating with,
you will never learn that you are wrong.

I started hard-core programming in SH, then Turbo Pascal, then Delphi; I
wrote a 16 bit multi-threader (later absorbed without permission into
a Delphi 2 compat library for Delphi 1, I wrote a Delphi 1 form designer
well before lazarus, and also an implementation of form inhertiance for
Delphi 1). I wrote DPMI extensions to handle call-backs from real-mode
device drivers in Delphi.

I then went on to PHP and C and re-wrote php-swig to easily link
libraries with php (doing all these variant type conversions).

I then went on to MS embedded visual C++ for smartphones.

Now lazarus is GTK2 and doesn't make my eyes bleed on linux, I'm getting
ready to do wince development with lazarus so I can keep my code when I
finally get a linux smartphone.

I've spent years on both sides of the typing fence, and say
confidently that anyone who sits strongly on one side of the fence is
speaking from a lack of experience.


 I do not agree with that, variant are not needed the most of the time,

yes. And fortunately pascal won't raise any warnings if you don't use them.

 you always have a pascal routine to make your convertion if needed.

but you have to write the code every time.

You have to write code to check, convert and raise an exception and
there aren't even any decent C style macros to help you do it!!

It is NUTS. On top of that the compiler COULD easily do it for you.

 If you always need a convertion, may be the type/modeling is not
 appropriated.

Maybe it is appropriate and maybe you are writing an interface between
systems. I accept that you haven't found the need for variants, but
please consider there might be a need.

 Even if we have powerful computer nowdays,

except we are not allowed to have this powerful computer automatically
generate the code for us, we have to write it ourselves.

 it is not necessary to add useless checks/code.

But it is necessary to add USEFUL checks/code, and if the compiler can
do it for me, so much the better.

 We seek for performance because you don't want to be forced to have a
 3GHz to open an explorer...

The FACILITY of variants has nothing to do with performance.
The ABUSE of variants has everything to do with performance.

But why stop at variants? The abuse of alternate record parts (union in
C, I forgot what pascal calls them) is also hell.
The abuse of embedded read-write procedures on file records is nuts.


 Another reason would be that I observe with a lazy programming
 language that programmers don't take care of their code and provide
 unmaintable code.

Are you opposed to the facility of variants because you think a load of
lazy slack programmers will suddenly start using lazarus like they did VB?


 But it is only my thought

I agree with your statements, but I can't see how they are relevant to
the facility of variants.

Why do those who oppose the facility of variants base their arguments on
the situation where only idiots would be using them?
I hope the answer is not because it helps them believe they are right.

- of course such statements will useless to persuade those who do see
other value in variants precisely because it is OTHER value that they see

I keep stating why COM is useful; it automatically checks, converts and
raises exceptions with data from other systems. It saves a lot of
possibly buggy code from having to be written, debugged and maintained
by hand.

Why aren't people complaining about the overhead of widget
encapsulation? Why only about type encapsulation?
Because the people who complain about widget encapsulation are not using
lazarus so we can't hear them.

Sam


Re: [lazarus] The use of Variants?

2007-11-13 Thread Damien Gerard


On Nov 13, 2007, at 10:59 AM, Sam Liddicott wrote:


* Damien Gerard wrote, On 13/11/07 09:31:




I think it is the same debate between C++ programmers et PHP  
programmers.


Nearly. It's a meta-debate on whether or not pascal users should be  
ALLOWED to use variants, not whether or not pascal should implement  
everything as a variant.


The first group like strong type checking because they want to know  
exacty how their data must be.


Or maybe the tedium of conformity is appealing? There are so many of  
them it is difficult to know all their reasons.


I've had to write too much API-glue and conversion in my time,  
perhaps thats why I like variants.
I re-wrote swig-php to make it easier and of course ended up  
writing even more in the process :-)



The second one don't care of it and want lazy programming.


This may often be true, but it is also as often un-true. I find it  
interesting that you choose a flattering generalization for those  
you agree with and an un-flattering generalization for those you  
disagree with; and yet it is not clear that those php programmers  
you disagree with care for pascal and variants anyway.


I find generally that when there are two sides to a debate, both  
sides fail to properly grasp the facts of the other view, preferring  
to cling to the straw which better justifies their own opinion.


If you find duck-typing programmers lazy and not worth associating  
with, you will never learn that you are wrong.


I started hard-core programming in SH, then Turbo Pascal, then  
Delphi; I wrote a 16 bit multi-threader (later absorbed without  
permission into a Delphi 2 compat library for Delphi 1, I wrote a  
Delphi 1 form designer well before lazarus, and also an  
implementation of form inhertiance for Delphi 1). I wrote DPMI  
extensions to handle call-backs from real-mode device drivers in  
Delphi.


I then went on to PHP and C and re-wrote php-swig to easily link  
libraries with php (doing all these variant type conversions).


I then went on to MS embedded visual C++ for smartphones.

Now lazarus is GTK2 and doesn't make my eyes bleed on linux, I'm  
getting ready to do wince development with lazarus so I can keep my  
code when I finally get a linux smartphone.


I've spent years on both sides of the typing fence, and say  
confidently that anyone who sits strongly on one side of the fence  
is speaking from a lack of experience.




I do not agree with that, variant are not needed the most of the  
time,


yes. And fortunately pascal won't raise any warnings if you don't  
use them.



you always have a pascal routine to make your convertion if needed.


but you have to write the code every time.

You have to write code to check, convert and raise an exception and  
there aren't even any decent C style macros to help you do it!!


It is NUTS. On top of that the compiler COULD easily do it for you.

If you always need a convertion, may be the type/modeling is not  
appropriated.


Maybe it is appropriate and maybe you are writing an interface  
between systems. I accept that you haven't found the need for  
variants, but please consider there might be a need.



Even if we have powerful computer nowdays,


except we are not allowed to have this powerful computer  
automatically generate the code for us, we have to write it ourselves.



it is not necessary to add useless checks/code.


But it is necessary to add USEFUL checks/code, and if the compiler  
can do it for me, so much the better.


We seek for performance because you don't want to be forced to have  
a 3GHz to open an explorer...


The FACILITY of variants has nothing to do with performance.
The ABUSE of variants has everything to do with performance.

But why stop at variants? The abuse of alternate record parts (union  
in C, I forgot what pascal calls them) is also hell.

The abuse of embedded read-write procedures on file records is nuts.



Another reason would be that I observe with a lazy programming  
language that programmers don't take care of their code and provide  
unmaintable code.


Are you opposed to the facility of variants because you think a load  
of lazy slack programmers will suddenly start using lazarus like  
they did VB?


VB I don't know I have stopped using Windows as my primary dev  
platform for many years :)










But it is only my thought


I agree with your statements, but I can't see how they are relevant  
to the facility of variants.


Why do those who oppose the facility of variants base their  
arguments on the situation where only idiots would be using them?

I hope the answer is not because it helps them believe they are right.

- of course such statements will useless to persuade those who do  
see other value in variants precisely because it is OTHER value that  
they see


I keep stating why COM is useful; it automatically checks, converts  
and raises exceptions with data from other systems. It saves a lot  
of possibly buggy code from having 

Re: [lazarus] manage multiple fpc/laz version

2007-11-13 Thread Bee

It's not fpc.cfg that supports $fpcversion, it's the compiler that
supports it. I'll try to explain a bit more.


Alright Giulio, I get it now. I'll try it soon. Thank you for the help. 
I do appreciate it. :)


-Bee-

has Bee.ography at:
http://beeography.wordpress.com

_
To unsubscribe: mail [EMAIL PROTECTED] with
   unsubscribe as the Subject
  archives at http://www.lazarus.freepascal.org/mailarchives


[lazarus] copyright infringement in LCL code

2007-11-13 Thread Graeme Geldenhuys
Hi,

Due to the previous discussion of copyright infringement in FPC code,
I downloaded a Similarity Tester (SIM 2.21) and ran it against a few
random selected files, comparing LCL to Kylix 3 source.

Oh my!!!   I found quite a bit of code that are marked as copied.  No,
I'm not talking about the class interfaces which are duplicated or
purpose.

Note:
This tool is automated and fast.  I'm sure _not_ everything it detects
are actual copied code, but it might be worth our while going through
it and verifying the code marked.
Rather be safe than sorry. Plus we can then say we tried to remove
infringed code from our side.


BTW:
   The tool can be downloaded from the following website.  It's for
MSDOS and Unix. I just compiled SIM 2.21 under Ubuntu 7.10 without
problems.
  http://www.cs.vu.nl/~dick/sim.html
  ftp://ftp.cs.vu.nl/pub/dick/similarity_tester

A quick way to get everything:  wget -nd
ftp://ftp.cs.vu.nl/pub/dick/similarity_tester/*



Regards,
  - Graeme -


___
fpGUI - a cross-platform Free Pascal GUI toolkit
http://opensoft.homeip.net/fpgui/

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: copyright infringement in LCL code

2007-11-13 Thread Graeme Geldenhuys
On 13/11/2007, Graeme Geldenhuys [EMAIL PROTECTED] wrote:

 Oh my!!!   I found quite a bit of code that are marked as copied.  No,
 I'm not talking about the class interfaces which are duplicated or
 purpose.



To prove this point, I attached the output of 'sim_pasc' comparing the
LCL's controls.pas to the Kylix 3 QControls.pas
Even some of the comments are identical!

See attached file for output:
  Line 5-30  (code looks the same)
  Line 60-69  (even comments are the same)
  Line 351-355 (code identical)
  ...etc...



Disclaimer:
There are many false positives!  I'm NOT accusing anybody of any
infringements as I don't know the history of each file and if portions
of the code possibly came from public domain.  I'm just saying it
might be worth a review.



Regards,
  - Graeme -


___
fpGUI - a cross-platform Free Pascal GUI toolkit
http://opensoft.homeip.net/fpgui/


controls.compared.gz
Description: GNU Zip compressed data


Re: [lazarus] The use of Variants?

2007-11-13 Thread Sam Liddicott
* Damien Gerard wrote, On 13/11/07 10:43:

 I don't think nobody is complaining here since everybody is free to
 use it or not. 
 Oh some people complain about the widget encapsulation ??? So they
 don't use QT as well and if they want a multiplatform software what do
 they use ? Java ? :) 

 And as it was said before, why using variants when standard types are
 enough ? Just to see in your code S := N instead of S := IntToStr(N); ?
For your example, you are converting the way that does not require
variants, so of course it shows that variants are not required. Please
excuse this example being in mostly-C;

int s;

if (data.t == D_INT) {
  s=data.t_int.value;
} else if (data.t == D_LONGINT) {
  if (data.t_longint.value  MAXINT) error();
  s=data.t_longint.value);
} else if (data.t == D_STR) {
  errno=0;
  s=strtol(data.t_str.value, NULL. 10);
  if (errno!=0) error();
} else {
  error();
}

(I already spotted some mistakes, imagine maintaining all that rubbish)
At least in C you can come up with a load of helper macros.

And did you try and use COM in the delphi 1 days? It was utterly mad.
People made it work and THEN gave up.

Variants let the programmer concentrate on the meaning of the code when
integrating with other systems. Often the overhead of what was being
controlled was nothing to the overhead of the variant (and of course,
this was being managed by hand in Delphi 1 anyway). And the overhead of
writing code with variants was much less than writing code that did it
all by hand.

People keep re-inventing COM and variants all over the shop because they
don't have com and variants when the need them.


 Variants are good things but they were not created to allow lazy
 programming or implicit convertions. They were made in order to
 provide a dynamic type when you can't know the type of the variable
 (in SQL queries for example).
Maybe that's why there were made,  but they were put into Delphi to
allow implicit conversions from unspecified types from systems that use
unspecified types, and to let Delphi use easily integrate with systems
that use unspecified types.

There's nothing wrong with an implicit conversion if the generated code
is pretty much exactly what you would (should) have explicitly written.

anyway... I think we fully explored other peoples opinions. I think you
don't like variants because they ways in which I (also) think other
people shouldn't use them are bad.

Sam

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: copyright infringement in LCL code

2007-11-13 Thread Dave Coventry
On Nov 13, 2007 12:55 PM, Graeme Geldenhuys [EMAIL PROTECTED] wrote:
 To prove this point, I attached the output of 'sim_pasc' comparing the
 LCL's controls.pas to the Kylix 3 QControls.pas
 Even some of the comments are identical!

 See attached file for output:
   Line 5-30  (code looks the same)
   Line 60-69  (even comments are the same)
   Line 351-355 (code identical)
   ...etc...

Eeep!

Gosh, looks like we opened a can of worms here...

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] copyright infringement in LCL code

2007-11-13 Thread Marc Weustink

Graeme Geldenhuys wrote:

Hi,

Due to the previous discussion of copyright infringement in FPC code,
I downloaded a Similarity Tester (SIM 2.21) and ran it against a few
random selected files, comparing LCL to Kylix 3 source.

Oh my!!!   I found quite a bit of code that are marked as copied.  No,
I'm not talking about the class interfaces which are duplicated or
purpose.


Did you also skip the trivial implementations ?

I know for some parts I wrote myself that they are pretty similar to the 
way delphi had implemented them. Most smaller implementations of a given 
method can only be done in one efficient way. So it make's sense that 
they look equal.



Note:
This tool is automated and fast.  I'm sure _not_ everything it detects
are actual copied code, but it might be worth our while going through
it and verifying the code marked.
Rather be safe than sorry. Plus we can then say we tried to remove
infringed code from our side.


True. The most used pieces of delphi code I recognize, but not the from 
the bit more exotic areas.
We have also had one or two cases where code appeared to be similar, but 
only had a (important) difference in details.


Marc

_
To unsubscribe: mail [EMAIL PROTECTED] with
   unsubscribe as the Subject
  archives at http://www.lazarus.freepascal.org/mailarchives


Re: copyright infringement in LCL code

2007-11-13 Thread Yury Sidorov

From: Graeme Geldenhuys [EMAIL PROTECTED]

On 13/11/2007, Graeme Geldenhuys [EMAIL PROTECTED] wrote:


Oh my!!!   I found quite a bit of code that are marked as copied. 
No,

I'm not talking about the class interfaces which are duplicated or
purpose.




To prove this point, I attached the output of 'sim_pasc' comparing 
the

LCL's controls.pas to the Kylix 3 QControls.pas
Even some of the comments are identical!


It seems you compared QControls.pas to itself :)

File /opt/lazarus/lcl/controls.pas:  cannot open  0 tokens
File /home/graemeg/kylix3/source/clx/QControls.pas: 28925 tokens
Total: 28925 tokens

Yury. 


_
To unsubscribe: mail [EMAIL PROTECTED] with
   unsubscribe as the Subject
  archives at http://www.lazarus.freepascal.org/mailarchives


Re: copyright infringement in LCL code

2007-11-13 Thread Graeme Geldenhuys
On 13/11/2007, Dave Coventry [EMAIL PROTECTED] wrote:

 Gosh, looks like we opened a can of worms here...


We might just have!!  :-)



Regards,
  - Graeme -


___
fpGUI - a cross-platform Free Pascal GUI toolkit
http://opensoft.homeip.net/fpgui/

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: copyright infringement in LCL code

2007-11-13 Thread Marc Weustink

Graeme Geldenhuys wrote:

On 13/11/2007, Graeme Geldenhuys [EMAIL PROTECTED] wrote:

Oh my!!!   I found quite a bit of code that are marked as copied.  No,
I'm not talking about the class interfaces which are duplicated or
purpose.




To prove this point, I attached the output of 'sim_pasc' comparing the
LCL's controls.pas to the Kylix 3 QControls.pas
Even some of the comments are identical!

See attached file for output:
  Line 5-30  (code looks the same)
  Line 60-69  (even comments are the same)
  Line 351-355 (code identical)
  ...etc...


How should I read it ? Does the tool change variable/procedure names ?
(I can't imagine we're using a QWidget)

better not to use CLX sources, they are a bit different than VCL 
(besides the LCL predates CLX)



Marc

_
To unsubscribe: mail [EMAIL PROTECTED] with
   unsubscribe as the Subject
  archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] copyright infringement in LCL code

2007-11-13 Thread Graeme Geldenhuys
On 13/11/2007, Marc Weustink [EMAIL PROTECTED] wrote:

 Did you also skip the trivial implementations ?


Yes, that's why I only listed 3 items in my previous email.  As I
mentioned, that tools isn't perfect and I don't think any automated
tool can be.  At least it highlights the good and bad. Hence the
reason a human needs to review the marked code to get rid of false
positives (which see to be the majority listed).

 method can only be done in one efficient way. So it make's sense that
 they look equal.

I'm not arguing that. I totally agree.. hence the reason I mentioned
'false positives'.



Regards,
  - Graeme -


___
fpGUI - a cross-platform Free Pascal GUI toolkit
http://opensoft.homeip.net/fpgui/

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: copyright infringement in LCL code

2007-11-13 Thread Graeme Geldenhuys
On 13/11/2007, Marc Weustink [EMAIL PROTECTED] wrote:

 How should I read it ? Does the tool change variable/procedure names ?
 (I can't imagine we're using a QWidget)

The tool has a set of language rules which can be adjusted.  They
mentioned in the help that it searches for code patterns.

 better not to use CLX sources, they are a bit different than VCL
 (besides the LCL predates CLX)


I know, it was just a quick test to see how the program works and the
output it generates. The CLX code was all I had available, without
having to boot up my windows VMWare session and copy the Delphi 7
source over to Linux.  Though I'm sure CLX and VCL have a lot of
similar code anyway.

BTW:
  What does FreeCLX contain?  Is that public domain or still Borland copyright?



Regards,
  - Graeme -


___
fpGUI - a cross-platform Free Pascal GUI toolkit
http://opensoft.homeip.net/fpgui/

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Clone objects

2007-11-13 Thread Damien Gerard


On Nov 13, 2007, at 10:51 AM, Damien Gerard wrote:






I modifed the example in order to use a TPanel instead of the TGroupBox.
The read is well done due to the stream in the LFM format is perfect.

But when you try to write components from the stream it does'nt work.


--
Damien Gerard
[EMAIL PROTECTED]



_
To unsubscribe: mail [EMAIL PROTECTED] with
   unsubscribe as the Subject
  archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] The use of Variants?

2007-11-13 Thread Damien Gerard


On Nov 13, 2007, at 12:03 PM, Sam Liddicott wrote:


* Damien Gerard wrote, On 13/11/07 10:43:


I don't think nobody is complaining here since everybody is free to
use it or not.
Oh some people complain about the widget encapsulation ??? So they
don't use QT as well and if they want a multiplatform software what  
do

they use ? Java ? :)

And as it was said before, why using variants when standard types are
enough ? Just to see in your code S := N instead of S :=  
IntToStr(N); ?

For your example, you are converting the way that does not require
variants, so of course it shows that variants are not required. Please
excuse this example being in mostly-C;

int s;

if (data.t == D_INT) {
 s=data.t_int.value;
} else if (data.t == D_LONGINT) {
 if (data.t_longint.value  MAXINT) error();
 s=data.t_longint.value);
} else if (data.t == D_STR) {
 errno=0;
 s=strtol(data.t_str.value, NULL. 10);
 if (errno!=0) error();
} else {
 error();
}


Remind me to kill every one in my team who write this kind of code...




(I already spotted some mistakes, imagine maintaining all that  
rubbish)

At least in C you can come up with a load of helper macros.

And did you try and use COM in the delphi 1 days? It was utterly mad.
People made it work and THEN gave up.


I use Delphi from its first Version under Win3.1. And of course I have  
already used COM Objects.

That was one of the reason I don't like the windows platform.
About COM Objects, I agree, you want variants




Variants let the programmer concentrate on the meaning of the code  
when

integrating with other systems. Often the overhead of what was being
controlled was nothing to the overhead of the variant (and of course,
this was being managed by hand in Delphi 1 anyway). And the overhead  
of

writing code with variants was much less than writing code that did it
all by hand.

People keep re-inventing COM and variants all over the shop because  
they

don't have com and variants when the need them.



Variants are good things but they were not created to allow lazy
programming or implicit convertions. They were made in order to
provide a dynamic type when you can't know the type of the variable
(in SQL queries for example).

Maybe that's why there were made,  but they were put into Delphi to
allow implicit conversions from unspecified types from systems that  
use

unspecified types, and to let Delphi use easily integrate with systems
that use unspecified types.

There's nothing wrong with an implicit conversion if the generated  
code
is pretty much exactly what you would (should) have explicitly  
written.


anyway... I think we fully explored other peoples opinions. I think  
you

don't like variants because they ways in which I (also) think other
people shouldn't use them are bad.



:)
They are not bad. They have to be used for what they have been created  
for :p



Sam




--
Damien Gerard
[EMAIL PROTECTED]



_
To unsubscribe: mail [EMAIL PROTECTED] with
   unsubscribe as the Subject
  archives at http://www.lazarus.freepascal.org/mailarchives


Re: copyright infringement in LCL code

2007-11-13 Thread Dave Coventry
On Nov 13, 2007 1:19 PM, Marc Weustink [EMAIL PROTECTED] wrote:
 Did you really take look at the file ?

 Only in the case where there is a similarity in comments I've doubts
 (also note that this is from Kylix code, written after the LCl existed).
 All other are either mismatches or trivial implementations.

 Marc


I hope so!

I haven't looked at the file (except to glance over Graeme's comparison).

But I'm afraid that I was pretty high-handed with the blogger.

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: copyright infringement in LCL code

2007-11-13 Thread Graeme Geldenhuys
On 13/11/2007, Graeme Geldenhuys [EMAIL PROTECTED] wrote:

 Oops! Well spotted and my mistake.  I attached the new output.  Funny
 enough, most of those I mentioned are still marked. :)


At closer inspection, the program seems to switch between files (yeah,
sounds weird) and sometimes does a comparison against the same file.
This seems to be the case with the one where the comments are the
same.  My bad!  There are a bunch of parameters I can pass to the
program.  I'll read the man page to see if I can tell it not to
compare the same files.


Regards,
  - Graeme -


___
fpGUI - a cross-platform Free Pascal GUI toolkit
http://opensoft.homeip.net/fpgui/

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: copyright infringement in LCL code

2007-11-13 Thread Mattias Gaertner
On Tue, 13 Nov 2007 13:18:32 +0200
Crause, Christo (JC) [EMAIL PROTECTED] wrote:

  It seems you compared QControls.pas to itself :)
  
  File /opt/lazarus/lcl/controls.pas:  cannot open  0 tokens
  File /home/graemeg/kylix3/source/clx/QControls.pas: 28925 tokens
  Total: 28925 tokens
  
  Yury. 
 
 Indeed.  A quick look at the source of the left and right sections
 shows that the source code  is from the same file:
 
 /home/graemeg/kylix3/source/clx/QControls.pas: line
 2579-2605|/home/graemeg/kylix3/source/clx/QControls.pas: line
 2607-2633[132]

I did a quick test comparing VCL/Controls.pas with
lcl/include/control.inc.
It found only very short things. See attachment.


Mattias

File lazarus/lcl/include/control.inc: 18610 tokens
File Vcl/Controls.pas: 58794 tokens
Total: 77404 tokens

lazarus/lcl/include/control.inc: line 2382-2398|Vcl/Controls.pas: line 
3687-3699[84]
procedure TControl.SetName(const Value |procedure TControl.SetName(const Value
var|var
ChangeText: Boolean;   |ChangeText: Boolean;
begin  |begin
ChangeText := (csSetCaption in Control |ChangeText := (csSetCaption in Control
not (csLoading in ComponentState) and  |not (csLoading in ComponentState) and 
((Owner = nil) or not (Owner is TContr |((Owner = nil) or not (Owner is TContr
not (csLoading in TControl(Owner).Comp |not (csLoading in TControl(Owner).Comp
   |inherited SetName(Value);
inherited SetName(Value);  |if ChangeText then Text := Value;
if ChangeText then Text := Value;  |end;
end;   |
   |procedure TControl.SetClientSize(Value
{- |
{  TControl Show   |
{- |
procedure TControl.Show;   |

lazarus/lcl/include/control.inc: line 1007-1022|Vcl/Controls.pas: line 
4540-4552[59]
Function TControl.Perform(Msg:Cardinal |function TControl.Perform(Msg: Cardina
var|var
Message : TLMessage;   |Message: TMessage;
begin  |begin
Message.Msg := Msg;|Message.Msg := Msg;
Message.WParam := WParam;  |Message.WParam := WParam;
Message.LParam := LParam;  |Message.LParam := LParam;
Message.Result := 0;   |Message.Result := 0;
if Self  nil then WindowProc(Message |if Self  nil then WindowProc(Message
Result := Message.Result;  |Result := Message.Result;
end;   |end;
   |
{- |procedure TControl.CalcDockSizes;
TControl.GetClientOrigin   |
-- |
function TControl.GetClientOrigin: TPo |

lazarus/lcl/include/control.inc: line 596-606|Vcl/Controls.pas: line 
5090-5100[55]
function TControl.IsHelpKeyWordStored: |function TControl.IsCaptionStored: Boo
begin  |begin
Result := (ActionLink = nil) or not Ac |Result := (ActionLink = nil) or not Ac
end;   |end;
   |
function TControl.IsOnClickStored: Boo |function TControl.IsEnabledStored: Boo
begin  |begin
Result := (ActionLink = nil) or not Ac |Result := (ActionLink = nil) or not Ac
end;   |end;
   |
function TControl.IsShowHintStored: Bo |function TControl.IsHintStored: Boolea

lazarus/lcl/include/control.inc: line 1044-1056|Vcl/Controls.pas: line 
3597-3606[55]
Function TControl.ScreenToClient(const |function TControl.ScreenToClient(const
var|var
P : TPoint;|Origin: TPoint;
begin  |begin
P := ClientOrigin; |Origin := ClientOrigin;
Result.X := APoint.X - P.X;|Result.X := Point.X - Origin.X;
Result.Y := APoint.Y - P.Y;|Result.Y := Point.Y - Origin.Y;
end;   |end;
   |
{- |procedure TControl.SendCancelMode(Send
Function TControl.ClientToScreen(const |
-- |
Function TControl.ClientToScreen(const |

lazarus/lcl/include/control.inc: line 1056-1068|Vcl/Controls.pas: line 
3588-3597[52]
Function TControl.ClientToScreen(const |function TControl.ClientToScreen(const
var|var
P : TPoint;|Origin: TPoint;
begin  |begin
P := ClientOrigin; |Origin := ClientOrigin;
Result.X := APoint.X + P.X;|Result.X := Point.X + Origin.X;
Result.Y := APoint.Y + P.Y;|Result.Y := Point.Y + Origin.Y;
end;   

Re: copyright infringement in LCL code

2007-11-13 Thread Mattias Gaertner
On Tue, 13 Nov 2007 13:33:10 +0200
Graeme Geldenhuys [EMAIL PROTECTED] wrote:

 On 13/11/2007, Graeme Geldenhuys [EMAIL PROTECTED] wrote:
 
  Oops! Well spotted and my mistake.  I attached the new output.
  Funny enough, most of those I mentioned are still marked. :)
 
 
 At closer inspection, the program seems to switch between files (yeah,
 sounds weird) and sometimes does a comparison against the same file.
 This seems to be the case with the one where the comments are the
 same.  My bad!  There are a bunch of parameters I can pass to the
 program.  I'll read the man page to see if I can tell it not to
 compare the same files.

RTFM

./sim_pasc -s -f -F


Mattias

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: copyright infringement in LCL code

2007-11-13 Thread Graeme Geldenhuys
On 13/11/2007, Mattias Gaertner [EMAIL PROTECTED] wrote:

 RTFM

 ./sim_pasc -s -f -F


heheh... Justed noticed that bit of information myself.


Regards,
  - Graeme -


___
fpGUI - a cross-platform Free Pascal GUI toolkit
http://opensoft.homeip.net/fpgui/

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: copyright infringement in LCL code

2007-11-13 Thread Graeme Geldenhuys
On 13/11/2007, Graeme Geldenhuys [EMAIL PROTECTED] wrote:

 At closer inspection, the program seems to switch between files (yeah,
 sounds weird) and sometimes does a comparison against the same file.

OK, I get it now.  The program can test for code duplicates in the
same file as well. (this could be quite handy for my own work).  You
have to explicitly tell it not to compare a file against itself.

The new results seem much better!!

Regards,
  - Graeme -


___
fpGUI - a cross-platform Free Pascal GUI toolkit
http://opensoft.homeip.net/fpgui/

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Data-aware contols, updateSQL

2007-11-13 Thread Howard Lee Harkness
Thanks. Got a more recent set, and was able to install. Also found
some sketchy documentation, although apparently not quite enough to
figure out how to set up the components. I did get to the point where
I can display the contents of a table in a datagrid, but I get
exceptions when I try to do any update. I think it's due to an autoinc
field. I found a discussion of that on the forum, so I'll take a
closer look tonight. Meanwhile, I'm still looking for a complete
example of a simple database app using ZeosLib and Lazarus/FPC.

On Nov 13, 2007 2:01 AM, Luca Olivetti [EMAIL PROTECTED] wrote:
 En/na Maxim Ganetsky ha escrit:
  Howard Lee Harkness пишет:
  I guess I need to check them out. However, the files on sourceforge
  are about 6 years old. Is there a more recent version of ZeosDB?
 
 
  Yes. See here:
  http://zeosforum.net.ms/

 I thought the official page was http://zeos.firmos.at
 Anyway, I used the trunk from svn, see the Downloading section here:
 http://zeos.firmos.at/viewtopic.php?t=1317

 Bye
 --
 Luca Olivetti
 Wetron Automatización S.A. http://www.wetron.es/
 Tel. +34 93 5883004  Fax +34 93 5883007

 _

 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives




-- 
Howard Lee Harkness
214 269 1171

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Clone objects

2007-11-13 Thread Mattias Gaertner
On Tue, 13 Nov 2007 12:30:46 +0100
Damien Gerard [EMAIL PROTECTED] wrote:

 
 On Nov 13, 2007, at 10:51 AM, Damien Gerard wrote:
 
 
 
 
 I modifed the example in order to use a TPanel instead of the
 TGroupBox. The read is well done due to the stream in the LFM format
 is perfect.
 
 But when you try to write components from the stream it does'nt work.

I'm not sure, what you mean.
You can write components to stream or read components from stream.

I just tested: Changing the TGroupBox with TPanel in the example works.
Just use right click on AGroupBox (designer) / Change class / choose
TPanel and click ok.
Then change (or add) in OnFindClass TGroupBox to TPanel.


Mattias

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] The use of Variants?

2007-11-13 Thread Marco van de Voort
On Tue, Nov 13, 2007 at 09:47:31AM +0200, Graeme Geldenhuys wrote:
 What are your feelings about the use of Variants?  I'm debating this
 in another NG and would like some outside opinion.

Use for what?
 
 My personal opinion on Variants:
 
   *  I don't like them. [if that's a reason]  :-)
   *  They seem like a bit of a hack. Native types seem to be a
   better solution to me, even though it might end up being
   a bit more work (coding wise).
   *  They tend to be slow compared no native types. In
   Delphi 6 they were very slow. How does it compare
   in FPC 2.2.0?

Variants are mainly interesting when communicating with foreign entities
that are not typefast.

Being generic database support (allows to have generic code to talk to
databases, without having the database layout in some structure form
compiled in), COM support, or PHP (www.stack.nl/~marcov/phpser.zip )

They were never meant to be used as normal variables.

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Color detector program

2007-11-13 Thread Valdas Jankūnas

Graeme Geldenhuys rašė:

Hi,

I would like to implement a color detector program.

...


Anybody working on something like this?  I've seen loads of these
applications for Windows, but I need something like that to work under
Linux too.  Any thoughts on how you would implement something like
this?  I guess looking at Felipe's magnifier application should yield
some clues.


 My thoughts: first get desktop screenshoot and then get pixel color of 
that shot at mouse coordinates.


 Or look at GColor2 (http://gcolor2.sourceforge.net/;) color picker 
sources.


--
  Valdas Jankūnas

_
To unsubscribe: mail [EMAIL PROTECTED] with
   unsubscribe as the Subject
  archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Clone objects

2007-11-13 Thread Damien Gerard


On Nov 13, 2007, at 1:19 PM, Mattias Gaertner wrote:


On Tue, 13 Nov 2007 12:30:46 +0100
Damien Gerard [EMAIL PROTECTED] wrote:



On Nov 13, 2007, at 10:51 AM, Damien Gerard wrote:






I modifed the example in order to use a TPanel instead of the
TGroupBox. The read is well done due to the stream in the LFM format
is perfect.

But when you try to write components from the stream it does'nt work.


I'm not sure, what you mean.
You can write components to stream or read components from stream.

I just tested: Changing the TGroupBox with TPanel in the example  
works.

Just use right click on AGroupBox (designer) / Change class / choose
TPanel and click ok.
Then change (or add) in OnFindClass TGroupBox to TPanel.



Oo I am so stupid I found my mistake. It works indeed. Sorry for the  
inconvenience.





Mattias




--
Damien Gerard
[EMAIL PROTECTED]



_
To unsubscribe: mail [EMAIL PROTECTED] with
   unsubscribe as the Subject
  archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] The use of Variants?

2007-11-13 Thread Graeme Geldenhuys
On 13/11/2007, Marco van de Voort [EMAIL PROTECTED] wrote:
 On Tue, Nov 13, 2007 at 09:47:31AM +0200, Graeme Geldenhuys wrote:
  What are your feelings about the use of Variants?  I'm debating this
  in another NG and would like some outside opinion.

 Use for what?

In tiOPF we have a Criteria unit that generates SQL 'where' clauses as
output.  Currently that unit isn't used much - its still in the
development stages.  My initial implementation only uses string types
- probably because my test app used TEdit text boxes as input and that
the required criteria output must always be in string format anyway.
So all methods handle strings parameters only.  We now received a
patch which uses variants to support multiple types like floats, dates
etc...

The tiOPF project is normally against using Variants, so I hesitated
to commit the patch.  So asked the question here, what others think of
variants.

eg of changes in patch...

-procedure   AddBetween(AAttribute, AValue_1, AValue_2: string);
+procedure   AddBetween(AAttribute: string; AValue_1, AValue_2: variant);

-procedure   AddEqualTo(AAttribute, AValue: string); overload;
-procedure   AddEqualTo(AAttribute: string; AValue: integer); overload;
+procedure   AddEqualTo(AAttribute: string; AValue: variant); overload;





   TPerBetweenCriteria = class(TPerValueCriteriaAbs)
   private
-FValue_2: string;
+FValue_2: variant;
   public
-constructor Create(AAttribute, AArg_1, AArg_2: string; ANegative:
boolean = false; AFieldName: string = ''); reintroduce; virtual;
+constructor Create(AAttribute: string; AArg_1, AArg_2: variant;
ANegative: boolean = false; AFieldName: string = ''); reintroduce;
virtual;
 functionGetClause: string; override;
   published
-propertyValue_2: string read FValue_2;
+propertyValue_2: variant read FValue_2;
   end;




 They were never meant to be used as normal variables.

That's what I thought.  And from the above patch snippet, I can't see
variants being justified.


Regards,
  - Graeme -


___
fpGUI - a cross-platform Free Pascal GUI toolkit
http://opensoft.homeip.net/fpgui/

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Color detector program

2007-11-13 Thread Graeme Geldenhuys
On 13/11/2007, Valdas Jankūnas [EMAIL PROTECTED] wrote:

   My thoughts: first get desktop screenshoot and then get pixel color of
 that shot at mouse coordinates.


That would have been my first guess as well, but the color picker I
tried out detects colors while screen data changes.  eg: a flat
toolbar button. on mouse over the button pops out, the color picker
detects the toolbutton border colors. If the app took a screenshot at
startup, it wouldn't have detected the toolbutton borders as they
didn't show at that stage.

Some good news. The color picker I tried was a windows apps.  Using
Ubuntu 7.10 and Wine, it runs like a native linux app without issues.
Wine is excellent these days, so maybe I don't even have to implement
such a tool myself, just keep using the windows one.


Regards,
  - Graeme -


___
fpGUI - a cross-platform Free Pascal GUI toolkit
http://opensoft.homeip.net/fpgui/

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


RE: copyright infringement in LCL code

2007-11-13 Thread Sergio Samayoa
File /opt/lazarus/lcl/controls.pas:  cannot open  0 tokens

File /home/graemeg/kylix3/source/clx/QControls.pas: 28925 tokens

Total: 28925 tokens

 



Re: copyright infringement in LCL code

2007-11-13 Thread Graeme Geldenhuys
On 13/11/2007, Sergio Samayoa [EMAIL PROTECTED] wrote:

 File /opt/lazarus/lcl/controls.pas:  cannot open  0 tokens
 File /home/graemeg/kylix3/source/clx/QControls.pas: 28925
 tokens


I know, read the rest of the thread.


Regards,
  - Graeme -


___
fpGUI - a cross-platform Free Pascal GUI toolkit
http://opensoft.homeip.net/fpgui/

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] The use of Variants?

2007-11-13 Thread Sam Liddicott
* Graeme Geldenhuys wrote, On 13/11/07 12:39:
 On 13/11/2007, Marco van de Voort [EMAIL PROTECTED] wrote:
   
 On Tue, Nov 13, 2007 at 09:47:31AM +0200, Graeme Geldenhuys wrote:
 
 What are your feelings about the use of Variants?  I'm debating this
 in another NG and would like some outside opinion.
   
 Use for what?
 

 In tiOPF we have a Criteria unit that generates SQL 'where' clauses as
 output.  Currently that unit isn't used much - its still in the
 development stages.  My initial implementation only uses string types
 - probably because my test app used TEdit text boxes as input and that
 the required criteria output must always be in string format anyway.
 So all methods handle strings parameters only.  We now received a
 patch which uses variants to support multiple types like floats, dates
 etc...

 The tiOPF project is normally against using Variants, 
this interesting if it is a blanket policy, unless it is a blanket
policy against the blanket use of variants :=)
 so I hesitated
 to commit the patch.  So asked the question here, what others think of
 variants.

 eg of changes in patch...

 -procedure   AddBetween(AAttribute, AValue_1, AValue_2: string);
 +procedure   AddBetween(AAttribute: string; AValue_1, AValue_2: variant);

 -procedure   AddEqualTo(AAttribute, AValue: string); overload;
 -procedure   AddEqualTo(AAttribute: string; AValue: integer); overload;
 +procedure   AddEqualTo(AAttribute: string; AValue: variant); overload;


 


TPerBetweenCriteria = class(TPerValueCriteriaAbs)
private
 -FValue_2: string;
 +FValue_2: variant;
public
 -constructor Create(AAttribute, AArg_1, AArg_2: string; ANegative:
 boolean = false; AFieldName: string = ''); reintroduce; virtual;
 +constructor Create(AAttribute: string; AArg_1, AArg_2: variant;
 ANegative: boolean = false; AFieldName: string = ''); reintroduce;
 virtual;
  functionGetClause: string; override;
published
 -propertyValue_2: string read FValue_2;
 +propertyValue_2: variant read FValue_2;
end;

   
I think that removing the non-variant overloads is un-necessary.
 They were never meant to be used as normal variables.
 

 That's what I thought.  And from the above patch snippet, I can't see
 variants being justified.
   
Certainly the patch itself does not justify use of variants, but it's
the use that would justify it, not the implementation.

What did the contributor have in mind, what was the problem being
solved? Only that can say whether or not use of variant is justified.

However, removal of the non-variant implementations was certainly
overkill, IMHO

...and I thought we were talking about whether or not fpc/lazarus should
retain variants as a feature - if only you had explained...

Sam


Re: [lazarus] The use of Variants?

2007-11-13 Thread Graeme Geldenhuys
On 13/11/2007, Sam Liddicott [EMAIL PROTECTED] wrote:

 The tiOPF project is normally against using Variants,
  this interesting if it is a blanket policy, unless it is a blanket policy
 against the blanket use of variants :=)


tiOPF does contain variants in code, we are just trying to minimize
it's usage and replaced a lot before.  In a previous version of tiOPF
(when we still supported Delphi 6), the timing unit tests showed
exactly how much slower variants were, even compared to other Delphi
versions like 5 and 7.

  However, removal of the non-variant implementations was certainly overkill,
 IMHO

Good point.


  ...and I thought we were talking about whether or not fpc/lazarus should
 retain variants as a feature - if only you had explained...

:-)  Sorry if my intentions were unclear and misleading the thread.


This is the description of the patch included in the email.  Not sure
if attaching the actual patch would make sense, so left it out.  The
snippet I quoted before got the point across, I think.

--
The attached patch does the following:
oChanged Criteria to use variants instead of strings, so it can
cope with more data types (ie floats, dates etc)
oChanges Criteria to generate sql with params instead of string
oAdded TtiQueryParams.SetValueAsVariant to make code cleaner
ounit tests for above
--


Regards,
  - Graeme -


___
fpGUI - a cross-platform Free Pascal GUI toolkit
http://opensoft.homeip.net/fpgui/

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: copyright infringement in LCL code

2007-11-13 Thread Bogusław Brandys

Graeme Geldenhuys wrote:

On 13/11/2007, Mattias Gaertner [EMAIL PROTECTED] wrote:

RTFM

./sim_pasc -s -f -F



heheh... Justed noticed that bit of information myself.


Regards,
  - Graeme -





Please provide updated results with command line options mentioned 
above.I have no access to delphi or kylix sources like many others 
probably (well,I have them partially because I have delphi 5 std but 
I've never looked inside them)



Kind regards
Boguslaw Brandys

_
To unsubscribe: mail [EMAIL PROTECTED] with
   unsubscribe as the Subject
  archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] The use of Variants?

2007-11-13 Thread John

Marco van de Voort wrote:

Being generic database support (allows to have generic code to talk to
databases, without having the database layout in some structure form
compiled in), COM support, or PHP (www.stack.nl/~marcov/phpser.zip )

They were never meant to be used as normal variables.
  
Quite agree.  It is hard to see how you could do database support 
without them, with out using truly ridiculous levels of overloading.  I 
can't see any (sensible) way of doing a key search on a complex key 
without passing an array of variants. 

On the the other hand, I never use them if I can avoid them.  For 
example, I would always typecast a TField to a specific field type and 
use the value property rather than use the AsVariant property of a 
generic TField if I knew the Field type.



cheers,
John Sunderland

_
To unsubscribe: mail [EMAIL PROTECTED] with
   unsubscribe as the Subject
  archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Clone objects

2007-11-13 Thread Damien Gerard




It works ! :) hmm nearly :p
The {Read,Write}ComponentFromBinaryStream methods only clone the  
components which are owned by the provided component (from the  
documentation)


But, using the IDE, I have prepared a Panel with sub components. After  
cloning this panel, the new components does not contain the expected  
children.


The same thing appends if you're using the example. All components  
added by the IDE are not duplicated.


Is there a tip to do it anyway ?


--
Damien Gerard
[EMAIL PROTECTED]



_
To unsubscribe: mail [EMAIL PROTECTED] with
   unsubscribe as the Subject
  archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] The use of Variants?

2007-11-13 Thread Alexsander Rosa
Variants can be NULL. That's a great thing.

2007/11/13, Graeme Geldenhuys [EMAIL PROTECTED]:

 Hi,

 What are your feelings about the use of Variants?  I'm debating this
 in another NG and would like some outside opinion.

 My personal opinion on Variants:

   *  I don't like them. [if that's a reason]  :-)
   *  They seem like a bit of a hack. Native types seem to be a
   better solution to me, even though it might end up being
   a bit more work (coding wise).
   *  They tend to be slow compared no native types. In
   Delphi 6 they were very slow. How does it compare
   in FPC 2.2.0?



 Regards,
   - Graeme -


 ___
 fpGUI - a cross-platform Free Pascal GUI toolkit
 http://opensoft.homeip.net/fpgui/

 _
  To unsubscribe: mail [EMAIL PROTECTED] with
 unsubscribe as the Subject
archives at http://www.lazarus.freepascal.org/mailarchives




-- 
Atenciosamente,

Alexsander da Rosa


Re: [lazarus] Clone objects

2007-11-13 Thread Damien Gerard


On Nov 13, 2007, at 2:42 PM, Damien Gerard wrote:





It works ! :) hmm nearly :p
The {Read,Write}ComponentFromBinaryStream methods only clone the  
components which are owned by the provided component (from the  
documentation)


But, using the IDE, I have prepared a Panel with sub components.  
After cloning this panel, the new components does not contain the  
expected children.


The same thing appends if you're using the example. All components  
added by the IDE are not duplicated.


Is there a tip to do it anyway ?




May be SaveComponentToConfig and SaveComponentToConfig could help ?


--
Damien Gerard
[EMAIL PROTECTED]



_
To unsubscribe: mail [EMAIL PROTECTED] with
   unsubscribe as the Subject
  archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Clone objects

2007-11-13 Thread Damien Gerard


On Nov 13, 2007, at 2:44 PM, Damien Gerard wrote:



On Nov 13, 2007, at 2:42 PM, Damien Gerard wrote:





It works ! :) hmm nearly :p
The {Read,Write}ComponentFromBinaryStream methods only clone the  
components which are owned by the provided component (from the  
documentation)


But, using the IDE, I have prepared a Panel with sub components.  
After cloning this panel, the new components does not contain the  
expected children.


The same thing appends if you're using the example. All components  
added by the IDE are not duplicated.


Is there a tip to do it anyway ?




May be SaveComponentToConfig and SaveComponentToConfig could help ?



Snif it uses ReadComponentFromBinaryStream anyway...


--
Damien Gerard
[EMAIL PROTECTED]



_
To unsubscribe: mail [EMAIL PROTECTED] with
   unsubscribe as the Subject
  archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] The use of Variants?

2007-11-13 Thread Graeme Geldenhuys
On 13/11/2007, Alexsander Rosa [EMAIL PROTECTED] wrote:

 Variants can be NULL. That's a great thing.


We already have NULL support in tiOPF without the use of variants!


Regards,
  - Graeme -


___
fpGUI - a cross-platform Free Pascal GUI toolkit
http://opensoft.homeip.net/fpgui/

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


[lazarus] [fpc] Request about winCE compatibility

2007-11-13 Thread Alvise Nicoletti

Hi...

I know that the question isn't properly your stuff... but I want to try...

Having an application compiled with Lazarus, wich is the restrictions of 
compatibility?
I readed the wiki: 
http://wiki.lazarus.freepascal.org/index.php/Windows_CE_Interface

But I had a little difficulty to understand that...

Actually, the limit is WM 2003 or it will work also on WM 2005?
What about the CPU? Only ARM?

Thank you

_
To unsubscribe: mail [EMAIL PROTECTED] with
   unsubscribe as the Subject
  archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] The use of Variants?

2007-11-13 Thread Alexsander Rosa
How does it work?

2007/11/13, Graeme Geldenhuys [EMAIL PROTECTED]:

 On 13/11/2007, Alexsander Rosa [EMAIL PROTECTED] wrote:

  Variants can be NULL. That's a great thing.
 

 We already have NULL support in tiOPF without the use of variants!


 Regards,
   - Graeme -


 ___
 fpGUI - a cross-platform Free Pascal GUI toolkit
 http://opensoft.homeip.net/fpgui/

 _
  To unsubscribe: mail [EMAIL PROTECTED] with
 unsubscribe as the Subject
archives at http://www.lazarus.freepascal.org/mailarchives




-- 
Atenciosamente,

Alexsander da Rosa


Re: [lazarus] The use of Variants?

2007-11-13 Thread Graeme Geldenhuys
On 13/11/2007, Alexsander Rosa [EMAIL PROTECTED] wrote:
 How does it work?


You can download and view the code from SourceForge.  Or go to the
tiOPF website and get links from their.  http://www.tiopf.com
The unit of interest or standing point would be Source/Core/tiObjects.pas


Regards,
  - Graeme -


___
fpGUI - a cross-platform Free Pascal GUI toolkit
http://opensoft.homeip.net/fpgui/

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: copyright infringement in LCL code

2007-11-13 Thread Mattias Gaertner
On Tue, 13 Nov 2007 14:29:10 +0100
Bogusław Brandys [EMAIL PROTECTED] wrote:

 Graeme Geldenhuys wrote:
  On 13/11/2007, Mattias Gaertner [EMAIL PROTECTED] wrote:
  RTFM
 
  ./sim_pasc -s -f -F
  
  
  heheh... Justed noticed that bit of information myself.
  
  
  Regards,
- Graeme -
  
  
 
 
 Please provide updated results with command line options mentioned 
 above.I have no access to delphi or kylix sources like many others 
 probably (well,I have them partially because I have delphi 5 std but 
 I've never looked inside them)

I sent an example. Search this thread.

Mattias

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Clone objects

2007-11-13 Thread Vincent Snijders

Damien Gerard schreef:

Maybe interesting too:
http://wiki.lazarus.freepascal.org/TSubForm

Vincent

_
To unsubscribe: mail [EMAIL PROTECTED] with
   unsubscribe as the Subject
  archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] [fpc] Request about winCE compatibility

2007-11-13 Thread Felipe Monteiro de Carvalho
On Nov 13, 2007 5:55 PM, Alvise Nicoletti [EMAIL PROTECTED] wrote:
 Actually, the limit is WM 2003 or it will work also on WM 2005?

It's WM 2003 or superior, so it works with 2005 too. It may even work
on older versions, but I never tested.

 What about the CPU? Only ARM?

It's only tested with arm. Given some work of someone interrested it
should work with other architectures too.

-- 
Felipe Monteiro de Carvalho

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Clone objects

2007-11-13 Thread Damien Gerard


On Nov 13, 2007, at 8:29 PM, Vincent Snijders wrote:


Damien Gerard schreef:

Maybe interesting too:
http://wiki.lazarus.freepascal.org/TSubForm

Vincent




Thanks !!


--
Damien Gerard
[EMAIL PROTECTED]



_
To unsubscribe: mail [EMAIL PROTECTED] with
   unsubscribe as the Subject
  archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] suggestion to create laz fixes version

2007-11-13 Thread Bee

Sorry, I meant 0.9.24. A typo.


Which fpc version it's gonna use? fpc stable or fpc fixes? I hope 
Lazarus fixes will use fpc fixes, as I suggested. This way, we'll have 
fixes from both tool (fpc and lazarus). I personally would prefer to use 
this fixes branch for development.


-Bee-

has Bee.ography at:
http://beeography.wordpress.com

_
To unsubscribe: mail [EMAIL PROTECTED] with
   unsubscribe as the Subject
  archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] suggestion to create laz fixes version

2007-11-13 Thread Paul Ishenin

Bee wrote:

Sorry, I meant 0.9.24. A typo.


Which fpc version it's gonna use? fpc stable or fpc fixes? I hope 
Lazarus fixes will use fpc fixes, as I suggested. This way, we'll have 
fixes from both tool (fpc and lazarus). I personally would prefer to use 
this fixes branch for development.


You are about snapshots or sources?

If about snapshots then it is possible to use both fixes. But sources 
will be based on the same version of fpc as lazarus development version 
(in other words on last stable fpc version).


Best regards,
Paul Ishenin.

_
To unsubscribe: mail [EMAIL PROTECTED] with
   unsubscribe as the Subject
  archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] suggestion to create laz fixes version

2007-11-13 Thread Bee

You are about snapshots or sources?


Both, as I suggested before:

- Lazarus 9.24.0 using FPC 2.2.0 (latest stable)
- Lazarus 9.24.1 using FPC 2.2.1 (latest fixes)
- Lazarus 9.25 using FPC 2.3.1 (latest development)

-Bee-

has Bee.ography at:
http://beeography.wordpress.com

_
To unsubscribe: mail [EMAIL PROTECTED] with
   unsubscribe as the Subject
  archives at http://www.lazarus.freepascal.org/mailarchives



Re: [lazarus] suggestion to create laz fixes version

2007-11-13 Thread Paul Ishenin

Bee пишет:

You are about snapshots or sources?


Both, as I suggested before:

- Lazarus 9.24.0 using FPC 2.2.0 (latest stable)
- Lazarus 9.24.1 using FPC 2.2.1 (latest fixes)
- Lazarus 9.25 using FPC 2.3.1 (latest development)



Then lets think of how to release lazarus 0.9.26 before fpc 2.4?

Best regards,
Paul Ishenin.

_
To unsubscribe: mail [EMAIL PROTECTED] with
   unsubscribe as the Subject
  archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] suggestion to create laz fixes version

2007-11-13 Thread Bee

Then lets think of how to release lazarus 0.9.26 before fpc 2.4?


Wouldn't laz 9.26 is based on 9.25 and fpc 2.4 is based on 2.3? This way 
laz release will be always synchronized with fpc release. If we stick 
to this scheme then we shouldn't release laz 9.26 before fpc 2.4 is 
released.


-Bee-

has Bee.ography at:
http://beeography.wordpress.com

_
To unsubscribe: mail [EMAIL PROTECTED] with
   unsubscribe as the Subject
  archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] suggestion to create laz fixes version

2007-11-13 Thread Paul Ishenin

Bee пишет:

Then lets think of how to release lazarus 0.9.26 before fpc 2.4?


Wouldn't laz 9.26 is based on 9.25 and fpc 2.4 is based on 2.3? This way 
laz release will be always synchronized with fpc release. If we stick 
to this scheme then we shouldn't release laz 9.26 before fpc 2.4 is 
released.


Yes, but we have plans to release more often than fpc team - at least 
twice per year, or better once per quarter.



Best regards,
Paul Ishenin.

_
To unsubscribe: mail [EMAIL PROTECTED] with
   unsubscribe as the Subject
  archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] suggestion to create laz fixes version

2007-11-13 Thread Bee
Yes, but we have plans to release more often than fpc team - at least 
twice per year, or better once per quarter.


Using above versioning scheme, we don't need to release often, IMO. 
Because we have fixes branch. People who don't wait too long for 
official stable release should use fixes branch.


I think it's better for both developers and users. Users using stable 
release don't need to fix their codes often, so they can use their own 
stable codes in longer time. Since user's stable codes could last 
longer, it also mean those users won't bother developers.


Users who like to use fixes branch but feel unsecure to use development 
version can always follow fixes from developers without need to wait too 
long for stable release. They also won't bother developers since they 
know the risks of using fixes branch.


So, IMO, everybody wins. ;)

-Bee-

has Bee.ography at:
http://beeography.wordpress.com

_
To unsubscribe: mail [EMAIL PROTECTED] with
   unsubscribe as the Subject
  archives at http://www.lazarus.freepascal.org/mailarchives


RE: [lazarus] The use of Variants?

2007-11-13 Thread Sam Liddicott
The websvn link on http://tiopf.sourceforge.net/SourceCodeRepository.shtml Is 
broken.

Sam

-Original Message-
From: Graeme Geldenhuys [EMAIL PROTECTED]
Sent: 13 November 2007 17:44
To: lazarus@miraclec.com
Subject: Re: [lazarus] The use of Variants?

On 13/11/2007, Alexsander Rosa [EMAIL PROTECTED] wrote:
 How does it work?


You can download and view the code from SourceForge.  Or go to the
tiOPF website and get links from their.  http://www.tiopf.com
The unit of interest or standing point would be Source/Core/tiObjects.pas


Regards,
  - Graeme -


___
fpGUI - a cross-platform Free Pascal GUI toolkit
http://opensoft.homeip.net/fpgui/

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] The use of Variants?

2007-11-13 Thread Graeme Geldenhuys
On 14/11/2007, Sam Liddicott [EMAIL PROTECTED] wrote:
 The websvn link on http://tiopf.sourceforge.net/SourceCodeRepository.shtml Is 
 broken.



The text shown is correct, but the actual link is still the old one.
Thanks, I'll update the website now.


Here is the correct link:   http://tiopf.svn.sourceforge.net/viewvc/tiopf/

Here is some more information on tiOPF and Lazarus.
  http://wiki.lazarus.freepascal.org/tiOPF


Regards,
  - Graeme -


___
fpGUI - a cross-platform Free Pascal GUI toolkit
http://opensoft.homeip.net/fpgui/

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives