GTK high speed interface
- From: Tim McCoy <tmccoy hotPOP com>
- To: gtk-list gnome org
- Subject: GTK high speed interface
- Date: Fri, 29 Apr 2005 09:14:57 +1000
Hey all,
I'm a complete GTK n00b developer, and was trying to hurridly implement 
a GUI for a project I'm completing as part of a final year Uni course.
The task was to implement a MIPS emulator, and then display the results 
of the pipeline registers and so on at emulator run time. I generated a 
very basic GUI using glade-2, which was basically just labels and entry 
classes. I found a nice tutorial on writing a simple program, but it 
seems to fall apart when I push it.
If I "single step" my emulator, then each of the register values are 
displayed in the appropriate field. However, if I run the emulator (for 
some 130,000 cycles, each cycle with a callback to place text in the 
entry fields), then no text is written to the entry elements until the 
entire program is finished. The interface itself appears to lock up, but 
I (partially) understand the reasons for this.
Here is the basic bad style to which I'm currently doing the write 
operation for the entry classes.
GtkWidget *entry = NULL;
float result = 0.0;
gchar *string = NULL;
entry = lookup_widget(widget, "entry_bla");	
result = g_strdup_printf("%5.2f", result);
gtk_entry_set_text(GTK_ENTRY(other_entry), string);
g_free(string);
...is there some form of double-buffering or class flushing that I need 
to be doing to get the updates to work at the faster rates? In case I'm 
not clear, I also wrote a test program that had a tight for loop that 
simply counted to 10,000 and attempted to print the current loop 
variable to an entry field in the same method - and the results were 
much the same - complete lockup until the final result was available, 
which was then displayed on the screen.
Thoughts, links, abuse or suggestions would be appreciated :D
Cheers
Tim
[
Date Prev][
Date Next]   [
Thread Prev][
Thread Next]   
[
Thread Index]
[
Date Index]
[
Author Index]