[Mono-bugs] [Bug 338209] New: The gapi tool can't parse the abiwidget.h header file

bugzilla_noreply at novell.com bugzilla_noreply at novell.com
Wed Oct 31 13:11:49 EDT 2007


https://bugzilla.novell.com/show_bug.cgi?id=338209

           Summary: The gapi tool can't parse the abiwidget.h header file
           Product: Mono: Tools
           Version: unspecified
          Platform: x86-64
        OS/Version: Ubuntu
            Status: NEW
          Severity: Enhancement
          Priority: P5 - None
         Component: tools
        AssignedTo: mono-bugs at ximian.com
        ReportedBy: f at rtfs.org
         QAContact: mono-bugs at ximian.com
          Found By: ---


Created an attachment (id=181539)
 --> (https://bugzilla.novell.com/attachment.cgi?id=181539)
The sources and output of the gapi parser.

I tried to make a sharp library wrapper for abiword with gapi.
But unfortunately the gapi parser can't parse the header file
correctly. It seems it does not recognoize the _AbiWidget structure.

I append the complete output of the code generation and the appended tar
conains the source and the generated files. The abiword version used was the
latest SVN revision 22269.

sturm at krypton:~/development/abiword/abiword-sharp$ make
gapi2-parser sources/abiword-sharp.sources
<file ../abiword/src/wp/ap/unix/abiwidget.h> 
  struct _AbiWidget    {
    GtkBin bin;
    GtkWidget * child;
    AbiPrivData * priv;
  };  
  struct  _AbiWidgetClass {
    GtkBinClass parent_class;
    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_whole;
    Abi_Void__Bool_EditMethod zoom_width;
    Abi_EditMethod em_pad[20];
    AbiSignal sig_pad[20];
  };
  // widget creation functions   GtkWidget * abi_widget_new (void);
  // file handing functions   gboolean abi_widget_file_open (AbiWidget * w);
  // paragraph modification functions   gboolean abi_widget_align_center
(AbiWidget * w);
  // copy & paste functions   gboolean abi_widget_copy (AbiWidget * w);
  // undo/redo   gboolean abi_widget_undo (AbiWidget * w);
  // text insertion and removal   gboolean abi_widget_insert_data (AbiWidget *
w, const char * str);
  // selection functions   gboolean abi_widget_select_bob (AbiWidget * w);
  // text modification functions   gboolean abi_widget_toggle_bold (AbiWidget *
w);
  // cursor functions   gboolean abi_widget_moveto_bob (AbiWidget * w);
  // search functions   void abi_widget_set_find_string (AbiWidget * w, gchar *
search_str);
  // document/page functions   guint32 abi_widget_get_page_count(AbiWidget *
w);
  // view functions   gboolean abi_widget_view_formatting_marks (AbiWidget *
w);
  // header/footer functions   gboolean abi_widget_remove_header (AbiWidget *
w);
  // table functions   gboolean abi_widget_insert_table(AbiWidget * w, gint32
rows, gint32 cols);
  // font/text functions   gboolean abi_widget_set_font_name(AbiWidget * w,
gchar * szFontName);
  const gchar** abi_widget_get_font_names (AbiWidget * w);
  // style functions   gboolean abi_widget_set_style(AbiWidget * w, char*
szName);
  // image functions   gboolean abi_widget_insert_image(AbiWidget * w, char*
szFile, gboolean positioned);
  // generic editmethod invocation hooks   gboolean   
abi_widget_invoke(AbiWidget * w, const char * mthdName);    
structs: 0  enums:   callbacks: 5
funcs: 2 types: 1  classes: 1
props:  childprops:  signals: 

cp generated/libabiword-api.raw generated/libabiword-api.xml
gapi2-fixup --api=generated/libabiword-api.xml
--metadata=sources/abiword.metadata --symbols=sources/abiword-symbols.xml
gapi2-codegen --outdir=generated --generate generated/libabiword-api.xml
Name: output Type: GsfOutput* in abi_widget_save_to_gsf  in method SaveToGsf in
type Abiword.AbiWidget
rettype: BonoboUIComponent* in method Get_BonoboUic in type Abiword.AbiWidget
Name: uic Type: BonoboUIComponent* in abi_widget_set_Bonobo_uic  in method
Set_BonoboUic in type Abiword.AbiWidget
Name: input Type: GsfInput* in abi_widget_load_file_from_gsf  in method
LoadFileFromGsf in type Abiword.AbiWidget
rettype: XAP_Frame* in method GetFrame in type Abiword.AbiWidget

Generation Summary:
  Enums: 0  Structs: 0  Boxed: 0  Opaques: 1  Interfaces: 0  Objects: 1 
Callbacks: 5
  Properties: 0  Signals: 0  Methods: 101  Constructors: 0  Throttled: 3
Total Nodes: 111

mcs -pkg:gtk-sharp-2.0 -target:library -out:abiword-sharp.dll generated/*.cs
generated/AbiWidget.cs(17,41): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(26,41): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(35,35): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(44,43): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(53,43): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(62,47): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(71,40): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(89,41): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(98,41): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(107,49): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(116,41): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(125,41): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(134,42): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(143,41): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(163,41): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(172,41): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(181,44): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(190,45): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(210,41): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(219,41): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(228,42): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(237,49): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(247,46): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(257,36): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(266,47): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(275,42): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(284,43): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(293,49): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(302,43): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(311,43): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(320,42): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(329,41): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(338,43): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(347,41): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(356,42): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(365,41): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(374,49): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(394,50): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(403,43): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(412,34): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(421,41): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(430,47): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(439,46): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(448,44): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(468,42): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(477,49): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(486,45): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(495,40): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(504,41): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(513,41): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(522,42): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(531,41): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(540,45): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(549,46): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(558,41): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(569,40): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(580,47): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(589,42): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(601,35): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(624,41): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(633,49): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(642,41): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(651,47): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(660,41): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(671,40): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(682,41): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(691,41): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(700,41): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(709,45): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(725,41): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(734,50): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(743,47): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(752,44): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(763,44): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(774,47): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(783,41): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(792,20): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(799,44): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(808,48): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(817,44): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(826,40): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(835,47): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(844,48): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(853,46): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(862,43): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(871,47): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(880,30): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(887,29): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(894,41): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(903,43): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(912,44): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(921,44): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(930,41): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(81,33): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(153,51): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(384,47): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(458,51): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
generated/AbiWidget.cs(614,52): error CS0103: The name `Handle' does not exist
in the context of `Abiword.AbiWidget'
Compilation failed: 98 error(s), 0 warnings
make: *** [compile] Fehler 1


-- 
Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.


More information about the mono-bugs mailing list