Mercurial > hg > easaier-soundaccess
changeset 2:ba54bc09cd62
add easaier tab widgets, style and pass the layer characteristics in the main window (remove from panestack)
author | lbajardsilogic |
---|---|
date | Fri, 11 May 2007 13:59:29 +0000 |
parents | d4e4aa06fe51 |
children | 6b39a4d6b309 |
files | sv/main/MainWindow.cpp sv/main/MainWindow.h sv/main/main.cpp |
diffstat | 3 files changed, 110 insertions(+), 10 deletions(-) [+] |
line wrap: on
line diff
--- a/sv/main/MainWindow.cpp Fri May 11 13:57:39 2007 +0000 +++ b/sv/main/MainWindow.cpp Fri May 11 13:59:29 2007 +0000 @@ -41,6 +41,11 @@ #include "widgets/ListInputDialog.h" #include "widgets/SubdividingMenu.h" #include "widgets/NotifyingPushButton.h" +#include "widgets/InfoWidget.h" +#include "widgets/SearchWidget.h" +#include "widgets/QueryResultsWidget.h" +#include "widgets/ExpandWidget.h" +#include "widgets/AdvancedToolBox.h" #include "audioio/AudioCallbackPlaySource.h" #include "audioio/AudioCallbackPlayTarget.h" #include "audioio/AudioTargetFactory.h" @@ -100,6 +105,12 @@ using std::map; using std::set; +MainWindow * MainWindow::m_instance = 0; + +MainWindow * MainWindow::instance() +{ + return m_instance; +} MainWindow::MainWindow(bool withAudioOutput, bool withOSCSupport) : m_document(0), @@ -237,13 +248,39 @@ m_playMono->setChecked(settings.value("playmono", false).toBool()); settings.endGroup(); - layout->setSpacing(4); - layout->addWidget(m_paneStack, 0, 0, 1, 5); - layout->addWidget(m_overview, 1, 0); - layout->addWidget(m_fader, 1, 1); - layout->addWidget(m_playSpeed, 1, 2); - layout->addWidget(m_playSharpen, 1, 3); - layout->addWidget(m_playMono, 1, 4); + m_infoWidget = new InfoWidget(); + m_searchWidget = new SearchWidget(); + m_resultsWidget = new QueryResultsWidget(); + + m_qtabwidget = new QTabWidget(); + m_qtabwidget->addTab(m_searchWidget, tr("Search")); + m_qtabwidget->addTab(m_resultsWidget, tr("Result")); + m_qtabwidget->addTab(m_infoWidget, tr("Info")); + m_qtabwidget->addTab(new QWidget, tr("Related media")); + + QGridLayout *auxlayout = new QGridLayout; + auxlayout->addWidget(m_paneStack, 0, 0, 1, 5); + auxlayout->addWidget(m_overview, 1, 0); + auxlayout->addWidget(m_fader, 1, 1); + auxlayout->addWidget(m_playSpeed, 1, 2); + auxlayout->addWidget(m_playSharpen, 1, 3); + auxlayout->addWidget(m_playMono, 1, 4); + QWidget *auxwidget = new QWidget; + auxwidget->setLayout(auxlayout); + + ExpandWidget *bottomExpandWidget = new ExpandWidget(); + bottomExpandWidget->setWidgetLocation(ExpandWidget::Location_Bottom); + bottomExpandWidget->setPanes(auxwidget, m_qtabwidget); + + m_toolBox = new AdvancedToolBox(); + m_toolBox->addItem("Layers", new QWidget); + m_toolBox->addItem("Real-time filters", new QWidget); + + ExpandWidget *mainExpandWidget = new ExpandWidget(); + mainExpandWidget->setWidgetLocation(ExpandWidget::Location_Right); + mainExpandWidget->setPanes(bottomExpandWidget, m_toolBox); + + layout->addWidget(mainExpandWidget, 0, 0); m_paneStack->setPropertyStackMinWidth (m_fader->width() + m_playSpeed->width() + m_playSharpen->width() + @@ -401,6 +438,7 @@ setupViewMenu(); setupPaneAndLayerMenus(); setupTransformsMenu(); + setupSettingMenu(); setupHelpMenu(); m_mainMenusCreated = true; @@ -651,6 +689,26 @@ } void +MainWindow::setupSettingMenu() +{ + if (m_mainMenusCreated) return; + + QAction *action = 0; + QMenu *menu = 0; + + menu = menuBar()->addMenu(tr("&Settings")); + menu->setTearOffEnabled(true); + + //action = new QAction(tr("&Connection settings"), this); + //connect(action, SIGNAL(triggered()), this, SLOT(connectionSettings())); + //menu->addAction(action); + + action = new QAction(tr("&Style setting"), this); + connect(action, SIGNAL(triggered()), this, SLOT(styleSetting())); + menu->addAction(action); +} + +void MainWindow::setupViewMenu() { if (m_mainMenusCreated) return; @@ -2574,6 +2632,18 @@ CommandHistory::getInstance()->documentSaved(); documentRestored(); updateMenuStates(); + + QWidget *properties = 0; + + properties = new PropertyStack(0, m_paneStack->getCurrentPane() ); + //properties->show(); + m_toolBox->removeItem(0); + m_toolBox->insertItem(0,"Layers", properties); + + /*connect(properties, SIGNAL(propertyContainerSelected(View *, PropertyContainer *)), + this, SLOT(propertyContainerSelected(View *, PropertyContainer *))); + properties->setSizePolicy(QSizePolicy::Minimum,QSizePolicy::Minimum); + */ } void @@ -4772,3 +4842,7 @@ QMessageBox::about(this, tr("About Sonic Visualiser"), aboutText); } +void MainWindow::styleSetting() +{ + m_gallery.show(); +} \ No newline at end of file
--- a/sv/main/MainWindow.h Fri May 11 13:57:39 2007 +0000 +++ b/sv/main/MainWindow.h Fri May 11 13:59:29 2007 +0000 @@ -21,6 +21,7 @@ #include <QUrl> #include <QMainWindow> #include <QPointer> +#include <QTabWidget> #include "base/Command.h" #include "view/ViewManager.h" @@ -30,6 +31,8 @@ #include "transform/Transform.h" #include "document/SVFileReader.h" #include "data/fileio/FileFinder.h" +#include "widgets/WidgetGallery.h" + #include <map> class Document; @@ -52,7 +55,10 @@ class QPushButton; class OSCQueue; class OSCMessage; - +class InfoWidget; +class SearchWidget; +class QueryResultsWidget; +class AdvancedToolBox; class MainWindow : public QMainWindow { @@ -84,6 +90,8 @@ bool saveSessionFile(QString path); bool commitData(bool mayAskUser); // on session shutdown + static MainWindow *instance(); + signals: // Used to toggle the availability of menu actions void canAddPane(bool); @@ -236,6 +244,8 @@ void help(); void about(); + void styleSetting(); + protected: QString m_sessionFile; QString m_audioFile; @@ -319,6 +329,7 @@ void setupMenus(); void setupFileMenu(); void setupEditMenu(); + void setupSettingMenu(); void setupViewMenu(); void setupPaneAndLayerMenus(); void setupTransformsMenu(); @@ -402,6 +413,19 @@ void updateVisibleRangeDisplay(Pane *p) const; void toXml(QTextStream &stream); + + static MainWindow *m_instance; + + InfoWidget *m_infoWidget; + SearchWidget *m_searchWidget; + QueryResultsWidget *m_resultsWidget; + + QTabWidget *m_qtabwidget; + + AdvancedToolBox *m_toolBox; + + WidgetGallery m_gallery; + };
--- a/sv/main/main.cpp Fri May 11 13:57:39 2007 +0000 +++ b/sv/main/main.cpp Fri May 11 13:59:29 2007 +0000 @@ -31,6 +31,7 @@ #include <QSettings> #include <QIcon> #include <QSessionManager> +#include <QPlastiqueStyle> #include <iostream> #include <signal.h> @@ -195,7 +196,7 @@ main(int argc, char **argv) { SVApplication application(argc, argv); - + QStringList args = application.arguments(); signal(SIGINT, signalHandler); @@ -224,7 +225,8 @@ QApplication::setOrganizationDomain("sonicvisualiser.org"); QApplication::setApplicationName("sonic-visualiser"); QApplication::setWindowIcon(QIcon(":icons/svicon16.png")); - + QApplication::setStyle(new QPlastiqueStyle); + QString language = QLocale::system().name(); QTranslator qtTranslator;