Started building interface for Cd ripping as mentioned in clementine-player/Clementine#3490

This commit is contained in:
asiviero 2013-12-27 03:38:43 -02:00
parent 6241d4b4f4
commit 58b264e122
7 changed files with 162 additions and 3 deletions

View File

@ -350,6 +350,7 @@ set(SOURCES
ui/organiseerrordialog.cpp
ui/playbacksettingspage.cpp
ui/qtsystemtrayicon.cpp
ui/ripcd.cpp
ui/screensaver.cpp
ui/settingsdialog.cpp
ui/settingspage.cpp
@ -627,6 +628,7 @@ set(HEADERS
ui/organiseerrordialog.h
ui/playbacksettingspage.h
ui/qtsystemtrayicon.h
ui/ripcd.h
ui/settingsdialog.h
ui/settingspage.h
ui/standarditemiconloader.h
@ -748,6 +750,7 @@ set(UI
ui/organisedialog.ui
ui/organiseerrordialog.ui
ui/playbacksettingspage.ui
ui/ripcd.ui
ui/settingsdialog.ui
ui/trackselectiondialog.ui

View File

@ -85,6 +85,7 @@
#include "ui/organisedialog.h"
#include "ui/organiseerrordialog.h"
#include "ui/qtsystemtrayicon.h"
#include "ui/ripcd.h"
#include "ui/settingsdialog.h"
#include "ui/systemtrayicon.h"
#include "ui/trackselectiondialog.h"
@ -343,6 +344,7 @@ MainWindow::MainWindow(Application* app,
connect(ui_->action_shuffle, SIGNAL(triggered()), app_->playlist_manager(), SLOT(ShuffleCurrent()));
connect(ui_->action_open_media, SIGNAL(triggered()), SLOT(AddFile()));
connect(ui_->action_open_cd, SIGNAL(triggered()), SLOT(AddCDTracks()));
connect(ui_->action_rip_audio_cd, SIGNAL(triggered()), SLOT(OpenRipCD()));
connect(ui_->action_add_file, SIGNAL(triggered()), SLOT(AddFile()));
connect(ui_->action_add_folder, SIGNAL(triggered()), SLOT(AddFolder()));
connect(ui_->action_add_stream, SIGNAL(triggered()), SLOT(AddStream()));
@ -1660,6 +1662,13 @@ void MainWindow::AddStreamAccepted() {
AddToPlaylist(data);
}
void MainWindow::OpenRipCD() {
if (!rip_cd_) {
rip_cd_.reset(new RipCD);
}
rip_cd_->show();
}
void MainWindow::AddCDTracks() {
MimeData* data = new MimeData;
// We are putting empty data, but we specify cdda mimetype to indicate that

View File

@ -67,6 +67,7 @@ class InternetItem;
class InternetModel;
class InternetViewContainer;
class Remote;
class RipCD;
class Song;
class SongInfoBase;
class SongInfoView;
@ -80,6 +81,7 @@ class WiimotedevShortcuts;
class Windows7ThumbBar;
class Ui_MainWindow;
class QSortFilterProxyModel;
class MainWindow : public QMainWindow, public PlatformInterface {
@ -211,6 +213,7 @@ class MainWindow : public QMainWindow, public PlatformInterface {
void AddFolder();
void AddStream();
void AddStreamAccepted();
void OpenRipCD();
void AddCDTracks();
void AddPodcast();
@ -287,6 +290,7 @@ class MainWindow : public QMainWindow, public PlatformInterface {
GlobalSearchView* global_search_view_;
LibraryViewContainer* library_view_;
FileView* file_view_;
boost::scoped_ptr<RipCD> rip_cd_;
PlaylistListContainer* playlist_list_;
InternetViewContainer* internet_view_;
DeviceView* device_view_;

View File

@ -424,6 +424,7 @@
</property>
<addaction name="action_open_media"/>
<addaction name="action_open_cd"/>
<addaction name="action_rip_audio_cd"/>
<addaction name="action_add_podcast"/>
<addaction name="separator"/>
<addaction name="action_previous_track"/>
@ -474,9 +475,6 @@
<addaction name="action_hypnotoad"/>
<addaction name="action_enterprise"/>
<addaction name="action_kittens"/>
<!-- Hide the console
<addaction name="action_console"/>
-->
<addaction name="separator"/>
</widget>
<widget class="QMenu" name="menu_tools">
@ -875,6 +873,11 @@
<string>Ctrl+Shift+T</string>
</property>
</action>
<action name="action_rip_audio_cd">
<property name="text">
<string>Rip audio CD...</string>
</property>
</action>
</widget>
<layoutdefault spacing="6" margin="11"/>
<customwidgets>

11
src/ui/ripcd.cpp Normal file
View File

@ -0,0 +1,11 @@
#include "ripcd.h"
#include "config.h"
#include "ui_ripcd.h"
RipCD::RipCD(QWidget* parent)
: QDialog(parent)
{
ui_.setupUi(this);
setWindowTitle(tr("Rip CD"));
}

27
src/ui/ripcd.h Normal file
View File

@ -0,0 +1,27 @@
/********************************************************************************
** Form generated from reading UI file 'ripcd.ui'
**
** Created: Fri Dec 27 02:11:12 2013
** by: Qt User Interface Compiler version 4.8.1
**
** WARNING! All changes made in this file will be lost when recompiling UI file!
********************************************************************************/
#ifndef RIPCD_H
#define RIPCD_H
#include <QDialog>
#include "ui_ripcd.h"
class RipCD : public QDialog
{
Q_OBJECT
public:
RipCD(QWidget* parent = 0);
private:
Ui::RipCD ui_;
};
#endif // RIPCD_H

102
src/ui/ripcd.ui Normal file
View File

@ -0,0 +1,102 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>RipCD</class>
<widget class="QDialog" name="RipCD">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>400</width>
<height>300</height>
</rect>
</property>
<property name="windowTitle">
<string>Dialog</string>
</property>
<widget class="QDialogButtonBox" name="buttonBox">
<property name="geometry">
<rect>
<x>30</x>
<y>240</y>
<width>341</width>
<height>32</height>
</rect>
</property>
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="standardButtons">
<set>QDialogButtonBox::Cancel|QDialogButtonBox::Ok</set>
</property>
</widget>
<widget class="QWidget" name="verticalLayoutWidget">
<property name="geometry">
<rect>
<x>10</x>
<y>10</y>
<width>381</width>
<height>221</height>
</rect>
</property>
<layout class="QVBoxLayout" name="verticalLayout">
<property name="leftMargin">
<number>0</number>
</property>
<property name="rightMargin">
<number>0</number>
</property>
<item>
<widget class="QTextBrowser" name="log_destiny"/>
</item>
</layout>
</widget>
<widget class="QPushButton" name="pushButton">
<property name="geometry">
<rect>
<x>10</x>
<y>240</y>
<width>98</width>
<height>27</height>
</rect>
</property>
<property name="text">
<string>PushButton</string>
</property>
</widget>
</widget>
<resources/>
<connections>
<connection>
<sender>buttonBox</sender>
<signal>accepted()</signal>
<receiver>RipCD</receiver>
<slot>accept()</slot>
<hints>
<hint type="sourcelabel">
<x>248</x>
<y>254</y>
</hint>
<hint type="destinationlabel">
<x>157</x>
<y>274</y>
</hint>
</hints>
</connection>
<connection>
<sender>buttonBox</sender>
<signal>rejected()</signal>
<receiver>RipCD</receiver>
<slot>reject()</slot>
<hints>
<hint type="sourcelabel">
<x>316</x>
<y>260</y>
</hint>
<hint type="destinationlabel">
<x>286</x>
<y>274</y>
</hint>
</hints>
</connection>
</connections>
</ui>