nul
16-02-2005, 13:48
Ich versteh das ganze ueberhaupt nicht. Ich meine, es kompiliert und laesst sich auch korrekt ausfuehren. Es handelt sich dabei um ff. Part meines Codes:
int
main( int argc, char** argv )
{
GtkVBox* vertical_box;
GtkTextTagTable* tags;
GtkTextView* text_view;
GtkItemFactory* items;
GtkAccelGroup* accl;
GtkScrolledWindow* scroll_window;
GtkAdjustment* horizontal_adj;
GtkAdjustment* vertical_adj;
GtkWidget* menu_bar;
gint menu_size = sizeof(menu)/sizeof( menu[0] );
gtk_init( &argc, &argv );
main_window = g_object_new( GTK_TYPE_WINDOW,
"title", "editor",
"default-width", 350,
"default-height", 400,
NULL);
g_signal_connect( main_window,
"delete_event",
G_CALLBACK(editor_delete_event),
NULL );
accl = gtk_accel_group_new();
items = gtk_item_factory_new( GTK_TYPE_MENU_BAR, "<main>", accl );
gtk_item_factory_create_items( items, menu_size, menu, NULL );
menu_bar = gtk_item_factory_get_widget( items, "<main>" );
tags = gtk_text_tag_table_new();
text_buffer = gtk_text_buffer_new(tags);
text_view =
(GtkTextView*)gtk_text_view_new_with_buffer( text_buffer );
horizontal_adj = gtk_adjustment_new( 0.0,
0.0,
100.0,
1.0,
1.0,
450.0 ); /* 402 */
vertical_adj = gtk_adjustment_new( 0.0,
0.0,
100.0,
1.0,
1.0,
350.0 ); /* 408 */
scroll_window = gtk_scrolled_window_new( horizontal_adj,
vertical_adj ); /* 410 */
gtk_scrolled_window_add_with_viewport( scroll_window,
(GtkWidget)text_view );/* 412 */
vertical_box = (GtkVBox*)g_object_new( GTK_TYPE_VBOX, NULL );
gtk_box_pack_start( GTK_BOX( vertical_box ),
GTK_WIDGET( menu_bar),
FALSE, FALSE, 0);
gtk_box_pack_start_defaults( GTK_BOX( vertical_box ),
GTK_WIDGET( scroll_window ) );
gtk_container_add( GTK_CONTAINER( main_window ),
GTK_WIDGET( vertical_box ) );
gtk_widget_show_all( GTK_WIDGET(main_window) );
gtk_main();
return 0;
};
und ff. Fehlermeldung:
editor.c: In function `editor_past_text':
editor.c:330: warning: implicit declaration of function `strlen'
editor.c: In function `main':
editor.c:402: warning: assignment from incompatible pointer type
editor.c:408: warning: assignment from incompatible pointer type
editor.c:410: warning: assignment from incompatible pointer type
editor.c:412: error: conversion to non-scalar type requested
die Zeile 330 bezieht sich hierrauf:
void
editor_past_text( GtkWidget* widget, gpointer data )
{
if ( cut_copy_text != NULL )
{
gtk_text_buffer_insert_at_cursor( text_buffer,
cut_copy_text,
strlen((char*) /* 330 */
cut_copy_text) );
}
};
ist aber nicht so wichtig.
Vollstaendig missverstaendlich sind mir aber die die Fehlermeldungen von 408 bis 412, hat da jemand eine Idee warum?
mfg nul
int
main( int argc, char** argv )
{
GtkVBox* vertical_box;
GtkTextTagTable* tags;
GtkTextView* text_view;
GtkItemFactory* items;
GtkAccelGroup* accl;
GtkScrolledWindow* scroll_window;
GtkAdjustment* horizontal_adj;
GtkAdjustment* vertical_adj;
GtkWidget* menu_bar;
gint menu_size = sizeof(menu)/sizeof( menu[0] );
gtk_init( &argc, &argv );
main_window = g_object_new( GTK_TYPE_WINDOW,
"title", "editor",
"default-width", 350,
"default-height", 400,
NULL);
g_signal_connect( main_window,
"delete_event",
G_CALLBACK(editor_delete_event),
NULL );
accl = gtk_accel_group_new();
items = gtk_item_factory_new( GTK_TYPE_MENU_BAR, "<main>", accl );
gtk_item_factory_create_items( items, menu_size, menu, NULL );
menu_bar = gtk_item_factory_get_widget( items, "<main>" );
tags = gtk_text_tag_table_new();
text_buffer = gtk_text_buffer_new(tags);
text_view =
(GtkTextView*)gtk_text_view_new_with_buffer( text_buffer );
horizontal_adj = gtk_adjustment_new( 0.0,
0.0,
100.0,
1.0,
1.0,
450.0 ); /* 402 */
vertical_adj = gtk_adjustment_new( 0.0,
0.0,
100.0,
1.0,
1.0,
350.0 ); /* 408 */
scroll_window = gtk_scrolled_window_new( horizontal_adj,
vertical_adj ); /* 410 */
gtk_scrolled_window_add_with_viewport( scroll_window,
(GtkWidget)text_view );/* 412 */
vertical_box = (GtkVBox*)g_object_new( GTK_TYPE_VBOX, NULL );
gtk_box_pack_start( GTK_BOX( vertical_box ),
GTK_WIDGET( menu_bar),
FALSE, FALSE, 0);
gtk_box_pack_start_defaults( GTK_BOX( vertical_box ),
GTK_WIDGET( scroll_window ) );
gtk_container_add( GTK_CONTAINER( main_window ),
GTK_WIDGET( vertical_box ) );
gtk_widget_show_all( GTK_WIDGET(main_window) );
gtk_main();
return 0;
};
und ff. Fehlermeldung:
editor.c: In function `editor_past_text':
editor.c:330: warning: implicit declaration of function `strlen'
editor.c: In function `main':
editor.c:402: warning: assignment from incompatible pointer type
editor.c:408: warning: assignment from incompatible pointer type
editor.c:410: warning: assignment from incompatible pointer type
editor.c:412: error: conversion to non-scalar type requested
die Zeile 330 bezieht sich hierrauf:
void
editor_past_text( GtkWidget* widget, gpointer data )
{
if ( cut_copy_text != NULL )
{
gtk_text_buffer_insert_at_cursor( text_buffer,
cut_copy_text,
strlen((char*) /* 330 */
cut_copy_text) );
}
};
ist aber nicht so wichtig.
Vollstaendig missverstaendlich sind mir aber die die Fehlermeldungen von 408 bis 412, hat da jemand eine Idee warum?
mfg nul