Gtk-Perl

 view release on metacpan or  search on metacpan

Bonobo/pkg.defs  view on Meta::CPAN

(define-object BonoboSocket (GtkContainer) (perl Gnome::BonoboSocket))
(define-object BonoboStorage (BonoboXObject) (perl Gnome::BonoboStorage))
(define-object BonoboStream (BonoboObject) (perl Gnome::BonoboStream))
(define-object BonoboStreamMem (BonoboStream) (perl Gnome::BonoboStreamMem))
(define-object BonoboUIComponent (BonoboXObject) (cast BONOBO_UI_COMPONENT) (perl Gnome::BonoboUIComponent))
(define-object BonoboUIEngine (GtkObject) (cast BONOBO_UI_ENGINE) (perl Gnome::BonoboUIEngine))
(define-object BonoboUIEngineConfig (GtkObject) (cast BONOBO_UI_ENGINE_CONFIG) (perl Gnome::BonoboUIEngineConfig))
(define-object BonoboUIConfigWidget (GtkVBox) (cast BONOBO_UI_CONFIG_WIDGET) (perl Gnome::BonoboUIConfigWidget))
(define-object BonoboUIContainer (BonoboXObject) (cast BONOBO_UI_CONTAINER) (perl Gnome::BonoboUIContainer))
(define-object BonoboUISyncKeys (BonoboUISync) (cast BONOBO_UI_SYNC_KEYS) (perl Gnome::BonoboUISyncKeys))
(define-object BonoboUISyncMenu (BonoboUISync) (cast BONOBO_UI_SYNC_MENU) (perl Gnome::BonoboUISyncMenu))
(define-object BonoboUISyncStatus (BonoboUISync) (cast BONOBO_UI_SYNC_STATUS) (perl Gnome::BonoboUISyncStatus))
(define-object BonoboUISyncToolbar (BonoboUISync) (cast BONOBO_UI_SYNC_TOOLBAR) (perl Gnome::BonoboUISyncToolbar))
(define-object BonoboUISync (GtkObject) (cast BONOBO_UI_SYNC) (perl Gnome::BonoboUISync))
(define-object BonoboUIToolbarButtonItem (BonoboUIToolbarItem) (cast BONOBO_UI_TOOLBAR_BUTTON_ITEM) (perl Gnome::BonoboUIToolbarButtonItem))
;(define-object BonoboUIToolbarControlItem (BonoboUIToolbarButtonItem) (cast BONOBO_UI_TOOLBAR_CONTROL_ITEM))
(define-object BonoboUIToolbarIcon (GtkMisc) (cast BONOBO_UI_TOOLBAR_ICON) (perl Gnome::BonoboUIToolbarIcon))
(define-object BonoboUIToolbarItem (GtkBin) (cast BONOBO_UI_TOOLBAR_ITEM) (perl Gnome::BonoboUIToolbarItem))
(define-object BonoboUIToolbarPopupItem (BonoboUIToolbarToggleButtonItem) (cast BONOBO_UI_TOOLBAR_POPUP_ITEM) (perl Gnome::BonoboUIToolbarPopupItem))
(define-object BonoboUIToolbarSeparatorItem (BonoboUIToolbarItem) (cast BONOBO_UI_TOOLBAR_SEPARATOR_ITEM) (perl Gnome::BonoboUIToolbarSeparatorItem))
(define-object BonoboUIToolbarToggleButtonItem (BonoboUIToolbarButtonItem) (cast BONOBO_UI_TOOLBAR_TOGGLE_BUTTON_ITEM) (perl Gnome::BonoboUIToolbarToggleButtonItem))

Bonobo/xs/BonoboWindow.xs  view on Meta::CPAN

	char *	name

CORBA::Object
bonobo_window_component_get (win, name)
	Gnome::BonoboWindow	win
	char *	name

void
bonobo_window_add_popup (win, popup, path)
	Gnome::BonoboWindow	win
	Gtk::Menu	popup
	char *	path

void
bonobo_window_remove_popup (win, path)
	Gnome::BonoboWindow	win
	char *	path

#endif

ChangeLog  view on Meta::CPAN

	not vanish under us.

Mon Mar  5 16:46:00 CET 2001 Paolo Molaro <lupus@ximian.com

	* Gtk/gtk-0.99.typemap: correct entries for unsigned integers.
	* Bonobo/*: updates and new UI stuff. Show usage of the PropertyBag.
	Bug fixes.

Sat Mar  3 20:26:47 CET 2001 Paolo Molaro <lupus@ximian.com

	* Gtk/xs/GtkMenu.xs, Gtk/xs/GtkOptionMenu.xs: fix return types of
	gtk_option_menu_get_menu() and gtk_menu_get_active() as pointed out
	by Dave Carrigan <dave@rudedog.org>.
	* Gtk/gtk-0.99.typemap: always bless GtkObjects in the right package.
	* Gtk/xs/GtkEditable.xs: added accessors for selection position fields.

Wed Feb 28 19:25:45 CET 2001 Paolo Molaro <lupus@ximian.com>

	* Gtk/xs/Gtk.xs: added facilities to modify a Gtk::RcStyle
	(test program in Gtk/samples/gtkrctest.pl).

ChangeLog  view on Meta::CPAN


Thu, 13 Apr 2000 17:40:40 +0200 Paolo Molaro <lupus@linuxcare.com>

	* Gtk/xs/GtkCList-1.2.xs: check for correct row in set_focus_row.
	
Sun,  9 Apr 2000 18:04:55 +0200 Paolo Molaro <lupus@linuxcare.com>

	* Gtk/xs/Gtk.xs: add Gtk::Gdk->event_new.
	* Gtk/GdkTypes.c: more comprehensive event handling and bug fixes.
	* Gtk/MiscTypes.c: alloc_temp zeroes the allocated space now.
	* Gnome/xs/GtkPixmapMenuItem.xs: enable.
	* *.xs: added default values for more functions.
	* Gnome/xs/GnomeDialog.xs: add buttons accessor.

Fri,  7 Apr 2000 17:28:32 +0200 Paolo Molaro <lupus@linuxcare.com>

	* Gtk/xs/GtkBin.xs: allow NULL widget in child accessor and fix settor.
	* Gtk/Gtk.pm: fix connect_object stuff.
	* Gtk/GtkTypes.c: add GdkColor to supported boxed types in get/set arg.
	* Gtk/gtk-1.3.defs: delete useless, buggy define-enum.
	* Gnome/xs/GnomeFileEntry.xs: add accessor for file selection widget.

ChangeLog  view on Meta::CPAN

	  gnome_file_entry_set_directory(), gnome_file_entry_set_default_path(),
	  gnome_file_entry_get_full_path().
	* Gnome/xs/GnomePixmapEntry.xs: duh, I though I had implemented this
	  already. done now.
	* Gtk/gtk-1.2.defs: update GdkFunction enumeration.
	
Mon, 16 Aug 1999 17:22:36 +0200 Paolo Molaro <lupus@debian.org>

	* Glade/xs/GladeXML.xs, Glade/GladeXML.pm: updates for new version of
	  libglade (tested with 0.2).
	* Gtk/xs/GtkMenuBar.xs: added gtk_menu_bar_set_shadow_type.

Sun, 15 Aug 1999 02:15:22 PDT Kenneth Albanowski <kjahds@kjahds.com>

	* Makefile.PL: Move GtkKeysyms.pm to build/ directory, and clean up
	  it and the pods.
	* Gnome/xs/GnomeDialog.xs: Clean up a few warnings
	* Gnome/samples/html.pl: get html sample to run.

Fri, 30 Jul 1999 19:14:58 +0200 Paolo Molaro <lupus@debian.org>

	* Gnome/xs/GnomeNumberEntry.xs: fixed wrong cast and wrong
	  preprocessor directive (reported by Dermot Musgrove).
	* Gnome/xs/Gnome.xs: got rid of annoying printf.
	* Gnome/xs/*.xs: added GnomeFontPicker, GnomeHRef,
	  GnomeIconEntry, GnomePixmapEntry, GnomePaperSelector,
	  GnomeDock, GnomeDockItem, GnomeDockBand, GnomeDockLayout,
	  GtkPixmapMenuItem, GnomeAnimator implemeentations.
	* Gnome/pkg.pl: #define GNOME_HVER.
	* Gnome/pkg.defs: added some enumerations.

Fri, 23 Jul 1999 13:07:07 +0200 Paolo Molaro <lupus@debian.org>

	* tools/gendoc.pl: fixes and additions.
	* Gtk/xs/Gtk.xs: more documentation. Fixes to the print,
	  error and warning functions (for text with %s in them).

Thu, 22 Jul 1999 15:55:55 +0200 Paolo Molaro <lupus@debian.org>

ChangeLog  view on Meta::CPAN

	  involving typemap changes (should fix compilation problems with
	  Gtk+ 1.0)..
	* Gtk/xs/GtkViewport.xs: allow undef for the adjustments in the
	  constructor.
	* Gtk/xs/ScrolledWindow.xs: add accessors for the adjustments.

Wed, 21 Jul 1999 21:21:57 +0200 Paolo Molaro <lupus@debian.org>

	* Gtk/xs/.cvsignore: update.
	* Gtk/gtk-1.2.typemap: missing from an earlier commit.
	* Gtk/xs/GtkTearoffMenuItem.xs: added support for the widget.
	
Wed, 21 Jul 1999 21:21:57 +0200 Paolo Molaro <lupus@debian.org>

	* tools/gendoc.pl: script to generate the reference manual.
	  I'm not satisfied with the pod -> text/html output so
	  maybe it's better to switch to something sgml-based,
	  but this is a start...
	* Gtk/xs/Gtk.xs: beginning of documentation.

Sun,  4 Jul 1999 14:37:01 +0200 Paolo Molaro <lupus@debian.org>

	* Gtk/xs/GtkItemFactory.xs: completed support.
	* Gtk/samples/test.pl: test Gtk::ItemFactory.
	* Gtk/xs/Gtk.xs: fix leak in idle_add, added aliases
	  for Gtk::init_check and Gtk::Gdk::init_check.
	  Added gdk_error_trap_push() and gdk_error_trap_pop().
	* Gtk/xs/GtkObject.xs: added signal_handler_pending_by_id().
	* Gtk/xs/GtkHandleBox.xs: added gtk_handle_box_set_snap_edge(),
	  gtk_handle_box_set_handle_position() and
	  gtk_handle_box_set_shadow_type().
	* Gtk/xs/GtkMenu.xs: added gtk_menu_set_tearoff_state() and
	  gtk_menu_set_title().
	* test.pl: test init_check.

1999-07-12 12:15:10 EDT Peter Teichman  <pat4@acpub.duke.edu>

	* Gnome/xs/AppletWidget.xs: made --with-gnome-panel work with
	current panels

Sat, 3 Jul 1999 11:18:31 +0200 Paolo Molaro <lupus@debian.org>

ChangeLog  view on Meta::CPAN

Tue Feb  2 11:49:07 EST 1999 Tuomas J. Lukka <lukka@iki.fi>

	* fixing Gtk/samples/test.pl CTree to work

Tue Feb  2 09:31:33 EST 1999 Tuomas J. Lukka <lukka@iki.fi>

	* Oops - fixed the previous change - I had wrong Gtk version installed

Mon Feb  1 23:05:14 EST 1999 Tuomas J. Lukka <lukka@iki.fi>

	* CheckMenuItem change for newest gtk+

Mon Jan 25 11:42:21 EST 1999 Mandrake <mandrake@mandrake.net>

	Made --with-gnome-panel work again (even under make test)

Sun Jan 24 18:30:25 EST 1999 Mandrake <mandrake@mandrake.net>

	Made gtkxmhtml module work again (even under make test)

Sun Jan 24 17:00:35 EST 1999 Mandrake <mandrake@mandrake.net>

ChangeLog  view on Meta::CPAN

	* Makefile.PL: gnome-config doesn't output the -I for --include-dir
	so we'll put it there.

Sun Jan 24 16:16:07 EST 1999 Mandrake <mandrake@mandrake.net>

	* Gnome/samples/perl-zterm.pl : updated to new format.

Sun Jan 24 16:08:32 EST 1999 Mandrake <mandrake@mandrake.net>

	* s/gtk_check_menu_item_set_state/gtk_check_menu_item_set_active/
	in GtkCheckMenuItem.xs
	* Gnome/xs/ZvtTerm.xs - made this actually work :)

	also various fixes to make make test work again.

Thu Jan 21 20:58:09 PST 1999 Manish Singh <yosh@gimp.org>

	* GtkCList-1.2.xs: added gtk_clist_set_shadow_type

	* GtkCList.xs: deprecated gtk_clist_set_border

Glade/samples/test.glade  view on Meta::CPAN

      <shadow_type>GTK_SHADOW_OUT</shadow_type>
      <handle_position>GTK_POS_LEFT</handle_position>
      <snap_edge>GTK_POS_TOP</snap_edge>
      <child>
	<padding>0</padding>
	<expand>False</expand>
	<fill>True</fill>
      </child>

      <widget>
	<class>GtkMenuBar</class>
	<name>MenuBar</name>
	<shadow_type>GTK_SHADOW_OUT</shadow_type>

	<widget>
	  <class>GtkMenuItem</class>
	  <name>FileMenu</name>
	  <label>File</label>
	  <right_justify>False</right_justify>

	  <widget>
	    <class>GtkMenu</class>
	    <name>menu7</name>

	    <widget>
	      <class>GtkMenuItem</class>
	      <name>Quit</name>
	      <accelerator>
		<modifiers>GDK_CONTROL_MASK</modifiers>
		<key>GDK_Q</key>
		<signal>activate</signal>
	      </accelerator>
	      <signal>
		<name>activate</name>
		<handler>gtk_main_quit</handler>
	      </signal>
	      <label>Quit</label>
	      <right_justify>False</right_justify>
	    </widget>
	  </widget>
	</widget>

	<widget>
	  <class>GtkMenuItem</class>
	  <name>HelpMenu</name>
	  <label>Help</label>
	  <right_justify>True</right_justify>

	  <widget>
	    <class>GtkMenu</class>
	    <name>menu8</name>

	    <widget>
	      <class>GtkMenuItem</class>
	      <name>About</name>
	      <accelerator>
		<modifiers>GDK_CONTROL_MASK</modifiers>
		<key>GDK_A</key>
		<signal>activate</signal>
	      </accelerator>
	      <signal>
		<name>activate</name>
		<handler>gtk_widget_show</handler>
		<object>AboutDialog</object>

Gnome/pkg.defs  view on Meta::CPAN

(define-object GnomeFontPicker (GtkButton))
(define-object GnomeHRef (GtkButton))
(define-object GnomeIconEntry (GtkVBox))
(define-object GnomePixmapEntry (GtkVBox))
(define-object GnomePaperSelector (GtkVBox))
(define-object GnomeDock (GtkContainer))
(define-object GnomeDockBand (GtkContainer))
(define-object GnomeDockItem (GtkBin))
(define-object GnomeDockLayout (GtkObject))
(define-object GnomeAnimator (GtkWidget))
(define-object GtkPixmapMenuItem (GtkMenuItem))
(define-object GnomeIconSelection (GtkVBox))

(define-object GnomeStock (GnomePixmap))
(define-object GnomeSpell (GtkVBox))
(define-object GnomeMDI (GtkObject))
(define-object GnomeMDIChild (GtkObject) (cast GNOME_MDI_CHILD))
(define-object GnomeMDIGenericChild (GnomeMDIChild) (cast GNOME_MDI_GENERIC_CHILD))


(define-enum GnomeDockPlacement

Gnome/samples/app-helper.pl  view on Meta::CPAN


init Gnome "app-helper", "0.1";
my $app = new Gnome::App "app-helper", "gnome-app-helper test";
signal_connect $app 'delete_event', sub { Gtk->main_quit; return 0 };

my @menu_info = ({type => 'subtree',
		    label => '_File',
		    subtree => [{type => 'subtree',
				 label => '_Foo',
				 pixmap_type => 'stock',
				 pixmap_info => 'Menu_New',
				 subtree => [{type => 'item',
					      label => '_Quux'},
					     {type => 'item',
					      label => '_Argh'}]},
				{type => 'item',
				 label => '_Bar',
				 pixmap_type => 'stock',
				 pixmap_info => 'Menu_About'},
				{type => 'item',
				 label => 'B_az',
				 pixmap_type => 'stock',
				 pixmap_info => 'Menu_Quit',
				 # example code with user data...
				 # note that you get the user data first
				 # and the object last unlike signals...
				 callback => [sub { warn "GOTO DATA: $_[0]\n"; Gtk->main_quit }, "user data"]
				 }]},
		   {type => 'subtree',
		    label => '_Edit',
		    subtree => [{type => 'radioitems',
				 moreinfo => [{type => 'item',
					       label => '_Homer'},

Gnome/xs/Gnome.xs  view on Meta::CPAN

Gtk::Button_Sink
gnome_stock_or_ordinary_button(btype)
	char *btype
CODE:
	const char *t = gnome_perl_stock_button(btype);
	if(!t) t = btype;
	RETVAL = GTK_BUTTON(gnome_stock_or_ordinary_button(t));
OUTPUT:
	RETVAL

Gtk::MenuItem_Sink
gnome_stock_menu_item(mtype, text)
	char *mtype
	char *text
CODE:
	const char *t = gnome_perl_stock_menu_item(mtype);
	if(!t) {die("Invalid stock menuitem '%s'", mtype);}
	RETVAL = GTK_MENU_ITEM(gnome_stock_menu_item(t,text));
OUTPUT:
	RETVAL

Gnome/xs/GnomeApp.xs  view on Meta::CPAN

	char *	appname
	char *	title
	CODE:
	RETVAL = (GnomeApp*)(gnome_app_new(appname, title));
	OUTPUT:
	RETVAL

void
gnome_app_set_menus(app, menubar)
	Gnome::App	app
	Gtk::MenuBar	menubar

void
gnome_app_create_menus(app, info, ...)
	Gnome::App	app
	ALIAS:
		Gnome::App::create_toolbar = 1
	CODE:
	{
		int i, count;
		GnomeUIInfo *infos;

Gnome/xs/GnomeApp.xs  view on Meta::CPAN

			gnome_app_create_toolbar(app, infos);
		else
			gnome_app_create_menus(app, infos);
		refill_uiinfo(1, count, infos);
	}


void
gnome_app_fill_menu (Class, menu_shell, uiinfo, accel_group, uline_accels, pos, ...)
	SV *	Class
	Gtk::MenuShell	menu_shell
	Gtk::AccelGroup_OrNULL	accel_group
	bool	uline_accels
	int	pos
	CODE:
	{
		int i, count;
		GnomeUIInfo *infos;

		fill_uiinfo(6, count, infos);
		gnome_app_fill_menu (menu_shell, infos, accel_group, uline_accels, pos);

Gnome/xs/GnomeStock.xs  view on Meta::CPAN


Gtk::Button_Sink
gnome_stock_or_ordinary_button (Class, type)
	SV *	Class
	char *	type
	CODE:
	RETVAL = (GtkButton*)(gnome_stock_or_ordinary_button(type));
	OUTPUT:
	RETVAL

Gtk::MenuItem_Sink
gnome_stock_menu_item (Class, type, text)
	SV *	Class
	char *	type
	char *	text
	CODE:
	RETVAL = (GtkMenuItem*)(gnome_stock_menu_item(type, text));
	OUTPUT:
	RETVAL

void
gnome_stock_menu_accel (Class, type)
	SV *	Class
	char *	type
	PPCODE:
	{
		gboolean result;

Gnome/xs/GtkPixmapMenuItem.xs  view on Meta::CPAN

#include "EXTERN.h"
#include "perl.h"
#include "XSUB.h"

#include "PerlGtkInt.h"

#include "GtkDefs.h"
#include "GnomeDefs.h"


MODULE = Gtk::PixmapMenuItem		PACKAGE = Gtk::PixmapMenuItem		PREFIX = gtk_pixmap_menu_item_

#ifdef GTK_PIXMAP_MENU_ITEM


Gtk::PixmapMenuItem_Sink
new (Class)
	SV *	Class
	CODE:
	RETVAL = (GtkPixmapMenuItem*)(gtk_pixmap_menu_item_new());
	OUTPUT:
	RETVAL

void
gtk_pixmap_menu_item_set_pixmap (menu_item, pixmap)
	Gtk::PixmapMenuItem	menu_item
	Gtk::Widget	pixmap


#endif

Gtk/GtkTypes.c  view on Meta::CPAN

		for(i=1;i<=av_len(args);i++)
			XPUSHs(sv_2mortal(newSVsv(*av_fetch(args,i,0))));
	}

	XPUSHs(sv_2mortal(newSVGtkObjectRef(GTK_OBJECT(widget), 0)));
	PUTBACK;

	i = perl_call_sv(handler, G_DISCARD);
}

GtkMenuEntry * SvGtkMenuEntry(SV * data, GtkMenuEntry * e)
{
	dTHR;

	HV * h;
	SV ** s;

	if ((!data) || (!SvOK(data)) || (!SvRV(data)) || (SvTYPE(SvRV(data)) != SVt_PVHV))
		return 0;
	
	if (!e)
		e = pgtk_alloc_temp(sizeof(GtkMenuEntry));

	h = (HV*)SvRV(data);
	
	if ((s=hv_fetch(h, "path", 4, 0)) && SvOK(*s))
		e->path = SvPV(*s,PL_na);
	else
		e->path = 0;
		/*croak("menu entry must contain path");*/
	if ((s=hv_fetch(h, "accelerator", 11, 0)) && SvOK(*s))
		e->accelerator = SvPV(*s, PL_na);

Gtk/GtkTypes.c  view on Meta::CPAN

	}
	else {
		e->callback = 0;
		e->callback_data = 0;
		/*croak("menu entry must contain callback");*/
	}

	return e;
}

SV * newSVGtkMenuEntry(GtkMenuEntry * e)
{
	dTHR;

	HV * h;
	SV * r;
	
	if (!e)
		return &PL_sv_undef;
		
	h = newHV();

Gtk/GtkTypes.h  view on Meta::CPAN


PerlGtkDeclareFunc(SV *, GtkGetArg)(GtkArg *);
PerlGtkDeclareFunc(void, GtkSetArg)(GtkArg * a, SV * v, SV * Class, GtkObject * Object);
PerlGtkDeclareFunc(void, GtkSetRetArg)(GtkArg * a, SV * v, SV * Class, GtkObject * Object);
PerlGtkDeclareFunc(SV *, GtkGetRetArg)(GtkArg * a);

PerlGtkDeclareVar(int, pgtk_did_we_init_gdk);
PerlGtkDeclareVar(int, pgtk_did_we_init_gtk);
PerlGtkDeclareFunc(void, GtkInit_internal)(void);

typedef GtkMenuFactory * Gtk__MenuFactory;
typedef GtkSelectionData * Gtk__SelectionData;

typedef GtkWidget * Gtk__Widget_Up;
typedef GtkWidget * Gtk__Widget_Sink_Up;
typedef GtkWidget * Gtk__Widget_OrNULL_Up;

#define CastupGtk__Widget GTK_WIDGET

typedef GtkObject * Gtk__Object_Up;
typedef GtkObject * Gtk__Object_Sink_Up;
typedef GtkObject * Gtk__Object_OrNULL_Up;

#define CastupGtk__Object GTK_OBJECT

PerlGtkDeclareFunc(SV *, newSVGtkObjectRef)(GtkObject * object, char * classname);
PerlGtkDeclareFunc(GtkObject *, SvGtkObjectRef)(SV * o, char * name);

PerlGtkDeclareFunc(SV *, newSVGtkMenuEntry)(GtkMenuEntry * o);
PerlGtkDeclareFunc(GtkMenuEntry *, SvGtkMenuEntry)(SV * o, GtkMenuEntry * e);

PerlGtkDeclareFunc(SV *, newSVGtkSelectionDataRef)(GtkSelectionData * o);
PerlGtkDeclareFunc(GtkSelectionData *, SvGtkSelectionDataRef)(SV * data);

PerlGtkDeclareFunc(int, GCGtkObjects)(void);

PerlGtkDeclareFunc(void, FreeHVObject)(HV * hv_object);

typedef guint (*gtkTypeInitFunc)(void);

Gtk/Makefile.PL  view on Meta::CPAN


$gtk->set_inc($inc);
$gtk->set_libs($libs);
$gtk->add_typemaps(map {cwd().'/'.$_} "build/GtkTypemap", "gtk-0.99.typemap", "gtk-1.2.typemap");
$gtk->add_headers ('<gtk/gtk.h>', '<gtk/gtkinvisible.h>', '"GtkTypes.h"', '"GdkTypes.h"', '"MiscTypes.h"');
$gtk->install (qw(build/PerlGtkInt.h build/PerlGtkExt.h ppport.h build/GtkDefs.h));
$gtk->add_c(qw(build/GtkDefs.c build/PerlGtkExt.c 
	GdkTypes.c GtkTypes.c MiscTypes.c Derived.c));
$gtk->add_xs ('Gtk.xs', "Gtk-1.1.xs", "GtkAccelGroup.xs", "GtkProgressBar-1.1.xs", 
	"GtkToolbar-1.1.6.xs", "GtkAccelGroup.xs", "GtkProgressBar-1.1.xs", "GtkCList-1.2.xs",
	"GtkTearoffMenuItem.xs", "GtkCalendar.xs", "Gtk-1.2.xs");
$gtk->add_defs (qw(gtk-0.99.defs gtk-1.0.defs gtk-1.1.defs gtk-1.1.1.defs gtk-1.1.3.defs gtk-1.1.4.defs gtk-1.1.6.defs gtk-1.2.defs ));

$gtk->add_xs ("GtkSelection.xs");
$gtk->add_boot ("Gtk::Selection", "Gtk11", "Gtk__AccelGroup", "Gtk::ProgressBar11",
	"Gtk::Toolbar116", "Gtk__AccelGroup", "Gtk::ProgressBar11", "Gtk::CList12", "Gtk12");

$gtk->add_pm (
	'Gdk.pm' => '$(INST_LIBDIR)/Gtk/Gdk.pm',
	'Gtk.pm' => '$(INST_LIBDIR)/Gtk.pm',
	'LWP.pm' => '$(INST_LIBDIR)/Gtk/LWP.pm',

Gtk/gtk-0.99.defs  view on Meta::CPAN

  (mouse GTK_WIN_POS_MOUSE))

(define-enum GtkSubmenuDirection
  (left GTK_DIRECTION_LEFT)
  (right GTK_DIRECTION_RIGHT))

(define-enum GtkSubmenuPlacement
  (top-bottom GTK_TOP_BOTTOM)
  (left-right GTK_LEFT_RIGHT))

(define-enum GtkMenuFactoryType
  (menu GTK_MENU_FACTORY_MENU)
  (menu-bar GTK_MENU_FACTORY_MENU_BAR)
  (option-menu GTK_MENU_FACTORY_OPTION_MENU))

(define-enum GtkMetricType
  (pixels GTK_PIXELS)
  (inches GTK_INCHES)
  (centimeters GTK_CENTIMETERS))

(define-enum GtkScrollType

Gtk/gtk-0.99.defs  view on Meta::CPAN

   (GtkWidget widget)
   (string tip_text (null-ok))
   (string tip_private)))

(define-func gtk_tooltips_set_colors
  none
  ((GtkTooltips tooltips)
   (GdkColor background)
   (GdkColor foreground)))

;; MenuShell

(define-object GtkMenuShell (GtkContainer))

(define-func gtk_menu_shell_append
  none
  ((GtkMenuShell menu_shell)
   (GtkWidget child)))

(define-func gtk_menu_shell_prepend
  none
  ((GtkMenuShell menu_shell)
   (GtkWidget child)))

(define-func gtk_menu_shell_insert
  none
  ((GtkMenuShell menu_shell)
   (GtkWidget child)
   (int position)))

(define-func gtk_menu_shell_deactivate
  none
  ((GtkMenuShell menu_shell)))

;; MenuBar

(define-object GtkMenuBar (GtkMenuShell))

(define-func gtk_menu_bar_new
  GtkWidget
  ())

(define-func gtk_menu_bar_append
  none
  ((GtkMenuBar menu_bar)
   (GtkWidget child)))

(define-func gtk_menu_bar_prepend
  none
  ((GtkMenuBar menu_bar)
   (GtkWidget child)))

(define-func gtk_menu_bar_insert
  none
  ((GtkMenuBar menu_bar)
   (GtkWidget child)
   (int position)))

;; Menu

(define-object GtkMenu (GtkMenuShell))

(define-func gtk_menu_new
  GtkWidget
  ())

(define-func gtk_menu_append
  none
  ((GtkMenu menu)
   (GtkWidget child)))

(define-func gtk_menu_prepend
  none
  ((GtkMenu menu)
   (GtkWidget child)))

(define-func gtk_menu_insert
  none
  ((GtkMenu menu)
   (GtkWidget child)
   (int position)))

(define-func gtk_menu_popup_interp
  none
  ((GtkMenu menu)
   (GtkWidget parent_menu_shell)
   (GtkWidget parent_menu_item)
   (int button)
   (int activate_time)))

(define-func gtk_menu_popdown
  none
  ((GtkMenu menu)))

(define-func gtk_menu_get_active
  GtkWidget
  ((GtkMenu menu)))

(define-func gtk_menu_set_active
  none
  ((GtkMenu menu)
   (int index)))

(define-func gtk_menu_set_accelerator_table
  none
  ((GtkMenu menu)
   (GtkAcceleratorTable table)))

;; XXX - probably needs _interp version
;; gtk_menu_attach_to_widget

(define-func gtk_menu_get_attach_widget
  GtkWidget
  ((GtkMenu menu)))

(define-func gtk_menu_detach
  none
  ((GtkMenu menu)))

;; MenuItem

(define-object GtkMenuItem (GtkItem))

(define-func gtk_menu_item_new
  GtkWidget
  ())

(define-func gtk_menu_item_new_with_label
  GtkWidget
  ((string label)))

(define-func gtk_menu_item_set_submenu
  none
  ((GtkMenuItem menu_item)
   (GtkWidget submenu)))

(define-func gtk_menu_item_remove_submenu
  none
  ((GtkMenuItem menu_item)))

(define-func gtk_menu_item_set_placement
  none
  ((GtkMenuItem menu_item)
   (GtkSubmenuPlacement placement)))

(define-func gtk_menu_item_accelerator_size
  none
  ((GtkMenuItem menu_item)))

(define-func gtk_menu_item_accelerator_text
  none
  ((GtkMenuItem menu_item)
   ;; is this right or is it a return value?
   (string accelerator_text))) 

(define-func gtk_menu_item_configure
  none
  ((GtkMenuItem menu_item)
   (bool show_toggle_indicator)
   (bool show_submenu_indicator)))

(define-func gtk_menu_item_select
  none
  ((GtkMenuItem menu_item)))

(define-func gtk_menu_item_deselect
  none
  ((GtkMenuItem menu_item)))

(define-func gtk_menu_item_activate
  none
  ((GtkMenuItem menu_item)))

(define-func gtk_menu_item_right_justify
  none
  ((GtkMenuItem menu_item)))

;; CheckMenuItem

(define-object GtkCheckMenuItem (GtkMenuItem))

(define-func gtk_check_menu_item_new
  GtkWidget
  ())

(define-func gtk_check_menu_item_new_with_label
  GtkWidget
  ((string label)))

(define-func gtk_check_menu_item_set_state
  none
  ((GtkCheckMenuItem check_menu_item)
   (bool state)))

(define-func gtk_check_menu_item_set_show_toggle
  none
  ((GtkCheckMenuItem menu_item)
   (bool always)))

(define-func gtk_check_menu_item_toggled
  none
  ((GtkCheckMenuItem check_menu_item)))

;; RadioMenuItem

(define-object GtkRadioMenuItem (GtkCheckMenuItem))

(define-func gtk_radio_menu_item_new_interp
  GtkWidget
  ((GtkRadioMenuItem group (null-ok))))

(define-func gtk_radio_menu_item_new_with_label_interp
  GtkWidget
  ((GtkRadioMenuItem group (null-ok))
   (string label)))

;; OptionMenu

(define-object GtkOptionMenu (GtkButton))

(define-func gtk_option_menu_new
  GtkWidget
  ())

(define-func gtk_option_menu_get_menu
  GtkWidget
  ((GtkOptionMenu option_menu)))

(define-func gtk_option_menu_set_menu
  none
  ((GtkOptionMenu option_menu)
   (GtkWidget menu)))

(define-func gtk_option_menu_remove_menu
  none
  ((GtkOptionMenu option_menu)))

(define-func gtk_option_menu_set_history
  none
  ((GtkOptionMenu option_menu)
   (int index)))

;; Pixmaps

(define-object GtkPixmap (GtkMisc))

(define-func gtk_pixmap_new_interp
  GtkWidget
  ((string xpm_file)
   (GtkWidget intended_parent)))

Gtk/gtk-0.99.defs  view on Meta::CPAN

;(define-object GtkHRuler (GtkRuler))
;(define-object GtkHScale (GtkScale))
;(define-object GtkHScrollbar (GtkScrollbar))
;(define-object GtkHSeparator (GtkSeparator))
(define-object GtkImage (GtkMisc))
;(define-object GtkInputDialog (GtkWindow))
;(define-object GtkItem (GtkBin))
;(define-object GtkLabel (GtkMisc))
;(define-object GtkList (GtkContainer))
;(define-object GtkListItem (GtkItem))
;(define-object GtkMenu (GtkMenuShell))
;(define-object GtkMenuBar (GtkMenuShell))
;(define-object GtkMenuItem (GtkItem))
;(define-object GtkMenuShell (GtkContainer))
;(define-object GtkMisc (GtkWidget))
;(define-object GtkNotebook (GtkContainer))
;(define-object GtkObject ())
;(define-object GtkOptionMenu (GtkButton))
;(define-object GtkPaned (GtkContainer))
;(define-object GtkPixmap (GtkMisc))
;(define-object GtkPreview (GtkWidget))
(define-object GtkProgressBar (GtkWidget))
;(define-object GtkRadioButton (GtkCheckButton))
;(define-object GtkRadioMenuItem (GtkCheckMenuItem))
;(define-object GtkRange (GtkWidget))
;(define-object GtkRuler (GtkWidget))
;(define-object GtkScale (GtkRange))
;(define-object GtkScrollbar (GtkRange))
;(define-object GtkScrolledWindow (GtkContainer))
;(define-object GtkSeparator (GtkWidget))
;(define-object GtkTable (GtkContainer))
;(define-object GtkText (GtkWidget))
;(define-object GtkToggleButton (GtkButton))
;(define-object GtkTree (GtkContainer))

Gtk/gtk-0.99.defs  view on Meta::CPAN

;(define-object GtkVBox (GtkBox))
;(define-object GtkViewport (GtkBin))
;(define-object GtkVPaned (GtkPaned))
;(define-object GtkVRuler (GtkRuler))
;(define-object GtkVScale (GtkScale))
;(define-object GtkVScrollbar (GtkScrollbar))
;(define-object GtkVSeparator (GtkSeparator))
;(define-object GtkWidget (GtkObject))
;(define-object GtkWindow (GtkBin))
;
;(define-object GtkCheckMenuItem (GtkMenuItem))
;(define-object GtkButtonBox (GtkBox))
;(define-object GtkEventBox (GtkBin))
;(define-object GtkFixed (GtkContainer))
;(define-object GtkHButtonBox (GtkButtonBox))
;(define-object GtkVButtonBox (GtkButtonBox))

;(define-boxed GdkFont
;  gdk_font_ref
;  gdk_font_unref)

Gtk/gtk-0.99.typemap  view on Meta::CPAN

Gtk::Gdk::Cursor	T_MISCPTROBJ
Gtk::Gdk::GC		T_MISCPTROBJ
Gtk::Gdk::Image		T_SimpleVal
Gtk::Gdk::GCValues	T_MISCPTROBJ
Gtk::Gdk::Atom		T_UV

Gtk::Gdk::Image_OrNULL		T_SimpleValOrNULL

Gtk::Requisition	T_SimpleVal

Gtk::MenuFactory	T_MISCPTROBJ
Gtk::SelectionData      T_MISCPTROBJ

Gtk::Widget_Up		T_GtkPTROBJUp
Gtk::Widget_Sink_Up		T_GtkPTROBJSinkUp
Gtk::Widget_OrNULL_Up		T_GtkPTROBJOrNULLUp

Gtk::Object_Up		T_GtkPTROBJUp
Gtk::Object_Sink_Up		T_GtkPTROBJSinkUp
Gtk::Object_OrNULL_Up		T_GtkPTROBJOrNULLUp

Gtk/gtk-1.1.defs  view on Meta::CPAN

(export-enum GtkCellType)
(export-flags GtkDebugFlag)
(export-flags GtkAccelFlags)
;(export-enum GtkArrowType)
(export-flags GtkAttachOptions)
(export-enum GtkButtonBoxStyle)
(export-enum GtkCurveType)
(export-enum GtkDirectionType)
(export-enum GtkJustification)
(export-enum GtkMatchType)
(export-enum GtkMenuFactoryType)
(export-enum GtkMetricType)
(export-enum GtkOrientation)
(export-enum GtkPackType)
(export-enum GtkPathPriorityType)
(export-enum GtkPathType)
(export-enum GtkPolicyType)
(export-enum GtkPositionType)
(export-enum GtkPreviewType)
(export-enum GtkReliefStyle)
(export-enum GtkResizeMode)

Gtk/gtk-1.2.defs  view on Meta::CPAN


(define-object GtkAccelLabel (GtkLabel))
(define-object GtkCTree (GtkCList))
(define-object GtkFontSelection (GtkNotebook))
(define-object GtkFontSelectionDialog (GtkWindow))
(define-object GtkItemFactory (GtkObject))

(define-object GtkProgress (GtkWidget))
(define-object GtkProgressBar (GtkProgress))

(define-object GtkTearoffMenuItem (GtkMenuItem))

(define-enum GtkProgressBarStyle
  (continuous GTK_PROGRESS_CONTINUOUS)
  (discrete GTK_PROGRESS_DISCRETE))

(define-enum GtkProgressBarOrientation
  (left-to-right GTK_PROGRESS_LEFT_TO_RIGHT)
  (right-to-left GTK_PROGRESS_RIGHT_TO_LEFT)
  (bottom-to-top GTK_PROGRESS_BOTTOM_TO_TOP)
  (top-to-bottom GTK_PROGRESS_TOP_TO_BOTTOM))

Gtk/gtk-1.2.defs  view on Meta::CPAN

(export-enum GtkCellType)
(export-flags GtkDebugFlag)
(export-flags GtkAccelFlags)
;(export-enum GtkArrowType)
(export-flags GtkAttachOptions)
(export-enum GtkButtonBoxStyle)
(export-enum GtkCurveType)
(export-enum GtkDirectionType)
(export-enum GtkJustification)
(export-enum GtkMatchType)
(export-enum GtkMenuFactoryType)
(export-enum GtkMetricType)
(export-enum GtkOrientation)
(export-enum GtkPackType)
(export-enum GtkPathPriorityType)
(export-enum GtkPathType)
(export-enum GtkPolicyType)
(export-enum GtkPositionType)
(export-enum GtkPreviewType)
(export-enum GtkReliefStyle)
(export-enum GtkResizeMode)

Gtk/gtk-1.2.pl  view on Meta::CPAN

# This configuration data is used for versions of Gtk from 1.2.x onward

add_xs "GtkAccelGroup.xs", "GtkProgressBar-1.1.xs", "GtkCList-1.2.xs", 
	"GtkTearoffMenuItem.xs", "GtkCalendar.xs", "Gtk-1.2.xs";
add_boot "Gtk__AccelGroup", "Gtk::ProgressBar11", "Gtk::CList12", "Gtk12";
	#"Gtk__TearoffMenuItem";

add_defs "gtk-1.2.defs";

add_typemap "gtk-1.2.typemap";

# workaround bug in gtk
add_headers ('<gtk/gtkinvisible.h>');

Gtk/objects.pod  view on Meta::CPAN

=item * undef B<next-year> (Gtk::Calendar)

=item * undef B<prev-month> (Gtk::Calendar)

=item * undef B<prev-year> (Gtk::Calendar)

=back

=head1 Gtk::CheckButton (Gtk::ToggleButton)

=head1 Gtk::CheckMenuItem (Gtk::MenuItem)

=head2 Signals

=over 4

=item * undef B<toggled> (Gtk::CheckMenuItem)

=back

=head1 Gtk::Clock (Gtk::Label)

=head1 Gtk::ColorSelection (Gtk::VBox)

=head2 Signals

=over 4

Gtk/objects.pod  view on Meta::CPAN

=item * undef B<toggle-add-mode> (Gtk::ListItem)

=item * undef B<toggle-focus-row> (Gtk::ListItem)

=item * undef B<undo-selection> (Gtk::ListItem)

=item * undef B<unselect-all> (Gtk::ListItem)

=back

=head1 Gtk::Menu (Gtk::MenuShell)

=head1 Gtk::MenuBar (Gtk::MenuShell)

=head2 Arguments

=over 4

=item * B<shadow> (Gtk::ShadowType) [writable, readable]

=back

=head1 Gtk::MenuItem (Gtk::Item)

=head2 Signals

=over 4

=item * undef B<activate> (Gtk::MenuItem)

=item * undef B<activate-item> (Gtk::MenuItem)

=back

=head1 Gtk::MenuShell (Gtk::Container)

=head2 Signals

=over 4

=item * undef B<activate-current> (Gtk::MenuShell, bool)

=item * undef B<cancel> (Gtk::MenuShell)

=item * undef B<deactivate> (Gtk::MenuShell)

=item * undef B<move-current> (Gtk::MenuShell, Gtk::MenuDirectionType)

=item * undef B<selection-done> (Gtk::MenuShell)

=back

=head1 Gtk::Misc (Gtk::Widget)

=head2 Arguments

=over 4

=item * B<xalign> (number) [writable, readable]

Gtk/objects.pod  view on Meta::CPAN

=item * B<object_signal_after> (Gtk::Signal) [writable]

=item * B<signal> (Gtk::Signal) [writable]

=item * B<signal_after> (Gtk::Signal) [writable]

=item * B<user_data> (gpointer) [writable, readable]

=back

=head1 Gtk::OptionMenu (Gtk::Button)

=head1 Gtk::Packer (Gtk::Container)

=head2 Arguments

=over 4

=item * B<default_border_width> (unsigned) [writable, readable]

=item * B<default_ipad_x> (unsigned) [writable, readable]

Gtk/objects.pod  view on Meta::CPAN

=over 4

=item * B<gutter_size> (unsigned) [writable, readable]

=item * B<handle_size> (unsigned) [writable, readable]

=back

=head1 Gtk::Pixmap (Gtk::Misc)

=head1 Gtk::PixmapMenuItem (Gtk::MenuItem)

=head1 Gtk::Plug (Gtk::Window)

=head1 Gtk::Preview (Gtk::Widget)

=head2 Arguments

=over 4

=item * B<expand> (bool) [writable, readable]

Gtk/objects.pod  view on Meta::CPAN

=head1 Gtk::RadioButton (Gtk::CheckButton)

=head2 Arguments

=over 4

=item * B<group> (Gtk::RadioButton) [writable]

=back

=head1 Gtk::RadioMenuItem (Gtk::CheckMenuItem)

=head1 Gtk::Range (Gtk::Widget)

=head2 Arguments

=over 4

=item * B<update_policy> (Gtk::UpdateType) [writable, readable]

=back

Gtk/objects.pod  view on Meta::CPAN

=item * B<homogeneous> (bool) [writable, readable]

=item * B<n_columns> (unsigned) [writable, readable]

=item * B<n_rows> (unsigned) [writable, readable]

=item * B<row_spacing> (unsigned) [writable, readable]

=back

=head1 Gtk::TearoffMenuItem (Gtk::MenuItem)

=head1 Gtk::Ted (Gtk::Table)

=head1 Gtk::Text (Gtk::Editable)

=head2 Arguments

=over 4

=item * B<hadjustment> (Gtk::Adjustment) [writable, construct, readable]

Gtk/objects.pod  view on Meta::CPAN

=item exact

=item head

=item last

=item tail

=back

=head2 Gtk::MenuDirectionType

=over 4

=item child

=item next

=item parent

=item prev

=back

=head2 Gtk::MenuFactoryType

=over 4

=item menu

=item menu-bar

=item option-menu

=back

Gtk/samples/gslide.pl  view on Meta::CPAN

	$fs->cancel_button->signal_connect('clicked', sub {$fs->destroy});
	$fs->ok_button->signal_connect('clicked', sub {
		$fonts{$n} = [$fs->get_font, $fs->get_font_name];
		$fs->destroy
	});
	$fs->show;
}

sub get_fonts {
	my ($m, $mi, $i);
	$m = new Gtk::Menu;
	foreach $i (sort keys %fonts) {
		$mi = new Gtk::MenuItem($i);
		$mi->show;
		$m->append($mi);
		$mi->signal_connect('activate', \&set_font, $i);
	}
	return $m;
}
sub show_menu {
	my ($x, $y, $button) = @_;
	my ($m, $mi, $index);
	$m = new Gtk::Menu;
	$mi = new Gtk::MenuItem('Quit');
	$mi->show;
	$mi->signal_connect('activate', sub {Gtk->exit(0)});
	$m->append($mi);
	$mi = new Gtk::MenuItem('Fonts');
	$mi->show;
	$mi->set_submenu(get_fonts());
	$m->append($mi);
	$mi = new Gtk::MenuItem();
	$mi->show;
	$mi->set_sensitive(0);
	$m->append($mi);
	foreach $index ( sort {$a <=> $b} keys %slides) {
		$mi = new Gtk::MenuItem($slides{$index});
		$mi->show;
		$mi->signal_connect('activate', sub {
			$i = $index;
			$started = 0;
			Gtk->main_quit;
		});
		$m->append($mi);
	}
	$m->popup(undef, undef, 3, 0, undef);
}

Gtk/samples/oldtest.pl  view on Meta::CPAN

}

sub create_menu {
	my($depth) = @_;
	my($menu,$submenu,$menuitem);
	
	if ($depth<1) {
		return undef;
	}
	
	$menu = new Gtk::Menu;
	$submenu = undef;
	$menuitem = undef;
	
	my($i,$j);
	for($i=0,$j=1;$i<5;$i++,$j++)
	{
		my($buffer) = sprintf("item %2d - %d", $depth, $j);
		$menuitem = new Gtk::RadioMenuItem($buffer, $menuitem);
		$menu->append($menuitem);
		$menuitem->set_show_toggle(1) if $depth % 2;
		$menuitem->show;
		if ($depth>1) {
			if (not defined $submenu) {
				$submenu = create_menu($depth-1);
				$menuitem->set_submenu($submenu);
			}
		}
	}

Gtk/samples/oldtest.pl  view on Meta::CPAN

		$menu_window = new Gtk::Window -toplevel;
		signal_connect $menu_window destroy => \&destroy_window, \$menu_window;
		signal_connect $menu_window delete_event => \&destroy_window, \$menu_window;
		$menu_window->set_title("menus");
		$menu_window->border_width(0);
		
		$box1 = new Gtk::VBox(0,0);
		$menu_window->add($box1);
		$box1->show;
		
		$menubar = new Gtk::MenuBar;
		$box1->pack_start($menubar, 0, 1, 0);
		$menubar->show;
		
		$menu = create_menu(2);
		
		$menuitem = new Gtk::MenuItem("test");
		$menuitem->set_submenu($menu);
		$menubar->append($menuitem);
		show $menuitem;

		$menu = create_menu(3);
		
		$menuitem = new Gtk::MenuItem("foo");
		$menuitem->set_submenu($menu);
		$menubar->append($menuitem);
		show $menuitem;

		$menu = create_menu(4);
		
		$menuitem = new Gtk::MenuItem("bar");
		$menuitem->set_submenu($menu);
		$menubar->append($menuitem);
		show $menuitem;

		$box2 = new Gtk::VBox(0,10);
		$box2->border_width(10);
		$box1->pack_start($box2, 1, 1, 0);
		$box2->show;
		
		$optionmenu = new Gtk::OptionMenu;
		$optionmenu->set_menu(create_menu(1));
		$optionmenu->set_history(4);
		$box2->pack_start($optionmenu, 1, 1, 0);
		$optionmenu->show;
		
		$separator = new Gtk::HSeparator;
		$box1->pack_start($separator, 0, 1, 0);
		show $separator;
		
		$box2 = new Gtk::VBox(0,10);

Gtk/samples/oldtest.pl  view on Meta::CPAN

		($book_closed, $book_closed_mask) = Gtk::Gdk::Pixmap->create_from_xpm_d($notebook->window, $transparent, @book_closed_xpm);
		
		create_pages($notebook, 1, 5);
		
		$separator = new Gtk::HSeparator;
		$box1->pack_start($separator, 0, 1, 10);
		
		$box2 = new Gtk::HBox 1, 5;
		$box1->pack_start($box2, 0, 1, 0);
		
		$omenu = new Gtk::OptionMenu;
		$menu = new Gtk::Menu;
		$submenu = undef;
		$menuitem = undef;
		
		$menuitem = new Gtk::RadioMenuItem "Standard", $menuitem;
		$menuitem->signal_connect("activate", \&standard_notebook, $notebook);
		$menu->append($menuitem);
		$menuitem->show;

		$menuitem = new Gtk::RadioMenuItem "w/o Tabs", $menuitem;
		$menuitem->signal_connect("activate", \&notabs_notebook, $notebook);
		$menu->append($menuitem);
		$menuitem->show;

		$menuitem = new Gtk::RadioMenuItem "Scrollable", $menuitem;
		$menuitem->signal_connect("activate", \&scrollable_notebook, $notebook);
		$menu->append($menuitem);
		$menuitem->show;
		
		$omenu->set_menu($menu);
		$box2->pack_start($omenu, 0, 0, 0);
		$button = new Gtk::CheckButton "enable popup menu";
		$box2->pack_start($button, 0, 0, 0);
		$button->signal_connect("clicked", \&notebook_popup, $notebook);
		

Gtk/samples/test.pl  view on Meta::CPAN

my $mini_page_mask;

my $root_win;
my $modeller;
my $sheets;
my $rings;

sub build_option_menu {
	my ( $items, $function, $num_items, $history, $data ) = @_;

	my $omenu = new Gtk::OptionMenu;
	my $menu = new Gtk::Menu;
	my $previous = undef;
	my $i;
    my $menu_item;

	for $i ( 0 .. $num_items - 1 ) {

# Perl/GTK!
# Please note the use of $previous to create the group of radioitems

		$menu_item = new_with_label Gtk::RadioMenuItem( @{$items}[$i], $previous );

		$menu_item->signal_connect( 'activate', $function, $data );
		$menu->append( $menu_item );
		if ( $i == $history ) {
			$menu_item->set_active( 1 );
		}
		$menu_item->show;
		$previous = $menu_item;
	}
	$omenu->set_menu( $menu );

Gtk/samples/test.pl  view on Meta::CPAN

}

sub create_menu {
	my($depth) = @_;
	my($menu,$submenu,$menuitem);
	
	if ($depth<1) {
		return undef;
	}
	
	$menu = new Gtk::Menu;
	$submenu = undef;
	$menuitem = undef;
	
	my($i,$j);
	for($i=0,$j=1;$i<5;$i++,$j++)
	{
		my($buffer) = sprintf("item %2d - %d", $depth, $j);
		$menuitem = new Gtk::RadioMenuItem($buffer, $menuitem);
		$menu->append($menuitem);
		$menuitem->set_show_toggle(1) if $depth % 2;
		$menuitem->show;
		if ($depth>1) {
			if (not defined $submenu) {
				$submenu = create_menu($depth-1);
				$menuitem->set_submenu($submenu);
			}
		}
	}

Gtk/samples/test.pl  view on Meta::CPAN

		$menu_window = new Gtk::Window -toplevel;
		signal_connect $menu_window destroy => \&destroy_window, \$menu_window;
		signal_connect $menu_window delete_event => \&destroy_window, \$menu_window;
		$menu_window->set_title("menus");
		$menu_window->border_width(0);
		
		$box1 = new Gtk::VBox(0,0);
		$menu_window->add($box1);
		$box1->show;
		
		$menubar = new Gtk::MenuBar;
		$box1->pack_start($menubar, 0, 1, 0);
		$menubar->show;
		
		$menu = create_menu(2);
		
		$menuitem = new Gtk::MenuItem("test");
		$menuitem->set_submenu($menu);
		$menubar->append($menuitem);
		show $menuitem;

		$menu = create_menu(3);
		
		$menuitem = new Gtk::MenuItem("foo");
		$menuitem->set_submenu($menu);
		$menubar->append($menuitem);
		show $menuitem;

		$menu = create_menu(4);
		
		$menuitem = new Gtk::MenuItem("bar");
		$menuitem->set_submenu($menu);
		$menubar->append($menuitem);
		show $menuitem;

		$box2 = new Gtk::VBox(0,10);
		$box2->border_width(10);
		$box1->pack_start($box2, 1, 1, 0);
		$box2->show;
		
		$optionmenu = new Gtk::OptionMenu;
		$optionmenu->set_menu(create_menu(1));
		$optionmenu->set_history(4);
		$box2->pack_start($optionmenu, 1, 1, 0);
		$optionmenu->show;
		
		$separator = new Gtk::HSeparator;
		$box1->pack_start($separator, 0, 1, 0);
		show $separator;
		
		$box2 = new Gtk::VBox(0,10);

Gtk/samples/test.pl  view on Meta::CPAN

	if (!defined $item_factory_window) {
		my ($accel_group, $item_factory, $box1, $label, $box2);
		my ($separator, $button, $dummy);

		
		$item_factory_window = new Gtk::Window('toplevel');
		signal_connect $item_factory_window destroy => \&destroy_window, \$item_factory_window;
		signal_connect $item_factory_window "delete-event" => \&destroy_window, \$item_factory_window;

		$accel_group = new Gtk::AccelGroup;
		$item_factory = new Gtk::ItemFactory('Gtk::MenuBar', "<main>", $accel_group);
		
		#$item_factory_window->set_data('<main>', $item_factory);
		$accel_group->attach($item_factory_window);
		# $item_factory->create_items();
		foreach (@item_factory_entries) {
			$item_factory->create_item($_, \&item_factory_cb);
		}
		
		$item_factory_window->set_title("Item Factory");
		$item_factory_window->set_border_width(0);

Gtk/samples/test.pl  view on Meta::CPAN

		($book_closed, $book_closed_mask) = Gtk::Gdk::Pixmap->create_from_xpm_d($notebook->window, $transparent, @book_closed_xpm);
		
		notebook_create_pages($notebook, 1, 5);
		
		$separator = new Gtk::HSeparator();
		$box1->pack_start( $separator, 0, 1, 10 );
		
		$box2 = new Gtk::HBox( 1, 5 );
		$box1->pack_start( $box2, 0, 1, 0 );
		
		$omenu = new Gtk::OptionMenu();
		$menu = new Gtk::Menu();
		$submenu = undef;
		$menuitem = undef;
		
		$menuitem = new Gtk::RadioMenuItem "Standard", $menuitem;
		$menuitem->signal_connect("activate", \&notebook_standard, $notebook);
		$menu->append($menuitem);
		$menuitem->show;

		$menuitem = new Gtk::RadioMenuItem "w/o Tabs", $menuitem;
		$menuitem->signal_connect("activate", \&notebook_notabs, $notebook);
		$menu->append($menuitem);
		$menuitem->show;

		$menuitem = new Gtk::RadioMenuItem "Scrollable", $menuitem;
		$menuitem->signal_connect("activate", \&notebook_scrollable, $notebook);
		$menu->append($menuitem);
		$menuitem->show;
		
		$omenu->set_menu($menu);
		$box2->pack_start($omenu, 0, 0, 0);
		$button = new Gtk::CheckButton "Enable popup menu";
		$box2->pack_start($button, 0, 0, 0);
		$button->signal_connect("clicked", \&notebook_popup, $notebook);
		

Gtk/samples/testif.pl  view on Meta::CPAN

#TITLE: ItemFactory
#REQUIRES: Gtk

use Gtk;

init Gtk;

$win = new Gtk::Window;
$accel = new Gtk::AccelGroup;
$accel->attach($win);
$factory = new Gtk::ItemFactory('Gtk::MenuBar', '<main>', $accel);

$factory->create_items({ path	     =>  '/_File',
			 type	     =>  '<Branch>',
		       },
		       { path	     =>  '/_File/tearoff1',
			 type	     =>  '<Tearoff>',
		       },
		       { path	     =>  '/_File/_Hello',
			 accelerator =>  '<control>H',
			 action      =>  2,

Gtk/samples/testif.pl  view on Meta::CPAN

		       { path	     =>  '/_File/E_xit',
			 accelerator =>  '<control>X',
			 callback    =>  sub {Gtk->exit(0)}
		       });

sub foo_callback {
    my ($widget, $action, @args) = @_;
    print "Foo! action=$action, args=(@args)\n";
}

$factory->create_item(['/_Menu/tearoff1', undef, 0, '<Tearoff>']);
$factory->create_item(['/_Menu/foo _1', undef, 1, undef], \&foo_callback, 1, 2, 3);
$factory->create_item(['/_Menu/foo _2', undef, 2, undef, \&foo_callback]);

$factory->create_items({ path	     => '/_Help',
			 type	     => '<LastBranch>',
		       },
		       { path	     =>  '/_Help/tearoff1',
			 type	     =>  '<Tearoff>',
		       },
		       ['/_Help/_About', '<control>A', 0, undef, sub {print "Just a test\n"}]);

$menubar = $factory->get_widget('<main>');

Gtk/samples/testlog.pl  view on Meta::CPAN


#TITLE: Log handler
#REQUIRES: Gtk

use Gtk;

init Gtk;

use Gtk::LogHandler;

$factory = new Gtk::MenuFactory('menu_bar');
$subfactory = new Gtk::MenuFactory('menu_bar');
$factory->add_subfactory($subfactory, '<Main>');
$entry1 = { path  =>  '<Main>/File/Hello',
           accelerator     =>  '<alt>H',
           widget          =>  undef,
           callback        =>  sub {print "Hello world!\n"; }
         };
$entry2 = { path  =>  '<Main>/File/Quit',
           accelerator     =>  '<alt>Q',
           widget          =>  undef,
           callback        =>  sub {Gtk->exit(0)}

Gtk/samples/testmf.pl  view on Meta::CPAN

#!/usr/bin/perl -w

#TITLE: MenuFactory
#REQUIRES: Gtk

use Gtk;

init Gtk;

$factory = new Gtk::MenuFactory('menu_bar');
$subfactory = new Gtk::MenuFactory('menu_bar');
$factory->add_subfactory($subfactory, '<Main>');
$entry1 = { path  =>  '<Main>/File/Hello',
           accelerator     =>  '<alt>H',
           widget          =>  undef,
           callback        =>  sub {print "Hello world!\n"}
         };
$entry2 = { path  =>  '<Main>/File/Quit',
           accelerator     =>  '<alt>Q',
           widget          =>  undef,
           callback        =>  sub {Gtk->exit(0)}

Gtk/xs/Gtk-1.2.xs  view on Meta::CPAN

void
gtk_window_add_accel_group(window, accel_group)
	Gtk::Window	window
	Gtk::AccelGroup	accel_group

void
gtk_window_remove_accel_group(window, accel_group)
	Gtk::Window	window
	Gtk::AccelGroup	accel_group

MODULE = Gtk12		PACKAGE = Gtk::Menu		PREFIX = gtk_menu_

void
gtk_menu_set_accel_group (menu, accel_group)
	Gtk::Menu	menu
	Gtk::AccelGroup	accel_group

Gtk::AccelGroup_OrNULL
gtk_menu_get_accel_group (menu)
	Gtk::Menu	menu
	ALIAS:
		Gtk::Menu::get_accel_group = 0
		Gtk::Menu::get_unline_accel_group = 1
		Gtk::Menu::ensure_unline_accel_group = 2
	CODE:
	switch (ix) {
	case 0: gtk_menu_get_accel_group (menu); break;
	case 1: gtk_menu_get_uline_accel_group (menu); break;
	case 2: gtk_menu_ensure_uline_accel_group (menu); break;
	}

void
gtk_menu_reorder_child (menu, child, position)
	Gtk::Menu	menu
	Gtk::Widget	child
	gint	position

MODULE = Gtk12		PACKAGE = Gtk::Widget		PREFIX = gtk_

void
gtk_drag_get_data (widget, context, target, time)
	Gtk::Widget	widget
	Gtk::Gdk::DragContext	context
	Gtk::Gdk::Atom	target

Gtk/xs/Gtk.xs  view on Meta::CPAN

		
		if (!data || ! SvOK(data) || !SvROK(data) || SvTYPE(SvRV(data)) != SVt_PVHV)
			croak("need a hash ref in module_configure");
		hv = (HV*)SvRV(data);
		if ( (s=hv_fetch(hv, "enum_minus", 10, 0)) && SvOK(*s))
			pgtk_use_minus = SvIV(*s);
		if ( (s=hv_fetch(hv, "flags_array", 11, 0)) && SvOK(*s))
			pgtk_use_array = SvIV(*s);
	}

MODULE = Gtk	PACKAGE = Gtk::MenuFactory	PREFIX = gtk_menu_factory_

Gtk::MenuFactory
new(Class, type)
	SV *	Class
	Gtk::MenuFactoryType	type
	CODE:
	RETVAL = gtk_menu_factory_new(type);
	OUTPUT:
	RETVAL

void
gtk_menu_factory_add_entries(factory, entry, ...)
	Gtk::MenuFactory	factory
	SV *	entry
	CODE:
	{
		GtkMenuEntry * entries = malloc(sizeof(GtkMenuEntry)*(items-1));
		int i;
		for(i=1;i<items;i++) {
			SvGtkMenuEntry(ST(i), &entries[i-1]);
		}
		gtk_menu_factory_add_entries(factory, entries, items-1);
		free(entries);
	}

void
gtk_menu_factory_add_subfactory(factory, subfactory, path)
	Gtk::MenuFactory	factory
	Gtk::MenuFactory	subfactory
	char *	path

void
gtk_menu_factory_remove_paths(factory, path, ...)
	Gtk::MenuFactory	factory
	SV *	path
	CODE:
	{
		char ** paths = malloc(sizeof(char*)*(items-1));
		int i;
		for(i=1;i<items;i++)
			paths[i-1] = SvPV(ST(i),PL_na);
		gtk_menu_factory_remove_paths(factory, paths, items-1);
		free(paths);
	}

void
gtk_menu_factory_remove_entries(factory, entry, ...)
	Gtk::MenuFactory	factory
	SV *	entry
	CODE:
	{
		GtkMenuEntry * entries = malloc(sizeof(GtkMenuEntry)*(items-1));
		int i;
		for(i=1;i<items;i++) {
			SvGtkMenuEntry(ST(i), &entries[i-1]);
		}
		gtk_menu_factory_remove_entries(factory, entries, items-1);
		free(entries);
	}

void
gtk_menu_factory_remove_subfactory(factory, subfactory, path)
	Gtk::MenuFactory	factory
	Gtk::MenuFactory	subfactory
	char *	path

 #OUTPUT: string
void
gtk_menu_factory_find(factory, path)
	Gtk::MenuFactory	factory
	char *	path
	PPCODE:
	{
		GtkMenuPath * p = gtk_menu_factory_find(factory, path);
		if (p) {
			EXTEND(sp,1);
			PUSHs(sv_2mortal(newSVGtkObjectRef(GTK_OBJECT(p->widget), 0)));
			if (GIMME == G_ARRAY) {
				EXTEND(sp,1);
				PUSHs(sv_2mortal(newSVpv(p->path, 0)));
			}
		}
	}

void
gtk_menu_factory_destroy(factory)
	Gtk::MenuFactory	factory
	CODE:
	gtk_menu_factory_destroy(factory);
	UnregisterMisc((HV*)SvRV(ST(0)), factory);

void
DESTROY(factory)
	Gtk::MenuFactory	factory
	CODE:
	UnregisterMisc((HV*)SvRV(ST(0)), factory);

Gtk::Widget_Up
widget(factory)
	Gtk::MenuFactory	factory
	CODE:
	RETVAL = factory->widget;
	OUTPUT:
	RETVAL


MODULE = Gtk		PACKAGE = Gtk::Rc	PREFIX = gtk_rc_

 #DESC: Parse filename for style and resource information.
void

Gtk/xs/GtkAcceleratorTable.xs  view on Meta::CPAN

gtk_accelerator_table_check(self, accelerator_key, accelerator_mods)
	Gtk::AcceleratorTable	self
	char	accelerator_key
	int	accelerator_mods

void
gtk_accelerator_table_set_mod_mask(table, modifier_mask)
	Gtk::AcceleratorTable	table
	int	modifier_mask

MODULE = Gtk::AcceleratorTable	PACKAGE = Gtk::MenuFactory	PREFIX = gtk_menu_factory_

#ifdef GTK_MENUFACTORY

Gtk::AcceleratorTable
table(factory)
	Gtk::MenuFactory	factory
	CODE:
	RETVAL = factory->table;
	OUTPUT:
	RETVAL

#endif

MODULE = Gtk::AcceleratorTable      PACKAGE = Gtk::Menu     PREFIX = gtk_menu_

#ifdef GTK_MENU

void
gtk_menu_set_accelerator_table(self, table)
	Gtk::Menu	self
	Gtk::AcceleratorTable	table

#endif

MODULE = Gtk::AcceleratorTable       PACKAGE = Gtk::Widget       PREFIX = gtk_widget_

#ifdef GTK_WIDGET

void
gtk_widget_install_accelerator(widget, table, signal_name, key, modifiers)

Gtk/xs/GtkCheckMenuItem.xs  view on Meta::CPAN


#include "EXTERN.h"
#include "perl.h"
#include "XSUB.h"

#include "GtkDefs.h"

MODULE = Gtk::CheckMenuItem		PACKAGE = Gtk::CheckMenuItem	PREFIX = gtk_check_menu_item_

#ifdef GTK_CHECK_MENU_ITEM

Gtk::CheckMenuItem_Sink
new(Class, label=0)
	SV *	Class
	char *	label
	ALIAS:
		Gtk::CheckMenuItem::new = 0
		Gtk::CheckMenuItem::new_with_label = 1
	CODE:
	if (!label)
		RETVAL = (GtkCheckMenuItem*)(gtk_check_menu_item_new());
	else
		RETVAL = (GtkCheckMenuItem*)(gtk_check_menu_item_new_with_label(label));
	OUTPUT:
	RETVAL


void
gtk_check_menu_item_set_active(check_menu_item, state)
	Gtk::CheckMenuItem	check_menu_item
	int	state
	ALIAS:
		Gtk::CheckMenuItem::set_state = 1
	CODE:
#if GTK_HVER < 0x010113
	/* DEPRECATED */
	gtk_check_menu_item_set_state(check_menu_item, state);
#else
	gtk_check_menu_item_set_active(check_menu_item, state);
#endif

void
gtk_check_menu_item_toggled(check_menu_item)
	Gtk::CheckMenuItem	check_menu_item

void
gtk_check_menu_item_set_show_toggle(check_menu_item, always)
	Gtk::CheckMenuItem	check_menu_item
	bool	always

int
active(check_menu_item, new_value=0)
	Gtk::CheckMenuItem	check_menu_item
	int	new_value
	CODE:
		RETVAL = check_menu_item->active;
		if (items>1)
			check_menu_item->active = new_value;
	OUTPUT:
	RETVAL


#endif

Gtk/xs/GtkMenu.xs  view on Meta::CPAN


#include "EXTERN.h"
#include "perl.h"
#include "XSUB.h"

#include "GtkDefs.h"

/* XXX attach functions */

static void menu_pos_func (GtkMenu *menu, int *x, int *y, gpointer user_data)
{
	AV * args = (AV*)user_data;
	SV * handler = *av_fetch(args, 0, 0);
	int i;
	dSP;
	
	ENTER;
	SAVETMPS;

	PUSHMARK(SP);

Gtk/xs/GtkMenu.xs  view on Meta::CPAN

	for (i=1;i<=av_len(args);i++)
		XPUSHs(sv_2mortal(newSVsv(*av_fetch(args, i, 0))));
	XPUSHs(sv_2mortal(newSViv(*x)));
	XPUSHs(sv_2mortal(newSViv(*y)));
	PUTBACK;

	i = perl_call_sv(handler, G_ARRAY);
	SPAGAIN;
	
	if (i>2)
		croak("MenuPosFunc must return two or less values");
	if (i==1)
		POPs;
	else {
		*x = SvIV(POPs);
		*y = SvIV(POPs);
	}
	
	PUTBACK;
	FREETMPS;
	LEAVE;
}


MODULE = Gtk::Menu		PACKAGE = Gtk::Menu		PREFIX = gtk_menu_

#ifdef GTK_MENU

Gtk::Menu_Sink
new(Class)
	SV *	Class
	CODE:
	RETVAL = (GtkMenu*)(gtk_menu_new());
	OUTPUT:
	RETVAL

void
gtk_menu_append(menu, child)
	Gtk::Menu	menu
	Gtk::Widget	child
	ALIAS:
		Gtk::Menu::append = 0
		Gtk::Menu::prepend = 1
	CODE:
	if (ix == 0)
		gtk_menu_append(menu, child);
	else if (ix == 1)
		gtk_menu_prepend(menu, child);

void
gtk_menu_insert(menu, child, position)
	Gtk::Menu	menu
	Gtk::Widget	child
	int	position

 #ARG: $func subroutine (subroutine to handle positioning of the menu: it gets the widget, the x and y coordinates; it should return the x, y coordinates)
 #ARG: ... list (additional arguments that are passed to $func after the widget)
void
gtk_menu_popup(menu, parent_menu_shell, parent_menu_item, button, activate_time, func=0, ...)
	Gtk::Menu	menu
	Gtk::Widget_OrNULL	parent_menu_shell
	Gtk::Widget_OrNULL	parent_menu_item
	int	button
	int	activate_time
	SV *	func
	CODE:
	{
		AV * args = newAV();
		int i;
		if (func && SvOK(func)) {

Gtk/xs/GtkMenu.xs  view on Meta::CPAN

				 (void*)args, button, activate_time);
		} else {
			gtk_menu_popup(menu, parent_menu_shell, parent_menu_item, NULL,
				 NULL, button, activate_time);
		}
	}


void
gtk_menu_popdown(menu)
	Gtk::Menu	menu
	ALIAS:
		Gtk::Menu::popdown = 0
		Gtk::Menu::detach = 1
		Gtk::Menu::reposition = 2
	CODE:
	switch (ix) {
	case 0: gtk_menu_popdown(menu); break;
	case 1: gtk_menu_detach(menu); break;
	case 2: gtk_menu_reposition(menu); break;
	}

Gtk::MenuItem_OrNULL
gtk_menu_get_active(menu)
	Gtk::Menu	menu

void
gtk_menu_set_active(menu, index)
	Gtk::Menu	menu
	int	index

# FIXME: detach_handler can't be supported in 0.99.10, at least
#
#void
#gtk_menu_attach_to_widget (menu, attach_widget, detach_handler, ...)
#	Gtk::Menu   menu
#	Gtk::Widget attach_widget
#	SV *	detach_handler
#	CODE:
#	{
#		
#	}

Gtk::Widget
gtk_menu_get_attach_widget (menu)
	Gtk::Menu   menu

#if GTK_HVER >= 0x01010D

void
gtk_menu_set_title(menu, title)
	Gtk::Menu	menu
	char *	title

void
gtk_menu_set_tearoff_state(menu, torn_off)
	Gtk::Menu	menu
	bool	torn_off

#endif

#endif



( run in 1.647 second using v1.01-cache-2.11-cpan-49f99fa48dc )