summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog20
-rw-r--r--ChangeLog.pre-2-020
-rw-r--r--ChangeLog.pre-2-1020
-rw-r--r--ChangeLog.pre-2-220
-rw-r--r--ChangeLog.pre-2-420
-rw-r--r--ChangeLog.pre-2-620
-rw-r--r--ChangeLog.pre-2-820
-rw-r--r--demos/gtk-demo/menus.c6
-rw-r--r--gtk/Makefile.am2
-rw-r--r--gtk/gtk.h1
-rw-r--r--gtk/gtkentry.c3
-rw-r--r--gtk/gtkmenufactory.c3
-rw-r--r--gtk/gtkseparatormenuitem.c69
-rw-r--r--gtk/gtkseparatormenuitem.h70
-rw-r--r--gtk/gtktextview.c3
15 files changed, 293 insertions, 4 deletions
diff --git a/ChangeLog b/ChangeLog
index 63b783dd1..ed636e519 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,23 @@
+2001-02-21 Alexander Larsson <alexl@redhat.com>
+
+ * gtk/gtkseparatormenuitem.[ch]:
+ Added new menu separator item. The drawing and size handling
+ is still done in GtkMenuItem, but the API is a bit more sane.
+
+ * gtk/Makefile.am:
+ Add gtkseparatormenuitem.[ch].
+
+ * gtk/gtk.h:
+ Add gtkseparatormenuitem.h.
+
+ * gtk/gtkentry.c:
+ * gtk/gtkmenufactory.c:
+ * gtk/gtktextview.c:
+ Use the new API for menu separators.
+
+ * demos/gtk-demo/menus.c (create_menu):
+ Add some GtkSeparatorMenuItem demo code.
+
2001-02-20 Havoc Pennington <hp@redhat.com>
* gtk/gtkaspectframe.c: Convert to new property API, patch from
diff --git a/ChangeLog.pre-2-0 b/ChangeLog.pre-2-0
index 63b783dd1..ed636e519 100644
--- a/ChangeLog.pre-2-0
+++ b/ChangeLog.pre-2-0
@@ -1,3 +1,23 @@
+2001-02-21 Alexander Larsson <alexl@redhat.com>
+
+ * gtk/gtkseparatormenuitem.[ch]:
+ Added new menu separator item. The drawing and size handling
+ is still done in GtkMenuItem, but the API is a bit more sane.
+
+ * gtk/Makefile.am:
+ Add gtkseparatormenuitem.[ch].
+
+ * gtk/gtk.h:
+ Add gtkseparatormenuitem.h.
+
+ * gtk/gtkentry.c:
+ * gtk/gtkmenufactory.c:
+ * gtk/gtktextview.c:
+ Use the new API for menu separators.
+
+ * demos/gtk-demo/menus.c (create_menu):
+ Add some GtkSeparatorMenuItem demo code.
+
2001-02-20 Havoc Pennington <hp@redhat.com>
* gtk/gtkaspectframe.c: Convert to new property API, patch from
diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10
index 63b783dd1..ed636e519 100644
--- a/ChangeLog.pre-2-10
+++ b/ChangeLog.pre-2-10
@@ -1,3 +1,23 @@
+2001-02-21 Alexander Larsson <alexl@redhat.com>
+
+ * gtk/gtkseparatormenuitem.[ch]:
+ Added new menu separator item. The drawing and size handling
+ is still done in GtkMenuItem, but the API is a bit more sane.
+
+ * gtk/Makefile.am:
+ Add gtkseparatormenuitem.[ch].
+
+ * gtk/gtk.h:
+ Add gtkseparatormenuitem.h.
+
+ * gtk/gtkentry.c:
+ * gtk/gtkmenufactory.c:
+ * gtk/gtktextview.c:
+ Use the new API for menu separators.
+
+ * demos/gtk-demo/menus.c (create_menu):
+ Add some GtkSeparatorMenuItem demo code.
+
2001-02-20 Havoc Pennington <hp@redhat.com>
* gtk/gtkaspectframe.c: Convert to new property API, patch from
diff --git a/ChangeLog.pre-2-2 b/ChangeLog.pre-2-2
index 63b783dd1..ed636e519 100644
--- a/ChangeLog.pre-2-2
+++ b/ChangeLog.pre-2-2
@@ -1,3 +1,23 @@
+2001-02-21 Alexander Larsson <alexl@redhat.com>
+
+ * gtk/gtkseparatormenuitem.[ch]:
+ Added new menu separator item. The drawing and size handling
+ is still done in GtkMenuItem, but the API is a bit more sane.
+
+ * gtk/Makefile.am:
+ Add gtkseparatormenuitem.[ch].
+
+ * gtk/gtk.h:
+ Add gtkseparatormenuitem.h.
+
+ * gtk/gtkentry.c:
+ * gtk/gtkmenufactory.c:
+ * gtk/gtktextview.c:
+ Use the new API for menu separators.
+
+ * demos/gtk-demo/menus.c (create_menu):
+ Add some GtkSeparatorMenuItem demo code.
+
2001-02-20 Havoc Pennington <hp@redhat.com>
* gtk/gtkaspectframe.c: Convert to new property API, patch from
diff --git a/ChangeLog.pre-2-4 b/ChangeLog.pre-2-4
index 63b783dd1..ed636e519 100644
--- a/ChangeLog.pre-2-4
+++ b/ChangeLog.pre-2-4
@@ -1,3 +1,23 @@
+2001-02-21 Alexander Larsson <alexl@redhat.com>
+
+ * gtk/gtkseparatormenuitem.[ch]:
+ Added new menu separator item. The drawing and size handling
+ is still done in GtkMenuItem, but the API is a bit more sane.
+
+ * gtk/Makefile.am:
+ Add gtkseparatormenuitem.[ch].
+
+ * gtk/gtk.h:
+ Add gtkseparatormenuitem.h.
+
+ * gtk/gtkentry.c:
+ * gtk/gtkmenufactory.c:
+ * gtk/gtktextview.c:
+ Use the new API for menu separators.
+
+ * demos/gtk-demo/menus.c (create_menu):
+ Add some GtkSeparatorMenuItem demo code.
+
2001-02-20 Havoc Pennington <hp@redhat.com>
* gtk/gtkaspectframe.c: Convert to new property API, patch from
diff --git a/ChangeLog.pre-2-6 b/ChangeLog.pre-2-6
index 63b783dd1..ed636e519 100644
--- a/ChangeLog.pre-2-6
+++ b/ChangeLog.pre-2-6
@@ -1,3 +1,23 @@
+2001-02-21 Alexander Larsson <alexl@redhat.com>
+
+ * gtk/gtkseparatormenuitem.[ch]:
+ Added new menu separator item. The drawing and size handling
+ is still done in GtkMenuItem, but the API is a bit more sane.
+
+ * gtk/Makefile.am:
+ Add gtkseparatormenuitem.[ch].
+
+ * gtk/gtk.h:
+ Add gtkseparatormenuitem.h.
+
+ * gtk/gtkentry.c:
+ * gtk/gtkmenufactory.c:
+ * gtk/gtktextview.c:
+ Use the new API for menu separators.
+
+ * demos/gtk-demo/menus.c (create_menu):
+ Add some GtkSeparatorMenuItem demo code.
+
2001-02-20 Havoc Pennington <hp@redhat.com>
* gtk/gtkaspectframe.c: Convert to new property API, patch from
diff --git a/ChangeLog.pre-2-8 b/ChangeLog.pre-2-8
index 63b783dd1..ed636e519 100644
--- a/ChangeLog.pre-2-8
+++ b/ChangeLog.pre-2-8
@@ -1,3 +1,23 @@
+2001-02-21 Alexander Larsson <alexl@redhat.com>
+
+ * gtk/gtkseparatormenuitem.[ch]:
+ Added new menu separator item. The drawing and size handling
+ is still done in GtkMenuItem, but the API is a bit more sane.
+
+ * gtk/Makefile.am:
+ Add gtkseparatormenuitem.[ch].
+
+ * gtk/gtk.h:
+ Add gtkseparatormenuitem.h.
+
+ * gtk/gtkentry.c:
+ * gtk/gtkmenufactory.c:
+ * gtk/gtktextview.c:
+ Use the new API for menu separators.
+
+ * demos/gtk-demo/menus.c (create_menu):
+ Add some GtkSeparatorMenuItem demo code.
+
2001-02-20 Havoc Pennington <hp@redhat.com>
* gtk/gtkaspectframe.c: Convert to new property API, patch from
diff --git a/demos/gtk-demo/menus.c b/demos/gtk-demo/menus.c
index 95ddb10e1..ac8a7e2c5 100644
--- a/demos/gtk-demo/menus.c
+++ b/demos/gtk-demo/menus.c
@@ -118,7 +118,11 @@ do_menus (void)
menu = create_menu (1, FALSE);
gtk_menu_set_accel_group (GTK_MENU (menu), accel_group);
-
+
+ menuitem = gtk_separator_menu_item_new ();
+ gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem);
+ gtk_widget_show (menuitem);
+
menuitem = gtk_check_menu_item_new_with_label ("Accelerate Me");
gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem);
gtk_widget_show (menuitem);
diff --git a/gtk/Makefile.am b/gtk/Makefile.am
index 6c2f8b706..c330298af 100644
--- a/gtk/Makefile.am
+++ b/gtk/Makefile.am
@@ -65,6 +65,7 @@ gtk_public_h_sources = @STRIP_BEGIN@ \
gtkcalendar.h \
gtkcheckbutton.h \
gtkcheckmenuitem.h \
+ gtkseparatormenuitem.h \
gtkclist.h \
gtkclipboard.h \
gtkcolorsel.h \
@@ -228,6 +229,7 @@ gtk_c_sources = @STRIP_BEGIN@ \
gtkcellrendererpixbuf.c \
gtkcheckbutton.c \
gtkcheckmenuitem.c \
+ gtkseparatormenuitem.c \
gtkclipboard.c \
gtkclist.c \
gtkcolorsel.c \
diff --git a/gtk/gtk.h b/gtk/gtk.h
index 19bbf630a..f1676ca08 100644
--- a/gtk/gtk.h
+++ b/gtk/gtk.h
@@ -123,6 +123,7 @@
#include <gtk/gtkscrolledwindow.h>
#include <gtk/gtkselection.h>
#include <gtk/gtkseparator.h>
+#include <gtk/gtkseparatormenuitem.h>
#include <gtk/gtksignal.h>
#include <gtk/gtksocket.h>
#include <gtk/gtkspinbutton.h>
diff --git a/gtk/gtkentry.c b/gtk/gtkentry.c
index 75c486649..21ca60f93 100644
--- a/gtk/gtkentry.c
+++ b/gtk/gtkentry.c
@@ -38,6 +38,7 @@
#include "gtkmain.h"
#include "gtkmenu.h"
#include "gtkmenuitem.h"
+#include "gtkseparatormenuitem.h"
#include "gtkselection.h"
#include "gtksignal.h"
@@ -2737,7 +2738,7 @@ gtk_entry_popup_menu (GtkEntry *entry,
append_action_signal (entry, entry->popup_menu, _("Copy"), "copy_clipboard");
append_action_signal (entry, entry->popup_menu, _("Paste"), "paste_clipboard");
- menuitem = gtk_menu_item_new (); /* Separator */
+ menuitem = gtk_separator_menu_item_new ();
gtk_widget_show (menuitem);
gtk_menu_shell_append (GTK_MENU_SHELL (entry->popup_menu), menuitem);
diff --git a/gtk/gtkmenufactory.c b/gtk/gtkmenufactory.c
index 4426ffff6..08a432471 100644
--- a/gtk/gtkmenufactory.c
+++ b/gtk/gtkmenufactory.c
@@ -30,6 +30,7 @@
#include "gtkmenubar.h"
#include "gtkmenufactory.h"
#include "gtkmenuitem.h"
+#include "gtkseparatormenuitem.h"
#include "gtksignal.h"
@@ -244,7 +245,7 @@ gtk_menu_factory_create (GtkMenuFactory *factory,
*/
if (strcmp (path, "<separator>") == 0)
{
- entry->widget = gtk_menu_item_new ();
+ entry->widget = gtk_separator_menu_item_new ();
gtk_container_add (GTK_CONTAINER (parent), entry->widget);
gtk_widget_show (entry->widget);
}
diff --git a/gtk/gtkseparatormenuitem.c b/gtk/gtkseparatormenuitem.c
new file mode 100644
index 000000000..43437c4bc
--- /dev/null
+++ b/gtk/gtkseparatormenuitem.c
@@ -0,0 +1,69 @@
+/* GTK - The GIMP Toolkit
+ * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+/*
+ * Modified by the GTK+ Team and others 1997-2000. See the AUTHORS
+ * file for a list of people on the GTK+ Team. See the ChangeLog
+ * files for a list of changes. These files are distributed with
+ * GTK+ at ftp://ftp.gtk.org/pub/gtk/.
+ */
+
+#include "gtkseparatormenuitem.h"
+
+static void gtk_separator_menu_item_class_init (GtkSeparatorMenuItemClass *klass);
+
+static GtkMenuItemClass *parent_class;
+
+GtkType
+gtk_separator_menu_item_get_type (void)
+{
+ static GtkType separator_menu_item_type = 0;
+
+ if (!separator_menu_item_type)
+ {
+ static const GTypeInfo separator_menu_item_info =
+ {
+ sizeof (GtkMenuItemClass),
+ NULL, /* base_init */
+ NULL, /* base_finalize */
+ (GClassInitFunc) gtk_separator_menu_item_class_init,
+ NULL, /* class_finalize */
+ NULL, /* class_data */
+ sizeof (GtkMenuItem),
+ 16, /* n_preallocs */
+ (GInstanceInitFunc) NULL,
+ };
+
+ separator_menu_item_type = g_type_register_static (GTK_TYPE_MENU_ITEM, "GtkSeparatorMenuItem", &separator_menu_item_info, 0);
+ }
+
+ return separator_menu_item_type;
+}
+
+static void
+gtk_separator_menu_item_class_init (GtkSeparatorMenuItemClass *klass)
+{
+ parent_class = gtk_type_class (gtk_menu_item_get_type ());
+}
+
+GtkWidget*
+gtk_separator_menu_item_new (void)
+{
+ return GTK_WIDGET (gtk_type_new (gtk_separator_menu_item_get_type ()));
+}
diff --git a/gtk/gtkseparatormenuitem.h b/gtk/gtkseparatormenuitem.h
new file mode 100644
index 000000000..fbac0012d
--- /dev/null
+++ b/gtk/gtkseparatormenuitem.h
@@ -0,0 +1,70 @@
+/* GTK - The GIMP Toolkit
+ * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+/*
+ * Modified by the GTK+ Team and others 1997-2000. See the AUTHORS
+ * file for a list of people on the GTK+ Team. See the ChangeLog
+ * files for a list of changes. These files are distributed with
+ * GTK+ at ftp://ftp.gtk.org/pub/gtk/.
+ */
+
+#ifndef __GTK_SEPARATOR_MENU_ITEM_H__
+#define __GTK_SEPARATOR_MENU_ITEM_H__
+
+#include <gdk/gdk.h>
+#include <gtk/gtkmenuitem.h>
+
+
+#ifdef __cplusplus
+extern "C" {
+#endif /* __cplusplus */
+
+
+#define GTK_TYPE_SEPARATOR_MENU_ITEM (gtk_separator_menu_item_get_type ())
+#define GTK_SEPARATOR_MENU_ITEM(obj) (GTK_SEPARATOR_CAST ((obj), GTK_TYPE_SEPARATOR_MENU_ITEM, GtkSeparatorMenuItem))
+#define GTK_SEPARATOR_MENU_ITEM_CLASS(klass) (GTK_SEPARATOR_CLASS_CAST ((klass), GTK_TYPE_SEPARATOR_MENU_ITEM, GtkSeparatorMenuItemClass))
+#define GTK_IS_SEPARATOR_MENU_ITEM(obj) (GTK_SEPARATOR_TYPE ((obj), GTK_TYPE_SEPARATOR_MENU_ITEM))
+#define GTK_IS_SEPARATOR_MENU_ITEM_CLASS(klass) (GTK_SEPARATOR_CLASS_TYPE ((klass), GTK_TYPE_SEPARATOR_MENU_ITEM))
+#define GTK_SEPARATOR_MENU_ITEM_GET_CLASS(obj) (GTK_SEPARATOR_GET_CLASS ((obj), GTK_TYPE_SEPARATOR_MENU_ITEM, GtkSeparatorMenuItemClass))
+
+
+typedef struct _GtkSeparatorMenuItem GtkSeparatorMenuItem;
+typedef struct _GtkSeparatorMenuItemClass GtkSeparatorMenuItemClass;
+
+struct _GtkSeparatorMenuItem
+{
+ GtkMenuItem menu_item;
+};
+
+struct _GtkSeparatorMenuItemClass
+{
+ GtkMenuItemClass parent_class;
+};
+
+
+GtkType gtk_separator_menu_item_get_type (void) G_GNUC_CONST;
+GtkWidget* gtk_separator_menu_item_new (void);
+
+
+#ifdef __cplusplus
+}
+#endif /* __cplusplus */
+
+
+#endif /* __GTK_SEPARATOR_MENU_ITEM_H__ */
diff --git a/gtk/gtktextview.c b/gtk/gtktextview.c
index 283a72e8b..a4537d674 100644
--- a/gtk/gtktextview.c
+++ b/gtk/gtktextview.c
@@ -32,6 +32,7 @@
#include "gtkmain.h"
#include "gtkmenu.h"
#include "gtkmenuitem.h"
+#include "gtkseparatormenuitem.h"
#include "gtksignal.h"
#include "gtktextdisplay.h"
#include "gtktextview.h"
@@ -4905,7 +4906,7 @@ gtk_text_view_popup_menu (GtkTextView *text_view,
append_action_signal (text_view, text_view->popup_menu, _("Copy"), "copy_clipboard");
append_action_signal (text_view, text_view->popup_menu, _("Paste"), "paste_clipboard");
- menuitem = gtk_menu_item_new (); /* Separator */
+ menuitem = gtk_separator_menu_item_new ();
gtk_widget_show (menuitem);
gtk_menu_shell_append (GTK_MENU_SHELL (text_view->popup_menu), menuitem);