{ /*************************************************************************** MsgViewEditor.pas ----------------- ***************************************************************************/ *************************************************************************** * * * This source is free software; you can redistribute it and/or modify * * it under the terms of the GNU General Public License as published by * * the Free Software Foundation; either version 2 of the License, or * * (at your option) any later version. * * * * This code is distributed in the hope that it will be useful, but * * WITHOUT ANY WARRANTY; without even the implied warranty of * * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * * General Public License for more details. * * * * A copy of the GNU General Public License is available on the World * * Wide Web at <http://www.gnu.org/copyleft/gpl.html>. You can also * * obtain it by writing to the Free Software Foundation, * * Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1335, USA. * * * *************************************************************************** } unit MsgViewEditor; {$mode objfpc}{$H+} interface uses Classes, SysUtils, Forms, Controls, Graphics, Dialogs, StdCtrls, Buttons, ComCtrls, IDEImagesIntf, LazarusIDEStrConsts; type { TMessageFilterRule } TMessageFilterAction = ( mfaHide ); TMessageFilterRule = class public property Expression: string; property SimpleSyntax: boolean; property Action: TMessageFilterAction; end; TMessageFilterRules = class(TList) private function GetItems(Index: integer): TMessageFilterRule; procedure SetItems(Index: integer; const AValue: TMessageFilterRule); public property Items[Index: integer]: TMessageFilterRule read GetItems write SetItems; default; end; { TMsgViewEditorDlg } TMsgViewEditorDlg = class(TForm) ActiveFilterSetGroupBox: TGroupBox; AddNewSetButton: TBitBtn; CancelButton: TBitBtn; DeleteSetButton: TBitBtn; OkButton: TBitBtn; RenameSetButton: TBitBtn; RulesListView: TListView; FilterSetGroupBox: TGroupBox; FilterSetsListBox: TListBox; procedure AddNewSetButtonClick(Sender: TObject); procedure DeleteSetButtonClick(Sender: TObject); procedure MsgViewEditorDlgCreate(Sender: TObject); procedure OkButtonClick(Sender: TObject); procedure RenameSetButtonClick(Sender: TObject); private public end; var MsgViewEditorDlg: TMsgViewEditorDlg; implementation {$R *.lfm} { TMsgViewEditorDlg } procedure TMsgViewEditorDlg.MsgViewEditorDlgCreate(Sender: TObject); begin Caption:= lisMessagesEditor; AddNewSetButton.Caption:=lisAddNewSet; ActiveFilterSetGroupBox.Caption:=lisActiveFilter; RenameSetButton.Caption:=lisRename; DeleteSetButton.Caption:=lisDelete; FilterSetGroupBox.Caption:=lisFilterSets; IDEImages.AssignImage(AddNewSetButton, 'laz_add'); IDEImages.AssignImage(DeleteSetButton, 'laz_delete'); IDEImages.AssignImage(RenameSetButton, 'laz_edit'); end; procedure TMsgViewEditorDlg.DeleteSetButtonClick(Sender: TObject); begin end; procedure TMsgViewEditorDlg.AddNewSetButtonClick(Sender: TObject); begin end; procedure TMsgViewEditorDlg.OkButtonClick(Sender: TObject); begin end; procedure TMsgViewEditorDlg.RenameSetButtonClick(Sender: TObject); begin end; { TMessageFilterRules } function TMessageFilterRules.GetItems(Index: integer): TMessageFilterRule; begin Result:=inherited Items[Index]; end; procedure TMessageFilterRules.SetItems(Index: integer; const AValue: TMessageFilterRule); begin inherited Items[Index]:=AValue; end; end.