Commit c879883d authored by Owen Taylor's avatar Owen Taylor Committed by Owen Taylor

Fix srcdir != builddir

Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>

	* demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir

	* gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk

	* gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
	srcdir != builddir

	* modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk

	* configure.in (GTK_VERSION): Up to 1.3.2

	* modules/input/Makefile.am (im_xim_la_SOURCES): Add
	gtkimcontextxim.h

	* gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
	missing doc comment.
parent 5dd656fa
Mon Nov 13 14:43:48 2000 Owen Taylor <otaylor@redhat.com>
* demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
* gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
* gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
srcdir != builddir
* modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
* configure.in (GTK_VERSION): Up to 1.3.2
* modules/input/Makefile.am (im_xim_la_SOURCES): Add
gtkimcontextxim.h
* gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
missing doc comment.
2000-11-14 Alexander Larsson <alexl@redhat.com>
* modules/linux-fb/basic.c:
......@@ -30,6 +49,7 @@
attributes at once.
2000-11-13 Elliot Lee <sopwith@redhat.com>
* gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
Mon Nov 13 14:29:32 2000 Jonathan Blandford <jrb@redhat.com>
......
Mon Nov 13 14:43:48 2000 Owen Taylor <otaylor@redhat.com>
* demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
* gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
* gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
srcdir != builddir
* modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
* configure.in (GTK_VERSION): Up to 1.3.2
* modules/input/Makefile.am (im_xim_la_SOURCES): Add
gtkimcontextxim.h
* gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
missing doc comment.
2000-11-14 Alexander Larsson <alexl@redhat.com>
* modules/linux-fb/basic.c:
......@@ -30,6 +49,7 @@
attributes at once.
2000-11-13 Elliot Lee <sopwith@redhat.com>
* gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
Mon Nov 13 14:29:32 2000 Jonathan Blandford <jrb@redhat.com>
......
Mon Nov 13 14:43:48 2000 Owen Taylor <otaylor@redhat.com>
* demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
* gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
* gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
srcdir != builddir
* modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
* configure.in (GTK_VERSION): Up to 1.3.2
* modules/input/Makefile.am (im_xim_la_SOURCES): Add
gtkimcontextxim.h
* gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
missing doc comment.
2000-11-14 Alexander Larsson <alexl@redhat.com>
* modules/linux-fb/basic.c:
......@@ -30,6 +49,7 @@
attributes at once.
2000-11-13 Elliot Lee <sopwith@redhat.com>
* gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
Mon Nov 13 14:29:32 2000 Jonathan Blandford <jrb@redhat.com>
......
Mon Nov 13 14:43:48 2000 Owen Taylor <otaylor@redhat.com>
* demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
* gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
* gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
srcdir != builddir
* modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
* configure.in (GTK_VERSION): Up to 1.3.2
* modules/input/Makefile.am (im_xim_la_SOURCES): Add
gtkimcontextxim.h
* gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
missing doc comment.
2000-11-14 Alexander Larsson <alexl@redhat.com>
* modules/linux-fb/basic.c:
......@@ -30,6 +49,7 @@
attributes at once.
2000-11-13 Elliot Lee <sopwith@redhat.com>
* gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
Mon Nov 13 14:29:32 2000 Jonathan Blandford <jrb@redhat.com>
......
Mon Nov 13 14:43:48 2000 Owen Taylor <otaylor@redhat.com>
* demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
* gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
* gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
srcdir != builddir
* modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
* configure.in (GTK_VERSION): Up to 1.3.2
* modules/input/Makefile.am (im_xim_la_SOURCES): Add
gtkimcontextxim.h
* gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
missing doc comment.
2000-11-14 Alexander Larsson <alexl@redhat.com>
* modules/linux-fb/basic.c:
......@@ -30,6 +49,7 @@
attributes at once.
2000-11-13 Elliot Lee <sopwith@redhat.com>
* gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
Mon Nov 13 14:29:32 2000 Jonathan Blandford <jrb@redhat.com>
......
Mon Nov 13 14:43:48 2000 Owen Taylor <otaylor@redhat.com>
* demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
* gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
* gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
srcdir != builddir
* modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
* configure.in (GTK_VERSION): Up to 1.3.2
* modules/input/Makefile.am (im_xim_la_SOURCES): Add
gtkimcontextxim.h
* gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
missing doc comment.
2000-11-14 Alexander Larsson <alexl@redhat.com>
* modules/linux-fb/basic.c:
......@@ -30,6 +49,7 @@
attributes at once.
2000-11-13 Elliot Lee <sopwith@redhat.com>
* gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
Mon Nov 13 14:29:32 2000 Jonathan Blandford <jrb@redhat.com>
......
Mon Nov 13 14:43:48 2000 Owen Taylor <otaylor@redhat.com>
* demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
* gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
* gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
srcdir != builddir
* modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
* configure.in (GTK_VERSION): Up to 1.3.2
* modules/input/Makefile.am (im_xim_la_SOURCES): Add
gtkimcontextxim.h
* gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
missing doc comment.
2000-11-14 Alexander Larsson <alexl@redhat.com>
* modules/linux-fb/basic.c:
......@@ -30,6 +49,7 @@
attributes at once.
2000-11-13 Elliot Lee <sopwith@redhat.com>
* gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
Mon Nov 13 14:29:32 2000 Jonathan Blandford <jrb@redhat.com>
......
......@@ -28,8 +28,8 @@ GTK+ requires the following packages:
Simple install procedure
========================
% gzip -cd gtk+-1.3.1.tar.gz | tar xvf - # unpack the sources
% cd gtk+-1.3.1 # change to the toplevel directory
% gzip -cd gtk+-1.3.2.tar.gz | tar xvf - # unpack the sources
% cd gtk+-1.3.2 # change to the toplevel directory
% ./configure # run the `configure' script
% make # build GTK
[ Become root if necessary ]
......@@ -139,7 +139,7 @@ You can compile GTK+ against a copy of GLIB that you have not
yet installed. To do this, give the --with-glib=DIR options
to ./configure. For instance:
./configure --with-glib=../glib-1.3.1
./configure --with-glib=../glib-1.3.2
This, however, will not work if you built GLIB with different
source and build directories.
......
General Information
===================
This is GTK+ version 1.3.1. GTK+, which stands for the Gimp ToolKit,
This is GTK+ version 1.3.2. GTK+, which stands for the Gimp ToolKit,
is a library for creating graphical user interfaces for the X Window
System. It is designed to be small, efficient, and flexible. GTK+ is
written in C with a very object-oriented approach.
......@@ -37,9 +37,9 @@ version number. This should be separated by a blank
line from the actual headers.
Package: gtk+
Version: 1.3.1
Version: 1.3.2
[ Please substitute 1.3.1 with the version of GTK+ that
[ Please substitute 1.3.2 with the version of GTK+ that
you have installed ]
Then describe the bug. Include:
......@@ -82,7 +82,7 @@ From: yourname@your.address.org
Subject: handlebox test in testgtk is misnamed.
Package: gtk+
Version: 1.3.1
Version: 1.3.2
When I run gtk/testgtk, the button "handle box"
is misnamed. There are multiple handle boxes in
......
......@@ -29,7 +29,7 @@ AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)dnl
#
GTK_MAJOR_VERSION=1
GTK_MINOR_VERSION=3
GTK_MICRO_VERSION=1
GTK_MICRO_VERSION=2
GTK_INTERFACE_AGE=0
GTK_BINARY_AGE=0
GTK_VERSION=$GTK_MAJOR_VERSION.$GTK_MINOR_VERSION.$GTK_MICRO_VERSION
......
......@@ -43,7 +43,9 @@ noinst_PROGRAMS = \
BUILT_SOURCES=test-inline-pixbufs.h
test-inline-pixbufs.h: $(top_builddir)/gdk-pixbuf/make-inline-pixbuf apple-red.png gnome-foot.png
GDK_PIXBUF_MODULEDIR=$(top_builddir)/gdk-pixbuf/.libs $(top_builddir)/gdk-pixbuf/make-inline-pixbuf test-inline-pixbufs.h apple_red apple-red.png gnome_foot gnome-foot.png
(topdir=`cd $(top_builddir) && pwd` ; curdir=`pwd` ; \
cd $(srcdir) && \
GDK_PIXBUF_MODULEDIR=$$topdir/gdk-pixbuf/.libs $$topdir/gdk-pixbuf/make-inline-pixbuf $$curdir/test-inline-pixbufs.h apple_red apple-red.png gnome_foot gnome-foot.png)
testpixbuf_DEPENDENCIES = $(DEPS)
testpixbuf_drawable_DEPENDENCIES = $(DEPS)
......
#include <errno.h>
#include <stdio.h>
#include <string.h>
#include <ctype.h>
#include <gtk/gtk.h>
#include <demos.h>
static GtkTextBuffer *info_buffer;
static GtkTextBuffer *source_buffer;
static gchar *current_file = NULL;
enum {
TITLE_COLUMN,
FILENAME_COLUMN,
FUNC_COLUMN,
ITALIC_COLUMN,
NUM_COLUMNS
};
gboolean
read_line (FILE *stream, GString *str)
{
int n_read = 0;
flockfile (stream);
g_string_truncate (str, 0);
while (1)
{
int c;
c = getc_unlocked (stream);
if (c == EOF)
goto done;
else
n_read++;
switch (c)
{
case '\r':
case '\n':
{
int next_c = getc_unlocked (stream);
if (!(next_c == EOF ||
(c == '\r' && next_c == '\n') ||
(c == '\n' && next_c == '\r')))
ungetc (next_c, stream);
goto done;
}
default:
g_string_append_c (str, c);
}
}
done:
funlockfile (stream);
return n_read > 0;
}
void
load_file (const gchar *filename)
{
FILE *file;
GtkTextIter start, end;
GString *buffer = g_string_new (NULL);
int state = 0;
gboolean in_para = 0;
if (current_file && !strcmp (current_file, filename))
return;
g_free (current_file);
current_file = g_strdup (filename);
gtk_text_buffer_get_bounds (info_buffer, &start, &end);
gtk_text_buffer_delete (info_buffer, &start, &end);
gtk_text_buffer_get_bounds (source_buffer, &start, &end);
gtk_text_buffer_delete (source_buffer, &start, &end);
file = fopen (filename, "r");
if (!file)
{
g_warning ("Cannot open %s: %s\n", filename, g_strerror (errno));
return;
}
gtk_text_buffer_get_iter_at_offset (info_buffer, &start, 0);
while (read_line (file, buffer))
{
gchar *p = buffer->str;
gchar *q;
switch (state)
{
case 0:
/* Reading title */
while (*p == '/' || *p == '*' || isspace (*p))
p++;
q = p + strlen (p);
while (q > p && isspace (*(q - 1)))
q--;
if (q > p)
{
int len_chars = g_utf8_pointer_to_offset (p, q);
end = start;
g_assert (strlen (p) >= q - p);
gtk_text_buffer_insert (info_buffer, &end, p, q - p);
start = end;
gtk_text_iter_backward_chars (&start, len_chars);
gtk_text_buffer_apply_tag_by_name (info_buffer, "title", &start, &end);
start = end;
state++;
}
break;
case 1:
/* Reading body of info section */
while (isspace (*p))
p++;
if (*p == '*' && *(p + 1) == '/')
{
gtk_text_buffer_get_iter_at_offset (source_buffer, &start, 0);
state++;
}
else
{
int len;
while (*p == '*' || isspace (*p))
p++;
len = strlen (p);
while (isspace (*(p + len - 1)))
len--;
if (len > 0)
{
if (in_para)
gtk_text_buffer_insert (info_buffer, &start, " ", 1);
g_assert (strlen (p) >= len);
gtk_text_buffer_insert (info_buffer, &start, p, len);
in_para = 1;
}
else
{
gtk_text_buffer_insert (info_buffer, &start, "\n", 1);
in_para = 0;
}
}
break;
case 2:
/* Skipping blank lines */
while (isspace (*p))
p++;
if (*p)
{
p = buffer->str;
state++;
/* Fall through */
}
else
break;
case 3:
/* Reading program body */
gtk_text_buffer_insert (source_buffer, &start, p, -1);
gtk_text_buffer_insert (info_buffer, &start, "\n", 1);
break;
}
}
gtk_text_buffer_get_bounds (source_buffer, &start, &end);
gtk_text_buffer_apply_tag_by_name (info_buffer, "source", &start, &end);
}
gboolean
button_press_event_cb (GtkTreeView *tree_view,
GdkEventButton *event,
GtkTreeModel *model)
{
if (event->type == GDK_2BUTTON_PRESS)
{
GtkTreePath *path = NULL;
gtk_tree_view_get_path_at_pos (tree_view,
event->window,
event->x,
event->y,
&path,
NULL);
if (path)
{
GtkTreeIter iter;
gboolean italic;
GVoidFunc func;
gtk_tree_model_get_iter (model, &iter, path);
gtk_tree_store_get (GTK_TREE_STORE (model),
&iter,
FUNC_COLUMN, &func,
ITALIC_COLUMN, &italic,
-1);
(func) ();
gtk_tree_store_set (GTK_TREE_STORE (model),
&iter,
ITALIC_COLUMN, !italic,
-1);
gtk_tree_path_free (path);
}
gtk_signal_emit_stop_by_name (GTK_OBJECT (tree_view),
"button_press_event");
return TRUE;
}
return FALSE;
}
static void
selection_cb (GtkTreeSelection *selection,
GtkTreeModel *model)
{
GtkTreeIter iter;
GValue value = {0, };
if (! gtk_tree_selection_get_selected (selection, NULL, &iter))
return;
gtk_tree_model_get_value (model, &iter,
FILENAME_COLUMN,
&value);
load_file (g_value_get_string (&value));
g_value_unset (&value);
}
static GtkWidget *
create_text (GtkTextBuffer **buffer,
gboolean is_source)
{
GtkWidget *scrolled_window;
GtkWidget *text_view;
PangoFontDescription *font_desc;
scrolled_window = gtk_scrolled_window_new (NULL, NULL);
gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolled_window),
GTK_POLICY_AUTOMATIC,
GTK_POLICY_AUTOMATIC);
gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (scrolled_window),
GTK_SHADOW_IN);
text_view = gtk_text_view_new ();
gtk_container_add (GTK_CONTAINER (scrolled_window), text_view);
*buffer = gtk_text_buffer_new (NULL);
gtk_text_view_set_buffer (GTK_TEXT_VIEW (text_view), *buffer);
gtk_text_view_set_editable (GTK_TEXT_VIEW (text_view), FALSE);
gtk_text_view_set_cursor_visible (GTK_TEXT_VIEW (text_view), FALSE);
if (is_source)
{
font_desc = pango_font_description_from_string ("Courier 10");
gtk_widget_modify_font (text_view, font_desc);
pango_font_description_free (font_desc);
}
gtk_text_view_set_wrap_mode (GTK_TEXT_VIEW (text_view), !is_source);
return scrolled_window;
}
/* Technically a list, but if we do go to 80 demos, we may want to move to a tree */
static GtkWidget *
create_tree (void)
{
GtkTreeSelection *selection;
GtkCellRenderer *cell;
GtkWidget *tree_view;
GtkTreeViewColumn *column;
GtkTreeStore *model;
GtkTreeIter iter;
gint i;
model = gtk_tree_store_new_with_types (NUM_COLUMNS, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_POINTER, G_TYPE_BOOLEAN);
tree_view = gtk_tree_view_new_with_model (GTK_TREE_MODEL (model));
selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (tree_view));
gtk_tree_selection_set_type (GTK_TREE_SELECTION (selection),
GTK_TREE_SELECTION_SINGLE);
gtk_widget_set_usize (tree_view, 200, -1);
for (i=0; i < G_N_ELEMENTS (testgtk_demos); i++)
{
gtk_tree_store_append (GTK_TREE_STORE (model), &iter, NULL);
gtk_tree_store_set (GTK_TREE_STORE (model),
&iter,
TITLE_COLUMN, testgtk_demos[i].title,
FILENAME_COLUMN, testgtk_demos[i].filename,
FUNC_COLUMN, testgtk_demos[i].func,
ITALIC_COLUMN, FALSE,
-1);
}
cell = gtk_cell_renderer_text_new ();
column = gtk_tree_view_column_new_with_attributes ("Widget",
cell,
"text", TITLE_COLUMN,
"italic", ITALIC_COLUMN,
NULL);
gtk_tree_view_append_column (GTK_TREE_VIEW (tree_view),
GTK_TREE_VIEW_COLUMN (column));
gtk_signal_connect (GTK_OBJECT (selection), "selection_changed", selection_cb, model);
gtk_signal_connect (GTK_OBJECT (tree_view), "button_press_event", GTK_SIGNAL_FUNC (button_press_event_cb), model);
return tree_view;
}
int
main (int argc, char **argv)
{
GtkWidget *window;
GtkWidget *notebook;
GtkWidget *hbox;
GtkWidget *tree;
GtkTextTag *tag;
gtk_init (&argc, &argv);
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_signal_connect (GTK_OBJECT (window), "destroy",
GTK_SIGNAL_FUNC (gtk_main_quit), NULL);
hbox = gtk_hbox_new (FALSE, 0);
gtk_container_add (GTK_CONTAINER (window), hbox);
tree = create_tree ();
gtk_box_pack_start (GTK_BOX (hbox), tree, FALSE, FALSE, 0);
notebook = gtk_notebook_new ();
gtk_box_pack_start (GTK_BOX (hbox), notebook, TRUE, TRUE, 0);
gtk_notebook_append_page (GTK_NOTEBOOK (notebook),
create_text (&info_buffer, FALSE),
gtk_label_new ("Info"));
gtk_notebook_append_page (GTK_NOTEBOOK (notebook),
create_text (&source_buffer, TRUE),
gtk_label_new ("Source"));
tag = gtk_text_buffer_create_tag (info_buffer, "title");
gtk_object_set (GTK_OBJECT (tag),
"font", "Sans 18",
NULL);
tag = gtk_text_buffer_create_tag (info_buffer, "source");
gtk_object_set (GTK_OBJECT (tag),
"font", "Courier 10",
"pixels_above_lines", 0,
"pixels_below_lines", 0,
NULL);
gtk_window_set_default_size (GTK_WINDOW (window), 600, 400);
gtk_widget_show_all (window);
load_file (testgtk_demos[0].filename);
gtk_main ();
return 0;
}
......@@ -85,6 +85,8 @@ TUTORIAL_IT_FILES= html/gtk_tut_it.html \
html/gtk_tut_it-24.html \
text/gtk_tut_it.txt
GTKDOCS_FIX=$(top_srcdir)/docs/gtkdocs_fix
.PHONY: htmldir textdir tutorial tutorial_it tutorial_fr
htmldir:
......@@ -101,21 +103,21 @@ $(TUTORIAL_IT_FILES): tutorial_it
tutorial: htmldir textdir
(cd $(srcdir); sgml2html gtk_tut.sgml; \
perl gtkdocs_fix gtk_tut*html; \
perl $(GTKDOCS_FIX) gtk_tut*html; \
mv gtk_tut*html html/; \
sgml2txt gtk_tut.sgml; \
mv gtk_tut.txt text/)