Developer forums (C::B DEVELOPMENT STRICTLY!) > Plugins development

Python Debugger

<< < (5/15) > >>

dmoore:
Added a couple of small updates to the svn which fixed performance when expanding a watch item to show object members. It turns out that Regex can have really poor performance on seemingly simple searches.


--- Quote from: oBFusCATed on July 31, 2012, 07:06:18 pm ---Yes, of course, if you have time and desire you can do it, too :)

--- End quote ---

I played around with this:


--- Code: ---class cbWatch;
typedef cb::shared_ptr<cbWatch> cbWatchPtr;

--- End code ---

and (and as I suspect you already knew) it doesn't really help all that much, because at times you want cb::shared_ptr<Derived Class> instead, and so each plugin would need to define those typedefs as well.

Things I don't like about the current implementation stand:
1/ It is confusing to refer to shared_ptr in some places and someclass::pointer in other places
2/ typedef shared_ptr<cbWatch> Pointer doesn't correctly inherit for derived classes (i.e. derived class still needs to define its own Pointer)
3/ someclass::pointer obscures that fact that this is a shared_ptr not a "*". (The implementation details matters when it comes time to clean up.)

Wouldn't the need for the plugin writers to use shared_ptr go away if the framework instead of the plugin provided the containers for the various lists of items. (Perhaps using a class template?)

oBFusCATed:

--- Quote from: dmoore on August 08, 2012, 08:59:07 pm ---Wouldn't the need for the plugin writers to use shared_ptr go away if the framework instead of the plugin provided the containers for the various lists of items. (Perhaps using a class template?)

--- End quote ---
I'm not sure what are you talking exactly.

For the typedef you can try to remove it, I have no problem with it. And if it is confusing for you it will be for other, so removing the typedef is the only way forward.

Falldog:
How can I build it in Windows?

dmoore:

--- Quote from: falldog on August 18, 2012, 03:08:23 am ---How can I build it in Windows?

--- End quote ---

What have you tried?

There is a windows project file (cbp) but it may not be completely up to date (some tweaks required).

The most straightforward way is to start by compiling and running cb itslef from svn sources (see the wiki). Then copy the debugger code to src/plugins/contrib and try to build it from the provided project file. If you have problems let me know.

Falldog:

--- Quote from: dmoore on August 18, 2012, 04:04:21 pm ---What have you tried?
There is a windows project file (cbp) but it may not be completely up to date (some tweaks required).
The most straightforward way is to start by compiling and running cb itslef from svn sources (see the wiki). Then copy the debugger code to src/plugins/contrib and try to build it from the provided project file. If you have problems let me know.

--- End quote ---
Thanks,
I had build it success,
And run in CB from output/, try edit a .py file, set PythonDebugger as active debugger,
1. I try to setting PythonDebugger info from Settings|Debugger|PyDebugger, it display nothing to setup, how can I setup the python path or other setting?
2. I don't know how to debug and set break point on PythonDebugger.dll,
   I run CB by CB, and set break point on PythonDebugger source code, it doesn't break on any break points.
   I run a CB, and try to run another CB(fail to launch 2 CB?) for attach process to debug -> fail
   How to debug on PythonDebugger plugin?
 ???

Thanks

Navigation

[0] Message Index

[#] Next page

[*] Previous page

Go to full version