FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin for Harbour/xHarbour Implementing FWH own Class TExplorerBar
Posts: 401
Joined: Tue Jan 05, 2010 02:33 PM
Re: Implementing FWH own Class TExplorerBar
Posted: Wed Jun 23, 2010 03:14 PM

If you can usefull ( for the mgsoft request)
I made it with many tpanel and some splitters object
in a one a insert xbrowse , to another a tgraph,.... and the dialog ( .or. 4 style) is on window main
i think for you not hard to create it

FWH .. BC582.. xharbour
Posts: 422
Joined: Mon Aug 17, 2009 12:18 PM
Re: Implementing FWH own Class TExplorerBar
Posted: Wed Jun 23, 2010 06:49 PM

Hello Mda,

I am stucked at areas and Heighs.

It would be very useful for users to have a sample of such look.

Thank you :D

Saludos,



Eduardo
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: Implementing FWH own Class TExplorerBar
Posted: Sat Jun 26, 2010 10:27 AM
Ramesh,

We find a way to easily place the POPUP menu at the desired location :-)

Code (fw): Select all Collapse
METHOD LButtonDown( nRow, nCol, nFlags ) CLASS TOutLook2003

   ...

            ::oPopup:Activate( ::nHeight, ::nWidth + 1, Self, .F., 32 )

Please notice that the 32 (flag) value is a new parameter supported in FWH 10.6.

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: Implementing FWH own Class TExplorerBar
Posted: Sat Jun 26, 2010 10:41 AM

MgSoft, Mda,

Do you want such example for MDI windows ? :-)

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 422
Joined: Mon Aug 17, 2009 12:18 PM
Re: Implementing FWH own Class TExplorerBar
Posted: Sat Jun 26, 2010 01:15 PM

Antonio,

Thanks for reply ;). Yes please.

You can see the screen at: http://img38.imageshack.us/i/gestioncomercialpro1g.jpg/

My problem is with Panel de resúmen and it´s content (Últimos documentos de venta, Facturación sin IVA, etc).

It would be very useful for all the users.

Thanks :D

Saludos,



Eduardo
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: Implementing FWH own Class TExplorerBar
Posted: Sat Jun 26, 2010 07:50 PM
Here you have a first prototype. It is not finished yet but its all I could code this evening in some free time :-)

Code (fw): Select all Collapse
#include "FiveWin.ch"
#include "Splitter.ch"
#include "TTitle.ch"

//----------------------------------------------------------------------------//

function Main()

   local oWnd, oExBar, oSplit, oWndResumen

   DEFINE WINDOW oWnd TITLE "Facturación" MDI ;
      MENU BuildMenu() MENUINFO 9

   BuildButtonBar( oWnd )

   oExBar = BuildExplorerBar( oWnd )

   @ 0, 800 SPLITTER oSplit ;
      VERTICAL _3DLOOK ;
      PREVIOUS CONTROLS oWnd:oWndClient ; 
      HINDS CONTROLS oExBar ;
      SIZE 4, oWnd:nHeight - 70 PIXEL ;
      OF oWnd

   SetParent( oSplit:hWnd, oWnd:hWnd )
         
   DEFINE WINDOW oWndResumen TITLE "Panel de Resumen" MDICHILD OF oWnd ;
      COLOR "N/W*"

   BuildTitles( oWndResumen ) 

   oWndResumen:Maximize()
   
   SET MESSAGE OF oWnd TO "Testing the ButtonBar 2007 Office look" ;
      CENTERED CLOCK KEYBOARD 2007
   
   ACTIVATE WINDOW oWnd MAXIMIZED ;
      ON RESIZE oSplit:Adjust()

return nil

//----------------------------------------------------------------------------//

function BuildMenu()

   local oMenu
   
   MENU oMenu 2007
      MENUITEM "&Archivo"
      MENUITEM "&Edición"
      MENUITEM "&Ver"
      MENUITEM "&Datos"
      MENUITEM "&Procesos"
      MENUITEM "&Impresiones"
      MENUITEM "&Herramientas"
      MENUITEM "Inte&rnet"
      MENUITEM "&Ventanas"
      MENUITEM "&?"
   ENDMENU
   
return oMenu      

//----------------------------------------------------------------------------//

function BuildButtonBar( oWnd )

   local oBar

   DEFINE BUTTONBAR oBar OF oWnd SIZE 125, 60 2007

   DEFINE BUTTON OF oBar ACTION MsgInfo( "presupuesto" ) ;
      FILENAME "..\bitmaps\32x32\case.bmp" PROMPT "Nuevo presupuesto" TOOLTIP "Attach"

   DEFINE BUTTON OF oBar ACTION MsgInfo( "factura" ) ;
      FILENAME "..\bitmaps\32x32\graphics.bmp" PROMPT "Nueva factura" TOOLTIP "Calendar"

   DEFINE BUTTON OF oBar ACTION MsgInfo( "venta" ) ;
      FILENAME "..\bitmaps\32x32\edit.bmp" PROMPT "Documentos de venta" TOOLTIP "Calendar"

   DEFINE BUTTON OF oBar ACTION MsgInfo( "compra" ) ;
      FILENAME "..\bitmaps\32x32\new.bmp" PROMPT "Documentos de compra" TOOLTIP "Calendar"

   DEFINE BUTTON OF oBar ACTION MsgInfo( "stock" ) GROUP ;
      FILENAME "..\bitmaps\32x32\graphics.bmp" PROMPT "Documentos de stock" TOOLTIP "Calendar"

   DEFINE BUTTON OF oBar ACTION MsgInfo( "cobros" ) GROUP ;
      FILENAME "..\bitmaps\32x32\case.bmp" PROMPT "Cobros" TOOLTIP "Calendar"
      
   DEFINE BUTTON OF oBar ACTION MsgInfo( "clientes" ) GROUP ;
      FILENAME "..\bitmaps\32x32\people.bmp" PROMPT "Clientes y clientes potenciales" TOOLTIP "Clientes"

   DEFINE BUTTON OF oBar ACTION MsgInfo( "articulos" ) GROUP ;
      FILENAME "..\bitmaps\32x32\edit.bmp" PROMPT "Artículos" TOOLTIP "Calendar"

return oBar

//----------------------------------------------------------------------------//

function BuildExplorerBar( oWnd )

   local oExBar, oPanel1, oPanel2, oPanel3, oPanel4
   local bClick

   @ 0, 805 EXPLORERBAR oExBar OF oWnd SIZE 200, 400

   oPanel1 = oExBar:AddPanel( "One", "..\bitmaps\32x32\people.bmp" )
   oPanel1:lSpecial = .T.
   oPanel1:AddLink( "First item", bClick, "..\bitmaps\16x16\additem.bmp" )
   oPanel1:AddLink( "Second item", bClick, "..\bitmaps\16x16\copy.bmp" )
      
   oPanel2 = oExBar:AddPanel( "Two", "..\bitmaps\32x32\case.bmp" )
   oPanel2:AddLink( "First item", bClick, "..\bitmaps\16x16\adddbf.bmp" )
   oPanel2:AddLink( "Second item", bClick, "..\bitmaps\16x16\delete0.bmp" )
   oPanel2:AddLink( "Third item", bClick, "..\bitmaps\16x16\envelope.bmp" )
   oPanel2:AddLink( "Fourth item", bClick, "..\bitmaps\16x16\copy.bmp" )

   oPanel3 = oExBar:AddPanel( "Three", "..\bitmaps\32x32\graphics.bmp" )
   oPanel3:AddLink( "First item", bClick, "..\bitmaps\16x16\adddbf.bmp" )
   oPanel3:AddLink( "Second item", bClick, "..\bitmaps\16x16\delete0.bmp" )
   oPanel3:AddLink( "Third item", bClick, "..\bitmaps\16x16\envelope.bmp" )
   
   oPanel4 = oExBar:AddPanel( "Four" )
   oPanel4:AddLink( "First item", bClick, "..\bitmaps\16x16\additem.bmp" )
   oPanel4:AddLink( "Second item", bClick, "..\bitmaps\16x16\copy.bmp" )

   SetParent( oExBar:hWnd, oWnd:hWnd )
   
return oExBar

//----------------------------------------------------------------------------//

function BuildTitles( oWnd )

   local oTitle1, oTitle2, oTitle3, oTitle4, oTitle5, oTitle6, oTitle7, oFont1

   DEFINE FONT oFont1 NAME "Blackoak Std" SIZE 0, -20

   @ 0, 0 TITLE oTitle1 SIZE 800, 30 OF oWnd SHADOWSIZE 0
    
   oTitle1:aGrdBack = { { 1, nRGB( 87, 130, 199 ), nRGB( 25, 69, 159 ) } }
   
   @ 5, 10 TITLETEXT OF oTitle1 TEXT "Panel de resumen" FONT oFont1 ;
      COLOR nRGB( 255, 255, 255 )
      
   @ 60, 10 TITLE oTitle2 SIZE 385, 30 OF oWnd SHADOWSIZE 0
    
   oTitle2:aGrdBack = { { 1, nRGB( 87, 130, 199 ), nRGB( 25, 69, 159 ) } }
   
   @ 5, 35 TITLETEXT OF oTitle2 TEXT "Últimos Documentos de venta" FONT oFont1 ;
      COLOR nRGB( 255, 255, 255 )

   @ 8, 8 TITLEIMG OF oTitle2 BITMAP "..\bitmaps\16X16\favorite.bmp" TRANSPARENT   

   @ 60, 410 TITLE oTitle3 SIZE 385, 30 OF oWnd SHADOWSIZE 0
    
   oTitle3:aGrdBack = { { 1, nRGB( 87, 130, 199 ), nRGB( 25, 69, 159 ) } }
   
   @ 5, 35 TITLETEXT OF oTitle3 TEXT "Seguimiento Presupuesto" FONT oFont1 ;
      COLOR nRGB( 255, 255, 255 )

   @ 8, 8 TITLEIMG OF oTitle3 BITMAP "..\bitmaps\16X16\favorite.bmp" TRANSPARENT   

   @ 250, 10 TITLE oTitle4 SIZE 385, 30 OF oWnd SHADOWSIZE 0
    
   oTitle4:aGrdBack = { { 1, nRGB( 87, 130, 199 ), nRGB( 25, 69, 159 ) } }
   
   @ 5, 35 TITLETEXT OF oTitle4 TEXT "Vencimientos impagados" FONT oFont1 ;
      COLOR nRGB( 255, 255, 255 )

   @ 8, 8 TITLEIMG OF oTitle4 BITMAP "..\bitmaps\16X16\favorite.bmp" TRANSPARENT   

   @ 250, 410 TITLE oTitle5 SIZE 385, 30 OF oWnd SHADOWSIZE 0
    
   oTitle5:aGrdBack = { { 1, nRGB( 87, 130, 199 ), nRGB( 25, 69, 159 ) } }
   
   @ 5, 35 TITLETEXT OF oTitle5 TEXT "Estadísticas de venta" FONT oFont1 ;
      COLOR nRGB( 255, 255, 255 )

   @ 8, 8 TITLEIMG OF oTitle5 BITMAP "..\bitmaps\16X16\favorite.bmp" TRANSPARENT   

   @ 440, 10 TITLE oTitle6 SIZE 385, 30 OF oWnd SHADOWSIZE 0
    
   oTitle6:aGrdBack = { { 1, nRGB( 87, 130, 199 ), nRGB( 25, 69, 159 ) } }
   
   @ 5, 35 TITLETEXT OF oTitle6 TEXT "Ultimos documentos de compra" FONT oFont1 ;
      COLOR nRGB( 255, 255, 255 )

   @ 8, 8 TITLEIMG OF oTitle6 BITMAP "..\bitmaps\16X16\favorite.bmp" TRANSPARENT   

   @ 440, 410 TITLE oTitle7 SIZE 385, 30 OF oWnd SHADOWSIZE 0
    
   oTitle7:aGrdBack = { { 1, nRGB( 87, 130, 199 ), nRGB( 25, 69, 159 ) } }
   
   @ 5, 35 TITLETEXT OF oTitle7 TEXT "Estadísticas de compra" FONT oFont1 ;
      COLOR nRGB( 255, 255, 255 )

   @ 8, 8 TITLEIMG OF oTitle7 BITMAP "..\bitmaps\16X16\favorite.bmp" TRANSPARENT   

return nil

//----------------------------------------------------------------------------//

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: Implementing FWH own Class TExplorerBar
Posted: Sat Jun 26, 2010 08:31 PM
Starting the browses implementation :-)

Code (fw): Select all Collapse
#include "FiveWin.ch"
#include "Splitter.ch"
#include "TTitle.ch"
#include "xbrowse.ch"

//----------------------------------------------------------------------------//

function Main()

   local oWnd, oExBar, oSplit, oWndResumen

   DEFINE WINDOW oWnd TITLE "Facturación" MDI ;
      MENU BuildMenu() MENUINFO 9

   BuildButtonBar( oWnd )

   oExBar = BuildExplorerBar( oWnd )

   @ 0, 800 SPLITTER oSplit ;
      VERTICAL _3DLOOK ;
      PREVIOUS CONTROLS oWnd:oWndClient ; 
      HINDS CONTROLS oExBar ;
      SIZE 4, oWnd:nHeight - 70 PIXEL ;
      OF oWnd

   SetParent( oSplit:hWnd, oWnd:hWnd )
         
   DEFINE WINDOW oWndResumen TITLE "Panel de Resumen" MDICHILD OF oWnd ;
      COLOR "N/W*"

   BuildTitles( oWndResumen ) 
   
   BuildBrowses( oWndResumen )

   oWndResumen:Maximize()
   
   SET MESSAGE OF oWnd TO "Testing the ButtonBar 2007 Office look" ;
      CENTERED CLOCK KEYBOARD 2007
   
   ACTIVATE WINDOW oWnd MAXIMIZED ;
      ON RESIZE oSplit:Adjust()

return nil

//----------------------------------------------------------------------------//

function BuildMenu()

   local oMenu
   
   MENU oMenu 2007
      MENUITEM "&Archivo"
      MENUITEM "&Edición"
      MENUITEM "&Ver"
      MENUITEM "&Datos"
      MENUITEM "&Procesos"
      MENUITEM "&Impresiones"
      MENUITEM "&Herramientas"
      MENUITEM "Inte&rnet"
      MENUITEM "&Ventanas"
      MENUITEM "&?"
   ENDMENU
   
return oMenu      

//----------------------------------------------------------------------------//

function BuildButtonBar( oWnd )

   local oBar

   DEFINE BUTTONBAR oBar OF oWnd SIZE 125, 60 2007

   DEFINE BUTTON OF oBar ACTION MsgInfo( "presupuesto" ) ;
      FILENAME "..\bitmaps\32x32\case.bmp" PROMPT "Nuevo presupuesto" TOOLTIP "Attach"

   DEFINE BUTTON OF oBar ACTION MsgInfo( "factura" ) ;
      FILENAME "..\bitmaps\32x32\graphics.bmp" PROMPT "Nueva factura" TOOLTIP "Calendar"

   DEFINE BUTTON OF oBar ACTION MsgInfo( "venta" ) ;
      FILENAME "..\bitmaps\32x32\edit.bmp" PROMPT "Documentos de venta" TOOLTIP "Calendar"

   DEFINE BUTTON OF oBar ACTION MsgInfo( "compra" ) ;
      FILENAME "..\bitmaps\32x32\new.bmp" PROMPT "Documentos de compra" TOOLTIP "Calendar"

   DEFINE BUTTON OF oBar ACTION MsgInfo( "stock" ) GROUP ;
      FILENAME "..\bitmaps\32x32\graphics.bmp" PROMPT "Documentos de stock" ;
      TOOLTIP "Calendar"

   DEFINE BUTTON OF oBar ACTION MsgInfo( "cobros" ) GROUP ;
      FILENAME "..\bitmaps\32x32\case.bmp" PROMPT "Cobros" TOOLTIP "Calendar"
      
   DEFINE BUTTON OF oBar ACTION MsgInfo( "clientes" ) GROUP ;
      FILENAME "..\bitmaps\32x32\people.bmp" PROMPT "Clientes y clientes potenciales" ;
      TOOLTIP "Clientes"

   DEFINE BUTTON OF oBar ACTION MsgInfo( "articulos" ) GROUP ;
      FILENAME "..\bitmaps\32x32\edit.bmp" PROMPT "Artículos" TOOLTIP "Calendar"

return oBar

//----------------------------------------------------------------------------//

function BuildExplorerBar( oWnd )

   local oExBar, oPanel1, oPanel2, oPanel3, oPanel4
   local bClick

   @ 0, 805 EXPLORERBAR oExBar OF oWnd SIZE 200, 400

   oPanel1 = oExBar:AddPanel( "One", "..\bitmaps\32x32\people.bmp" )
   oPanel1:lSpecial = .T.
   oPanel1:AddLink( "First item", bClick, "..\bitmaps\16x16\additem.bmp" )
   oPanel1:AddLink( "Second item", bClick, "..\bitmaps\16x16\copy.bmp" )
      
   oPanel2 = oExBar:AddPanel( "Two", "..\bitmaps\32x32\case.bmp" )
   oPanel2:AddLink( "First item", bClick, "..\bitmaps\16x16\adddbf.bmp" )
   oPanel2:AddLink( "Second item", bClick, "..\bitmaps\16x16\delete0.bmp" )
   oPanel2:AddLink( "Third item", bClick, "..\bitmaps\16x16\envelope.bmp" )
   oPanel2:AddLink( "Fourth item", bClick, "..\bitmaps\16x16\copy.bmp" )

   oPanel3 = oExBar:AddPanel( "Three", "..\bitmaps\32x32\graphics.bmp" )
   oPanel3:AddLink( "First item", bClick, "..\bitmaps\16x16\adddbf.bmp" )
   oPanel3:AddLink( "Second item", bClick, "..\bitmaps\16x16\delete0.bmp" )
   oPanel3:AddLink( "Third item", bClick, "..\bitmaps\16x16\envelope.bmp" )
   
   oPanel4 = oExBar:AddPanel( "Four" )
   oPanel4:AddLink( "First item", bClick, "..\bitmaps\16x16\additem.bmp" )
   oPanel4:AddLink( "Second item", bClick, "..\bitmaps\16x16\copy.bmp" )

   SetParent( oExBar:hWnd, oWnd:hWnd )
   
return oExBar

//----------------------------------------------------------------------------//

function BuildTitles( oWnd )

   local oTitle1, oTitle2, oTitle3, oTitle4, oTitle5, oTitle6, oTitle7, oFont1

   DEFINE FONT oFont1 NAME "Blackoak Std" SIZE 0, -20

   @ 0, 0 TITLE oTitle1 SIZE 800, 30 OF oWnd SHADOWSIZE 0
    
   oTitle1:aGrdBack = { { 1, nRGB( 87, 130, 199 ), nRGB( 25, 69, 159 ) } }
   
   @ 5, 10 TITLETEXT OF oTitle1 TEXT "Panel de resumen" FONT oFont1 ;
      COLOR nRGB( 255, 255, 255 )

   @ 8, 777 TITLEIMG OF oTitle1 BITMAP "..\bitmaps\16X16\close.bmp" TRANSPARENT   
      
   @ 60, 10 TITLE oTitle2 SIZE 385, 30 OF oWnd SHADOWSIZE 0
    
   oTitle2:aGrdBack = { { 1, nRGB( 87, 130, 199 ), nRGB( 25, 69, 159 ) } }
   
   @ 5, 35 TITLETEXT OF oTitle2 TEXT "Últimos Documentos de venta" FONT oFont1 ;
      COLOR nRGB( 255, 255, 255 )

   @ 8, 8 TITLEIMG OF oTitle2 BITMAP "..\bitmaps\16X16\favorite.bmp" TRANSPARENT   

   @ 60, 410 TITLE oTitle3 SIZE 385, 30 OF oWnd SHADOWSIZE 0
    
   oTitle3:aGrdBack = { { 1, nRGB( 87, 130, 199 ), nRGB( 25, 69, 159 ) } }
   
   @ 5, 35 TITLETEXT OF oTitle3 TEXT "Seguimiento Presupuesto" FONT oFont1 ;
      COLOR nRGB( 255, 255, 255 )

   @ 8, 8 TITLEIMG OF oTitle3 BITMAP "..\bitmaps\16X16\favorite.bmp" TRANSPARENT   

   @ 250, 10 TITLE oTitle4 SIZE 385, 30 OF oWnd SHADOWSIZE 0
    
   oTitle4:aGrdBack = { { 1, nRGB( 87, 130, 199 ), nRGB( 25, 69, 159 ) } }
   
   @ 5, 35 TITLETEXT OF oTitle4 TEXT "Vencimientos impagados" FONT oFont1 ;
      COLOR nRGB( 255, 255, 255 )

   @ 8, 8 TITLEIMG OF oTitle4 BITMAP "..\bitmaps\16X16\favorite.bmp" TRANSPARENT   

   @ 250, 410 TITLE oTitle5 SIZE 385, 30 OF oWnd SHADOWSIZE 0
    
   oTitle5:aGrdBack = { { 1, nRGB( 87, 130, 199 ), nRGB( 25, 69, 159 ) } }
   
   @ 5, 35 TITLETEXT OF oTitle5 TEXT "Estadísticas de venta" FONT oFont1 ;
      COLOR nRGB( 255, 255, 255 )

   @ 8, 8 TITLEIMG OF oTitle5 BITMAP "..\bitmaps\16X16\favorite.bmp" TRANSPARENT   

   @ 440, 10 TITLE oTitle6 SIZE 385, 30 OF oWnd SHADOWSIZE 0
    
   oTitle6:aGrdBack = { { 1, nRGB( 87, 130, 199 ), nRGB( 25, 69, 159 ) } }
   
   @ 5, 35 TITLETEXT OF oTitle6 TEXT "Ultimos documentos de compra" FONT oFont1 ;
      COLOR nRGB( 255, 255, 255 )

   @ 8, 8 TITLEIMG OF oTitle6 BITMAP "..\bitmaps\16X16\favorite.bmp" TRANSPARENT   

   @ 440, 410 TITLE oTitle7 SIZE 385, 30 OF oWnd SHADOWSIZE 0
    
   oTitle7:aGrdBack = { { 1, nRGB( 87, 130, 199 ), nRGB( 25, 69, 159 ) } }
   
   @ 5, 35 TITLETEXT OF oTitle7 TEXT "Estadísticas de compra" FONT oFont1 ;
      COLOR nRGB( 255, 255, 255 )

   @ 8, 8 TITLEIMG OF oTitle7 BITMAP "..\bitmaps\16X16\favorite.bmp" TRANSPARENT   

return nil

//----------------------------------------------------------------------------//

function BuildBrowses( oWnd )

   local oBrw1

   USE Customer
   
   @ 90, 10 XBROWSE oBrw1 FIELDS Customer->First, Customer->Last ;
      SIZE 385, 155 OF oWnd PIXEL
      
   oBrw1:CreateFromCode()   

return nil

//----------------------------------------------------------------------------//


regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: Implementing FWH own Class TExplorerBar
Posted: Sat Jun 26, 2010 09:03 PM
The gray color is my default color in Windows to low radiation for eyes,

Code (fw): Select all Collapse
#include "FiveWin.ch"
#include "Splitter.ch"
#include "TTitle.ch"
#include "xbrowse.ch"

//----------------------------------------------------------------------------//

function Main()

   local oWnd, oExBar, oSplit, oWndResumen

   DEFINE WINDOW oWnd TITLE "Facturación" MDI ;
      MENU BuildMenu() MENUINFO 9

   BuildButtonBar( oWnd )

   oExBar = BuildExplorerBar( oWnd )

   @ 0, 800 SPLITTER oSplit ;
      VERTICAL _3DLOOK ;
      PREVIOUS CONTROLS oWnd:oWndClient ; 
      HINDS CONTROLS oExBar ;
      SIZE 4, oWnd:nHeight - 70 PIXEL ;
      OF oWnd

   SetParent( oSplit:hWnd, oWnd:hWnd )
         
   DEFINE WINDOW oWndResumen TITLE "Panel de Resumen" MDICHILD OF oWnd ;
      COLOR "N/W*"

   BuildTitles( oWndResumen ) 
   
   BuildBrowses( oWndResumen )

   oWndResumen:Maximize()
   
   SET MESSAGE OF oWnd TO "Testing the ButtonBar 2007 Office look" ;
      CENTERED CLOCK KEYBOARD 2007
   
   ACTIVATE WINDOW oWnd MAXIMIZED ;
      ON RESIZE oSplit:Adjust()

return nil

//----------------------------------------------------------------------------//

function BuildMenu()

   local oMenu
   
   MENU oMenu 2007
      MENUITEM "&Archivo"
      MENUITEM "&Edición"
      MENUITEM "&Ver"
      MENUITEM "&Datos"
      MENUITEM "&Procesos"
      MENUITEM "&Impresiones"
      MENUITEM "&Herramientas"
      MENUITEM "Inte&rnet"
      MENUITEM "&Ventanas"
      MENUITEM "&?"
   ENDMENU
   
return oMenu      

//----------------------------------------------------------------------------//

function BuildButtonBar( oWnd )

   local oBar

   DEFINE BUTTONBAR oBar OF oWnd SIZE 125, 60 2007

   DEFINE BUTTON OF oBar ACTION MsgInfo( "presupuesto" ) ;
      FILENAME "..\bitmaps\32x32\case.bmp" PROMPT "Nuevo presupuesto" TOOLTIP "Attach"

   DEFINE BUTTON OF oBar ACTION MsgInfo( "factura" ) ;
      FILENAME "..\bitmaps\32x32\graphics.bmp" PROMPT "Nueva factura" TOOLTIP "Calendar"

   DEFINE BUTTON OF oBar ACTION MsgInfo( "venta" ) ;
      FILENAME "..\bitmaps\32x32\edit.bmp" PROMPT "Documentos de venta" TOOLTIP "Calendar"

   DEFINE BUTTON OF oBar ACTION MsgInfo( "compra" ) ;
      FILENAME "..\bitmaps\32x32\new.bmp" PROMPT "Documentos de compra" TOOLTIP "Calendar"

   DEFINE BUTTON OF oBar ACTION MsgInfo( "stock" ) GROUP ;
      FILENAME "..\bitmaps\32x32\graphics.bmp" PROMPT "Documentos de stock" ;
      TOOLTIP "Calendar"

   DEFINE BUTTON OF oBar ACTION MsgInfo( "cobros" ) GROUP ;
      FILENAME "..\bitmaps\32x32\case.bmp" PROMPT "Cobros" TOOLTIP "Calendar"
      
   DEFINE BUTTON OF oBar ACTION MsgInfo( "clientes" ) GROUP ;
      FILENAME "..\bitmaps\32x32\people.bmp" PROMPT "Clientes y clientes potenciales" ;
      TOOLTIP "Clientes"

   DEFINE BUTTON OF oBar ACTION MsgInfo( "articulos" ) GROUP ;
      FILENAME "..\bitmaps\32x32\edit.bmp" PROMPT "Artículos" TOOLTIP "Calendar"

return oBar

//----------------------------------------------------------------------------//

function BuildExplorerBar( oWnd )

   local oExBar, oPanel1, oPanel2, oPanel3, oPanel4
   local bClick

   @ 0, 805 EXPLORERBAR oExBar OF oWnd SIZE 200, 400

   oPanel1 = oExBar:AddPanel( "One", "..\bitmaps\32x32\people.bmp" )
   oPanel1:lSpecial = .T.
   oPanel1:AddLink( "First item", bClick, "..\bitmaps\16x16\additem.bmp" )
   oPanel1:AddLink( "Second item", bClick, "..\bitmaps\16x16\copy.bmp" )
      
   oPanel2 = oExBar:AddPanel( "Two", "..\bitmaps\32x32\case.bmp" )
   oPanel2:AddLink( "First item", bClick, "..\bitmaps\16x16\adddbf.bmp" )
   oPanel2:AddLink( "Second item", bClick, "..\bitmaps\16x16\delete0.bmp" )
   oPanel2:AddLink( "Third item", bClick, "..\bitmaps\16x16\envelope.bmp" )
   oPanel2:AddLink( "Fourth item", bClick, "..\bitmaps\16x16\copy.bmp" )

   oPanel3 = oExBar:AddPanel( "Three", "..\bitmaps\32x32\graphics.bmp" )
   oPanel3:AddLink( "First item", bClick, "..\bitmaps\16x16\adddbf.bmp" )
   oPanel3:AddLink( "Second item", bClick, "..\bitmaps\16x16\delete0.bmp" )
   oPanel3:AddLink( "Third item", bClick, "..\bitmaps\16x16\envelope.bmp" )
   
   oPanel4 = oExBar:AddPanel( "Four" )
   oPanel4:AddLink( "First item", bClick, "..\bitmaps\16x16\additem.bmp" )
   oPanel4:AddLink( "Second item", bClick, "..\bitmaps\16x16\copy.bmp" )

   SetParent( oExBar:hWnd, oWnd:hWnd )
   
return oExBar

//----------------------------------------------------------------------------//

function BuildTitles( oWnd )

   local oTitle1, oTitle2, oTitle3, oTitle4, oTitle5, oTitle6, oTitle7, oFont1

   DEFINE FONT oFont1 NAME "Blackoak Std" SIZE 0, -20

   @ 0, 0 TITLE oTitle1 SIZE 800, 30 OF oWnd SHADOWSIZE 0
    
   oTitle1:aGrdBack = { { 1, nRGB( 87, 130, 199 ), nRGB( 25, 69, 159 ) } }
   
   @ 5, 10 TITLETEXT OF oTitle1 TEXT "Panel de resumen" FONT oFont1 ;
      COLOR nRGB( 255, 255, 255 )

   @ 8, 777 TITLEIMG OF oTitle1 BITMAP "..\bitmaps\16X16\close.bmp" TRANSPARENT   
      
   @ 60, 10 TITLE oTitle2 SIZE 385, 30 OF oWnd SHADOWSIZE 0
    
   oTitle2:aGrdBack = { { 1, nRGB( 87, 130, 199 ), nRGB( 25, 69, 159 ) } }
   
   @ 5, 35 TITLETEXT OF oTitle2 TEXT "Últimos Documentos de venta" FONT oFont1 ;
      COLOR nRGB( 255, 255, 255 )

   @ 8, 8 TITLEIMG OF oTitle2 BITMAP "..\bitmaps\16X16\favorite.bmp" TRANSPARENT   

   @ 60, 410 TITLE oTitle3 SIZE 385, 30 OF oWnd SHADOWSIZE 0
    
   oTitle3:aGrdBack = { { 1, nRGB( 87, 130, 199 ), nRGB( 25, 69, 159 ) } }
   
   @ 5, 35 TITLETEXT OF oTitle3 TEXT "Seguimiento Presupuesto" FONT oFont1 ;
      COLOR nRGB( 255, 255, 255 )

   @ 8, 8 TITLEIMG OF oTitle3 BITMAP "..\bitmaps\16X16\favorite.bmp" TRANSPARENT   

   @ 250, 10 TITLE oTitle4 SIZE 385, 30 OF oWnd SHADOWSIZE 0
    
   oTitle4:aGrdBack = { { 1, nRGB( 87, 130, 199 ), nRGB( 25, 69, 159 ) } }
   
   @ 5, 35 TITLETEXT OF oTitle4 TEXT "Vencimientos impagados" FONT oFont1 ;
      COLOR nRGB( 255, 255, 255 )

   @ 8, 8 TITLEIMG OF oTitle4 BITMAP "..\bitmaps\16X16\favorite.bmp" TRANSPARENT   

   @ 250, 410 TITLE oTitle5 SIZE 385, 30 OF oWnd SHADOWSIZE 0
    
   oTitle5:aGrdBack = { { 1, nRGB( 87, 130, 199 ), nRGB( 25, 69, 159 ) } }
   
   @ 5, 35 TITLETEXT OF oTitle5 TEXT "Estadísticas de venta" FONT oFont1 ;
      COLOR nRGB( 255, 255, 255 )

   @ 8, 8 TITLEIMG OF oTitle5 BITMAP "..\bitmaps\16X16\favorite.bmp" TRANSPARENT   

   @ 440, 10 TITLE oTitle6 SIZE 385, 30 OF oWnd SHADOWSIZE 0
    
   oTitle6:aGrdBack = { { 1, nRGB( 87, 130, 199 ), nRGB( 25, 69, 159 ) } }
   
   @ 5, 35 TITLETEXT OF oTitle6 TEXT "Ultimos documentos de compra" FONT oFont1 ;
      COLOR nRGB( 255, 255, 255 )

   @ 8, 8 TITLEIMG OF oTitle6 BITMAP "..\bitmaps\16X16\favorite.bmp" TRANSPARENT   

   @ 440, 410 TITLE oTitle7 SIZE 385, 30 OF oWnd SHADOWSIZE 0
    
   oTitle7:aGrdBack = { { 1, nRGB( 87, 130, 199 ), nRGB( 25, 69, 159 ) } }
   
   @ 5, 35 TITLETEXT OF oTitle7 TEXT "Estadísticas de compra" FONT oFont1 ;
      COLOR nRGB( 255, 255, 255 )

   @ 8, 8 TITLEIMG OF oTitle7 BITMAP "..\bitmaps\16X16\favorite.bmp" TRANSPARENT   

return nil

//----------------------------------------------------------------------------//

function BuildBrowses( oWnd )

   local oBrw1, oBrw2, oBrw3, oBrw4, oBrw5, oBrw6

   USE Customer ALIAS "One" SHARED
   
   @ 90, 10 XBROWSE oBrw1 FIELDS One->First, One->Last ;
      SIZE 385, 155 OF oWnd PIXEL ALIAS "One"
      
   oBrw1:CreateFromCode()   

   USE Customer NEW ALIAS "Two" SHARED
   
   @ 90, 410 XBROWSE oBrw2 FIELDS Two->First, Two->Last ;
      SIZE 385, 155 OF oWnd PIXEL ALIAS "Two"
      
   oBrw2:CreateFromCode()   

   USE Customer NEW ALIAS "Three" SHARED
   
   @ 280, 10 XBROWSE oBrw3 FIELDS Three->First, Three->Last ;
      SIZE 385, 155 OF oWnd PIXEL ALIAS "Three"
      
   oBrw3:CreateFromCode()   

   USE Customer NEW ALIAS "Four" SHARED
   
   @ 280, 410 XBROWSE oBrw4 FIELDS Four->First, Four->Last ;
      SIZE 385, 155 OF oWnd PIXEL ALIAS "Four"
      
   oBrw4:CreateFromCode()   

   USE Customer NEW ALIAS "Five" SHARED
   
   @ 470, 10 XBROWSE oBrw5 FIELDS Five->First, Five->Last ;
      SIZE 385, 140 OF oWnd PIXEL ALIAS "Five"
      
   oBrw5:CreateFromCode()   

   USE Customer NEW ALIAS "Six" SHARED
   
   @ 470, 410 XBROWSE oBrw6 FIELDS Six->First, Six->Last ;
      SIZE 385, 140 OF oWnd PIXEL ALIAS "Six"
      
   oBrw6:CreateFromCode()   

return nil

//----------------------------------------------------------------------------//


regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 401
Joined: Tue Jan 05, 2010 02:33 PM
Re: Implementing FWH own Class TExplorerBar
Posted: Sat Jun 26, 2010 09:27 PM

NICE....

FWH .. BC582.. xharbour
Posts: 654
Joined: Fri Oct 21, 2005 05:54 AM
Re: Implementing FWH own Class TExplorerBar
Posted: Sun Jun 27, 2010 01:45 AM
Dear Mr.Antonio,

Code (fw): Select all Collapse
Ramesh,

We find a way to easily place the POPUP menu at the desired location


Very nice, Now it is looking exactly like MS OutLook 2003. :-)

Can we get these additions in 10.7 ?

Regards,

- Ramesh Babu P
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: Implementing FWH own Class TExplorerBar
Posted: Sun Jun 27, 2010 06:00 AM

Ramesh,

We have already included them in the FWH 10.6 revised version :-)

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 654
Joined: Fri Oct 21, 2005 05:54 AM
Re: Implementing FWH own Class TExplorerBar
Posted: Sun Jun 27, 2010 06:43 AM

Mr.Antonio,

It is a good news.

I will plan for my FWH Upgrade.

Thank you very much,

  • Ramesh Babu P
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: Implementing FWH own Class TExplorerBar
Posted: Sun Jun 27, 2010 08:28 AM
Once that we have a procedural style prototype, its own structure points us to its object oriented implementation that will help us to better organize its components :-)

Code (fw): Select all Collapse
// Demo of a MDI + Menu + ButtonBar + ExplorerBar + Splitter + MdiChild window + Titles + Browses

#include "FiveWin.ch"
#include "Splitter.ch"
#include "TTitle.ch"
#include "xbrowse.ch"

//----------------------------------------------------------------------------//

function Main()

   local oApp := TApplication():New()
   
   oApp:Run()
   
return nil   

//----------------------------------------------------------------------------//

CLASS TApplication

   DATA   oWndMain, oMenu, oExBar, oSplit
   DATA   oWndBrief
   
   METHOD New()
   METHOD BuildMenu()
   METHOD BuildButtonBar()
   METHOD BuildExplorerBar()
   METHOD Run()
   
ENDCLASS

//----------------------------------------------------------------------------//

METHOD New() CLASS TApplication

   DEFINE WINDOW ::oWndMain TITLE "Facturación" MDI ;
      MENU ::BuildMenu() MENUINFO 9

   ::BuildButtonBar()
   ::BuildExplorerBar()

   @ 0, 800 SPLITTER ::oSplit ;
      VERTICAL _3DLOOK ;
      PREVIOUS CONTROLS ::oWndMain:oWndClient ; 
      HINDS CONTROLS ::oExBar ;
      SIZE 4, ::oWndMain:nHeight - 70 PIXEL ;
      OF ::oWndMain

   SetParent( ::oSplit:hWnd, ::oWndMain:hWnd )
  
   ::oWndBrief = TWndBrief():New( ::oWndMain )

   SET MESSAGE OF ::oWndMain TO "MDI + Menu + ButtonBar + ExplorerBar demo" ;
      CENTERED CLOCK KEYBOARD 2007
         
return Self

//----------------------------------------------------------------------------//

METHOD Run() CLASS TApplication

   ACTIVATE WINDOW ::oWndMain MAXIMIZED ;
      ON RESIZE ::oSplit:Adjust()

return nil

//----------------------------------------------------------------------------//

METHOD BuildMenu() CLASS TApplication

   MENU ::oMenu 2007
      MENUITEM "&Archivo"
      MENUITEM "&Edición"
      MENUITEM "&Ver"
      MENUITEM "&Datos"
      MENUITEM "&Procesos"
      MENUITEM "&Impresiones"
      MENUITEM "&Herramientas"
      MENUITEM "Inte&rnet"
      MENUITEM "&Ventanas"
      MENUITEM "&?"
   ENDMENU
   
return ::oMenu      

//----------------------------------------------------------------------------//

METHOD BuildButtonBar() CLASS TApplication

   local oBar

   DEFINE BUTTONBAR oBar OF ::oWndMain SIZE 125, 60 2007

   DEFINE BUTTON OF oBar ACTION MsgInfo( "presupuesto" ) ;
      FILENAME "..\bitmaps\32x32\case.bmp" PROMPT "Nuevo presupuesto" TOOLTIP "Attach"

   DEFINE BUTTON OF oBar ACTION MsgInfo( "factura" ) ;
      FILENAME "..\bitmaps\32x32\graphics.bmp" PROMPT "Nueva factura" TOOLTIP "Calendar"

   DEFINE BUTTON OF oBar ACTION MsgInfo( "venta" ) ;
      FILENAME "..\bitmaps\32x32\edit.bmp" PROMPT "Documentos de venta" TOOLTIP "Calendar"

   DEFINE BUTTON OF oBar ACTION MsgInfo( "compra" ) ;
      FILENAME "..\bitmaps\32x32\new.bmp" PROMPT "Documentos de compra" TOOLTIP "Calendar"

   DEFINE BUTTON OF oBar ACTION MsgInfo( "stock" ) GROUP ;
      FILENAME "..\bitmaps\32x32\graphics.bmp" PROMPT "Documentos de stock" ;
      TOOLTIP "Calendar"

   DEFINE BUTTON OF oBar ACTION MsgInfo( "cobros" ) GROUP ;
      FILENAME "..\bitmaps\32x32\case.bmp" PROMPT "Cobros" TOOLTIP "Calendar"
      
   DEFINE BUTTON OF oBar ACTION MsgInfo( "clientes" ) GROUP ;
      FILENAME "..\bitmaps\32x32\people.bmp" PROMPT "Clientes y clientes potenciales" ;
      TOOLTIP "Clientes"

   DEFINE BUTTON OF oBar ACTION MsgInfo( "articulos" ) GROUP ;
      FILENAME "..\bitmaps\32x32\edit.bmp" PROMPT "Artículos" TOOLTIP "Calendar"

return oBar

//----------------------------------------------------------------------------//

METHOD BuildExplorerBar() CLASS TApplication

   local oPanel1, oPanel2, oPanel3, oPanel4
   local bClick

   @ 0, 805 EXPLORERBAR ::oExBar OF ::oWndMain SIZE 200, 400

   oPanel1 = ::oExBar:AddPanel( "One", "..\bitmaps\32x32\people.bmp" )
   oPanel1:lSpecial = .T.
   oPanel1:AddLink( "First item", bClick, "..\bitmaps\16x16\additem.bmp" )
   oPanel1:AddLink( "Second item", bClick, "..\bitmaps\16x16\copy.bmp" )
      
   oPanel2 = ::oExBar:AddPanel( "Two", "..\bitmaps\32x32\case.bmp" )
   oPanel2:AddLink( "First item", bClick, "..\bitmaps\16x16\adddbf.bmp" )
   oPanel2:AddLink( "Second item", bClick, "..\bitmaps\16x16\delete0.bmp" )
   oPanel2:AddLink( "Third item", bClick, "..\bitmaps\16x16\envelope.bmp" )
   oPanel2:AddLink( "Fourth item", bClick, "..\bitmaps\16x16\copy.bmp" )

   oPanel3 = ::oExBar:AddPanel( "Three", "..\bitmaps\32x32\graphics.bmp" )
   oPanel3:AddLink( "First item", bClick, "..\bitmaps\16x16\adddbf.bmp" )
   oPanel3:AddLink( "Second item", bClick, "..\bitmaps\16x16\delete0.bmp" )
   oPanel3:AddLink( "Third item", bClick, "..\bitmaps\16x16\envelope.bmp" )
   
   oPanel4 = ::oExBar:AddPanel( "Four" )
   oPanel4:AddLink( "First item", bClick, "..\bitmaps\16x16\additem.bmp" )
   oPanel4:AddLink( "Second item", bClick, "..\bitmaps\16x16\copy.bmp" )

   SetParent( ::oExBar:hWnd, ::oWndMain:hWnd )
   
return ::oExBar

//----------------------------------------------------------------------------//

CLASS TWndBrief

   DATA   oWnd

   METHOD New( oWndMain )
   METHOD BuildTitles()
   METHOD BuildBrowses()
   
ENDCLASS      
   
//----------------------------------------------------------------------------//

METHOD New( oWndMain ) CLASS TWndBrief
         
   DEFINE WINDOW ::oWnd TITLE "Panel de Resumen" MDICHILD OF oWndMain ;
      COLOR "N/W*"

   ::BuildTitles() 
   ::BuildBrowses()

   ::oWnd:Maximize()
   
return nil

//----------------------------------------------------------------------------//

METHOD BuildTitles() CLASS TWndBrief

   local oTitle1, oTitle2, oTitle3, oTitle4, oTitle5, oTitle6, oTitle7, oFont1

   DEFINE FONT oFont1 NAME "Blackoak Std" SIZE 0, -20

   @ 0, 0 TITLE oTitle1 SIZE 800, 30 OF ::oWnd SHADOWSIZE 0
    
   oTitle1:aGrdBack = { { 1, nRGB( 87, 130, 199 ), nRGB( 25, 69, 159 ) } }
   
   @ 5, 10 TITLETEXT OF oTitle1 TEXT "Panel de resumen" FONT oFont1 ;
      COLOR nRGB( 255, 255, 255 )

   @ 8, 777 TITLEIMG OF oTitle1 BITMAP "..\bitmaps\16X16\close.bmp" TRANSPARENT   
      
   @ 60, 10 TITLE oTitle2 SIZE 385, 30 OF ::oWnd SHADOWSIZE 0
    
   oTitle2:aGrdBack = { { 1, nRGB( 87, 130, 199 ), nRGB( 25, 69, 159 ) } }
   
   @ 5, 35 TITLETEXT OF oTitle2 TEXT "Últimos Documentos de venta" FONT oFont1 ;
      COLOR nRGB( 255, 255, 255 )

   @ 8, 8 TITLEIMG OF oTitle2 BITMAP "..\bitmaps\16X16\favorite.bmp" TRANSPARENT   

   @ 60, 410 TITLE oTitle3 SIZE 385, 30 OF ::oWnd SHADOWSIZE 0
    
   oTitle3:aGrdBack = { { 1, nRGB( 87, 130, 199 ), nRGB( 25, 69, 159 ) } }
   
   @ 5, 35 TITLETEXT OF oTitle3 TEXT "Seguimiento Presupuesto" FONT oFont1 ;
      COLOR nRGB( 255, 255, 255 )

   @ 8, 8 TITLEIMG OF oTitle3 BITMAP "..\bitmaps\16X16\favorite.bmp" TRANSPARENT   

   @ 250, 10 TITLE oTitle4 SIZE 385, 30 OF ::oWnd SHADOWSIZE 0
    
   oTitle4:aGrdBack = { { 1, nRGB( 87, 130, 199 ), nRGB( 25, 69, 159 ) } }
   
   @ 5, 35 TITLETEXT OF oTitle4 TEXT "Vencimientos impagados" FONT oFont1 ;
      COLOR nRGB( 255, 255, 255 )

   @ 8, 8 TITLEIMG OF oTitle4 BITMAP "..\bitmaps\16X16\favorite.bmp" TRANSPARENT   

   @ 250, 410 TITLE oTitle5 SIZE 385, 30 OF ::oWnd SHADOWSIZE 0
    
   oTitle5:aGrdBack = { { 1, nRGB( 87, 130, 199 ), nRGB( 25, 69, 159 ) } }
   
   @ 5, 35 TITLETEXT OF oTitle5 TEXT "Estadísticas de venta" FONT oFont1 ;
      COLOR nRGB( 255, 255, 255 )

   @ 8, 8 TITLEIMG OF oTitle5 BITMAP "..\bitmaps\16X16\favorite.bmp" TRANSPARENT   

   @ 440, 10 TITLE oTitle6 SIZE 385, 30 OF ::oWnd SHADOWSIZE 0
    
   oTitle6:aGrdBack = { { 1, nRGB( 87, 130, 199 ), nRGB( 25, 69, 159 ) } }
   
   @ 5, 35 TITLETEXT OF oTitle6 TEXT "Ultimos documentos de compra" FONT oFont1 ;
      COLOR nRGB( 255, 255, 255 )

   @ 8, 8 TITLEIMG OF oTitle6 BITMAP "..\bitmaps\16X16\favorite.bmp" TRANSPARENT   

   @ 440, 410 TITLE oTitle7 SIZE 385, 30 OF ::oWnd SHADOWSIZE 0
    
   oTitle7:aGrdBack = { { 1, nRGB( 87, 130, 199 ), nRGB( 25, 69, 159 ) } }
   
   @ 5, 35 TITLETEXT OF oTitle7 TEXT "Estadísticas de compra" FONT oFont1 ;
      COLOR nRGB( 255, 255, 255 )

   @ 8, 8 TITLEIMG OF oTitle7 BITMAP "..\bitmaps\16X16\favorite.bmp" TRANSPARENT   

return nil

//----------------------------------------------------------------------------//

METHOD BuildBrowses() CLASS TWndBrief

   local oBrw1, oBrw2, oBrw3, oBrw4, oBrw5, oBrw6

   USE Customer ALIAS "One" SHARED
   
   @ 90, 10 XBROWSE oBrw1 FIELDS One->First, One->Last ;
      SIZE 385, 155 OF ::oWnd PIXEL ALIAS "One"
      
   oBrw1:CreateFromCode()   

   USE Customer NEW ALIAS "Two" SHARED
   
   @ 90, 410 XBROWSE oBrw2 FIELDS Two->First, Two->Last ;
      SIZE 385, 155 OF ::oWnd PIXEL ALIAS "Two"
      
   oBrw2:CreateFromCode()   

   USE Customer NEW ALIAS "Three" SHARED
   
   @ 280, 10 XBROWSE oBrw3 FIELDS Three->First, Three->Last ;
      SIZE 385, 155 OF ::oWnd PIXEL ALIAS "Three"
      
   oBrw3:CreateFromCode()   

   USE Customer NEW ALIAS "Four" SHARED
   
   @ 280, 410 XBROWSE oBrw4 FIELDS Four->First, Four->Last ;
      SIZE 385, 155 OF ::oWnd PIXEL ALIAS "Four"
      
   oBrw4:CreateFromCode()   

   USE Customer NEW ALIAS "Five" SHARED
   
   @ 470, 10 XBROWSE oBrw5 FIELDS Five->First, Five->Last ;
      SIZE 385, 140 OF ::oWnd PIXEL ALIAS "Five"
      
   oBrw5:CreateFromCode()   

   USE Customer NEW ALIAS "Six" SHARED
   
   @ 470, 410 XBROWSE oBrw6 FIELDS Six->First, Six->Last ;
      SIZE 385, 140 OF ::oWnd PIXEL ALIAS "Six"
      
   oBrw6:CreateFromCode()   

return nil

//----------------------------------------------------------------------------//


This time we are testing it using FWH 64 bits :-)

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 3107
Joined: Fri Oct 07, 2005 06:28 PM
Re: Implementing FWH own Class TExplorerBar
Posted: Sun Jun 27, 2010 05:22 PM

Antonio,
Instead to use a mdichild I use a DIALOG with ::nStyle = nOR( WS_CHILD, 4 ) into a ::oWndMain normal
the result is the same and I not use SetParent command but only

oApp():oDlg := TMia():New(oApp():oWndMain)
oApp():oDlg:cTitle := i18n('Gestione Riparazioni')
oApp():oDlg:SetColor(0,RGB(143,172,230))
oApp():oWndMain:oClient := oApp():oDlg

Tmia is the class I use ( a dialog with WS_CHILD, 4 style)

JUST AN IDEA for you... :)

Best Regards, Saludos



Falconi Silvio
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: Implementing FWH own Class TExplorerBar
Posted: Sun Jun 27, 2010 06:31 PM

Silvio,

Yes, its a good option too, thanks :-)

Please post here the complete source code, so others can use it too, thanks :-)

regards, saludos

Antonio Linares
www.fivetechsoft.com