kicad-developers team mailing list archive
-
kicad-developers team
-
Mailing list archive
-
Message #00539
Re: block select
Dick H. a écrit :
Jean-Pierre,
We have a new problem with the block select logic, which is a direct
result of the fact that PcbGeneralLocateAndDisplay() pops up a menu.
The problem starts at line 94 in pcbnew/edit.cpp.
If the BOARD has a background footprint, like my PC104 which is large,
and I want to select a block of footprints which are smaller and sit
on top of the PC104 footprint, then PcbGeneralLocateAndDisplay() will
present its menu before the block selection logic is complete. This
is because of the line 94 mentioned.
You are right...
And the same problem exists for the double click command.
One possible solution is that we change that logic at line 94 by
moving it to a "mouse button up" handler, or at least the "completed
click handler". That way the single footprint selection and block
selection logic is mutually exclusive.
This solution works for the block commands, but it does not solve the
double click command.
And users expect a selection rather at the beginning of the click than
at its end.
What other solutions can you think of, or is this our best?
Can you try this solution (for the logic in line 94)
:
if ( ! wxGetKeyState(WXK_SHIFT) && ! wxGetKeyState(WXK_ALT) &&
! wxGetKeyState(WXK_CONTROL) && ! wxGetKeyState(WXK_TAB))
{
DrawStruct = PcbGeneralLocateAndDisplay();
if( DrawStruct )
SendMessageToEESCHEMA( DrawStruct );
}
If the single click popu menu is displayed, the copy block (or the
double click command ) can be reached by pressing the TAB key, when
clicking.
Other block commands do not change and they are always accessible.
--
Jean-Pierre CHARRAS
Maître de conférences
Directeur d'études 2ieme année.
Génie Electrique et Informatique Industrielle 2
Institut Universitaire de Technologie 1 de Grenoble
BP 67, 38402 St Martin d'Heres Cedex
Recherche :
Grenoble Image Parole Signal Automatique (GIPSA - INPG)
46, Avenue Félix Viallet
38031 Grenoble Cedex
Follow ups
References