summaryrefslogtreecommitdiff
path: root/UError.pas
diff options
context:
space:
mode:
Diffstat (limited to 'UError.pas')
-rw-r--r--UError.pas69
1 files changed, 32 insertions, 37 deletions
diff --git a/UError.pas b/UError.pas
index d557189..3863575 100644
--- a/UError.pas
+++ b/UError.pas
@@ -21,7 +21,7 @@ unit UError;
interface
-uses glib2, gtk2, Classes, SysUtils, ULibc, GTKForms;
+uses lazglib2, gtk2, Classes, SysUtils, GTKForms;
type TuxcmdErrorEnum = (
TUXCMD_ERROR_CANCELLED,
@@ -154,10 +154,8 @@ end;
function g_io_error_from_errno(err_no: gint): GIOErrorEnum;
begin
// Prefer native library call
- if @__g_io_error_from_errno <> nil then begin
- Result := __g_io_error_from_errno(err_no);
- Exit;
- end;
+ Result := g_io_error_from_errno(err_no);
+(*
case err_no of
EEXIST: Result := G_IO_ERROR_EXISTS;
EISDIR: Result := G_IO_ERROR_IS_DIRECTORY;
@@ -199,12 +197,13 @@ begin
ENOTSOCK: Result := G_IO_ERROR_INVALID_ARGUMENT;
else Result := G_IO_ERROR_FAILED;
end;
+*)
end;
(********************************************************************************************************************************)
procedure tuxcmd_set_error_from_exception(Error: PPGError; E: Exception);
begin
- g_set_error(Error, TUXCMD_ERROR, integer(TUXCMD_ERROR_EXCEPTION), 'Exception raised: %s', PChar(E.Message));
+ g_set_error(Error, TUXCMD_ERROR, integer(TUXCMD_ERROR_EXCEPTION), 'Exception raised: %s', [PChar(E.Message)]);
end;
(********************************************************************************************************************************)
@@ -214,47 +213,43 @@ var Dialog: PGtkWidget;
begin
if Error <> nil then error_str := Error^.message
else error_str := '';
- if @gtk_message_dialog_new_with_markup <> nil
- then dialog := gtk_message_dialog_new_with_markup (PGtkWindow(Parent.FWidget), GTK_DIALOG_MODAL or GTK_DIALOG_DESTROY_WITH_PARENT,
- GTK_MESSAGE_ERROR, GTK_BUTTONS_OK,
- '<span size="large" weight="ultrabold">%s</span>'#10#10'%s',
- PChar(Text), error_str)
- else dialog := gtk_message_dialog_new (PGtkWindow(Parent.FWidget), GTK_DIALOG_MODAL or GTK_DIALOG_DESTROY_WITH_PARENT,
- GTK_MESSAGE_ERROR, GTK_BUTTONS_OK,
- '%s'#10#10'%s', PChar(Text), error_str);
- gtk_window_set_title (PGtkWindow(dialog), '');
- gtk_dialog_run (PGtkDialog(Dialog));
- gtk_widget_destroy (PGtkWidget(Dialog));
+ dialog := gtk_message_dialog_new_with_markup(PGtkWindow(Parent.FWidget), GTK_DIALOG_MODAL or GTK_DIALOG_DESTROY_WITH_PARENT,
+ GTK_MESSAGE_ERROR, GTK_BUTTONS_OK,
+ '<span size="large" weight="ultrabold">%s</span>'#10#10'%s',
+ PChar(Text), error_str);
+ gtk_window_set_title(PGtkWindow(dialog), '');
+ gtk_dialog_run(PGtkDialog(Dialog));
+ gtk_widget_destroy(PGtkWidget(Dialog));
end;
procedure PrefixTuxcmdError(Error: PPGError; const FileName: string);
begin
if (Error = nil) or (Error^ = nil) then Exit;
- if (Error^.domain <> TUXCMD_ERROR) then Exit;
- case TuxcmdErrorEnum(Error^.code) of
- TUXCMD_ERROR_CHDIR: g_prefix_error(Error, 'Error changing directory to ''%s'': ', StrToUTF8(PChar(FileName)));
- TUXCMD_ERROR_OPENDIR: g_prefix_error(Error, 'Error opening directory ''%s'': ', StrToUTF8(PChar(FileName)));
- TUXCMD_ERROR_STAT: g_prefix_error(Error, 'Error getting file info for ''%s'': ', StrToUTF8(PChar(FileName)));
- TUXCMD_ERROR_MKDIR: g_prefix_error(Error, 'Error creating directory ''%s'': ', StrToUTF8(PChar(FileName)));
- TUXCMD_ERROR_REMOVE: g_prefix_error(Error, 'Error deleting ''%s'': ', StrToUTF8(PChar(FileName)));
- TUXCMD_ERROR_SYMLINK: g_prefix_error(Error, 'Error creating symlink ''%s'': ', StrToUTF8(PChar(FileName)));
- TUXCMD_ERROR_CHMOD: g_prefix_error(Error, 'Error changing permissions of ''%s'': ', StrToUTF8(PChar(FileName)));
- TUXCMD_ERROR_CHOWN: g_prefix_error(Error, 'Error changing owner/group of ''%s'': ', StrToUTF8(PChar(FileName)));
- TUXCMD_ERROR_RENAME: g_prefix_error(Error, 'Error renaming file ''%s'': ', StrToUTF8(PChar(FileName)));
- TUXCMD_ERROR_TIMESTAMPS: g_prefix_error(Error, 'Error changing timestamps of ''%s'': ', StrToUTF8(PChar(FileName)));
- TUXCMD_ERROR_OPEN_FILE: g_prefix_error(Error, 'Error opening file ''%s'': ', StrToUTF8(PChar(FileName)));
- TUXCMD_ERROR_READ_FILE: g_prefix_error(Error, 'Error reading file ''%s'': ', StrToUTF8(PChar(FileName)));
- TUXCMD_ERROR_WRITE_FILE: g_prefix_error(Error, 'Error writing file ''%s'': ', StrToUTF8(PChar(FileName)));
- TUXCMD_ERROR_CLOSE_FILE: g_prefix_error(Error, 'Error closing file ''%s'': ', StrToUTF8(PChar(FileName)));
- TUXCMD_ERROR_SEEK: g_prefix_error(Error, 'Error seeking in file ''%s'': ', StrToUTF8(PChar(FileName)));
+ if ((Error^)^.domain <> TUXCMD_ERROR) then Exit;
+ case TuxcmdErrorEnum((Error^)^.code) of
+ TUXCMD_ERROR_CHDIR: g_prefix_error(Error, 'Error changing directory to ''%s'': ', [StrToUTF8(PChar(FileName))]);
+ TUXCMD_ERROR_OPENDIR: g_prefix_error(Error, 'Error opening directory ''%s'': ', [StrToUTF8(PChar(FileName))]);
+ TUXCMD_ERROR_STAT: g_prefix_error(Error, 'Error getting file info for ''%s'': ', [StrToUTF8(PChar(FileName))]);
+ TUXCMD_ERROR_MKDIR: g_prefix_error(Error, 'Error creating directory ''%s'': ', [StrToUTF8(PChar(FileName))]);
+ TUXCMD_ERROR_REMOVE: g_prefix_error(Error, 'Error deleting ''%s'': ', [StrToUTF8(PChar(FileName))]);
+ TUXCMD_ERROR_SYMLINK: g_prefix_error(Error, 'Error creating symlink ''%s'': ', [StrToUTF8(PChar(FileName))]);
+ TUXCMD_ERROR_CHMOD: g_prefix_error(Error, 'Error changing permissions of ''%s'': ', [StrToUTF8(PChar(FileName))]);
+ TUXCMD_ERROR_CHOWN: g_prefix_error(Error, 'Error changing owner/group of ''%s'': ', [StrToUTF8(PChar(FileName))]);
+ TUXCMD_ERROR_RENAME: g_prefix_error(Error, 'Error renaming file ''%s'': ', [StrToUTF8(PChar(FileName))]);
+ TUXCMD_ERROR_TIMESTAMPS: g_prefix_error(Error, 'Error changing timestamps of ''%s'': ', [StrToUTF8(PChar(FileName))]);
+ TUXCMD_ERROR_OPEN_FILE: g_prefix_error(Error, 'Error opening file ''%s'': ', [StrToUTF8(PChar(FileName))]);
+ TUXCMD_ERROR_READ_FILE: g_prefix_error(Error, 'Error reading file ''%s'': ', [StrToUTF8(PChar(FileName))]);
+ TUXCMD_ERROR_WRITE_FILE: g_prefix_error(Error, 'Error writing file ''%s'': ', [StrToUTF8(PChar(FileName))]);
+ TUXCMD_ERROR_CLOSE_FILE: g_prefix_error(Error, 'Error closing file ''%s'': ', [StrToUTF8(PChar(FileName))]);
+ TUXCMD_ERROR_SEEK: g_prefix_error(Error, 'Error seeking in file ''%s'': ', [StrToUTF8(PChar(FileName))]);
end;
end;
procedure VFSToTuxcmdError(Error: PPGError; Operation: TuxcmdErrorEnum);
var OldError: PGError;
begin
- if (Error = nil) or (Error^ = nil) or (Error^.domain <> G_IO_ERROR) then Exit;
- case GIOErrorEnum(Error^.code) of
+ if (Error = nil) or (Error^ = nil) or ((Error^)^.domain <> G_IO_ERROR) then Exit;
+ case GIOErrorEnum((Error^)^.code) of
G_IO_ERROR_FAILED,
G_IO_ERROR_NOT_FOUND,
G_IO_ERROR_EXISTS,
@@ -288,7 +283,7 @@ begin
G_IO_ERROR_NO_SUCH_DEVICE: begin
OldError := Error^;
Error^ := nil;
- g_set_error(Error, TUXCMD_ERROR, gint(Operation), '%s', OldError^.message);
+ g_set_error(Error, TUXCMD_ERROR, gint(Operation), '%s', [OldError^.message]);
g_free (OldError);
end;
end;