#

# Index of the `events` module

- m `sqlobject.events` ...
  - a `__package__` ...
  - C `RowCreateSignal` ... - Called before an instance is created, with the class as the sender. Called with the arguments `(instance, kwargs, post_funcs)`. There may be a `connection` argument. `kwargs``may be usefully modified. ``post_funcs` is a list of callbacks, intended to have functions appended to it, and are called with the arguments `(new_instance)`.
  - C `CreateTableSignal` ... - Called when a table is created. If `ifNotExists==True` and the table exists, this event is not called.
  - C `RowDestroyedSignal` ... - Called after an instance is deleted. Sender is the instance's class. Arguments are `(instance)`.
  - C `AddColumnSignal` ... - Called when a column is added to a class, with arguments `(cls, connection, column_name, column_definition, changeSchema, post_funcs)`. This is called after the column has been added, and is called for each column after class creation.
  - C `DeleteColumnSignal` ... - Called when a column is removed from a class, with the arguments `(cls, connection, column_name, so_column_obj, post_funcs)`. Like `AddColumnSignal` this is called after the action has been performed, and is called for subclassing (when a column is implicitly removed by setting it to `None`).
  - C `DropTableSignal` ... - Called when a table is dropped. If `ifExists==True` and the table doesn't exist, this event is not called.
  - C `RowCreatedSignal` ... - Called after an instance is created, with the class as the sender. Called with the arguments `(instance, kwargs, post_funcs)`. There may be a `connection` argument. `kwargs``may be usefully modified. ``post_funcs` is a list of callbacks, intended to have functions appended to it, and are called with the arguments `(new_instance)`.
  - C `RowDestroySignal` ... - Called before an instance is deleted. Sender is the instance's class. Arguments are `(instance, post_funcs)`.
  - C `ClassCreateSignal` ... - Signal raised after class creation. The sender is the superclass (in case of multiple superclasses, the first superclass). The arguments are `(new_class_name, bases, new_attrs, post_funcs, early_funcs)`. `new_attrs` is a dictionary and may be modified (but `new_class_name` and `bases` are immutable). `post_funcs` is an initially-empty list that can have callbacks appended to it.
  - C `Signal` ... - Base event for all SQLObject events.
  - C `RowUpdateSignal` ... - Called when an instance is updated through a call to `.set()` (or a column attribute assignment). The arguments are `(instance, kwargs)`. `kwargs` can be modified. This is run before the instance is updated; if you want to look at the current values, simply look at `instance`.
  - C `RowUpdatedSignal` ... - Called when an instance is updated through a call to `.set()` (or a column attribute assignment). The arguments are `(instance, post_funcs)`. `post_funcs` is a list of callbacks, intended to have functions appended to it, and are called with the arguments `(new_instance)`. This is run after the instance is updated; Works better with lazyUpdate = True.
  - f `listen` ... - Listen for the given `signal` on the SQLObject subclass `soClass`, calling `receiver()` when `send(soClass, signal, ...)` is called.