#include #include module Nautilus { enum TruthValue { V_UNKNOWN, V_FALSE, V_TRUE }; struct NavigationRequestInfo { string requested_uri; TruthValue new_window_default, new_window_suggested, new_window_enforced; }; struct NavigationInfo { string requested_uri, actual_uri, content_type; string referring_uri, actual_referring_uri, referring_content_type; Object content_view; boolean self_originated; }; struct SelectionInfo { sequence selected_uris; Object content_view; boolean self_originated; }; struct SelectionRequestInfo { sequence selected_uris; }; struct StatusRequestInfo { string status_string; }; enum ProgressType { PROGRESS_DONE_OK, PROGRESS_DONE_ERROR, PROGRESS_UNDERWAY }; struct ProgressRequestInfo { ProgressType type; double amount; }; interface View : ::Bonobo::Unknown { void save_state(in string config_path); void load_state(in string config_path); oneway void notify_location_change(in NavigationInfo navinfo); oneway void show_properties(); // Requests that the client show its properties oneway void notify_selection_change(in SelectionInfo selinfo); oneway void stop_location_change(); }; interface MetaView : View { }; interface ContentView : View { }; interface ViewWindow; interface ViewFrame : ::Bonobo::Unknown { readonly attribute ViewWindow main_window; oneway void request_status_change(in StatusRequestInfo statinfo); oneway void request_location_change(in NavigationRequestInfo navinfo); oneway void request_selection_change(in SelectionRequestInfo selinfo); oneway void request_progress_change(in ProgressRequestInfo proginfo); }; interface MetaViewFrame : ViewFrame { }; interface ContentViewFrame : ViewFrame { }; interface ViewWindow : ::Bonobo::Unknown { }; };