Page 1 of 3

New FWH 10.7

PostPosted: Wed Jul 28, 2010 5:01 am
by Antonio Linares

Re: New FWH 10.7

PostPosted: Wed Jul 28, 2010 8:46 am
by MdaSolution
Antonio,
Do you made some changes for create explorerBar on a Dialog and Create for the obj a vertical scroll to scroll the explorer object if we have many panels on it ?

Image

try this sample code
Code: Select all  Expand view
#include "FiveWin.ch"

STATIC ODLG,oExBar

Function TestDialog()

      DEFINE DIALOG oDlg  ;
                  SIZE 800,600 ;
                  TITLE "Test ExplorerBar on a Dialog"


oExBar:=TExplorerBar():New(0, 0, 112,  800 , oDlg)


ACTIVATE DIALOG   oDlg  ON INIT BarExplorer(oExBar)


return nil

FUNCTION BarExplorer(oExBar)
   local oPanel1, oPanel2, oPanel3, oPanel4
   local bClick := { | o | MsgInfo( o:GetText() ) }

  oPanel1:= oExBar:AddPanel( "Panel 1", , 200)
  oPanel1:lSpecial:=.T.
  oPanel2 = oExBar:AddPanel( "Panel 2", , 200)
  oPanel3 = oExBar:AddPanel( "Panel 3", , 100)
  oPanel4 = oExBar:AddPanel( "Panel 4", , 200)
  oPanel5 = oExBar:AddPanel( "Panel 5", , 100)
  oPanel6 = oExBar:AddPanel( "Panel 6", , 200)


   oPanel1:AddLink( "First item", bClick, "additem" )
   oPanel1:AddLink( "Second item", bClick, "copy" )

   oPanel2:AddLink( "First item", bClick, "adddbf" )
   oPanel2:AddLink( "Second item", bClick, "delete" )
   oPanel2:AddLink( "Third item", bClick, "envelope" )
   oPanel2:AddLink( "Fourth item", bClick, "envelope")

   oPanel3:AddLink( "First item", bClick, "adddbf" )
   oPanel3:AddLink( "Second item", bClick, "delete" )
   oPanel3:AddLink( "Third item", bClick, "envelope" )
   oPanel3:AddLink( "Fourth item", bClick, "envelope")

   oPanel4:AddLink( "First item", bClick, "adddbf" )
   oPanel4:AddLink( "Second item", bClick, "delete" )
   oPanel4:AddLink( "Third item", bClick, "envelope" )
   oPanel4:AddLink( "Fourth item", bClick, "envelope")

   oPanel5:AddLink( "First item", bClick, "adddbf" )
   oPanel5:AddLink( "Second item", bClick, "delete" )
   oPanel5:AddLink( "Third item", bClick, "envelope" )
   oPanel5:AddLink( "Fourth item", bClick, "envelope")

   oPanel6:AddLink( "First item", bClick, "adddbf" )
   oPanel6:AddLink( "Second item", bClick, "delete" )
   oPanel6:AddLink( "Third item", bClick, "envelope" )
   oPanel6:AddLink( "Fourth item", bClick, "envelope")

     oDlg:oleft= oExBar

   RETU NIL
 

Re: New FWH 10.7

PostPosted: Wed Jul 28, 2010 2:18 pm
by James Bott
Antonio,

One nice improvement would be for the panels to automatically resize themselves based on how many items they contain. Of course, this means the following panels have to move up to fill the space.

This is how Windows Explorer's panels work.

Regards,
James

Re: New FWH 10.7

PostPosted: Wed Jul 28, 2010 5:17 pm
by TimStone
Antonio,

I posted a problem with the calendar class, and a complete fix was provided several weeks ago. I'm sorry that was not added to this build. You might want to review the thread on it.

Thanks.

Tim

Re: New FWH 10.7

PostPosted: Wed Jul 28, 2010 8:05 pm
by MdaSolution
James,

if you try Reyes explorerbar class you can see how explorer object work on a dialog

We need a scroll bar near to panel to scroll all panels into object oExplorerbar if the numbers of panel are > of the height of object Explorerbar

Perhaps there is something I not undestand of Explorerbar class

My suggestion and propose is that we must create a TasPanel object often explorerbar obj

I explain you :

a Task panel object can be into a dialog or a window

If we must use many taskpanels as my sample test we can create a panel simply with a vertical scroll as the panel of fwppc

but this is only a suggestion...

Re: New FWH 10.7

PostPosted: Wed Jul 28, 2010 10:52 pm
by James Bott
I expect Antiono has plans to add scrolling. However, he does have to prioritize his work.

James

Re: New FWH 10.7

PostPosted: Thu Jul 29, 2010 4:27 am
by nageswaragunupudi
TimStone wrote:Antonio,

I posted a problem with the calendar class, and a complete fix was provided several weeks ago. I'm sorry that was not added to this build. You might want to review the thread on it.

Thanks.

Tim

Is that fix working well for you?

Re: New FWH 10.7

PostPosted: Thu Jul 29, 2010 1:09 pm
by Antonio Linares
James,

James Bott wrote:Antonio,

One nice improvement would be for the panels to automatically resize themselves based on how many items they contain. Of course, this means the following panels have to move up to fill the space.

This is how Windows Explorer's panels work.

Regards,
James


It is the way FWH Class TExplorerBar actually works :-)

Re: New FWH 10.7

PostPosted: Thu Jul 29, 2010 1:11 pm
by Antonio Linares
Tim,

Surely we will publish a revised FWH 10.7 version, tomorrow or along this next weekend. There were some missing items to include.

We have already updated the published whatsnew.txt here in the forums, and some more info will be added :-)

Re: New FWH 10.7

PostPosted: Sat Jul 31, 2010 5:27 am
by Antonio Linares
Published a revised FWH 10.7 build

Please download it again, thanks :-)

Re: New FWH 10.7

PostPosted: Tue Aug 03, 2010 3:28 pm
by MdaSolution
Sorry Mr Antonio,
We saw your modifies but...
Perhaps we not explain you the problem!

Image

We need to insert a xbrowse on this dialog and the vertical scroll of xbrowse come near to vertical scroll of dialog

On Window system this is no correct.








Image









Please try this sample


Code: Select all  Expand view


#include "FiveWin.ch"
#include "Splitter.ch"

STATIC oDlg,oExBar

Function TestDialog()
   Local aBrowse, oGrid ,nSplit,oSplit

   nSplit :=112


      DEFINE DIALOG oDlg  ;
                  SIZE 800,600 ;
                  TITLE "Test ExplorerBar on a Dialog"


oExBar:=TExplorerBar():New(0, 0, nSplit,  800 , oDlg)

USE CUSTOMER

   oGrid := TXBrowse():New( oDlg )
   oGrid:nTop    := 00
   oGrid:nLeft   := nSplit+2
   oGrid:nBottom :=  oDlg:nBottom




     aBrowse   := { { { || CU->FIRST }, i18n("First"), 150, 0 },;
                  { { || CU->LAST  }, i18n("Last"), 150, 0 },;
                  { { || CU->STREET}, i18n("Street"), 150, 0 },;
                  { { || CU->CITY } , i18n("City"), 150, 0 }  }


    FOR i := 1 TO Len(aBrowse)
      oCol := oGrid:AddCol()
      oCol:bStrData := aBrowse[ i, 1 ]
      oCol:cHeader  := aBrowse[ i, 2 ]
      oCol:nWidth   := aBrowse[ i, 3 ]
      oCol:nDataStrAlign := aBrowse[ i, 4 ]
      oCol:nHeadStrAlign := aBrowse[ i, 4 ]
   NEXT


   oGrid:SetRDD()
   oGrid:CreateFromCode()
  oDlg:oClient := oGrid

 
    @ 00, nSplit SPLITTER oSplit ;
      VERTICAL ;
       COLOR RGB(143,172,230) ;
      PREVIOUS CONTROLS oExBar;
      HINDS CONTROLS oGrid;
      SIZE 1, oDlg:nBottom  PIXEL ;
      OF oDlg ;
      UPDATE
         









ACTIVATE DIALOG   oDlg  ON INIT BarExplorer(oExBar)


return nil

FUNCTION BarExplorer(oExBar)
   local oPanel1, oPanel2, oPanel3, oPanel4
   local bClick := { | o | MsgInfo( o:GetText() ) }

  oPanel1:= oExBar:AddPanel( "Panel 1", , 200)
  oPanel1:lSpecial:=.T.
  oPanel2 = oExBar:AddPanel( "Panel 2", , 200)
  oPanel3 = oExBar:AddPanel( "Panel 3", , 100)
  oPanel4 = oExBar:AddPanel( "Panel 4", , 200)
  oPanel5 = oExBar:AddPanel( "Panel 5", , 100)
  oPanel6 = oExBar:AddPanel( "Panel 6", , 200)


   oPanel1:AddLink( "First item", bClick, "additem" )
   oPanel1:AddLink( "Second item", bClick, "copy" )

   oPanel2:AddLink( "First item", bClick, "adddbf" )
   oPanel2:AddLink( "Second item", bClick, "delete" )
   oPanel2:AddLink( "Third item", bClick, "envelope" )
   oPanel2:AddLink( "Fourth item", bClick, "envelope")

   oPanel3:AddLink( "First item", bClick, "adddbf" )
   oPanel3:AddLink( "Second item", bClick, "delete" )
   oPanel3:AddLink( "Third item", bClick, "envelope" )
   oPanel3:AddLink( "Fourth item", bClick, "envelope")

   oPanel4:AddLink( "First item", bClick, "adddbf" )
   oPanel4:AddLink( "Second item", bClick, "delete" )
   oPanel4:AddLink( "Third item", bClick, "envelope" )
   oPanel4:AddLink( "Fourth item", bClick, "envelope")

   oPanel5:AddLink( "First item", bClick, "adddbf" )
   oPanel5:AddLink( "Second item", bClick, "delete" )
   oPanel5:AddLink( "Third item", bClick, "envelope" )
   oPanel5:AddLink( "Fourth item", bClick, "envelope")

   oPanel6:AddLink( "First item", bClick, "adddbf" )
   oPanel6:AddLink( "Second item", bClick, "delete" )
   oPanel6:AddLink( "Third item", bClick, "envelope" )
   oPanel6:AddLink( "Fourth item", bClick, "envelope")

     oDlg:oleft= oExBar

   RETU NIL
 

Re: New FWH 10.7

PostPosted: Thu Aug 05, 2010 9:20 pm
by MdaSolution
Dear Antonio,
We resolved the problem !!

Now Run Ok

Look this
Image



We have played on..... Tpanel solution it is easy!!!!


Only when we make the resize of the main window it not refresh the value of the scroll ( or the height of explorerbar) Any Idea ?

Re: New FWH 10.7

PostPosted: Thu Aug 05, 2010 9:49 pm
by Otto
You have to bind your TPanel solution to TWindow. It is easy.
Best regards,
Otto

Re: New FWH 10.7

PostPosted: Thu Aug 05, 2010 11:20 pm
by MdaSolution
Otto,

I use a main window no mdi

on this I made a dialog with (nor style 4) Tfsdi tecnique

and on this dialog I insert 3 panel and at last the explorerbar class

I not use mdichild windows ...

Re: New FWH 10.7

PostPosted: Fri Aug 13, 2010 11:29 pm
by James Bott
MdaSolution,

It looks like you are using a splitter, and if so, I suggest not using it. Windows Explorer doesn't use one. There is no real reason to use one since there is no reason to need to resize the Explorer bar. Not using the splitter will make it simpler to code.

Are you setting each control to the window objects for top, left and client?

oWnd:oTop:= oRibbonbar
oWnd:oLeft:= oExplorerbar
oWnd:oClient:= oBrw

Then resizing should work.

You don't need any panels for this.

Regards,
James