Hello,


I don't really understand what I am doing wrong. I have a button on the toolbar of the connector tool (InkAction) that, when gets pressed, basically creates a new knot that follows the mouse pointer.


At this point (after the button is pressed) SPEventContext (for the connector tool) stops receiving any button1 press/release events. Other buttons press/release, pointer motion events are received.


I don't even have a clue for where to start debugging, please help.


Thank you.


Following are some code exerpts:


from toolbox.cpp:
===========
...
g_signal_connect_after( G_OBJECT(inky), "activate", G_CALLBACK(sp_connector_new_connection_point), holder );
...
static void sp_connector_new_connection_point(GtkWidget *widget, GObject *tbl)
{
SPDesktop *desktop = (SPDesktop *) g_object_get_data( tbl, "desktop" );
SPConnectorContext* cc = SP_CONNECTOR_CONTEXT(desktop->event_context);


if (cc->mode == SP_CONNECTOR_CONTEXT_EDITING_MODE)
cc_create_connection_point(cc);
std::cout<<"Done new connection point."<<std::endl;
}
...


from connector-context.cpp
==================
...
void cc_create_connection_point(SPConnectorContext* cc)
{
if (cc->active_shape && cc->state == SP_CONNECTOR_CONTEXT_IDLE)
{
if (cc->selected_handle)
{
cc_deselect_handle( cc->selected_handle );
}
SPKnot *knot = sp_knot_new(cc->desktop, 0);
cc_select_handle( knot );
cc->selected_handle = knot;
cc->state = SP_CONNECTOR_CONTEXT_NEWCONNPOINT;
}
}
...


Regards,
Arcadie Cracan