2014-01-21  madcatzinc  <madcatzinc>

[c42cae255226] [tip]
* CyborgMMO7.toc:

Updated the game interface version.


2013-05-03  madcatzinc  <madcatzinc@35b17cf1-18cd-47ff-9ca3-31d6b526ef09>

[c22f1accec43]
* Localisation.lua, OptionPage.xml, OptionView.lua:

Fixed the parent/child relationship of the option pages.
The option category names are now localized (they actually use the same text as the corresponding frame title).


[adba10dfa908]
* CyborgMMO7.lua, Localisation.lua, OptionPage.xml:

Implemented the "Defaults" button for the key bindings options subpage.


[a710bedc1ec4]
* CyborgMMO7.lua:

Automatically re-open the Rat page when leaving combat if it was open when entering combat.


[b7ee4a10eaf0]
* CyborgMMO7.lua, OptionView.lua:

Initialize the Cyborg heads as mode 1. Still display the minimap button tooltip until a mode change has been detected.


[cec87b651c10]
* CyborgMMO7.lua, Localisation.lua:

Removed some whitespace on end of lines.


[1236b2b22dde]
* CyborgMMO7.lua:

Removed unnecessary call to getglobal.


[5ca5fe6b0871]
* OptionPage.xml:

Moved the key rebinding to a separate option page.


[72adde883f46]
* Localisation.lua, OptionPage.xml, OptionView.lua:

Removed the "Defaults" button from the option page. It was no longer visible following addition of the prefix anyway.
Plugged the built-in "Defaults" button of the interface options dialog to what the custom button was previously doing.


[c9706291c141]
* CyborgMMO7.lua, Localisation.lua, OptionPage.xml:

Added per-spec bindings. This is optional and must be enabled in the addon settings.


[4b9e27be9c68]
* OpenButtonPage.xml:

A right click on the minimap icon will open the options.


[da98db8191f5]
* RatPageModel.lua:

Removed special code for callbacks (it was not necessary, and will conflict with the upcoming dual-spec support).


[fb81254bd7b8]
* CyborgMMO7.lua, RatPageModel.lua:

Clarified the distinction between data (what is actually saved) and the objects (which store the data, but also have methods and other attributes).


[7cbd32de1fdd]
* WowObjects.lua:

Fixed activation of equipment sets.


[3b1f85a1cbb1]
* RatPageController.lua:

Fixed dropping of equipment sets in the Rat page.


[40892c6b6075]
* CyborgMMO7.lua:

Fixed settings initialization, and added the minimap buttton position to the saved data.


2013-04-29  madcatzinc  <madcatzinc@35b17cf1-18cd-47ff-9ca3-31d6b526ef09>

[1a29be548897]
* MainPage.xml, OpenButtonPage.xml, RatPage.xml, RatQuickPage.xml, WowObjects.lua:

Removed all .tga extensions in texture names. They are not needed, and they won't need to be changed if we switch to blp files.


[3a3dc5e4405a]
* CyborgMMO7.lua, OpenButtonPage.xml:

Removed a level of frames for the minimap button, and improved some widgets naming a bit.


[57d46de51ba7]
* CyborgMMO7.lua:

Fixed the dragging of the minimap button. It's still not saved.


[3e4739a6a99d]
* OpenButtonPage.xml:

Fixed the Cyborg minimap button to match existing minimap buttons.


[f02cf040133c]
* MainPage.xml, OpenButtonPage.xml, OptionPage.xml, RatPage.xml, RatQuickPage.xml:

Cleaned up whitespace (and other minor details) in all the XML files.


[5d18eb57ea2f]
* CyborgMMO7.lua:

The PreLoad function should have been local.


[841191e42919]
* CyborgMMO7.lua, MainPage.xml:

Removed CyborgMMO_Event first argument, it was always nil.


2013-04-25  madcatzinc  <madcatzinc@35b17cf1-18cd-47ff-9ca3-31d6b526ef09>

[67ad1101ee10]
* CyborgMMO7.lua, MainPage.xml:

Added an asynchronous loading mechanism for item and battle pet data. The wow objects loading is delayed until all the necessary data is available.


[ce4ddefb68c2]
* RatPageModel.lua, WowObjects.lua:

Fail early when a wow object cannot be created. Default to empty slots rather than empty wow objects.


[d12a5a7d2be5]
* WowObjects.lua:

Use a local variable when possible.


[0734b90e605a]
* CyborgMMO7.lua:

Create the saved data root table when it doesn't exist.


[8fc4f8a25225]
* CyborgMMO7.lua:

Properly iterate over all modes and buttons when saving the data.


[16b2ff47b6db]
* CyborgMMO7.lua:

Added a conversion function to extract as much information as possible from old profiles.


[6ce173840e68]
* CyborgMMO7.lua, RatPageController.lua, RatPageModel.lua, RatPageView.lua, WowObjects.lua:

Reworked the whole "wow object" system:
- Only save what is strictly necessary.
- Save appropriate persistent information for all objects (like spellIDs instead of spellBook+spellIndex).
- Fixed Battle Pets objects (non-combat pets in pre-MoP).
- Fixed item objects.
- Cleaned and simplified most objects implementation.
- Moved the settings and button profile to the root of the saved data, rather than in a per-character sub-table (that data is already tagged as saved per character).

This should fix most issues with objects changing without user interaction on diverse occasions.

Old profiles are not converted to the new system. This will come soon.

Some issues persist due to the asynchronous loading of some informations:
- Pet icons are never properly loaded from saved data.
- Items are not properly loaded the first time the UI is started (a "/reload ui" or disconnect/connect cycle fixes this problem).


