[mythtv] Plugins window not covering the menus question

florin baiduc florinbaiduc at gmail.com
Sat Apr 29 06:17:23 UTC 2006


On 4/29/06, florin baiduc <florinbaiduc at gmail.com> wrote:
> On 4/29/06, Isaac Richards <ijr at case.edu> wrote:
> > On Friday 28 April 2006 8:10 am, florin baiduc wrote:
> > > Dear all,
> > >
> > > Does anybody know (or can give me any ideeas) on how to make a
> > > plugin's window only partially cover the mythfrontend's menu structure
> > > (I want to see the menus while being inside the plugin).
> > > Purpose is for in-car usage, where usually the usual path (press
> > > escape to exit and then selec another plugin or menuitem is too long).
> > > I am asking this question specially to the mythfrontend developers,
> > > since they should know better the internals, but, as always, any
> > > suggestion is good. I am totally lost in this problem.
> >
> > I don't believe you can do this and still receive input on the parts that
> > aren't covered up.
> >
> > Isaac
> > _______________________________________________
> > mythtv-dev mailing list
> > mythtv-dev at mythtv.org
> > http://mythtv.org/cgi-bin/mailman/listinfo/mythtv-dev
> >
>
> But the input still works!! Try it.
> I know that you can still click (in MythMusic) on the menu (even if
> it's not visible, being hidden by the player's window) and activate
> other plugins. I tried with MythPhone.
> Put MythPhone in your MythMusic's menu structure (by adding the
> mythphone button to the music.xml), and after you open the player try
> clicking where the phone's button used to be. It will switch from the
> player (even if it's playing something) to the phone or whatever you
> got there..
> At least on my system this works...
> Regards.
> Florin
>

I found it. A small change in the MythDialog::MythDialog enables us to
set the plugin's window limits. The relevant code is here:

if (setsize)
    {
    	xbase=xb;
	ybase=yb;
	screenwidth=width;
	screenheight=height;
        move(xbase, ybase);
        setFixedSize(QSize(screenwidth, screenheight));
        gContext->ThemeWidget(this);
    }

I passed setsize as true and after the setsize argument I passed 4
integers (xb,yb,width, height). Works with no problem, and I can see
(and click by touchpanel) on the menus...

I noticed a different problem now, the main menu screen need redrawing
(If I'm correct, only the top screen is redrawn, in the
MythMainWindow::drawTimeout().
The aswer to Isaac's question the code commentary(
// Should we care if non-top level screens need redrawing?
) is yes, I'm afraid we should :)) .


More information about the mythtv-dev mailing list