2016-04-21  Nenue  <Nenue>

[92534dc793f2] [tip]
* ObjectiveTracker/DefaultTracker.lua, ObjectiveTracker/Events.lua, ObjectiveTracker/Frame.lua, ObjectiveTracker/ObjectiveTracker.lua, ObjectiveTracker/Quests.lua, ObjectiveTracker/Schema.lua, ObjectiveTracker/Widgets.lua:

- restore the previous QuestLogSelection after pulling for selection-restricted quest data; fixes icon mixups while quest map is open
- moved progressbar builders into the schema environment, with all the other Frame.lua functions; prep for configuration access
- relegate the various removal events to a framescript in their corresponding blocks; this takes care of resolving dead frames


[1f8f9cc3d956]
* Core.xml, Init.lua, Minimap/Minimap.lua, ObjectiveTracker/Achievements.lua, ObjectiveTracker/BonusObjectives.lua, ObjectiveTracker/DefaultTracker.lua, ObjectiveTracker/Events.lua, ObjectiveTracker/Frame.lua, ObjectiveTracker/ObjectiveTracker.lua, ObjectiveTracker/ObjectiveTracker.xml, ObjectiveTracker/Quests.lua, ObjectiveTracker/Schema.lua, ObjectiveTracker/Widgets.lua, ObjectiveTracker/Widgets.xml:

- module integration brought up to speed with current frame management structure


2016-04-18  Nenue  <Nenue>

[e84d645c8ab8]
* Core.xml, Init.lua, ObjectiveTracker/Achievements.lua, ObjectiveTracker/AutoQuestPopups.lua, ObjectiveTracker/BonusObjectives.lua, ObjectiveTracker/DefaultTracker.lua, ObjectiveTracker/Events.lua, ObjectiveTracker/Frame.lua, ObjectiveTracker/ObjectiveTracker.lua, ObjectiveTracker/ObjectiveTracker.xml, ObjectiveTracker/Quests.lua, ObjectiveTracker/Scenarios.lua, ObjectiveTracker/Schema.lua, ObjectiveTracker/Widgets.lua, ObjectiveTracker/Widgets.xml:

- revised the tracker update function to build its complete data list up front and use the values as points of comparison for determining possible out of place blocks, which will be iterated over afterward to remove what wasn't re-used
 - also entailed revising the exact role of global event handlers and function hooks, limiting their directions of communication so one doesn't end up calling the other multiple or inifinity times
- schema handling polish


2016-04-17  Nenue  <Nenue>

[a487841050be]
* ObjectiveTracker/BonusObjectives.lua, ObjectiveTracker/DefaultTracker.lua, ObjectiveTracker/Frame.lua, ObjectiveTracker/ObjectiveTracker.xml, ObjectiveTracker/Update.lua:

- attempts to solve the mystery of disappearing objectives


[69d03f8e293e]
* ObjectiveTracker/Achievements.lua, ObjectiveTracker/Frame.lua, ObjectiveTracker/ObjectiveTracker.lua, ObjectiveTracker/ObjectiveTracker.xml, ObjectiveTracker/Quests.lua, ObjectiveTracker/Schema.lua, ObjectiveTracker/Update.lua, ObjectiveTracker/Widgets.lua:

- separated layout and data logic between Frame.lua and Update.lua
- solved disappearing tracker mystery


[9856ebc63fa4]
* Core.xml, ObjectiveTracker/Achievements.lua, ObjectiveTracker/AutoQuestPopups.lua, ObjectiveTracker/BonusObjectives.lua, ObjectiveTracker/Events.lua, ObjectiveTracker/Frame.lua, ObjectiveTracker/ObjectiveTracker.lua, ObjectiveTracker/ObjectiveTracker.xml, ObjectiveTracker/Quests.lua, ObjectiveTracker/Schema.lua, ObjectiveTracker/SecureButton.xml, ObjectiveTracker/Widgets.lua, ObjectiveTracker/Widgets.xml:

- half solution to Update being fired multiple times during load
- change securefunc  handlers to dispense a reason code; catch that reason code in the enclosure passed to hooksecurefunc, and decide whether to update or not from there.


2016-04-15  Nenue  <Nenue>

[64f2a9bbea79]
* ObjectiveTracker/BonusObjectives.lua, ObjectiveTracker/Frame.lua, ObjectiveTracker/ObjectiveTracker.lua, ObjectiveTracker/Widgets.lua:

- implementing structural revisions in bonus objectives
- prevent instances of nil arithmetic
- decide on where to keep style values
- start widgets with dummy values for operability


[a3afe6c3771e]
* ObjectiveTracker/BonusObjectives.lua, ObjectiveTracker/Frame.lua, ObjectiveTracker/ObjectiveTracker.lua, ObjectiveTracker/ObjectiveTracker.xml, ObjectiveTracker/Quests.lua:

- organize and display reward icons as a background hint
- centralize reward data function


2016-04-14  Nenue  <Nenue>

[48b3e3959a0a]
* ObjectiveTracker/AutoQuestPopups.lua, ObjectiveTracker/BonusObjectives.lua, ObjectiveTracker/Events.lua, ObjectiveTracker/Frame.lua, ObjectiveTracker/Quests.lua:

- clean up method arguments


[7583684becf4]
* ObjectiveTracker/Achievements.lua, ObjectiveTracker/AutoQuestPopups.lua, ObjectiveTracker/BonusObjectives.lua, ObjectiveTracker/Frame.lua, ObjectiveTracker/ObjectiveTracker.lua, ObjectiveTracker/ObjectiveTracker.xml, ObjectiveTracker/Quests.lua, ObjectiveTracker/Scenarios.lua:

- implement procedural block contents generation
- redo anchor calculations to allow for transitional animation
- attempt to sort out event handling quirks related to autopopup quest completion and turn-in
- revise the data structures created by the different GetInfo's
- start on trimming out redundant variables


2016-04-13  Nenue  <Nenue>

[adcd7c328d07]
* ObjectiveTracker/Achievements.lua, ObjectiveTracker/AutoQuestPopups.lua, ObjectiveTracker/BonusObjectives.lua, ObjectiveTracker/Data.lua, ObjectiveTracker/Frame.lua, ObjectiveTracker/ObjectiveTracker.lua, ObjectiveTracker/ObjectiveTracker.xml, ObjectiveTracker/Quests.lua:

code collation cleaning


[c33c17dd97e7]
* ObjectiveTracker/Achievements.lua, ObjectiveTracker/AutoQuestPopups.lua, ObjectiveTracker/Data.lua, ObjectiveTracker/Events.lua, ObjectiveTracker/ExperienceBar.lua, ObjectiveTracker/Frame.lua, ObjectiveTracker/ObjectiveTracker.lua, ObjectiveTracker/Quests.lua, ObjectiveTracker/Widgets.lua, ObjectiveTracker/Widgets.xml:

file renames


[c3aa94bc6be2]
* ObjectiveTracker/BonusObjectives.lua, ObjectiveTracker/ObjectiveSecure.xml, ObjectiveTracker/ObjectiveTracker.xml, ObjectiveTracker/ObjectiveUI.lua, ObjectiveTracker/Scenarios.lua, ObjectiveTracker/SecureButton.xml:

collating module-specific function into their own files and dropping the UI and Style scripts


[d5563cae5bf1]
* .hgtags:

Added tag v1.0-beta for changeset 4b3da1b221de


[4b3da1b221de] [v1.0-beta]
* ObjectiveTracker/ObjectiveCore.lua, ObjectiveTracker/ObjectiveFrame.lua, ObjectiveTracker/ObjectiveInfo.lua, ObjectiveTracker/ObjectiveTracker.xml, ObjectiveTracker/ObjectiveUI.lua, ObjectiveTracker/QuestTracker.lua:

- distinction between all possible types of values for the 'isComplete' field
- style polish applied to title headers
- clickable regions altered to somewhat match those of the blizzard objectives tracker, for more world frame space and quicker user familiarity


2016-04-11  Nenue  <Nenue>

[66b927b46776]
* BuffAnchors.lua, Config.lua, Init.lua, ObjectiveTracker/ObjectiveCore.lua, ObjectiveTracker/ObjectiveFrame.lua, ObjectiveTracker/ObjectiveTracker.xml, ObjectiveTracker/ObjectiveWidgets.lua, ObjectiveTracker/QuestTracker.lua:

Refine the XML data logic, and sort out some EnableMouse inconsistencies.


2016-04-10  Nenue  <Nenue>

[e837384ac363]
* ObjectiveCore.lua, ObjectiveEvents.lua, ObjectiveFrame.lua, ObjectiveInfo.lua, ObjectiveSecure.xml, ObjectiveStyle.lua, ObjectiveTracker.xml, ObjectiveTracker/ObjectiveCore.lua, ObjectiveTracker/ObjectiveEvents.lua, ObjectiveTracker/ObjectiveFrame.lua, ObjectiveTracker/ObjectiveInfo.lua, ObjectiveTracker/ObjectiveSecure.xml, ObjectiveTracker/ObjectiveStyle.lua, ObjectiveTracker/ObjectiveTracker.xml, ObjectiveTracker/ObjectiveUI.lua, ObjectiveTracker/ObjectiveWidgets.lua, ObjectiveTracker/ObjectiveWidgets.xml, ObjectiveTracker/QuestTracker.lua, ObjectiveTracker/XPTracker.lua, ObjectiveUI.lua, ObjectiveWidgets.lua, ObjectiveWidgets.xml, Veneer.toc, XPTracker.lua:

Separating objective tracker module


2016-04-09  Nenue  <Nenue>

[9b3fa734abff]
* Core.xml, ObjectiveCore.lua, ObjectiveFrame.lua, ObjectiveInfo.lua, ObjectiveTracker.xml, ObjectiveUI.lua, ObjectiveWidgets.lua:

ObjectiveFrame
- polish quest rewards display
- implement money objectives
- set line metrics in UpdateLine
- set block metrics in UpdateBlock (sum of line metrics)


2016-04-08  Nenue  <Nenue>

[d5ee940de273]
* Core.xml, Init.lua, ObjectiveCore.lua, ObjectiveEvents.lua, ObjectiveFrame.lua, ObjectiveInfo.lua, ObjectiveStyle.lua, ObjectiveTracker.xml, ObjectiveUI.lua, ObjectiveWidgets.lua:

use hardcoded aesthetic manipulations over loadstring cramming


2016-04-06  Nenue  <Nenue>

[6bd2102d340b]
* ObjectiveCore.lua, ObjectiveEvents.lua:

ObjectiveCore
- sorting out oddball events


[605e8f0e46db]
* ObjectiveCore.lua, ObjectiveEvents.lua, ObjectiveFrame.lua, ObjectiveInfo.lua, ObjectiveStyle.lua, ObjectiveTracker.xml, ObjectiveUI.lua, ObjectiveWidgets.lua, XPTracker.lua:

ObjectiveCore / Style / Events / Frame
- polishing the execution path for better performance
 - make use of the Blizzard_ObjectiveTracker bitfield values to ensure compatibility in possible secure hooks
 - avoid full updates when possible (using said bitfield values to indicate targeted sections)
- extreme streamlining of event handling layout: specific reason updates are invoked from API hooks; broader updates are invoked by when the event listener catches something vague like 'QUEST_LOG_UPDATE'


2016-04-05  Nenue  <Nenue>

[d1812fb10ae6]
* ObjectiveFrame.lua, ObjectiveInfo.lua, ObjectiveStyle.lua, ObjectiveTracker.xml:

ObjectiveStyle
- move tag/template logic into the corresponding GetInfo


[c33497b116d6]
* ObjectiveStyle.lua:

ObjectiveStyle
- statusbg and titlebg will respect the spacing value


[880828018bf4]
* ObjectiveCore.lua, ObjectiveEvents.lua, ObjectiveFrame.lua, ObjectiveInfo.lua, ObjectiveStyle.lua, ObjectiveTracker.xml, ObjectiveUI.lua, ObjectiveWidgets.lua:

ObjectiveEvents
- trim down the number of events that fire full updates
- begin the general outline for determining which trackers need to refresh
- handlers for accepting and completing auto-popup quests

ObjectiveFrame
- correct variables for money reward calculation
- make sure everythign is scaling to the font strings and that the font strings aren't being pinned by SetSize

ObjectiveInfo
- implementation of autoquest popups
- discern between internal and client bonus objective indexes
- acquire the correct data set from bonus objective query

ObjectiveStyle
- look for a style table under the previously interpreted set before deferring standard options
- horizontal/vertical options in gradient
- remove height-fixing for font strings


2016-04-04  Nenue  <Nenue>

[f660f1c1e0aa]
* ObjectiveFrame.lua, ObjectiveWidgets.lua:

Objective Widgets
- determine completion by fractional value


[ed642234f017]
* BuffFrame.xml, Config.xml, Core.xml, Init.lua, ObjectiveCore.lua, ObjectiveFrame.lua, ObjectiveInfo.lua, ObjectiveStyle.lua, ObjectiveTracker.xml, ObjectiveUI.lua, ObjectiveWidgets.lua, ObjectiveWidgets.xml:

ObjectiveFrame
- implement proper tracker name text
- expanded tracker prototypes to cover "objective lines" formatting and accommodation of widget variables
- implement the progress bars for bonus objectives

ObjectiveStyle
- moved `UpdateWrapperStyle` over and renamed it to fit semantics
- change the formula for block.`height`  to measure non-widget content only
 - allows widgets to position relative to text
 - size FontString `status` to match block.`height`
 - full block height is acquired by adding block.`height` and block.`attachmentHeight` which is calculated during objective parsing

ObjectiveWidgets
- use string keys for generated widgets to deal with multiple objectives under the same questID, and maybe dungeon objectives
- wrapper buttons use a common code path
- specialized handlers for wheel scrolling moved over to fit semantics


2016-04-02  Nenue  <Nenue>

[9455693fc290]
* Init.lua, ObjectiveCore.lua, ObjectiveFrame.lua, ObjectiveInfo.lua, ObjectiveStyle.lua, ObjectiveTracker.xml, ObjectiveUI.lua, ObjectiveWidgets.lua, ObjectiveWidgets.xml:

Init
- recall XML display state on reload

ObjectiveFrame
- quest coloring by relative level
- quest coloring by daily/weekly/complete status
- remember starting scroll value between reload
- limit anchor points to edges for regions affected by style attributes

ObjectiveInfo
- AutoQuest outline definitions
- Pull Quest title and tag data in addition to WatchInfo

ObjectiveStyle
- ensure consistent style table
- hardcode certain attributes for sanity

XML
- ensure consistent naming conventions for heading and content elements
- ensure hardcore anchors are based on edges
- expansion of file structure to deal with complexities of dynamic widgets and style caching

ObjectiveUI
- determine primary style by block handler when restoring original style
- moved framescript to 'ObjectiveWidgets' lua


[8238cddaddb1]
* ObjectiveFrame.lua, ObjectiveTracker.xml, ObjectiveUI.lua, ObjectiveWidgets.xml:

ObjectiveUI
- fillers for 'Hidden' objective widgets


[fb80e365bab3]
* ObjectiveStyle.lua:

ObjectiveStyle & ObjectiveFrame
- abstract aesthetic details away from ObjectiveFrame
- revise SetBlockStyle into a more general algorithm for every frame
 - implement caching of resolved attribute combinations
  - use loadstring functions to store resolved attributes and call upon those when, for example, a MouseUp leads a tracker block to restore its original style (removes a lot of very small fps dipping)


[f03c75f63566]
* ObjectiveCore.lua, ObjectiveFrame.lua, ObjectiveStyle.lua, ObjectiveTracker.xml, ObjectiveUI.lua:

ObjectiveStyle & ObjectiveFrame
- abstract aesthetic details away from ObjectiveFrame
- revise SetBlockStyle into a more general algorithm for every frame
 - implement caching of resolved attribute combinations
  - use loadstring functions to store resolved attributes and call upon those when, for example, a MouseUp leads a tracker block to restore its original style


