View Issue Details

IDProjectCategoryView StatusLast Update
0035493LazarusIDEpublic2021-06-28 22:43
Reporterdonovaly Assigned ToJuha Manninen  
PrioritynormalSeverityminorReproducibilityalways
Status resolvedResolutionsuspended 
Product Version2.0.2 
Summary0035493: cannot copy more than one compiler message in messages window
DescriptionI compiled a program and got several compiler warnings and hints I need to send a colleague as mail. Therefore I want to select several warnings to copy them to the clipboard. But this is not possible, I tried all combinations of left/right mouse button + Shift/Alt/Ctrl.

I am sure it is a bug not a feature request because when right-clicking on the messages window I can select in the context menu "Copy -> Copy selected messages to clipboard". So it was once possible to select several messages
TagsNo tags attached.
Fixed in Revisionr65311, r65312, r65318
LazTarget-
WidgetsetWin32/Win64
Attached Files

Relationships

related to 0036912 new Linker errors are not always displayed in the 'Messages' widget 

Activities

donovaly

2021-05-10 20:53

reporter   ~0130814

This issue is still in Lazarus 2.1SVN

Bart Broersma

2021-05-10 21:10

developer   ~0130815

Last edited: 2021-05-10 21:10

View 2 revisions

If memory serves me well, then there already is a bugreport about this.

Juha Manninen

2021-06-13 11:09

developer   ~0131284

It seems the selection never worked for multiple messages. It is clearly an unimplemented feature.
The code is complex. The control is entirely custom drawn. Not easy. Must scratch head for some time.

Bart Broersma

2021-06-26 12:01

developer   ~0131498

(Or simply remove the "Copy selected messages to clipboard" entry from the submenu)
Was there any version of Lazarus where this actually worked?

Michl

2021-06-26 12:44

developer   ~0131501

> Was there any version of Lazarus where this actually worked?

Yes, it was working in Lazarus 1.2.0, before compiling with threads was implemented. In msgview.pp there was a simple TTreeView "MessageTreeView" where the messages were shown.

Juha Manninen

2021-06-26 15:36

developer   ~0131505

Heh, now it works again! :)
Please test with r65312.
Because this was a regression from 1.2.0 and because the popup menu kind of promises multi-line selection to a user, this is considered a bug fix instead of a new feature.
Will be merged to 2.2 after some testing.

Michl

2021-06-26 18:52

developer   ~0131509

Windows 7, Lazarus 2.3.0 r65312 FPC 3.2.2 i386-win32-win32/win64 is working fine!

Domingo Galmés

2021-06-26 19:03

reporter   ~0131510

Problem found selecting the first line.

Sample output from a project.
1 Compile Project, Target: lazspell.exe: Success, Hints: 13
2 hunspell.pas(104,27) Note: Call to subroutine "function GetDebugLogger:TLazLogger;" marked as inline is not inlined
3 hunspell.pas(133,31) Note: Call to subroutine "function GetDebugLogger:TLazLogger;" marked as inline is not inlined
4 hunspell.pas(135,35) Note: Call to subroutine "function GetDebugLogger:TLazLogger;" marked as inline is not inlined

If you try to select the first line (1) with left mouse click and then the third with shift+left click, only select line 3.
Also if you click on line 1 and go to the popup menu (right button click) there is no selection available.

Works well if you start with the second line.

Michl

2021-06-26 19:09

developer   ~0131511

Yes, same here. Selecting 2..4 is working fine. Selecting 1..4 only select 4.

Juha Manninen

2021-06-26 19:58

developer   ~0131512

Last edited: 2021-06-27 07:35

View 2 revisions

It is by design, the first line is the header. I admit it is illogical and should be changed. I will look at it.

[Edit] You cannot select from many groups at one time either as ASerge mentioned in the forum.
 https://forum.lazarus.freepascal.org/index.php?topic=55158
A group (class TMessagesCtrl) deals with one package or project. The package compilations can be threaded and advance in parallel.
Each group has a header, the message lines, and a progress line at the bottom while it compiles.
Selection between groups will be difficult to implement. The whole logic must be moved to another class. Threading adds to the challenge.
Including the first header line in a selection should be easier but somehow I did not get it working yet. The line number system must change and the code is rather complex.
I marked the current r65311 and r65312 to be merged for 2.2. I am quite confident the feature works now with its slightly illogical way. It is much better than a single line selection. The menu text "Copy Selected Messages to Clipboard" is not an empty promise any more.

Michl

2021-06-27 11:03

developer   ~0131522

But it is working, if you use "Copy All Shown Messages to ClipBoard". Maybe you find there a approach?!

Juha Manninen

2021-06-27 22:29

developer   ~0131529

In r65318 I fixed the header line selection. Please test.
Now -1 as a line index is allowed in the selection list. The index number system did not need to change.

I believe that selection between groups is possible but it requires more pondering and refactoring. I leave this issue open but I don't promise to implement it soon.

donovaly

2021-06-28 10:06

reporter   ~0131536

Many thanks! It works now as expected. I would say this bug can be closed when a new enhancement report is opened for the remaining selection between groups.

Juha Manninen

2021-06-28 22:43

developer   ~0131548

I resolve this as "suspended" because I don't plan to work on the issue soon.

Issue History

Date Modified Username Field Change
2019-05-04 16:55 donovaly New Issue
2020-04-13 16:27 Juha Manninen Relationship added related to 0036912
2021-05-10 20:53 donovaly Note Added: 0130814
2021-05-10 21:10 Bart Broersma Note Added: 0130815
2021-05-10 21:10 Bart Broersma Note Edited: 0130815 View Revisions
2021-06-13 11:09 Juha Manninen Note Added: 0131284
2021-06-26 07:57 Juha Manninen Assigned To => Juha Manninen
2021-06-26 07:57 Juha Manninen Status new => assigned
2021-06-26 12:01 Bart Broersma Note Added: 0131498
2021-06-26 12:44 Michl Note Added: 0131501
2021-06-26 15:36 Juha Manninen Note Added: 0131505
2021-06-26 15:37 Juha Manninen Fixed in Revision => r65311, r65312
2021-06-26 15:37 Juha Manninen LazTarget => -
2021-06-26 15:37 Juha Manninen Widgetset Win32/Win64 => Win32/Win64
2021-06-26 15:37 Juha Manninen Status assigned => feedback
2021-06-26 18:52 Michl Note Added: 0131509
2021-06-26 19:03 Domingo Galmés Note Added: 0131510
2021-06-26 19:09 Michl Note Added: 0131511
2021-06-26 19:58 Juha Manninen Note Added: 0131512
2021-06-27 07:35 Juha Manninen Note Edited: 0131512 View Revisions
2021-06-27 07:48 Juha Manninen Status feedback => assigned
2021-06-27 11:03 Michl Note Added: 0131522
2021-06-27 22:29 Juha Manninen Note Added: 0131529
2021-06-27 22:29 Juha Manninen Fixed in Revision r65311, r65312 => r65311, r65312, r65318
2021-06-27 22:29 Juha Manninen Widgetset Win32/Win64 => Win32/Win64
2021-06-28 10:06 donovaly Note Added: 0131536
2021-06-28 22:43 Juha Manninen Status assigned => resolved
2021-06-28 22:43 Juha Manninen Resolution open => suspended
2021-06-28 22:43 Juha Manninen Widgetset Win32/Win64 => Win32/Win64
2021-06-28 22:43 Juha Manninen Note Added: 0131548