AbiWidget Header
From AbiWiki
AbiWidgetHeader
The header file abiwidget.h, shows all the methods and signals currently, (as of January 27th, 2007), available to AbiWidget.
<verbatim> /* The AbiWord Widget
- Copyright (C) 2001 AbiSource, Inc.
- Copyright (C) 2001,2002 Dom Lachowicz <cinamod@hotmail.com>
- Copyright (C) 2002 Martin Sevior <msevior@physics.unimelb.edu.au>
- This program 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.
- This program 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, write to the Free Software
- Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
- 02111-1307, USA.
- /
- ifndef ABI_WIDGET_H
- define ABI_WIDGET_H
- include <gtk/gtk.h>
- include <gsf/gsf-input.h>
- include <gsf/gsf-output.h>
- ifdef HAVE_BONOBO
- include <libbonoboui.h>
- include <bonobo/bonobo-macros.h>
- include <bonobo/bonobo-object.h>
- endif
G_BEGIN_DECLS
- define ABI_TYPE_WIDGET (abi_widget_get_type ())
- define ABI_WIDGET(obj) (GTK_CHECK_CAST((obj), ABI_TYPE_WIDGET, AbiWidget))
- define IS_ABI_WIDGET(obj) (GTK_CHECK_TYPE((obj), ABI_TYPE_WIDGET))
- define IS_ABI_WIDGET_CLASS(k) (GTK_CHECK_CLASS_TYPE ((k), ABI_TYPE_WIDGET))
- define ABI_WIDGET_CLASS(k) (GTK_CHECK_CLASS_CAST ((k), ABI_TYPE_WIDGET, AbiWidgetClass))
/* forward declarations */ typedef struct _AbiWidget AbiWidget; typedef struct _AbiWidgetClass AbiWidgetClass; typedef struct _AbiPrivData AbiPrivData;
/*
- These functions basically just marshall back their arguments into
- the AbiWord application and return a boolean
- /
typedef gboolean (*Abi_EditMethod) (AbiWidget *, const char *, gint32, gint32); typedef gboolean (*Abi_Void__Bool_EditMethod) (AbiWidget *); typedef gboolean (*Abi_Int_Int__Bool_EditMethod) (AbiWidget *, gint32, gint32); typedef gboolean (*Abi_CharPtr__Bool_EditMethod) (AbiWidget *, const char *);
/*
- Only here for completeness in that that we might want to
- add signals (such as "saved") later
- /
typedef gboolean (*AbiSignal) (AbiWidget *, gpointer closure);
struct _AbiWidget { GtkBin bin; GtkWidget * child; /* private instance data */ AbiPrivData * priv; };
struct _AbiWidgetClass { GtkBinClass parent_class;
/* invoke any edit method based on its name */ gboolean (*invoke) (AbiWidget *, const char * mthdName); gboolean (*invoke_ex) (AbiWidget *, const char * mthdName, const char * data, gint32 x, gint32 y);
/* a list of some of our more useful edit methods */ Abi_Void__Bool_EditMethod align_center; Abi_Void__Bool_EditMethod align_justify; Abi_Void__Bool_EditMethod align_left; Abi_Void__Bool_EditMethod align_right;
Abi_Void__Bool_EditMethod copy; Abi_Void__Bool_EditMethod cut; Abi_Void__Bool_EditMethod paste; Abi_Void__Bool_EditMethod paste_special; Abi_Void__Bool_EditMethod select_all; Abi_Void__Bool_EditMethod select_block; Abi_Void__Bool_EditMethod select_line; Abi_Void__Bool_EditMethod select_word;
Abi_Void__Bool_EditMethod undo; Abi_Void__Bool_EditMethod redo;
Abi_CharPtr__Bool_EditMethod insert_data; Abi_Void__Bool_EditMethod insert_space;
Abi_Void__Bool_EditMethod delete_bob; Abi_Void__Bool_EditMethod delete_bod; Abi_Void__Bool_EditMethod delete_bol; Abi_Void__Bool_EditMethod delete_bow; Abi_Void__Bool_EditMethod delete_eob; Abi_Void__Bool_EditMethod delete_eod; Abi_Void__Bool_EditMethod delete_eol; Abi_Void__Bool_EditMethod delete_eow; Abi_Void__Bool_EditMethod delete_left; Abi_Void__Bool_EditMethod delete_right;
Abi_Void__Bool_EditMethod edit_header; Abi_Void__Bool_EditMethod edit_footer;
Abi_Void__Bool_EditMethod file_open; Abi_Void__Bool_EditMethod file_save;
Abi_Void__Bool_EditMethod remove_header; Abi_Void__Bool_EditMethod remove_footer;
Abi_Void__Bool_EditMethod save_immediate;
Abi_Void__Bool_EditMethod select_bob; Abi_Void__Bool_EditMethod select_bod; Abi_Void__Bool_EditMethod select_bol; Abi_Void__Bool_EditMethod select_bow; Abi_Void__Bool_EditMethod select_eob; Abi_Void__Bool_EditMethod select_eod; Abi_Void__Bool_EditMethod select_eol; Abi_Void__Bool_EditMethod select_eow; Abi_Void__Bool_EditMethod select_left; Abi_Void__Bool_EditMethod select_next_line; Abi_Void__Bool_EditMethod select_page_down; Abi_Void__Bool_EditMethod select_page_up; Abi_Void__Bool_EditMethod select_prev_line; Abi_Void__Bool_EditMethod select_right; Abi_Void__Bool_EditMethod select_screen_down; Abi_Void__Bool_EditMethod select_screen_up; Abi_Int_Int__Bool_EditMethod select_to_xy;
Abi_Void__Bool_EditMethod toggle_bold; Abi_Void__Bool_EditMethod toggle_underline; Abi_Void__Bool_EditMethod toggle_bottomline; Abi_Void__Bool_EditMethod toggle_insert_mode; Abi_Void__Bool_EditMethod toggle_italic; Abi_Void__Bool_EditMethod toggle_overline; Abi_Void__Bool_EditMethod toggle_plain; Abi_Void__Bool_EditMethod toggle_strike; Abi_Void__Bool_EditMethod toggle_sub; Abi_Void__Bool_EditMethod toggle_super; Abi_Void__Bool_EditMethod toggle_topline; Abi_Void__Bool_EditMethod toggle_unindent;
Abi_Void__Bool_EditMethod view_formatting_marks; Abi_Void__Bool_EditMethod view_print_layout; Abi_Void__Bool_EditMethod view_normal_layout; Abi_Void__Bool_EditMethod view_online_layout;
Abi_Void__Bool_EditMethod moveto_bob; Abi_Void__Bool_EditMethod moveto_bod; Abi_Void__Bool_EditMethod moveto_bol; Abi_Void__Bool_EditMethod moveto_bop; Abi_Void__Bool_EditMethod moveto_bow; Abi_Void__Bool_EditMethod moveto_eob; Abi_Void__Bool_EditMethod moveto_eod; Abi_Void__Bool_EditMethod moveto_eol; Abi_Void__Bool_EditMethod moveto_eop; Abi_Void__Bool_EditMethod moveto_eow; Abi_Void__Bool_EditMethod moveto_left; Abi_Void__Bool_EditMethod moveto_next_line; Abi_Void__Bool_EditMethod moveto_next_page; Abi_Void__Bool_EditMethod moveto_next_screen; Abi_Void__Bool_EditMethod moveto_prev_line; Abi_Void__Bool_EditMethod moveto_prev_page; Abi_Void__Bool_EditMethod moveto_prev_screen; Abi_Void__Bool_EditMethod moveto_right; Abi_Int_Int__Bool_EditMethod moveto_to_xy;
Abi_Void__Bool_EditMethod zoom_100; Abi_Void__Bool_EditMethod zoom_200; Abi_Void__Bool_EditMethod zoom_50; Abi_Void__Bool_EditMethod zoom_75; Abi_Void__Bool_EditMethod zoom_whole; Abi_Void__Bool_EditMethod zoom_width;
Abi_EditMethod em_pad[20];
/* signals */ void (* signal_bold) (AbiWidget * widget, gboolean value); void (* signal_italic) (AbiWidget * widget, gboolean value); void (* signal_underline) (AbiWidget * widget, gboolean value); void (* signal_overline) (AbiWidget * widget, gboolean value); void (* signal_line_through) (AbiWidget * widget, gboolean value); void (* signal_topline) (AbiWidget * widget, gboolean value); void (* signal_bottomline) (AbiWidget * widget, gboolean value); void (* signal_superscript) (AbiWidget * widget, gboolean value); void (* signal_subscript) (AbiWidget * widget, gboolean value); void (* signal_font_size) (AbiWidget * widget, double value); void (* signal_font_family) (AbiWidget * widget, const char * value); void (* signal_can_undo) (AbiWidget * widget, gboolean value); void (* signal_can_redo) (AbiWidget * widget, gboolean value); void (* signal_is_dirty) (AbiWidget * widget, gboolean value); void (* signal_left_align) (AbiWidget * widget, gboolean value); void (* signal_right_align) (AbiWidget * widget, gboolean value); void (* signal_center_align) (AbiWidget * widget, gboolean value); void (* signal_justify_align) (AbiWidget * widget, gboolean value); void (* signal_style_name) (AbiWidget * widget, const char * value); void (* signal_text_selected) (AbiWidget * widget, gboolean value); void (* signal_image_selected) (AbiWidget * widget, gboolean value); void (* signal_selection_cleared) (AbiWidget * widget, gboolean value); void (* signal_enter_selection) (AbiWidget * widget, gboolean value); void (* signal_leave_selection) (AbiWidget * widget, gboolean value);
AbiSignal sig_pad[20];
};
/* the public API */ GtkWidget * abi_widget_new (void); GtkWidget * abi_widget_new_with_file (const gchar * file); GtkType abi_widget_get_type (void); void abi_widget_turn_on_cursor(AbiWidget * widget);
gboolean abi_widget_invoke(AbiWidget * w, const char * mthdName); gboolean abi_widget_invoke_ex (AbiWidget * w, const char *mthdName, const char * data, gint32 x, gint32 y);
void abi_widget_draw(AbiWidget * w);
gboolean abi_widget_load_file(AbiWidget * abi, const char * pszFile);
gboolean abi_widget_load_file_from_gsf(AbiWidget * abi, GsfInput * input);
gboolean abi_widget_save ( AbiWidget * w, const char * fname ); gboolean abi_widget_save_ext ( AbiWidget * w, const char * fname, const char * extension ) ; gboolean abi_widget_save_with_type ( AbiWidget * w, const char * fname, const char * extension_or_mime_type );
gboolean abi_widget_save_to_gsf ( AbiWidget * w, GsfOutput * output, const char * extension_or_mime_type );
void abi_widget_map_to_screen(AbiWidget * abi); void abi_widget_set_property(GObject *object, guint arg_id, const GValue *arg, GParamSpec *pspec); void abi_widget_get_property(GObject *object, guint arg_id, GValue *arg, GParamSpec *pspec);
/* bindings to our more useful edit methods */ gboolean abi_widget_align_center (AbiWidget * w); gboolean abi_widget_align_justify (AbiWidget * w); gboolean abi_widget_align_left (AbiWidget * w); gboolean abi_widget_align_right (AbiWidget * w);
gboolean abi_widget_copy (AbiWidget * w); gboolean abi_widget_cut (AbiWidget * w); gboolean abi_widget_paste (AbiWidget * w); gboolean abi_widget_paste_special (AbiWidget * w); gboolean abi_widget_select_all (AbiWidget * w); gboolean abi_widget_select_block (AbiWidget * w); gboolean abi_widget_select_line (AbiWidget * w); gboolean abi_widget_select_word (AbiWidget * w);
gboolean abi_widget_undo (AbiWidget * w); gboolean abi_widget_redo (AbiWidget * w);
gboolean abi_widget_insert_data (AbiWidget * w, const char * str); gboolean abi_widget_insert_space (AbiWidget * w);
gboolean abi_widget_delete_bob (AbiWidget * w); gboolean abi_widget_delete_bod (AbiWidget * w); gboolean abi_widget_delete_bol (AbiWidget * w); gboolean abi_widget_delete_bow (AbiWidget * w); gboolean abi_widget_delete_eob (AbiWidget * w); gboolean abi_widget_delete_eod (AbiWidget * w); gboolean abi_widget_delete_eol (AbiWidget * w); gboolean abi_widget_delete_eow (AbiWidget * w); gboolean abi_widget_delete_left (AbiWidget * w); gboolean abi_widget_delete_right (AbiWidget * w);
gboolean abi_widget_edit_header (AbiWidget * w); gboolean abi_widget_edit_footer (AbiWidget * w);
gboolean abi_widget_file_open (AbiWidget * w); gboolean abi_widget_file_save (AbiWidget * w);
gboolean abi_widget_remove_header (AbiWidget * w); gboolean abi_widget_remove_footer (AbiWidget * w);
gboolean abi_widget_save_immediate (AbiWidget * w);
gboolean abi_widget_select_bob (AbiWidget * w); gboolean abi_widget_select_bod (AbiWidget * w); gboolean abi_widget_select_bol (AbiWidget * w); gboolean abi_widget_select_bow (AbiWidget * w); gboolean abi_widget_select_eob (AbiWidget * w); gboolean abi_widget_select_eod (AbiWidget * w); gboolean abi_widget_select_eol (AbiWidget * w); gboolean abi_widget_select_eow (AbiWidget * w); gboolean abi_widget_select_left (AbiWidget * w); gboolean abi_widget_select_next_line (AbiWidget * w); gboolean abi_widget_select_page_down (AbiWidget * w); gboolean abi_widget_select_page_up (AbiWidget * w); gboolean abi_widget_select_prev_line (AbiWidget * w); gboolean abi_widget_select_right (AbiWidget * w); gboolean abi_widget_select_screen_down (AbiWidget * w); gboolean abi_widget_select_screen_up (AbiWidget * w); gboolean abi_widget_select_to_xy (AbiWidget * w, gint32 x, gint32 y);
gboolean abi_widget_toggle_bold (AbiWidget * w); gboolean abi_widget_toggle_underline (AbiWidget * w); gboolean abi_widget_toggle_bottomline (AbiWidget * w); gboolean abi_widget_toggle_insert_mode (AbiWidget * w); gboolean abi_widget_toggle_italic (AbiWidget * w); gboolean abi_widget_toggle_overline (AbiWidget * w); gboolean abi_widget_toggle_plain (AbiWidget * w); gboolean abi_widget_toggle_strike (AbiWidget * w); gboolean abi_widget_toggle_sub (AbiWidget * w); gboolean abi_widget_toggle_super (AbiWidget * w); gboolean abi_widget_toggle_topline (AbiWidget * w); gboolean abi_widget_toggle_unindent (AbiWidget * w);
gboolean abi_widget_view_formatting_marks (AbiWidget * w); gboolean abi_widget_view_print_layout (AbiWidget * w); gboolean abi_widget_view_normal_layout (AbiWidget * w); gboolean abi_widget_view_online_layout (AbiWidget * w);
gboolean abi_widget_moveto_bob (AbiWidget * w); gboolean abi_widget_moveto_bod (AbiWidget * w); gboolean abi_widget_moveto_bol (AbiWidget * w); gboolean abi_widget_moveto_bop (AbiWidget * w); gboolean abi_widget_moveto_bow (AbiWidget * w); gboolean abi_widget_moveto_eob (AbiWidget * w); gboolean abi_widget_moveto_eod (AbiWidget * w); gboolean abi_widget_moveto_eol (AbiWidget * w); gboolean abi_widget_moveto_eop (AbiWidget * w); gboolean abi_widget_moveto_eow (AbiWidget * w); gboolean abi_widget_moveto_left (AbiWidget * w); gboolean abi_widget_moveto_next_line (AbiWidget * w); gboolean abi_widget_moveto_next_page (AbiWidget * w); gboolean abi_widget_moveto_next_screen (AbiWidget * w); gboolean abi_widget_moveto_prev_line (AbiWidget * w); gboolean abi_widget_moveto_prev_page (AbiWidget * w); gboolean abi_widget_moveto_prev_screen (AbiWidget * w); gboolean abi_widget_moveto_right (AbiWidget * w); gboolean abi_widget_moveto_to_xy (AbiWidget * w, gint32 x, gint32 y);
gboolean abi_widget_zoom_100 (AbiWidget * w); gboolean abi_widget_zoom_200 (AbiWidget * w); gboolean abi_widget_zoom_50 (AbiWidget * w); gboolean abi_widget_zoom_75 (AbiWidget * w); gboolean abi_widget_zoom_whole (AbiWidget * w); gboolean abi_widget_zoom_width (AbiWidget * w);
gboolean abi_widget_set_show_margin (AbiWidget * w, gboolean b); gboolean abi_widget_get_show_margin (AbiWidget * w);
gboolean abi_widget_set_word_selections (AbiWidget * w, gboolean b); gboolean abi_widget_get_word_selections (AbiWidget * w);
gchar * abi_widget_get_content (AbiWidget * w, gchar * mimetype, gint* iLength); gchar * abi_widget_get_selection (AbiWidget * w, gchar * mimetype, gint* iLength);
gboolean abi_widget_insert_table(AbiWidget * w, gint32 rows, gint32 cols); gboolean abi_widget_get_mouse_pos(AbiWidget * w, gint32 * x, gint32 * y);
- ifdef HAVE_BONOBO
void abi_widget_set_Bonobo_uic(AbiWidget * abi,BonoboUIComponent * uic); BonoboUIComponent * abi_widget_get_Bonobo_uic(AbiWidget * abi);
- endif
- ifdef ABIWORD_INTERNAL
/* these functions are used by abiword internally and really arent exported to the rest of the world */ XAP_Frame * abi_widget_get_frame ( AbiWidget * w ) ;
- endif
G_END_DECLS
- endif /* ABI_WIDGET_H */
</verbatim>
Contributors
- Main.MartinSevior - 04 Jan 2007