Hi Johan,
I have a modified version using a custom CSS file that allows the XP Panel to be whatever height it needs (CSS 100%). It also requires a little bit of code to be added to the menu procedures to get around a few things.
I've also tested in IE6&7, FF2&3, Safari and Chrome.
This is how i do it:
Add into your custom CSS
#wrapper {
height:100%;
background-color: #969aa0; <- thats my colour yours in probably different
margin: 0;
padding: 0;
border: none;
}
.dhtmlgoodies_xpPane{
background-color:#969aa0;
float:left;
width:200px; <- mine is 200px width not 150
}
I'm pretty sure thats all the CSS thats needed. Then i hack in a table which is a web technique to force 100% height in all browsers.
I am using frames, but it would also apply without. In my LeftFrame procedure (where the XP Panel is defined as an extension)
Create a piece of XHTML "After <body>" to include this, call it WrapperHeader:
<table id="wrapper" valign="top" height="100%">
<tr><td valign="top">
Create another "Before </body>" call it WrapperFooter:
</td></tr></table>
This just wraps the whole left menu in a 100% height table. The CSS for wrapper colours it in the same background colour as the panel itself.
In the most recent version of NetTalk Bruce has added a new DIV which breaks this code so I've unceremoniously hacked it out.
You'll need to add two embeds to strip out the code, its ugly and i'm embarrashed, (but it was quite pretty until recent builds) but it works. The embed is "Processed Code"
! [Priority 1200]
IF 1=0
packet = clip(packet) & p_web._jsBodyOnLoad('PageBodyHardLeft',,)
do SendPacket
Do WrapperHeader
do SendPacket
! [Priority 2700]
END
Do WrapperHeader
do SendPacket
The bold is my code. If you read the code you'll see I am getting rid of the jsBodyOnLoad, which introduces a new DIV which screws my CSS.
I know it messy, but once it done you can forget about the XP Panel and can trust it to work nicely and fill the whole left side of the browser and not look cut off halfway down.
Regards
Bill