Difference between revisions of "IDE Window: Editor Options Mouse/de"

From Lazarus wiki
Jump to navigationJump to search
m
Line 65: Line 65:
  
 
For a given combination of Button, Click-Type, Click-Direction there must not be any ambiguity for the modifier keys. Example
 
For a given combination of Button, Click-Type, Click-Direction there must not be any ambiguity for the modifier keys. Example
* Bad / Ambiguous:
+
;Bad / Ambiguous:
** Left, Single, down Click with: Shift required pressed; Alt and Strg ignored
+
* Left, Single, down Click with: Shift required pressed; Alt and Ctrl ignored
** Left, Single, down Click with: Strg required pressed; Alt and Shift ignored
+
* Left, Single, down Click with: Ctrl required pressed; Alt and Shift ignored
:: Now if you do this click, with both of Shift and Strg pressed, it would be unclear which of the 2 settings to use
+
: Now if you do this click, with both of Shift and Ctrl pressed, it would be unclear which of the 2 settings to use
* Correct:
+
;Correct:
** Left, Single, down Click with: Shift required pressed; Strg required un-pressed; Alt ignored
+
* Left, Single, down Click with: Shift required pressed; Ctrl required un-pressed; Alt ignored
** Left, Single, down Click with: Strg required pressed; Shift required un-pressed; Alt ignored
+
* Left, Single, down Click with: Ctrl required pressed; Shift required un-pressed; Alt ignored
* If uou whish Shift to be preferred (the shift action should be taken, if both modifier keys are pressed) then you must at an extra setting:
+
If you whish Shift to be preferred (the shift action should be taken, if both modifier keys are pressed) then you must at an extra setting:
** Left, Single, down Click with: Strg required pressed; Shift required pressed; Alt ignored
+
* Left, Single, down Click with: Ctrl required pressed; Shift required pressed; Alt ignored
  
 +
 +
;Default Fallback:
 
Es gibt eine Ausnahme von dieser Regel. If all modifier keys are set to be ignored, the entry becomes the fall-back for the button, click-type, click-dir configuration.
 
Es gibt eine Ausnahme von dieser Regel. If all modifier keys are set to be ignored, the entry becomes the fall-back for the button, click-type, click-dir configuration.
 
This is, if no configuration is found which has at least one modifier key required either pressed or un-pressed, then the fallback will be used.
 
This is, if no configuration is found which has at least one modifier key required either pressed or un-pressed, then the fallback will be used.
  
Anmerkung:
+
;Anmerkung:
* The Modifier Combinations used to detect the action on mouse down (or up) has nothing to do, with the modifier Key that certain actions use during there mouse-move phase.
+
The Modifier Combinations used to detect the action on mouse down (or up) has nothing to do with the modifier Key, that certain actions use during there mouse-move phase.<br>
: e.g. Dragging uses "Strg" to copy the dragged text instead of moving it. However the use of "Strg" for copy indication is during mouse move, so you can set start dragging to rely on any other Modifier key. It is however recommended to set '''Ctrl''' to greyed, so you can start dragging with the key pressed or un-pressed.
+
e.g. Dragging uses "ctrl" to copy the dragged text instead of moving it. However the use of "ctrl" for copy indication is during mouse move, so you can set start dragging to rely on any other Modifier key. It is however recommended to set '''Ctrl''' to greyed, so you can start dragging with the key pressed or un-pressed.<br>
: This is different to using "alt" (or others) for column mode selection: Here the decision is made only at the time of click. Later changes of the "alt" key during mouse-move do not change the selection mode.
+
This is different to using "alt" (or others) for column mode selection: Here the decision is made only at the time of click. Later changes of the "alt" key during mouse-move do not change the selection mode.
  
 
= Configure Mouse-Settings for the IDE's SynEdit =
 
= Configure Mouse-Settings for the IDE's SynEdit =

Revision as of 02:35, 6 June 2009

Deutsch (de) English (en)

Der Kontext Baum

Bei dem Kontext Baum handelt es sich um die Baum-Struktur direkt links neben der Übersichts-Tabelle. Gegenwärtig hat er folgende Einträge:

  • Text
    • Auswahl
  • Randleiste
    • Falt Baum
      • Gefaltet [+]
      • Entfaltet [-]
    • Zeilen Nummern

Das Verhalten der einzelnen Maus-Tasten kann Kontext-sensitiv festgelegt werden. Z.B. ein Klick auf den markierten Text kann eine andere Aktion auslösen als ein Klick auf unmarkierten Text.

Wenn für einen Kontext kein Verhalten für einen bestimmten Klick definiert ist, dann dient der übergeordnete Kontext als Definition (Rückfall). Z.B. für einen Klick auf markierten Text wird zuerst der Kontext "Markierung" durchsucht. Ist hier kein Eintrag für den Klick vorhanden dann wird der Kontext "Text" durchsucht. (In der Vorgabe-Konfiguration ist die Aktion für "Markierten Text verschieben" (Drag) auf diese Weise definiert.)

Randleiste und Text sind Haupteinträge im Kontext Baum. Sie haben keine Rückfall-Konfigurationen. Die anderen Einträge können jeweils auf ihre übergeordneten Einträge zurückfallen.

Die Klick Konfiguration

Welche Reaktion ein Klick mit einer der Maustasten auslöst wird anhand der folgenden Kriterien ermittelt.

Die Maustaste

Hier gibt es individuelle Einstellmöglichkeiten für die Left, Right und Middle Maustaste.

Die Zahl der Klicks

There are individual settings for Single, Double, Triple or Quad clicks.

Please make sure you read the section on Double to Quad Clicks


There also is a setting Any, which means the action is executed for any of the clicks. That would mean that a double click would execute the action twice. Or if the first part of the double-click changed the state of the object, the 2nd part would apply to the new state.

  • Beispiel:
The left button on the code fold part is configured as Any. Each click will toggle between folded and unfolded. Therefore a double click will revert the action of the first.
Without the Any setting, if you accidentally folded the wrong node, you would have to wait before you could click again to unfold it. (Because a quick 2nd click would count as double click, which wouldn't be matched by Single)

Anmerkungen:

  • Nicht alle von ihnen werden auf allen Plattformen unterstützt.
  • Currently Double, Triple and Quad only work for the left button and only for down clicks

Die Richtung des Klicks

A mouse click consists of a mouse-down and a mouse-up.

Actions can be configured to happen on either of those 2 events.

You can assign 2 different actions to the 2 events of the same click. They will be executed in the order of the events. However keep in mind that such a configuration may limit the action of the mouse-down event.

Anmerkungen:

  • Some events require the correct Click Direction to work properly:
    • Start Selection, Drag Selection: Only works on down events, since it relies on the following mouse-movement-while-button-down. (It has a build in "end" at mouse button up)
    • Kontextmenü: On some WidgetSets this will only work reliable on mouse-up events

Die Umstelltasten

Mouse behaviour can be modified by holding the Shift, Alt or Strg key (or combinations of them)

At the time of the click-down or up the state of all three keys is checked. An action can be defined to:

  • require one, some or all of the modifier keys pressed (Checkbox ticked)
  • require one, some or all of the modifier keys *not* pressed (Checkbox not ticked)
  • ignore the state of one, some or all of the modifier keys (Checkbox greyed)

For a given combination of Button, Click-Type, Click-Direction there must not be any ambiguity for the modifier keys. Example

Bad / Ambiguous
  • Left, Single, down Click with: Shift required pressed; Alt and Ctrl ignored
  • Left, Single, down Click with: Ctrl required pressed; Alt and Shift ignored
Now if you do this click, with both of Shift and Ctrl pressed, it would be unclear which of the 2 settings to use
Correct
  • Left, Single, down Click with: Shift required pressed; Ctrl required un-pressed; Alt ignored
  • Left, Single, down Click with: Ctrl required pressed; Shift required un-pressed; Alt ignored

If you whish Shift to be preferred (the shift action should be taken, if both modifier keys are pressed) then you must at an extra setting:

  • Left, Single, down Click with: Ctrl required pressed; Shift required pressed; Alt ignored


Default Fallback

Es gibt eine Ausnahme von dieser Regel. If all modifier keys are set to be ignored, the entry becomes the fall-back for the button, click-type, click-dir configuration. This is, if no configuration is found which has at least one modifier key required either pressed or un-pressed, then the fallback will be used.

Anmerkung

The Modifier Combinations used to detect the action on mouse down (or up) has nothing to do with the modifier Key, that certain actions use during there mouse-move phase.
e.g. Dragging uses "ctrl" to copy the dragged text instead of moving it. However the use of "ctrl" for copy indication is during mouse move, so you can set start dragging to rely on any other Modifier key. It is however recommended to set Ctrl to greyed, so you can start dragging with the key pressed or un-pressed.
This is different to using "alt" (or others) for column mode selection: Here the decision is made only at the time of click. Later changes of the "alt" key during mouse-move do not change the selection mode.

Configure Mouse-Settings for the IDE's SynEdit

  • Select the command you like to happen
  • Select if the caret should be moved.
Note: currently almost all commands move the mouse implicit.

Double to Quad Clicks

  • Anmerkung: Dies funktioniert gegenwärtig nur mit der linken Maustaste.
  • Anmerkung: Those are currently only triggering Mouse Down

Wenn sie einem Doppel- oder Dreifachklick eine Aktion zuweisen, dann sollten sie daran denken, daß diese immer auch die Aktionen für einen Einfach- bzw. Doppelklick auslösen.

This is: Doing a Triple-Click will first do a Single-Click (down and up) with the same Modifier Keys (none, shift, alt, ...), then a double click, then the triple. (At the time of the first click, SynEdit does not know there will be more clicks)

You should therefore take care of the actions assigned to those clicks.

  • With the default (select, select word, select line, select paragraph) this is no problem. Selecting a Line (Triple) is not disturbed by selecting a Word (Double) first.
  • If However you would assign MouseLink to the Single (or Double), and select Word to the Double (or Tripple, one more than the other), this would not work. Because by the time you do your last click, SynEdit already followed the Link (and will not undo this). In fact, if SynEdit followed a Link to an other File, then a new SynEdit became active, and would see your last click as a single click.
  • Das ist kein Bug sondern das korrekte Verhalten.

Aktuelle Einschränkungen

  • Double/Triple/Quad click ist nur für die linke Maustaste und nur für Mouse down verfügbar
  • GTK2: PopUp-Menu is recommended for use with ButtonUp only