IdeIntf: Match filter in options dialog only for visible controls.

git-svn-id: trunk@45222 -
This commit is contained in:
juha 2014-05-29 19:39:29 +00:00
parent 9bb999850a
commit 081cf3a9ee

View File

@ -558,32 +558,34 @@ var
DefStyle: TFontStyles; DefStyle: TFontStyles;
begin begin
Result:=False; Result:=False;
// *** First find matches in different controls *** if AControl.Visible then begin
// TSynEdit can't be used here in IdeOptionsIntf ! // *** First find matches in different controls ***
//if AControl is TSynEdit then Found:=SearchSynEdit(AControl) // TSynEdit can't be used here in IdeOptionsIntf !
if AControl is TCustomComboBox then //if AControl is TSynEdit then Found:=SearchSynEdit(AControl)
Result:=SearchComboBox(TCustomComboBox(AControl)) if AControl is TCustomComboBox then
else if AControl is TCustomListBox then Result:=SearchComboBox(TCustomComboBox(AControl))
Result:=SearchListBox(TCustomListBox(AControl)) else if AControl is TCustomListBox then
else if AControl is TCustomListView then Result:=SearchListBox(TCustomListBox(AControl))
Result:=SearchListView(TCustomListView(AControl)) else if AControl is TCustomListView then
else if AControl is TCustomTreeView then Result:=SearchListView(TCustomListView(AControl))
Result:=SearchTreeView(TCustomTreeView(AControl)) else if AControl is TCustomTreeView then
else if AControl is TCustomStringGrid then Result:=SearchTreeView(TCustomTreeView(AControl))
Result:=SearchStringGrid(TCustomStringGrid(AControl)) else if AControl is TCustomStringGrid then
else if AControl is TCustomMemo then Result:=SearchStringGrid(TCustomStringGrid(AControl))
Result:=SearchMemo(TCustomMemo(AControl)) else if AControl is TCustomMemo then
else begin Result:=SearchMemo(TCustomMemo(AControl))
Result:=Pos(LowerText, LowerCase(AControl.Caption))>0; else begin
// Indicate the match Result:=Pos(LowerText, LowerCase(AControl.Caption))>0;
if Result then // Indicate the match
AControl.Font.Style:=MatchFontStyle if Result then
// or, remove the indication. AControl.Font.Style:=MatchFontStyle
else if AControl.Font.Style=MatchFontStyle then begin // or, remove the indication.
DefStyle:=[]; else if AControl.Font.Style=MatchFontStyle then begin
if FDefaultFonts.Find(AControl.Name, i) then DefStyle:=[];
DefStyle:=TDefaultFont(FDefaultFonts.Objects[i]).FStyles; if FDefaultFonts.Find(AControl.Name, i) then
AControl.Font.Style:=DefStyle; DefStyle:=TDefaultFont(FDefaultFonts.Objects[i]).FStyles;
AControl.Font.Style:=DefStyle;
end;
end; end;
end; end;