Changeset View
Changeset View
Standalone View
Standalone View
ui/pageview.cpp
Show First 20 Lines • Show All 67 Lines • ▼ Show 20 Line(s) | |||||
68 | #include "pagepainter.h" | 68 | #include "pagepainter.h" | ||
69 | #include "core/annotations.h" | 69 | #include "core/annotations.h" | ||
70 | #include "annotwindow.h" | 70 | #include "annotwindow.h" | ||
71 | #include "guiutils.h" | 71 | #include "guiutils.h" | ||
72 | #include "annotationpopup.h" | 72 | #include "annotationpopup.h" | ||
73 | #include "pageviewannotator.h" | 73 | #include "pageviewannotator.h" | ||
74 | #include "pageviewmouseannotation.h" | 74 | #include "pageviewmouseannotation.h" | ||
75 | #include "priorities.h" | 75 | #include "priorities.h" | ||
76 | #include "toolaction.h" | 76 | #include "toggleactionmenu.h" | ||
77 | #include "okmenutitle.h" | 77 | #include "okmenutitle.h" | ||
78 | #ifdef HAVE_SPEECH | 78 | #ifdef HAVE_SPEECH | ||
79 | #include "tts.h" | 79 | #include "tts.h" | ||
80 | #endif | 80 | #endif | ||
81 | #include "videowidget.h" | 81 | #include "videowidget.h" | ||
82 | #include "core/action.h" | 82 | #include "core/action.h" | ||
83 | #include "core/area.h" | 83 | #include "core/area.h" | ||
84 | #include "core/document_p.h" | 84 | #include "core/document_p.h" | ||
▲ Show 20 Lines • Show All 566 Lines • ▼ Show 20 Line(s) | 617 | { | |||
651 | connect( d->aMouseMagnifier, &QAction::triggered, this, &PageView::slotSetMouseMagnifier ); | 651 | connect( d->aMouseMagnifier, &QAction::triggered, this, &PageView::slotSetMouseMagnifier ); | ||
652 | d->aMouseMagnifier->setCheckable( true ); | 652 | d->aMouseMagnifier->setCheckable( true ); | ||
653 | ac->setDefaultShortcut(d->aMouseMagnifier, Qt::CTRL + Qt::Key_6); | 653 | ac->setDefaultShortcut(d->aMouseMagnifier, Qt::CTRL + Qt::Key_6); | ||
654 | d->aMouseMagnifier->setActionGroup( d->mouseModeActionGroup ); | 654 | d->aMouseMagnifier->setActionGroup( d->mouseModeActionGroup ); | ||
655 | d->aMouseMagnifier->setChecked( Okular::Settings::mouseMode() == Okular::Settings::EnumMouseMode::Magnifier ); | 655 | d->aMouseMagnifier->setChecked( Okular::Settings::mouseMode() == Okular::Settings::EnumMouseMode::Magnifier ); | ||
656 | 656 | | |||
657 | d->aToggleAnnotator = new KToggleAction(QIcon::fromTheme( QStringLiteral("draw-freehand") ), i18n("&Review"), this); | 657 | d->aToggleAnnotator = new KToggleAction(QIcon::fromTheme( QStringLiteral("draw-freehand") ), i18n("&Review"), this); | ||
658 | ac->addAction(QStringLiteral("mouse_toggle_annotate"), d->aToggleAnnotator ); | 658 | ac->addAction(QStringLiteral("mouse_toggle_annotate"), d->aToggleAnnotator ); | ||
659 | d->aToggleAnnotator->setCheckable( true ); | 659 | d->aToggleAnnotator->setCheckable( true ); | ||
simgunz: setDelayed and setStickyMenu shoule be defaults, without having to set them here. | |||||
I think you are right, but this default IMHO belongs to KActionMenu. Ok to provide MenuButtonPopupMode as default for a constructor parameter? davidhurka: I think you are right, but this default IMHO belongs to KActionMenu.
Ok to provide… | |||||
660 | connect( d->aToggleAnnotator, &QAction::toggled, this, &PageView::slotToggleAnnotator ); | 660 | connect( d->aToggleAnnotator, &QAction::toggled, this, &PageView::slotToggleAnnotator ); | ||
661 | ac->setDefaultShortcut(d->aToggleAnnotator, Qt::Key_F6); | 661 | ac->setDefaultShortcut(d->aToggleAnnotator, Qt::Key_F6); | ||
662 | 662 | | |||
663 | ToolAction *ta = new ToolAction( this ); | 663 | ToggleActionMenu *mouseModeMenu = new ToggleActionMenu( this ); | ||
664 | ac->addAction( QStringLiteral("mouse_selecttools"), ta ); | 664 | mouseModeMenu->addAction( d->aMouseSelect ); | ||
665 | ta->addAction( d->aMouseTextSelect ); | 665 | mouseModeMenu->addAction( d->aMouseTextSelect ); | ||
666 | ta->addAction( d->aMouseSelect ); | 666 | mouseModeMenu->addAction( d->aMouseTableSelect ); | ||
simgunz: Can't this connection be defined inside ToggleActionMenu? | |||||
No, the idea of ToggleActionMenu is to let the application choose the default action. Ok to make it optional? There would certainly be some use cases. davidhurka: No, the idea of ToggleActionMenu is to let the application choose the default action.
Ok to… | |||||
667 | ta->addAction( d->aMouseTableSelect ); | 667 | mouseModeMenu->setDefaultAction( d->aMouseTextSelect ); | ||
668 | mouseModeMenu->setText( i18nc( "@action", "Selection Tools" ) ); | ||||
669 | ac->addAction( QStringLiteral( "mouse_selecttools" ), mouseModeMenu ); | ||||
670 | connect( mouseModeMenu->menu(), &QMenu::triggered, | ||||
simgunz: All the code below, cannot be managed inside ToggleActionMenu? | |||||
davidhurka: No, for the same reason. | |||||
671 | mouseModeMenu, &ToggleActionMenu::setDefaultAction ); | ||||
668 | 672 | | |||
669 | // speak actions | 673 | // speak actions | ||
670 | #ifdef HAVE_SPEECH | 674 | #ifdef HAVE_SPEECH | ||
671 | d->aSpeakDoc = new QAction( QIcon::fromTheme( QStringLiteral("text-speak") ), i18n( "Speak Whole Document" ), this ); | 675 | d->aSpeakDoc = new QAction( QIcon::fromTheme( QStringLiteral("text-speak") ), i18n( "Speak Whole Document" ), this ); | ||
672 | ac->addAction( QStringLiteral("speak_document"), d->aSpeakDoc ); | 676 | ac->addAction( QStringLiteral("speak_document"), d->aSpeakDoc ); | ||
673 | d->aSpeakDoc->setEnabled( false ); | 677 | d->aSpeakDoc->setEnabled( false ); | ||
674 | connect( d->aSpeakDoc, &QAction::triggered, this, &PageView::slotSpeakDocument ); | 678 | connect( d->aSpeakDoc, &QAction::triggered, this, &PageView::slotSpeakDocument ); | ||
675 | 679 | | |||
▲ Show 20 Lines • Show All 4902 Lines • Show Last 20 Lines |
setDelayed and setStickyMenu shoule be defaults, without having to set them here.