I’ve currently implemented a “lock” and “unlock” state to my application (via right-click pop up menu and keyboard shortcut) which enables users to unlock the gui panel, and drag / reposition components. The problem I was having is that child components of the component I was trying to drag were still clickable. For example, I have a class that has a few gui elements (2 drop down menus, a button…etc). When I would set that component to be draggable (using ComponentDragger), if I clicked over any of its children components, they would get triggered and I could not drag the component. If I however click outside of a child component, it dragged fine, with all children. Here is my hack to get around it. Basically, when my program goes into the unlock/draggable mode, it calls setDraggable on my objects, and if it is in edit/drag mode, it set setInterceptsMouseClicks to false for all children components, then back to true when the gui editing panel is locked… is there a better way? Should I be creating some sort of intermediary to handle the managing of all my object placement and dragging whatnot? Thanks!
[code]void SensorRecorder::setDraggable(bool _drag){
drag = _drag;
if(drag){
for(int i = 0; i < this->getNumChildComponents(); i++){
getChildComponent(i)->setInterceptsMouseClicks(false, false);
}
}else{
for(int i = 0; i < this->getNumChildComponents(); i++){
getChildComponent(i)->setInterceptsMouseClicks(true, true);
}
}
}[/code]

Going to customize it a bit, but its really quite nice… thanks again for your help Jules, I’ve learned so much from you and the framework in the last few months!