gtk/docs
Tim Janik 2c9eb3a572 doh, this was broken beyond believe.
Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>

	* gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.

	* gtk/gtkbox.c: change property types from (u)long to (u)int for
	::position and ::padding.

	* gtk/gtkcontainer.c: make ::border_width an INT property.

	* gtk/gtkpacker.c: make ::position an INT property.

	* gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
	guard against NULL h/v scrollbars, since this is used at construction
	time.

	* gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
	internal gtk_clist_constructor().

	* gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
	gtk_ctree_constructor().

	* gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
	::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.

	* docs/reference/Makefile.am: fun stuff, disabled docs generation
	again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.

	* gtk/gtkwidget.[hc]:
	removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
	and gtk_widget_get().
	(gtk_widget_new): use g_object_new_valist().
	(gtk_widget_set): use g_object_set_valist().

	* gtk/gtkobject.[hc]:
	removed gtk_object_arg_get_info(), gtk_object_getv(),
	gtk_object_query_args(), gtk_object_newv(),
	gtk_object_class_add_signals(),
	gtk_object_class_user_signal_new(),
	gtk_object_class_user_signal_newv(),
	gtk_object_arg_set(), gtk_object_arg_get(),
	gtk_object_args_collect(),
	gtk_object_default_construct(),
	gtk_object_constructed(),
	GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
	removed nsignals, signals and n_args members from GtkObjectClass.
	(gtk_object_new): use g_object_new_valist().
	(gtk_object_set): use g_object_set_valist().
	(gtk_object_get): use g_object_get_valist().

	* gtk/gtkcompat.h: define gtk_object_default_construct().

	* gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
	g_object_new().

	* gtk/*.c: removed gtk_object_class_add_signals() from class_init()
	fucntions, cleaned up method assignments (make sure your structures
	are setup properly before calling out). removed all GTK_CONSTRUCTED
	hacks ;)
2000-12-13 01:34:41 +00:00
..
faq Nov 17 20:14:20 2000 Owen Taylor <otaylor@redhat.com> 2000-11-18 01:49:50 +00:00
reference doh, this was broken beyond believe. 2000-12-13 01:34:41 +00:00
tutorial DND updates 2000-12-05 13:18:56 +00:00
.cvsignore Removed mistakenly added generated sgml 2000-06-21 18:18:00 +00:00
Changes-1.2.txt Fixed some bugs with set_default_size. 1999-02-10 02:35:09 +00:00
Changes-2.0.txt Add a function to determine if a window is the focus widget within its 2000-12-11 17:47:24 +00:00
debugging.txt Take border in account properly. 1998-04-06 12:59:06 +00:00
defsformat.txt Add defs file format document (this document isn't 100% finalized, but 2000-03-23 20:20:19 +00:00
developers.txt backed out the section "Gnits to care about". new file, kinda developers 1998-02-11 00:40:20 +00:00
dnd_internals.txt Added a modular client-message-filter mechanism, that is used for the DND 1998-10-18 22:51:24 +00:00
generation.txt Adapt cast macros to standard. 1999-11-22 21:52:50 +00:00
gtk-config.1.in [ Merges from gtk-1-2 ] 1999-09-28 20:19:13 +00:00
gtk-config.txt Put in some information about 'gtk-config --libs gthread'. 1999-02-02 02:35:11 +00:00
gtkdocs_fix I just remembered this commit failed before because 1998-03-12 18:23:11 +00:00
make-todo Make parent_class static. 2000-11-12 03:35:09 +00:00
Makefile.am Docs, docs, anyone want docs! 2000-12-08 15:00:07 +00:00
README.linux-fb Clearified the difference between the keyboard types. Wrote a note about 2000-12-11 08:48:13 +00:00
refcounting.txt Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org> 2000-02-29 13:15:10 +00:00
styles.txt Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org> 2000-02-29 13:15:10 +00:00
text_widget.txt missed a couple of corrections 2000-02-29 13:29:59 +00:00
widget_system.txt Add a function to determine if a window is the focus widget within its 2000-12-11 17:47:24 +00:00

About GtkFB:
------------
The linux-fb port of Gtk+, also known as GtkFB is an implementation of
gdk (and therefor gtk) that runs on the linux framebuffer. It runs in
a single process that doesn't need X. It should run most Gtk+ programs
without any changes to the source.

Build requirements:
-------------------
To run GtkFB programs you will need glib, pango and gtk from cvs
HEAD. Make sure you update these at the same time, since changes to
glib and pango often forces changes in gtk+. Pango optionally depends
on libfribidi, but for normal GtkFB usage that can be ignored.

You also need freetype 2, I recommend that you use freetype 2.0.1 or
later, as there was some problems with freetype-config in 2.0.
Freetype can be found at ftp://ftp.freetype.org

Hardware requirements:
----------------------
You need a graphics card with an availible framebuffer driver that can
run in 8, 16, 24 or 32 bpp. I use the matroxfb driver, but i.e. vesafb
should work too. You also need a supported mouse. Currently supported
is ps2 mouse, ms serial mouse and fidmour touchscreen.

Building and installing:
------------------------
First build and install glib and pango as usual, in that order.

Then configure Gtk by running configure (or autogen.sh if running from
cvs) with --with-gdktarget=linux-fb.

Make sure that pango and gtk+ are installed in the same prefix, as
gtk+ installs a new pango module that pango must be able to find.

Then compile as ususal: make; make install

This installs a new pango module that pango must be instructed to
find. This is done by running something like:
pango-querymodules > /your_prefix/etc/pango/pango.modules
(look at this file and make sure it contains a row with fb-basic.so.

Fonts:
------
Since GtkFB uses freetype 2 to render fonts it can render truetype and
postscript type 1 antialiased fonts. At startup it scans these
directories looking for any fonts:
/usr/share/fonts/default/TrueType
/usr/share/fonts/default/Type1
/usr/lib/X11/fonts/TrueType
/usr/lib/X11/fonts/Type1
$(prefix)/share/fonts

It also has a hardcoded font alias handling. This is important because
most program refers to the standard fonts by the names "Sans", "Serif"
and "Monotype". The default aliases in GtkFB maps these to the
M$ truetype fonts: Arial, Times New Roman, and Courier New (you need
to own a copy of Windows to use these) and the type1 fonts URW Gothic,
URW Bookman and Courier. You will need to have at least Arial or URW
Gothic installed, because the "Sans" font is used as a last case font.

If you've done all this and fonts still doesn't work, make sure you've
run pango-querymodules as described in the building and installing
section.

Running:
--------
To run a program you should only need to start it, but there are some
things that can cause problems, and some things that can be controlled
by environment variables. Try testgtk distributed with gtk+ to test
if things work.

If you use a ps2 mouse, make sure that /dev/psaux is readable and
writable.

Make sure gpm is not running.

If you don't specify anything GtkFB will start up in the current
virtual console in the current resolution and bit-depth. This can be
changed by specifying environment variables:

GDK_VT:
 unset means open on the current VT.
 0-9: open on the specified VT. Make sure you have read/write rights
      there.
 new: Allocate a new VT after the last currently used one.

GDK_DISPLAY_MODE:
 Specifies the name of a mode in /etc/fb.modes that you want to use.

GDK_DISPLAY_DEPTH:
 Specify the desired bit depth of the framebuffer.
 
GDK_DISPLAY_WIDTH:
 Specify the desired width of the framebuffer.
 
GDK_DISPLAY_HEIGHT:
 Specify the desired height of the framebuffer.

GDK_DISPLAY:
 Specify the framebuffer device to use. Default is /dev/fb0

GDK_MOUSE_TYPE:
 Specify mouse type. Currently supported is:
  ps2 - PS/2 mouse
  ms - Microsoft serial mouse
  fidmour - touch screen
 Default is ps2.

GDK_KEYBOARD_TYPE:
 Specify keyboard type. Currently suppored is
  xlate - normal tty mode keyboard.
    Quite limited, cannot detect key up/key down events. Doesn't
    handle ctrl/alt/shift for all keys. This is the default driver,
    but should not be used in "production" use.
  raw - read from the tty in RAW mode.
    Sets the keyboard in RAW mode and handles all the keycodes. This
    gives correct handling of modifiers and key up/down events. You
    must be root to use this. If you use this for development or
    debugging it is recommended to enable magic sysrq handling in the
    kernel. Then you can use ALT-SysRQ-r to turn the keyboard back to
    normal mode.
 Default is xlate.

HACKING:
--------
Pressing shift-F1 forces a repaint of the whole screen.

To be written.

   - Alexander Larsson <alexl@redhat.com>
     2000/12/06