Hi, I raised the above bug as a feature request then I decided to try and tackle it myself. My concept was to have a popup menu activated by a right click in the matcher window area from which the user could enable and disable multiple selection of transactions in the window and elect to assign a transfer account to a selection of multiple rows. My reason for doing this is I often have within an imported set of transactions, sets of multiple transactions which have the same transfer account and processing an import would be speeded up if these could be selected as a group and the the transfer account selected and applied to the group.
I now have a lot of the basic code in place to process a selection and to create and view a popup menu, activate and disable multiple selection and process a group of selected rows, partially tested but I have struck a problem in that the GtkTreeView does not implement Ctrl-click selection in the API and i am going to have to provide that myself. As far as I can see from the code in import-main-matcher.c GnuCash does not seem to implement anything other than a mouse double click to select a single row which is processed by the callback initiated by the TreeView "row-activated" event. I.e. there is no selection by pressing "Enter" while the focus is on a given row. My plan is to detect Ctrl-Left click (implemented) and use that to add rows to the selection and then initiate the processing of the selection using the right click (implemented) popup menu. To do this, I have to detect a GDK_BUTTON_PRESS event and then use the event->state to determine whether Ctrl is pressed simultaneously (implemented) or whether the third mouse button has been clicked (implemented) . This however appears to short circuit the "row-activated" event detection by the GtkTreeView as it detects the sequence: GDK_BUTTON_PRESS GDK_BUTTON_RELEASE GDK_BUTTON_PRESS GDK_BUTTON_RELEASE if it occurs within 0.25 s so I am going to have to provide my own double click detection within the callback I use to process the initial button press. My question is is this. Is what I have outlined above likely to interfere with any non mouse based selection of transactions for applying a transfer account and does the approach seem reasonable? I can't see that occurring in the code for the main matcher, but I am a relative novice in using Gdk and Gtk so I could be easily missing something. E.g. Up, Down keys to shift the row focus and Enter to select for example. David Cousens. ----- David Cousens -- Sent from: http://gnucash.1415818.n4.nabble.com/GnuCash-Dev-f1435356.html _______________________________________________ gnucash-devel mailing list gnucash-devel@gnucash.org https://lists.gnucash.org/mailman/listinfo/gnucash-devel