diff options
-rw-r--r-- | ChangeLog | 20 | ||||
-rw-r--r-- | ChangeLog.pre-2-0 | 20 | ||||
-rw-r--r-- | ChangeLog.pre-2-10 | 20 | ||||
-rw-r--r-- | ChangeLog.pre-2-2 | 20 | ||||
-rw-r--r-- | ChangeLog.pre-2-4 | 20 | ||||
-rw-r--r-- | ChangeLog.pre-2-6 | 20 | ||||
-rw-r--r-- | ChangeLog.pre-2-8 | 20 | ||||
-rw-r--r-- | demos/gtk-demo/menus.c | 6 | ||||
-rw-r--r-- | gtk/Makefile.am | 2 | ||||
-rw-r--r-- | gtk/gtk.h | 1 | ||||
-rw-r--r-- | gtk/gtkentry.c | 3 | ||||
-rw-r--r-- | gtk/gtkmenufactory.c | 3 | ||||
-rw-r--r-- | gtk/gtkseparatormenuitem.c | 69 | ||||
-rw-r--r-- | gtk/gtkseparatormenuitem.h | 70 | ||||
-rw-r--r-- | gtk/gtktextview.c | 3 |
15 files changed, 293 insertions, 4 deletions
@@ -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 \ @@ -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); |