System [00 00 00 00 00 00 00 00 04 00 00 00 00 00 00 00] 1.0.3300.0 1.0.5000.0 2.0.0.0 4.0.0.0 Gtk# is thread aware, but not thread safe; See the <link location="node:gtk-sharp/programming/threads">Gtk# Thread Programming</link> for details. A can implement this interface to manage designer loading that involves external components. This interface also allows external components to initiate a reload of the design surface by calling . A designer loader does not have to implement this interface if it does not require support for asynchronous loading. Designer loading using a custom implementation of the can occur in a variety of ways. Sometimes external components are involved in the loading process. To facilitate loading with external dependencies, the designer loader service interface provides a mechanism that determines when loading is complete and allows each portion of loading to signal that it has completed. The typically determines when loading is complete by testing a counter that tracks the number of load dependencies remaining. When each portion of the load completes, is called, and the service decrements the counter. To set the number of dependent load processes, call once for each load process that calls when its loading is complete. When the final loading is complete, the service calls on the loader host. Provides an interface that can extend a designer loader to support asynchronous loading of external components. Method 1.0.5000.0 2.0.0.0 4.0.0.0 System.Void Call once for each external object participating in the load process. is called when the work of the load process is done. Registers an external component as part of the load process managed by this interface. Method 1.0.5000.0 2.0.0.0 4.0.0.0 System.Void This method is called to signal that a dependent loading operation has completed. Call once for every process that was registered by calling , which has already completed. If the dependent load succeeds, the caller sets the parameter to true and passes either an empty collection or null to the parameter. If the dependent load encounters errors, the caller sets the parameter to false and passes a collection of exceptions that indicate the reason or reasons for failure to the parameter. Signals that a dependent load has finished. true if the load of the designer is successful; false if errors prevented the load from finishing. A collection of errors that occurred during the load, if any. If no errors occurred, pass either an empty collection or null. Method 1.0.5000.0 2.0.0.0 4.0.0.0 System.Boolean Any object can call this method to request that the loader reload the design document. If the loader supports reloading and complies with the reload, the designer loader can return true. Otherwise, it returns false, indicating that the reload will not occur. Callers cannot rely on the reload happening immediately; the designer loader can schedule this for some other time, or it can try to reload at once. The caller can display a message to the user if the designer cannot be reloaded. Reloads the design document. true if the reload request is accepted, or false if the loader does not allow the reload.