Today, after an update, if I run scons I obtain:
g++ -o UI/CUIControls-human.o -c -pthread -g -O2 -Wall -D_GNU_SOURCE=1 -D_REENTRANT -DFREEORION_LINUX -DENABLE_BINRELOC -DFREEORION_BUILD_HUMAN -I/usr/include/python2.5 -I/usr/local/include -I/usr/include/SDL -I/usr/include/graphviz -Inetwork UI/CUIControls.cpp
UI/CUIControls.cpp: In member function 'virtual void CUILinkTextMultiEdit::MouseHere(const GG::Pt&, GG::Flags<GG::ModKey>)':
UI/CUIControls.cpp:834: error: 'ScrollPosition' was not declared in this scope
UI/CUIControls.cpp: In member function 'virtual void CUILinkTextMultiEdit::SetLinkedText(const std::string&)':
UI/CUIControls.cpp:866: error: 'PreserveTextPositionOnNextSetText' is not a member of 'GG::MultiEdit'
scons: *** [UI/CUIControls-human.o] Error 1
scons: building terminated because of errors.
I can't understand the two errors. The first one is:
ScrollPosition() is a protected member of GG's MultiEdit. The error is in class CUILinkTextMultiEdit, which publicly inherites from TextLinker and CUIMultiEdit, the latter publicly inheriting from GG's MultiEdit.
Thus the protected inheritance SHOULD pass throught the various inheritances, and CUILinkTextMultiEdit SHOULD see ScrollPosition() as it's own member.
Then why the 'ScrollPosition' was not declared in this scope
The same happens for the second error: PreserveTextPositionOnNextSetText() is a member of GG's MultiEdit, but it isn't recognized by CUILinkTextMultiEdit.