Again many thanks Michael. I agree that UX team should be the final say but I want to familiarize with as much code as possible and I figured this was an easy enough task that I could do the changes, show the UX team and then let them either accept or reject.<div>
<br></div><div>I've been able to do a bit of changes and now I'm on the last thing and that's pinpointing where the little black arrow png is. Any suggestions on where the arrow is being called, from there I think I'll be able to adjust it just a bit to meet the users want as well as still make the backingwindow look nice. Looking in the backingwindow.cxx I see where basically everything else is being called (all the buttons) but I don't see where that arrow is coming from. </div>
<div><br></div><div>Thanks again, </div><div><br></div><div>Joel</div><div><br><div class="gmail_quote">On Fri, Jul 6, 2012 at 12:36 PM, Michael Meeks <span dir="ltr"><<a href="mailto:michael.meeks@suse.com" target="_blank">michael.meeks@suse.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im"><br>
On Fri, 2012-07-06 at 08:54 -0700, Joel Madero wrote:<br>
> haha digging a ditch for myself ;) I think I now am following the<br>
> logic of MouseButtonDown but I'm still not seeing where it's being<br>
> called (and where rMEvt) is coming from. Basically where are the pixel<br>
> ranges defined as different actions (open vs. recent documents).<br>
<br>
</div> rMEvt comes from the VCL - it will have the mouse event co-ordinates<br>
correct; you don't want to change that bit :-)<br>
<br>
> <a href="https://bugs.freedesktop.org/show_bug.cgi?id=47164" target="_blank">https://bugs.freedesktop.org/show_bug.cgi?id=47164</a><br>
<br>
For me this works fine:<br>
<br>
if ( mnMenuMode & MENUBUTTON_MENUMODE_TIMED )<br>
<div class="im"> {<br>
// if the separated dropdown symbol is hit,<br>
// execute the popup immediately<br>
if( ! ImplGetSymbolRect().IsInside( rMEvt.GetPosPixel() ) )<br>
<br>
</div> And my 'ImplGetSymbolRect()' method seems to return something sensible;<br>
if you grok for 'SetSymbolRect' you can see what sets this.<br>
<br>
long nDistance = (aInRect.GetHeight() > 10) ? 2 : 1;<br>
DecorationView aDecoView( pDev );<br>
if( bMenuBtnSep )<br>
{<br>
long nX = aInRect.Left() - 2*nDistance;<br>
Point aStartPt( nX, aInRect.Top()+nDistance );<br>
Point aEndPt( nX, aInRect.Bottom()-nDistance );<br>
aDecoView.DrawSeparator( aStartPt, aEndPt );<br>
}<br>
aDecoView.DrawSymbol( aInRect, SYMBOL_SPIN_DOWN, aColor, nStyle );<br>
aInRect.Left() -= 2*nDistance;<br>
ImplSetSymbolRect( aInRect );<br>
<br>
Which already seems to nudge the left boundary further left so ... and<br>
the way right-to-left works that should work in that mode too.<br>
<br>
So - I don't really follow the bug; we could of course move the<br>
separator further across and make that drop-down area larger with some<br>
tweaks to the logic there, though that needs some UX input I think.<br>
<br>
It seems (oddly, but ~normal for VCL) that most of the menubutton logic<br>
lives in 'button.cxx' itself as special cases ;-) so best to poke there<br>
really.<br>
<br>
HTH !<br>
<div class="HOEnZb"><div class="h5"><br>
Michael.<br>
<br>
--<br>
<a href="mailto:michael.meeks@suse.com">michael.meeks@suse.com</a> <><, Pseudo Engineer, itinerant idiot<br>
<br>
</div></div></blockquote></div><br></div>