Hi Michael,
Le 15/06/2015 15:30, Michael Stahl a écrit :
On 15.06.2015 15:21, Michel Renon wrote:
> Hi,
>
> Here is the next step of QtCreator integration : debugging of OUString
> (and internal type rtl_uString)
>
> http://imgur.com/ZrvIZ2V,2G52CwW,2r2wVSP
>
> 1 : default view for OUString variable : just address and length
> 2 : new view : you have the string (here with some specific french
> characters and 'euro' symbol)
> 3 : new view : you can have internals of OUString
i don't quite understand - why not just display the content of the
string by default using the python pretty printers in solenv/gdb, like
Eclipse CDT and KDevelop do?
Because QtCreator has its own api...
http://doc.qt.io/qtcreator/creator-debugging-helpers.html
It seems that there cannot be common/shared code between existing gdb helpers
and qtcreator's one [1].
So can i create a folder : solenv/gdb/qtcreator that will contain specific
qtcreator gdb helpers ?
I started with strings, and will continue with other basic LO types.
Currently, I need to manually enter the path to those helpers in a QtCreator
dialog.
(qtcreator just execute in gdb "source path/to/helper.py")
Is there a way to predefine that command in gdb to avoid any manual
configuration ?
If possible, I plan to execute it at the end of "make
qtcreator-ide-integration" command.
Cheers,
Michel
[1] An example with OUString for QtCreator :
---------------------------------------------------------------
def __get_rtl_ustring(d, pdata):
"""
"""
charSize = 2
array = pdata["buffer"]
length = pdata["length"]
cutoff = min(length*charSize, d.stringCutOff)
mem = d.readMemory(array, cutoff)
encodingType = Hex4EncodedLittleEndian
return mem, encodingType
def qdump__rtl__OUString(d, value):
"""
class SAL_WARN_UNUSED SAL_DLLPUBLIC_RTTI OUString
{
public:
/// @cond INTERNAL
rtl_uString * pData;
/// @endcond
"""
pdata = value["pData"]
# show rtl_uString
mem, encodingType = __get_rtl_ustring(d, pdata)
d.putValue(mem, encodingType)
d.putAddress(value.address)
_______________________________________________
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice