+class PerspectiveAffine : public BC_PopupMenu
+{
+ static const int n_modes = AffineEngine::AF_MODES;
+ const char *affine_modes[n_modes];
+ PerspectiveAffineItem *affine_items[n_modes];
+public:
+ PerspectiveAffine(PerspectiveWindow *gui, int x, int y);
+ ~PerspectiveAffine();
+
+ void create_objects();
+ void update(int mode, int send=1);
+ void affine_item(int id);
+
+ PerspectiveWindow *gui;
+ int mode;
+};
+
+class PerspectiveAffineItem : public BC_MenuItem
+{
+public:
+ PerspectiveAffineItem(const char *txt, int id)
+ : BC_MenuItem(txt) { this->id = id; }
+
+ int handle_event();
+ PerspectiveWindow *gui;
+ int id;
+};
+
+
+