Spellbook initially loads on client initialization. (Attempting to use GetSpellName before this is complete will result in a UI error. Note: This event happens after ADDON_LOADED and VARIABLES_LOADED.)

Learning new stuff that goes in the spellbook.

Opening the spellbook.

Equipping/Removing/Swapping primary weapon. (Changes the Attack icon)

UpdateSpells() function is called, which is used throughout the spellbook.

arg1

nil when the char learns stuff. Also when changing weapons and shapeshifting. In addition it seems to be called on regular intervals for no apparent reason.

when the user opens the spellbook.

'LeftButton' when using the mouse to open the spellbook or to browse through the pages and tabs of the open spellbook.

This event is fired every three seconds for no apparent reason (correct as of patch 3.3.3).
When a spell that has a cooldown is triggered it gets fired twice in quick succession and then again a few milliseconds later.

"SPELL_UPDATE_USABLE"

Category: Spell

This event is fired when a spell becomes useable or unusable. However the definition of useable and unusable is somewhat confusing. Firstly, range is not taken into account. Secondly if a spell requires a valid target and doesn't have one it gets marked as useable. If it requires mana or rage and there isn't enough then it gets marked as unusable. This results in the following behaviour:

Start) Feral druid in bear form out of combat, no target selected.

1) Target enemy. Event is fired as some spells that require rage become marked as unusable. On the action bar the spell is marked in red as unusable.

2) Use Enrage to gain rage. Event is fired as we now have enough rage. On the action bar the spell is marked unusable as out of range.

3) Move into range. Event is not fired. On the action bar the spell is marked usable.

4) Rage runs out. Event is fired as we no longer have enough rage.

5) Remove target. Event is fired and spell is marked as useable on action bar.

It appears that the definition of useable is a little inaccurate and relates more to how it is displayed on the action bar than whether you can use the spell. Also after being attacked the event started firing every two seconds and this continued until well after the attacker was dead. Targetting a fresh enemy seemed to stop it.