Re: How would I use casting ?
Sorry I missed out the gtk_widget_show()API in program written in the mail. But actually in original program I have written it and even I tried writing gtk_window_maximize before gtk_widget_show()and after as well. But still it shows normal window and doesn't maximize it. I think then my window manager does not support it and unmaximizes it again as written in API help. Sven Neumann [EMAIL PROTECTED] Sent by: Sven Neumann [EMAIL PROTECTED] 07/13/2004 12:57 PM To Dipak G Patil/India/[EMAIL PROTECTED] cc [EMAIL PROTECTED], [EMAIL PROTECTED] Subject Re: How would I use casting ? Hi, Dipak G Patil [EMAIL PROTECTED] writes: Thanks Vincent for your reply.Solution you provided removed errors from my program, but still it doesnt show anything :-( Here the the original program. It has been pointed out to you earlier already that you need to show the window if you want to see it. So why didn't you add a call to gtk_widget_show()? Sven ___ gtk-list mailing list [EMAIL PROTECTED] http://mail.gnome.org/mailman/listinfo/gtk-list
Re: How would I use casting ?
Hi Sven, Now I want to use gdk_window_process_updates so I think use of gtk_widget_realize is mandatory as I couldnt find equivalent API in GTK. Could you suggest me right way if you think using gtk_widget_realize API is not a good idea ? Thanks and regards, Dipak G Patil. Sven Neumann [EMAIL PROTECTED] Sent by: Sven Neumann [EMAIL PROTECTED] 07/13/2004 12:46 PM To Vincent Torri [EMAIL PROTECTED] cc Dipak G Patil/India/[EMAIL PROTECTED], [EMAIL PROTECTED] Subject Re: How would I use casting ? Hi, Vincent Torri [EMAIL PROTECTED] writes: GtkWidget *gtk_win; GdkWindow *gdk_win; gtk_win = gtk_window_new (...); gtk_widget_realize (gtk_win); /* to create GDk ressources for gtk_win, in particular gtk_win-window */ gdk_win = gtk_win-window; /* to get the gdk window */ Whenever you need to call gtk_widget_realize() you are most probably doing something wrong. Well, not necessarily wrong, but certainly not the best way. In this particular example it is not necessary to access the GDK window since there is gtk_window_maximize() which will take care of doing the right thing. Sven ___ gtk-list mailing list [EMAIL PROTECTED] http://mail.gnome.org/mailman/listinfo/gtk-list
Re: How would I use casting ?
(please don't top-post) On Wed, Jul 14, 2004 at 12:45:58PM +0530, Dipak G Patil wrote: Now I want to use gdk_window_process_updates so I think use of gtk_widget_realize is mandatory as I couldnt find equivalent API in GTK. Could you suggest me right way if you think using gtk_widget_realize API is not a good idea ? gdk_window_process_updates() is rarely needed. Maybe you want gtk_widget_queue_draw() or maybe even gtk_main_iteration_do(). Unles you are really trying to force synchronous exposes. What problem you are trying to solve? Yeti -- Do not use tab characters. Their effect is not predictable. ___ gtk-list mailing list [EMAIL PROTECTED] http://mail.gnome.org/mailman/listinfo/gtk-list
Re: How would I use casting ?
Thanks gtk_widget_queue_draw()is perfect for what I want. But I think for every gdk_ API there wont be gtk_ equivalent, so what you think, for using gdk_ APIs use of gtk_widget_realize right or not, if I have GtkWidget * type object ? Thanks and regards, Dipak G Patil. David Necas (Yeti) [EMAIL PROTECTED] Sent by: David Necas (Yeti) [EMAIL PROTECTED] 07/14/2004 12:59 PM To Dipak G Patil/India/[EMAIL PROTECTED] cc [EMAIL PROTECTED] Subject Re: How would I use casting ? (please don't top-post) On Wed, Jul 14, 2004 at 12:45:58PM +0530, Dipak G Patil wrote: Now I want to use gdk_window_process_updates so I think use of gtk_widget_realize is mandatory as I couldnt find equivalent API in GTK. Could you suggest me right way if you think using gtk_widget_realize API is not a good idea ? gdk_window_process_updates() is rarely needed. Maybe you want gtk_widget_queue_draw() or maybe even gtk_main_iteration_do(). Unles you are really trying to force synchronous exposes. What problem you are trying to solve? Yeti -- Do not use tab characters. Their effect is not predictable. ___ gtk-list mailing list [EMAIL PROTECTED] http://mail.gnome.org/mailman/listinfo/gtk-list
Re: How would I use casting ?
One more thing if I use gtk_widget_get_parent_window to get parent window I get GdkWindow* in return. But actually I need GtkWidget*. So could you tell me which is the best method to convert from GdkWindow* to GtkWidget* and vice versa ? Thanks and regards, Dipak G Patil. David Necas (Yeti) [EMAIL PROTECTED] Sent by: David Necas (Yeti) [EMAIL PROTECTED] 07/14/2004 12:59 PM To Dipak G Patil/India/[EMAIL PROTECTED] cc [EMAIL PROTECTED] Subject Re: How would I use casting ? (please don't top-post) On Wed, Jul 14, 2004 at 12:45:58PM +0530, Dipak G Patil wrote: Now I want to use gdk_window_process_updates so I think use of gtk_widget_realize is mandatory as I couldnt find equivalent API in GTK. Could you suggest me right way if you think using gtk_widget_realize API is not a good idea ? gdk_window_process_updates() is rarely needed. Maybe you want gtk_widget_queue_draw() or maybe even gtk_main_iteration_do(). Unles you are really trying to force synchronous exposes. What problem you are trying to solve? Yeti -- Do not use tab characters. Their effect is not predictable. ___ gtk-list mailing list [EMAIL PROTECTED] http://mail.gnome.org/mailman/listinfo/gtk-list
Re: Licence?
On Wed, 14 Jul 2004 10:24:57 +0200 (MEST), Andreas Lång [EMAIL PROTECTED] wrote: I have been using the gtk library to create this. My question is what rules are there about publishing my source code. Can the company sell this product without publishing my code? Yes, provided you link dynamically against the gtk libraries. If you link statically, you need to publish your program sources. If you have made modifications to the gtk library, you should publish the source of those modifications. John ___ gtk-list mailing list [EMAIL PROTECTED] http://mail.gnome.org/mailman/listinfo/gtk-list
Re: How would I use casting ?
maybe that : gtk_widget_get_parent () which returns the parent widget regards Vincent TORRI On Wed, 14 Jul 2004, Dipak G Patil wrote: One more thing if I use gtk_widget_get_parent_window to get parent window I get GdkWindow* in return. But actually I need GtkWidget*. So could you tell me which is the best method to convert from GdkWindow* to GtkWidget* and vice versa ? Thanks and regards, Dipak G Patil. ___ gtk-list mailing list [EMAIL PROTECTED] http://mail.gnome.org/mailman/listinfo/gtk-list
Re: How would I use casting ?
Hi, could you please start reading the docs and the tutorial as well as the available example code. If you continue to ask here about virtually everything, people will very soon get annoyed and you won't get a response if you have a real question one day. Sven ___ gtk-list mailing list [EMAIL PROTECTED] http://mail.gnome.org/mailman/listinfo/gtk-list
Re: Licence?
Hi, John Cupitt [EMAIL PROTECTED] writes: Yes, provided you link dynamically against the gtk libraries. If you link statically, you need to publish your program sources. I am sorry but what you said about static linking is a common misunderstanding of the LGPL. Havoc expressed it quite nicely a while ago on this very mailing-list: http://mail.gnome.org/archives/gtk-list/2003-May/msg7.html Sven ___ gtk-list mailing list [EMAIL PROTECTED] http://mail.gnome.org/mailman/listinfo/gtk-list
Re: How would I use casting ?
I asked just you because, you have said following method is not best way but neither told why nor suggested best way. And obviously such statement would make anybody confused. So I thought I would better clear the conversion of GdkWindow to GtkWidget and vice versa which was my basic question. And I am reading docs, tutorials and examples and I thing anybody gets queries while learning anything right ? And while learning anything if anybody confuses you then better way is solve the confusion from the creater. GtkWidget *gtk_win; GdkWindow *gdk_win; gtk_win = gtk_window_new (...); gtk_widget_realize (gtk_win); /* to create GDk ressources for gtk_win, in particular gtk_win-window */ gdk_win = gtk_win-window; /* to get the gdk window */ Whenever you need to call gtk_widget_realize() you are most probably doing something wrong. Well, not necessarily wrong, but certainly not the best way. In this particular example it is not necessary to access the GDK window since there is gtk_window_maximize() which will take care of doing the right thing. Thanks and regards, Dipak G Patil. Sven Neumann [EMAIL PROTECTED] Sent by: Sven Neumann [EMAIL PROTECTED] 07/14/2004 04:58 PM To Dipak G Patil/India/[EMAIL PROTECTED] cc [EMAIL PROTECTED] Subject Re: How would I use casting ? Hi, could you please start reading the docs and the tutorial as well as the available example code. If you continue to ask here about virtually everything, people will very soon get annoyed and you won't get a response if you have a real question one day. Sven ___ gtk-list mailing list [EMAIL PROTECTED] http://mail.gnome.org/mailman/listinfo/gtk-list
Re: How would I use casting ?
On Wed, 2004-07-14 at 17:32 +0530, Dipak G Patil wrote: I asked just you because, you have said following method is not best way but neither told why nor suggested best way. And obviously such statement would make anybody confused. So I thought I would better clear the conversion of GdkWindow to GtkWidget and vice versa which was my basic question. And I am reading docs, tutorials and examples and I thing anybody gets queries while learning anything right ? And while learning anything if anybody confuses you then better way is solve the confusion from the creater. Don't take a lot of this personally, many people on these lists are subscribed to dozens of lists generating hundreds (if not thousands) of total mails a day. GIMPNet (IRC) is a better means to ask multiple small questions, and irc://irc.gnome.org/#gtk+ irc://irc.gnome.org/#gnome-love are good channels for GTK+/GNOME development help, respectively. Typically it takes a few minutes for someone to notice your question and reply (assuming someone on IRC knows the answer), since most of us are doing other things as well. The de-facto standing policies are just ask, and private messages (/msg) are generally reserved for legitimate private conversations. (IOW, just show up and ask, then hang around for a while, if someone knows the answer they'll reply, and there's rarely a need to move discussion to a private chat.) Also, I've found that existing real-world app source that does what you want (or something similar) is often more helpful than the examples provided in the docs--assuming your app is license-compatible with the code you're reading, of course. -- Peace, Jim Cape http://esco.mine.nu http://ignore-your.tv If even one reporter had stood up during a pre-Iraq Bush press conference last year and shouted, `Bullshit!' it might have made a difference. -- Matt Taibbi, New York Press signature.asc Description: This is a digitally signed message part ___ gtk-list mailing list [EMAIL PROTECTED] http://mail.gnome.org/mailman/listinfo/gtk-list
Re: How would I use casting ?
Hi, Dipak G Patil [EMAIL PROTECTED] writes: I asked just you because, you have said following method is not best way but neither told why nor suggested best way. And obviously such statement would make anybody confused. OK then, perhaps it's time to repeat it once more then. A widget doesn't have a GdkWindow until it is realized. If you want to understand why this is the case, then you should make yourself familiar with the basics of the X11 windowing system. In general you rarely ever need to access widget-window. An execption is for example when you are writing a custom widget and need to draw on the GdkWindow. However you must only ever draw in an expose_event handler anyway and widget-window will be valid then. If you need to access the window member outside an event handler (you may for example want to set a cursor), then you should connect to the realize signal or the configure event. The window will have been created when these signals are emitted. Sven ___ gtk-list mailing list [EMAIL PROTECTED] http://mail.gnome.org/mailman/listinfo/gtk-list
Trouble compiling GTK+ under Solaris 9
Hi, I tried to compile GTK under Solaris 9 and got the following error: make[4]: Entering directory `/export/Downloads/gtk+-2.4.3/gdk/x11'if /bin/bash ../../libtool --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I../.. -DG_LOG_DOMAIN=\"Gdk\" -DGDK_COMPILATION -I../.. -I../../gdk -I../../gdk -DG_DISABLE_DEPRECATED -DGDK_PIXBUF_DISABLE_DEPRECATED -DGDK_DISABLE_DEPRECATED -DG_DISABLE_CAST_CHECKS -threads -I/usr/local/include/glib-2.0 -I/usr/local/lib/glib-2.0/include -I/usr/local/include/pango-1.0 -I/usr/local/include -I/usr/sfw/include -I/usr/sfw/include/freetype2 -Wall -MT gdkasync.lo -MD -MP -MF ".deps/gdkasync.Tpo" \ -c -o gdkasync.lo `test -f 'gdkasync.c' || echo './'`gdkasync.c; \then mv -f ".deps/gdkasync.Tpo" ".deps/gdkasync.Plo"; \else rm -f ".deps/gdkasync.Tpo"; exit 1; \figcc -DHAVE_CONFIG_H -I. -I. -I../.. -DG_LOG_DOMAIN=\"Gdk\" -DGDK_COMPILATION -I../.. -I../../gdk -I../../gdk -DG_DISABLE_DEPRECATED -DGDK_PIXBUF_DISABLE_DEPRECATED -DGDK_DISABLE_DEPRECATED -DG_DISABLE_CAST_CHECKS -threads -I/usr/local/include/glib-2.0 -I/usr/local/lib/glib-2.0/include -I/usr/local/include/pango-1.0 -I/usr/local/include -I/usr/sfw/include -I/usr/sfw/include/freetype2 -Wall -MT gdkasync.lo -MD -MP -MF .deps/gdkasync.Tpo -c gdkasync.c -fPIC -DPIC -o .libs/gdkasync.ogdkasync.c: In function `_gdk_x11_send_client_message_async':gdkasync.c:253: error: `X_' undeclared (first use in this function)gdkasync.c:253: error: (Each undeclared identifier is reported only oncegdkasync.c:253: error: for each function it appears in.)gdkasync.c:253: error: parse error before "GetInputFocus"gdkasync.c: In function `_gdk_x11_set_input_focus_safe':gdkasync.c:346: error: `X_' undeclared (first use in this function)gdkasync.c:346: error: parse error before "GetInputFocus"make[4]: *** [gdkasync.lo] Error 1make[4]: Leaving directory `/export/Downloads/gtk+-2.4.3/gdk/x11'make[3]: *** [all-recursive] Error 1make[3]: Leaving directory `/export/Downloads/gtk+-2.4.3/gdk'make[2]: *** [all] Error 2make[2]: Leaving directory `/export/Downloads/gtk+-2.4.3/gdk'make[1]: *** [all-recursive] Error 1make[1]: Leaving directory `/export/Downloads/gtk+-2.4.3'make: *** [all] Error 2 I tried different versions of GTK down to 2.3.0. Always the same error. Below 2.3.0 it compiled without trouble, but I need 2.3.0 at least. Can anyone help me out ? Thanks, Ekkart ___ gtk-list mailing list [EMAIL PROTECTED] http://mail.gnome.org/mailman/listinfo/gtk-list
reffing/unreffing tutorial
I've seen this and I think there should be a tutorial of the reffing/unreffing thing. Not many people including me knows how references should be taken care of. Is there and easy tutorial of reffing/unreffing? Is anyone willing to make one? On 2004-07-13 05:08:12 -0700, Mark Doliner wrote: Update of /cvsroot/gaim/gaim/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv24515 Modified Files: ft.c Log Message: I changed this when I made ft.c use the request API for file selection. I believe this is the only change I made to dealing with reffing/unreffing. It might fix a crash... I'm not really sure. The ref'ing/unref'ing confuses me. Someone that knows what's going on should probably look at this. ferulo it's about a little bug on transfering file resulting on a crash ferulo This is the process: ferulo 1.- a peer sent you a file ferulo 2.- you cancel the tranfer Index: ft.c === RCS file: /cvsroot/gaim/gaim/src/ft.c,v retrieving revision 1.60 retrieving revision 1.61 diff -u -d -p -r1.60 -r1.61 --- ft.c 11 Jul 2004 20:46:28 - 1.60 +++ ft.c 13 Jul 2004 12:07:53 - 1.61 @@ -208,7 +208,6 @@ static int ask_accept_ok(GaimXfer *xfer) { gaim_xfer_request_accepted(xfer, NULL); - gaim_xfer_unref(xfer); return 0; } ___ gtk-list mailing list [EMAIL PROTECTED] http://mail.gnome.org/mailman/listinfo/gtk-list
Re: reffing/unreffing tutorial
DANIELLLANO wrote: I've seen this and I think there should be a tutorial of the reffing/unreffing thing. Not many people including me knows how references should be taken care of. Is there and easy tutorial of reffing/unreffing? Is anyone willing to make one? Its really a quite simple concept as long as you dont include gtk+ floating references which are there to simplify the programmers work and utterly confuse the newbie ;-) When you allocate memory using malloc(), you free it with free(), when you instantiate a GObject, you release it with g_object_unref(). the difference is that you dont know if that object is finalized or not (finalize is just a fancy way of saying that the object is freed and all the resources it occupied are actually released). Generaly, an object is created with a reference count of one, this means that the piece of code responsable for instantiating the object owns it (that reference belongs to the allocating code), other pieces of code may depend on that objects existance for a finate amount of time, during that time it will hold another reference to it. Take signal emmission for example, the objects own code might look like this: if (signal condition) { g_object_ref(object); g_signal_emit(...); // call all interrested signal handlers g_object_unref(object); } What if the first signal handler is the owning entity and decides for some reason to release the object, and that the second signal handler down the chain gets called ? if there wasn't an extra reference owned by the object itself, chances are the second second signal handler would cause the program to segfault (reference to some non-allocated memory space or something). Anyhow, I think there is plenty of documentation on this subject and it is inapropriate for a tutorial, as reference counts are more of an important detail to take into account than a task to perform. I hope I have enlightened you on this subject though ;-) For more detailed documentation on the object system, you should read: http://www.le-hacker.org/papers/gobject/index.html Cheers, -Tristan ___ gtk-list mailing list [EMAIL PROTECTED] http://mail.gnome.org/mailman/listinfo/gtk-list
Re: Odd GtkTextView behavior
Hi Havoc, I would imagine it would be a useful fix as from what I can see at the moment there is no way to change the default style of the TextView so that newly inserted characters can use the current style. This means that when you are typing new text you always have to set the current style to each new character, which of course is not good. Is there a way to change the default style of the TextView so that I can do it this way instead of applying tags to the newly typed characters each time. Thanks for your time Ian King Havoc Pennington wrote: On Thu, 2004-07-08 at 18:51, Ian King [ES] wrote: I've noticed when using the GtkTextView widget that when it is being used in normal operation, for things such as a word processor or code editor, when the caret is placed at the end of a word and text is entered on the keyboard, the control doesn't print the new text in the style of the previous character. Is this expected behavior or a bug? This can be tested by using the TextView demo launched from gtk-demo. It is expected, though it's the kind of thing that should probably be changed in GTK+ 3.0 (i.e. if we ever break the ABI again). Apps such as gedit track the current style and apply it to newly-inserted text themselves, I believe. One ABI-compatible patch might be to add a sticks to newly inserted text property to GtkTextTag - don't know if that would work, but if someone coded the patch and put it in bugzilla it seems like a reasonable feature. We'd want to cc the gedit guys and other heavy TextView users on the bug and see if they think it's a useful fix. Havoc ___ gtk-list mailing list [EMAIL PROTECTED] http://mail.gnome.org/mailman/listinfo/gtk-list
Sheet and Drawer widgets
I once saw an interview with Owen Taylor where he said he'd like to see somebody implement Mac-style drawers, for possible inclusion in some future version of Gtk+. Being crazy (or dumb) enough to think this would be easy, I decided to give it a try. You can see what I've done so far: http://bitpoetry.com/programs/gtksheetsanddrawers/ It's not something you can really use yet, but it's kind of fun to play with. The next step is to make them into real GtkWidgets, and polish them up so they're usable in real applications. If you want to help, please do! I'm new to Gtk+ and still trying to figure this stuff out. - Ken ___ gtk-list mailing list [EMAIL PROTECTED] http://mail.gnome.org/mailman/listinfo/gtk-list
fix for: assignment discards qualifiers from pointer target type
I'm getting the following warning message on compile: filename.c:124: warning: assignment discards qualifiers from pointer target type. This occurs on lines such as this: ... gchar *userid = NULL; userid = gtk_entry_get_text(GTK_ENTRY(lookup_widget(logon, password))); but, gtk_entry_get_text returns a gchar* (specifically a G_CONST_RETURN gchar*). So my question is, how on earth do I fix this warning message? Am I casting something incorrectly? -- .''`. Carl B. Constantine : :' : [EMAIL PROTECTED] `. `'GnuPG: 135F FC30 7A02 B0EB 61DB 34E3 3AF1 DC6C 9F7A 3FF8 `- Debian GNU/Linux -- The power of freedom Claiming that your operating system is the best in the world because more people use it is like saying McDonalds makes the best food in the world. ___ gtk-list mailing list [EMAIL PROTECTED] http://mail.gnome.org/mailman/listinfo/gtk-list
can't print string pointer, get error?
I have the following defined in my program: gchar *id; I perform the following operation which fills id with appropriate values: gtk_tree_model_get(theModel, custListIter, CUST_ID, id, -1); Then, I print out the value of id for debugging purposes: g_printf(row number %s was retrieved\n, id); but, upon compile, I receive the following error: callbacks.c:509: warning: char format, different type arg(arg 2) Say what? Why am I getting this error? It doesn't make sense. You print out string pointers using printf(%s, var) which works fine numer normal C conditions. So why do I get this warning, and how do I fix it? Thanks. -- .''`. Carl B. Constantine : :' : [EMAIL PROTECTED] `. `'GnuPG: 135F FC30 7A02 B0EB 61DB 34E3 3AF1 DC6C 9F7A 3FF8 `- Debian GNU/Linux -- The power of freedom Claiming that your operating system is the best in the world because more people use it is like saying McDonalds makes the best food in the world. ___ gtk-list mailing list [EMAIL PROTECTED] http://mail.gnome.org/mailman/listinfo/gtk-list
Re: fix for: assignment discards qualifiers from pointer target type
On Wed, 14 Jul 2004 20:53:16 -0700, Carl B. Constantine [EMAIL PROTECTED] wrote: gchar *userid = NULL; userid = gtk_entry_get_text(GTK_ENTRY(lookup_widget(logon, password))); Try const char *userid = gtk_entry_get_text( GTK_ENTRY( ... John ___ gtk-list mailing list [EMAIL PROTECTED] http://mail.gnome.org/mailman/listinfo/gtk-list