[gnome-commander] GnomeCmdFile: more C++ rework
- From: Piotr Eljasiak <epiotr src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-commander] GnomeCmdFile: more C++ rework
- Date: Sun, 15 Aug 2010 15:51:03 +0000 (UTC)
commit 21448bbabf20044dc2236b4f2fdee4ecd9b2dbb3
Author: Piotr Eljasiak <epiotr src gnome org>
Date: Sun Aug 15 15:45:45 2010 +0200
GnomeCmdFile: more C++ rework
src/gnome-cmd-advrename-dialog.cc | 2 +-
src/gnome-cmd-chmod-dialog.cc | 2 +-
src/gnome-cmd-chown-dialog.cc | 2 +-
src/gnome-cmd-file-props-dialog.cc | 6 ++--
src/gnome-cmd-file.cc | 57 +++++++++++++++++-------------------
src/gnome-cmd-file.h | 8 ++--
src/gnome-cmd-rename-dialog.cc | 2 +-
src/utils.cc | 2 +-
8 files changed, 39 insertions(+), 42 deletions(-)
---
diff --git a/src/gnome-cmd-advrename-dialog.cc b/src/gnome-cmd-advrename-dialog.cc
index 711e673..974f1ae 100644
--- a/src/gnome-cmd-advrename-dialog.cc
+++ b/src/gnome-cmd-advrename-dialog.cc
@@ -451,7 +451,7 @@ void GnomeCmdAdvrenameDialog::Private::on_dialog_response (GnomeCmdAdvrenameDial
GnomeVFSResult result = GNOME_VFS_OK;
if (strcmp (f->info->name, new_name) != 0)
- result = gnome_cmd_file_rename (f, new_name);
+ result = f->rename(new_name);
gtk_list_store_set (GTK_LIST_STORE (dialog->files), &i,
COL_NAME, gnome_cmd_file_get_name (f),
diff --git a/src/gnome-cmd-chmod-dialog.cc b/src/gnome-cmd-chmod-dialog.cc
index 806fc07..8d4dde1 100644
--- a/src/gnome-cmd-chmod-dialog.cc
+++ b/src/gnome-cmd-chmod-dialog.cc
@@ -68,7 +68,7 @@ static void do_chmod (GnomeCmdFile *in, GnomeVFSFilePermissions perm, gboolean r
if (!(recursive && mode == CHMOD_DIRS_ONLY && in->info->type != GNOME_VFS_FILE_TYPE_DIRECTORY))
{
- GnomeVFSResult ret = gnome_cmd_file_chmod (in, perm);
+ GnomeVFSResult ret = in->chmod(perm);
if (ret != GNOME_VFS_OK)
gnome_cmd_show_message (NULL, gnome_cmd_file_get_name (in), gnome_vfs_result_to_string (ret));
diff --git a/src/gnome-cmd-chown-dialog.cc b/src/gnome-cmd-chown-dialog.cc
index 9ab2ca0..5984222 100644
--- a/src/gnome-cmd-chown-dialog.cc
+++ b/src/gnome-cmd-chown-dialog.cc
@@ -50,7 +50,7 @@ static void do_chown (GnomeCmdFile *in, uid_t uid, gid_t gid, gboolean recurse)
g_return_if_fail (in != NULL);
g_return_if_fail (in->info != NULL);
- ret = gnome_cmd_file_chown (in, uid, gid);
+ ret = in->chown(uid, gid);
if (ret != GNOME_VFS_OK)
{
diff --git a/src/gnome-cmd-file-props-dialog.cc b/src/gnome-cmd-file-props-dialog.cc
index 6f9c5f2..26a0204 100644
--- a/src/gnome-cmd-file-props-dialog.cc
+++ b/src/gnome-cmd-file-props-dialog.cc
@@ -220,7 +220,7 @@ static void on_dialog_ok (GtkButton *btn, GnomeCmdFilePropsDialogPrivate *data)
if (strcmp (filename, gnome_cmd_file_get_name (data->f)) != 0)
{
- result = gnome_cmd_file_rename (data->f, filename);
+ result = data->f->rename(filename);
if (result==GNOME_VFS_OK)
main_win->fs(ACTIVE)->file_list()->focus_file(filename, TRUE);
@@ -231,7 +231,7 @@ static void on_dialog_ok (GtkButton *btn, GnomeCmdFilePropsDialogPrivate *data)
GnomeVFSFilePermissions perms = gnome_cmd_chmod_component_get_perms (GNOME_CMD_CHMOD_COMPONENT (data->chmod_component));
if (perms != data->f->info->permissions)
- result = gnome_cmd_file_chmod (data->f, perms);
+ result = data->f->chmod(perms);
}
if (result == GNOME_VFS_OK)
@@ -245,7 +245,7 @@ static void on_dialog_ok (GtkButton *btn, GnomeCmdFilePropsDialogPrivate *data)
gid = -1;
if (uid != -1 || gid != -1)
- result = gnome_cmd_file_chown (data->f, uid, gid);
+ result = data->f->chown(uid,gid);
}
if (result != GNOME_VFS_OK)
diff --git a/src/gnome-cmd-file.cc b/src/gnome-cmd-file.cc
index 98280c5..6db387f 100644
--- a/src/gnome-cmd-file.cc
+++ b/src/gnome-cmd-file.cc
@@ -272,20 +272,19 @@ void gnome_cmd_file_unref (GnomeCmdFile *f)
}
-GnomeVFSResult gnome_cmd_file_chmod (GnomeCmdFile *f, GnomeVFSFilePermissions perm)
+GnomeVFSResult GnomeCmdFile::chmod(GnomeVFSFilePermissions perm)
{
- g_return_val_if_fail (f != NULL, GNOME_VFS_ERROR_CORRUPTED_DATA);
- g_return_val_if_fail (f->info != NULL, GNOME_VFS_ERROR_CORRUPTED_DATA);
+ g_return_val_if_fail (info != NULL, GNOME_VFS_ERROR_CORRUPTED_DATA);
- f->info->permissions = perm;
- GnomeVFSURI *uri = f->get_uri();
- GnomeVFSResult ret = gnome_vfs_set_file_info_uri (uri, f->info, GNOME_VFS_SET_FILE_INFO_PERMISSIONS);
+ info->permissions = perm;
+ GnomeVFSURI *uri = get_uri();
+ GnomeVFSResult ret = gnome_vfs_set_file_info_uri (uri, info, GNOME_VFS_SET_FILE_INFO_PERMISSIONS);
gnome_vfs_uri_unref (uri);
- if (has_parent_dir (f))
+ if (has_parent_dir (this))
{
- GnomeCmdDir *dir = get_parent_dir (f);
- gchar *uri_str = gnome_cmd_file_get_uri_str (f);
+ GnomeCmdDir *dir = get_parent_dir (this);
+ gchar *uri_str = gnome_cmd_file_get_uri_str (this);
gnome_cmd_dir_file_changed (dir, uri_str);
g_free (uri_str);
}
@@ -294,23 +293,22 @@ GnomeVFSResult gnome_cmd_file_chmod (GnomeCmdFile *f, GnomeVFSFilePermissions pe
}
-GnomeVFSResult gnome_cmd_file_chown (GnomeCmdFile *f, uid_t uid, gid_t gid)
+GnomeVFSResult GnomeCmdFile::chown(uid_t uid, gid_t gid)
{
- g_return_val_if_fail (f != NULL, GNOME_VFS_ERROR_CORRUPTED_DATA);
- g_return_val_if_fail (f->info != NULL, GNOME_VFS_ERROR_CORRUPTED_DATA);
+ g_return_val_if_fail (info != NULL, GNOME_VFS_ERROR_CORRUPTED_DATA);
if (uid != -1)
- f->info->uid = uid;
- f->info->gid = gid;
+ info->uid = uid;
+ info->gid = gid;
- GnomeVFSURI *uri = f->get_uri();
- GnomeVFSResult ret = gnome_vfs_set_file_info_uri (uri, f->info, GNOME_VFS_SET_FILE_INFO_OWNER);
+ GnomeVFSURI *uri = get_uri();
+ GnomeVFSResult ret = gnome_vfs_set_file_info_uri (uri, info, GNOME_VFS_SET_FILE_INFO_OWNER);
gnome_vfs_uri_unref (uri);
- if (has_parent_dir (f))
+ if (has_parent_dir (this))
{
- GnomeCmdDir *dir = get_parent_dir (f);
- gchar *uri_str = gnome_cmd_file_get_uri_str (f);
+ GnomeCmdDir *dir = get_parent_dir (this);
+ gchar *uri_str = gnome_cmd_file_get_uri_str (this);
gnome_cmd_dir_file_changed (dir, uri_str);
g_free (uri_str);
}
@@ -319,36 +317,35 @@ GnomeVFSResult gnome_cmd_file_chown (GnomeCmdFile *f, uid_t uid, gid_t gid)
}
-GnomeVFSResult gnome_cmd_file_rename (GnomeCmdFile *f, const gchar *new_name)
+GnomeVFSResult GnomeCmdFile::rename(const gchar *new_name)
{
- g_return_val_if_fail (f, GNOME_VFS_ERROR_CORRUPTED_DATA);
- g_return_val_if_fail (f->info, GNOME_VFS_ERROR_CORRUPTED_DATA);
+ g_return_val_if_fail (info, GNOME_VFS_ERROR_CORRUPTED_DATA);
GnomeVFSFileInfo *new_info = gnome_vfs_file_info_new ();
g_return_val_if_fail (new_info, GNOME_VFS_ERROR_CORRUPTED_DATA);
new_info->name = const_cast<gchar *> (new_name);
- GnomeVFSURI *uri = f->get_uri();
+ GnomeVFSURI *uri = get_uri();
GnomeVFSResult result = gnome_vfs_set_file_info_uri (uri, new_info, GNOME_VFS_SET_FILE_INFO_NAME);
gnome_vfs_uri_unref (uri);
if (result==GNOME_VFS_OK) // re-read GnomeVFSFileInfo for the new MIME type
{
const GnomeVFSFileInfoOptions infoOpts = (GnomeVFSFileInfoOptions) (GNOME_VFS_FILE_INFO_FOLLOW_LINKS|GNOME_VFS_FILE_INFO_GET_MIME_TYPE);
- uri = f->get_uri(new_name);
+ uri = get_uri(new_name);
result = gnome_vfs_get_file_info_uri (uri, new_info, infoOpts);
gnome_vfs_uri_unref (uri);
}
- if (result==GNOME_VFS_OK && has_parent_dir (f))
+ if (result==GNOME_VFS_OK && has_parent_dir (this))
{
- gchar *old_uri_str = gnome_cmd_file_get_uri_str (f);
+ gchar *old_uri_str = gnome_cmd_file_get_uri_str (this);
- f->update_info(new_info);
- gnome_cmd_dir_file_renamed (get_parent_dir (f), f, old_uri_str);
- if (GNOME_CMD_IS_DIR (f))
- gnome_cmd_dir_update_path (GNOME_CMD_DIR (f));
+ update_info(new_info);
+ gnome_cmd_dir_file_renamed (get_parent_dir (this), this, old_uri_str);
+ if (GNOME_CMD_IS_DIR (this))
+ gnome_cmd_dir_update_path (GNOME_CMD_DIR (this));
}
return result;
diff --git a/src/gnome-cmd-file.h b/src/gnome-cmd-file.h
index ac7a486..7d917ff 100644
--- a/src/gnome-cmd-file.h
+++ b/src/gnome-cmd-file.h
@@ -57,6 +57,10 @@ struct GnomeCmdFile
const gchar *get_type_desc();
gboolean get_type_pixmap_and_mask(GdkPixmap **pixmap, GdkBitmap **mask);
+ GnomeVFSResult chmod(GnomeVFSFilePermissions perm);
+ GnomeVFSResult chown(uid_t uid, gid_t gid);
+ GnomeVFSResult rename(const gchar *new_name);
+
void update_info(GnomeVFSFileInfo *info);
gboolean is_local();
gboolean is_executable();
@@ -89,10 +93,6 @@ void gnome_cmd_file_setup (GnomeCmdFile *f, GnomeVFSFileInfo *info, GnomeCmdDir
GnomeCmdFile *gnome_cmd_file_ref (GnomeCmdFile *f);
void gnome_cmd_file_unref (GnomeCmdFile *f);
-GnomeVFSResult gnome_cmd_file_chmod (GnomeCmdFile *f, GnomeVFSFilePermissions perm);
-GnomeVFSResult gnome_cmd_file_chown (GnomeCmdFile *f, uid_t uid, gid_t gid);
-GnomeVFSResult gnome_cmd_file_rename (GnomeCmdFile *f, const gchar *new_name);
-
inline gchar *gnome_cmd_file_get_name (GnomeCmdFile *f)
{
g_return_val_if_fail (f != NULL, NULL);
diff --git a/src/gnome-cmd-rename-dialog.cc b/src/gnome-cmd-rename-dialog.cc
index 67b155f..688a5d0 100644
--- a/src/gnome-cmd-rename-dialog.cc
+++ b/src/gnome-cmd-rename-dialog.cc
@@ -60,7 +60,7 @@ static gboolean on_dialog_keypressed (GtkWidget *widget, GdkEventKey *event, gpo
case GDK_KP_Enter:
{
gchar *new_fname = g_strdup (gtk_entry_get_text (dialog->priv->textbox));
- GnomeVFSResult result = gnome_cmd_file_rename (dialog->priv->f, new_fname);
+ GnomeVFSResult result = dialog->priv->f->rename(new_fname);
if (result==GNOME_VFS_OK)
main_win->fs(ACTIVE)->file_list()->focus_file(new_fname, TRUE);
diff --git a/src/utils.cc b/src/utils.cc
index b4efc97..eba8fcb 100644
--- a/src/utils.cc
+++ b/src/utils.cc
@@ -531,7 +531,7 @@ void mime_exec_single (GnomeCmdFile *f)
if (ret != 1) return; else
{
- GnomeVFSResult result = gnome_cmd_file_chmod (f, (GnomeVFSFilePermissions) (f->info->permissions|GNOME_VFS_PERM_USER_EXEC));
+ GnomeVFSResult result = f->chmod((GnomeVFSFilePermissions) (f->info->permissions|GNOME_VFS_PERM_USER_EXEC));
if (result != GNOME_VFS_OK)
return;
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]