X-Git-Url: https://git.draconx.ca/gitweb/gob-dx.git/blobdiff_plain/ff9fae99fb73d2b2176f1f9a902535edc70de54a..4f0369e24277442e70d0edaab02b022bc7a2b6f5:/doc/gob2.1.in diff --git a/doc/gob2.1.in b/doc/gob2.1.in index c6b523e..0a591df 100644 --- a/doc/gob2.1.in +++ b/doc/gob2.1.in @@ -59,11 +59,11 @@ unchanged however. .TP .B --always-private-header Always create a \fB-private.h\fR file, even if it would be empty. -This is the default. .TP .B --ondemand-private-header Create the private header only if it would have something in it, that is, if there are some private data members or protected methods. +This is the default. .TP .B --no-private-header Never create a private header file. If we use any private data members, @@ -91,15 +91,22 @@ and SELF_CLASS macros. Do not remove the initial underscore from method names. .TP .B --always-private-struct -Always include the private pointer in the public header file. This is useful for -files which are part of a library and you want to reserve the right to add some -private data members without breaking binary compatibility. +Always include the private pointer in the public header file. This is useful +for files which are part of a library and you want to reserve the right to add +some private data members without breaking binary compatibility. +.TP +.B -o --output-dir +The directory into which output should be placed. +.TP +.B --file-sep[=c] +Replace default \`-\' file name separator. If no separator character +is given then none is used. Only one character can be used. .SH TYPENAMES .PP Because we need to parse out different parts of the typename, sometimes you need to specify the typename with some special syntax. Types are specified in -capitalized form and words are separated by \':\'. The first word of the type +capitalized form and words are separated by \`:\'. The first word of the type (which can be empty) is the "namespace". This fact is for example used for the type checking macro and the type macro. For "Gtk:New:Button", the macros will be GTK_IS_NEW_BUTTON and GTK_TYPE_NEW_BUTTON. This colon separated format of @@ -109,7 +116,8 @@ types. .SH OUTPUT FILES .PP The filenames are created from the typename. The words are -separated by \'-\' and all in lower case. For example for an object named +separated by \`-\' (this can be changed with +\fB--file-sep\fR option) and all in lower case. For example for an object named "Gtk:New:Button", the files are \fBgtk-new-button.c\fR and \fBgtk-new-button.h\fR. If you are using C++ mode, the output .c file will in fact be a .cc file. @@ -206,7 +214,7 @@ For example: .SH DATA MEMBERS .PP -There are five types of data members. Three of them are normal data numbers, +There are five types of data members. Three of them are normal data members, one is class wide (global) in scope and one is a virtual one, usually linked to a normal data member or a class wide data member. The three normal data members are public, protected and private. Public and protected are basically @@ -519,6 +527,21 @@ To get bettery type safety on some of the property types, you can specify the \'type\' attribute which will add casts where appropriate in code dealing with this property. This is especially useful for POINTER and OBJECT types. But even for others. +.PP +You can also override properties from parent objects (that is override their +implementation, not their attributes). Do this by adding the +special \'override\' attribute. For example if the parent object +had a \'height\' property then you could override it by +.nf + + private int height; + property INT height + (override) + set { self->_priv->height = g_value_get_int (VAL); } + get { g_value_set_int (VAL, self->_priv->height); }; + +.fi +Overriding is supported since gob 2.0.10. .SH METHODS .PP @@ -808,9 +831,9 @@ your .c file. These serve the same function as the above, they make it easier to type and easier to change typenames around which can help a lot during prototyping stage. However you should note that the Self type should not be used in function prototypes as one of the arguments or as a return value type. -This is because this is a simple C typedef which is only available inside you -.c file. You can disable both the self casting macros and the self type -aliases by passing --no-self-alias to +This is because this is a simple C typedef which is only available inside your +\&.c file and not in the header files. You can disable both the self casting +macros and the self type aliases by passing --no-self-alias to gob. .SH DEALING WITH DIFFERENT GOB VERSIONS .PP @@ -1109,7 +1132,7 @@ check for GOB2 in your configure.in file. You can use the supplied m4 macro which will also check the version of gob. Basically you include this: .nf - GOB2_CHECK(2.0.0) + GOB2_CHECK([2.0.0]) .fi This will replace @GOB2@ in your makefiles with the full path of gob2. Thus