-
Christian Hergert authored
This is the center-most library that all the new static libraries will be based upon. It provides our core objects, and some new ways to work with things going forward. IdeObject is now a bit of a directed graph (without cycles). It provides a mechanism similar to GtkWidget to destroy hierarchies of objects without relying on the GObject.dispose directly upon final-unref. Doing so helps us ensure that we can cleanup objects even if a leak occurs somewhere and therefore reduce how much we leak. It also provides us a number of debugging tools going forward to get info about the object graph. You can encapsulate a non-IdeObject in an IdeObjectBox which allows associating it with a tree. IdeBuffer does this so that we can attach sub-objects to the buffer and have it cleaned up with the buffer. Various extension points use this for auto-cleanup. IdeNotification(s) is also used all over in the new design to track progress of operations. It has convenient UI components in li...
a9b12408