Project

General

Profile

Bug #53

Block select should allow you to edit multiple rows at the same time.

Added by Wil van Antwerpen almost 7 years ago. Updated almost 7 years ago.

Status:
In Progress
Priority:
Normal
Category:
-
Start date:
06/22/2017
Due date:
% Done:

0%


Description

As reported by Sergey:
"
When you select block, it should allow to work with this block (similar to CM or even Word).

eg 1. Select vertical block and copy/paste it at the location required (looks like it does it)
or 2. Select vertical line and press tab = Selection + Right side code moved to the right by 4 spaces/tab.
or 3. Select vertical line and start typing = You should get X lines of similar text: etc

|Move to CM_
|Move to CM_
|Move to CM_
|Move to CM_

This feature often used by developers (including me)."

History

#1 Updated by Wil van Antwerpen almost 7 years ago

  • Status changed from New to In Progress

It seems you can't edit the original post the line

|Move to CM_ |Move to CM_ |Move to CM_ |Move to CM_

above should have looked like:

|Move to CM_

|Move to CM_
|Move to CM_
|Move to CM_

Anyways, as it turns out scintilla has some support for it via setting the property

SCI_SETADDITIONALSELECTIONTYPING to true

But testing shows that it doesn't quite work well as in codemax, for example quick testing shows:
* selection rectangle changes while typing
* backspace is functioning as a delete

Neither is acceptable as a replacement for how it is supposed to work so I am now looking into doing this by hand from within DataFlex.

#2 Updated by Wil van Antwerpen almost 7 years ago

  • Status changed from In Progress to Resolved

There's now an implementation on this, it's a bit hacky for my feelings.
While the basic code worked, I had to take into account several special cases and provide patches for them.
In particular for the backspace key and tab key.
If the block select previously had text selected then you normally expect it to be deleted before you start typing, which was yet another case to provide custom code for.

It is still possible to make it misbehave, but not on normally expected usage, at least I think so.
As making it perfect is very time consuming, I stopped after catering for the normal use cases.

#3 Updated by Wil van Antwerpen almost 7 years ago

  • Status changed from Resolved to In Progress

The provided solution is not working - at all - on another machine.
On that machine it is not even possible to select without the selection snipping away part of the text.
Very strange.

Note that this is the native scintilla interface part, not even the DataFlex block edit parts.

Also available in: Atom PDF