Download Shareware and Freeware Software for Windows, Linux, Macintosh, PDA

line Home  |  About Us  |  Link To Us  |  FAQ  |  Contact

Serving Software Downloads in 976 Categories, Downloaded 29.543.287 Times

Gtk2::devel 1.142

  Date Added: July 05, 2010  |  Visits: 578

Gtk2::devel

Report Broken Link
Printer Friendly Version


Product Homepage
Download (75 downloads)



Gtk2::devel is the internal workings of the gtk2-perl language bindings. This document is a supplement to Glib::devel, and assumes you have read and understood all about how the base Glib bindings work. Most of this will seem like nonsense, otherwise. Here we focus on the ways in which Gtk2 extends Glibs concepts for binding the Gtk+ C libraries to perl, a methodology and set of tools you can use to wrap your own GObject-based libraries. GtkObject GtkObject adds the idea of a floating reference to GObject. A GObject is created with one reference which must be explicitly removed by its owner. GtkObject has a floating reference which is sunk by the code which wants to own it. This makes it less painful to create lots of objects in a row (you dont have to unref them). To allow for this difference in procedure for taking ownership of an object, Glib allows you to register a "sink" function for a particular class. When asked to create a wrapper that owns the object, gperl_new_object will compare the list of registered sink functions with the type of the object; if the object is descended from a type, that sink function will be run on the object. The default one is g_object_unref(), of course. (this is inspired by pygtk.) Thus, in Gtk2::Objects boot code, we register gtk_object_sink as the sink func for types derived from GtkObject. Now all wrappers for these types will be owned the proper way. Of course, since gtk_object_sink() does nothing if the object isnt floating, it doesnt hurt anything if you always call gperl_new_object with "own" set to TRUE. So, to make life a little easier, Gtk2 defines another function SV * gtk2perl_new_gtkobject (GtkObject * o); Which does nothing more than { return gperl_new_object (G_OBJECT (o), TRUE); } Its also important to know that this is largely done for you by the typemap..

Requirements: No special requirements
Platforms: Linux
Keyword: Gobject Gtkobject Internal Language Libraries Object Programming Sink Workings
Users rating: 0/10

License: Freeware Size: 645.12 KB
USER REVIEWS
More Reviews or Write Review


GTK2::DEVEL RELATED
Development Tools  -  SowiBB 1.0
SowiBB is written in the blazing fast language of Object Oriented PHP, with MySQL backend.If you want a fast, easy to use, lightweight bulletin board, you've found the right one! Perfect Combination: Speed, features, easy to use.
337.92 KB  
Miscellaneous Communications Tools  -  SowiBB for Linux RC2
SowiBB is written in the blazing fast language of Object Oriented PHP, with MySQL backend.If you want a fast, easy to use, lightweight bulletin board, you've found the right one!Perfect Combination: Speed, features, easy to use.
348.16 KB  
Programming  -  moppy 2003-05-14
MOPPY intends to be an easy to use, powerful library for exploring Meta Object Programming in Python. While Python already has facilities for runtime inspection and for changing the structure of objects at runtime, it can often be tedious and/or...
256 KB  
Programming  -  lptools 1.03b
The lptools suite provides a complete, programming-language independent, literate programming environment. The suite targets XML documentation, but the underlying system has no bias that would disadvantage other documentation languages. Also...
92.16 KB  
Programming  -  Gambas 2 1.9.50
Gambas is, before all, a Basic language with object extensions. A program written with Gambas is a set of files. Each file describes a class, in terms of object programming. The class files are compiled, then executed by an interpreter. From...
7.6 MB  
Programming  -  pyWeb Literate Programming Tool b.2.2
pyWeb is a Literate Programming tool that will work with any markup language and any programming langauge. The idea is to allow you to create great documentation with as constraints or limitations.
173.75 KB  
Development Editors  -  uuStepCount 1.2
uuStepCount is for analyze the source code, and statistical blank lines, comment lines, code lines. Also uuStepCount can output HTML&CSV file. No matter what extension of files, even newly ways of comment, with your configuration, uuStepCount can...
530 KB  
Database Tools  -  eyedb 2.8.8
EyeDB is an Object Oriented Database Management System (OODBMS) providing an advanced object model (inheritance, collections, arrays, methods, triggers, constraints), an object definition language, an object query language and C++ and Java bindings.
5.13 MB  
Programming  -  XML-Lit 1.1
XML-Lit is a simple language-independent literate programming system that works with any XML-based markup language.
96.43 KB  
Libraries  -  Language::Logo 1.000
Language::Logo Perl module is an implementation of the Logo programming language. SYNOPSIS use Language::Logo; my $lo = new Logo(update => 20); $lo->command("setxy 250 256"); $lo->command("color yellow"); $lo->command("pendown"); #...
16.38 KB  
NEW DOWNLOADS IN PROGRAMMING, LIBRARIES
Programming  -  FLEX-db Digital Asset Manager 3.0.9
FLEX-db - an enterprise Digital Asset Manager (DAM). It ingests and links metadata with files, creates thumbnails, and processes files using business rules. FLEX-db has a JSP client, Java app server for file input and output and an EJB metadata...
21.57 MB  
Programming  -  Libicom 0.9.0
The libicom library is a character based dynamicly linked library for Linux. It is used to remotely control the Icom IC-R8500 wide band receiver via an RS232 link. All call and return parameters to the control functions are character string based....
20.48 KB  
Programming  -  dotdesktop 0.3
Dotdesktop library provides ability to parse desktop entry file and access the information in a convenient way. Desktop entry file format is defined by freedesktop.org, it is used to describe information about an application such as the name and...
327.68 KB  
Programming  -  Cedalion for Linux 0.2.6
Cedalion is a programming language that allows its users to add new abstractions and define (and use) internal DSLs. Its innovation is in the fact that it uses projectional editing to allow the new abstractions to have no syntactic limitations.
471.04 KB  
Programming  -  libyasl 0.2
Libyasl is a C++ class library to easily realize TCP/UDP/Multicast clientsand servers in IPv4 and IPv6 environments under GNU/Linux systems.
143.36 KB  
Libraries  -  EuGTK 4.8.9
Makes it easy to develop good- looking, fast, cross-platform programs that run on Linux, OS X, and Windows. Euphoria is a very fast interpreted/compiled language with straight-forward syntax. EuGTK allows programming in a clean, object-oriented...
10.68 MB  
Libraries  -  Linux User Group Library Manager 1.0
The LUG Library Manager is a project to help Linux User Groups start their own library. A LUG library is helpful to the community at large because it increases access to information, and gives everyone the opportunity to become more knowledgeable.
5.35 KB  
Libraries  -  Module::MakefilePL::Parse 0.12
Module::MakefilePL::Parse is a Perl module to parse required modules from Makefile.PL. SYNOPSIS use Module::MakefilePL::Parse; open $fh, Makefile.PL; $parser = Module::MakefilePL::Parse->new( join("", ) ); $info = $parser->required;...
8.19 KB  
Libraries  -  sqlpp 0.06
sqlpp Perl package is a SQL preprocessor. sqlpp is a conventional cpp-alike preprocessor taught to understand SQL ( PgSQL, in particular) syntax specificities. In addition to the standard #define/#ifdef/#else/#endif cohort, provides also...
10.24 KB  
Libraries  -  App::SimpleScan::Substitution::Line 2.02
App::SimpleScan::Substitution::Line is a line with optional fixed variable values. SYNOPSIS my $line = App::SimpleScan::Substitution::Line->new(" this "); # Use only this value when substituting " ". $line->fix(substituite =>...
54.27 KB