Página 1 de 1
WVW no Harbour
Enviado: 22 Dez 2009 09:18
por Itamar M. Lins Jr.
Para quem estava querendo mudar do xHb para o Harbour mas estava preso na velha WVW, o momento é esse.
Agora é verificar se vai ficar travando igual está no xHb. Porque no Harbour eles corrigem os erros que a gente encontra.
+ Added rudimentary port of GTWVW to Harbour.
(The source was current xhb CVS repository.)
The port is very very (very) far from anything else
than can be found in Harbour, this port involved making
all the minimum required steps to build and link under
Harbour, plus some extra cleanups.
! Lots of cleanups and fixes.
Saudações,
Itamar M. Lins Jr.
Re: WVW no Harbour
Enviado: 22 Dez 2009 18:07
por sygecom
Isso é muito bom, além do que os ajustes já vão deixando a mesma compatível para MT com Harbour, coisa que no xHarbour dava uns pau meio louco.
Re: WVW no Harbour
Enviado: 23 Dez 2009 10:15
por asimoes
Senhores,
Perguntas:
A WVW está em que pasta? É na contrib?
Ontem eu baixei uma atualização da SVN e não achei a WVW, me desulpem se estiver errado.
Já achei!
[]´s
Re: WVW no Harbour
Enviado: 23 Dez 2009 11:03
por sygecom
\harbour\examples\gtwvw
Re: WVW no Harbour
Enviado: 23 Dez 2009 11:23
por asimoes
sygecom,
É verdade, eu até editei o meu post informando que tinha achado.
Fiz alguns testes e ainda tem algumas coisas a serem resolvidas.
Por exemplo, as funções wvw_drawboxrecessed e wvw_drawboxraised, tinham um problema no xharbour quando a janela era minimizada e maximizada, os boxes sumiam.
Nesta versão da wvw, os box restauram sem problemas, mas não apagam! numa troca de janela, por exemplo se for chamada uma outra rotina, tem alguma outra função que faça isso? tentei savescreen e wvw_savescreen e nada.
[]´s
Re: WVW no Harbour
Enviado: 23 Dez 2009 11:33
por Itamar M. Lins Jr.
Ola!
Nesta versão da wvw, os box restauram sem problemas, mas não apagam! numa troca de janela, por exemplo se for chamada uma outra rotina, tem alguma outra função que faça isso?
Tente criar um pequeno programa demonstrando o problema. Se for um problema mesmo.
Ai, é só postar no forum dos desenvolvedores. Quem sabe eles podem corrigir...
Saudações,
Itamar M. Lins Jr.
Re: WVW no Harbour
Enviado: 23 Dez 2009 12:52
por asimoes
Olá Itamar,
Eu fiz o teste com o fonte maximize.prg que esta na pasta tests
Código: Selecionar todos
procedure updatescr()
local i
CLS
wvw_drawboxrecessed(,1,1,maxrow(),maxcol())
aWin:=SaveScreen(10,2,12,30)
wvw_drawboxraised(,10,2,12,30)
@11,03 Say "teste" COLOR "r/w"
inkey(10) //Espera 10 segundos para restaurar a tela
RestScreen(10,2,12,30,aWin) //A tela continua com o box drawboxraised
diminfo()
return
Re: WVW no Harbour
Enviado: 23 Dez 2009 15:06
por frazato
Boa tarde..
Faço uso da Gtwvw a cerca de 2 anos usando o xharbour ( 99.70), só que tambem não utilizo as função de salvar e restaurar telas, para cada tela crio uma janela e depois fecho esta janela.
Procure a funções:
FechaJanela() , AbreJanela().
Usei este exemplo para isso, muito bom!
http://www.4shared.com/file/67802282/31 ... cxwin.html
Frazato
Re: WVW no Harbour
Enviado: 23 Dez 2009 16:14
por marcosgambeta
Pessoal,
Sobre a gtwvw no Harbour, vejam com atenção a entrada no Changelog:
Código: Selecionar todos
+ examples/gtwvw
...
+ Added rudimentary port of GTWVW to Harbour.
(The source was current xhb CVS repository.)
The port is very very (very) far from anything else
than can be found in Harbour, this port involved making
all the minimum required steps to build and link under
Harbour, plus some extra cleanups.
! Lots of cleanups and fixes.
+ Added Harbour make files (both GNU make and hbmk2)
+ Cleaned tests to avoid multiple symbols and much simpler
interdependencies.
! Removed extra test.dbf and what32 dependency.
; TOFIX: Due to public symbol collisions, this GTWVW it's
probably not possible to use it with gtwin lib.
; NOTE: GTWVW is limited to non-UNICODE, non-C++, 32-bit
Windows (no WinCE) builds, and for a clean compiler
I had to suppress Harbour standard warning levels.
Anyway, not basic tests program seems to work,
although I didn't dig into them very deeply.
We will see if this contrib turns out to be useful
or not, and we can decide to drop it or maybe
moving it to contrib once it has been brought up
to Harbour standards. Although the code is huge,
so don't expect to happen this very soon.
Notem que ela está na pasta /harbour/examples. É uma adaptação rudimentar do código disponivel no projeto xHarbour. Está bem longe dos projetos da pasta /harbour/contrib, em termos de qualidade do código. Conflita se usada em conjunto com a gtwin. Há muito trabalho pela frente para ela "merecer" ir para a pasta contrib. Pode até ser que isto não ocorra.
Então, torçam para que ela evolua e ganhe qualidade e estabilidade, da mesma forma que o Harbour e os projetos da pasta contrib.
Re: WVW no Harbour
Enviado: 23 Dez 2009 20:17
por alaminojunior
Acredito que ela deva funcionar igual a wvt.
Nesta última, (usando xHarbour) eu coloco os objetos gráficos numa matriz e com uso de uma função auxiliar que vem na pasta contrib, estes objetos permanecem no lugar, inclusive aceitando que telas posteriores sejam salvas e depois restauradas. Simplesmente funciona !
Re: WVW no Harbour
Enviado: 24 Dez 2009 09:11
por Itamar M. Lins Jr.
Já testou usando save e restore da WVW ?
Não uso wvw mas observei nos fontes que existem esses 2 comandos.
Saudações,
Itamar M. Lins Jr.
Re: WVW no Harbour
Enviado: 24 Dez 2009 11:20
por BHS
antes de mais nada um Feliz Natal a todos
vamnos lá,
Colega Alamino, tb uso a wvt com xharbour, porém gostaria somente de colocar o logotipo da empresa bem no centro da tela, mas como vc mencionou agora pouco, conforme minimiza ou sai pra outra tela o logo some.
Vc poderia nos passar um trecho desse código que vc usou, e qual é a função auxiliar é esta que esta na pasta Contrib ?
Obrigado
Re: WVW no Harbour
Enviado: 24 Dez 2009 16:53
por asimoes
Olá Itamar,
Antes de mais nada, Feliz Natal para você e Família.
Itamar M. Lins Jr. escreveu:Não uso wvw mas observei nos fontes que existem esses 2 comandos.
Sim tentei isso e não funcionou, como o código foi portado do xharbour, alguém com certeza irá consertar.
Só acho interessante essas funções de box de alto e baixo relevo, para dar uma impressão legal no visual dos aplicativos.
Quando funcionarem, será uma opção interessante a gtwvw.
[]´s
Re: WVW no Harbour
Enviado: 24 Dez 2009 20:13
por alaminojunior
Código: Selecionar todos
Function Main
private aBlocks:= {}
aAdd( aBlocks, {|| Wvt_DrawBoxRaised( 2, 1, 32, 78 ) } )
aAdd( aBlocks, {|| Wvt_DrawBoxRecessed( 3, 31, 22, 77 ) } )
aAdd( aBlocks, {|| Wvt_DrawBoxRecessed( 3, 2, 5, 28 ) } )
aLastPaint := WvtSetBlocks( aBlocks )
inkey(0)
return
Como eu havia dito, você guarda tudo o que for gráfico, caixas, imagens, etc ... dentro de uma matriz (aBlocks)
Eu guardo toda a tela inicial do sistema, e as funções WvtSetBlocks e WvtPaint se encarregam do resto.
Um detalhe é que se precisar abrir outra janela por cima, os objetos gráficos estarão lá atrapalhando. Então nesse caso eu guardo o conteúdo da matriz em outra matriz, zero o seu conteúdo, e então eu posso abrir outras janelas e caixas por cima. Terminando eu restauro o conteúdo anterior e pronto, está tudo lá de novo. Pode minimizar, sobrepor programas, etc.
Código: Selecionar todos
FUNCTION Wvt_Paint()
LOCAL aBlocks := WvtSetBlocks()
aEval( aBlocks, {|e| eval( e ) } )
WvtPaintObjects()
RETURN 0
Código: Selecionar todos
FUNCTION WvtSetBlocks( a_ )
LOCAL o
STATIC s := {}
o := aclone( s )
IF a_ != nil
s := aclone( a_ )
ENDIF
RETURN o