From b9703b29819b619037cc282d719c187e51bacd30 Mon Sep 17 00:00:00 2001 From: Tomas Bzatek Date: Mon, 23 Dec 2024 23:59:45 +0100 Subject: Port to g-i generated glib2 bindings Includes switch to FPC -Mobjfpc and related pointer style fixes. --- USearch.pas | 57 +++++++++++++++++++++++++++++---------------------------- 1 file changed, 29 insertions(+), 28 deletions(-) (limited to 'USearch.pas') diff --git a/USearch.pas b/USearch.pas index 3ae35f9..1a9b527 100644 --- a/USearch.pas +++ b/USearch.pas @@ -22,7 +22,7 @@ unit USearch; interface uses - glib2, gdk2, gtk2, SyncObjs, SysUtils, Types, Classes, Variants, GTKControls, GTKForms, GTKStdCtrls, GTKExtCtrls, GTKConsts, GTKView, + lazglib2, gtk2, SyncObjs, SysUtils, Classes, GTKControls, GTKForms, GTKStdCtrls, GTKExtCtrls, GTKConsts, GTKView, GTKMenus, UEngines, UGnome, ULibc; @@ -84,6 +84,7 @@ type FRootEngine: TPanelEngine; Wilds: array of string; GUIMutex: TCriticalSection; + FFinished: boolean; procedure DoRecurse(StartDir: string); function FindText(FileName: string): boolean; protected @@ -95,7 +96,7 @@ type FList: TList; procedure Execute; override; public - Finished, CancelIt: boolean; + CancelIt: boolean; CurrentDir: string; constructor Create(Engine: TPanelEngine); destructor Destroy; override; @@ -106,7 +107,7 @@ var implementation -uses Math, UMain, ULocale, UCoreUtils, UCore, DateUtils, UViewer, UConfig, UVFSCore, UFileAssoc; +uses Math, UMain, ULocale, UCoreUtils, UCore, DateUtils, UConfig, UVFSCore, UFileAssoc; var SizeUnits: array[0..2] of string; DayUnits: array[0..3] of string; @@ -137,7 +138,7 @@ begin Caption := LANGSearch_Caption; Buttons := []; ShowSeparator := False; - FUseGnomeWidgets := Assigned(@gnome_date_edit_new) and Assigned(@gnome_date_edit_set_time) and Assigned(@gnome_date_edit_get_time); + FUseGnomeWidgets := False; Notebook := TGTKNotebook.Create(Self); Notebook.BorderWidth := 10; @@ -167,7 +168,7 @@ begin Label1.Caption := Format('%s', [LANGSearch_SearchFor]); FileMaskEntry := TGTKCombo.Create(Self); FileMaskEntry.Tooltip := LANGSearch_FileMaskEntryTooltip; - FileMaskEntry.Entry.OnKeyDown := FileMaskEntryKeyDown; + FileMaskEntry.Entry.OnKeyDown := @FileMaskEntryKeyDown; if SearchHistory.Count > 0 then for i := 0 to SearchHistory.Count - 1 do FileMaskEntry.Items.Append(SearchHistory[i]); @@ -191,7 +192,7 @@ begin Label3.Caption := LANGSearch_FindText; FindTextEntry := TGTKCombo.Create(Self); FindTextEntry.Tooltip := LANGSearch_FindTextEntryTooltip; - FindTextEntry.Entry.OnKeyDown := FindTextEntryKeyDown; + FindTextEntry.Entry.OnKeyDown := @FindTextEntryKeyDown; if SearchTextHistory.Count > 0 then for i := 0 to SearchTextHistory.Count - 1 do FindTextEntry.Items.Append(SearchTextHistory[i]); @@ -390,24 +391,24 @@ begin ActionArea.AddControlEx(ButtonBox, False, False, 0); - OnKeyDown := FormKeyDown; - OnCloseQuery := FormCloseQuery; - OnResponse := FormResponse; - OnDestroy := FormDestroy; - FileList.OnSelectionChanged := FileListSelectionChanged; - FindButton.OnClick := FindButtonClick; - StopButton.OnClick := StopButtonClick; - CloseButton.OnClick := CloseButtonClick; - BiggerThanCheckButton.OnToggled := BiggerThanCheckButtonToggled; - SmallerThanCheckButton.OnToggled := BiggerThanCheckButtonToggled; - ModifiedBetweenRadioButton.OnToggled := BiggerThanCheckButtonToggled; - NotModifiedAfterRadioButton.OnToggled := BiggerThanCheckButtonToggled; - ModifiedLastRadioButton.OnToggled := BiggerThanCheckButtonToggled; - ModifiedNotLastRadionButton.OnToggled := BiggerThanCheckButtonToggled; - NewSearchButton.OnClick := NewSearchButtonClick; - ViewButton.OnClick := ViewButtonClick; - GoToFileButton.OnClick := GoToFileButtonClick; - FileList.OnDblClick := FileListDblClick; + OnKeyDown := @FormKeyDown; + OnCloseQuery := @FormCloseQuery; + OnResponse := @FormResponse; + OnDestroy := @FormDestroy; + FileList.OnSelectionChanged := @FileListSelectionChanged; + FindButton.OnClick := @FindButtonClick; + StopButton.OnClick := @StopButtonClick; + CloseButton.OnClick := @CloseButtonClick; + BiggerThanCheckButton.OnToggled := @BiggerThanCheckButtonToggled; + SmallerThanCheckButton.OnToggled := @BiggerThanCheckButtonToggled; + ModifiedBetweenRadioButton.OnToggled := @BiggerThanCheckButtonToggled; + NotModifiedAfterRadioButton.OnToggled := @BiggerThanCheckButtonToggled; + ModifiedLastRadioButton.OnToggled := @BiggerThanCheckButtonToggled; + ModifiedNotLastRadionButton.OnToggled := @BiggerThanCheckButtonToggled; + NewSearchButton.OnClick := @NewSearchButtonClick; + ViewButton.OnClick := @ViewButtonClick; + GoToFileButton.OnClick := @GoToFileButtonClick; + FileList.OnDblClick := @FileListDblClick; Notebook.PageIndex := 0; FileMaskEntry.Entry.SetFocus; @@ -811,7 +812,7 @@ begin end; FSearchThread.GUIMutex.Release; - until FSearchThread.Finished; + until FSearchThread.FFinished; if not Stop then StatusLabel.Caption := Format('%s (' + LANGSearch_FilesFound + ')', [LANGSearch_SearchFinished, FSearchThread.FList.Count]) @@ -821,7 +822,7 @@ begin // Save the list x := List; List := FSearchThread.FList; - FSearchThread.FList := x; + FSearchThread.FList := TList(x); FSearchThread.Free; finally StopButton.Visible := False; @@ -847,7 +848,7 @@ begin FreeOnTerminate := False; GUIMutex := TCriticalSection.Create; CancelIt := False; - Finished := False; + FFinished := False; CurrentDir := ''; FSearchArchives := False; @@ -894,7 +895,7 @@ begin DoRecurse(ExcludeTrailingPathDelimiter(FStartPath)); SetLength(Wilds, 0); finally - Finished := True; + FFinished := True; end; end; -- cgit v1.2.3