I've popped the three debug classes I use on github. 

They do: 

  • ValueTree inspection (and a bit of editing). 
  • Component tree inspection (and a bit of cock-up detection). 
  • float * buffer inspection for debugging errant DSP code

They are all ugly but functional (and trivial to use). 

Here's a screenshot from the component debugger - showing the class name, component name, ID and bounds.  One with zero size is marked in red, and ones not marked as visible are in grey. 


And here's the valuetree one: 


Documentation and code:



Very nice!

Complete bacon savers. 

Here's the buffer visualiser: 


The Component Tree has potential:

It'd be great to have some hooks in Component to report things like number of paint calls and profiling information, like time taken inside paint(...). 

And being able to move components in it .... I might have to add that ;-)  Just added


great !


thanks a lot, dude !



I've updated them:

It's now a JUCE module: jcf_debug.  If there are any problems let me know.

1 Like

Hey I'm getting a "missing dependencies" problem in IntroJucer. It says it needs juce_gui, but there is no juce_gui. Is it juce_gui_basics, juce_gui_extras, or both? 

By the way, I'm loving the component debugger. I think I'll be using this a lot. I'm suprised how easy it is to set up too. I'll have to give the other debugger tools a spin too. :)

Great stuff, thanks for sharing yes

Whoops.  Fixed.

mmm I can't get the buffer visualizer to work. I added the module and the macro, but XCode wants to replace the macro row with jcf::BufferVisualizer;

A namespace problem?  

If it doesn't compile, try a using namespace jcf; and see if that fixes it.  

Let me know. 

I've got a new much tider version of these I'd been meaning to push to github.  

now it works! :) Thanks

Sweet! I was thinking about making something like the Component Tree to help parse/understand Component layout for large foreign projects . Very very nice to see it's already made! :D


1 Like

I’ve finally updated the debugger module to the new JUCE module format. Sorry for the delay - I’ve been tied up with other projects.

If anyone has any issues getting it running, scream :slight_smile: