Page 2 of 2

Re: MIGRACION DE XHARBOUR A HARBOUR

PostPosted: Wed Jun 25, 2014 10:21 am
by Antonio Linares
Manuel,

ok, se me pasó un detalle:

Code: Select all  Expand view
HB_FUNC( TW_GETDEFAULTSOURCENAME )
{
   hb_retl( TWAIN_GetDefaultSourceName( ( char * ) hb_parc( 1 ) ) );
}

Re: MIGRACION DE XHARBOUR A HARBOUR

PostPosted: Wed Jun 25, 2014 10:22 am
by Antonio Linares
Manuel,

ok, se me pasó este detalle:

Code: Select all  Expand view
HB_FUNC( TW_GETDEFAULTSOURCENAME )
{
   hb_retl( TWAIN_GetDefaultSourceName( ( char * ) hb_parc( 1 ) ) );
}

Re: MIGRACION DE XHARBOUR A HARBOUR

PostPosted: Wed Jun 25, 2014 4:12 pm
by Manuel Valdenebro
He modificado el codigo, pero sigue saliendo lo mismo:

Warning W8075 TSCAN.prg 495: Suspicious pointer conversion in function HB_FUN_TW_GETNEXTSOURCENAME
Warning W8075 TSCAN.prg 505: Suspicious pointer conversion in function HB_FUN_TW_GETDEFAULTSOURCENAME


Por otro lado, cuando llama a un dialogo con recursos (uso Workshop) y en el recurso figura "|", no salen los says, como ocurría con los STYLES:

ACCESO DIALOG 62, 37, 213, 125
STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION
CAPTION "Clave de acceso"
FONT 8, "MS Sans Serif"
{
EDITTEXT 12, 137, 41, 40, 12, ES_PASSWORD | ES_WANTRETURN | WS_BORDER | WS_GROUP | WS_TABSTOP (este no sale)
PUSHBUTTON "&Aceptar", 20, 12, 78, 85, 25
PUSHBUTTON "&Cancelar", 13, 115, 78, 85, 25
EDITTEXT 11, 137, 18, 40, 12, ES_WANTRETURN | WS_BORDER | WS_GROUP | WS_TABSTOP (este no sale)
ICON "KEYS", 10, 21, 23, 18, 20
LTEXT "Usuario", 8, 70, 19, 56, 8
LTEXT "Contraseña", 9, 70, 43, 58, 8
GROUPBOX "", 14, 59, 5, 130, 60, BS_GROUPBOX
}

Re: MIGRACION DE XHARBOUR A HARBOUR

PostPosted: Wed Jun 25, 2014 4:37 pm
by Antonio Linares
Manuel,

Voy a compilarlo aqui y te digo.

En cuanto al RC, lo pruebo en un rato. Justo ahora ando terminando de hacer unas cosas que no pueden esperar.

Re: MIGRACION DE XHARBOUR A HARBOUR

PostPosted: Wed Jun 25, 2014 4:47 pm
by Antonio Linares
Manuel,

Aqui aparecen bien los GETs:

Image

Re: MIGRACION DE XHARBOUR A HARBOUR

PostPosted: Thu Jun 26, 2014 5:12 am
by Manuel Valdenebro
Antonio, ya dí con la tecla.

Tanto desde código como desde recursos, no se permite en GROUP omitir LABEL y que además tenga un contenido:


ESTO NO FUNCIONA

@ 34.0*nRalto, 5*nRancho GROUP oGrupo TO 130.9*nRalto, 190.0*nRancho ;
OF oDlg TRANSPARENT PIXEL

ESTO TAMPOCO
@ 34.0*nRalto, 5*nRancho GROUP oGrupo TO 130.9*nRalto, 190.0*nRancho ;
LABEL '' OF oDlg TRANSPARENT PIXEL

ESTO SI FUNCIONA, con al menos un SPACE en LABEL
@ 34.0*nRalto, 5*nRancho GROUP oGrupo TO 130.9*nRalto, 190.0*nRancho ;
LABEL ' ' OF oDlg TRANSPARENT PIXEL


En algunos GROUP no me gustaría mostrara ninguna LABEL, sino simplemente el rectángulo. ¿Es posible?

Re: MIGRACION DE XHARBOUR A HARBOUR

PostPosted: Thu Jun 26, 2014 8:10 am
by Antonio Linares
Manuel,

Si usas LABEL "" te muestra algún texto ó espacio ?

Re: MIGRACION DE XHARBOUR A HARBOUR

PostPosted: Thu Jun 26, 2014 9:17 am
by Manuel Valdenebro
Antonio Linares wrote:Si usas LABEL "" te muestra algún texto ó espacio ?


El comportamiento es distinto desde código que desde recurso:

En ambos casos, si no pones la etiqueta LABEL o la pones con dos comillas (sin espacio) no funciona. Es decir LABEL "" no funciona.


1) Desde código:
Si pones un espacio entre las comillas funciona,pero deja, logicamente, un espacio en blanco en el rectángulo.

Este sería el fichero ppo desde código con comillas + espacio
oGrupo := TGroup():New( 34.0*nRalto, 5*nRancho, 130.9*nRalto, 190.0*nRancho, " ", oDlg,,, .T.,,, .T.,, )

Este sería el fichero ppo desde código con un contenido en el LABEL "Label del Grupo"
oGrupo := TGroup():New( 34.0*nRalto, 5*nRancho, 130.9*nRalto, 190.0*nRancho, "Label del Grupo", oDlg,,, .T.,,, .T.,, )


2) Desde recursos:
Si pones un espacio entre las comillas NO FUNCIONA, necesita siempre un contenido en el LABEL.

Este sería el fichero ppo desde recurso con comillas + espacio QUE NO FUNCIONA
oGrupo := TGroup():ReDefine( 14, " ", oDlg,,,, .T. )

Este sería el fichero ppo desde recurso con un contenido en el LABEL "Acceso"
oGrupo := TGroup():ReDefine( 14, "Acceso", oDlg,,,, .T. )

EN RESUMEN, que para que funcione y quede bonito, tengo que poner siempre un contenido en el LABEL.

El problema está en la clase Tgroup de FWH-Marzo-2012. He cambiado por la clase tgroup del 2008 y ahora funciona correctamente.
Pero lo suyo es que funcionara con la de Marzo-2012.

Re: MIGRACION DE XHARBOUR A HARBOUR

PostPosted: Thu Jun 26, 2014 1:19 pm
by Antonio Linares
Manuel,

Has comparado el código fuente de la clase TGroup en versión 12.03 con la del 2008 que has usado ?

Con FWH 14.06 funciona correctamente pero te diré que solo hay una línea de diferencia (entre la versión 12.03 y la 14.06):

// FillRect( ::hDC, { 0, 7, aSize[ 2 ] + 2, aSize[ 1 ] + 11 }, ::oBrush:hBrush ) En la versión 14.06 no se usa esta línea

En cuanto al commando (preprocesado) no hay cambios entre ambas versiones.

Logicamente hay muchos cambios en todo FWH desde la versión 12.03 a la versión 14.06.

Re: MIGRACION DE XHARBOUR A HARBOUR

PostPosted: Thu Jun 26, 2014 1:24 pm
by Antonio Linares
Manuel,

En cuanto a las funciones en C que hemos comentado, esté código compila aqui correctamente sin ningún warning:

Code: Select all  Expand view
#pragma BEGINDUMP

#include <windows.h>
#include <hbapi.h>

BOOL TWAIN_GetNextSourceName( LPSTR pzName );

HB_FUNC( TW_GETDEFAULTSOURCENAME )
{
   hb_retl( TWAIN_GetNextSourceName( ( char * ) hb_parc( 1 ) ) );
}

#pragma ENDDUMP

Re: MIGRACION DE XHARBOUR A HARBOUR

PostPosted: Thu Jun 26, 2014 9:33 pm
by Manuel Valdenebro
Antonio Linares wrote:Manuel,
Has comparado el código fuente de la clase TGroup en versión 12.03 con la del 2008 que has usado ?



Si las he comparado y hay muchas cambios, incluso varios métodos añadidos. Por eso, como la versión del 2008 funciona sin problemas, he añadido el módulo a la librería personal y solucionado.

Re: MIGRACION DE XHARBOUR A HARBOUR

PostPosted: Thu Jun 26, 2014 9:36 pm
by Manuel Valdenebro
Antonio Linares wrote:
HB_FUNC( TW_GETDEFAULTSOURCENAME )
{
   hb_retl( TWAIN_GetNextSourceName( ( char * ) hb_parc( 1 ) ) );
}




Con este nuevo código, si compila perfectamente.

Muchas gracias.

Re: MIGRACION DE XHARBOUR A HARBOUR

PostPosted: Thu Jun 26, 2014 9:53 pm
by Antonio Linares
muy bien :-)

Re: MIGRACION DE XHARBOUR A HARBOUR

PostPosted: Mon Jun 30, 2014 5:13 pm
by postinelli
Yo tuve el mismo problema y lo solucioné de la misma forma
copio aqui debajo el codigo anterior que usaba con xHarbour y ahora con Harbour

las unicas 2 modificaciones

realmente es sencillo pasar a Harbour

xHarbour
HB_FUNC( TW_GETNEXTSOURCENAME )
{
hb_retni( TWAIN_GetNextSourceName( hb_parc( 1 ) ) );
}


Harbour
HB_FUNC( TW_GETNEXTSOURCENAME )
{
hb_retni( TWAIN_GetNextSourceName( ( char * ) hb_parc( 1 ) ) );
}

xHarbour
HB_FUNC( TW_GETDEFAULTSOURCENAME )
{
hb_retni( TWAIN_GetDefaultSourceName( hb_parc( 1 ) ));
}

Harbour
HB_FUNC( TW_GETDEFAULTSOURCENAME )
{
hb_retl( TWAIN_GetDefaultSourceName( ( char * ) hb_parc( 1 ) ) );
}

Re: MIGRACION DE XHARBOUR A HARBOUR

PostPosted: Tue Jul 01, 2014 8:51 am
by Manuel Valdenebro
Muchas gracias Postinelli