Mercurial > hg > octave-lyh
diff libgui/src/files-dock-widget.cc @ 16881:944ade6e7f66
Make main window copy and paste global for current focused window
* libgui/src/workspace-view.h, libgui/src/workspace-view.cc
(workspace_view::copyClipboard): New function.
* libgui/src/qtinfo/webinfo.h, libgui/src/qtinfo/webinfo.cc
(webinfo::pasteClipboard): New function.
(webinfo::copyClipboard): New function.
* libgui/src/octave-dock-widget.h, libgui/src/octave-dock-widget.cc
(octave_dock_widget::copyClipboard): New function.
(octave_dock_widget::pasteClipboard): New function.
(octave_dock_widget::focusWidget): New function.
(octave_dock_widget::octave_dock_widget): Connect copy/paste to main window signals.
* libgui/src/main-window.cc
(main_window::copyClipboard): process current directory copy if is focused.
(main_window::pasteClipboard): process current directory paste if is focused.
* libgui/src/m-editor/file-editor.h, libgui/src/m-editor/file-editor.cc
(file_editor::copyClipboard): New function.
(file_editor::pasteClipboard): New function.
* libgui/src/history-dock-widget.h, libgui/src/history-dock-widget.cc
(history_dock_widget::pasteClipboard): New function.
(history_dock_widget::copyClipboard): New function.
* libgui/src/files-dock-widget.h, libgui/src/files-dock-widget.cc
(files_dock_widget::copyClipboard): New function.
(files_dock_widget::pasteClipboard): New function.
* libgui/src/documentation-dock-widget.h, libgui/src/documentation-dock-widget.cc
(documentation_dock_widget::copyClipboard): New function.
(documentation_dock_widget::pasteClipboard): New function.
* libgui/qterminal/libqterminal/win32/QWinTerminalImpl.h, libgui/qterminal/libqterminal/win32/QWinTerminalImpl.cc
(QWinTerminalImpl::copyClipboard): dont copy unless is focused widget.
(QWinTerminalImpl::pasteClipboard): dont paste unless is focused widget.
* libgui/qterminal/libqterminal/unix/TerminalView.h, libgui/qterminal/libqterminal/unix/TerminalView.cc
(TerminalView::copyClipboard): only copy is focused widget.
(TerminalView::pasteClipboard): only paste is focused widget.
author | John Donoghue <john.donoghue@ieee.org> |
---|---|
date | Sun, 30 Jun 2013 20:33:20 -0400 |
parents | a86327a7d9fb |
children | 6bd74153c3ae |
line wrap: on
line diff
--- a/libgui/src/files-dock-widget.cc +++ b/libgui/src/files-dock-widget.cc @@ -708,3 +708,35 @@ emit find_files_signal(dir); } +void +files_dock_widget::copyClipboard () +{ + if (_file_tree_view->hasFocus ()) + contextmenu_copy_selection (true); + if (_current_directory->hasFocus ()) + { + QClipboard *clipboard = QApplication::clipboard (); + + QLineEdit * edit = _current_directory->lineEdit (); + if (edit && edit->hasSelectedText ()) + { + clipboard->setText (edit->selectedText ()); + } + } +} + +void +files_dock_widget::pasteClipboard () +{ + if (_current_directory->hasFocus ()) + { + QClipboard *clipboard = QApplication::clipboard (); + QString str = clipboard->text (); + QLineEdit * edit = _current_directory->lineEdit (); + if (edit && str.length () > 0) + edit->insert (str); + } +} + + +