Ignore:
Timestamp:
Mar 29, 2012, 4:53:15 PM (13 years ago)
Author:
Silvan Scherrer
Message:

SMPlayer: trunk update to latest svn

Location:
smplayer/trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • smplayer/trunk

  • smplayer/trunk/src/defaultgui.cpp

    r124 r128  
    2828#include "images.h"
    2929#include "floatingwidget.h"
    30 #include "toolbareditor.h"
    3130#include "desktopinfo.h"
     31#include "editabletoolbar.h"
    3232
    3333#if DOCK_PLAYLIST
     
    3636
    3737#include <QMenu>
    38 #include <QToolBar>
    3938#include <QSettings>
    4039#include <QLabel>
     
    4847using namespace Global;
    4948
    50 DefaultGui::DefaultGui( bool use_server, QWidget * parent, Qt::WindowFlags flags )
    51         : BaseGuiPlus( use_server, parent, flags )
     49DefaultGui::DefaultGui( QWidget * parent, Qt::WindowFlags flags )
     50        : BaseGuiPlus( parent, flags )
    5251{
    5352        createStatusBar();
     
    7675        createMenus();
    7776
     77#if USE_CONFIGURABLE_TOOLBARS
     78        connect( editToolbar1Act, SIGNAL(triggered()),
     79             toolbar1, SLOT(edit()) );
     80        connect( editControl1Act, SIGNAL(triggered()),
     81             controlwidget, SLOT(edit()) );
     82        connect( editControl2Act, SIGNAL(triggered()),
     83             controlwidget_mini, SLOT(edit()) );
     84        floating_control->toolbar()->takeAvailableActionsFrom(this);
     85        connect( editFloatingControlAct, SIGNAL(triggered()),
     86             floating_control->toolbar(), SLOT(edit()) );
     87#endif
     88
    7889        retranslateStrings();
    7990
     
    137148        connect( viewFrameCounterAct, SIGNAL(toggled(bool)),
    138149             frame_display, SLOT(setVisible(bool)) );
     150
     151#if USE_CONFIGURABLE_TOOLBARS
     152        editToolbar1Act = new MyAction( this, "edit_main_toolbar" );
     153        editControl1Act = new MyAction( this, "edit_control1" );
     154        editControl2Act = new MyAction( this, "edit_control2" );
     155        editFloatingControlAct = new MyAction( this, "edit_floating_control" );
     156#endif
    139157}
    140158
     
    161179        toolbar_menu->addAction(toolbar1->toggleViewAction());
    162180        toolbar_menu->addAction(toolbar2->toggleViewAction());
     181#if USE_CONFIGURABLE_TOOLBARS
     182        toolbar_menu->addSeparator();
     183        toolbar_menu->addAction(editToolbar1Act);
     184        toolbar_menu->addAction(editControl1Act);
     185        toolbar_menu->addAction(editControl2Act);
     186        toolbar_menu->addAction(editFloatingControlAct);
     187#endif
    163188        optionsMenu->addSeparator();
    164189        optionsMenu->addMenu(toolbar_menu);
     
    173198QMenu * DefaultGui::createPopupMenu() {
    174199        QMenu * m = new QMenu(this);
     200#if USE_CONFIGURABLE_TOOLBARS
     201        m->addAction(editToolbar1Act);
     202        m->addAction(editControl1Act);
     203        m->addAction(editControl2Act);
     204        m->addAction(editFloatingControlAct);
     205#else
    175206        m->addAction(toolbar1->toggleViewAction());
    176207        m->addAction(toolbar2->toggleViewAction());
     208#endif
    177209        return m;
    178210}
    179211
    180212void DefaultGui::createMainToolBars() {
    181         toolbar1 = new QToolBar( this );
     213        toolbar1 = new EditableToolbar( this );
    182214        toolbar1->setObjectName("toolbar1");
    183215        //toolbar1->setMovable(false);
    184216        addToolBar(Qt::TopToolBarArea, toolbar1);
    185 #if !USE_CONFIGURABLE_TOOLBARS
     217#if USE_CONFIGURABLE_TOOLBARS
     218        QStringList toolbar1_actions;
     219        toolbar1_actions << "open_file" << "open_url" << "favorites_menu" << "separator"
     220                     << "screenshot" << "separator" << "show_file_properties" << "show_playlist"
     221                     << "show_preferences" << "separator" << "play_prev" << "play_next";
     222        toolbar1->setDefaultActions(toolbar1_actions);
     223#else
    186224        toolbar1->addAction(openFileAct);
    187225        toolbar1->addAction(openDVDAct);
     
    238276        qDebug("DefaultGui::createControlWidgetMini");
    239277
    240         controlwidget_mini = new QToolBar( this );
     278        controlwidget_mini = new EditableToolbar( this );
    241279        controlwidget_mini->setObjectName("controlwidget_mini");
    242280        //controlwidget_mini->setResizeEnabled(false);
     
    245283        addToolBar(Qt::BottomToolBarArea, controlwidget_mini);
    246284
    247 #if !USE_CONFIGURABLE_TOOLBARS
     285#if USE_CONFIGURABLE_TOOLBARS
     286        QStringList controlwidget_mini_actions;
     287        controlwidget_mini_actions << "play_or_pause" << "stop" << "separator" << "rewind1" << "timeslider_action"
     288                               << "forward1" << "separator" << "mute" << "volumeslider_action";
     289        controlwidget_mini->setDefaultActions(controlwidget_mini_actions);
     290#else
    248291        controlwidget_mini->addAction(playOrPauseAct);
    249292        controlwidget_mini->addAction(stopAct);
     
    269312        qDebug("DefaultGui::createControlWidget");
    270313
    271         controlwidget = new QToolBar( this );
     314        controlwidget = new EditableToolbar( this );
    272315        controlwidget->setObjectName("controlwidget");
    273316        //controlwidget->setResizeEnabled(false);
     
    276319        addToolBar(Qt::BottomToolBarArea, controlwidget);
    277320
    278 #if !USE_CONFIGURABLE_TOOLBARS
     321#if USE_CONFIGURABLE_TOOLBARS
     322        QStringList controlwidget_actions;
     323        controlwidget_actions << "play" << "pause_and_frame_step" << "stop" << "separator";
     324        #if MINI_ARROW_BUTTONS
     325        controlwidget_actions << "rewindbutton_action";
     326        #else
     327        controlwidget_actions << "rewind3" << "rewind2" << "rewind1";
     328        #endif
     329        controlwidget_actions << "timeslider_action";
     330        #if MINI_ARROW_BUTTONS
     331        controlwidget_actions << "forwardbutton_action";
     332        #else
     333        controlwidget_actions << "forward1" << "forward2" << "forward3";
     334        #endif
     335        controlwidget_actions << "separator" << "fullscreen" << "mute" << "volumeslider_action";
     336        controlwidget->setDefaultActions(controlwidget_actions);
     337#else
    279338        controlwidget->addAction(playAct);
    280339        controlwidget->addAction(pauseAndStepAct);
     
    283342        controlwidget->addSeparator();
    284343
    285 #if MINI_ARROW_BUTTONS
     344        #if MINI_ARROW_BUTTONS
    286345        controlwidget->addAction( rewindbutton_action );
    287 #else
     346        #else
    288347        controlwidget->addAction(rewind3Act);
    289348        controlwidget->addAction(rewind2Act);
    290349        controlwidget->addAction(rewind1Act);
    291 #endif
     350        #endif
    292351
    293352        controlwidget->addAction(timeslider_action);
    294353
    295 #if MINI_ARROW_BUTTONS
     354        #if MINI_ARROW_BUTTONS
    296355        controlwidget->addAction( forwardbutton_action );
    297 #else
     356        #else
    298357        controlwidget->addAction(forward1Act);
    299358        controlwidget->addAction(forward2Act);
    300359        controlwidget->addAction(forward3Act);
    301 #endif
     360        #endif
    302361
    303362        controlwidget->addSeparator();
     
    318377        floating_control = new FloatingWidget(this);
    319378
    320 #if !USE_CONFIGURABLE_TOOLBARS
     379#if USE_CONFIGURABLE_TOOLBARS
     380        QStringList floatingcontrol_actions;
     381        floatingcontrol_actions << "play" << "pause" << "stop" << "separator";
     382        #if MINI_ARROW_BUTTONS
     383        floatingcontrol_actions << "rewindbutton_action";
     384        #else
     385        floatingcontrol_actions << "rewind3" << "rewind2" << "rewind1";
     386        #endif
     387        floatingcontrol_actions << "timeslider_action";
     388        #if MINI_ARROW_BUTTONS
     389        floatingcontrol_actions << "forwardbutton_action";
     390        #else
     391        floatingcontrol_actions << "forward1" << "forward2" << "forward3";
     392        #endif
     393        floatingcontrol_actions << "separator" << "fullscreen" << "mute" << "volumeslider_action" << "separator" << "timelabel_action";
     394        floating_control->toolbar()->setDefaultActions(floatingcontrol_actions);
     395#else
    321396        floating_control->toolbar()->addAction(playAct);
    322397        floating_control->toolbar()->addAction(pauseAct);
     
    324399        floating_control->toolbar()->addSeparator();
    325400
    326 #if MINI_ARROW_BUTTONS
     401        #if MINI_ARROW_BUTTONS
    327402        floating_control->toolbar()->addAction( rewindbutton_action );
    328 #else
     403        #else
    329404        floating_control->toolbar()->addAction(rewind3Act);
    330405        floating_control->toolbar()->addAction(rewind2Act);
    331406        floating_control->toolbar()->addAction(rewind1Act);
    332 #endif
     407        #endif
    333408
    334409        floating_control->toolbar()->addAction(timeslider_action);
    335410
    336 #if MINI_ARROW_BUTTONS
     411        #if MINI_ARROW_BUTTONS
    337412        floating_control->toolbar()->addAction( forwardbutton_action );
    338 #else
     413        #else
    339414        floating_control->toolbar()->addAction(forward1Act);
    340415        floating_control->toolbar()->addAction(forward2Act);
    341416        floating_control->toolbar()->addAction(forward3Act);
    342 #endif
     417        #endif
    343418
    344419        floating_control->toolbar()->addSeparator();
     
    348423        floating_control->toolbar()->addSeparator();
    349424        floating_control->toolbar()->addAction(time_label_action);
    350 
    351425#endif // USE_CONFIGURABLE_TOOLBARS
    352426
     
    437511        viewVideoInfoAct->change(Images::icon("view_video_info"), tr("&Video info") );
    438512        viewFrameCounterAct->change( Images::icon("frame_counter"), tr("&Frame counter") );
     513
     514#if USE_CONFIGURABLE_TOOLBARS
     515        editToolbar1Act->change( tr("Edit main &toolbar") );
     516        editControl1Act->change( tr("Edit &control bar") );
     517        editControl2Act->change( tr("Edit m&ini control bar") );
     518        editFloatingControlAct->change( tr("Edit &floating control") );
     519#endif
    439520}
    440521
     
    643724#if USE_CONFIGURABLE_TOOLBARS
    644725        set->beginGroup( "actions" );
    645         set->setValue("toolbar1", ToolbarEditor::save(toolbar1) );
    646         set->setValue("controlwidget", ToolbarEditor::save(controlwidget) );
    647         set->setValue("controlwidget_mini", ToolbarEditor::save(controlwidget_mini) );
    648         set->setValue("floating_control", ToolbarEditor::save(floating_control->toolbar()) );
     726        set->setValue("toolbar1", toolbar1->actionsToStringList() );
     727        set->setValue("controlwidget", controlwidget->actionsToStringList() );
     728        set->setValue("controlwidget_mini", controlwidget_mini->actionsToStringList() );
     729        set->setValue("floating_control", floating_control->toolbar()->actionsToStringList() );
    649730        set->setValue("toolbar1_version", TOOLBAR_VERSION);
    650731        set->endGroup();
     
    687768
    688769#if USE_CONFIGURABLE_TOOLBARS
    689         QList<QAction *> actions_list = findChildren<QAction *>();
    690         QStringList toolbar1_actions;
    691         toolbar1_actions << "open_file" << "open_dvd" << "open_url" << "favorites_menu" << "separator" << "compact" << "fullscreen"
    692                      << "separator" << "screenshot" << "separator" << "show_file_properties" << "show_playlist"
    693                      << "show_preferences" << "separator" << "play_prev" << "play_next";
    694 
    695         QStringList controlwidget_actions;
    696         controlwidget_actions << "play" << "pause_and_frame_step" << "stop" << "separator";
    697 
    698 #if MINI_ARROW_BUTTONS
    699         controlwidget_actions << "rewindbutton_action";
    700 #else
    701         controlwidget_actions << "rewind3" << "rewind2" << "rewind1";
    702 #endif
    703 
    704         controlwidget_actions << "timeslider_action";
    705 
    706 #if MINI_ARROW_BUTTONS
    707         controlwidget_actions << "forwardbutton_action";
    708 #else
    709         controlwidget_actions << "forward1" << "forward2" << "forward3";
    710 #endif
    711 
    712         controlwidget_actions << "separator" << "fullscreen" << "mute" << "volumeslider_action";
    713 
    714         QStringList controlwidget_mini_actions;
    715         controlwidget_mini_actions << "play_or_pause" << "stop" << "separator" << "rewind1" << "timeslider_action"
    716                                << "forward1" << "separator" << "mute" << "volumeslider_action";
    717 
    718         QStringList floatingcontrol_actions;
    719         floatingcontrol_actions << "play" << "pause" << "stop" << "separator";
    720 
    721 #if MINI_ARROW_BUTTONS
    722         floatingcontrol_actions << "rewindbutton_action";
    723 #else
    724         floatingcontrol_actions << "rewind3" << "rewind2" << "rewind1";
    725 #endif
    726 
    727         floatingcontrol_actions << "timeslider_action";
    728 
    729 #if MINI_ARROW_BUTTONS
    730         floatingcontrol_actions << "forwardbutton_action";
    731 #else
    732         floatingcontrol_actions << "forward1" << "forward2" << "forward3";
    733 #endif
    734 
    735         floatingcontrol_actions << "separator" << "fullscreen" << "mute" << "volumeslider_action" << "separator" << "timelabel_action";
    736 
    737770        set->beginGroup( "actions" );
    738771        int toolbar_version = set->value("toolbar1_version", 0).toInt();
    739772        if (toolbar_version >= TOOLBAR_VERSION) {
    740                 ToolbarEditor::load(toolbar1, set->value("toolbar1", toolbar1_actions).toStringList(), actions_list );
     773                toolbar1->setActionsFromStringList( set->value("toolbar1", toolbar1->defaultActions()).toStringList() );
    741774        } else {
    742775                qDebug("DefaultGui::loadConfig: toolbar too old, loading default one");
    743                 ToolbarEditor::load(toolbar1, toolbar1_actions, actions_list );
    744         }
    745         ToolbarEditor::load(controlwidget, set->value("controlwidget", controlwidget_actions).toStringList(), actions_list );
    746         ToolbarEditor::load(controlwidget_mini, set->value("controlwidget_mini", controlwidget_mini_actions).toStringList(), actions_list );
    747         ToolbarEditor::load(floating_control->toolbar(), set->value("floating_control", floatingcontrol_actions).toStringList(), actions_list );
     776                toolbar1->setActionsFromStringList( toolbar1->defaultActions() );
     777        }
     778        controlwidget->setActionsFromStringList( set->value("controlwidget", controlwidget->defaultActions()).toStringList() );
     779        controlwidget_mini->setActionsFromStringList( set->value("controlwidget_mini", controlwidget_mini->defaultActions()).toStringList() );
     780        floating_control->toolbar()->setActionsFromStringList( set->value("floating_control", floating_control->toolbar()->defaultActions()).toStringList() );
    748781    floating_control->adjustSize();
    749782        set->endGroup();
     
    759792
    760793        set->endGroup();
    761                
     794
    762795        updateWidgets();
    763796}
Note: See TracChangeset for help on using the changeset viewer.