Ejemplo n.º 1
0
void NowPlaying::init()
{
    switch (formFactor())
    {
        case Plasma::Horizontal:
            layoutHorizontal();
            break;
        case Plasma::Vertical:
            layoutHorizontal(); // FIXME
            break;
        default:
            layoutPlanar();
            break;
    }

    Plasma::DataEngine* nowPlayingEngine = dataEngine("nowplaying");

    if (nowPlayingEngine)
    {
        connect(nowPlayingEngine, SIGNAL(sourceAdded(QString)),
                SLOT(playerAdded(QString)));
        connect(nowPlayingEngine, SIGNAL(sourceRemoved(QString)),
                SLOT(playerRemoved(QString)));

        findPlayer();
    }
    else
    {
        kDebug() << "Now Playing engine not found";
    }
}
Ejemplo n.º 2
0
void NowPlaying::constraintsEvent(Plasma::Constraints constraints)
{
    if (constraints & Plasma::FormFactorConstraint)
    {
        switch (formFactor())
        {
            case Plasma::Horizontal:
                layoutHorizontal();
                break;
            case Plasma::Vertical:
                layoutHorizontal(); // FIXME
                break;
            default:
                layoutPlanar();
                break;
        }
    }

    if (constraints & Plasma::SizeConstraint)
    {
        switch (formFactor())
        {
            case Plasma::Horizontal:
                setPreferredSize(contentsRect().height() * 2, contentsRect().height());
                break;
            case Plasma::Vertical:
                setPreferredSize(contentsRect().width(), contentsRect().width() / 2);
                break;
            default:
                break;
        }
    }
}
Ejemplo n.º 3
0
/* DockPanel::onSize
 * Called when the panel is resized
 *******************************************************************/
void DockPanel::onSize(wxSizeEvent& e)
{
	// Get parent's AUI manager (if it exists)
	wxAuiManager* mgr = wxAuiManager::GetManager(GetParent());
	if (!mgr)
	{
		e.Skip();
		return;
	}

	// Check if floating
	if (mgr->GetPane(this).IsFloating())
	{
		if (current_layout != 0) layoutNormal();
		current_layout = 0;
	}
	else
	{
		// Not floating, layout horizontally or vertically depending on size
		if (GetSize().x >= GetSize().y)
		{
			if (current_layout != 1) layoutHorizontal();
			current_layout = 1;
		}
		else
		{
			if (current_layout != 2) layoutVertical();
			current_layout = 2;
		}
	}

	e.Skip();
}