MusicSongsSummarizied::MusicSongsSummarizied(QWidget *parent) : QToolBox(parent), m_renameLine(nullptr) { setAttribute(Qt::WA_TranslucentBackground, true); setStyleSheet(MusicUIObject::MToolBoxStyle01); for(int i=0; i<3; ++i) { MusicSongsListWidget* w = new MusicSongsListWidget(this); m_mainSongLists.append(w); } addItem(m_mainSongLists[0], tr("myDefaultPlayItem")); addItem(m_mainSongLists[1], tr("myLoveSongItem")); addItem(m_mainSongLists[2], tr("myNetSongItem")); layout()->setSpacing(0); changeItemIcon(); m_currentIndexs = 0; m_searchFileListIndex = -1; m_renameIndex = -1; for(int i=0; i<3; ++i) { connect(m_mainSongLists[i], SIGNAL(cellDoubleClicked(int,int)), parent, SLOT(musicPlayIndex(int,int))); connect(m_mainSongLists[i], SIGNAL(musicPlayOrder()), parent, SLOT(musicPlayOrder())); connect(m_mainSongLists[i], SIGNAL(musicPlayRandom()), parent, SLOT(musicPlayRandom())); connect(m_mainSongLists[i], SIGNAL(musicPlayListLoop()), parent, SLOT(musicPlayListLoop())); connect(m_mainSongLists[i], SIGNAL(musicPlayOneLoop()), parent, SLOT(musicPlayOneLoop())); connect(m_mainSongLists[i], SIGNAL(musicPlayItemOnce()), parent, SLOT(musicPlayItemOnce())); connect(m_mainSongLists[i], SIGNAL(musicAddNewFiles()), parent, SLOT(musicImportSongsOnlyFile())); connect(m_mainSongLists[i], SIGNAL(musicAddNewDir()), parent, SLOT(musicImportSongsOnlyDir())); connect(m_mainSongLists[i], SIGNAL(isCurrentIndexs(bool&)), SLOT(isCurrentIndexs(bool&))); connect(m_mainSongLists[i], SIGNAL(isSearchFileListEmpty(bool&)), SLOT(isSearchFileListEmpty(bool&))); connect(m_mainSongLists[i], SIGNAL(deleteItemAt(MIntList,bool)), SLOT(setDeleteItemAt(MIntList,bool))); connect(m_mainSongLists[i], SIGNAL(getMusicIndexSwaped(int,int,int,QStringList&)), SLOT(setMusicIndexSwaped(int,int,int,QStringList&))); } connect(this, SIGNAL(showCurrentSong(int)), parent, SLOT(showCurrentSong(int))); connect(m_mainSongLists[0], SIGNAL(musicSongToLovestListAt(int)), SLOT(addMusicSongToLovestListAt(int))); connect(m_mainSongLists[2], SIGNAL(musicSongToLovestListAt(int)), SLOT(addMusicSongToLovestListAt(int))); connect(this, SIGNAL(currentChanged(int)), SLOT(currentIndexChanged(int))); M_CONNECTION->setValue("MusicSongsSummarizied", this); M_CONNECTION->poolConnect("MusicSongSearchOnlineTableWidget", "MusicSongsSummarizied"); }
void MusicSongsListWidget::contextMenuEvent(QContextMenuEvent *event) { QTableWidget::contextMenuEvent(event); QMenu rightClickMenu(this); QMenu musicPlaybackMode(tr("playbackMode"), &rightClickMenu); bool empty; emit isSearchFileListEmpty(empty); rightClickMenu.setStyleSheet(MusicUIObject::MMenuStyle02); rightClickMenu.addAction(tr("changSongName"), this, SLOT(setChangSongName()))->setEnabled(empty); rightClickMenu.addAction(QIcon(":/contextMenu/play"), tr("musicPlay"), this, SLOT(musicPlayClicked())); rightClickMenu.addMenu(&musicPlaybackMode); QAction *order = musicPlaybackMode.addAction(tr("OrderPlay"), this, SIGNAL(musicPlayOrder())); QAction *random = musicPlaybackMode.addAction(tr("RandomPlay"), this, SIGNAL(musicPlayRandom())); QAction *lCycle = musicPlaybackMode.addAction(tr("ListCycle"), this, SIGNAL(musicPlayListLoop())); QAction *sCycle = musicPlaybackMode.addAction(tr("SingleCycle"), this, SIGNAL(musicPlayOneLoop())); QAction *once = musicPlaybackMode.addAction(tr("PlayOnce"), this, SIGNAL(musicPlayItemOnce())); (m_songplaymode == MusicObject::MC_PlayOrder) ? order->setIcon(QIcon(":/share/selected")) : order->setIcon(QIcon()); (m_songplaymode == MusicObject::MC_PlayRandom) ? random->setIcon(QIcon(":/share/selected")) : random->setIcon(QIcon()); (m_songplaymode == MusicObject::MC_PlayListLoop) ? lCycle->setIcon(QIcon(":/share/selected")) : lCycle->setIcon(QIcon()); (m_songplaymode == MusicObject::MC_PlayOneLoop) ? sCycle->setIcon(QIcon(":/share/selected")) : sCycle->setIcon(QIcon()); (m_songplaymode == MusicObject::MC_PlayOnce) ? once->setIcon(QIcon(":/share/selected")) : once->setIcon(QIcon()); rightClickMenu.addSeparator(); rightClickMenu.addAction(QIcon(":/contextMenu/love"), tr("addToLove"), this, SLOT(addMusicSongToLovestListAt())); QMenu musicAddNewFiles(tr("addNewFiles"), &rightClickMenu); rightClickMenu.addMenu(&musicAddNewFiles)->setIcon(QIcon(":/contextMenu/add")); musicAddNewFiles.addAction(tr("openOnlyFiles"), this, SIGNAL(musicAddNewFiles())); musicAddNewFiles.addAction(tr("openOnlyDir"), this, SIGNAL(musicAddNewDir())); QMenu musicToolMenu(tr("musicTool"), &rightClickMenu); musicToolMenu.addAction(tr("bell"), this, SLOT(musicMakeRingWidget())) #ifdef Q_OS_UNIX ->setEnabled(false); #endif ; musicToolMenu.addAction(tr("transform"), this, SLOT(musicTransformWidget())); rightClickMenu.addMenu(&musicToolMenu); rightClickMenu.addAction(tr("musicInfoD"), this, SLOT(musicFileInformation()))->setEnabled(empty); rightClickMenu.addAction(tr("openFileDir"), this, SLOT(musicOpenFileDir()))->setEnabled(empty); rightClickMenu.addSeparator(); rightClickMenu.addAction(QIcon(":/contextMenu/delete"), tr("delete"), this, SLOT(setDeleteItemAt()))->setEnabled(empty); rightClickMenu.addAction(tr("deleteWithFile"), this, SLOT(setDeleteItemWithFile()))->setEnabled(empty); rightClickMenu.addAction(tr("deleteAll"), this, SLOT(setDeleteItemAll()))->setEnabled(empty); rightClickMenu.exec(QCursor::pos()); //Menu location for the current mouse position event->accept(); }
void MusicBottomAreaWidget::createMenuActions() const { connect(m_ui->action_ImportSongs, SIGNAL(triggered()), m_supperClass, SLOT(musicImportSongs())); connect(m_ui->action_Setting, SIGNAL(triggered()), m_supperClass, SLOT(musicSetting())); connect(m_ui->action_Quit, SIGNAL(triggered()), m_supperClass, SLOT(quitWindowClose())); connect(m_ui->action_Next, SIGNAL(triggered()), m_supperClass, SLOT(musicPlayNext())); connect(m_ui->action_Play, SIGNAL(triggered()), m_supperClass, SLOT(musicKey())); connect(m_ui->action_Privious, SIGNAL(triggered()), m_supperClass, SLOT(musicPlayPrivious())); connect(m_ui->action_VolumeSub, SIGNAL(triggered()), m_supperClass, SLOT(musicActionVolumeSub())); connect(m_ui->action_VolumePlus, SIGNAL(triggered()), m_supperClass, SLOT(musicActionVolumePlus())); connect(m_ui->action_OrderPlay, SIGNAL(triggered()), m_supperClass, SLOT(musicPlayOrder())); connect(m_ui->action_RandomPlay, SIGNAL(triggered()), m_supperClass, SLOT(musicPlayRandom())); connect(m_ui->action_SingleCycle, SIGNAL(triggered()), m_supperClass, SLOT(musicPlayOneLoop())); connect(m_ui->action_ListCycle, SIGNAL(triggered()), m_supperClass, SLOT(musicPlayListLoop())); }