From 82598cc634a375a339ff3786ce1c862732e88e52 Mon Sep 17 00:00:00 2001 From: paul Date: Wed, 31 Dec 2008 02:48:48 +0000 Subject: [PATCH] ide: component list - fix events by Marius (bug #0012547) - fix anchoring git-svn-id: trunk@18001 - --- ide/componentlist.lfm | 427 ++++++------------------------------------ ide/componentlist.lrs | 213 ++++++--------------- ide/componentlist.pas | 48 ++++- ide/lazarus.lpi | 87 +++++---- 4 files changed, 206 insertions(+), 569 deletions(-) diff --git a/ide/componentlist.lfm b/ide/componentlist.lfm index a3dd903d43..14e7121eb7 100644 --- a/ide/componentlist.lfm +++ b/ide/componentlist.lfm @@ -1,436 +1,150 @@ object ComponentListForm: TComponentListForm - Left = 319 + Left = 542 Height = 556 - Top = 185 + Top = 269 Width = 224 - HelpContext = 0 ActiveControl = PatternEdit - Align = alNone - AllowDropFiles = False - AutoScroll = True - AutoSize = False - BorderIcons = [biSystemMenu, biMinimize, biMaximize] - BorderStyle = bsSizeable Caption = 'Components' - ChildSizing.LeftRightSpacing = 0 - ChildSizing.TopBottomSpacing = 0 - ChildSizing.HorizontalSpacing = 0 - ChildSizing.VerticalSpacing = 0 - ChildSizing.ControlsPerLine = 0 ClientHeight = 556 ClientWidth = 224 - DockSite = False - DragKind = dkDrag - DragMode = dmManual - Enabled = True - Font.Height = 0 - Font.Style = [] - FormStyle = fsNormal KeyPreview = True + OnKeyDown = FormKeyDown OnShow = FormShow - ParentBiDiMode = True - ParentFont = False Position = poScreenCenter - ShowInTaskBar = stDefault - UseDockManager = False LCLVersion = '0.9.27' - WindowState = wsNormal object PageControl: TPageControl - Left = 0 - Height = 467 - Top = 35 - Width = 224 - HelpContext = 0 - TabStop = True + AnchorSideLeft.Control = Owner + AnchorSideTop.Control = Panel3 + AnchorSideTop.Side = asrBottom + AnchorSideRight.Control = Owner + AnchorSideRight.Side = asrBottom + AnchorSideBottom.Control = ButtonPanel + Left = 6 + Height = 469 + Top = 41 + Width = 212 ActivePage = TabSheetListBox - Align = alClient - BorderSpacing.Left = 0 - BorderSpacing.Top = 0 - BorderSpacing.Right = 0 - BorderSpacing.Bottom = 6 - BorderSpacing.Around = 0 - BorderSpacing.CellAlignHorizontal = ccaFill - BorderSpacing.CellAlignVertical = ccaFill - DockSite = False - DragCursor = crDrag - DragKind = dkDrag - DragMode = dmManual - Enabled = True - ParentFont = True - ParentShowHint = True + Anchors = [akTop, akLeft, akRight, akBottom] + BorderSpacing.Around = 6 TabIndex = 0 TabOrder = 0 - TabPosition = tpTop - Visible = True object TabSheetListBox: TTabSheet - HelpContext = 0 Caption = 'List' - ChildSizing.LeftRightSpacing = 0 - ChildSizing.TopBottomSpacing = 0 - ChildSizing.HorizontalSpacing = 0 - ChildSizing.VerticalSpacing = 0 - ChildSizing.ControlsPerLine = 0 - ClientHeight = 436 - ClientWidth = 220 - Enabled = True - ParentFont = True - ParentShowHint = True + ClientHeight = 443 + ClientWidth = 204 object Panel7: TPanel Left = 0 - Height = 436 + Height = 443 Top = 0 - Width = 220 - HelpContext = 0 + Width = 204 Align = alClient - Alignment = taCenter - AutoSize = False - BorderSpacing.Left = 0 - BorderSpacing.Top = 0 - BorderSpacing.Right = 0 - BorderSpacing.Bottom = 0 - BorderSpacing.Around = 0 - BorderSpacing.CellAlignHorizontal = ccaFill - BorderSpacing.CellAlignVertical = ccaFill - BevelInner = bvNone BevelOuter = bvNone - BevelWidth = 1 BorderWidth = 5 - BorderStyle = bsNone - ChildSizing.LeftRightSpacing = 0 - ChildSizing.TopBottomSpacing = 0 - ChildSizing.HorizontalSpacing = 0 - ChildSizing.VerticalSpacing = 0 - ChildSizing.ControlsPerLine = 0 - ClientHeight = 436 - ClientWidth = 220 - DockSite = False - DragCursor = crDrag - DragKind = dkDrag - DragMode = dmManual - Enabled = True - FullRepaint = True - ParentColor = True - ParentFont = True - ParentShowHint = True + ClientHeight = 443 + ClientWidth = 204 TabOrder = 0 - TabStop = False - Visible = True object ListboxComponents: TListBox Left = 5 - Height = 426 + Height = 433 Top = 5 - Width = 210 - HelpContext = 0 + Width = 194 Align = alClient - BorderSpacing.Left = 0 - BorderSpacing.Top = 0 - BorderSpacing.Right = 0 - BorderSpacing.Bottom = 0 - BorderSpacing.Around = 0 - BorderSpacing.CellAlignHorizontal = ccaFill - BorderSpacing.CellAlignVertical = ccaFill - BorderStyle = bsSingle - ClickOnSelChange = True - Columns = 0 - DragCursor = crDrag - DragKind = dkDrag - DragMode = dmManual - ExtendedSelect = True - Enabled = True - IntegralHeight = False ItemHeight = 0 - MultiSelect = False - ParentBidiMode = True - ParentShowHint = True - ParentFont = True + OnDblClick = ListboxComponentsDblClick Sorted = True - Style = lbStandard TabOrder = 0 - TabStop = True - TopIndex = -1 - Visible = True + TopIndex = 0 end end end object TabSheetPaletteTree: TTabSheet - HelpContext = 0 Caption = 'Palette' - ChildSizing.LeftRightSpacing = 0 - ChildSizing.TopBottomSpacing = 0 - ChildSizing.HorizontalSpacing = 0 - ChildSizing.VerticalSpacing = 0 - ChildSizing.ControlsPerLine = 0 - ClientHeight = 436 - ClientWidth = 220 - Enabled = True - ParentFont = True - ParentShowHint = True + ClientHeight = 449 + ClientWidth = 216 object Panel5: TPanel Left = 0 - Height = 436 + Height = 449 Top = 0 - Width = 220 - HelpContext = 0 + Width = 216 Align = alClient - Alignment = taCenter - AutoSize = False - BorderSpacing.Left = 0 - BorderSpacing.Top = 0 - BorderSpacing.Right = 0 - BorderSpacing.Bottom = 0 - BorderSpacing.Around = 0 - BorderSpacing.CellAlignHorizontal = ccaFill - BorderSpacing.CellAlignVertical = ccaFill - BevelInner = bvNone BevelOuter = bvNone - BevelWidth = 1 BorderWidth = 5 - BorderStyle = bsNone - ChildSizing.LeftRightSpacing = 0 - ChildSizing.TopBottomSpacing = 0 - ChildSizing.HorizontalSpacing = 0 - ChildSizing.VerticalSpacing = 0 - ChildSizing.ControlsPerLine = 0 - ClientHeight = 436 - ClientWidth = 220 - DockSite = False - DragCursor = crDrag - DragKind = dkDrag - DragMode = dmManual - Enabled = True - FullRepaint = True - ParentColor = True - ParentFont = True - ParentShowHint = True + ClientHeight = 449 + ClientWidth = 216 TabOrder = 0 - TabStop = False - Visible = True object TreePallette: TTreeView - Tag = 0 Left = 5 - Height = 426 + Height = 439 Top = 5 - Width = 210 - HelpContext = 0 + Width = 206 Align = alClient - AutoExpand = False - BorderSpacing.Left = 0 - BorderSpacing.Top = 0 - BorderSpacing.Right = 0 - BorderSpacing.Bottom = 0 - BorderSpacing.Around = 0 - BorderSpacing.CellAlignHorizontal = ccaFill - BorderSpacing.CellAlignVertical = ccaFill - BackgroundColor = clWindow - BorderStyle = bsSingle - BorderWidth = 0 Ctl3D = False - DefaultItemHeight = 19 - DragKind = dkDrag - DragCursor = crDrag - DragMode = dmManual - Enabled = True - ExpandSignType = tvestPlusMinus - HideSelection = True - HotTrack = False - Indent = 15 - ParentCtl3D = True - ParentFont = True - ParentShowHint = True + DefaultItemHeight = 15 ReadOnly = True - RightClickSelect = False - RowSelect = False - ScrollBars = ssBoth - SelectionColor = clHighlight - ShowButtons = True ShowLines = False - ShowRoot = True - SortType = stNone TabOrder = 0 - ToolTips = True - Visible = True + OnDblClick = TreePalletteDblClick Options = [tvoAutoItemHeight, tvoHideSelection, tvoKeepCollapsedNodes, tvoReadOnly, tvoShowButtons, tvoShowRoot, tvoToolTips, tvoNoDoubleClickExpand] - TreeLineColor = clWindowFrame - ExpandSignColor = clWindowFrame end end end object TabSheetInheritance: TTabSheet - HelpContext = 0 Caption = 'Inheritance' - ChildSizing.LeftRightSpacing = 0 - ChildSizing.TopBottomSpacing = 0 - ChildSizing.HorizontalSpacing = 0 - ChildSizing.VerticalSpacing = 0 - ChildSizing.ControlsPerLine = 0 - ClientHeight = 436 - ClientWidth = 220 - Enabled = True - ParentFont = True - ParentShowHint = True + ClientHeight = 449 + ClientWidth = 216 object Panel6: TPanel Left = 0 - Height = 436 + Height = 449 Top = 0 - Width = 220 - HelpContext = 0 + Width = 216 Align = alClient - Alignment = taCenter - AutoSize = False - BorderSpacing.Left = 0 - BorderSpacing.Top = 0 - BorderSpacing.Right = 0 - BorderSpacing.Bottom = 0 - BorderSpacing.Around = 0 - BorderSpacing.CellAlignHorizontal = ccaFill - BorderSpacing.CellAlignVertical = ccaFill - BevelInner = bvNone BevelOuter = bvNone - BevelWidth = 1 BorderWidth = 5 - BorderStyle = bsNone - ChildSizing.LeftRightSpacing = 0 - ChildSizing.TopBottomSpacing = 0 - ChildSizing.HorizontalSpacing = 0 - ChildSizing.VerticalSpacing = 0 - ChildSizing.ControlsPerLine = 0 - ClientHeight = 436 - ClientWidth = 220 - DockSite = False - DragCursor = crDrag - DragKind = dkDrag - DragMode = dmManual - Enabled = True - FullRepaint = True - ParentColor = True - ParentFont = True - ParentShowHint = True + ClientHeight = 449 + ClientWidth = 216 TabOrder = 0 - TabStop = False - Visible = True object TreeInheritance: TTreeView - Tag = 0 Left = 5 - Height = 426 + Height = 439 Top = 5 - Width = 210 - HelpContext = 0 + Width = 206 Align = alClient - AutoExpand = False - BorderSpacing.Left = 0 - BorderSpacing.Top = 0 - BorderSpacing.Right = 0 - BorderSpacing.Bottom = 0 - BorderSpacing.Around = 0 - BorderSpacing.CellAlignHorizontal = ccaFill - BorderSpacing.CellAlignVertical = ccaFill - BackgroundColor = clWindow - BorderStyle = bsSingle - BorderWidth = 0 Ctl3D = False - DefaultItemHeight = 19 - DragKind = dkDrag - DragCursor = crDrag - DragMode = dmManual - Enabled = True - ExpandSignType = tvestPlusMinus - HideSelection = True - HotTrack = False - Indent = 15 - ParentCtl3D = True - ParentFont = True - ParentShowHint = True + DefaultItemHeight = 15 ReadOnly = True - RightClickSelect = False - RowSelect = False - ScrollBars = ssBoth - SelectionColor = clHighlight - ShowButtons = True - ShowLines = True - ShowRoot = True - SortType = stNone TabOrder = 0 - ToolTips = True - Visible = True + OnDblClick = TreeInheritanceDblClick Options = [tvoAutoItemHeight, tvoHideSelection, tvoKeepCollapsedNodes, tvoReadOnly, tvoShowButtons, tvoShowLines, tvoShowRoot, tvoToolTips, tvoNoDoubleClickExpand] - TreeLineColor = clWindowFrame - ExpandSignColor = clWindowFrame end end end end object Panel3: TPanel + AnchorSideLeft.Control = Owner + AnchorSideTop.Control = Owner + AnchorSideRight.Control = Owner + AnchorSideRight.Side = asrBottom Left = 0 Height = 35 Top = 0 Width = 224 - HelpContext = 0 - Align = alTop - Alignment = taCenter + Anchors = [akTop, akLeft, akRight] AutoSize = True - BorderSpacing.Left = 0 - BorderSpacing.Top = 0 - BorderSpacing.Right = 0 - BorderSpacing.Bottom = 0 - BorderSpacing.Around = 0 - BorderSpacing.CellAlignHorizontal = ccaFill - BorderSpacing.CellAlignVertical = ccaFill - BevelInner = bvNone BevelOuter = bvNone - BevelWidth = 1 BorderWidth = 8 - BorderStyle = bsNone - ChildSizing.LeftRightSpacing = 0 - ChildSizing.TopBottomSpacing = 0 - ChildSizing.HorizontalSpacing = 0 - ChildSizing.VerticalSpacing = 0 - ChildSizing.ControlsPerLine = 0 ClientHeight = 35 ClientWidth = 224 - DockSite = False - DragCursor = crDrag - DragKind = dkDrag - DragMode = dmManual - Enabled = True - FullRepaint = True - ParentColor = True - ParentFont = True - ParentShowHint = True TabOrder = 1 - TabStop = False - Visible = True object LabelSearch: TLabel AnchorSideLeft.Control = Panel3 AnchorSideTop.Control = Panel3 Left = 6 - Height = 18 + Height = 14 Top = 6 - Width = 80 - HelpContext = 0 - Align = alNone - Alignment = taLeftJustify - AutoSize = True - BorderSpacing.Left = 0 - BorderSpacing.Top = 0 - BorderSpacing.Right = 0 - BorderSpacing.Bottom = 0 + Width = 59 BorderSpacing.Around = 6 - BorderSpacing.CellAlignHorizontal = ccaFill - BorderSpacing.CellAlignVertical = ccaFill Caption = 'LabelSearch' - DragCursor = crDrag - DragMode = dmManual - Enabled = True - Layout = tlTop - ParentBidiMode = True ParentColor = False - ParentFont = True - ParentShowHint = True - ShowAccelChar = True - Transparent = True - Visible = True - WordWrap = False - OptimalFill = False end object PatternEdit: TEdit AnchorSideLeft.Control = LabelSearch @@ -438,51 +152,24 @@ object ComponentListForm: TComponentListForm AnchorSideTop.Control = Panel3 AnchorSideRight.Control = Panel3 AnchorSideRight.Side = asrBottom - Left = 92 + Left = 71 Height = 23 Top = 6 - Width = 126 - HelpContext = 0 - Align = alNone + Width = 147 Anchors = [akTop, akLeft, akRight] - AutoSize = False - AutoSelect = False - BorderSpacing.Left = 0 - BorderSpacing.Top = 0 - BorderSpacing.Right = 0 - BorderSpacing.Bottom = 0 BorderSpacing.Around = 6 - BorderSpacing.CellAlignHorizontal = ccaFill - BorderSpacing.CellAlignVertical = ccaFill - CharCase = ecNormal - DragCursor = crDrag - DragMode = dmManual - EchoMode = emNormal - Enabled = True - MaxLength = -1 - ParentBidiMode = True - ParentFont = True - ParentShowHint = True - PasswordChar = #0 - ReadOnly = False - TabStop = True + OnChange = PatternEditChange TabOrder = 0 - Visible = True end end object ButtonPanel: TButtonPanel Left = 6 - Height = 48 - Top = 508 + Height = 40 + Top = 516 Width = 212 - HelpContext = 0 Align = alBottom AutoSize = True - ButtonOrder = boDefault TabOrder = 2 - DefaultButton = pbOK ShowButtons = [pbClose] - ShowGlyphs = [pbOK, pbCancel, pbClose, pbHelp] - Visible = True end end diff --git a/ide/componentlist.lrs b/ide/componentlist.lrs index 9910845046..57ba00ea4d 100644 --- a/ide/componentlist.lrs +++ b/ide/componentlist.lrs @@ -1,162 +1,59 @@ { This is an automatically generated lazarus resource file } LazarusResources.Add('TComponentListForm','FORMDATA',[ - 'TPF0'#18'TComponentListForm'#17'ComponentListForm'#4'Left'#3'?'#1#6'Height'#3 - +','#2#3'Top'#3#185#0#5'Width'#3#224#0#11'HelpContext'#2#0#13'ActiveControl'#7 - +#11'PatternEdit'#5'Align'#7#6'alNone'#14'AllowDropFiles'#8#10'AutoScroll'#9#8 - +'AutoSize'#8#11'BorderIcons'#11#12'biSystemMenu'#10'biMinimize'#10'biMaximiz' - +'e'#0#11'BorderStyle'#7#10'bsSizeable'#7'Caption'#6#10'Components'#28'ChildS' - +'izing.LeftRightSpacing'#2#0#28'ChildSizing.TopBottomSpacing'#2#0#29'ChildSi' - +'zing.HorizontalSpacing'#2#0#27'ChildSizing.VerticalSpacing'#2#0#27'ChildSiz' - +'ing.ControlsPerLine'#2#0#12'ClientHeight'#3','#2#11'ClientWidth'#3#224#0#8 - +'DockSite'#8#8'DragKind'#7#6'dkDrag'#8'DragMode'#7#8'dmManual'#7'Enabled'#9 - +#11'Font.Height'#2#0#10'Font.Style'#11#0#9'FormStyle'#7#8'fsNormal'#10'KeyPr' - +'eview'#9#6'OnShow'#7#8'FormShow'#14'ParentBiDiMode'#9#10'ParentFont'#8#8'Po' - +'sition'#7#14'poScreenCenter'#13'ShowInTaskBar'#7#9'stDefault'#14'UseDockMan' - +'ager'#8#10'LCLVersion'#6#6'0.9.27'#11'WindowState'#7#8'wsNormal'#0#12'TPage' - +'Control'#11'PageControl'#4'Left'#2#0#6'Height'#3#211#1#3'Top'#2'#'#5'Width' - +#3#224#0#11'HelpContext'#2#0#7'TabStop'#9#10'ActivePage'#7#15'TabSheetListBo' - +'x'#5'Align'#7#8'alClient'#18'BorderSpacing.Left'#2#0#17'BorderSpacing.Top'#2 - +#0#19'BorderSpacing.Right'#2#0#20'BorderSpacing.Bottom'#2#6#20'BorderSpacing' - +'.Around'#2#0'!BorderSpacing.CellAlignHorizontal'#7#7'ccaFill'#31'BorderSpac' - +'ing.CellAlignVertical'#7#7'ccaFill'#8'DockSite'#8#10'DragCursor'#7#6'crDrag' - +#8'DragKind'#7#6'dkDrag'#8'DragMode'#7#8'dmManual'#7'Enabled'#9#10'ParentFon' - +'t'#9#14'ParentShowHint'#9#8'TabIndex'#2#0#8'TabOrder'#2#0#11'TabPosition'#7 - +#5'tpTop'#7'Visible'#9#0#9'TTabSheet'#15'TabSheetListBox'#11'HelpContext'#2#0 - +#7'Caption'#6#4'List'#28'ChildSizing.LeftRightSpacing'#2#0#28'ChildSizing.To' - +'pBottomSpacing'#2#0#29'ChildSizing.HorizontalSpacing'#2#0#27'ChildSizing.Ve' - +'rticalSpacing'#2#0#27'ChildSizing.ControlsPerLine'#2#0#12'ClientHeight'#3 - +#180#1#11'ClientWidth'#3#220#0#7'Enabled'#9#10'ParentFont'#9#14'ParentShowHi' - +'nt'#9#0#6'TPanel'#6'Panel7'#4'Left'#2#0#6'Height'#3#180#1#3'Top'#2#0#5'Widt' - +'h'#3#220#0#11'HelpContext'#2#0#5'Align'#7#8'alClient'#9'Alignment'#7#8'taCe' - +'nter'#8'AutoSize'#8#18'BorderSpacing.Left'#2#0#17'BorderSpacing.Top'#2#0#19 - +'BorderSpacing.Right'#2#0#20'BorderSpacing.Bottom'#2#0#20'BorderSpacing.Arou' - +'nd'#2#0'!BorderSpacing.CellAlignHorizontal'#7#7'ccaFill'#31'BorderSpacing.C' - +'ellAlignVertical'#7#7'ccaFill'#10'BevelInner'#7#6'bvNone'#10'BevelOuter'#7#6 - +'bvNone'#10'BevelWidth'#2#1#11'BorderWidth'#2#5#11'BorderStyle'#7#6'bsNone' - +#28'ChildSizing.LeftRightSpacing'#2#0#28'ChildSizing.TopBottomSpacing'#2#0#29 - +'ChildSizing.HorizontalSpacing'#2#0#27'ChildSizing.VerticalSpacing'#2#0#27'C' - +'hildSizing.ControlsPerLine'#2#0#12'ClientHeight'#3#180#1#11'ClientWidth'#3 - +#220#0#8'DockSite'#8#10'DragCursor'#7#6'crDrag'#8'DragKind'#7#6'dkDrag'#8'Dr' - +'agMode'#7#8'dmManual'#7'Enabled'#9#11'FullRepaint'#9#11'ParentColor'#9#10'P' - +'arentFont'#9#14'ParentShowHint'#9#8'TabOrder'#2#0#7'TabStop'#8#7'Visible'#9 - +#0#8'TListBox'#17'ListboxComponents'#4'Left'#2#5#6'Height'#3#170#1#3'Top'#2#5 - +#5'Width'#3#210#0#11'HelpContext'#2#0#5'Align'#7#8'alClient'#18'BorderSpacin' - +'g.Left'#2#0#17'BorderSpacing.Top'#2#0#19'BorderSpacing.Right'#2#0#20'Border' - +'Spacing.Bottom'#2#0#20'BorderSpacing.Around'#2#0'!BorderSpacing.CellAlignHo' - +'rizontal'#7#7'ccaFill'#31'BorderSpacing.CellAlignVertical'#7#7'ccaFill'#11 - +'BorderStyle'#7#8'bsSingle'#16'ClickOnSelChange'#9#7'Columns'#2#0#10'DragCur' - +'sor'#7#6'crDrag'#8'DragKind'#7#6'dkDrag'#8'DragMode'#7#8'dmManual'#14'Exten' - +'dedSelect'#9#7'Enabled'#9#14'IntegralHeight'#8#10'ItemHeight'#2#0#11'MultiS' - +'elect'#8#14'ParentBidiMode'#9#14'ParentShowHint'#9#10'ParentFont'#9#6'Sorte' - +'d'#9#5'Style'#7#10'lbStandard'#8'TabOrder'#2#0#7'TabStop'#9#8'TopIndex'#2 - +#255#7'Visible'#9#0#0#0#0#9'TTabSheet'#19'TabSheetPaletteTree'#11'HelpContex' - +'t'#2#0#7'Caption'#6#7'Palette'#28'ChildSizing.LeftRightSpacing'#2#0#28'Chil' - +'dSizing.TopBottomSpacing'#2#0#29'ChildSizing.HorizontalSpacing'#2#0#27'Chil' - +'dSizing.VerticalSpacing'#2#0#27'ChildSizing.ControlsPerLine'#2#0#12'ClientH' - +'eight'#3#180#1#11'ClientWidth'#3#220#0#7'Enabled'#9#10'ParentFont'#9#14'Par' - +'entShowHint'#9#0#6'TPanel'#6'Panel5'#4'Left'#2#0#6'Height'#3#180#1#3'Top'#2 - +#0#5'Width'#3#220#0#11'HelpContext'#2#0#5'Align'#7#8'alClient'#9'Alignment'#7 - +#8'taCenter'#8'AutoSize'#8#18'BorderSpacing.Left'#2#0#17'BorderSpacing.Top'#2 - +#0#19'BorderSpacing.Right'#2#0#20'BorderSpacing.Bottom'#2#0#20'BorderSpacing' - +'.Around'#2#0'!BorderSpacing.CellAlignHorizontal'#7#7'ccaFill'#31'BorderSpac' - +'ing.CellAlignVertical'#7#7'ccaFill'#10'BevelInner'#7#6'bvNone'#10'BevelOute' - +'r'#7#6'bvNone'#10'BevelWidth'#2#1#11'BorderWidth'#2#5#11'BorderStyle'#7#6'b' - +'sNone'#28'ChildSizing.LeftRightSpacing'#2#0#28'ChildSizing.TopBottomSpacing' - +#2#0#29'ChildSizing.HorizontalSpacing'#2#0#27'ChildSizing.VerticalSpacing'#2 - +#0#27'ChildSizing.ControlsPerLine'#2#0#12'ClientHeight'#3#180#1#11'ClientWid' - ,'th'#3#220#0#8'DockSite'#8#10'DragCursor'#7#6'crDrag'#8'DragKind'#7#6'dkDrag' - +#8'DragMode'#7#8'dmManual'#7'Enabled'#9#11'FullRepaint'#9#11'ParentColor'#9 - +#10'ParentFont'#9#14'ParentShowHint'#9#8'TabOrder'#2#0#7'TabStop'#8#7'Visibl' - +'e'#9#0#9'TTreeView'#12'TreePallette'#3'Tag'#2#0#4'Left'#2#5#6'Height'#3#170 - +#1#3'Top'#2#5#5'Width'#3#210#0#11'HelpContext'#2#0#5'Align'#7#8'alClient'#10 - +'AutoExpand'#8#18'BorderSpacing.Left'#2#0#17'BorderSpacing.Top'#2#0#19'Borde' - +'rSpacing.Right'#2#0#20'BorderSpacing.Bottom'#2#0#20'BorderSpacing.Around'#2 - +#0'!BorderSpacing.CellAlignHorizontal'#7#7'ccaFill'#31'BorderSpacing.CellAli' - +'gnVertical'#7#7'ccaFill'#15'BackgroundColor'#7#8'clWindow'#11'BorderStyle'#7 - +#8'bsSingle'#11'BorderWidth'#2#0#5'Ctl3D'#8#17'DefaultItemHeight'#2#19#8'Dra' - +'gKind'#7#6'dkDrag'#10'DragCursor'#7#6'crDrag'#8'DragMode'#7#8'dmManual'#7'E' - +'nabled'#9#14'ExpandSignType'#7#14'tvestPlusMinus'#13'HideSelection'#9#8'Hot' - +'Track'#8#6'Indent'#2#15#11'ParentCtl3D'#9#10'ParentFont'#9#14'ParentShowHin' - +'t'#9#8'ReadOnly'#9#16'RightClickSelect'#8#9'RowSelect'#8#10'ScrollBars'#7#6 - +'ssBoth'#14'SelectionColor'#7#11'clHighlight'#11'ShowButtons'#9#9'ShowLines' - +#8#8'ShowRoot'#9#8'SortType'#7#6'stNone'#8'TabOrder'#2#0#8'ToolTips'#9#7'Vis' - +'ible'#9#7'Options'#11#17'tvoAutoItemHeight'#16'tvoHideSelection'#21'tvoKeep' - +'CollapsedNodes'#11'tvoReadOnly'#14'tvoShowButtons'#11'tvoShowRoot'#11'tvoTo' - +'olTips'#22'tvoNoDoubleClickExpand'#0#13'TreeLineColor'#7#13'clWindowFrame' - +#15'ExpandSignColor'#7#13'clWindowFrame'#0#0#0#0#9'TTabSheet'#19'TabSheetInh' - +'eritance'#11'HelpContext'#2#0#7'Caption'#6#11'Inheritance'#28'ChildSizing.L' - +'eftRightSpacing'#2#0#28'ChildSizing.TopBottomSpacing'#2#0#29'ChildSizing.Ho' - +'rizontalSpacing'#2#0#27'ChildSizing.VerticalSpacing'#2#0#27'ChildSizing.Con' - +'trolsPerLine'#2#0#12'ClientHeight'#3#180#1#11'ClientWidth'#3#220#0#7'Enable' - +'d'#9#10'ParentFont'#9#14'ParentShowHint'#9#0#6'TPanel'#6'Panel6'#4'Left'#2#0 - +#6'Height'#3#180#1#3'Top'#2#0#5'Width'#3#220#0#11'HelpContext'#2#0#5'Align'#7 - +#8'alClient'#9'Alignment'#7#8'taCenter'#8'AutoSize'#8#18'BorderSpacing.Left' - +#2#0#17'BorderSpacing.Top'#2#0#19'BorderSpacing.Right'#2#0#20'BorderSpacing.' - +'Bottom'#2#0#20'BorderSpacing.Around'#2#0'!BorderSpacing.CellAlignHorizontal' - +#7#7'ccaFill'#31'BorderSpacing.CellAlignVertical'#7#7'ccaFill'#10'BevelInner' - +#7#6'bvNone'#10'BevelOuter'#7#6'bvNone'#10'BevelWidth'#2#1#11'BorderWidth'#2 - +#5#11'BorderStyle'#7#6'bsNone'#28'ChildSizing.LeftRightSpacing'#2#0#28'Child' - +'Sizing.TopBottomSpacing'#2#0#29'ChildSizing.HorizontalSpacing'#2#0#27'Child' - +'Sizing.VerticalSpacing'#2#0#27'ChildSizing.ControlsPerLine'#2#0#12'ClientHe' - +'ight'#3#180#1#11'ClientWidth'#3#220#0#8'DockSite'#8#10'DragCursor'#7#6'crDr' - +'ag'#8'DragKind'#7#6'dkDrag'#8'DragMode'#7#8'dmManual'#7'Enabled'#9#11'FullR' - +'epaint'#9#11'ParentColor'#9#10'ParentFont'#9#14'ParentShowHint'#9#8'TabOrde' - +'r'#2#0#7'TabStop'#8#7'Visible'#9#0#9'TTreeView'#15'TreeInheritance'#3'Tag'#2 - +#0#4'Left'#2#5#6'Height'#3#170#1#3'Top'#2#5#5'Width'#3#210#0#11'HelpContext' - +#2#0#5'Align'#7#8'alClient'#10'AutoExpand'#8#18'BorderSpacing.Left'#2#0#17'B' - +'orderSpacing.Top'#2#0#19'BorderSpacing.Right'#2#0#20'BorderSpacing.Bottom'#2 - +#0#20'BorderSpacing.Around'#2#0'!BorderSpacing.CellAlignHorizontal'#7#7'ccaF' - +'ill'#31'BorderSpacing.CellAlignVertical'#7#7'ccaFill'#15'BackgroundColor'#7 - +#8'clWindow'#11'BorderStyle'#7#8'bsSingle'#11'BorderWidth'#2#0#5'Ctl3D'#8#17 - +'DefaultItemHeight'#2#19#8'DragKind'#7#6'dkDrag'#10'DragCursor'#7#6'crDrag'#8 - +'DragMode'#7#8'dmManual'#7'Enabled'#9#14'ExpandSignType'#7#14'tvestPlusMinus' - +#13'HideSelection'#9#8'HotTrack'#8#6'Indent'#2#15#11'ParentCtl3D'#9#10'Paren' - +'tFont'#9#14'ParentShowHint'#9#8'ReadOnly'#9#16'RightClickSelect'#8#9'RowSel' - +'ect'#8#10'ScrollBars'#7#6'ssBoth'#14'SelectionColor'#7#11'clHighlight'#11'S' - +'howButtons'#9#9'ShowLines'#9#8'ShowRoot'#9#8'SortType'#7#6'stNone'#8'TabOrd' - +'er'#2#0#8'ToolTips'#9#7'Visible'#9#7'Options'#11#17'tvoAutoItemHeight'#16't' - +'voHideSelection'#21'tvoKeepCollapsedNodes'#11'tvoReadOnly'#14'tvoShowButton' - +'s'#12'tvoShowLines'#11'tvoShowRoot'#11'tvoToolTips'#22'tvoNoDoubleClickExpa' - +'nd'#0#13'TreeLineColor'#7#13'clWindowFrame'#15'ExpandSignColor'#7#13'clWind' - +'owFrame'#0#0#0#0#0#6'TPanel'#6'Panel3'#4'Left'#2#0#6'Height'#2'#'#3'Top'#2#0 - +#5'Width'#3#224#0#11'HelpContext'#2#0#5'Align'#7#5'alTop'#9'Alignment'#7#8't' - +'aCenter'#8'AutoSize'#9#18'BorderSpacing.Left'#2#0#17'BorderSpacing.Top'#2#0 - +#19'BorderSpacing.Right'#2#0#20'BorderSpacing.Bottom'#2#0#20'BorderSpacing.A' - +'round'#2#0'!BorderSpacing.CellAlignHorizontal'#7#7'ccaFill'#31'BorderSpacin' - +'g.CellAlignVertical'#7#7'ccaFill'#10'BevelInner'#7#6'bvNone'#10'BevelOuter' - +#7#6'bvNone'#10'BevelWidth'#2#1#11'BorderWidth'#2#8#11'BorderStyle'#7#6'bsNo' - +'ne'#28'ChildSizing.LeftRightSpacing'#2#0#28'ChildSizing.TopBottomSpacing'#2 - +#0#29'ChildSizing.HorizontalSpacing'#2#0#27'ChildSizing.VerticalSpacing'#2#0 - +#27'ChildSizing.ControlsPerLine'#2#0#12'ClientHeight'#2'#'#11'ClientWidth'#3 - ,#224#0#8'DockSite'#8#10'DragCursor'#7#6'crDrag'#8'DragKind'#7#6'dkDrag'#8'Dr' - +'agMode'#7#8'dmManual'#7'Enabled'#9#11'FullRepaint'#9#11'ParentColor'#9#10'P' - +'arentFont'#9#14'ParentShowHint'#9#8'TabOrder'#2#1#7'TabStop'#8#7'Visible'#9 - +#0#6'TLabel'#11'LabelSearch'#22'AnchorSideLeft.Control'#7#6'Panel3'#21'Ancho' - +'rSideTop.Control'#7#6'Panel3'#4'Left'#2#6#6'Height'#2#18#3'Top'#2#6#5'Width' - +#2'P'#11'HelpContext'#2#0#5'Align'#7#6'alNone'#9'Alignment'#7#13'taLeftJusti' - +'fy'#8'AutoSize'#9#18'BorderSpacing.Left'#2#0#17'BorderSpacing.Top'#2#0#19'B' - +'orderSpacing.Right'#2#0#20'BorderSpacing.Bottom'#2#0#20'BorderSpacing.Aroun' - +'d'#2#6'!BorderSpacing.CellAlignHorizontal'#7#7'ccaFill'#31'BorderSpacing.Ce' - +'llAlignVertical'#7#7'ccaFill'#7'Caption'#6#11'LabelSearch'#10'DragCursor'#7 - +#6'crDrag'#8'DragMode'#7#8'dmManual'#7'Enabled'#9#6'Layout'#7#5'tlTop'#14'Pa' - +'rentBidiMode'#9#11'ParentColor'#8#10'ParentFont'#9#14'ParentShowHint'#9#13 - +'ShowAccelChar'#9#11'Transparent'#9#7'Visible'#9#8'WordWrap'#8#11'OptimalFil' - +'l'#8#0#0#5'TEdit'#11'PatternEdit'#22'AnchorSideLeft.Control'#7#11'LabelSear' - +'ch'#19'AnchorSideLeft.Side'#7#9'asrBottom'#21'AnchorSideTop.Control'#7#6'Pa' - +'nel3'#23'AnchorSideRight.Control'#7#6'Panel3'#20'AnchorSideRight.Side'#7#9 - +'asrBottom'#4'Left'#2'\'#6'Height'#2#23#3'Top'#2#6#5'Width'#2'~'#11'HelpCont' - +'ext'#2#0#5'Align'#7#6'alNone'#7'Anchors'#11#5'akTop'#6'akLeft'#7'akRight'#0 - +#8'AutoSize'#8#10'AutoSelect'#8#18'BorderSpacing.Left'#2#0#17'BorderSpacing.' - +'Top'#2#0#19'BorderSpacing.Right'#2#0#20'BorderSpacing.Bottom'#2#0#20'Border' - +'Spacing.Around'#2#6'!BorderSpacing.CellAlignHorizontal'#7#7'ccaFill'#31'Bor' - +'derSpacing.CellAlignVertical'#7#7'ccaFill'#8'CharCase'#7#8'ecNormal'#10'Dra' - +'gCursor'#7#6'crDrag'#8'DragMode'#7#8'dmManual'#8'EchoMode'#7#8'emNormal'#7 - +'Enabled'#9#9'MaxLength'#2#255#14'ParentBidiMode'#9#10'ParentFont'#9#14'Pare' - +'ntShowHint'#9#12'PasswordChar'#6#1#0#8'ReadOnly'#8#7'TabStop'#9#8'TabOrder' - +#2#0#7'Visible'#9#0#0#0#12'TButtonPanel'#11'ButtonPanel'#4'Left'#2#6#6'Heigh' - +'t'#2'0'#3'Top'#3#252#1#5'Width'#3#212#0#11'HelpContext'#2#0#5'Align'#7#8'al' - +'Bottom'#8'AutoSize'#9#11'ButtonOrder'#7#9'boDefault'#8'TabOrder'#2#2#13'Def' - +'aultButton'#7#4'pbOK'#11'ShowButtons'#11#7'pbClose'#0#10'ShowGlyphs'#11#4'p' - +'bOK'#8'pbCancel'#7'pbClose'#6'pbHelp'#0#7'Visible'#9#0#0#0 + 'TPF0'#18'TComponentListForm'#17'ComponentListForm'#4'Left'#3#30#2#6'Height'#3 + +','#2#3'Top'#3#13#1#5'Width'#3#224#0#13'ActiveControl'#7#11'PatternEdit'#7'C' + +'aption'#6#10'Components'#12'ClientHeight'#3','#2#11'ClientWidth'#3#224#0#10 + +'KeyPreview'#9#9'OnKeyDown'#7#11'FormKeyDown'#6'OnShow'#7#8'FormShow'#8'Posi' + +'tion'#7#14'poScreenCenter'#10'LCLVersion'#6#6'0.9.27'#0#12'TPageControl'#11 + +'PageControl'#22'AnchorSideLeft.Control'#7#5'Owner'#21'AnchorSideTop.Control' + +#7#6'Panel3'#18'AnchorSideTop.Side'#7#9'asrBottom'#23'AnchorSideRight.Contro' + +'l'#7#5'Owner'#20'AnchorSideRight.Side'#7#9'asrBottom'#24'AnchorSideBottom.C' + +'ontrol'#7#11'ButtonPanel'#4'Left'#2#6#6'Height'#3#213#1#3'Top'#2')'#5'Width' + +#3#212#0#10'ActivePage'#7#15'TabSheetListBox'#7'Anchors'#11#5'akTop'#6'akLef' + +'t'#7'akRight'#8'akBottom'#0#20'BorderSpacing.Around'#2#6#8'TabIndex'#2#0#8 + +'TabOrder'#2#0#0#9'TTabSheet'#15'TabSheetListBox'#7'Caption'#6#4'List'#12'Cl' + +'ientHeight'#3#187#1#11'ClientWidth'#3#204#0#0#6'TPanel'#6'Panel7'#4'Left'#2 + +#0#6'Height'#3#187#1#3'Top'#2#0#5'Width'#3#204#0#5'Align'#7#8'alClient'#10'B' + +'evelOuter'#7#6'bvNone'#11'BorderWidth'#2#5#12'ClientHeight'#3#187#1#11'Clie' + +'ntWidth'#3#204#0#8'TabOrder'#2#0#0#8'TListBox'#17'ListboxComponents'#4'Left' + +#2#5#6'Height'#3#177#1#3'Top'#2#5#5'Width'#3#194#0#5'Align'#7#8'alClient'#10 + +'ItemHeight'#2#0#10'OnDblClick'#7#25'ListboxComponentsDblClick'#6'Sorted'#9#8 + +'TabOrder'#2#0#8'TopIndex'#2#0#0#0#0#0#9'TTabSheet'#19'TabSheetPaletteTree'#7 + +'Caption'#6#7'Palette'#12'ClientHeight'#3#193#1#11'ClientWidth'#3#216#0#0#6 + +'TPanel'#6'Panel5'#4'Left'#2#0#6'Height'#3#193#1#3'Top'#2#0#5'Width'#3#216#0 + +#5'Align'#7#8'alClient'#10'BevelOuter'#7#6'bvNone'#11'BorderWidth'#2#5#12'Cl' + +'ientHeight'#3#193#1#11'ClientWidth'#3#216#0#8'TabOrder'#2#0#0#9'TTreeView' + +#12'TreePallette'#4'Left'#2#5#6'Height'#3#183#1#3'Top'#2#5#5'Width'#3#206#0#5 + +'Align'#7#8'alClient'#5'Ctl3D'#8#17'DefaultItemHeight'#2#15#8'ReadOnly'#9#9 + +'ShowLines'#8#8'TabOrder'#2#0#10'OnDblClick'#7#20'TreePalletteDblClick'#7'Op' + +'tions'#11#17'tvoAutoItemHeight'#16'tvoHideSelection'#21'tvoKeepCollapsedNod' + +'es'#11'tvoReadOnly'#14'tvoShowButtons'#11'tvoShowRoot'#11'tvoToolTips'#22't' + +'voNoDoubleClickExpand'#0#0#0#0#0#9'TTabSheet'#19'TabSheetInheritance'#7'Cap' + +'tion'#6#11'Inheritance'#12'ClientHeight'#3#193#1#11'ClientWidth'#3#216#0#0#6 + +'TPanel'#6'Panel6'#4'Left'#2#0#6'Height'#3#193#1#3'Top'#2#0#5'Width'#3#216#0 + +#5'Align'#7#8'alClient'#10'BevelOuter'#7#6'bvNone'#11'BorderWidth'#2#5#12'Cl' + +'ientHeight'#3#193#1#11'ClientWidth'#3#216#0#8'TabOrder'#2#0#0#9'TTreeView' + +#15'TreeInheritance'#4'Left'#2#5#6'Height'#3#183#1#3'Top'#2#5#5'Width'#3#206 + +#0#5'Align'#7#8'alClient'#5'Ctl3D'#8#17'DefaultItemHeight'#2#15#8'ReadOnly'#9 + +#8'TabOrder'#2#0#10'OnDblClick'#7#23'TreeInheritanceDblClick'#7'Options'#11 + +#17'tvoAutoItemHeight'#16'tvoHideSelection'#21'tvoKeepCollapsedNodes'#11'tvo' + +'ReadOnly'#14'tvoShowButtons'#12'tvoShowLines'#11'tvoShowRoot'#11'tvoToolTip' + +'s'#22'tvoNoDoubleClickExpand'#0#0#0#0#0#0#6'TPanel'#6'Panel3'#22'AnchorSide' + +'Left.Control'#7#5'Owner'#21'AnchorSideTop.Control'#7#5'Owner'#23'AnchorSide' + +'Right.Control'#7#5'Owner'#20'AnchorSideRight.Side'#7#9'asrBottom'#4'Left'#2 + +#0#6'Height'#2'#'#3'Top'#2#0#5'Width'#3#224#0#7'Anchors'#11#5'akTop'#6'akLef' + +'t'#7'akRight'#0#8'AutoSize'#9#10'BevelOuter'#7#6'bvNone'#11'BorderWidth'#2#8 + +#12'ClientHeight'#2'#'#11'ClientWidth'#3#224#0#8'TabOrder'#2#1#0#6'TLabel'#11 + +'LabelSearch'#22'AnchorSideLeft.Control'#7#6'Panel3'#21'AnchorSideTop.Contro' + +'l'#7#6'Panel3'#4'Left'#2#6#6'Height'#2#14#3'Top'#2#6#5'Width'#2';'#20'Borde' + +'rSpacing.Around'#2#6#7'Caption'#6#11'LabelSearch'#11'ParentColor'#8#0#0#5'T' + +'Edit'#11'PatternEdit'#22'AnchorSideLeft.Control'#7#11'LabelSearch'#19'Ancho' + +'rSideLeft.Side'#7#9'asrBottom'#21'AnchorSideTop.Control'#7#6'Panel3'#23'Anc' + +'horSideRight.Control'#7#6'Panel3'#20'AnchorSideRight.Side'#7#9'asrBottom'#4 + +'Left'#2'G'#6'Height'#2#23#3'Top'#2#6#5'Width'#3#147#0#7'Anchors'#11#5'akTop' + +#6'akLeft'#7'akRight'#0#20'BorderSpacing.Around'#2#6#8'OnChange'#7#17'Patter' + +'nEditChange'#8'TabOrder'#2#0#0#0#0#12'TButtonPanel'#11'ButtonPanel'#4'Left' + +#2#6#6'Height'#2'('#3'Top'#3#4#2#5'Width'#3#212#0#5'Align'#7#8'alBottom'#8'A' + +'utoSize'#9#8'TabOrder'#2#2#11'ShowButtons'#11#7'pbClose'#0#0#0#0 ]); diff --git a/ide/componentlist.pas b/ide/componentlist.pas index 45a4546ff0..53f66a9201 100644 --- a/ide/componentlist.pas +++ b/ide/componentlist.pas @@ -43,7 +43,7 @@ uses Classes, SysUtils, LCLProc, LResources, Forms, Controls, Graphics, Dialogs, StdCtrls, Buttons, FormEditingIntf, LazarusIDEStrConsts, ExtCtrls, ComCtrls, ComponentPalette, ComponentReg, PackageDefs, ExtDlgs, FormEditor, PropEdits, - LCLType, Menus, ButtonPanel; + LCLType, Menus, ButtonPanel, IDEWindowIntf; type { TComponentListForm } @@ -68,7 +68,11 @@ type procedure TreeInheritanceDblClick ( Sender: TObject ) ; procedure TreePalletteDblClick(Sender: TObject); procedure UpdateComponentSelection(Sender: TObject); + procedure FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); + procedure PatternEditChange(Sender: TObject); + procedure Timer1Timer(Sender: TObject); private + FTimer: TTimer; Processing: boolean; FComponentList: TFPList; procedure FindAllLazarusComponents; @@ -89,9 +93,13 @@ implementation constructor TComponentListForm.Create(AOwner: TComponent); begin inherited Create(AOwner); + FTimer := TTimer.Create(nil); + FTimer.Interval := 500; + FTimer.Enabled := false; + FTimer.OnTimer := @Timer1Timer; FComponentList := TFPList.Create; - ButtonPanel.CloseButton.Cancel:=True; + ButtonPanel.CloseButton.Cancel := True; //Translations.. LabelSearch.Caption := lisMenuFind; @@ -105,12 +113,15 @@ begin FindAllLazarusComponents; UpdateComponentSelection(nil); + IDEDialogLayoutList.ApplyLayout(Self); end; destructor TComponentListForm.Destroy; begin + IDEDialogLayoutList.SaveLayout(Self); ComponentListForm := nil; FComponentList.Free; + FTimer.Free; inherited Destroy; end; @@ -151,6 +162,7 @@ begin if Processing then exit; Processing := true; + FTimer.Enabled := false; Screen.Cursor := crHourGlass; try AFilter := UpperCase(PatternEdit.Text); @@ -266,14 +278,19 @@ var TypeClass: TComponentClass; X, Y: integer; begin - if not Assigned(AComponent) then Exit; - if not Assigned(FormEditingHook) then Exit; + if not Assigned(AComponent) + then Exit; + if not Assigned(FormEditingHook) + then Exit; //TComponentPalette(IDEComponentPalette).Selected := AComponent; TypeClass:=AComponent.ComponentClass; ParentCI:=FormEditingHook.GetDefaultComponentParent(TypeClass); - if ParentCI=nil then exit; + if ParentCI=nil + then exit; + //Would be lovely if it would only select the component as if it was + //clicked in the pallette bar so you can drop it on your own position. if not FormEditingHook.GetDefaultComponentPosition(TypeClass,ParentCI,X,Y) then exit; @@ -309,7 +326,6 @@ begin AComponent := TRegisteredComponent(TreeInheritance.Selected.Data); if not Assigned(AComponent) then exit; - AddSelectedComponent(AComponent); end; @@ -319,6 +335,26 @@ begin then PatternEdit.SetFocus; end; +procedure TComponentListForm.FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); +//Close the form on escape key like every other IDE dialog does +begin + if Key=VK_ESCAPE + then Close; +end; + +procedure TComponentListForm.PatternEditChange(Sender: TObject); +begin + //Reset for proper delay + FTimer.Enabled := false; + FTimer.Enabled := true; +end; + +procedure TComponentListForm.Timer1Timer(Sender: TObject); +begin + UpdateComponentSelection(nil); +end; + + initialization {$I componentlist.lrs} diff --git a/ide/lazarus.lpi b/ide/lazarus.lpi index 1e595ba555..2c055098cc 100644 --- a/ide/lazarus.lpi +++ b/ide/lazarus.lpi @@ -1,7 +1,7 @@ - + @@ -24,7 +24,7 @@ - + @@ -41,19 +41,19 @@ - + - + - + @@ -61,56 +61,56 @@ - + - + - + - + - + - + - + - + @@ -118,7 +118,7 @@ - + @@ -126,84 +126,84 @@ - + - + - + - + - + - + - + - + - + - + - + - + @@ -211,7 +211,7 @@ - + @@ -219,21 +219,21 @@ - + - + - + @@ -260,7 +260,7 @@ - + @@ -268,23 +268,40 @@ - + + + + + + + + + + + + + + + + + + - + - - + +