Página 1 de 2

Hbide, HBDBU r417

Enviado: 02 Ago 2015 12:52
por Itamar M. Lins Jr.
Ola!

Pacote único usando Qt 5.5.

Link p/ download.
https://drive.google.com/file/d/0B1MfEZ ... sp=sharing

Na minha opinião a melhor IDE para o programador xHarbour.

Código: Selecionar todos

2015-07-31 15:14 UTC-0800 Pritpal Bedi (bedipritpal at hotmail.com)(r416)
  * hbide/projmanager.prg
    % Changed: the behavior of opening "Output Console".
       In case of any errors in project building Output Console is opened.
       At all other times no action is taken. It means if console is 
       already opened or kept opened after an error, it will remain 
       visible. A request by Daniel Du Pre.

Saudações,
Itamar M. Lins Jr.

Hbide, HBDBU r417

Enviado: 17 Ago 2015 21:09
por fladimir
Estou fazendo testes no HBIDE e estou achando alguns aspectos interessantes em comparação ao xDev q utilizo mais frequentemente, mas não consegui achar algo semelhante ao q tenho no xDev q seria o seguinte...

Suponha q em algum lugar do projeto eu tenha uma função chamada MinhaFuncao( parametro1, parametro2, parametro3)

Em qualquer lugar do projeto q eu precise chamar esta função qdo começo a escrever exemplo Minha... e pression CTRL + ESPACO o xDev já sugere uma lista de funções q comecem com Minha.. ai qdo eu escolho MinhaFuncao já aparece os parametros q tenho nesta funcao pra preencher, isto no dia a dia é bem útil, caso a hbIDE realmente não tenha (não achei) seria interessante, no meu ponto de vista, sugerir, como faço (caso não tenha) pra sugerir?

[]´s

Hbide, HBDBU r417

Enviado: 18 Ago 2015 08:59
por Itamar M. Lins Jr.
Ola!
Pode pedir/sugerir aqui.
https://groups.google.com/forum/#!forum/qtcontribs

Mas adianto, que vc pode criar isso tudo via programação dentro da própria HBIDE.

Saudações,
Itamar M. Lins Jr.

Hbide, HBDBU r417

Enviado: 18 Ago 2015 09:55
por fladimir
Ok.. Obrigado

[]´s

Hbide, HBDBU r417

Enviado: 20 Ago 2015 19:40
por janio
eh possível configurar a COR DO FUNDO (texto) nessa ide?

Janio

Hbide, HBDBU r417

Enviado: 20 Ago 2015 21:49
por asimoes
Itamar,

A hbide tá reclamando de hwgdebug?

Hbide, HBDBU r417

Enviado: 21 Ago 2015 08:10
por Itamar M. Lins Jr.
Ola!
eh possível configurar a COR DO FUNDO (texto) nessa ide?
Sim é possível. E muitas outras coisas.
A hbide tá reclamando de hwgdebug?
Aqui não. Mas não entendi direito sua pergunta.

Saudações,
Itamar M. Lins Jr.

Hbide, HBDBU r417

Enviado: 21 Ago 2015 08:40
por asimoes
Itamar,

Estou tentado debugar este teste:

Eu até consigo gerar o executável e rodar ele. mas quando faço o build para debug não acontece nada.

Segue o código que eu estou tentando testar:

O hbp:

Código: Selecionar todos

#
# $Id$
#

-3rd=hbide_version=1.0
-3rd=hbide_title=demo
-3rd=hbide_workingfolder=D:/Harbour/h-Asort
-3rd=hbide_output=demo

# Autor     : Alexandre Simäes
# VersÆo    : 1.0
# Data      : 20/08/2015
# Harbour   : Harbour 3.4.0dev 
#             http://harbour-project.org/
# Compilador: MinGW GNU C 5.1 (32-bit)
# ---------------------------------------------------------------------------------
# Nome do Execut vel
# ---------------------------------------------------------------------------------
# -o<outname> Diretiva para nome de arquivo de sa¡da
-odemo
# ---------------------------------------------------------------------------------
# Bibliotecas
# ---------------------------------------------------------------------------------
# l<libname> Diretiva para linkar com a biblioteca <libname>. <libname> deve omitir
# path, extensÆo e o prefixo 'lib' (… menos que fa‡a parte do nome-de-arquivo).

-lhwgui
-lprocmisc
-lgtwvg
-lgtwvt
-lhbct
-lhbwin
-lhbnf
-lxhb
-lhbblink
-lhbmemio
-lhbhpdf
-llibhpdf
-lpng
-lhbzebra
-lhbwin
-lversion
hbmisc.hbc
hbwin.hbc
# ---------------------------------------------------------------------------------
# Caminhos dos Includes
# ---------------------------------------------------------------------------------
# -i<p>|-incpath=<p>  paths adicionais para pesquisa de arquivos headers
-incpath=\hb32fork\hwgui\include;
# ---------------------------------------------------------------------------------
# Caminho da Lib HPROC E HGAC 
# ---------------------------------------------------------------------------------
# -L<libpath>         path adicional para pesquisar por bibliotecas
-L\hb32fork\hwgui\lib;lib;
# ---------------------------------------------------------------------------------
# Outros Parƒmetros
# ---------------------------------------------------------------------------------
# .\OBJ\ Grava os arquivos .c e .o na subpasta OBJ
# ---------------------------------------------------------------------------------
# -workdir=<dir>      Working directory 
#                     Diretiva para diret¢rio de trabalho da compila‡Æo.
#                     (default: .hbmk/plat/comp in incremental mode, OS temp
#                     directory otherwise).
-workdir=.\OBJ\
-gtgui
# ---------------------------------------------------------------------------------
# -[no]head[=<m>]     Control source header parsing (in incremental build mode)
#                     <m> can be: native (uses compiler to extract
#                     dependencies), full (default, uses simple text parser on
#                     the whole file), dep, off.
-head=full            
# ---------------------------------------------------------------------------------
# /n[<type>]          No implicit starting procedure
#                     <type>: 0=no implicit starting procedure
#                             1=no starting procedure at all
#                             2=add starting procedure if necessary
-n                         
# ---------------------------------------------------------------------------------
# -[no]warn[=lev]     Define o n¡vel de avisos (warnings) do compilador C
#                     <lev> pode ser: max, yes, low, no, def (padrão: yes).
-warn=no
# ---------------------------------------------------------------------------------
# -inc                Habilita o modo de compilaçao incremental.
-inc                  
# ---------------------------------------------------------------------------------
# -[no]debug          Adicionar/excluir informa‡äes de debug do compilador C.
#                     Para compilar com Harbour utilize a op‡Æo -b como de
#                     costume.
#-b                    
# ---------------------------------------------------------------------------------
# -d<diretiva>        Diretiva de compila‡Æo para ifdef
-dHARBOUR
-dVERSAO_ADOH
# ---------------------------------------------------------------------------------
# -icon=<file>        Seta o ícone para o aplicativo. <file> deve possuir um
#                     formato compat¡vel com a plataforma de destino.
#                     Diretiva para informar o icone da aplicação.
#-icon=P:\GERAL\HARBOUR\HARB_WIN.ICO
# ---------------------------------------------------------------------------------
# /u[<file>]          Usa comando def set em <arquivo> (ou nenhum)
#                     Diretiva para carregar arquivo header (.ch) para toda
#                     aplicação.
-u+hbcompat.ch
-mt
# ---------------------------------------------------------------------------------
# Prg(s) e Rc(s)
# ---------------------------------------------------------------------------------
DEMO.PRG
asort2.c
# ---------------------------------------------------------------------------------
O fonte: demo.prg

Código: Selecionar todos

#include "wvtwin.ch"
#include "hbcompat.ch"
#include "hbgtinfo.ch"
#include "hbgtwvg.ch"
#include "wvgparts.ch"
#include "dbinfo.ch"
#include "fileio.ch"
#include "hbdyn.ch"

Procedure Main

   local ii := hb_secondsCPU()

   aSort( AFill( Array( 50000 ), 0 ),,, {|x,y| x > y } )
   
   ? hb_secondsCPU() - ii, "sec."

   ii := hb_secondsCPU()
   
   aSort2( AFill( Array( 50000 ), 0 ),,, {|x,y| x > y } )

   ? hb_secondsCPU() - ii, "sec."

   hwg_MsgInfo(NomeExecutavel()) 

   Inkey(0)

Return

INIT FUNCTION AppSetup()
  
  ANNOUNCE hwg_ErrSys
  
  REQUEST HB_LANG_PT
  REQUEST HB_CODEPAGE_PT850
  HB_LANGSELECT("PT")
  HB_CDPSELECT( "PT850" ) 
  
  SETMODE(25,80)
 
  SetColor("W+/B")
  
  CLS
 
  SetColor("W+/B")
  
  IniciaJanela()
 

RETURN Nil 
 

FUNCTION IniciaJanela(nLi,nCi,nLf,nCf)
 
LOCAL oCrt
   HB_Default(@nLi,0)
   HB_Default(@nCi,0)
   HB_Default(@nLf,MaxRow())
   HB_Default(@nCf,MaxCol())
  
   
   cTituloJanela:="Teste com ASORT"
   
   HB_gtInfo(HB_GTI_FONTNAME, "Lucida Console")
   HB_gtInfo(HB_GTI_WINTITLE, cTituloJanela)
   HB_gtInfo(HB_GTI_ICONFILE, "P:\GERAL\HARBOUR\HARB_WIN.ICO" )
   HB_gtInfo(HB_GTI_CLOSABLE, .F. )
   HB_gtInfo(HB_GTI_ISGRAPHIC, .T. )
   HB_gtInfo(HB_GTI_STDERRCON, .T. )
   HB_gtInfo(HB_GTI_COMPATBUFFER, .T. ) 
   HB_gtInfo(HB_GTI_SPEC, HB_GTS_WNDSTATE, HB_GTS_WS_MAXIMIZED )
   HB_gtInfo(HB_GTI_SPEC, HB_GTS_SHOWWINDOW, SW_NORMAL )
   HB_GtInfo( HB_GTI_MAXIMIZED, .T. )
    
RETURN Nil
 
FUNCTION HB_GTSYS()
   REQUEST HB_GT_WVT_DEFAULT
   REQUEST HB_GT_WVT
   REQUEST HB_GT_WGU
   REQUEST HB_GT_WVG
RETURN Nil 

#pragma BEGINDUMP
   #pragma comment( lib, "shell32.lib" )
   #include "hbapi.h"
   #include <windows.h>
   HB_FUNC( _OPENHELPFILE )
   {
     HINSTANCE hInst;
     LPCTSTR lpPath = (LPTSTR) hb_parc( 1 );
     LPCTSTR lpHelpFile = (LPTSTR) hb_parc( 2 );
     hInst = ShellExecute( 0, "open", lpHelpFile, 0, lpPath, SW_SHOW );
     hb_retnl( (LONG) hInst );
     return;
   }
   
#pragma ENDDUMP

#pragma BEGINDUMP

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

HB_FUNC( GETFILEVERSIONINFO )
{
 char * szFile = hb_parc( 1 );
 UINT uAction = HB_ISNUM( 2 ) ? hb_parni( 2 ) : 1;
 DWORD dwHandle = 0;
 DWORD dwSize = GetFileVersionInfoSize( szFile, &dwHandle );
 char * szOut = NULL;
 BOOL bOk   = FALSE;

 if( dwSize )
 {
   char * szBlock = ( char * ) hb_xgrab( 255 );
   char * szSubBlock = ( char * ) hb_xgrab( 255 );
   HGLOBAL hMem = GlobalAlloc( GMEM_MOVEABLE, dwSize );
   VS_FIXEDFILEINFO * vsInfo;
   UINT nLen = 0;

   if( hMem )
   {
    LPVOID pMem = GlobalLock( hMem );

    if( pMem && GetFileVersionInfo( szFile, dwHandle, dwSize, pMem ) )
    {
      if( VerQueryValue( pMem, "\\VarFileInfo\\Translation", ( LPVOID * ) &vsInfo, &nLen ) )
      {
       *( LPDWORD ) vsInfo = MAKELONG( HIWORD( *( LPDWORD ) vsInfo ), LOWORD( *( LPDWORD ) vsInfo ) );

       sprintf( szBlock, "\\StringFileInfo\\%08lx\\", *( LPDWORD )( vsInfo ) );

       switch( uAction ) {
         case 1:
          sprintf( szSubBlock, "%s%s", szBlock, "Comments" );
          break;

         case 2:
          sprintf( szSubBlock, "%s%s", szBlock, "CompanyName" );
          break;

         case 3:
          sprintf( szSubBlock, "%s%s", szBlock, "FileDescription" );
          break;

         case 4:
          sprintf( szSubBlock, "%s%s", szBlock, "FileVersion" );
          break;
         case 5:
          sprintf( szSubBlock, "%s%s", szBlock, "InternalName" );
          break;

         case 6:
          sprintf( szSubBlock, "%s%s", szBlock, "LegalCopyright" );
          break;

         case 7:
          sprintf( szSubBlock, "%s%s", szBlock, "LegalTrademarks" );
          break;

         case 8:
          sprintf( szSubBlock, "%s%s", szBlock, "OriginalFilename" );
          break;

         case 9:
          sprintf( szSubBlock, "%s%s", szBlock, "PrivateBuild" );
          break;

         case 10:
          sprintf( szSubBlock, "%s%s", szBlock, "ProductName" );
          break;

         case 11:
          sprintf( szSubBlock, "%s%s", szBlock, "ProductVersion" );
          break;

         case 12:
          sprintf( szSubBlock, "%s%s", szBlock, "SpecialBuild" );
          break;
       }

       if( VerQueryValue( pMem, szSubBlock, ( LPVOID * ) &szOut, &nLen ) )
         bOk = TRUE;

       hb_xfree( szBlock );
       hb_xfree( szSubBlock );
      }

      GlobalUnlock( hMem );
      GlobalFree( hMem );
    }
   }
 }

 if( bOk )
   hb_retc( szOut );
 else
   hb_retc( "" );
}
static void s_doEvents( void )
{
   MSG msg;

   while( PeekMessage( &msg, ( HWND ) NULL, 0, 0, PM_REMOVE ) )
   {
      TranslateMessage( &msg );
      DispatchMessage( &msg );
   };
}

HB_FUNC( HBG_DOEVENTS )
{
   s_doEvents(  );
}

#pragma ENDDUMP

FUNCTION NomeExecutavel(lPath)
LOCAL nPos, cRet
   If Empty(lpath)
      nPos:=RAT(HB_PS(), HB_Argv(0))
      cRet:=SubStr(HB_Argv(0), nPos+1)
   else
      cRet:=HB_Argv(0)
   endif
RETURN cRet
Imagens da execução fica em Initing... e não sai disto.
https://goo.gl/photos/Wqt4d4pkooakxS5cA
https://goo.gl/photos/9PZ4D7rZqdY53wu37

Imagem
Imagem

Hbide, HBDBU r417

Enviado: 21 Ago 2015 12:34
por janio
Sim é possível. E muitas outras coisas.
Vc pode demonstrar onde faz isso, Itamar? Eh que sou totalmente analfabeto em qualquer IDE, mas se tudo der certo adotarei esta.

Janio

Hbide, HBDBU r417

Enviado: 21 Ago 2015 12:37
por janio
Desculpe, Itamar!

Vi aqui que clicando com o botao DIREITO em qualquer área do texto, em "Change Theme" eh possivel modificar o que perguntei

Hbide, HBDBU r417

Enviado: 21 Ago 2015 18:11
por Itamar M. Lins Jr.
Ola!

Tem como criar seu próprio tema, seu plugin, teclas de atalho, etc... eu não fico mexendo nisso, ás vezes eu dou uma fuçada...

Saudações,
Itamar M. Lins Jr.

Hbide, HBDBU r417

Enviado: 21 Ago 2015 18:36
por asimoes
Poder debugar é muito importante para mim, pode haver necessidade de testar uma função ou procedure, até agora não consegui ver isso funcionando na hbide, alguém sabe como fazer?
Ou tem um exemplo simples para eu testar?

Hbide, HBDBU r417

Enviado: 21 Ago 2015 19:13
por Itamar M. Lins Jr.
Ola!
Poder debugar é muito importante para mim,
Vc já recompilou todos os fontes com a opção de debug ?

Aqui está funcionando.

Saudações,
Itamar M. Lins Jr.

Hbide, HBDBU r417

Enviado: 21 Ago 2015 19:23
por Itamar M. Lins Jr.
Ola!
Mais essa tela aqui, eu fiquei clicando no botão "step F8" e ele foi abrindo os fontes sozinho.

Saudações,
Itamar M. Lins Jr.

Hbide, HBDBU r417

Enviado: 21 Ago 2015 20:06
por asimoes
Itamar,

Quando eu faço o build dá esse erro:

Imagem