octave-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Separation into dock widgets


From: Jacob Dawid
Subject: Separation into dock widgets
Date: Fri, 29 Apr 2011 00:50:31 +0200

Hello everybody,

from several octave I heard they usually have an editor window open side by side to a terminal window and that the current separation in tabs is preventing them to do it. I tried to change the separation so that it becomes possible, but DockWidgets are not intended by design what they should do in this case, they rather act as toolbars around the central widget (it is possible to "hack" it by assigning an empty central widget and not allowing them to overlap, but that's is not working well for all situations). The other approach to solve this is to generate an MDI interface, but that is rather ugly, because the user interface can become very messy when putting everything into a subwindow, plus it is not guaranteed that the subwindows dock and align nicely.

The solution then was to install an event filter that catches all key events from underlying widgets in the tab view. If the user holds Ctrl, all tabs get numbers assigned (1-4), so the user can switch very fast via pressing any of the number keys. For example, in order to copy a command from the documentation, you do the following steps:

1.) Mark the text you want to copy with the mouse, this can be text from the web or from the editor:
http://www.pic-upload.de/view-9769237/cp1.png.html

2.) You press Ctrl to copy, simultaneously the tabs get numbers assigned:
http://www.pic-upload.de/view-9769239/cp2.png.html

3.) You hold Ctrl, then you do "c 1 v" - copying, switching to 1 which is the terminal and pasting - and you have copied the text into the terminal:
http://www.pic-upload.de/view-9769240/cp3.png.html

Actually, it does not work yet with the browser as shown, since I found out that I have not yet implemented the copy-to-clipboard shortcut for the browser, I had to do a click on the right mouse button and copy. But it already works for the editor.

Jacob
--
Software Development == Church Development
Step 1. Build it.
Step 2. Pray.

Whitespace - the most ink saving programming language: http://compsoc.dur.ac.uk/whitespace/index.php .


reply via email to

[Prev in Thread] Current Thread [Next in Thread]