When working with C++ and possibly other languages, the way methods are associated with classes is location dependent within the source file.
For example take class 'foo' with a method 'bar'. If the file is written like:
foo::foo () { .. } //constructor first
void foo::bar() { .. } //method after
Then the Geany side bar widget shows that 'bar' is a method of 'foo'. However if the order of the two are reversed such that the constructor comes after the method:
void foo::bar() { .. } //method first
foo::foo () { .. } //constructor after
then Geany separates the two as if foo::bar() were it's own function and the class 'foo' had no methods at all.
headers
definitions
Example class.
Problem still present in Geany 1.23 (git >= c05f1bd).