Mensagem no StatusBar - Menu de Opções

Projeto HwGui - Biblioteca visual para Harbour/xHarbour

Moderador: Moderadores

Avatar do usuário
asimoes
Colaborador
Colaborador
Mensagens: 4919
Registrado em: 26 Abr 2007 16:48
Localização: RIO DE JANEIRO-RJ

Mensagem no StatusBar - Menu de Opções

Mensagem por asimoes »

A entrada MESSAGE não existe na classe MENU da HwGui, tem como definir uma mensagem para ser exibida no statusbar do que faz a opção faz?
Isso tem na Minigui.

Código: Selecionar todos

MENU OF Thisform BMPSIZE 24, 24
                  MENU TITLE "Samples"
                     MENUITEM "&Exit"    ID 1001 MESSAGE "TESTE OPÇÃO" ACTION Thisform:Close()   BITMAP "image\exit_m.bmp" 
                     SEPARATOR                      
                     MENUITEM "&New "    ID 1002 ACTION hwg_Msginfo("New")  BITMAP "avi\user_info.png"  
                     MENUITEM "&Open"    ID 1003 ACTION hwg_Msginfo("Open") BITMAP "image\open_m.bmp" 
                     MENUITEM "&Demo"    ID 1004 ACTION hwg_Msginfo("test") BITMAP "image\logo.bmp"
                     separator
                     MENUITEM "&Bitmap and a Text"  ID 1005 ACTION hwg_Msginfo("test") //BITMAP "image\logo.bmp"
                  ENDMENU   
                ENDMENU                
►Harbour 3.x | Minigui xx-x | HwGui◄
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
marcosgambeta
Usuário Nível 3
Usuário Nível 3
Mensagens: 332
Registrado em: 16 Jun 2005 22:53

Mensagem no StatusBar - Menu de Opções

Mensagem por marcosgambeta »

Veja se na sua HWGUI tem esta pasta:

contrib/menus

Eram as alterações para introduzir este recurso na HWGUI. Mas precisam ser revisadas.

Na época, coloquei na pasta 'contrib' em vez de fazer diretamente na pasta 'source'. Mas o tempo passou e a pasta foi apagada pelo Alexander Kresin, de forma que as alterações se perderam.
Atenciosamente,
Marcos Antonio Gambeta
Avatar do usuário
Itamar M. Lins Jr.
Administrador
Administrador
Mensagens: 7928
Registrado em: 30 Mai 2007 11:31
Localização: Ilheus Bahia
Curtiu: 1 vez

Mensagem no StatusBar - Menu de Opções

Mensagem por Itamar M. Lins Jr. »

Ola!
Não achei essa entrada no Changelog para determinar que ano foi feito esse upload no CVS. Deve ter sido no CVS pq depois migrou para SVN.

Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Avatar do usuário
asimoes
Colaborador
Colaborador
Mensagens: 4919
Registrado em: 26 Abr 2007 16:48
Localização: RIO DE JANEIRO-RJ

Mensagem no StatusBar - Menu de Opções

Mensagem por asimoes »

marcosgambeta escreveu:Veja se na sua HWGUI tem esta pasta:
Marcos, infelizmente não.

Tem esse demo usando menu, mas não com o recurso de mensagem
►Harbour 3.x | Minigui xx-x | HwGui◄
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Avatar do usuário
Itamar M. Lins Jr.
Administrador
Administrador
Mensagens: 7928
Registrado em: 30 Mai 2007 11:31
Localização: Ilheus Bahia
Curtiu: 1 vez

Mensagem no StatusBar - Menu de Opções

Mensagem por Itamar M. Lins Jr. »

Ola!
Marcos, infelizmente não.
Se fez upload no CVS, tem como achar buscando pela data, pelo menos o ano.

Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
marcosgambeta
Usuário Nível 3
Usuário Nível 3
Mensagens: 332
Registrado em: 16 Jun 2005 22:53

Mensagem no StatusBar - Menu de Opções

Mensagem por marcosgambeta »

Era mais antigo do que pensava (revisão 67):

Código: Selecionar todos

Revision: 67
Author: marcosgambeta
Date: quinta-feira, 18 de março de 2004 09:05:55
Message:
Created folder 'contrib', with files to implement menus with messages (work in progress).

----
Added : /trunk/hwgui/contrib
Added : /trunk/hwgui/contrib/menus
Added : /trunk/hwgui/contrib/menus/guilib.ch
Added : /trunk/hwgui/contrib/menus/hwindow.prg
Added : /trunk/hwgui/contrib/menus/info.txt
Added : /trunk/hwgui/contrib/menus/menu.prg
Added : /trunk/hwgui/contrib/menus/test.bat
Added : /trunk/hwgui/contrib/menus/test.prg
O Alexander Kresin removeu nesta revisão (1965):

Código: Selecionar todos

Revision: 1965
Author: alkresin
Date: terça-feira, 25 de dezembro de 2012 09:46:04
Message:
contrib/menus has been removed, contrib/misc - added

----
Deleted : /trunk/hwgui/contrib/menus
Added : /trunk/hwgui/contrib/misc
Então, até a revisão 1964 o código estará presente.

Mas não me lembro porque não passei para a pasta 'source'. Entretanto, não deve ser difícil introduzir as mudanças numa versão mais recente. A estrutura interna não deve ter mudado tanto assim.
Atenciosamente,
Marcos Antonio Gambeta
marcosgambeta
Usuário Nível 3
Usuário Nível 3
Mensagens: 332
Registrado em: 16 Jun 2005 22:53

Mensagem no StatusBar - Menu de Opções

Mensagem por marcosgambeta »

Seguem os arquivos como estavam na revisão 1964:
Anexos
menus.zip
(15.51 KiB) Baixado 122 vezes
Atenciosamente,
Marcos Antonio Gambeta
Avatar do usuário
asimoes
Colaborador
Colaborador
Mensagens: 4919
Registrado em: 26 Abr 2007 16:48
Localização: RIO DE JANEIRO-RJ

Mensagem no StatusBar - Menu de Opções

Mensagem por asimoes »

Fiz uma gambi que funcionou até isso um dia ser implementado na lib

Código: Selecionar todos


   aMens := {}
   
   aAdd( aMens, {1001, "OPÇÃO 1"})
   aAdd( aMens, {1002, ""})
   aAdd( aMens, {1003, ""})
   aAdd( aMens, {1004, "OPÇÃO 4"})
   
   INIT DIALOG oDlg TITLE "BrowseColor" ;
               AT   0, 0 ;
               SIZE 965,600 ;
               NOEXIT ;
               FONT HFont():Add( 'Tahoma', 0, -13, 550 ) ;
               ON PAINT {|This| Proc_On_Paint( __xhb_p2n( This:handle ), , , , , {255,255,255}, {192,192,192} ) } ;
               STYLE WS_POPUP + WS_CAPTION + WS_SYSMENU + DS_CENTER 
   
   Thisform := oDlg

   Thisform:bOther := {|this,m,wp,lp| tProc( this, m, wp, lp ) }

   MENU OF Thisform TITLE "TESTE" BMPSIZE 24, 24
      MENU TITLE "Samples"
         MENUITEM "&Exit"    ID 1001 ACTION Thisform:Close()  BITMAP "image\exit_m.bmp"  
         SEPARATOR                      
         MENUITEM "&New "    ID 1002 ACTION hwg_Msginfo("New")  BITMAP "avi\user_info.png"  
         MENUITEM "&Open"    ID 1003 ACTION hwg_Msginfo("Open") BITMAP "image\open_m.bmp" 
         MENUITEM "&Demo"    ID 1004 ACTION hwg_Msginfo("test") BITMAP "image\logo.bmp"
         separator
         MENUITEM "&Bitmap and a Text"  ID 1005 ACTION hwg_Msginfo("test") //BITMAP "image\logo.bmp"
      ENDMENU   
   ENDMENU              

*
*
*

FUNCTION tProc( this, Msg, wParam, lParam ) 
LOCAL nPos, nPos1, nPos2, nVirtCode, iParLow, iCont, oElemento
   
   iParLow := hwg_Loword( wParam )
   
   IF Msg == WM_MENUSELECT

      nPos := Hb_aScan( aMens, {|a| a[1] == iParLow } )
      
      IF nPos > 0
         hwg_WriteStatus( ThisForm, 1, aMens[nPos,2] ) 
      ELSE
         hwg_WriteStatus( ThisForm, 1, "" ) 
      ENDIF      
      
   ENDIF

RETURN -1

►Harbour 3.x | Minigui xx-x | HwGui◄
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Avatar do usuário
asimoes
Colaborador
Colaborador
Mensagens: 4919
Registrado em: 26 Abr 2007 16:48
Localização: RIO DE JANEIRO-RJ

Mensagem no StatusBar - Menu de Opções

Mensagem por asimoes »

iParLow := hwg_Loword( wParam ) = PEGA O ID DO MENU
►Harbour 3.x | Minigui xx-x | HwGui◄
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Responder