Download
(20 Kb)
Download
Updated: 08-28-12 09:42 AM
Pictures
File Info
Compatibility:
Mists of Pandaria (5.0.4)
Updated:08-28-12 09:42 AM
Created:unknown
Downloads:4,040
Favorites:37
MD5:
Dev
Version: 5.0.0.1
by: Saiket [More]
_Dev combines many small addon development tools into one addon, similar to Iriel's DevTools addon. It includes a text-based stats display for framerate, memory, and latency; allows frames to be highlighted and tracked even when hidden or off-screen; can print data structures neatly to chat frames; includes a mouse-over frame identifier that can also outline and print details for found frames; and features a few other useful tools.

Details
  • Adds the slash command “/togglemod <Name>” to toggle on and off the addon called <Name>. May reload the UI if necessary.
  • Adds a key binding to open the shortest available /script-like slash command.
  • Adds a key binding for reloading the user interface.
  • Unescapes pipe characters (“|”) from /script commands.
  • Implements table.count( <Table> ) function to count the number of elements in both arrays and hash tables.
  • Implements math.round( <Float> [, <Precision> ] ) function to round a given <Float> number to one with <Precision> decimal places.
  • Shrinks the console font size to 12pt.
  • Disables the console key unless <CTRL> is held, allowing tildes (“~”) and grave accents (“`”) in the console and other edit boxes.


Dump

Outputs a detailed view of a data structure to the default chat frame in a format similar to Lua.
  • Adds the slash command “/dump <Expression>” to dump the result of executing any RValue <Expression>.
  • Implements dump( <LValue>, ) to print with the title <LValue>. To demonstrate the use of <LValue>, the call dump( "ChatFrame1", ChatFrame1 ) would produce the results found in the second example screenshot to the right.
  • Optionally escapes all pipe characters and non-printable bytes found in printed strings.
  • No infinite recursion: If a table is encountered more than once, the second instance will display as a reference to the first.
  • Recognizes UIObject tables and prints their names and widget types accordingly.
  • Optional protective limits for execution time, table length, string length, and table nest depth.
  • Optimized for fast execution speed.
  • Can optionally avoid recursing into the global environment _G variable.


Outline

Allows frames to be outlined to track their positions and boundaries, even when hidden or off-screen.
  • Adds the slash command “/outline [ <Frame> ]” to toggle <Frame>'s outline on and off, or remove all outlines if no frame is given.
  • Implements outline( <Region> [, <DefaultName> ] ) to toggle <Frame>'s outline. <DefaultName> specifies the name to print in case the region has none.
  • Multiple colors for multiple outlines helps tell frames apart.
  • Frames cannot be outlined more than once at a time.
  • Borders are always visible, no matter where the target frame is or what it's under.
  • For frames that go off-screen, a tracking arrow appears at the screen edge to point at it.


Stats

Adds a small transparent string of stats to the top left of the WorldFrame. This display includes framerate, latency, and total interface memory consumption.


Events

Adds an “AddOn Messages” sub-menu to the chat frame tab dropdown to enable the display of escaped CHAT_MSG_ADDON events. These addon messages look similar in format and color to their corresponding chat channel messages.


Frames

A spiritual successor to Itchy's FrameFinder addon from long ago, Frames highlights the frame focused under your mouse. This incarnation, however, is designed to not cripple gameplay while active. In addition to identifying mouse focus frames, this module also implements Dumping and Outlining said frames with mouse clicks.
  • Adds a key binding to toggle frame highlighting.
  • Adds the slash command “/frames” to toggle frame highlighting.
  • Hold <ALT> to enter interactive mode, where the highlight cannot be moved, but can be explored using the mouse buttons.
    • Left click to Outline the frame.
    • Right click to print a summary of the frame's name along with its parent's name.
    • Middle click to Dump the frame's table.


Options

All of _Dev's and its modules' options can be configured through the _Dev pane in the Interface Options menu. Use the slash command “/dev” to open the options pane directly.
  • 5.0.0.1: Updated for Mists of Pandaria.
  • 4.3.0.1: Updated for 4.3.
  • 4.2.0.1: Updated for 4.2.
  • 4.1.0.1:
    • Stats display now shows World latency instead of Home (chat) latency.
    • Added 4.1's new officer chat channel to the “AddOn Messages” dropdown menu.
  • 4.0.0.2: Updated dropdown menus for compatibility with patch 4.0.1.
  • 4.0.0.1: Updated for Cataclysm Beta.
  • 3.3.0.2: Removed Drundia's fix for ScrollingChatMessage:AddLine from “Fix ScrollingMessageFrame Lag”, since the slowdown issue has mostly disappeared.
  • 3.3.0.1:
    • Removed the unused event pulse feature.
    • Dump.Explore won't break anymore when its LValue parameter isn't a string.
    • The Events module now escapes outbound addon messages properly.
  • 3.2.0.1:
    • Now loads with the Blizzard_DebugTools addon.
    • Replaces the “/dump” command from Blizzard_DebugTools.
    • Dump can now handle vararg input.
  • 3.1.0.1: Initial release.
Optional Files (0)


Archived Files (10)
File Name
Version
Size
Author
Date
4.3.0.1
20kB
Saiket
11-29-11 06:08 PM
4.2.0.1
20kB
Saiket
06-28-11 02:21 PM
4.1.0.1
20kB
Saiket
04-26-11 10:58 AM
4.0.0.2
20kB
Saiket
10-12-10 04:07 PM
3.3.0.2
21kB
Saiket
03-23-10 02:00 PM
3.3.0.1
21kB
Saiket
12-08-09 02:56 PM
3.2.0.1
23kB
Saiket
08-04-09 04:18 PM
3.1.0.1
23kB
Saiket
04-15-09 01:53 AM
3.0.8.1
23kB
Saiket
01-20-09 04:20 PM
3.0.2.1
23kB
Saiket
10-14-08 12:31 PM


There have been no comments posted to this file.
Be the first to add one.



Category Jump:

Support AddOn Development!

You have just downloaded by the author . If you like this AddOn why not consider supporting the author? This author has set up a donation account. Donations ensure that authors can continue to develop useful tools for everyone.