IDE: fixed copying multiple selected lines from the messages view

git-svn-id: trunk@11194 -
This commit is contained in:
vincents 2007-05-25 08:57:17 +00:00
parent c8de8a54bc
commit 5cc700d456

View File

@ -129,6 +129,7 @@ type
function MsgCount: integer; function MsgCount: integer;
procedure FilterLines(Filter: TOnFilterLine); procedure FilterLines(Filter: TOnFilterLine);
function GetVisibleMessagesAsText: string; function GetVisibleMessagesAsText: string;
function GetSelectedMessagesAsText: string;
procedure SaveMessagesToFile(const Filename: string); procedure SaveMessagesToFile(const Filename: string);
procedure SrcEditLinesInsertedDeleted(const Filename: string; procedure SrcEditLinesInsertedDeleted(const Filename: string;
FirstLine, LineCount: Integer); FirstLine, LineCount: Integer);
@ -603,6 +604,22 @@ begin
sl.Free; sl.Free;
end; end;
function TMessagesView.GetSelectedMessagesAsText: string;
var
sl: TStringList;
node: TTreeNode;
begin
sl:=TStringList.Create;
node := MessageTreeView.GetFirstMultiSelected;
while assigned(node) do
begin
sl.Add(node.Text);
node := node.GetNextMultiSelected;
end;
Result:=sl.Text;
sl.Free;
end;
procedure TMessagesView.SaveMessagesToFile(const Filename: string); procedure TMessagesView.SaveMessagesToFile(const Filename: string);
// save visible messages to file // save visible messages to file
begin begin
@ -826,8 +843,8 @@ end;
procedure TMessagesView.CopyMenuItemClick(Sender: TObject); procedure TMessagesView.CopyMenuItemClick(Sender: TObject);
begin begin
if MessageTreeView.Selected=nil then exit; if MessageTreeView.GetFirstMultiSelected=nil then exit;
Clipboard.AsText := MessageTreeView.Selected.Text; Clipboard.AsText := GetSelectedMessagesAsText;
end; end;
procedure TMessagesView.FormDeactivate(Sender: TObject); procedure TMessagesView.FormDeactivate(Sender: TObject);