[Goodies-commits] r2676 - in xfce4-places-plugin/trunk: . panel-plugin
Diego Ongaro
ongardie at xfce.org
Sat Apr 7 06:47:23 CEST 2007
Author: ongardie
Date: 2007-04-07 04:47:23 +0000 (Sat, 07 Apr 2007)
New Revision: 2676
Modified:
xfce4-places-plugin/trunk/ChangeLog
xfce4-places-plugin/trunk/panel-plugin/Makefile.am
xfce4-places-plugin/trunk/panel-plugin/model.c
xfce4-places-plugin/trunk/panel-plugin/model.h
xfce4-places-plugin/trunk/panel-plugin/model_system.c
xfce4-places-plugin/trunk/panel-plugin/model_system.h
xfce4-places-plugin/trunk/panel-plugin/model_user.c
xfce4-places-plugin/trunk/panel-plugin/model_volumes.c
xfce4-places-plugin/trunk/panel-plugin/places.c
xfce4-places-plugin/trunk/panel-plugin/places.h
Log:
2007-04-06 Diego Ongaro <ongardie at gmail.com>
* Improved the headers mess
Modified: xfce4-places-plugin/trunk/ChangeLog
===================================================================
--- xfce4-places-plugin/trunk/ChangeLog 2007-04-06 16:16:13 UTC (rev 2675)
+++ xfce4-places-plugin/trunk/ChangeLog 2007-04-07 04:47:23 UTC (rev 2676)
@@ -4,6 +4,7 @@
(reading and display)
* Dropped unescape_uri.c
* Fixed bug 3030 (Places shows missing menu items)
+ * Improved the headers mess
2007-04-05 Diego Ongaro <ongardie at gmail.com>
Modified: xfce4-places-plugin/trunk/panel-plugin/Makefile.am
===================================================================
--- xfce4-places-plugin/trunk/panel-plugin/Makefile.am 2007-04-06 16:16:13 UTC (rev 2675)
+++ xfce4-places-plugin/trunk/panel-plugin/Makefile.am 2007-04-07 04:47:23 UTC (rev 2676)
@@ -10,10 +10,13 @@
model.h \
model_system.c \
model_system.h \
+ model_user.c \
+ model_user.h \
model_volumes.c \
- model_user.c
+ model_volumes.h
+
xfce4_places_plugin_CFLAGS = \
-I$(top_builddir) \
-I$(top_srcdir) \
Modified: xfce4-places-plugin/trunk/panel-plugin/model.c
===================================================================
--- xfce4-places-plugin/trunk/panel-plugin/model.c 2007-04-06 16:16:13 UTC (rev 2675)
+++ xfce4-places-plugin/trunk/panel-plugin/model.c 2007-04-07 04:47:23 UTC (rev 2676)
@@ -17,19 +17,21 @@
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
-#include "model_system.c"
-#include "model_volumes.c"
-#include "model_user.c"
+#include "model.h"
+#include "model_system.h"
+#include "model_volumes.h"
+#include "model_user.h"
-typedef struct
+#include <libxfce4util/libxfce4util.h>
+
+struct _Bookmarks
{
BookmarksSystem *system;
BookmarksVolumes *volumes;
BookmarksUser *user;
-} Bookmarks;
+};
-
-static Bookmarks*
+Bookmarks*
places_bookmarks_init()
{
DBG("initializing model");
@@ -45,30 +47,30 @@
return b;
}
-static void
+void
places_bookmarks_visit(Bookmarks *b,
gpointer pass_thru,
BOOKMARK_ITEM_FUNC(item_func),
BOOKMARK_SEPARATOR_FUNC(separator_func))
{
- places_bookmarks_system_visit(b->system, pass_thru, item_func, separator_func);
- places_bookmarks_volumes_visit(b->volumes, pass_thru, item_func, separator_func);
- separator_func(pass_thru);
- places_bookmarks_user_visit(b->user, pass_thru, item_func, separator_func);
+ places_bookmarks_system_visit (b->system, pass_thru, item_func, separator_func);
+ places_bookmarks_volumes_visit (b->volumes, pass_thru, item_func, separator_func);
+ separator_func (pass_thru);
+ places_bookmarks_user_visit (b->user, pass_thru, item_func, separator_func);
}
-static gboolean
+gboolean
places_bookmarks_changed(Bookmarks *b)
{
- // avoid short-circuit of || since changed() has side-effects
+ // try to avoid short-circuit of || since changed() has side-effects
gboolean changed = FALSE;
- changed = places_bookmarks_system_changed(b->system) || changed;
- changed = places_bookmarks_volumes_changed(b->volumes) || changed;
- changed = places_bookmarks_user_changed(b->user) || changed;
+ changed = places_bookmarks_system_changed(b->system) || changed;
+ changed = places_bookmarks_volumes_changed(b->volumes) || changed;
+ changed = places_bookmarks_user_changed(b->user) || changed;
return changed || TRUE;
}
-static void
+void
places_bookmarks_finalize(Bookmarks *b)
{
places_bookmarks_system_finalize(b->system);
Modified: xfce4-places-plugin/trunk/panel-plugin/model.h
===================================================================
--- xfce4-places-plugin/trunk/panel-plugin/model.h 2007-04-06 16:16:13 UTC (rev 2675)
+++ xfce4-places-plugin/trunk/panel-plugin/model.h 2007-04-07 04:47:23 UTC (rev 2676)
@@ -34,5 +34,23 @@
gpointer *data;
} BookmarkInfo;
+typedef struct _Bookmarks Bookmarks;
+
+Bookmarks*
+places_bookmarks_init();
+
+void
+places_bookmarks_visit(Bookmarks *b,
+ gpointer pass_thru,
+ BOOKMARK_ITEM_FUNC(item_func),
+ BOOKMARK_SEPARATOR_FUNC(separator_func));
+
+gboolean
+places_bookmarks_changed(Bookmarks *b);
+
+void
+places_bookmarks_finalize(Bookmarks *b);
+
+
#endif
// vim: ai et tabstop=4
Modified: xfce4-places-plugin/trunk/panel-plugin/model_system.c
===================================================================
--- xfce4-places-plugin/trunk/panel-plugin/model_system.c 2007-04-06 16:16:13 UTC (rev 2675)
+++ xfce4-places-plugin/trunk/panel-plugin/model_system.c 2007-04-07 04:47:23 UTC (rev 2676)
@@ -17,19 +17,20 @@
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
+#include "model_system.h"
#include "model.h"
-#include "model_system.h"
#include <libxfce4util/libxfce4util.h>
#include <string.h>
-#define check_existence data
+#define bookmarks_system_check_existence data
struct _BookmarksSystem
{
- GPtrArray *bookmarks;
+ GPtrArray *bookmarks;
};
-static BookmarksSystem*
+
+BookmarksSystem*
places_bookmarks_system_init()
{
BookmarksSystem *b = g_new0(BookmarksSystem, 1);
@@ -47,7 +48,7 @@
bookmark->uri = g_strdup(home_dir);
bookmark->icon = "gnome-fs-home";
bookmark->show = TRUE;
- bookmark->check_existence = NULL;
+ bookmark->bookmarks_system_check_existence = NULL;
g_ptr_array_add(b->bookmarks, bookmark);
// Trash
@@ -56,7 +57,7 @@
bookmark->uri = "trash:///";
bookmark->icon = "gnome-fs-trash-full";
bookmark->show = TRUE;
- bookmark->check_existence = NULL;
+ bookmark->bookmarks_system_check_existence = NULL;
g_ptr_array_add(b->bookmarks, bookmark);
// Desktop
@@ -65,7 +66,7 @@
bookmark->label = _("Desktop");
bookmark->icon = "gnome-fs-desktop";
bookmark->show = g_file_test(bookmark->uri, G_FILE_TEST_IS_DIR);
- bookmark->check_existence = (gpointer) 1;
+ bookmark->bookmarks_system_check_existence = (gpointer) 1;
g_ptr_array_add(b->bookmarks, bookmark);
// File System (/)
@@ -74,13 +75,13 @@
bookmark->uri = "/";
bookmark->icon = "gnome-dev-harddisk";
bookmark->show = TRUE;
- bookmark->check_existence = NULL;
+ bookmark->bookmarks_system_check_existence = NULL;
g_ptr_array_add(b->bookmarks, bookmark);
return b;
}
-static gboolean
+gboolean
places_bookmarks_system_changed(BookmarksSystem *b)
{
guint k;
@@ -89,7 +90,7 @@
for(k=0; k < b->bookmarks->len; k++){
bi = g_ptr_array_index(b->bookmarks, k);
- if(bi->check_existence && bi->show != g_file_test(bi->uri, G_FILE_TEST_IS_DIR)){
+ if(bi->bookmarks_system_check_existence && bi->show != g_file_test(bi->uri, G_FILE_TEST_IS_DIR)){
bi->show = !bi->show;
ret = TRUE;
}
@@ -98,7 +99,7 @@
return ret;
}
-static void
+void
places_bookmarks_system_visit(BookmarksSystem *b,
gpointer pass_thru,
BOOKMARK_ITEM_FUNC(item_func),
@@ -114,7 +115,7 @@
}
}
-static void
+void
places_bookmarks_system_finalize(BookmarksSystem *b)
{
g_ptr_array_free(b->bookmarks, TRUE);
@@ -125,7 +126,7 @@
* A bookmark with the same path as a system path should have the system icon.
* Such a bookmark with its default label should also use the system label.
*/
-static void
+void
places_bookmarks_system_bi_system_mod(BookmarksSystem *b, BookmarkInfo *other){
g_assert(b != NULL);
g_assert(other != NULL);
Modified: xfce4-places-plugin/trunk/panel-plugin/model_system.h
===================================================================
--- xfce4-places-plugin/trunk/panel-plugin/model_system.h 2007-04-06 16:16:13 UTC (rev 2675)
+++ xfce4-places-plugin/trunk/panel-plugin/model_system.h 2007-04-07 04:47:23 UTC (rev 2676)
@@ -20,8 +20,29 @@
#ifndef _XFCE_PANEL_PLACES_MODEL_SYSTEM_H
#define _XFCE_PANEL_PLACES_MODEL_SYSTEM_H
+#include "model.h"
+#include <glib.h>
+
typedef struct _BookmarksSystem BookmarksSystem;
-static void places_bookmarks_system_bi_system_mod(BookmarksSystem*, BookmarkInfo*);
+BookmarksSystem*
+places_bookmarks_system_init();
+
+void
+places_bookmarks_system_visit(BookmarksSystem *b,
+ gpointer pass_thru,
+ BOOKMARK_ITEM_FUNC(item_func),
+ BOOKMARK_SEPARATOR_FUNC(separator_func));
+
+gboolean
+places_bookmarks_system_changed(BookmarksSystem *b);
+
+void
+places_bookmarks_system_finalize(BookmarksSystem *b);
+
+void
+places_bookmarks_system_bi_system_mod(BookmarksSystem *b,
+ BookmarkInfo *other);
+
#endif
// vim: ai et tabstop=4
Modified: xfce4-places-plugin/trunk/panel-plugin/model_user.c
===================================================================
--- xfce4-places-plugin/trunk/panel-plugin/model_user.c 2007-04-06 16:16:13 UTC (rev 2675)
+++ xfce4-places-plugin/trunk/panel-plugin/model_user.c 2007-04-07 04:47:23 UTC (rev 2676)
@@ -17,30 +17,28 @@
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
+#include "model_system.h"
+#include "model_user.h"
#include "model.h"
-#include "model_system.h"
+
+#include <libxfce4util/libxfce4util.h>
#include <glib/gstdio.h>
-#define dir_exists(path) g_file_test(path, G_FILE_TEST_IS_DIR)
-typedef struct
+#define bookmarks_user_dir_exists(path) g_file_test(path, G_FILE_TEST_IS_DIR)
+
+struct _BookmarksUser
{
- GPtrArray *bookmarks;
- gchar *filename;
- time_t loaded;
+ GPtrArray *bookmarks;
+ gchar *filename;
+ time_t loaded;
- const gchar *home;
- gchar *trash;
- gchar *desktop;
- gchar *file_system;
+ const BookmarksSystem *system;
- BookmarksSystem *system;
+};
-} BookmarksUser;
+// internal use
-
-// internal
-
static void
places_bookmarks_user_reinit(BookmarksUser *b)
{
@@ -96,10 +94,10 @@
bi = g_new0(BookmarkInfo, 1);
bi->uri = path;
bi->label = name;
- bi->show = dir_exists(bi->uri);
+ bi->show = bookmarks_user_dir_exists(bi->uri);
bi->icon = g_strdup("gnome-fs-directory");
- places_bookmarks_system_bi_system_mod(b->system, bi);
+ places_bookmarks_system_bi_system_mod((BookmarksSystem*) b->system, bi);
g_ptr_array_add(b->bookmarks, bi);
}
@@ -116,12 +114,14 @@
return 0;
}
-// external
+// external interface
-static BookmarksUser*
-places_bookmarks_user_init(BookmarksSystem *system)
+BookmarksUser*
+places_bookmarks_user_init(const BookmarksSystem *system)
{
BookmarksUser *b = g_new0(BookmarksUser, 1);
+
+ g_assert(system != NULL);
b->system = system;
b->filename = xfce_get_homefile(".gtk-bookmarks", NULL);
@@ -132,7 +132,7 @@
return b;
}
-static gboolean
+gboolean
places_bookmarks_user_changed(BookmarksUser *b)
{
// see if the file has changed
@@ -153,7 +153,7 @@
for(k=0; k < b->bookmarks->len; k++){
bi = g_ptr_array_index(b->bookmarks, k);
- if(bi->show != dir_exists(bi->uri)){
+ if(bi->show != bookmarks_user_dir_exists(bi->uri)){
bi->show = !bi->show;
ret = TRUE;
}
@@ -162,7 +162,7 @@
return ret;
}
-static void
+void
places_bookmarks_user_visit(BookmarksUser *b,
gpointer pass_thru,
BOOKMARK_ITEM_FUNC(item_func),
@@ -178,7 +178,7 @@
}
}
-static void
+void
places_bookmarks_user_finalize(BookmarksUser *b)
{
g_ptr_array_free(b->bookmarks, TRUE);
@@ -186,4 +186,5 @@
g_free(b);
}
+
// vim: ai et tabstop=4
Modified: xfce4-places-plugin/trunk/panel-plugin/model_volumes.c
===================================================================
--- xfce4-places-plugin/trunk/panel-plugin/model_volumes.c 2007-04-06 16:16:13 UTC (rev 2675)
+++ xfce4-places-plugin/trunk/panel-plugin/model_volumes.c 2007-04-07 04:47:23 UTC (rev 2676)
@@ -18,29 +18,36 @@
*/
#include "model.h"
+#include "model_volumes.h"
#include <thunar-vfs/thunar-vfs.h>
+#include <libxfce4util/libxfce4util.h>
-typedef struct
+struct _BookmarksVolumes
{
GPtrArray *bookmarks;
gboolean changed;
ThunarVfsVolumeManager *volume_manager;
-} BookmarksVolumes;
+};
-static gboolean places_show_volume(ThunarVfsVolume *volume);
-static void places_bookmarks_volumes_add(BookmarksVolumes *b, const GList *volumes);
+static gboolean
+places_bookmarks_volumes_show_volume(ThunarVfsVolume *volume);
+static void
+places_bookmarks_volumes_add(BookmarksVolumes *b, const GList *volumes);
+
/********** ThunarVFS Callbacks **********/
-static void
-places_cb_volume_changed(ThunarVfsVolume *volume, BookmarksVolumes *b){
+void
+places_bookmarks_volumes_cb_changed(ThunarVfsVolume *volume,
+ BookmarksVolumes *b)
+{
DBG("volume changed");
// unfortunately there tends to be like 3 of these in a row
guint k;
- if(places_show_volume(volume)){
+ if(places_bookmarks_volumes_show_volume(volume)){
// make sure it's in the array
for(k = 0; k < b->bookmarks->len; k++){
@@ -75,15 +82,21 @@
}
}
-static void
-places_cb_volumes_added(ThunarVfsVolumeManager *volume_manager, const GList *volumes, BookmarksVolumes *b){
+void
+places_bookmarks_volumes_cb_added(ThunarVfsVolumeManager *volume_manager,
+ const GList *volumes,
+ BookmarksVolumes *b)
+{
DBG("volumes added");
places_bookmarks_volumes_add(b, volumes);
b->changed = TRUE;
}
-static void
-places_cb_volumes_removed(ThunarVfsVolumeManager *volume_manager, const GList *volumes, BookmarksVolumes *b){
+void
+places_bookmarks_volumes_cb_removed(ThunarVfsVolumeManager *volume_manager,
+ const GList *volumes,
+ BookmarksVolumes *b)
+{
DBG("volumes removed");
GList *vol_iter;
@@ -116,7 +129,7 @@
// internal
static gboolean
-places_show_volume(ThunarVfsVolume *volume){
+places_bookmarks_volumes_show_volume(ThunarVfsVolume *volume){
DBG("Volume: %s [mounted=%x removable=%x present=%x]", thunar_vfs_volume_get_name(volume),
thunar_vfs_volume_is_mounted(volume),
@@ -140,9 +153,9 @@
volume = THUNAR_VFS_VOLUME(volumes->data);
g_signal_connect (volume, "changed",
- G_CALLBACK(places_cb_volume_changed), b);
+ G_CALLBACK(places_bookmarks_volumes_cb_changed), b);
- if(places_show_volume(volume)){
+ if(places_bookmarks_volumes_show_volume(volume)){
g_object_ref(volume);
@@ -161,7 +174,7 @@
// external
-static BookmarksVolumes*
+BookmarksVolumes*
places_bookmarks_volumes_init()
{
DBG("init");
@@ -176,17 +189,17 @@
places_bookmarks_volumes_add(b, thunar_vfs_volume_manager_get_volumes(b->volume_manager));
g_signal_connect (b->volume_manager, "volumes-added",
- G_CALLBACK (places_cb_volumes_added), b);
+ G_CALLBACK (places_bookmarks_volumes_cb_added), b);
g_signal_connect (b->volume_manager, "volumes-removed",
- G_CALLBACK (places_cb_volumes_removed), b);
+ G_CALLBACK (places_bookmarks_volumes_cb_removed), b);
DBG("done");
return b;
}
-static void
+void
places_bookmarks_volumes_finalize(BookmarksVolumes *b)
{
guint k;
@@ -204,7 +217,7 @@
g_free(b);
}
-static gboolean
+gboolean
places_bookmarks_volumes_changed(BookmarksVolumes *b)
{
if(b->changed){
@@ -215,7 +228,7 @@
}
}
-static void
+void
places_bookmarks_volumes_visit(BookmarksVolumes *b,
gpointer pass_thru,
BOOKMARK_ITEM_FUNC(item_func),
Modified: xfce4-places-plugin/trunk/panel-plugin/places.c
===================================================================
--- xfce4-places-plugin/trunk/panel-plugin/places.c 2007-04-06 16:16:13 UTC (rev 2675)
+++ xfce4-places-plugin/trunk/panel-plugin/places.c 2007-04-07 04:47:23 UTC (rev 2676)
@@ -29,8 +29,8 @@
#include <libxfce4panel/xfce-panel-convenience.h>
#include <libxfcegui4/libxfcegui4.h>
-#include "model.c"
#include "places.h"
+#include "model.h"
#define PLUGIN_NAME "places"
Modified: xfce4-places-plugin/trunk/panel-plugin/places.h
===================================================================
--- xfce4-places-plugin/trunk/panel-plugin/places.h 2007-04-06 16:16:13 UTC (rev 2675)
+++ xfce4-places-plugin/trunk/panel-plugin/places.h 2007-04-07 04:47:23 UTC (rev 2676)
@@ -20,6 +20,8 @@
#ifndef _XFCE_PANEL_PLACES_H
#define _XFCE_PANEL_PLACES_H
+#include <libxfce4panel/xfce-panel-plugin.h>
+
typedef struct
{
// plugin
@@ -58,6 +60,5 @@
static gboolean places_cb_button_act(GtkWidget*, GdkEventButton*, gpointer);
static void places_cb_free_data(XfcePanelPlugin*, PlacesData*);
-
#endif
// vim: ai et tabstop=4
More information about the Goodies-commits
mailing list