[Harbour] 2008-10-21 09:35 UTC+0200 Viktor Szakats (harbour.01 syenar hu)

2008-10-21 Thread Szakáts Viktor
2008-10-21 09:35 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
  * source/rtl/console.c
! Fixed typo in hb_dispoutAt() numeric color handling.

  * source/rtl/box.c
* Minor formatting.
--
Brgds,
Viktor

___
Harbour mailing list
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] 2008-10-21 09:35 UTC+0200 Viktor Szakats (harbour.01 syenar hu)

2008-10-21 Thread Jacek Kubica

Hello Victor,

  I`m not sure if this problem is related to latest changes
  but for information :

bcc32.exe -c -q -d -Q -w -w-sig- -tWM -O2 -OS -Ov -Oi -Oc -Iinclude 
-Iobj\b32  -oobj\b32\harbour.obj source\main\harbour.c
source\main\harbour.c:
IF EXIST "bin\b32\harbour.exe" del "bin\b32\harbour.exe" > NUL
bcc32.exe @MAKE0028.@@@
Borland C++ 5.5.1 for Win32 Copyright (c) 1993, 2000 Borland
Turbo Incremental Link 5.00 Copyright (c) 1997, 2000 Borland
Error: Unresolved external '_hb_compExprReduceMIN' referenced from 
C:\HARBOUR\LIB\B32\HBCPLR.LIB|exproptb
Error: Unresolved external '_hb_compExprReduceMAX' referenced from 
C:\HARBOUR\LIB\B32\HBCPLR.LIB|exproptb

Borland C++ Compiler 5.5
MAKE Version 5.2  Copyright (c) 1987, 2000 Borland
TLIB 4.5 Copyright (c) 1987, 1999 Inprise Corporation
Windows Vista Home Premium

-- 
Best regards,
 Jacek Kubica



Poczta zostala przeskanowana przez system antywirusowy i nie zawiera wirusow.
___
Harbour mailing list
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] 2008-10-21 09:35 UTC+0200 Viktor Szakats (harbour.01 syenar hu)

2008-10-21 Thread Przemyslaw Czerpak
[wtorek, 21 pa�dziernik 2008], Jacek Kubica napisa�(a):

Cześć Jacku,

>   I`m not sure if this problem is related to latest changes
>   but for information :
> bcc32.exe -c -q -d -Q -w -w-sig- -tWM -O2 -OS -Ov -Oi -Oc -Iinclude 
> -Iobj\b32  -oobj\b32\harbour.obj source\main\harbour.c
> source\main\harbour.c:
> IF EXIST "bin\b32\harbour.exe" del "bin\b32\harbour.exe" > NUL
> bcc32.exe @MAKE0028.@@@
> Borland C++ 5.5.1 for Win32 Copyright (c) 1993, 2000 Borland
> Turbo Incremental Link 5.00 Copyright (c) 1997, 2000 Borland
> Error: Unresolved external '_hb_compExprReduceMIN' referenced from 
> C:\HARBOUR\LIB\B32\HBCPLR.LIB|exproptb
> Error: Unresolved external '_hb_compExprReduceMAX' referenced from 
> C:\HARBOUR\LIB\B32\HBCPLR.LIB|exproptb

These functions are in common library. Clean build should help.

best regards,
Przemek
___
Harbour mailing list
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


[Harbour] 2008-10-21 13:17 UTC+0100 Miguel Angel Marchuet <[EMAIL PROTECTED]>

2008-10-21 Thread Miguel Angel Marchuet

2008-10-21 13:17 UTC+0100 Miguel Angel Marchuet <[EMAIL PROTECTED]>
  * contrib/xhb/hbcompat.ch
  * contrib/xhb/hbcompat.h
+ added compatibilities.
  * include/fileio.ch
  * source/rtl/filesys.c
* minor syntax correction.

Best regards,
Miguel Angel Marchuet
___
Harbour mailing list
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] 2008-10-21 13:17 UTC+0100 Miguel Angel Marchuet <[EMAIL PROTECTED]>

2008-10-21 Thread Przemyslaw Czerpak
On Tue, 21 Oct 2008, Miguel Angel Marchuet wrote:

Hi Miguel,

> 2008-10-21 13:17 UTC+0100 Miguel Angel Marchuet <[EMAIL PROTECTED]>
>   * contrib/xhb/hbcompat.h
> + added compatibilities.

Thank you for modifications but this one:
   #define hb_retclenAdoptRaw( szText, ulLen )  hb_retclen_buffer( (szText), 
(ulLen) )

can be source of serious problems.
hb_retclen_buffer() always sets '\0' at the end of passed string and
hb_retclenAdoptRaw() in xHarbour doesn't. I strongly preffer that
programmers which create common code for Harbour and xHarbour make
it ready for such situations and in such case then can simply use
hb_retclenAdopt()/hb_retclen_buffer() instead of hb_retclenAdoptRaw()
so such #define is not be necessary at all.
It only pacifies C compiler errors hiding the potential problem and
allow to create buggy binaries.
It should be reverted.

best regards,
Przemek
___
Harbour mailing list
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] 2008-10-21 13:17 UTC+0100 Miguel Angel Marchuet <[EMAIL PROTECTED]>

2008-10-21 Thread Szakáts Viktor

Hi folks,

I wanted to note something similar, as I remember
converting xhb code to Harbour, and these weren't
exactly equivalent.

Brgds,
Viktor

On 2008.10.21., at 13:45, Przemyslaw Czerpak wrote:


On Tue, 21 Oct 2008, Miguel Angel Marchuet wrote:

Hi Miguel,

2008-10-21 13:17 UTC+0100 Miguel Angel Marchuet <[EMAIL PROTECTED] 
>

 * contrib/xhb/hbcompat.h
   + added compatibilities.


Thank you for modifications but this one:
  #define hb_retclenAdoptRaw( szText, ulLen )   
hb_retclen_buffer( (szText), (ulLen) )


can be source of serious problems.
hb_retclen_buffer() always sets '\0' at the end of passed string and
hb_retclenAdoptRaw() in xHarbour doesn't. I strongly preffer that
programmers which create common code for Harbour and xHarbour make
it ready for such situations and in such case then can simply use
hb_retclenAdopt()/hb_retclen_buffer() instead of hb_retclenAdoptRaw()
so such #define is not be necessary at all.
It only pacifies C compiler errors hiding the potential problem and
allow to create buggy binaries.
It should be reverted.

best regards,
Przemek
___
Harbour mailing list
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


___
Harbour mailing list
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


[Harbour] 2008-10-21 14:58 UTC+0200 Viktor Szakats (harbour.01 syenar hu)

2008-10-21 Thread Szakáts Viktor
2008-10-21 14:58 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
  * source/rtl/box.c
! Fixed GPF in hb_dispBox() when box drawing chars 
  were not passed.
--
Brgds,
Viktor

___
Harbour mailing list
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


RE: [Harbour] 2008-10-20 21:16 UTC+0200 Przemyslaw Czerpak(druzus/at/priv.onet.pl)

2008-10-21 Thread Massimo Belgrano
IS this extending GT API adding multiwindow interface and RT GT switching so 
each thread can use its own GT driver tuned for given job.


-Original Message-
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Przemyslaw 
Czerpak
Sent: Monday, October 20, 2008 9:17 PM
To: harbour@harbour-project.org
Subject: [Harbour] 2008-10-20 21:16 UTC+0200 Przemyslaw 
Czerpak(druzus/at/priv.onet.pl)

2008-10-20 21:16 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
  * harbour/contrib/hbct/ctwin.c
* moved internal CTW data to structure allocated dynamically and
  hold by inside current thread GT (HB_GT) to eliminate static
  variables used by GTCTW. Now each thread can have its own
  independent set of CTWindows if it allocated new GT.

  * harbour/contrib/hbct/tests/ctwtest.prg
* removed two unused local variables

best regards
Przemek
___
Harbour mailing list
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour
___
Harbour mailing list
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


RE: [Harbour] A standard for the Harbour's SQL libs

2008-10-21 Thread Massimo Belgrano
Hi Mindaugas,

can you add to svn?

Anybody have different proposal?


-Original Message-
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Mindaugas 
Kavaliauskas
Sent: Monday, October 13, 2008 1:00 PM
To: Harbour Project Main Developer List.
Subject: Re: [Harbour] A standard for the Harbour's SQL libs

Hi,


Przemyslaw Czerpak wrote:
> Before you will started the work then I suggest you to look at CLIP 
> project - you will find in SF.

I've looked to CLIP code. The basic idea (Clip's SQL interface gives 
possibility to access SQL databases, but are not plug-and-play tool for DBF to 
SQL migration) seams to be the same. I also see a lot of similarities in 
implementation. Of cause some differences exists, the main differences are:

1) CLIP uses different function names to RDD and SQL. For example, it uses 
SQLGOBOTTOM() instead of DBGOBOTTOM(). My implementation is uses RDD interface. 
Some new SQL functionality is obtained using RDDINFO() call. For example, I use:
RDDINFO(RDDI_EXECUTE, "DROP TABLE something") instead of
SQLEXECUTE("DROP TABLE something")
but these SQL*() functions can be easy implemented. Actually, the same 
situation is in DBF implementation. You can use
DBORDERINFO(DBOI_ORDERCOUNT) or ORDCOUNT().

2) I guess CLIP does not have possibility to access field values using names, 
i.e.
   FIELD NAME
   ? NAME
is impossible, the only way to get field value is:
   ? SQLGETVALUE(1)  // 1 is field number

I found it a drawback. Using native Clipper syntax support for accessing field 
is a big benefit, it make code much more shorter and readable.


Of cause, there are some implementation differences. CLIP has prepare() 
method, but I know MySQL the best from SQL API's and it did not use 
prepare function, so I haven't included it into SQL database driver 
method table. The similar situation is for start(), commit(), 
rollback(). In MySQL you need to do execute() call with parameter 
"commit" or "rollback". I have not added BLOB suport yet.


The few problems have to be solved writing RDD for SQL access. One is 
NULL/NIL question? Another is: should we PAD field values for SQL RDD to 
be compatible with DBF RDD's?


I attach some of my code (only MySQL database driver) is included:
sqlbase.c - basic RDD for interfacing with SQL database driver;
sqlmix.c - this RDD implements indexes using B-trees in memory.
   It is inherited from SQLBASE;
mysqldd.c - SQL database driver for MySQL;
hbsqldd.h - include files for all above. Some defines should be moved
   to should dbinfo.ch;
test1.prg - test code.

I hope you'll be able to compile it.


Best regards,
Mindaugas

___
Harbour mailing list
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


RE: [Harbour] A standard for the Harbour's SQL libs

2008-10-21 Thread Massimo Belgrano
My provider has defered sending of email
It wat 3 days old
Now Viktor have already made this my old suggestion
Thanks

-Original Message-
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Massimo Belgrano
Sent: Monday, October 20, 2008 3:36 PM
To: Harbour Project Main Developer List.
Subject: RE: [Harbour] A standard for the Harbour's SQL libs

Hi Mindaugas,

can you add to svn?

Anybody have different proposal?


-Original Message-
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Mindaugas 
Kavaliauskas
Sent: Monday, October 13, 2008 1:00 PM
To: Harbour Project Main Developer List.
Subject: Re: [Harbour] A standard for the Harbour's SQL libs

Hi,


Przemyslaw Czerpak wrote:
> Before you will started the work then I suggest you to look at CLIP 
> project - you will find in SF.

I've looked to CLIP code. The basic idea (Clip's SQL interface gives 
possibility to access SQL databases, but are not plug-and-play tool for DBF to 
SQL migration) seams to be the same. I also see a lot of similarities in 
implementation. Of cause some differences exists, the main differences are:

1) CLIP uses different function names to RDD and SQL. For example, it uses 
SQLGOBOTTOM() instead of DBGOBOTTOM(). My implementation is uses RDD interface. 
Some new SQL functionality is obtained using RDDINFO() call. For example, I use:
RDDINFO(RDDI_EXECUTE, "DROP TABLE something") instead of
SQLEXECUTE("DROP TABLE something")
but these SQL*() functions can be easy implemented. Actually, the same 
situation is in DBF implementation. You can use
DBORDERINFO(DBOI_ORDERCOUNT) or ORDCOUNT().

2) I guess CLIP does not have possibility to access field values using names, 
i.e.
   FIELD NAME
   ? NAME
is impossible, the only way to get field value is:
   ? SQLGETVALUE(1)  // 1 is field number

I found it a drawback. Using native Clipper syntax support for accessing field 
is a big benefit, it make code much more shorter and readable.


Of cause, there are some implementation differences. CLIP has prepare() method, 
but I know MySQL the best from SQL API's and it did not use prepare function, 
so I haven't included it into SQL database driver method table. The similar 
situation is for start(), commit(), rollback(). In MySQL you need to do 
execute() call with parameter "commit" or "rollback". I have not added BLOB 
suport yet.


The few problems have to be solved writing RDD for SQL access. One is NULL/NIL 
question? Another is: should we PAD field values for SQL RDD to be compatible 
with DBF RDD's?


I attach some of my code (only MySQL database driver) is included:
sqlbase.c - basic RDD for interfacing with SQL database driver; sqlmix.c - this 
RDD implements indexes using B-trees in memory.
   It is inherited from SQLBASE;
mysqldd.c - SQL database driver for MySQL; hbsqldd.h - include files for all 
above. Some defines should be moved
   to should dbinfo.ch;
test1.prg - test code.

I hope you'll be able to compile it.


Best regards,
Mindaugas

___
Harbour mailing list
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


[Harbour] New SQL classes #1

2008-10-21 Thread Lorenzo Fiorini
After looking JDBC, PHP Pear DB, OCI8, CLip docs I would suggest:

1 - to follow the JDBC standard as close as possible:
big players like Oracle, IBM, Sun (mysql) are heavily committed to
JDBC and surely in it all options are considered and implemented. This
doesn't mean we need to do everything exactly in the same way but a
developer that follow the JDBC tutorial
http://java.sun.com/docs/books/tutorial/jdbc/index.html should feel at home

2 - to "import" some interesting features from PHP:
like the use of hashes to retrieve values beside the classic fieldget(
"fieldname" ) or autoPrepare & autoExecute see:
http://pear.php.net/manual/en/package.database.db.php

3 - to have as much "drivers" as possible. Having only one or two
drivers will not change anything. We need a "native" multiplatform
driver for each major player like Oracle, Db2, MySql, PostgreSQL,
MSSQL(Ado), SQLIte, ODBC.

Clearly I don't expect that a trained Java developer will move to
Harbour, but IMHO there are many developers that find Java and .Net
too "heavy" but PHP/ASP not suitable for desktop apps but that know
those languages.

To achieve these goals I would suggest:

1 - to follow step by step JDBC tutorial that is after made the
changes required by the syntax the examples should work. This means to
implement for every driver:

- DriverManager
- Connection
- Statement
- PreparedStatement
- CallableStatement
- ResultSet

and if possible:

- RowSet
- BLOB, CLOB
- XML
- ...

2 - to forget about the driver's "nature" for the moment and add dirs
like HdbcOdbc, HdbcOr, HdbcMy, HdbcPg, HdbcSl, HdbcFb,  to contrib

It would also be a good start to have a standard set of tables ( like
Oracle's HR ) and a set of common tests to compare the results.

Now the hard thing the resources:

- at least one PRG developer for each driver
- C developers for the interfaces
- testers and users to:
-- test various DBMS under OSes
-- write doc about differences between drivers
-- write test cases

I would also remind that:

PostgreSQL has a BSD license so it's really free for every use and has
binaries installers for almost every OS at www.postgresql.org

Oracle has an Express Edition "Free to develop, deploy, and
distribute" for Linux and Win at
http://www.oracle.com/technology/products/database/xe/index.html
An interesting OCI C Interface read is
http://www.oracle.com/technology/tech/oci/pdf/building-best-drivers.v9.pdf

IBM has an Express Edition of DB2 for Linux and Win at www.ibm.com/db2/express
The CLI C interface is very close to the odbc one.

MySql comes with a dual license: pure GPL and commercial.
So linking MySql client without a commercial license results in a GPL
application.

CLip is GPL so please don't copy any code. I would also suggest to
don't download and don't look at the real code. Use only the doc.

Suggestions and comments are welcome.

best regards,
Lorenzo
___
Harbour mailing list
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] 2008-10-21 13:17 UTC+0100 Miguel Angel Marchuet <[EMAIL PROTECTED]>

2008-10-21 Thread Miguel Angel Marchuet

Is possible, what do you thing about this function.

Can i use hb_retclenAdopt instead of hb_retclenAdoptRaw in this case ?

or is necessary ?


HB_FUNC( UTF8TOWIDE )  // ( cAnsiStr ) -> cWideStr
{
   char *cString = hb_parc( 1 );

   if( cString )
   {
  BSTR wString = hb_oleUTF8ToWide( cString );

  if( wString )
  {
 hb_retclenAdoptRaw( (char *) wString, SysStringLen( wString ) );
 return;
  }
   }

   hb_ret();
   return;
}

//---//

HB_EXPORT LPWSTR hb_oleUTF8ToWide( LPSTR cString )
{
   int nConvertedLen = MultiByteToWideChar( CP_UTF8, 0, cString, -1, NULL, 0 );

   if( nConvertedLen )
   {
  LPWSTR wString = (LPWSTR) hb_xgrab( nConvertedLen * 3 );

  if( MultiByteToWideChar( CP_UTF8, 0, cString, -1, wString, nConvertedLen 
) )
  {
 return (LPWSTR) wString;
  }
  else
  {
 hb_xfree( wString );
  }
   }

   return NULL;
}

Best regards,
Miguel Angel Marchuet

Przemyslaw Czerpak escribió:

On Tue, 21 Oct 2008, Miguel Angel Marchuet wrote:

Hi Miguel,


2008-10-21 13:17 UTC+0100 Miguel Angel Marchuet <[EMAIL PROTECTED]>
  * contrib/xhb/hbcompat.h
+ added compatibilities.


Thank you for modifications but this one:
   #define hb_retclenAdoptRaw( szText, ulLen )  hb_retclen_buffer( (szText), 
(ulLen) )

can be source of serious problems.
hb_retclen_buffer() always sets '\0' at the end of passed string and
hb_retclenAdoptRaw() in xHarbour doesn't. I strongly preffer that
programmers which create common code for Harbour and xHarbour make
it ready for such situations and in such case then can simply use
hb_retclenAdopt()/hb_retclen_buffer() instead of hb_retclenAdoptRaw()
so such #define is not be necessary at all.
It only pacifies C compiler errors hiding the potential problem and
allow to create buggy binaries.
It should be reverted.

best regards,
Przemek
___
Harbour mailing list
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour

__ Informaci�n de ESET NOD32 Antivirus, versi�n de la base de firmas de 
virus 3542 (20081021) __

ESET NOD32 Antivirus ha comprobado este mensaje.
http://www.eset.com





___
Harbour mailing list
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] 2008-10-21 13:17 UTC+0100 Miguel Angel Marchuet <[EMAIL PROTECTED]>r

2008-10-21 Thread Przemyslaw Czerpak
On Tue, 21 Oct 2008, Miguel Angel Marchuet wrote:

Hi Miguel,

> Is possible, what do you thing about this function.
> Can i use hb_retclenAdopt instead of hb_retclenAdoptRaw in this case ?
> or is necessary ?

You have to and in this case you should 1-st fix the conversion code
or it may cause unexpected results like GPF.

Below is corrected version (not tested just written).

best regards,
Przemek


HB_FUNC( UTF8TOWIDE )  // ( cAnsiStr ) -> cWideStr
{
   char *cString = hb_parc( 1 );

   if( cString )
   {
  DWORD length;
  wchar_t * wString;

  length = MultiByteToWideChar( CP_UTF8, 0, cString, -1, NULL, 0 );
  wString = ( wchar_t * ) hb_xgrab( ( length + 1 ) * sizeof( wchar_t ) );
  MultiByteToWideChar( CP_UTF8, 0, cString, -1, wString, length + 1 );
  hb_retclen_buffer( ( char * ) wString, length * sizeof( wchar_t ) );
   }
}
___
Harbour mailing list
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


[Harbour] FYI MSVS2008 and Win9x

2008-10-21 Thread Szakáts Viktor

Hi all,

FYI, MSVS 2008 has a notable downside: programs won't
work on Win9x and also WinNT.

[ This also means that UNICODE can be turned on by default
for MSVS2008 (and upper) builds. ]

MSVS 2005 is fine.

Brgds,
Viktor

___
Harbour mailing list
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] 2008-10-21 13:17 UTC+0100 Miguel Angel Marchuet <[EMAIL PROTECTED]>r

2008-10-21 Thread Miguel Angel Marchuet




Many thks for you help.

I like too upload this function and other similars to harbour's cvs

Where do you think is the best site to upload it ?

Best regards,
Miguel Angel Marchuet

Przemyslaw Czerpak escribió:

  On Tue, 21 Oct 2008, Miguel Angel Marchuet wrote:

Hi Miguel,

  
  
Is possible, what do you thing about this function.
Can i use hb_retclenAdopt instead of hb_retclenAdoptRaw in this case ?
or is necessary ?

  
  
You have to and in this case you should 1-st fix the conversion code
or it may cause unexpected results like GPF.

Below is corrected version (not tested just written).

best regards,
Przemek


HB_FUNC( UTF8TOWIDE )  // ( cAnsiStr ) -> cWideStr
{
   char *cString = hb_parc( 1 );

   if( cString )
   {
  DWORD length;
  wchar_t * wString;

  length = MultiByteToWideChar( CP_UTF8, 0, cString, -1, NULL, 0 );
  wString = ( wchar_t * ) hb_xgrab( ( length + 1 ) * sizeof( wchar_t ) );
  MultiByteToWideChar( CP_UTF8, 0, cString, -1, wString, length + 1 );
  hb_retclen_buffer( ( char * ) wString, length * sizeof( wchar_t ) );
   }
}
___
Harbour mailing list
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour

__ Informaci�n de ESET Smart Security, versi�n de la base de firmas de virus 3543 (20081021) __

ESET Smart Security ha comprobado este mensaje.
http://www.eset.com



  



___
Harbour mailing list
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] 2008-10-21 13:17 UTC+0100 Miguel Angel Marchuet <[EMAIL PROTECTED]>r

2008-10-21 Thread Szakáts Viktor

Hi Miguel,

contrib/hbwin

Note that there are already almost exactly the same
functions (except the encoding setting) for ANSI/WIDE
conversion in win_ole.c. You may want to take a look
at them.

Maybe the best would be to have all these Win text
conversions gathered in one .c file.

Brgds,
Viktor

On 2008.10.21., at 21:30, Miguel Angel Marchuet wrote:


Many thks for you help.

I like too upload this function and other similars to harbour's cvs

Where do you think is the best site to upload it ?

Best regards,
Miguel Angel Marchuet

Przemyslaw Czerpak escribió:


On Tue, 21 Oct 2008, Miguel Angel Marchuet wrote:

Hi Miguel,



Is possible, what do you thing about this function.
Can i use hb_retclenAdopt instead of hb_retclenAdoptRaw in this  
case ?

or is necessary ?


You have to and in this case you should 1-st fix the conversion code
or it may cause unexpected results like GPF.

Below is corrected version (not tested just written).

best regards,
Przemek


HB_FUNC( UTF8TOWIDE )  // ( cAnsiStr ) -> cWideStr
{
   char *cString = hb_parc( 1 );

   if( cString )
   {
  DWORD length;
  wchar_t * wString;

  length = MultiByteToWideChar( CP_UTF8, 0, cString, -1, NULL,  
0 );
  wString = ( wchar_t * ) hb_xgrab( ( length + 1 ) *  
sizeof( wchar_t ) );
  MultiByteToWideChar( CP_UTF8, 0, cString, -1, wString, length  
+ 1 );
  hb_retclen_buffer( ( char * ) wString, length *  
sizeof( wchar_t ) );

   }
}
___
Harbour mailing list
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour

__ Informaci�n de ESET Smart Security, versi�n de la  
base de firmas de virus 3543 (20081021) __


ESET Smart Security ha comprobado este mensaje.
http://www.eset.com





___
Harbour mailing list
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


___
Harbour mailing list
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


[Harbour] 2008-10-21 22:18 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)

2008-10-21 Thread Przemyslaw Czerpak
2008-10-21 22:18 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
  * harbour/include/hbapigt.h
  * harbour/source/rtl/console.c
  * harbour/source/rtl/filesys.c
* use HB_STD{IN,OUT,ERR}_HANDLE macros instead of hard coded values

  * harbour/include/hbgtcore.h
  * harbour/source/rtl/hbgtcore.c
  * harbour/source/rtl/gtapi.c
+ added optional support for dynamic supertables
+ added reference counter to HB_GT_BASE structure
- removed hb_gtUnLoad() function
+ added hb_gtAlloc(), hb_gtRelease(), hb_gtAttach()
+ added hb_gtRealod() function which unloads current GT driver
  and loads given new one
+ added .prg function HB_GTRELOAD(  ) -> 
  This function allow to switch active GT driver at run time.
  It can be also used to simulate removed HB_NOSTARTUPWINDOW()
  functionality. F.e.:

 REQUEST HB_GT_WVT
 REQUEST HB_GT_NUL_DEFAULT
 proc main()
// do some initializations...
hb_gtReload( "WVT" )
// rest of code...
 return

  Please remember that some GTs may refuse initialization due to
  missing required resources and instead of return FALSE they can
  interrupt program with internal error, just like at application
  startup so it's not guarantied that this function always returns.

  * harbour/contrib/hbct/ctwin.c
* updated for new GT API
+ added support for dynamic supertable to allow using CTWIN in the
  same time with different GTs.

  * harbour/contrib/xhb/hbcompat.h
- removed hb_retclenAdoptRaw translation

best regards
Przemek
___
Harbour mailing list
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] 2008-10-21 22:18 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)

2008-10-21 Thread Pritpal Bedi



Przemyslaw Czerpak-2 wrote:
> 
> 2008-10-21 22:18 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
>   * harbour/include/hbapigt.h
>   * harbour/source/rtl/console.c
>   ...
> 

So groundwork for multi-window GT is under construction !

Regards
Pritpal Bedi

-- 
View this message in context: 
http://www.nabble.com/2008-10-21-22%3A18-UTC%2B0200-Przemyslaw-Czerpak-%28druzus-at-priv.onet.pl%29-tp20098580p20099617.html
Sent from the Harbour - Dev mailing list archive at Nabble.com.

___
Harbour mailing list
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


[Harbour] 2008-10-21 17:15 UTC-0500 Teo Fonrouge (teo/at/windtelsoft/dot/com)

2008-10-21 Thread Teo Fonrouge
2008-10-21 17:15 UTC-0500 Teo Fonrouge (teo/at/windtelsoft/dot/com)
  * source/debug/debugger.prg
! Fixed error when moving in the call stack window to an source prg
  not included in the path, and a ::oWndVars (Monitor of vars) is opened.

best regards,

Teo
___
Harbour mailing list
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [SPAM] Re: [Harbour] 2008-10-09 20:51 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)

2008-10-21 Thread Francesco Saverio Giudice

Hi Przemek,

Il 09/10/2008 23.00, Przemyslaw Czerpak ha scritto:

F.e. it looks that xbase++ can have methods and object variables
with the same name. It means that:
   ? o:var
gives different code then:
   ? o:var()
or at least documentation it wrong describing :atStart and :atEnd
methods and variables.
It's interesting functionality I even wanted to add but it's not
Clipper compatible though probably we can hide the difference
by introducing "suggested" action to PCODE so o:var() will work
as o:var when there is no method with the name "var".
If other developers think it's important then I can add such
extension.


I have just now finished to discuss about this with Pritpal, at whom I 
was describing that I have partially lost 2 days because I'm porting a 
lib of mine to harbour from xharbour and today I have found that one of 
problems was exactly the contrary of above functionality: send a value 
to a method using assignment and not parenthesis. What you wrote above 
it seems to me that it's already implemented.


Values on right are Clipper - Harbour results

PROCEDURE Main()

  LOCAL o := GetNew()

  // var in harbour
  ? o:cargo()// <-- NIL - NIL
  ? o:cargo := 10// <-- 10  - 10
  ? o:cargo( 30 )// <-- 30  - 10
  ? o:cargo()// <-- 30  - 10

  // setget in harbour
  ? o:col := 5   // <--  5  -  5
  ? o:col( 10 )  // <--  5  - 10
  ? o:col()  // <--  5  - 10

  o := ErrorNew()

  ? o:cargo := 10// <-- 10  - 10
  ? o:cargo( 30 )// <-- 10  - 10
  ? o:cargo()// <-- 10  - 10

  o := TBrowseNew()

  ? o:cargo := 10// <-- 10  - 10
  ? o:cargo( 30 )// <-- 10  - 10
  ? o:cargo()// <-- 10  - 10

  // setget in harbour
  ? o:nTop   // <--  0  -  0
  ? o:nTop := 7  // <--  7  -  7
  ? o:nTop( 9 )  // <--  9  -  9
  ? o:nTop() // <--  9  -  9

RETURN

but also in clipper if you wrote:

oTBrowse:addColumn := oTBColumns

it gives error.

So there are some point where Clipper permits to assign values using 
parenthesis and in other not, but surely because classes are implemented 
differently. In any case it permits to read a value using parenthesis.


Harbour already permits to read all using parenthesis.

The need is to permit assignment to a function assigning rvalue so:
o:AssignMethod := 1
it should be the same of
o:AssignMethod( 1 )

or

oTBrowse:addColumn := oTBColumns

In case of a var not exists with same name of a method (but today can it 
exists ?).


Best Regards

Francesco

___
Harbour mailing list
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


[Harbour] 2008-10-22 05:03 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)

2008-10-21 Thread Przemyslaw Czerpak
2008-10-22 05:03 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
  * harbour/include/hbstack.h
  * harbour/include/hbgtcore.h
  * harbour/include/hbthread.h
  * harbour/include/hbapigt.h
  * harbour/source/vm/estack.c
  * harbour/source/vm/hvm.c
  * harbour/source/vm/thread.c
  * harbour/source/rtl/hbgtcore.c
+ added support for optional allocating independent console window by
  each thread. By default new thread inherits console Window from
  parent thread. But each thread can allocate its own console window
  by calling hb_gtReload(  ) function, f.e. by:
 hb_gtReload( hb_gtVersion() )
  If GT driver supports such functionality then new it will allocate
  new console windows.
  Each console window has reference counter which is increased when
  new thread starts and decreased when hb_gtReload() is executed or
  thread terminates. When counter reach zero give console window is
  destroyed.

  * harbour/source/rtl/gtwvt/gtwvt.c
! use SendNotifyMessage() instead of SendMessage() to not block
  threads which inherited GT from parent thread. Why non of MS-Win
  users reported this problem?
+ added reference counter to window class for multi GT support

  + harbour/tests/mt/mttest10.prg
+ added demonstration/test code for using independent console window
  in different threads. It needs GT driver which supports such
  functionality, f.e GTXWC in *nixes or GTWVT in MS-Windows

  * harbour/tests/mt/mttest09.prg
! fixed typo in comment

best regards
Przemek
___
Harbour mailing list
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] 2008-10-22 05:03 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)

2008-10-21 Thread Pritpal Bedi

Hello Przemek


Przemyslaw Czerpak-2 wrote:
> 
> 2008-10-22 05:03 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
>   * harbour/include/hbstack.h
>   * harbour/include/hbgtcore.h
> 

Thanks a lot.

May be I am missing something, mttest10.exe executes but nothing is 
visible on the screen. And there is no referenceto the executable in the 
task manager.

I set HB_MT=MT
bld_b32 mttest10 

Regards
Pritpal Bedi

-- 
View this message in context: 
http://www.nabble.com/2008-10-22-05%3A03-UTC%2B0200-Przemyslaw-Czerpak-%28druzus-at-priv.onet.pl%29-tp20103219p20103476.html
Sent from the Harbour - Dev mailing list archive at Nabble.com.

___
Harbour mailing list
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] 2008-10-22 05:03 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)

2008-10-21 Thread Pritpal Bedi

Hello Przemek


Hello Przemek


Przemyslaw Czerpak-2 wrote:
> 
> 2008-10-22 05:03 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
>   * harbour/include/hbstack.h
>   * harbour/include/hbgtcore.h
> 

Please ignore my previos post.
May be build process needs something more.
I tried with my tests/wvtext.prg with my own tools, works fine.

Excellent!!! Flawless!!! And exactly what I had in mind. Mindblowing
Hats off to you.

With best Regards
Pritpal Bedi

-- 
View this message in context: 
http://www.nabble.com/2008-10-22-05%3A03-UTC%2B0200-Przemyslaw-Czerpak-%28druzus-at-priv.onet.pl%29-tp20103219p20104237.html
Sent from the Harbour - Dev mailing list archive at Nabble.com.

___
Harbour mailing list
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


[Harbour] 2008-10-22 23:01 UTC-0800 Pritpal Bedi ([EMAIL PROTECTED])

2008-10-21 Thread Pritpal Bedi

2008-10-22 23:01 UTC-0800 Pritpal Bedi ([EMAIL PROTECTED])
  * harbour/tests/wvtext.prg
Updated to demonstrate multi-windows GT capabilities.

A REMINDER : This development alone places Harbour much higher than 
 so many dialects. Mind-blowing feature. I had ever longed
 for this functionality since I started with Xbase++.
 But the ease of use of a MW-GT in Harbour is far superior
 than in Xbase++. Spread this word. I am sure this feature
 alone is going to add a handsome value to my applications.
 I hope you all will be benefitted.

 I have no word of appreciation for Przemyslaw Czerpak as
 whatever I will say will fall short of weight. So...

Regards
Pritpal Bedi
-- 
View this message in context: 
http://www.nabble.com/2008-10-22-23%3A01-UTC-0800-Pritpal-Bedi-%28pritpal%40vouchcac.com%29-tp20104575p20104575.html
Sent from the Harbour - Dev mailing list archive at Nabble.com.

___
Harbour mailing list
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] 2008-10-22 05:03 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)

2008-10-21 Thread Bill Smith
In SuSE 10.3, using gcc I get:

Harbour 1.1.0dev (Rev. 9582)
Copyright (c) 1999-2008, http://www.harbour-project.org/
Compiling 'wvtext.prg'...
Lines 794, Functions/Procedures 9
Generating C source output to 'wvtext.c'... Done.
./wvtext.o:(.data+0x1b8): undefined reference to `HB_FUN_HB_GT_WVT'
./wvtext.o:(.data+0x1c8): undefined reference to `HB_FUN_HB_GT_WIN'
collect2: ld returned 1 exit status

In XP, using bcc32, the program compiles successfully, but when
wvtext.exe is run, the program promptly returns to the prompt with
nothing else visible on the screen.

Are environment parameters required?

Bill



On Tue, 2008-10-21 at 20:38 -0700, Pritpal Bedi wrote:
> Hello Przemek
> 
> 
> Przemyslaw Czerpak-2 wrote:
> > 
> > 2008-10-22 05:03 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
> >   * harbour/include/hbstack.h
> >   * harbour/include/hbgtcore.h
> > 
> 
> Thanks a lot.
> 
> May be I am missing something, mttest10.exe executes but nothing is 
> visible on the screen. And there is no referenceto the executable in the 
> task manager.
> 
> I set HB_MT=MT
> bld_b32 mttest10 
> 
> Regards
> Pritpal Bedi
> 

___
Harbour mailing list
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour