;; TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
;; SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-;; $Id: gtype.lisp,v 1.52 2006/04/25 22:10:37 espen Exp $
+;; $Id: gtype.lisp,v 1.55 2006/08/25 10:37:33 espen Exp $
(in-package "GLIB")
((not (zerop type-number)) type-number)
(error-p (error "Invalid gtype name: ~A" name)))))
+(defun type-from-glib-name (name)
+ (type-from-number (type-number-from-glib-name name) t))
+
(defun register-type (type id)
(cond
((find-type-number type))
*registered-types*)
(mapc #'(lambda (type)
(apply #'register-new-type type))
- *registered-static-types*)
+ (reverse *registered-static-types*))
(mapc #'(lambda (type)
(register-type-alias (car type) (cdr type)))
*registered-type-aliases*))
(register-new-type class-name (class-name super) gtype))))
(type-class-ref type-number)
type-number))))
+ #+nil
(when (and
(supertype type-number)
(not (eq (class-name super) (supertype type-number))))
;; The argument is a list where each elements is on the form
-;; (type . dependencies)
+;; (type . dependencies). This function will not handle indirect
+;; dependencies and types depending on them selve.
(defun sort-types-topologicaly (unsorted)
(flet ((depend-p (type1)
(find-if #'(lambda (type2)
(expand-type-definitions prefix args))
(defexport define-types-by-introspection (prefix &rest args)
- (list-autoexported-symbols (expand-type-definitions prefix args))))
+ (list-autoexported-symbols (expand-type-definitions prefix args)))
;;;; Initialize all non static types in GObject