mirror of
				https://gitlab.com/freepascal.org/lazarus/lazarus.git
				synced 2025-10-25 12:41:31 +02:00 
			
		
		
		
	fixed gtk critical on bring control back/front
git-svn-id: trunk@7886 -
This commit is contained in:
		
							parent
							
								
									0b40ab4bb7
								
							
						
					
					
						commit
						c5d010ce1b
					
				| @ -4,15 +4,16 @@ object CodeExplorerDlg: TCodeExplorerDlg | ||||
|   ClientWidth = 400 | ||||
|   OnCreate = CodeExplorerDlgCreate | ||||
|   OnDestroy = CodeExplorerDlgDestroy | ||||
|   PixelsPerInch = 90 | ||||
|   HorzScrollBar.Page = 401 | ||||
|   VertScrollBar.Page = 301 | ||||
|   PixelsPerInch = 112 | ||||
|   HorzScrollBar.Page = 399 | ||||
|   VertScrollBar.Page = 299 | ||||
|   Left = 290 | ||||
|   Height = 300 | ||||
|   Top = 163 | ||||
|   Width = 400 | ||||
|   object OkButton: TButton | ||||
|     Anchors = [akRight, akBottom] | ||||
|     BorderSpacing.InnerBorder = 2 | ||||
|     Caption = 'OkButton' | ||||
|     OnClick = OkButtonClick | ||||
|     TabOrder = 0 | ||||
| @ -23,6 +24,7 @@ object CodeExplorerDlg: TCodeExplorerDlg | ||||
|   end | ||||
|   object CancelButton: TButton | ||||
|     Anchors = [akRight, akBottom] | ||||
|     BorderSpacing.InnerBorder = 2 | ||||
|     Caption = 'CancelButton' | ||||
|     ModalResult = 2 | ||||
|     TabOrder = 1 | ||||
| @ -59,6 +61,15 @@ object CodeExplorerDlg: TCodeExplorerDlg | ||||
|         Top = 11 | ||||
|         Width = 354 | ||||
|       end | ||||
|       object FollowCursorCheckBox: TCheckBox | ||||
|         Caption = 'FollowCursorCheckBox' | ||||
|         TabOrder = 1 | ||||
|         Visible = False | ||||
|         Left = 14 | ||||
|         Height = 24 | ||||
|         Top = 134 | ||||
|         Width = 158 | ||||
|       end | ||||
|     end | ||||
|   end | ||||
| end | ||||
|  | ||||
| @ -4,19 +4,22 @@ LazarusResources.Add('TCodeExplorerDlg','FORMDATA',[ | ||||
|   'TPF0'#16'TCodeExplorerDlg'#15'CodeExplorerDlg'#7'Caption'#6#15'CodeExplorerD' | ||||
|   +'lg'#12'ClientHeight'#3','#1#11'ClientWidth'#3#144#1#8'OnCreate'#7#21'CodeEx' | ||||
|   +'plorerDlgCreate'#9'OnDestroy'#7#22'CodeExplorerDlgDestroy'#13'PixelsPerInch' | ||||
|   +#2'Z'#18'HorzScrollBar.Page'#3#145#1#18'VertScrollBar.Page'#3'-'#1#4'Left'#3 | ||||
|   +#2'p'#18'HorzScrollBar.Page'#3#143#1#18'VertScrollBar.Page'#3'+'#1#4'Left'#3 | ||||
|   +'"'#1#6'Height'#3','#1#3'Top'#3#163#0#5'Width'#3#144#1#0#7'TButton'#8'OkButt' | ||||
|   +'on'#7'Anchors'#11#7'akRight'#8'akBottom'#0#7'Caption'#6#8'OkButton'#7'OnCli' | ||||
|   +'ck'#7#13'OkButtonClick'#8'TabOrder'#2#0#4'Left'#3#143#0#6'Height'#2#25#3'To' | ||||
|   +'p'#3#8#1#5'Width'#2'g'#0#0#7'TButton'#12'CancelButton'#7'Anchors'#11#7'akRi' | ||||
|   +'ght'#8'akBottom'#0#7'Caption'#6#12'CancelButton'#11'ModalResult'#2#2#8'TabO' | ||||
|   +'rder'#2#1#4'Left'#3#24#1#6'Height'#2#25#3'Top'#3#8#1#5'Width'#2'g'#0#0#9'TN' | ||||
|   +'otebook'#12'MainNotebook'#7'Anchors'#11#5'akTop'#6'akLeft'#7'akRight'#8'akB' | ||||
|   +'ottom'#0#9'PageIndex'#2#0#4'Left'#2#8#6'Height'#3#248#0#3'Top'#2#8#5'Width' | ||||
|   +#3#128#1#0#5'TPage'#10'UpdatePage'#7'Caption'#6#10'UpdatePage'#11'ClientWidt' | ||||
|   +'h'#3'|'#1#12'ClientHeight'#3#218#0#4'Left'#2#2#6'Height'#3#218#0#3'Top'#2#28 | ||||
|   +#5'Width'#3'|'#1#0#11'TRadioGroup'#17'RefreshRadioGroup'#7'Caption'#6#17'Ref' | ||||
|   +'reshRadioGroup'#13'Items.Strings'#1#6#6'Manual'#6#10'SwitchPage'#6#4'Idle'#0 | ||||
|   +#11'ParentColor'#9#4'Left'#2#14#6'Height'#2'i'#3'Top'#2#11#5'Width'#3'b'#1#0 | ||||
|   +#0#0#0#0 | ||||
|   +'on'#7'Anchors'#11#7'akRight'#8'akBottom'#0#25'BorderSpacing.InnerBorder'#2#2 | ||||
|   +#7'Caption'#6#8'OkButton'#7'OnClick'#7#13'OkButtonClick'#8'TabOrder'#2#0#4'L' | ||||
|   +'eft'#3#143#0#6'Height'#2#25#3'Top'#3#8#1#5'Width'#2'g'#0#0#7'TButton'#12'Ca' | ||||
|   +'ncelButton'#7'Anchors'#11#7'akRight'#8'akBottom'#0#25'BorderSpacing.InnerBo' | ||||
|   +'rder'#2#2#7'Caption'#6#12'CancelButton'#11'ModalResult'#2#2#8'TabOrder'#2#1 | ||||
|   +#4'Left'#3#24#1#6'Height'#2#25#3'Top'#3#8#1#5'Width'#2'g'#0#0#9'TNotebook'#12 | ||||
|   +'MainNotebook'#7'Anchors'#11#5'akTop'#6'akLeft'#7'akRight'#8'akBottom'#0#9'P' | ||||
|   +'ageIndex'#2#0#4'Left'#2#8#6'Height'#3#248#0#3'Top'#2#8#5'Width'#3#128#1#0#5 | ||||
|   +'TPage'#10'UpdatePage'#7'Caption'#6#10'UpdatePage'#11'ClientWidth'#3'|'#1#12 | ||||
|   +'ClientHeight'#3#218#0#4'Left'#2#2#6'Height'#3#218#0#3'Top'#2#28#5'Width'#3 | ||||
|   +'|'#1#0#11'TRadioGroup'#17'RefreshRadioGroup'#7'Caption'#6#17'RefreshRadioGr' | ||||
|   +'oup'#13'Items.Strings'#1#6#6'Manual'#6#10'SwitchPage'#6#4'Idle'#0#11'Parent' | ||||
|   +'Color'#9#4'Left'#2#14#6'Height'#2'i'#3'Top'#2#11#5'Width'#3'b'#1#0#0#9'TChe' | ||||
|   +'ckBox'#20'FollowCursorCheckBox'#7'Caption'#6#20'FollowCursorCheckBox'#8'Tab' | ||||
|   +'Order'#2#1#7'Visible'#8#4'Left'#2#14#6'Height'#2#24#3'Top'#3#134#0#5'Width' | ||||
|   +#3#158#0#0#0#0#0#0 | ||||
| ]); | ||||
|  | ||||
| @ -36,7 +36,7 @@ interface | ||||
| uses | ||||
|   Classes, SysUtils, LCLProc, LResources, Forms, Controls, Graphics, Dialogs, | ||||
|   Laz_XMLCfg, Buttons, ExtCtrls, FileUtil, | ||||
|   LazConf, IDEProcs, LazarusIDEStrConsts; | ||||
|   LazConf, IDEProcs, LazarusIDEStrConsts, StdCtrls; | ||||
| 
 | ||||
| type | ||||
|   { TCodeExplorerOptions } | ||||
| @ -49,6 +49,7 @@ type | ||||
|    | ||||
|   TCodeExplorerOptions = class(TPersistent) | ||||
|   private | ||||
|     FFollowCursor: boolean; | ||||
|     FOptionsFilename: string; | ||||
|     FRefresh: TCodeExplorerRefresh; | ||||
|   public | ||||
| @ -63,11 +64,13 @@ type | ||||
|   public | ||||
|     property Refresh: TCodeExplorerRefresh read FRefresh write FRefresh; | ||||
|     property OptionsFilename: string read FOptionsFilename write FOptionsFilename; | ||||
|     property FollowCursor: boolean read FFollowCursor write FFollowCursor; | ||||
|   end; | ||||
| 
 | ||||
|   { TCodeExplorerDlg } | ||||
| 
 | ||||
|   TCodeExplorerDlg = class(TForm) | ||||
|     FollowCursorCheckBox: TCheckBox; | ||||
|     MainNotebook: TNotebook; | ||||
|     OkButton: TButton; | ||||
|     CancelButton: TButton; | ||||
| @ -135,7 +138,7 @@ constructor TCodeExplorerOptions.Create; | ||||
| begin | ||||
|   FOptionsFilename:= | ||||
|                 AppendPathDelim(GetPrimaryConfigPath)+'codeexploreroptions.xml'; | ||||
|   FRefresh:=cerDefault; | ||||
|   Clear; | ||||
| end; | ||||
| 
 | ||||
| destructor TCodeExplorerOptions.Destroy; | ||||
| @ -146,6 +149,7 @@ end; | ||||
| procedure TCodeExplorerOptions.Clear; | ||||
| begin | ||||
|   FRefresh:=cerDefault; | ||||
|   FFollowCursor:=true; | ||||
| end; | ||||
| 
 | ||||
| procedure TCodeExplorerOptions.Assign(Source: TPersistent); | ||||
| @ -155,6 +159,7 @@ begin | ||||
|   if Source is TCodeExplorerOptions then begin | ||||
|     Src:=TCodeExplorerOptions(Source); | ||||
|     FRefresh:=Src.Refresh; | ||||
|     FFollowCursor:=Src.FollowCursor; | ||||
|   end else | ||||
|     inherited Assign(Source); | ||||
| end; | ||||
| @ -203,14 +208,18 @@ procedure TCodeExplorerOptions.LoadFromXMLConfig(XMLConfig: TXMLConfig; | ||||
|   const Path: string); | ||||
| begin | ||||
|   Clear; | ||||
|   FRefresh:=CodeExplorerRefreshNameToEnum(XMLConfig.GetValue('Refresh/Value','')); | ||||
|   FRefresh:=CodeExplorerRefreshNameToEnum( | ||||
|                                    XMLConfig.GetValue(Path+'Refresh/Value','')); | ||||
|   FFollowCursor:=XMLConfig.GetValue(Path+'FollowCursor',true); | ||||
| end; | ||||
| 
 | ||||
| procedure TCodeExplorerOptions.SaveToXMLConfig(XMLConfig: TXMLConfig; | ||||
|   const Path: string); | ||||
| begin | ||||
|   XMLConfig.SetDeleteValue('Refresh/Value',CodeExplorerRefreshNames[FRefresh], | ||||
|   XMLConfig.SetDeleteValue(Path+'Refresh/Value', | ||||
|                            CodeExplorerRefreshNames[FRefresh], | ||||
|                            CodeExplorerRefreshNames[cerDefault]); | ||||
|   XMLConfig.SetDeleteValue(Path+'FollowCursor',FFollowCursor,true); | ||||
| end; | ||||
| 
 | ||||
| { TCodeExplorerDlg } | ||||
| @ -237,7 +246,7 @@ begin | ||||
|   else | ||||
|     RefreshRadioGroup.ItemIndex:=1; | ||||
|   end; | ||||
| 
 | ||||
|   FollowCursorCheckBox.Checked:=Options.FollowCursor; | ||||
| end; | ||||
| 
 | ||||
| procedure TCodeExplorerDlg.SaveFormToOptions; | ||||
| @ -247,6 +256,7 @@ begin | ||||
|   1: FOptions.Refresh:=cerSwitchEditorPage; | ||||
|   2: FOptions.Refresh:=cerOnIdle; | ||||
|   end; | ||||
|   Options.FollowCursor:=FollowCursorCheckBox.Checked; | ||||
| end; | ||||
| 
 | ||||
| procedure TCodeExplorerDlg.CodeExplorerDlgCreate(Sender: TObject); | ||||
| @ -262,6 +272,7 @@ begin | ||||
|     Items[1]:=lisCEOWhenSwitchingFile; | ||||
|     Items[2]:=lisCEOOnIdle; | ||||
|   end; | ||||
|   FollowCursorCheckBox.Caption:=lisCEFollowCursor; | ||||
| end; | ||||
| 
 | ||||
| procedure TCodeExplorerDlg.CodeExplorerDlgDestroy(Sender: TObject); | ||||
|  | ||||
| @ -73,7 +73,7 @@ type | ||||
|     procedure CodeTreeviewDblClick(Sender: TObject); | ||||
|     procedure CodeTreeviewDeletion(Sender: TObject; Node: TTreeNode); | ||||
|     procedure CodeTreeviewKeyUp(Sender: TObject; var Key: Word; | ||||
|       Shift: TShiftState); | ||||
|                                 Shift: TShiftState); | ||||
|     procedure JumpToMenuitemClick(Sender: TObject); | ||||
|     procedure OptionsButtonClick(Sender: TObject); | ||||
|     procedure RefreshButtonClick(Sender: TObject); | ||||
|  | ||||
| @ -2844,6 +2844,7 @@ resourcestring | ||||
|   lisCEONeverOnlyManually = 'Never, only manually'; | ||||
|   lisCEOWhenSwitchingFile = 'When switching file in source editor'; | ||||
|   lisCEOOnIdle = 'On idle'; | ||||
|   lisCEFollowCursor = 'Follow cursor'; | ||||
| 
 | ||||
|   lisMenuLazDoc = 'LazDoc Editor'; | ||||
|   lisLazDocMainFormCaption = 'LazDoc editor'; | ||||
|  | ||||
| @ -611,6 +611,7 @@ begin | ||||
| 
 | ||||
|   Widget := GetWidgetWithWindow(AWincontrol.Handle); | ||||
|   if Widget = nil then Exit; | ||||
|   if Widget^.Window=nil then exit; | ||||
| 
 | ||||
|   case APosition of | ||||
|     wszpBack:  begin | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user
	 mattias
						mattias