Hi all
How to resize GROUP of RibbonBar when group is focused od some button of the group is pressed ?
On some ITEMS of RibbonBar i have more groups than can be showed so resizing can help
Best regards,
#include "fivewin.ch"
#include "ribbon.ch"
function main()
local oRBar, oLastG
local oWnd, oGr1, oGr2
DEFINE WINDOW oWnd TITLE "RibbonBar Test " + FWVERSION from 1,1 to 600,600 pixel //brush oBrush1
DEFINE RIBBONBAR oRBar WINDOW oWnd PROMPT "Config", "Files" HEIGHT 133 TOPMARGIN 25
ADD GROUP oGr1 RIBBON oRBar TO OPTION 1 PROMPT "Clipboard" width 60
oGr1:Cargo = { "STRETCH" => 215, "NORMAL" => 60}
ADD GROUP oGr2 RIBBON oRBar TO OPTION 1 PROMPT "Font" width 60
oGr2:Cargo = { "STRETCH" => 215, "NORMAL" => 60}
oRBar:aDialogs[1]:bMMoved = {||
local oControl
for each oControl in oRBar:aDialogs[1]:aControls
if oControl:isKindof( "TRBGROUP")
if oControl:nWidth == oControl:Cargo["STRETCH"] .AND. ! oControl:lMOver
oControl:SetSize( oControl:Cargo["NORMAL"], oControl:nHeight )
endif
endif
next
oRBar:Refresh()
return 0
}
oGr1:bMMoved = BuildCodeBlockMMoved( oGr1 )
oGr2:bMMoved = BuildCodeBlockMMoved( oGr2 )
ACTIVATE WINDOW oWnd MAXIMIZED
oRBar:End()
return nil
function BuildCodeBlockMMoved( oGroup )
return {| nRow, nCol|
Eval( oGroup:oRB:aDialogs[1]:bMMoved )
oGroup:MouseHover(nRow, nCol)
if oGroup:nWidth != oGroup:Cargo["STRETCH"]
oGroup:setSize( oGroup:Cargo["STRETCH"], oGroup:nHeight)
oGroup:Refresh()
endif
return 0
}
#include "fivewin.ch"
#include "ribbon.ch"
function main()
local oRBar, oLastG
local oWnd, oGr1, oGr2, oGr3, oGr4, oGr5, oGr6, oGr7, oGr8, oGr9
local oBtn
DEFINE WINDOW oWnd TITLE "RibbonBar Test " + FWVERSION from 1,1 to 600,600 pixel //brush oBrush1
DEFINE RIBBONBAR oRBar WINDOW oWnd ;
PROMPT "Test1", "Test2" ;
HEIGHT 133 TOPMARGIN 25
ADD GROUP oGr1 RIBBON oRBar TO OPTION 1 PROMPT "Group1" width 60
oGr1:Cargo = { "STRETCH" => 215, "NORMAL" => 60}
ADD GROUP oGr2 RIBBON oRBar TO OPTION 1 PROMPT "Group2" width 60
oGr2:Cargo = { "STRETCH" => 215, "NORMAL" => 60}
ADD GROUP oGr3 RIBBON oRBar TO OPTION 1 PROMPT "Group3" width 60
oGr3:Cargo = { "STRETCH" => 215, "NORMAL" => 60}
ADD GROUP oGr4 RIBBON oRBar TO OPTION 1 PROMPT "Group4" width 60
oGr4:Cargo = { "STRETCH" => 215, "NORMAL" => 60}
ADD GROUP oGr5 RIBBON oRBar TO OPTION 1 PROMPT "Group5" width 60
oGr5:Cargo = { "STRETCH" => 215, "NORMAL" => 60}
ADD GROUP oGr6 RIBBON oRBar TO OPTION 1 PROMPT "Group6" width 60
oGr6:Cargo = { "STRETCH" => 215, "NORMAL" => 60}
ADD GROUP oGr7 RIBBON oRBar TO OPTION 1 PROMPT "Group7" width 60
oGr7:Cargo = { "STRETCH" => 215, "NORMAL" => 60}
ADD GROUP oGr8 RIBBON oRBar TO OPTION 1 PROMPT "Group8" width 60
oGr8:Cargo = { "STRETCH" => 215, "NORMAL" => 60}
ADD GROUP oGr9 RIBBON oRBar TO OPTION 1 PROMPT "Group9" width 60
oGr9:Cargo = { "STRETCH" => 215, "NORMAL" => 60}
oRBar:aDialogs[1]:bMMoved = <||
local oControl
for each oControl in oRBar:aDialogs[1]:aControls
if oControl:isKindof( "TRBGROUP")
if oControl:nWidth == oControl:Cargo["STRETCH"] .AND. ! oControl:lMOver
oControl:SetSize( oControl:Cargo["NORMAL"], oControl:nHeight )
endif
endif
next
oRBar:Refresh()
return 0
>
oGr1:bMMoved = BuildCodeBlockMMoved( oGr1 )
oGr2:bMMoved = BuildCodeBlockMMoved( oGr2 )
oGr3:bMMoved = BuildCodeBlockMMoved( oGr3 )
oGr4:bMMoved = BuildCodeBlockMMoved( oGr4 )
oGr5:bMMoved = BuildCodeBlockMMoved( oGr5 )
oGr6:bMMoved = BuildCodeBlockMMoved( oGr6 )
oGr7:bMMoved = BuildCodeBlockMMoved( oGr7 )
oGr8:bMMoved = BuildCodeBlockMMoved( oGr8 )
oGr9:bMMoved = BuildCodeBlockMMoved( oGr9 )
@ 10, 5 ADD BUTTON oBtn PROMPT "Users1" BITMAP "..\bitmaps\users.bmp" ;
GROUP oGr1 SPLITPOPUP ROUND SIZE 50,65
@ 10,65 ADD BUTTON oBtn PROMPT "Add user Group1" BITMAP "..\bitmaps\addrec.bmp";
GROUP oGr1 MOSTLEFT ROUND SIZE 135,20
@ 30,65 ADD BUTTON oBtn PROMPT "Edit user Group1" BITMAP "..\bitmaps\edit.bmp" ;
GROUP oGr1 MOSTLEFT ROUND SIZE 135,20
@ 50,65 ADD BUTTON oBtn PROMPT "Remove user Group1" BITMAP "..\bitmaps\delrec.bmp";
GROUP oGr1 MOSTLEFT ROUND SIZE 135,20
@ 10, 5 ADD BUTTON oBtn PROMPT "Users2" BITMAP "..\bitmaps\users.bmp" ;
GROUP oGr2 SPLITPOPUP ROUND SIZE 50,65
@ 10,65 ADD BUTTON oBtn PROMPT "Add user Group2" BITMAP "..\bitmaps\addrec.bmp";
GROUP oGr2 MOSTLEFT ROUND SIZE 135,20
@ 30,65 ADD BUTTON oBtn PROMPT "Edit user Group2" BITMAP "..\bitmaps\edit.bmp" ;
GROUP oGr2 MOSTLEFT ROUND SIZE 135,20
@ 50,65 ADD BUTTON oBtn PROMPT "Remove user Group2" BITMAP "..\bitmaps\delrec.bmp";
GROUP oGr2 MOSTLEFT ROUND SIZE 135,20
@ 10, 5 ADD BUTTON oBtn PROMPT "Users3" BITMAP "..\bitmaps\users.bmp" ;
GROUP oGr3 SPLITPOPUP ROUND SIZE 50,65
@ 10,65 ADD BUTTON oBtn PROMPT "Add user Group3" BITMAP "..\bitmaps\addrec.bmp";
GROUP oGr3 MOSTLEFT ROUND SIZE 135,20
@ 30,65 ADD BUTTON oBtn PROMPT "Edit user Group3" BITMAP "..\bitmaps\edit.bmp" ;
GROUP oGr3 MOSTLEFT ROUND SIZE 135,20
@ 50,65 ADD BUTTON oBtn PROMPT "Remove user Group3" BITMAP "..\bitmaps\delrec.bmp";
GROUP oGr3 MOSTLEFT ROUND SIZE 135,20
@ 10, 5 ADD BUTTON oBtn PROMPT "Users4" BITMAP "..\bitmaps\users.bmp" ;
GROUP oGr4 SPLITPOPUP ROUND SIZE 50,65
@ 10,65 ADD BUTTON oBtn PROMPT "Add user Group4" BITMAP "..\bitmaps\addrec.bmp";
GROUP oGr4 MOSTLEFT ROUND SIZE 135,20
@ 30,65 ADD BUTTON oBtn PROMPT "Edit user Group4" BITMAP "..\bitmaps\edit.bmp" ;
GROUP oGr4 MOSTLEFT ROUND SIZE 135,20
@ 50,65 ADD BUTTON oBtn PROMPT "Remove user Group4" BITMAP "..\bitmaps\delrec.bmp";
GROUP oGr4 MOSTLEFT ROUND SIZE 135,20
@ 10, 5 ADD BUTTON oBtn PROMPT "Users5" BITMAP "..\bitmaps\users.bmp" ;
GROUP oGr5 SPLITPOPUP ROUND SIZE 50,65
@ 10,65 ADD BUTTON oBtn PROMPT "Add user Group5" BITMAP "..\bitmaps\addrec.bmp";
GROUP oGr5 MOSTLEFT ROUND SIZE 135,20
@ 30,65 ADD BUTTON oBtn PROMPT "Edit user Group5" BITMAP "..\bitmaps\edit.bmp" ;
GROUP oGr5 MOSTLEFT ROUND SIZE 135,20
@ 50,65 ADD BUTTON oBtn PROMPT "Remove user Group5" BITMAP "..\bitmaps\delrec.bmp";
GROUP oGr5 MOSTLEFT ROUND SIZE 135,20
@ 10, 5 ADD BUTTON oBtn PROMPT "Users6" BITMAP "..\bitmaps\users.bmp" ;
GROUP oGr6 SPLITPOPUP ROUND SIZE 50,65
@ 10,65 ADD BUTTON oBtn PROMPT "Add user Group6" BITMAP "..\bitmaps\addrec.bmp";
GROUP oGr6 MOSTLEFT ROUND SIZE 135,20
@ 30,65 ADD BUTTON oBtn PROMPT "Edit user Group6" BITMAP "..\bitmaps\edit.bmp" ;
GROUP oGr6 MOSTLEFT ROUND SIZE 135,20
@ 50,65 ADD BUTTON oBtn PROMPT "Remove user Group6" BITMAP "..\bitmaps\delrec.bmp";
GROUP oGr6 MOSTLEFT ROUND SIZE 135,20
@ 10, 5 ADD BUTTON oBtn PROMPT "Users7" BITMAP "..\bitmaps\users.bmp" ;
GROUP oGr7 SPLITPOPUP ROUND SIZE 50,65
@ 10,65 ADD BUTTON oBtn PROMPT "Add user Group7" BITMAP "..\bitmaps\addrec.bmp";
GROUP oGr7 MOSTLEFT ROUND SIZE 135,20
@ 30,65 ADD BUTTON oBtn PROMPT "Edit user Group7" BITMAP "..\bitmaps\edit.bmp" ;
GROUP oGr7 MOSTLEFT ROUND SIZE 135,20
@ 50,65 ADD BUTTON oBtn PROMPT "Remove user Group7" BITMAP "..\bitmaps\delrec.bmp";
GROUP oGr7 MOSTLEFT ROUND SIZE 135,20
@ 10, 5 ADD BUTTON oBtn PROMPT "Users8" BITMAP "..\bitmaps\users.bmp" ;
GROUP oGr8 SPLITPOPUP ROUND SIZE 50,65
@ 10,65 ADD BUTTON oBtn PROMPT "Add user Group8" BITMAP "..\bitmaps\addrec.bmp";
GROUP oGr8 MOSTLEFT ROUND SIZE 135,20
@ 30,65 ADD BUTTON oBtn PROMPT "Edit user Group8" BITMAP "..\bitmaps\edit.bmp" ;
GROUP oGr8 MOSTLEFT ROUND SIZE 135,20
@ 50,65 ADD BUTTON oBtn PROMPT "Remove user Group8" BITMAP "..\bitmaps\delrec.bmp";
GROUP oGr8 MOSTLEFT ROUND SIZE 135,20
@ 10, 5 ADD BUTTON oBtn PROMPT "Users9" BITMAP "..\bitmaps\users.bmp" ;
GROUP oGr9 SPLITPOPUP ROUND SIZE 50,65
@ 10,65 ADD BUTTON oBtn PROMPT "Add user Group9" BITMAP "..\bitmaps\addrec.bmp";
GROUP oGr9 MOSTLEFT ROUND SIZE 135,20
@ 30,65 ADD BUTTON oBtn PROMPT "Edit user Group9" BITMAP "..\bitmaps\edit.bmp" ;
GROUP oGr9 MOSTLEFT ROUND SIZE 135,20
@ 50,65 ADD BUTTON oBtn PROMPT "Remove user Group9" BITMAP "..\bitmaps\delrec.bmp";
GROUP oGr9 MOSTLEFT ROUND SIZE 135,20
ACTIVATE WINDOW oWnd MAXIMIZED
oRBar:End()
return nil
function BuildCodeBlockMMoved( oGroup )
return <| nRow, nCol|
Eval( oGroup:oRB:aDialogs[1]:bMMoved )
oGroup:MouseHover(nRow, nCol)
if oGroup:nWidth != oGroup:Cargo["STRETCH"]
oGroup:setSize( oGroup:Cargo["STRETCH"], oGroup:nHeight)
oGroup:Refresh()
endif
return 0
>
Return to FiveWin for Harbour/xHarbour
Users browsing this forum: Google [Bot] and 52 guests