コード例 #1
0
ファイル: galleryview.cpp プロジェクト: JGunning/OpenAOL-TV
/** \fn     GalleryView::MenuMain()
 *  \brief  Shows the main menu when the MENU button was pressed
 *  \return void
 */
void GalleryView::MenuMain()
{
    // Create the main menu that
    // will contain the submenus above
    MythMenu *menu = new MythMenu(tr("Image Options"), this, "mainmenu");

    // Depending on the status of the sync show either the
    // start sync or stop sync. The user can decide if he
    // wants to stop the sync before leaving the main screen.
    if (!m_syncStatusThread->isSyncRunning())
        menu->AddItem(tr("Start Syncronization"), SLOT(ConfirmStartSync()));
    else
        menu->AddItem(tr("Stop Syncronization"), SLOT(ConfirmStopSync()));

    // Add the available submenus to the main menu. The methods will
    // check if the requirements for showing the menu item is fulfilled
    MenuMetadata(menu);
    MenuSelection(menu);
    MenuFile(menu);

    menu->AddItem(tr("Settings"), SLOT(MenuSettings()));

    m_menuPopup = new MythDialogBox(menu, m_popupStack, "menuPopup");
    if (!m_menuPopup->Create())
    {
        delete m_menuPopup;
        m_menuPopup = NULL;
        return;
    }

    m_popupStack->AddScreen(m_menuPopup);
}
コード例 #2
0
ファイル: galleryview.cpp プロジェクト: JGunning/OpenAOL-TV
/** \fn     GalleryView::MenuInformation()
 *  \brief  Shows the menu when the INFO key was pressed
 *  \return void
 */
void GalleryView::MenuInformation()
{
    QString label = tr("Image Information");
    MythMenu *menu = new MythMenu(label, this, "infomenu");

    // only show the slideshow options and details menu when
    // the item is a video or image file
    ImageMetadata *im = GetImageMetadataFromSelectedButton();
    if (im)
    {
        if (im->m_type == kImageFile ||
            im->m_type == kVideoFile)
        {
            menu->AddItem(tr("Normal SlideShow"), SLOT(ShowFiles()));
            menu->AddItem(tr("Random Slideshow"), SLOT(ShowRandomFiles()));
        }

        if (im->m_type == kImageFile)
            menu->AddItem(tr("Show Details"), SLOT(FileDetails()));
    }

    m_menuPopup = new MythDialogBox(menu, m_popupStack, "menuPopup");
    if (!m_menuPopup->Create())
    {
        delete m_menuPopup;
        m_menuPopup = NULL;
        return;
    }

    m_popupStack->AddScreen(m_menuPopup);
}
コード例 #3
0
ファイル: iconview.cpp プロジェクト: DaveDaCoda/mythtv
MythMenu* IconView::CreateMetadataMenu(void)
{
    QString label = tr("Metadata Options");

    MythMenu *menu = new MythMenu(label, this, "metadatamenu");

    menu->AddItem(tr("Rotate CW"), 0);
    menu->AddItem(tr("Rotate CCW"), 1);

    return menu;
}
コード例 #4
0
ファイル: iconview.cpp プロジェクト: DaveDaCoda/mythtv
MythMenu* IconView::CreateMarkingMenu(void)
{
    QString label = tr("Marking Options");

    MythMenu *menu = new MythMenu(label, this, "markingmenu");

    menu->AddItem(tr("Select One"), 0);
    menu->AddItem(tr("Clear One Marked"), 1);
    menu->AddItem(tr("Select All"), 2);
    menu->AddItem(tr("Clear Marked"), 3);

    return menu;
}
コード例 #5
0
ファイル: iconview.cpp プロジェクト: iainlane/mythtv
void IconView::HandleMainMenu(void)
{
    QString label = tr("Gallery Options");

    MythMenu *menu = new MythMenu(label, this, "mainmenu");

    menu->AddItem(tr("SlideShow"));
    menu->AddItem(tr("Random"));
    menu->AddItem(tr("Meta Data Options"), NULL, CreateMetadataMenu());
    menu->AddItem(tr("Marking Options"), NULL, CreateMarkingMenu());
    menu->AddItem(tr("Filter / Sort..."));
    menu->AddItem(tr("File Options"), NULL, CreateFileMenu());
    menu->AddItem(tr("Settings..."));
//     if (m_showDevices)
//     {
//         QDir d(m_currDir);
//         if (!d.exists())
//             m_currDir = m_galleryDir;
//
//         LoadDirectory(m_currDir);
//         m_showDevices = false;
//     }

    m_menuPopup = new MythDialogBox(menu, m_popupStack, "mythgallerymenupopup");

    if (!m_menuPopup->Create())
    {
        delete m_menuPopup;
        m_menuPopup = NULL;
        return;
    }

    m_popupStack->AddScreen(m_menuPopup);
}
コード例 #6
0
ファイル: iconview.cpp プロジェクト: DaveDaCoda/mythtv
MythMenu* IconView::CreateFileMenu(void)
{
    QString label = tr("File Options");

    MythMenu *menu = new MythMenu(label, this, "filemenu");

    menu->AddItem(tr("Show Devices"), 0);
    menu->AddItem(tr("Eject"), 1);
    menu->AddItem(tr("Import"), 2);

    if (!m_itemMarked.isEmpty())
    {
        menu->AddItem(tr("Copy here"), 3);
        menu->AddItem(tr("Move here"), 4);
    }

    if (!m_imageList->IsEmpty())
        menu->AddItem(tr("Delete"), 5);

    menu->AddItem(tr("Create folder"), 6);

    if (!m_imageList->IsEmpty())
        menu->AddItem(tr("Rename"), 7);

    return menu;
}
コード例 #7
0
ファイル: galleryslideview.cpp プロジェクト: dragonian/mythtv
/**
 *  \brief  Add Transforms submenu
 *  \param  mainMenu Parent menu
 */
void GallerySlideView::MenuTransforms(MythMenu &mainMenu)
{
    ImagePtrK im = m_slides.GetCurrent().GetImageData();
    if (im && !m_playing)
    {
        MythMenu *menu = new MythMenu(tr("Transform Options"),
                                      this, "metadatamenu");
        if (m_editsAllowed)
        {
            menu->AddItem(tr("Rotate CW"));
            menu->AddItem(tr("Rotate CCW"));
            menu->AddItem(tr("Flip Horizontal"));
            menu->AddItem(tr("Flip Vertical"));
            menu->AddItem(tr("Reset to Exif"));
        }

        if (m_slides.GetCurrent().CanZoomIn())
            menu->AddItem(tr("Zoom In"));

        if (m_slides.GetCurrent().CanZoomOut())
            menu->AddItem(tr("Zoom Out"));

        mainMenu.AddItem(tr("Transforms"), NULL, menu);
    }
}
コード例 #8
0
ファイル: galleryslideview.cpp プロジェクト: dragonian/mythtv
/**
 *  \brief  Shows the popup menu
 */
void GallerySlideView::MenuMain()
{
    // Create the main menu that will contain the submenus above
    MythMenu *menu = new MythMenu(tr("Slideshow Options"), this, "mainmenu");

    ImagePtrK im = m_slides.GetCurrent().GetImageData();
    if (im && im->m_type == kVideoFile)
        menu->AddItem(tr("Play Video"), SLOT(PlayVideo()));

    if (m_playing)
        menu->AddItem(tr("Stop"), SLOT(Stop()));
    else
        menu->AddItem(tr("Start SlideShow"), SLOT(Play()));

    if (gCoreContext->GetNumSetting("GalleryRepeat", 0))
        menu->AddItem(tr("Turn Repeat Off"), SLOT(RepeatOff()));
    else
        menu->AddItem(tr("Turn Repeat On"), SLOT(RepeatOn()));

    MenuTransforms(*menu);

    if (m_uiHideCaptions)
    {
        if (m_showCaptions)
            menu->AddItem(tr("Hide Captions"), SLOT(HideCaptions()));
        else
            menu->AddItem(tr("Show Captions"), SLOT(ShowCaptions()));
    }

    QString details;
    switch (m_infoList.GetState())
    {
    case kBasicInfo: details = tr("More Details"); break;
    case kFullInfo:  details = tr("Less Details"); break;
    default:
    case kNoInfo:    details = tr("Show Details"); break;
    }
    menu->AddItem(details, SLOT(ShowInfo()));

    if (m_infoList.GetState() != kNoInfo)
        menu->AddItem(tr("Hide Details"), SLOT(HideInfo()));

    MythScreenStack *popupStack = GetMythMainWindow()->GetStack("popup stack");
    MythDialogBox *menuPopup = new MythDialogBox(menu, popupStack, "menuPopup");
    if (menuPopup->Create())
        popupStack->AddScreen(menuPopup);
    else
        delete menuPopup;
}
コード例 #9
0
ファイル: nettree.cpp プロジェクト: JackOfMostTrades/mythtv
MythMenu* NetTree::createShowViewMenu()
{
    QString label = tr("View Options");

    MythMenu *menu = new MythMenu(label, this, "options");

    if (m_type != DLG_TREE)
        menu->AddItem(tr("Switch to List View"), SLOT(switchTreeView()));
    if (m_type != DLG_GALLERY)
        menu->AddItem(tr("Switch to Gallery View"), SLOT(switchGalleryView()));
    if (m_type != DLG_BROWSER)
        menu->AddItem(tr("Switch to Browse View"), SLOT(switchBrowseView()));

    return menu;
}
コード例 #10
0
void VisualizerView::ShowMenu(void)
{
    QString label = tr("Actions");

    MythMenu *menu = new MythMenu(label, this, "menu");

    menu->AddItem(tr("Change Visualizer"), NULL, createVisualizerMenu());
    menu->AddItem(tr("Show Track Info"), SLOT(showTrackInfoPopup()));
    menu->AddItem(tr("Other Options"), NULL, createMainMenu());

    MythScreenStack *popupStack = GetMythMainWindow()->GetStack("popup stack");

    MythDialogBox *menuPopup = new MythDialogBox(menu, popupStack, "actionmenu");

    if (menuPopup->Create())
        popupStack->AddScreen(menuPopup);
    else
        delete menuPopup;
}
コード例 #11
0
ファイル: galleryview.cpp プロジェクト: JGunning/OpenAOL-TV
/** \fn     GalleryView::MenuSelection(MythMenu *)
 *  \brief  Adds a new selection menu entry into the main menu
 *  \param  mainMenu Parent that will hold the menu entry
 *  \return void
 */
void GalleryView::MenuSelection(MythMenu *mainMenu)
{
    ImageMetadata *im = GetImageMetadataFromSelectedButton();
    if (im)
    {
        // Selection / deselection is only
        // available for images or videos
        if (im->m_type == kImageFile ||
            im->m_type == kVideoFile)
        {
            MythMenu *menu = new MythMenu(tr("Selection Options"),
                                          this, "selectionmenu");

            if (!im->m_selected)
                menu->AddItem(tr("Select File"),
                              SLOT(FileSelectOne()));
            else
                menu->AddItem(tr("Deselect File"),
                              SLOT(FileDeselectOne()));

            menu->AddItem(tr("Select All Files"), SLOT(FileSelectAll()));
            menu->AddItem(tr("Deselect All Files"), SLOT(FileDeselectAll()));
            menu->AddItem(tr("Invert Selection"), SLOT(FileInvertAll()));

            mainMenu->AddItem(tr("Selection Menu"), NULL, menu);
        }
    }
}
コード例 #12
0
ファイル: galleryview.cpp プロジェクト: JGunning/OpenAOL-TV
/** \fn     GalleryView::MenuMetadata(MythMenu *)
 *  \brief  Adds a new metadata menu entry into the main menu
 *  \param  mainMenu Parent that will hold the menu entry
 *  \return void
 */
void GalleryView::MenuMetadata(MythMenu *mainMenu)
{
    ImageMetadata *im = GetImageMetadataFromSelectedButton();
    if (im)
    {
        // only show the metadata menu
        // if the current item is an image
        if (im->m_type == kImageFile)
        {
            MythMenu *menu = new MythMenu(tr("Metadata Options"),
                                          this, "metadatamenu");

            menu->AddItem(tr("Rotate CW"), SLOT(FileRotateCW()));
            menu->AddItem(tr("Rotate CCW"), SLOT(FileRotateCCW()));
            menu->AddItem(tr("Flip Horizontal"), SLOT(FileFlipHorizontal()));
            menu->AddItem(tr("Flip Vertical"), SLOT(FileFlipVertical()));
            // menu->AddItem(tr("Zoom In"), SLOT(FileZoomIn()));
            // menu->AddItem(tr("Zoom Out"), SLOT(FileZoomOut()));

            mainMenu->AddItem(tr("Meta Data Menu"), NULL, menu);
        }
    }
}
コード例 #13
0
ファイル: streamview.cpp プロジェクト: bfosberry/mythtv
void StreamView::ShowMenu(void)
{
    MythMenu *menu = NULL;

    menu = new MythMenu(tr("Stream Actions"), this, "streammenu");
    menu->AddItem(tr("Add Stream"));

    if (m_streamList->GetItemCurrent())
    {
        menu->AddItem(tr("Edit Stream"));
        menu->AddItem(tr("Remove Stream"));
    }

    menu->AddItem(tr("More Options"), NULL, createMainMenu());

    MythScreenStack *popupStack = GetMythMainWindow()->GetStack("popup stack");

    MythDialogBox *menuPopup = new MythDialogBox(menu, popupStack, "actionmenu");

    if (menuPopup->Create())
        popupStack->AddScreen(menuPopup);
    else
        delete menu;
}
コード例 #14
0
ファイル: iconview.cpp プロジェクト: iainlane/mythtv
MythMenu* IconView::CreateFileMenu(void)
{
    QString label = tr("File Options");

    MythMenu *menu = new MythMenu(label, this, "filemenu");

    menu->AddItem(tr("Show Devices"));
    menu->AddItem(tr("Eject"));
    menu->AddItem(tr("Import"));
    menu->AddItem(tr("Copy here"));
    menu->AddItem(tr("Move here"));
    menu->AddItem(tr("Delete"));
    menu->AddItem(tr("Create folder"));
    menu->AddItem(tr("Rename"));

    return menu;
}
コード例 #15
0
/** \fn     GalleryView::MenuMain()
 *  \brief  Shows a dialog popup with the main menu
 *  \return void
 */
void GalleryWidget::MenuMain()
{
    // Create the main menu that will contain the submenus above
    MythMenu *menu = new MythMenu(tr("Image Information"), this, "mainmenu");

    // If no slideshow type was given show the item to start it
    // otherwise show the items to stop or resume a slideshow.
    if (m_slideShowType == kNoSlideShow)
    {
        menu->AddItem(tr("Start Normal SlideShow"),
                      SLOT(StartNormalSlideShow()));
        menu->AddItem(tr("Start Random SlideShow"),
                      SLOT(StartRandomSlideShow()));
    }
    else
    {
        if (m_timer->isActive())
            menu->AddItem(tr("Pause SlideShow"), SLOT(PauseSlideShow()));
        else
        {
            if (m_slideShowType == kNormalSlideShow)
                menu->AddItem(tr("Resume SlideShow"),
                              SLOT(StartNormalSlideShow()));

            if (m_slideShowType == kRandomSlideShow)
                menu->AddItem(tr("Resume SlideShow"),
                              SLOT(StartRandomSlideShow()));
        }
    }

    MenuMetadata(menu);
    menu->AddItem(tr("Show Details"),   SLOT(FileDetails()));

    m_menuPopup = new MythDialogBox(menu, m_popupStack, "menuPopup");
    if (!m_menuPopup->Create())
    {
        delete m_menuPopup;
        m_menuPopup = NULL;
        return;
    }

    m_popupStack->AddScreen(m_menuPopup);
}
コード例 #16
0
/** \fn     GalleryWidget::MenuMetadata(MythMenu *)
 *  \brief  Adds a new metadata menu entry into the main menu
 *  \param  mainMenu Parent that will hold the menu entry
 *  \return void
 */
void GalleryWidget::MenuMetadata(MythMenu *mainMenu)
{
    MythMenu *menu = new MythMenu(tr("Metadata Options"),
                                  this, "metadatamenu");

    menu->AddItem(tr("Rotate CW"));
    menu->AddItem(tr("Rotate CCW"));
    menu->AddItem(tr("Flip Horizontal"));
    menu->AddItem(tr("Flip Vertical"));

    if (m_fileDataList->at(m_index))
    {
        if (m_fileDataList->at(m_index)->GetZoom() < 300)
            menu->AddItem(tr("Zoom In"));

        if (m_fileDataList->at(m_index)->GetZoom() > 0)
            menu->AddItem(tr("Zoom Out"));
    }

    mainMenu->AddItem(tr("Meta Data Menu"), NULL, menu);
}
コード例 #17
0
ファイル: nettree.cpp プロジェクト: JackOfMostTrades/mythtv
MythMenu* NetTree::createShowManageMenu()
{
    QString label = tr("Subscription Management");

    MythMenu *menu = new MythMenu(label, this, "options");


    menu->AddItem(tr("Update Site Maps"), SLOT(updateTrees()));
    menu->AddItem(tr("Update RSS"), SLOT(updateRSS()));
    menu->AddItem(tr("Manage Site Subscriptions"), SLOT(runTreeEditor()));
    menu->AddItem(tr("Manage RSS Subscriptions"), SLOT(runRSSEditor()));
    if (!m_treeAutoUpdate)
        menu->AddItem(tr("Enable Automatic Site Updates"), SLOT(toggleTreeUpdates()));
    else
        menu->AddItem(tr("Disable Automatic Site Updates"), SLOT(toggleTreeUpdates()));
//    if (!m_rssAutoUpdate)
//        menu->AddItem(tr("Enable Automatic RSS Updates"), SLOT(toggleRSSUpdates()));
//    else
//        menu->AddItem(tr("Disable Automatic RSS Updates"), SLOT(toggleRSSUpdates()));

    return menu;
}
コード例 #18
0
ファイル: nettree.cpp プロジェクト: rjmorse/mythtv
void NetTree::showMenu(void)
{
    QString label = tr("Playback/Download Options");

    MythMenu *menu = new MythMenu(label, this, "options");

    ResultItem *item = NULL;
    if (m_type == DLG_TREE)
    {
        MythGenericTree *node = m_siteMap->GetCurrentNode();

        if (node)
            item = qVariantValue<ResultItem *>(node->GetData());
    }
    else
    {
        MythGenericTree *node = GetNodePtrFromButton(m_siteButtonList->GetItemCurrent());

        if (node)
            item = qVariantValue<ResultItem *>(node->GetData());
    }

    if (item)
    {
        if (item->GetDownloadable())
            menu->AddItem(tr("Stream Video"), SLOT(streamWebVideo()));
        menu->AddItem(tr("Open Web Link"), SLOT(showWebVideo()));

        if (item->GetDownloadable())
            menu->AddItem(tr("Save This Video"), SLOT(doDownloadAndPlay()));
    }

    menu->AddItem(tr("Scan/Manage Subscriptions"), NULL, createShowManageMenu());
    menu->AddItem(tr("Change View"), NULL, createShowViewMenu());

    MythDialogBox *menuPopup = new MythDialogBox(menu, m_popupStack, "mythnettreemenupopup");

    if (menuPopup->Create())
        m_popupStack->AddScreen(menuPopup);
    else
        delete menuPopup;
}
コード例 #19
0
ファイル: searchview.cpp プロジェクト: DragonStalker/mythtv
void SearchView::ShowMenu(void)
{
    if (GetFocusWidget() == m_tracksList)
    {
        QString label = tr("Search Actions");

        MythMenu *menu = new MythMenu(label, this, "searchviewmenu");

        MythUIButtonListItem *item = m_tracksList->GetItemCurrent();
        if (item)
        {
            MusicMetadata *mdata = qVariantValue<MusicMetadata*> (item->GetData());
            if (mdata)
            {
                if (gPlayer->getCurrentPlaylist() && gPlayer->getCurrentPlaylist()->checkTrack(mdata->ID()))
                    menu->AddItem(tr("Remove From Playlist"));
                else
                {
                    menu->AddItem(tr("Add To Playlist"));
                    menu->AddItem(tr("Add To Playlist And Play"));
                }
            }
        }

        if (GetFocusWidget() == m_tracksList || GetFocusWidget() == m_currentPlaylist)
            menu->AddItem(tr("Search List..."));

        menu->AddItem(tr("More Options"), NULL, createSubMenu());

        MythScreenStack *popupStack = GetMythMainWindow()->GetStack("popup stack");

        MythDialogBox *menuPopup = new MythDialogBox(menu, popupStack, "actionmenu");

        if (menuPopup->Create())
            popupStack->AddScreen(menuPopup);
        else
            delete menu;
    }
    else
        MusicCommon::ShowMenu();
}
コード例 #20
0
ファイル: galleryview.cpp プロジェクト: JGunning/OpenAOL-TV
/** \fn     GalleryView::MenuFile(MythMenu *)
 *  \brief  Adds a new file menu entry into the main menu
 *  \param  mainMenu Parent that will hold the menu entry
 *  \return void
 */
void GalleryView::MenuFile(MythMenu *mainMenu)
{
    ImageMetadata *im = GetImageMetadataFromSelectedButton();
    if (im)
    {
        // There are no options available for up folders
        // They are just there to navigate one level up
        if (im->m_type == kUpDirectory)
            return;

        QString type = "Directory";
        if (im->m_type == kImageFile ||
            im->m_type == kVideoFile)
            type = "File";

        MythMenu *menu = new MythMenu(tr("%1 Options").arg(type),
                                      this, "fileactionmenu");

        // Allow renaming and deletion only for files
        if (im->m_type == kImageFile ||
            im->m_type == kVideoFile)
        {
            menu->AddItem(tr("Delete File"),
                          SLOT(ConfirmFileDelete()));
            menu->AddItem(tr("Delete Selected Files"),
                          SLOT(ConfirmFileDeleteSelected()));
            menu->AddItem(tr("Rename File"),
                          SLOT(FileRenameInput()));
        }

        if (im->m_isHidden)
            menu->AddItem(tr("Unhide %1").arg(type), SLOT(FileUnhide()));
        else
            menu->AddItem(tr("Hide %1").arg(type), SLOT(FileHide()));

        mainMenu->AddItem(tr("File Menu"), NULL, menu);
    }
}