Beispiel #1
0
/**
 * @brief Called when the menu item "Movie Certifications" was clicked
 * Updates menu icons and sets status of actions
 */
void MainWindow::onMenuCertifications()
{
    qDebug() << "Entered";
    ui->stackedWidget->setCurrentIndex(5);
    ui->certificationWidget->loadCertifications();
    onMenu(WidgetCertifications);
}
Beispiel #2
0
/**
 * @brief Called when the menu item "Movie Sets" was clicked
 * Updates menu icons and sets status of actions
 */
void MainWindow::onMenuMovieSets()
{
    qDebug() << "Entered";
    ui->stackedWidget->setCurrentIndex(2);
    ui->setsWidget->loadSets();
    onMenu(WidgetMovieSets);
}
Beispiel #3
0
/**
 * @brief Called when the menu item "Movie Genres" was clicked
 * Updates menu icons and sets status of actions
 */
void MainWindow::onMenuGenres()
{
    qDebug() << "Entered";
    ui->stackedWidget->setCurrentIndex(4);
    ui->genreWidget->loadGenres();
    onMenu(WidgetGenres);
}
Beispiel #4
0
bool WindowTree::onRightUp( const RectInt & window, const PointInt & position )
{
	if ( m_pCursorOver != NULL )
		onMenu( m_pCursorOver );

	return NodeWindow::onRightUp( window, position );
}
Beispiel #5
0
ToolBar::ToolBar(QWidget *parent) : QWidget(parent), _menu(_st.menu_image), _settings(_st.setting_image), _palette(_st.palette_image), _about(_st.about_image) {
	init();
	setLayout(&_main);

	QObject::connect(&_menu, SIGNAL(clicked()), this, SLOT(onMenu()));
	QObject::connect(&_settings, SIGNAL(clicked()), this, SLOT(onSetting()));
	QObject::connect(&_palette, SIGNAL(clicked()), this, SLOT(onPalette()));
	QObject::connect(&_about, SIGNAL(clicked()), this, SLOT(onAbout()));
}
Beispiel #6
0
/**
 * @brief Called when the menu item "Concerts" was clicked
 * Updates menu icons and sets status of actions
 */
void MainWindow::onMenuConcerts()
{
    qDebug() << "Entered";
    ui->stackedWidget->setCurrentIndex(3);
    onMenu(WidgetConcerts);
}
Beispiel #7
0
/**
 * @brief Called when the menu item "Tv Shows" was clicked
 * Updates menu icons and sets status of actions
 */
void MainWindow::onMenuTvShows()
{
    qDebug() << "Entered";
    ui->stackedWidget->setCurrentIndex(1);
    onMenu(WidgetTvShows);
}
Beispiel #8
0
/**
 * @brief MainWindow::MainWindow
 * @param parent
 */
MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);

    MainWindow::m_instance = this;

    qDebug() << "MediaElch version" << QApplication::applicationVersion() << "starting up";

    for (int i=WidgetMovies ; i!=WidgetCertifications ; i++) {
        QMap<MainActions, bool> actions;
        for (int n=ActionSearch ; n!=ActionExport ; n++) {
            actions.insert(static_cast<MainActions>(n), false);
        }
        if (static_cast<MainWidgets>(i) == WidgetMovies || static_cast<MainWidgets>(i) == WidgetTvShows || static_cast<MainWidgets>(i) == WidgetConcerts)
            actions[ActionFilterWidget] = true;
        m_actions.insert(static_cast<MainWidgets>(i), actions);
    }

    m_aboutDialog = new AboutDialog(ui->centralWidget);
    m_supportDialog = new SupportDialog(ui->centralWidget);
    m_settingsWindow = new SettingsWindow(ui->centralWidget);
    m_filterWidget = new FilterWidget();
    m_fileScannerDialog = new FileScannerDialog(ui->centralWidget);
    m_xbmcSync = new XbmcSync(ui->centralWidget);
    m_renamer = new Renamer(ui->centralWidget);
    m_settings = Settings::instance(this);
    m_exportDialog = new ExportDialog(this);
    setupToolbar();

    MessageBox::instance(this)->reposition(this->size());
    Manager::instance();

    if (!m_settings->mainSplitterState().isNull()) {
        ui->movieSplitter->restoreState(m_settings->mainSplitterState());
        ui->tvShowSplitter->restoreState(m_settings->mainSplitterState());
        ui->setsWidget->splitter()->restoreState(m_settings->mainSplitterState());
        ui->concertSplitter->restoreState(m_settings->mainSplitterState());
        ui->genreWidget->splitter()->restoreState(m_settings->mainSplitterState());
        ui->certificationWidget->splitter()->restoreState(m_settings->mainSplitterState());
    }

    if (m_settings->mainWindowSize().isValid() && !m_settings->mainWindowPosition().isNull()) {
        #ifdef Q_OS_MAC
            // Ugly workaround from https://bugreports.qt-project.org/browse/QTBUG-3116
            // to fix invisible toolbar on mac
            bool workaround = !isVisible();
            if (workaround) {
                // make "invisible"
                setWindowOpacity(0); // let Qt update its frameStruts
                show();
            }
            resize(m_settings->mainWindowSize());
            if (workaround) {
                move(m_settings->mainWindowPosition());
                setWindowOpacity(1);
            }
        #else
        resize(m_settings->mainWindowSize());
        move(m_settings->mainWindowPosition());
        #endif
        #ifdef Q_OS_WIN32
        if (m_settings->mainWindowMaximized())
            showMaximized();
        #endif
    }
    // Size for Screenshots
    // resize(1121, 735);

    #ifdef Q_OS_MAC
        MacFullscreen::addFullscreen(this);
    #endif

    connect(ui->filesWidget, SIGNAL(movieSelected(Movie*)), ui->movieWidget, SLOT(setMovie(Movie*)));
    connect(ui->filesWidget, SIGNAL(movieSelected(Movie*)), ui->movieWidget, SLOT(setEnabledTrue(Movie*)));
    connect(ui->filesWidget, SIGNAL(noMovieSelected()), ui->movieWidget, SLOT(clear()));
    connect(ui->filesWidget, SIGNAL(noMovieSelected()), ui->movieWidget, SLOT(setDisabledTrue()));
    connect(ui->filesWidget, SIGNAL(sigStartSearch()), this, SLOT(onActionSearch()));

    connect(ui->concertFilesWidget, SIGNAL(concertSelected(Concert*)), ui->concertWidget, SLOT(setConcert(Concert*)));
    connect(ui->concertFilesWidget, SIGNAL(concertSelected(Concert*)), ui->concertWidget, SLOT(setEnabledTrue(Concert*)));
    connect(ui->concertFilesWidget, SIGNAL(noConcertSelected()), ui->concertWidget, SLOT(clear()));
    connect(ui->concertFilesWidget, SIGNAL(noConcertSelected()), ui->concertWidget, SLOT(setDisabledTrue()));

    connect(ui->tvShowFilesWidget, SIGNAL(sigTvShowSelected(TvShow*)), ui->tvShowWidget, SLOT(onTvShowSelected(TvShow*)));
    connect(ui->tvShowFilesWidget, SIGNAL(sigSeasonSelected(TvShow*,int)), ui->tvShowWidget, SLOT(onSeasonSelected(TvShow*,int)));
    connect(ui->tvShowFilesWidget, SIGNAL(sigEpisodeSelected(TvShowEpisode*)), ui->tvShowWidget, SLOT(onEpisodeSelected(TvShowEpisode*)));
    connect(ui->tvShowFilesWidget, SIGNAL(sigTvShowSelected(TvShow*)), ui->tvShowWidget, SLOT(onSetEnabledTrue(TvShow*)));
    connect(ui->tvShowFilesWidget, SIGNAL(sigSeasonSelected(TvShow*,int)), ui->tvShowWidget, SLOT(onSetEnabledTrue(TvShow*, int)));
    connect(ui->tvShowFilesWidget, SIGNAL(sigEpisodeSelected(TvShowEpisode*)), ui->tvShowWidget, SLOT(onSetEnabledTrue(TvShowEpisode*)));
    connect(ui->tvShowFilesWidget, SIGNAL(sigNothingSelected()), ui->tvShowWidget, SLOT(onClear()));
    connect(ui->tvShowFilesWidget, SIGNAL(sigNothingSelected()), ui->tvShowWidget, SLOT(onSetDisabledTrue()));

    connect(ui->movieWidget, SIGNAL(actorDownloadProgress(int,int,int)), this, SLOT(progressProgress(int,int,int)));
    connect(ui->movieWidget, SIGNAL(actorDownloadStarted(QString,int)), this, SLOT(progressStarted(QString,int)));
    connect(ui->movieWidget, SIGNAL(actorDownloadFinished(int)), this, SLOT(progressFinished(int)));

    connect(ui->tvShowWidget, SIGNAL(sigDownloadsStarted(QString,int)), this, SLOT(progressStarted(QString,int)));
    connect(ui->tvShowWidget, SIGNAL(sigDownloadsProgress(int,int,int)), this, SLOT(progressProgress(int,int,int)));
    connect(ui->tvShowWidget, SIGNAL(sigDownloadsFinished(int)), this, SLOT(progressFinished(int)));

    connect(m_filterWidget, SIGNAL(sigFilterChanged(QList<Filter*>,QString)), this, SLOT(onFilterChanged(QList<Filter*>,QString)));

    connect(ui->movieSplitter, SIGNAL(splitterMoved(int,int)), this, SLOT(moveSplitter(int,int)));
    connect(ui->tvShowSplitter, SIGNAL(splitterMoved(int,int)), this, SLOT(moveSplitter(int,int)));
    connect(ui->setsWidget->splitter(), SIGNAL(splitterMoved(int,int)), this, SLOT(moveSplitter(int,int)));
    connect(ui->genreWidget->splitter(), SIGNAL(splitterMoved(int,int)), this, SLOT(moveSplitter(int,int)));
    connect(ui->certificationWidget->splitter(), SIGNAL(splitterMoved(int,int)), this, SLOT(moveSplitter(int,int)));
    connect(ui->concertSplitter, SIGNAL(splitterMoved(int,int)), this, SLOT(moveSplitter(int,int)));

    connect(Manager::instance()->tvShowFileSearcher(), SIGNAL(tvShowsLoaded(int)), ui->tvShowFilesWidget, SLOT(renewModel()));
    connect(m_fileScannerDialog, SIGNAL(accepted()), this, SLOT(setNewMarks()));

    connect(m_xbmcSync, SIGNAL(sigTriggerReload()), this, SLOT(onTriggerReloadAll()));
    connect(m_xbmcSync, SIGNAL(sigFinished()), this, SLOT(onXbmcSyncFinished()));

    connect(m_renamer, SIGNAL(sigFilesRenamed(Renamer::RenameType)), this, SLOT(onFilesRenamed(Renamer::RenameType)));

    connect(m_settingsWindow, SIGNAL(sigSaved()), this, SLOT(onRenewModels()), Qt::QueuedConnection);

    connect(ui->setsWidget, SIGNAL(sigJumpToMovie(Movie*)), this, SLOT(onJumpToMovie(Movie*)));
    connect(ui->certificationWidget, SIGNAL(sigJumpToMovie(Movie*)), this, SLOT(onJumpToMovie(Movie*)));
    connect(ui->genreWidget, SIGNAL(sigJumpToMovie(Movie*)), this, SLOT(onJumpToMovie(Movie*)));

    MovieSearch::instance(ui->centralWidget);
    TvShowSearch::instance(ui->centralWidget);
    ImageDialog::instance(ui->centralWidget);
    MovieListDialog::instance(ui->centralWidget);
    ImagePreviewDialog::instance(ui->centralWidget);
    ConcertSearch::instance(ui->centralWidget);
    TrailerDialog::instance(ui->centralWidget);
    TvTunesDialog::instance(ui->centralWidget);
    NameFormatter::instance(this);
    MovieMultiScrapeDialog::instance(ui->centralWidget);

#ifdef Q_OS_WIN32
    setStyleSheet(styleSheet() + " #centralWidget { border-bottom: 1px solid rgba(0, 0, 0, 100); } ");

    QFont font = ui->labelMovies->font();
    font.setPointSize(font.pointSize()-3);
    font.setBold(true);
    ui->labelMovies->setFont(font);
    ui->labelConcerts->setFont(font);
    ui->labelShows->setFont(font);
#endif

    // hack. without only the fileScannerDialog pops up and blocks until it has finished
    show();
    onMenu(WidgetMovies);

    // Start scanning for files
    QTimer::singleShot(0, m_fileScannerDialog, SLOT(exec()));
}
Beispiel #9
0
/**
 * @brief Called when the menu item "Movies" was clicked
 * Updates menu icons and sets status of actions
 */
void MainWindow::onMenuMovies()
{
    qDebug() << "Entered";
    ui->stackedWidget->setCurrentIndex(0);
    onMenu(WidgetMovies);
}
BleMainWindow::BleMainWindow(QWidget *parent) :
    QMainWindow(parent),
    ThemedWidgetBase(this),
    ui(new Ui::BleMainWindow)
    , m_maxBtn(false)
    , m_skinWidget(0)
    , m_encoderThread(NULL)
    , m_sendThread(NULL)
    , m_imageProcessThread(NULL)
    , m_audioCaptureThread(NULL)
    , m_sceneWidget(NULL)
{
    ui->setupUi(this);

    // set image
    ui->addCameraBtn->setPixmap(QPixmap(":/image/add_camera.png"));
    ui->addWindowGrabBtn->setPixmap(QPixmap(":/image/add_grab.png"));
    ui->addPicBtn->setPixmap(QPixmap(":/image/add_pic.png"));
    ui->startBtn->setPixmap(QPixmap(":/image/ble_start.png"));
    ui->stopBtn->setPixmap(QPixmap(":/image/ble_stop.png"));
    ui->addFileSourceBtn->setPixmap(QPixmap(":/image/add_file.png"));
    ui->add_media->setPixmap(QPixmap(":/image/ble_media.png"));

    ui->addCameraBtn->setFixedHeight(48);
    ui->addWindowGrabBtn->setFixedHeight(48);
    ui->addPicBtn->setFixedHeight(48);
    ui->startBtn->setFixedHeight(48);
    ui->stopBtn->setFixedHeight(48);
    ui->addFileSourceBtn->setFixedHeight(48);
    ui->add_media->setFixedHeight(48);
    ui->addTextBtn->setFixedHeight(48);

    ui->addCameraBtn->setToolTip(tr("add a camera source"));
    ui->addWindowGrabBtn->setToolTip(tr("add a desktop grab source"));
    ui->addPicBtn->setToolTip(tr("add a picture source"));
    ui->addFileSourceBtn->setToolTip(tr("add a file source"));
    ui->addTextBtn->setToolTip(tr("add text source"));
    ui->add_media->setToolTip(tr("add media url"));
    ui->startBtn->setToolTip(tr("begin rtmp streaming"));
    ui->stopBtn->setToolTip(tr("stop rtmp streaming"));

    // TODO temp set false
    ui->addTextBtn->setVisible(false);

    ui->titleWidget->setFixedHeight(32);
    ui->titleWidget->setTitle(BLE_TITLE);
    ui->titleWidget->setHints(TitleWidget::Min_HINT
                              | TitleWidget::CLOSE_HINT | TitleWidget::SKIN_HINT | TitleWidget::MENU_HINT);

    framelessHelper = new NcFramelessHelper;
    framelessHelper->setWidgetMovable(true);
    framelessHelper->setWidgetResizable(true);
    framelessHelper->activateOn(this);

    connect(ui->titleWidget->button(TitleWidget::MAX_HINT),
            SIGNAL(clicked()), this, SLOT(onMax()));
    connect(ui->titleWidget->button(TitleWidget::Min_HINT),
            SIGNAL(clicked()), this, SLOT(onMin()));
    connect(ui->titleWidget->button(TitleWidget::CLOSE_HINT),
            SIGNAL(clicked()), this, SLOT(onClose()));
    connect(ui->titleWidget->button(TitleWidget::SKIN_HINT),
            SIGNAL(clicked()), this, SLOT(onSkin()));
    connect(ui->titleWidget->button(TitleWidget::MENU_HINT),
            SIGNAL(clicked()), this, SLOT(onMenu()));
    connect(ui->titleWidget, SIGNAL(doubleClicked()),
            this, SLOT(onDoubleClicked()));
    connect(ui->TabBar,SIGNAL(currentChanged(int)),
            this,SLOT(onTabBarCurrentChanged(int)));

    connect(ui->startBtn, SIGNAL(clicked()), this, SLOT(onEncodeStart()));
    connect(ui->stopBtn, SIGNAL(clicked()), this, SLOT(onEncodeStop()));

    connect(ui->addCameraBtn, SIGNAL(clicked())
            , this, SLOT(onAddCamera()));
    connect(ui->addWindowGrabBtn, SIGNAL(clicked())
            , this, SLOT(onAddWindowGrab()));
    connect(ui->addPicBtn, SIGNAL(clicked())
            , this, SLOT(onAddPic()));
    connect(ui->addFileSourceBtn, SIGNAL(clicked())
            , this, SLOT(onAddFileSource()));
    connect(ui->addTextBtn, SIGNAL(clicked())
            , this, SLOT(onAddTextSource()));
    connect(ui->add_media, SIGNAL(clicked())
            , this, SLOT(onAddMedia()));

    // tray setting
    m_systemTrayIcon = new QSystemTrayIcon(QIcon(":/image/logo.png"), this);
    connect(m_systemTrayIcon, SIGNAL(activated(QSystemTrayIcon::ActivationReason)),
            this, SLOT(activated(QSystemTrayIcon::ActivationReason)));
    m_systemTrayIcon->show();

    // m_imageProcessWidget = new BleImageProcess(this);
    // add scene widget
    m_sceneWidget = new BleSceneWidget(this);
    //m_sceneWidget->addWidget(m_imageProcessWidget);

    addTabWidget(m_sceneWidget, QPixmap(":/image/ble_live.png"), tr("live"));

    //BleImageDisplayArea *displayArea = new BleImageDisplayArea(this);

    //displayArea->addWidget(m_imageProcessWidget);

    BleSetting *settings = new BleSetting(this);
    addTabWidget(settings, QPixmap(":/image/ble_setting.png"), tr("Settings"));

    ui->TabBar->setVisible(false);

//    connect(settings, SIGNAL(settingChanged())
//            , m_imageProcessWidget, SLOT(onSettingChanged()));

#ifdef Q_OS_WIN
    QtWin::enableBlurBehindWindow(this);
#endif

    setWindowTitle(BLE_TITLE);
    QString versionStr = QString(tr("  version: %1")).arg(BLE_VERSION_STR);
    ui->statusBar->addWidget(new QLabel(versionStr));

    m_statusLabel = new QLabel(this);
    ui->statusBar->addWidget(m_statusLabel);
//    ui->TabBar->setVisible(false);

    settingChanged();
}
Beispiel #11
0
void MainWindow::onMenuDownloads()
{
    ui->stackedWidget->setCurrentIndex(6);
    onMenu(WidgetDownloads);
}
static void processEvents(PluginData* data, PDReader* reader, PDWriter* writer)
{
    uint32_t event;

    while ((event = PDRead_getEvent(reader)))
    {
        switch (event)
        {
            //case PDEventType_getExceptionLocation : setExceptionLocation(plugin, writer); break;
            //case PDEventType_getCallstack : setCallstack(plugin, writer); break;

            case PDEventType_getRegisters:
            {
               	sendCommand(data, "registers\n");
                break;
            }

            case PDEventType_getCallstack:
            {
            	if (shouldSendCommand(data))
                	sendCommand(data, "bt\n");

                break;
            }

            case PDEventType_getDisassembly:
            {
            	if (shouldSendCommand(data))
                    getDisassembly(data, reader);

                break;
            }

            case PDEventType_getMemory:
            {
            	if (shouldSendCommand(data))
                    getMemory(data, reader, writer);
                break;
            }

            case PDEventType_menuEvent:
            {
                onMenu(data, reader);
                break;
            }

			case PDEventType_setBreakpoint:
			{
				setBreakpoint(data, reader, writer);

				// if we add a breakpoint to VICE it will always stop but if we are already running when
				// adding the breakpoint we just force VICE to run again

				if (data->state == PDDebugState_running)
                	sendCommand(data, "ret\n");

				break;
			}

			case PDEventType_deleteBreakpoint:
			{
				delBreakpoint(data, reader, writer);
				break;
			}
        }
    }
}