Ignore:
Timestamp:
May 16, 2014, 9:51:55 AM (11 years ago)
Author:
Silvan Scherrer
Message:

SMPlayer: update trunk to latest 0.8.7

Location:
smplayer/trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • smplayer/trunk

  • smplayer/trunk/src/minigui.cpp

    r156 r165  
    11/*  smplayer, GUI front-end for mplayer.
    2     Copyright (C) 2006-2013 Ricardo Villalba <rvm@users.sourceforge.net>
     2    Copyright (C) 2006-2014 Ricardo Villalba <rvm@users.sourceforge.net>
    33
    44    This program is free software; you can redistribute it and/or modify
     
    1919#include "minigui.h"
    2020#include "widgetactions.h"
    21 #include "floatingwidget.h"
     21#include "autohidewidget.h"
    2222#include "myaction.h"
    2323#include "mplayerwindow.h"
     
    3939
    4040#if USE_CONFIGURABLE_TOOLBARS
    41         connect( editControlAct, SIGNAL(triggered()),
    42              controlwidget, SLOT(edit()) );
    43         floating_control->toolbar()->takeAvailableActionsFrom(this);
    44         connect( editFloatingControlAct, SIGNAL(triggered()),
    45              floating_control->toolbar(), SLOT(edit()) );
    46 #endif
    47 
    48         connect( this, SIGNAL(cursorNearBottom(QPoint)),
    49              this, SLOT(showFloatingControl(QPoint)) );
    50 
    51         connect( this, SIGNAL(cursorFarEdges()),
    52              this, SLOT(hideFloatingControl()) );
     41        connect( editControlAct, SIGNAL(triggered()), controlwidget, SLOT(edit()) );
     42        EditableToolbar * iw = static_cast<EditableToolbar *>(floating_control->internalWidget());
     43        iw->takeAvailableActionsFrom(this);
     44        connect( editFloatingControlAct, SIGNAL(triggered()), iw, SLOT(edit()) );
     45#endif
    5346
    5447        statusBar()->hide();
     
    127120void MiniGui::createFloatingControl() {
    128121        // Floating control
    129         floating_control = new FloatingWidget(this);
    130         floating_control->setLayoutDirection(Qt::LeftToRight);
     122        floating_control = new AutohideWidget(panel);
     123        floating_control->setAutoHide(true);
     124
     125        EditableToolbar * iw = new EditableToolbar(floating_control);
     126        iw->setObjectName("floating_control");
    131127
    132128#if USE_CONFIGURABLE_TOOLBARS
     
    138134        #endif
    139135        floatingcontrol_actions << "separator" << "timelabel_action";
    140         floating_control->toolbar()->setDefaultActions(floatingcontrol_actions);
     136        iw->setDefaultActions(floatingcontrol_actions);
    141137#else
    142         floating_control->toolbar()->addAction(playOrPauseAct);
    143         floating_control->toolbar()->addAction(stopAct);
    144         floating_control->toolbar()->addSeparator();
    145         floating_control->toolbar()->addAction(timeslider_action);
    146         floating_control->toolbar()->addSeparator();
    147         floating_control->toolbar()->addAction(fullscreenAct);
    148         floating_control->toolbar()->addAction(muteAct);
     138        iw->addAction(playOrPauseAct);
     139        iw->addAction(stopAct);
     140        iw->addSeparator();
     141        iw->addAction(timeslider_action);
     142        iw->addSeparator();
     143        iw->addAction(fullscreenAct);
     144        iw->addAction(muteAct);
    149145        #if USE_VOLUME_BAR
    150         floating_control->toolbar()->addAction(volumeslider_action);
     146        iw->addAction(volumeslider_action);
    151147        #endif
     148#endif // USE_CONFIGURABLE_TOOLBARS
     149
     150        floating_control->setInternalWidget(iw);
     151
     152#if !USE_CONFIGURABLE_TOOLBARS
    152153        floating_control->adjustSize();
    153 #endif // USE_CONFIGURABLE_TOOLBARS
     154#endif
     155
     156        floating_control->hide();
    154157}
    155158
     
    188191        BaseGuiPlus::aboutToEnterFullscreen();
    189192
     193        floating_control->setMargin(pref->floating_control_margin);
     194        floating_control->setPercWidth(pref->floating_control_width);
     195        floating_control->setAnimated(pref->floating_control_animated);
     196        floating_control->setActivationArea( (AutohideWidget::Activation) pref->floating_activation_area);
     197        floating_control->setHideDelay(pref->floating_hide_delay);
     198        QTimer::singleShot(500, floating_control, SLOT(activate()));
     199
    190200        if (!pref->compact_mode) {
    191201                controlwidget->hide();
     
    196206        BaseGuiPlus::aboutToExitFullscreen();
    197207
    198         floating_control->hide();
     208        floating_control->deactivate();
     209        //floating_control->hide();
    199210
    200211        if (!pref->compact_mode) {
     
    216227
    217228        controlwidget->show();
    218 }
    219 
    220 void MiniGui::showFloatingControl(QPoint /*p*/) {
    221 #ifndef Q_OS_WIN
    222         floating_control->setBypassWindowManager(pref->bypass_window_manager);
    223 #endif
    224         floating_control->setAnimated( pref->floating_control_animated );
    225         floating_control->setMargin(pref->floating_control_margin);
    226         floating_control->showOver(panel,
    227                                pref->floating_control_width,
    228                                FloatingWidget::Bottom);
    229 }
    230 
    231 void MiniGui::hideFloatingControl() {
    232         floating_control->hide();
    233229}
    234230
     
    257253        set->beginGroup( "actions" );
    258254        set->setValue("controlwidget", controlwidget->actionsToStringList() );
    259         set->setValue("floating_control", floating_control->toolbar()->actionsToStringList() );
     255        EditableToolbar * iw = static_cast<EditableToolbar *>(floating_control->internalWidget());
     256        set->setValue("floating_control", iw->actionsToStringList() );
    260257        set->endGroup();
    261258#endif
     
    291288        set->beginGroup( "actions" );
    292289        controlwidget->setActionsFromStringList( set->value("controlwidget", controlwidget->defaultActions()).toStringList() );
    293         floating_control->toolbar()->setActionsFromStringList( set->value("floating_control", floating_control->toolbar()->defaultActions()).toStringList() );
     290        EditableToolbar * iw = static_cast<EditableToolbar *>(floating_control->internalWidget());
     291        iw->setActionsFromStringList( set->value("floating_control", iw->defaultActions()).toStringList() );
    294292        floating_control->adjustSize();
    295293        set->endGroup();
Note: See TracChangeset for help on using the changeset viewer.