Página 1 de 1
Compilando Hwgui+xHarbour com BCC 7x
Enviado: 29 Fev 2024 13:49
por sygecom
Já reportei lá que tem outros erros, em xharbour
source\cross\hdrawn.prg(688) Error E0020 Incomplete statement or unbalanced delimiters
source\cross\hdrawn.prg(716) Error E0030 Syntax error: "syntax error at '}'"
xHarbour 1.2.3 Intl. (SimpLex) (Build 20170228)
Copyright 1999-2017,
http://www.xharbour.org http://www.harbour-project.org/
Type: C >>>Couldn't build: hdrawn.c<<<
Ajustando sistema Hwgui(Win) para Hwgui(Linux).
Enviado: 29 Fev 2024 17:47
por Itamar M. Lins Jr.
Olá!
Ai já vai precisar corrigir o xHarbour rsrsrs.
Pq é um code block ou ele faz 2 um para o xHarbour e esse do Harbour.
Abre aqui:
STATIC bPaintItem := {|o,h|
...
Fecha na linha 716
RETURN Nil
}
Saudações,
Itamar M. Lins Jr.
Ajustando sistema Hwgui(Win) para Hwgui(Linux).
Enviado: 29 Fev 2024 19:15
por JoséQuintas
Nada.
É um exagero de codeblock.
Só criar um método PaintItem() e no codebock colocar a chamada.
Não é porque funciona no harbour que precisa ficar assim.
Fonte é para o programador, e não para o computador.
Só precisa confirmar se nenhuma classe superior ou inferior tem mesmo nome de método.
Ajustando sistema Hwgui(Win) para Hwgui(Linux).
Enviado: 29 Fev 2024 19:40
por JoséQuintas
2024-02-29 19:27 UTC-0200 Jose Quintas
* source/cross/hdraw.prg
* static function PaintArrow() used on codeblock, now compiles on xharbour too
Código: Selecionar todos
METHOD Paint( hDC ) CLASS HDrawnArrow
STATIC bPaintItem := { | o, h | PaintArrow( o, h ) }
IF Empty( ::bPaintItem )
::bPaintItem := bPaintItem
ENDIF
::Super:Paint( hDC )
RETURN Nil
...
STATIC FUNCTION PaintArrow( o, h )
LOCAL nh := Iif( Empty(o:nh), Max( 4, Int( Iif(o:nDirection==1.OR.o:nDirection==3,o:nWidth,o:nHeight)/2.4 ) ), o:nh )
LOCAL nw := Iif( Empty(o:nw), Int(nh/1.2), Int(o:nw/2) )
LOCAL nt, nl
IF o:nDirection == 1 .OR. o:nDirection == 3
nt := Int( o:nHeight/2 )
nl := Int( (o:nWidth-nh)/2 )
IF o:nDirection == 1
hwg_Triangle_Filled( h, o:nLeft+nl, o:nTop+nt, o:nLeft+nl+nh, o:nTop+nt-nw, ;
o:nLeft+nl+nh, o:nTop+nt+nw, .F., o:oBrushArrow:handle )
ELSE
hwg_Triangle_Filled( h, o:nLeft+o:nWidth-nl, o:nTop+nt, o:nLeft+o:nWidth-nl-nh, o:nTop+nt-nw, ;
o:nLeft+o:nWidth-nl-nh, o:nTop+nt+nw, .F., o:oBrushArrow:handle )
ENDIF
ELSE
nt := Int( o:nWidth/2 )
nl := Int( (o:nHeight-nh)/2 )
IF o:nDirection == 2
hwg_Triangle_Filled( h, o:nLeft+nt, o:nTop+nl, o:nLeft+nt-nw, o:nTop+nl+nh, ;
o:nLeft+nt+nw, o:nTop+nl+nh, .F., o:oBrushArrow:handle )
ELSE
hwg_Triangle_Filled( h, o:nLeft+nt, o:nTop+o:nHeight-nl, o:nLeft+nt-nw, o:nTop+o:nHeight-nl-nh, ;
o:nLeft+nt+nw, o:nTop+o:nHeight-nl-nh, .F., o:oBrushArrow:handle )
ENDIF
ENDIF
RETURN Nil
como static function nem precisa procurar conflito.
Fiquei na dúvida sobre DrawArrow() ou PaintArrow(), pode ser que meu ponto de vista esteja errado.
Como codeblock não precisava nome... rs
Ajustando sistema Hwgui(Win) para Hwgui(Linux).
Enviado: 29 Fev 2024 20:22
por JoséQuintas
isso eu não sei resolver.
parece que deu erro na instalação das coisas no linux.
Está como sempre esteve.
Ajustando sistema Hwgui(Win) para Hwgui(Linux).
Enviado: 29 Fev 2024 20:45
por JoséQuintas
O Itamar que me mostrou o que precisava.
Só posso chutar: talvez GTK 2.0 não seja mais usada.
Funcionava há um bom tempo, só hoje dando erro.
Ajustando sistema Hwgui(Win) para Hwgui(Linux).
Enviado: 29 Fev 2024 20:59
por JoséQuintas
github não avisou, deu erro em windows também.
Coisa simples, declaração faltando e/ou diferente, e variáveis no -w3 -es2
O mais estranho é que aqui local não acontece.
Ajustando sistema Hwgui(Win) para Hwgui(Linux).
Enviado: 29 Fev 2024 21:50
por JoséQuintas
Não sei se deveria ter postado aqui, mas o assunto começou a ser sobre bugs.
Itamar, se achar melhor separar a parte de bugs, fica a seu critério.
Ou apagar as indevidas.