Download
(26 Kb)
Download
Updated: 10-05-13 02:58 AM
Pictures
File Info
Compatibility:
Siege of Orgrimmar (5.4)
Escalation (5.3)
Thunder Isle (5.2)
Landfall (5.1)
Mists of Pandaria (5.0.4)
Updated:10-05-13 02:58 AM
Created:02-07-10 06:04 PM
Downloads:3,662
Favorites:31
MD5:
5.4
Scrolling Watch Frame
Version: 5.4.0.17399
by: Xrystal [More]
About the Scrolling Watch Frame Addon
This addon allows the user to set their watch frame into a more convenient size and position with nUI users gaining extra functionality to 'dock' the frame in an infopanel.

Credits and an Alternative
Seerah's WatchFrame Addon has many similar and more features so if this isn't quite what you want or you want to weigh your choices go check it out : http://www.wowinterface.com/download...herWabbit.html. I must admit that the recall of the current collapse status the last time you logged out and recording the position of both collapsed and expanded positions for those users that wish to have two places to place the frame came from that addon either as an idea or an inspiration of. Thanks Seerah.

Slash Commands Available
/swf reset - Resets the data to the programmed defaults, may require an automatic reload of the UI
/swf dock - Toggles the docking mode for nUI users and will require an automatic reload of the UI
/swf scroll x - Sets the scroll size to x which will allow more quests and achievements to be watched ( 1000 to 5000 )
/swf height x - Sets the undocked frame's height ( 100 to 800 )
/swf width x - Sets the undocked frame's width ( 300 to 600 )
/swf lock - Toggles the undocked frame's movability
/swf background - Toggles the current docked status frame's background status
/swf multiple - Toggles the ability for the undocked frame to track both the collapsed and expanded position anchors with the main anchor used for single position tracking
/swf options - Show the UI Version
/swf autohide - Toggles the ability for the undocked frame to automatically hide if there is nothing being tracked.


Note: If you need a higher number for those with ranges let me know and I will raise the bar.

Other Information
The following Blizzard Watch Frame values have been changed to reflect the size of OUR watch frame:
WATCHFRAME_MAXLINEWIDTH is changed to match the space available
WATCHFRAME_MAXQUESTS = 50 - instead of 10
WATCHFRAME_CRITERIA_PER_ACHIEVEMENT = 50 - instead of 5

Note: WATCHFRAME_MAXACHIEVEMENTS cannot be overridden for some reason however much I tried. WATCHFRAME_MAXQUESTS can be overridden but not programmatically updated. However, the others do work as expected. At the top of the WatchFrame.lua file for this addon you will see the two lines near the top. You can personally change these to a higher value as needed but I have not extensively tested anything beyond 50 ( namely because I haven't got that many quests rofl ).

Known Problems:
When you first utilise the Dock option to put the watch frame into an InfoPanel ( nUI Users only ) there is a period of time where you may encounter a bug due to the Blizzard WatchFrame not existing for a few seconds. Due to this error, which I am trying to identify, it stops the Blizzard watch frame from doing its work. It can be confirmed by trying to track a quest if it seemingly displayed fine. A Reload or Relog will solve the problem.

Foreign Language Versions
At the present this plugin does not support multi language settings.
enUS and enGB versions will work fine however and the ability to add new languages is possible using the addonData.Localization values accordingly.
-------------------------------------------------------------------
[Version 5.4.0.17399]
-------------------------------------------------------------------
Just a TOC change

-------------------------------------------------------------------
[Version 1.04.00]
-------------------------------------------------------------------
SWF_SavedVars.lua
-->Fixed defunct global references
SWF_Main.lua
-->Fixed defunct global references

-------------------------------------------------------------------
[Version 1.03.02]
-------------------------------------------------------------------
SWF_Main.lua
-->Do not execute watch frame updates if we are using an infopanel but it has not yet been made - delay in process ?
nUI_InfoPanel.lua
-->Apply current settings when the frame is selected
-->Make sure plugin is valid before using it
-->Stored strata and level of frame and restore them on disablement

-------------------------------------------------------------------
[Version 1.03.01]
-------------------------------------------------------------------
General Changes
-->Removed 3.3.2 specific code and switched to 3.3.3 full time
ScrollFrame.lua
-->Temporarily Unlock frame when hiding/showing subcomponents
-->Refresh ScrollBar Visibility based on conditions and place in reusable function
Interface.lua
-->Added the ability to create Drop Down Menus
SWF_SavedVars.lua
-->Removed ExpandedAnchor variables
-->Corrected defaults for CollapsedAnchor
SWF_Options.lua
-->Now holds updating of options data adjusted via the slash commands, options screen and options menu
SWF_SlashCommands.lua
-->Removed Menu and Screen setting up functions from here, it now only handles slash command functionality
SWF_Interface.lua
-->Interface Options Screen to handle just the options UI Screen functionality
SWF_Menu.lua
-->Interface Options Menu to handle just the Options Menu functionality
SWF_Main.lua
-->Use OnEnter to trigger a WatchFrame_Update call to refresh the frame again
-->Added Options Button
-->Created Drop Down Menu
Problems Spotted to still occur:
-->nUI Users may find that due to the start up errors that we are getting you may lose some settings related to this addon. Sometimes it seems to reset itself and other times it just drops the quests. I haven't found anything that can countermand this without breaking something else.
-->Scrollbar Stickiness : I have tried to get it so that the scrollbar disappears under certain conditions ( no more room to scroll, no background and being collapsed. If the frame is locked in place sometimes the changes do not occur as quick as we would like. So I made some slight changes to how this can be sped up. 1. For when locked is not set a mouse over the frame will cause it to update the frame along with the scroll. 2. Similarly with opening and closing the options interface window.
-->Whilst annoying these seem to be the main problems I have been coming across since the last set of changes made. So, please let me know if something else occurs for you.

-------------------------------------------------------------------
[Version 1.03.00]
-------------------------------------------------------------------
Note: This version is for 3.3.3. I haven't fully tested it's use on 3.3.2 but I have tried to code it so that it works on both versions. If it doesn't, until 3.3.3 goes live or I update it to work, then use last version instead.
All Generic files
-->Now uses their own version pattern 0.xx.xx so as to not confuse over multiple addons
WatchFrame.lua
-->Only use Collapsed Anchor if using multiple anchors
-->Added parent parameter so we don't risk using UIParent in error
-->Incorporate new ExtendedWatchFrameWidth options
-->Incorporate new Filter Options
-->Incorporate new UserCollapsed status
ScrollFrame.lua
-->Can drag with left and right button
-->Moved Resize of ScrollSize to onResize Function
SWF_SlashCommands.lua
-->Check the AutoHide status of the frame
-->Update unused Anchor as well
SWF_SavedVars.lua
-->Use PEW as well as VariablesLoaded Event to ensure data available
-->Added UserCollapsed Variable to Saved Variables
SWF_Main.lua
-->Use WatchFrameHeader if it exists instead of WatchFrameTitle
-->Various changes to utilise new expanded width cvar value
-->Work in the new filter system if they exist
-->No Longer tracking OnShow with a setscript as the watchframe is constantly updating now
-->Hide Scrollbar if no background unless in an infopanel
-->Positioned WatchFrameCollapseExpandButton a bit further right to account for WatchCount addition
Known Problems
-->After relogging in after collapsing it Blizzard will sometimes untrack quests - Blizzard Tracker doesn't keep collapse state to compare
-->If the options=nil error occurs for nUI users Blizzard seems to forget about its quests track status and thus will change the status of the tracker after the reloadui
-->If you play with the toggle multiple anchor setting while in a collapsed state it sometimes moves the collapsed window slightly
-->Despite many attempts at getting the scrollbar to hide if there is no background sometimes it refuses to, right clicking a quest and show quest details will refresh it
-->Sometimes when toggling to an infopanel it will require a second reload of the UI to fully work, confirm by tracking a quest after it has successfully toggled

-------------------------------------------------------------------
[Version 1.02.01]
-------------------------------------------------------------------
SWF_Main.lua
-->Default the Heading, Button and Watched Lines as Shown as Blizzard may have hidden already
-->Removed OnResize script and function as they were actually redundant
-->Added OnUpdate function which can be called to carry out tasks before a final call to WatchFrame_Update
-->Restore the WatchFrame Status if not in an infopanel
ScrollFrame.lua
-->Temporarily Unlock frame for resizing of subcomponents
-->Removed OnSizeChanged script. Instead resizing will be done when we want
WatchFrame.lua
-->Don't restore Watch Frame Status in case we don't want to
SWF_SlashCommands.lua
-->Only Restore non InfoPanel frames and just expand the infopanel ones

-------------------------------------------------------------------
[Version 1.02.00]
-------------------------------------------------------------------
WatchFrame.lua
-->MaxLineWidth constant needs to match width of container frame if it exists
-->Removed AutoWiden option
SWF_Main.lua
-->Added new Options Frame to Frame List
-->Set Scroll Frame to be low on the strata just like the official WatchFrame
-->Hide Scroll Bar if in Collapsed Mode regardless of ScrollSize setting
-->Refresh WatchListWidth constant when collapsing and expanding
-->Show frame regardless if not autohiding or in infopanel
-->Added OnShow and OnResize Functions/Scripts for non infopanel users
-->Create Slash Command Interface
-->Update the WatchFrame once the InfoPanel has been set up
Interface.lua
-->New File to handle common interface tasks
SWF_SlashCommands.lua
-->Access new Interface options
-->When you show the Options Interface refresh with current data
-->Create the Slash Command Interface
-->Access to Options Interface added to slash command list
-->Dock and Reset options separated for sharability with Interface options
-->Added AutoHide feature to slash commands
-->Correctly display lock status when seeing current settings
SWF_SavedVars.lua
-->Added AutoHide Option to Saved Variables
ScrollFrame.lua
-->Refresh the ScrollSize when resizing as well
-->Handle OnResize Event for the frame
-->Added Script to monitor size changing to resize sub components

Constants that can be changed in WatchFrame.lua file
WATCHFRAME_MAXQUESTS = 50 - instead of default of 10
WATCHFRAME_CRITERIA_PER_ACHIEVEMENT = 50 - instead of default of 5

Slash Commands added to SWF_SlashCommands.lua file
/swf options - to show options frame
/swf autohide - to toggle the autohide feature

-------------------------------------------------------------------
[Version 1.01.01]
-------------------------------------------------------------------
ScrollFrame.lua
-->Resize both Scroll and Child Frames to suit new width of Container
SWF_Main.lua
-->Added Hook into WatchFrame_Update
-->Added Auto Hide option so when WatchFrame wants to hide, so does ours
-->Resize Child Frame to reflect quest item icons
WatchFrame.lua
-->Added AutoHide and AutoWiden options
-->Update the WatchFrame to reflect the changes made
-->Override WatchFrame Constants to 50 barring Achievements which don't work anyway
-->Override WatchFrame MaxLineWidth Constant to match width of frame
SWF_SlashCommands.lua
-->Update the WatchFrame when these changes are made as well
nUI_InfoPanel.lua
-->Forgot to size the frame when the infopanel was resized
Known Rectifiable Problems
-->If you adjust the scrollsize with swf scroll to a smaller number after watching more quests to fill the larger scroll frame it just won't display the quests but they are still counted as watchable.
Suggestion : make sure you have ample scroll space before watching a quest, expand scroll space when you run out.
Optional Files (0)


Archived Files (8)
File Name
Version
Size
Author
Date
1.04.00
26kB
Xrystal
10-14-10 02:03 PM
1.03.02
30kB
Xrystal
04-09-10 05:06 AM
1.03.01
30kB
Xrystal
03-29-10 01:15 PM
1.03.00
26kB
Xrystal
03-23-10 05:44 AM
1.02.01
21kB
Xrystal
03-12-10 03:15 PM
1.02.00
20kB
Xrystal
03-11-10 02:04 PM
1.01.01
16kB
Xrystal
02-08-10 11:17 AM
1.01.00
15kB
Xrystal
02-07-10 06:04 PM


Post A Reply Comment Options
Old 11-24-13, 08:08 AM  
Gieran
A Kobold Labourer

Forum posts: 0
File comments: 6
Uploads: 0
Just wanted to say thank you for continuing to work on this great addon, Xrystal!
Gieran is offline Report comment to moderator  
Reply With Quote
Old 11-22-13, 04:23 PM  
Xrystal
nUI User and Supporter
 
Xrystal's Avatar
Premium Member
AddOn Author - Click to view AddOns

Forum posts: 5013
File comments: 282
Uploads: 25
Well having used this for a few days on multiple toons I haven't noticed anything untoward happening since that first usage so perhaps it was a first use glitch.

With the new expansion changing the questing process I am loathe to make any major changes to this if I end up having to rewrite later on or drop it totally due to the new changes. But, feel free to check it out and point out things missing as simple stuff I may add while we wait for the expansion to be close to coming out and I get access to the ptr.
__________________
Xrystal is offline Report comment to moderator  
Reply With Quote
Old 10-05-13, 07:31 AM  
Xrystal
nUI User and Supporter
 
Xrystal's Avatar
Premium Member
AddOn Author - Click to view AddOns

Forum posts: 5013
File comments: 282
Uploads: 25
Don't update yet .. typical that the last few weeks I don't see any problems with the watcframe and today I see tons. Not sure if its due to a change with the blizzard watchframe files or not.
__________________
Xrystal is offline Report comment to moderator  
Reply With Quote
Old 10-05-13, 03:00 AM  
Xrystal
nUI User and Supporter
 
Xrystal's Avatar
Premium Member
AddOn Author - Click to view AddOns

Forum posts: 5013
File comments: 282
Uploads: 25
Still haven't fathomed the clickable item problem yet. I have it working in a full rewrite I have been working on but it is no way finished as of yet. So the last update uploaded just now is simply the TOC change to reflect compatibility.
__________________
Xrystal is offline Report comment to moderator  
Reply With Quote
Old 09-07-13, 11:53 AM  
Xrystal
nUI User and Supporter
 
Xrystal's Avatar
Premium Member
AddOn Author - Click to view AddOns

Forum posts: 5013
File comments: 282
Uploads: 25
There's still a glitch with the quest item you click that I need to figure out still. Probably combat /secure frame related so will have to see if I can get it working without breaking the rest of the addon.
__________________
Xrystal is offline Report comment to moderator  
Reply With Quote
Old 09-06-13, 05:58 PM  
Gieran
A Kobold Labourer

Forum posts: 0
File comments: 6
Uploads: 0
That worked perfectly! I no longer want to cry every time I pick up a quest. Thank you!!
Gieran is offline Report comment to moderator  
Reply With Quote
Old 09-06-13, 04:33 PM  
Xrystal
nUI User and Supporter
 
Xrystal's Avatar
Premium Member
AddOn Author - Click to view AddOns

Forum posts: 5013
File comments: 282
Uploads: 25
Originally Posted by Gieran
Gotta say, Xrystal, while there are a lot of things I'm excited about in 5.4, this addon is what I'm most excited about. My OCD absolutely hates looking at my watch frame just hanging out with no background or frame around it. I know that there are other options out there, but SWF really is perfect.
Well I just took a look and the way ElvUI takes control is by re-parenting everytime SetPoint is used on the watchframe. The only way to stop this is by telling ElvUI not to do it.

Look in the folder: Interface\AddOns\ElvUI\modules\blizzard
Open the file: watchframe.lua

And look at the below segment of code and compare with what is in ElvUI. Commenting out the SetPoint at present looks to have resolved the control issue.

Lua Code:
  1. function B:MoveWatchFrame()
  2.     E:CreateMover(WatchFrameHolder, 'WatchFrameMover', L['Watch Frame'])
  3.     WatchFrameHolder:SetAllPoints(WatchFrameMover)
  4.  
  5.    
  6.     WatchFrame:ClearAllPoints()
  7.     WatchFrame:SetPoint('TOP', WatchFrameHolder, 'TOP')
  8.     WatchFrame:Height(E.screenheight / 2)
  9.     WatchFrame:SetClampedToScreen(false)
  10. --  hooksecurefunc(WatchFrame,"SetPoint",function(_,_,parent)
  11. --      if parent ~= WatchFrameHolder then
  12. --          WatchFrame:ClearAllPoints()
  13. --          WatchFrame:SetPoint('TOP', WatchFrameHolder, 'TOP')
  14. --      end
  15. --  end)   
  16. end
__________________
Xrystal is offline Report comment to moderator  
Reply With Quote
Old 09-06-13, 08:18 AM  
Gieran
A Kobold Labourer

Forum posts: 0
File comments: 6
Uploads: 0
Gotta say, Xrystal, while there are a lot of things I'm excited about in 5.4, this addon is what I'm most excited about. My OCD absolutely hates looking at my watch frame just hanging out with no background or frame around it. I know that there are other options out there, but SWF really is perfect.
Gieran is offline Report comment to moderator  
Reply With Quote
Old 07-24-13, 06:55 PM  
Gieran
A Kobold Labourer

Forum posts: 0
File comments: 6
Uploads: 0
Very cool, and thank you again.

Originally Posted by Xrystal
Originally Posted by Gieran
Really glad to hear that!

One thing of note, it appears that SWF doesn't work with ElvUI. I assume this has something to do with the way ElvUI takes control of the watch frame, but knowing nothing about LUA, that's just a guess on my part.
Sounds possible. When I check its state with the new patch I'll look into how I can ask ElvUI to stop taking control while my addon is loaded, I do something similar with nUI.
Gieran is offline Report comment to moderator  
Reply With Quote
Old 07-24-13, 06:09 PM  
Xrystal
nUI User and Supporter
 
Xrystal's Avatar
Premium Member
AddOn Author - Click to view AddOns

Forum posts: 5013
File comments: 282
Uploads: 25
Originally Posted by Gieran
Really glad to hear that!

One thing of note, it appears that SWF doesn't work with ElvUI. I assume this has something to do with the way ElvUI takes control of the watch frame, but knowing nothing about LUA, that's just a guess on my part.
Sounds possible. When I check its state with the new patch I'll look into how I can ask ElvUI to stop taking control while my addon is loaded, I do something similar with nUI.
__________________
Xrystal is offline Report comment to moderator  
Reply With Quote
Old 07-24-13, 03:47 PM  
Gieran
A Kobold Labourer

Forum posts: 0
File comments: 6
Uploads: 0
Really glad to hear that!

One thing of note, it appears that SWF doesn't work with ElvUI. I assume this has something to do with the way ElvUI takes control of the watch frame, but knowing nothing about LUA, that's just a guess on my part.
Gieran is offline Report comment to moderator  
Reply With Quote
Old 07-24-13, 02:17 PM  
Xrystal
nUI User and Supporter
 
Xrystal's Avatar
Premium Member
AddOn Author - Click to view AddOns

Forum posts: 5013
File comments: 282
Uploads: 25
Originally Posted by Gieran
I absolutely love this addon, it does everything I want without adding anything I don't want. Is there any chance it's still being worked on?
Wow I apologise for not replying at least the next day after you posted this. I must have forgotten to check the addon message list the last few days and totally missed your post. As I said in my reply to your message, I use the addon myself and apart from a little glitch I am trying to tie down it looks to be working fine so far. I will make sure I post up the version I have once the new patch comes out, even if the little glitch is there, as it is resolvable with a simple reload of the UI when out of combat.
__________________
Xrystal is offline Report comment to moderator  
Reply With Quote
Old 07-20-13, 09:49 AM  
Gieran
A Kobold Labourer

Forum posts: 0
File comments: 6
Uploads: 0
I absolutely love this addon, it does everything I want without adding anything I don't want. Is there any chance it's still being worked on?
Gieran is offline Report comment to moderator  
Reply With Quote
Old 03-06-13, 05:19 PM  
Xrystal
nUI User and Supporter
 
Xrystal's Avatar
Premium Member
AddOn Author - Click to view AddOns

Forum posts: 5013
File comments: 282
Uploads: 25
Well looks like I've identified what to do to stop the auto pop up quests from popping the watch frame outside of the infopanel frame.

Other problem which is annoying is working out a way to get the quest item icons to not intersperse too near the quest text as it seems to cause problems. Or of course it could be a layering issue.
__________________
Xrystal is offline Report comment to moderator  
Reply With Quote
Old 11-17-12, 09:14 PM  
Xrystal
nUI User and Supporter
 
Xrystal's Avatar
Premium Member
AddOn Author - Click to view AddOns

Forum posts: 5013
File comments: 282
Uploads: 25
Its been glitching out when the pop up quests occur which happen alot so I am guessing it still needs work on.

Barring making mental notes on what happens when and taking screenshots on things like scenarios etc which also do stuff with the watch frame I haven't had the time to spend too much on it what with work and levelling rofl.

But I have 4 days off at the end of the month so should be able to spend some time on it then. Thinking maybe making the pop up and scenario sections separate from the watchframe as they're not really something you watch but more info on what you need to do or to accept/complete to make it do the next stage.
__________________
Xrystal is offline Report comment to moderator  
Reply With Quote
Post A Reply



Category Jump: