/* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 8; tab-width: 8 -*- */ /* * nautilus-application: main Nautilus application class. * * Copyright (C) 2000 Red Hat, Inc. * Copyright (C) 2010 Cosimo Cecchi * * Nautilus is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation; either version 2 of the * License, or (at your option) any later version. * * Nautilus is distributed in the hope that it will be useful, but * WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * General Public License for more details. * * You should have received a copy of the GNU General Public * License along with this program; if not, see . */ #ifndef __NAUTILUS_APPLICATION_H__ #define __NAUTILUS_APPLICATION_H__ #include #include #include #include "nautilus-bookmark-list.h" #include "nautilus-progress-ui-handler.h" #include "nautilus-window.h" #define NAUTILUS_DESKTOP_ICON_VIEW_IID "OAFIID:Nautilus_File_Manager_Desktop_Canvas_View" #define NAUTILUS_TYPE_APPLICATION nautilus_application_get_type() #define NAUTILUS_APPLICATION(obj) \ (G_TYPE_CHECK_INSTANCE_CAST ((obj), NAUTILUS_TYPE_APPLICATION, NautilusApplication)) #define NAUTILUS_APPLICATION_CLASS(klass) \ (G_TYPE_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_APPLICATION, NautilusApplicationClass)) #define NAUTILUS_IS_APPLICATION(obj) \ (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NAUTILUS_TYPE_APPLICATION)) #define NAUTILUS_IS_APPLICATION_CLASS(klass) \ (G_TYPE_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_APPLICATION)) #define NAUTILUS_APPLICATION_GET_CLASS(obj) \ (G_TYPE_INSTANCE_GET_CLASS ((obj), NAUTILUS_TYPE_APPLICATION, NautilusApplicationClass)) typedef struct _NautilusApplicationPriv NautilusApplicationPriv; typedef struct { GtkApplication parent; NautilusApplicationPriv *priv; } NautilusApplication; typedef struct { GtkApplicationClass parent_class; } NautilusApplicationClass; GType nautilus_application_get_type (void); NautilusApplication * nautilus_application_new (void); NautilusWindow * nautilus_application_create_window (NautilusApplication *application, GdkScreen *screen); void nautilus_application_add_accelerator (GApplication *app, const gchar *action_name, const gchar *accel); GList * nautilus_application_get_windows (NautilusApplication *application); void nautilus_application_open_location (NautilusApplication *application, GFile *location, GFile *selection, const char *startup_id); NautilusBookmarkList * nautilus_application_get_bookmarks (NautilusApplication *application); void nautilus_application_edit_bookmarks (NautilusApplication *application, NautilusWindow *window); GtkWidget * nautilus_application_connect_server (NautilusApplication *application, NautilusWindow *window); NautilusProgressUIHandler * nautilus_application_get_progress_ui_handler (NautilusApplication *application); #endif /* __NAUTILUS_APPLICATION_H__ */