コード例 #1
0
bool MLModel::popup( const QModelIndex & index, const QPoint &point, const QModelIndexList &list )
{
    current_selection = list;
    current_index = index;
    QMenu menu;
    if( index.isValid() )
    {
        menu.addAction( QIcon( ":/menu/play" ), qtr(I_POP_PLAY), this, SLOT( popupPlay() ) );
        menu.addAction( QIcon( ":/menu/stream" ),
                        qtr(I_POP_STREAM), this, SLOT( popupStream() ) );
        menu.addAction( qtr(I_POP_SAVE), this, SLOT( popupSave() ) );
        menu.addAction( QIcon( ":/menu/info" ), qtr(I_POP_INFO), this, SLOT( popupInfo() ) );
        menu.addSeparator();
    }


    QIcon addIcon( ":/buttons/playlist/playlist_add" );
    menu.addSeparator();
    //menu.addAction( addIcon, qtr(I_PL_ADDF), THEDP, SLOT( simpleMLAppendDialog()) );
    //menu.addAction( addIcon, qtr(I_PL_ADDDIR), THEDP, SLOT( MLAppendDir() ) );
    //menu.addAction( addIcon, qtr(I_OP_ADVOP), THEDP, SLOT( MLAppendDialog() ) );

    if( index.isValid() )
    {
        menu.addAction( QIcon( ":/buttons/playlist/playlist_remove" ),
                        qtr(I_POP_DEL), this, SLOT( popupDel() ) );
        menu.addSeparator();
    }
    if( !menu.isEmpty() )
    {
        menu.exec( point ); return true;
    }
    else return false;
}
コード例 #2
0
int PLModel::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
{
    _id = QAbstractItemModel::qt_metacall(_c, _id, _a);
    if (_id < 0)
        return _id;
    if (_c == QMetaObject::InvokeMetaMethod) {
        switch (_id) {
        case 0: currentChanged((*reinterpret_cast< const QModelIndex(*)>(_a[1]))); break;
        case 1: rootChanged(); break;
        case 2: activateItem((*reinterpret_cast< const QModelIndex(*)>(_a[1]))); break;
        case 3: activateItem((*reinterpret_cast< playlist_item_t*(*)>(_a[1]))); break;
        case 4: popupPlay(); break;
        case 5: popupDel(); break;
        case 6: popupInfo(); break;
        case 7: popupStream(); break;
        case 8: popupSave(); break;
        case 9: popupExplore(); break;
        case 10: popupAddNode(); break;
        case 11: popupSort((*reinterpret_cast< int(*)>(_a[1]))); break;
        case 12: processInputItemUpdate((*reinterpret_cast< input_item_t*(*)>(_a[1]))); break;
        case 13: processInputItemUpdate((*reinterpret_cast< input_thread_t*(*)>(_a[1]))); break;
        case 14: processItemRemoval((*reinterpret_cast< int(*)>(_a[1]))); break;
        case 15: processItemAppend((*reinterpret_cast< int(*)>(_a[1])),(*reinterpret_cast< int(*)>(_a[2]))); break;
        default: ;
        }
        _id -= 16;
    }
    return _id;
}