5 #ifndef CNOID_BODYPLUGIN_BODY_BAR_H_INCLUDED
6 #define CNOID_BODYPLUGIN_BODY_BAR_H_INCLUDED
9 #include <cnoid/ToolBar>
10 #include <cnoid/SignalProxy>
11 #include <cnoid/SpinBox>
27 return sigBodyItemSelectionChanged_;
31 return sigCurrentBodyItemChanged_;
35 return selectedBodyItems_;
39 return currentBodyItem_.get();
46 virtual bool storeState(Archive& archive);
47 virtual bool restoreState(
const Archive& archive);
56 ItemList<BodyItem> selectedBodyItems_;
57 ItemList<BodyItem> targetBodyItems;
59 DoubleSpinBox* stanceWidthSpin;
61 boost::signals::connection connectionOfCurrentBodyItemDetachedFromRoot;
63 boost::signal<void(const ItemList<BodyItem>& selectedBodyItems)> sigBodyItemSelectionChanged_;
64 boost::signal<void(BodyItem* currentBodyItem)> sigCurrentBodyItemChanged_;
66 void onItemSelectionChanged(
const ItemList<BodyItem>& bodyItems);
67 void onBodyItemDetachedFromRoot();
68 void onCopyButtonClicked();
69 void onPasteButtonClicked();
70 void onOriginButtonClicked();
72 void onSymmetricCopyButtonClicked(
int direction,
bool doMirrorCopy);