{
this->gui = gui;
this->mwindow = mwindow;
+// *** CONTEXT_HELP ***
+ context_help_set_keyword("Program Window");
}
MainMenu::~MainMenu()
settingsmenu->add_item(new SetFormat(mwindow));
settingsmenu->add_item(preferences = new PreferencesMenuitem(mwindow));
- ProxyMenuItem *proxy;
settingsmenu->add_item(proxy = new ProxyMenuItem(mwindow));
proxy->create_objects();
ConvertMenuItem *convert;
}
int ShowVWindow::handle_event()
{
- mwindow->gui->unlock_window();
- mwindow->show_vwindow(1);
- mwindow->gui->lock_window("ShowVWindow::handle_event");
+ if( mwindow->session->current_operation == NO_OPERATION ) {
+ mwindow->gui->unlock_window();
+ if( !mwindow->session->show_vwindow )
+ mwindow->show_vwindow(1);
+ else
+ mwindow->hide_vwindow(1);
+ mwindow->gui->lock_window("ShowVWindow::handle_event");
+ set_checked(mwindow->session->show_vwindow);
+ }
return 1;
}
}
int ShowAWindow::handle_event()
{
- mwindow->gui->unlock_window();
- mwindow->show_awindow();
- mwindow->gui->lock_window("ShowAWindow::handle_event");
+ if( mwindow->session->current_operation == NO_OPERATION ) {
+ mwindow->gui->unlock_window();
+ if( !mwindow->session->show_awindow )
+ mwindow->show_awindow();
+ else
+ mwindow->hide_awindow();
+ mwindow->gui->lock_window("ShowAWindow::handle_event");
+ set_checked(mwindow->session->show_awindow);
+
+ }
return 1;
}
}
int ShowCWindow::handle_event()
{
- mwindow->gui->unlock_window();
- mwindow->show_cwindow();
- mwindow->gui->lock_window("ShowCWindow::handle_event");
+ if( mwindow->session->current_operation == NO_OPERATION ) {
+ mwindow->gui->unlock_window();
+ if( !mwindow->session->show_cwindow )
+ mwindow->show_cwindow();
+ else
+ mwindow->hide_cwindow();
+ mwindow->gui->lock_window("ShowCWindow::handle_event");
+ set_checked(mwindow->session->show_cwindow);
+ }
return 1;
}
}
int ShowLWindow::handle_event()
{
- mwindow->gui->unlock_window();
- mwindow->show_lwindow();
- mwindow->gui->lock_window("ShowLWindow::handle_event");
+ if( mwindow->session->current_operation == NO_OPERATION ) {
+
+ mwindow->gui->unlock_window();
+ if( !mwindow->session->show_lwindow )
+ mwindow->show_lwindow();
+ else
+ mwindow->hide_lwindow();
+ mwindow->gui->lock_window("ShowLWindow::handle_event");
+ set_checked(mwindow->session->show_lwindow);
+ }
return 1;
}
BC_SubMenu *mixer_submenu = new BC_SubMenu();
add_submenu(mixer_submenu);
mixer_submenu->add_submenuitem(new MixerViewer(this));
- mixer_submenu->add_submenuitem(new TileMixers(this));
+ mixer_submenu->add_submenuitem(new DragTileMixers(this));
mixer_submenu->add_submenuitem(new AlignMixers(this));
mixer_submenu->add_submenuitem(new MixMasters(this));
}
return 1;
}
-TileMixers::TileMixers(MixerItems *mixer_items)
- : MixerItem(mixer_items, _("Tile mixers"), "Alt-t", 't')
+DragTileMixers::DragTileMixers(MixerItems *mixer_items)
+ : MixerItem(mixer_items, _("Drag Tile mixers"), "Alt-t", 't')
{
set_alt();
+ drag_box = 0;
}
-int TileMixers::handle_event()
+DragTileMixers::~DragTileMixers()
{
- MWindow *mwindow = mixer_items->mwindow;
- mwindow->tile_mixers();
+ delete drag_box;
+}
+
+int DragTileMixers::handle_event()
+{
+ if( !drag_box ) {
+ MWindow *mwindow = mixer_items->mwindow;
+ drag_box = new TileMixersDragBox(mwindow->gui);
+ }
+ if( !drag_box->running() )
+ drag_box->start(this);
+ return 1;
+}
+
+TileMixersDragBox::TileMixersDragBox(MWindowGUI *gui)
+ : BC_DragBox(gui)
+{
+ tile_mixers = 0;
+}
+
+void TileMixersDragBox::start(DragTileMixers *tile_mixers)
+{
+ this->tile_mixers = tile_mixers;
+ start_drag();
+}
+
+int TileMixersDragBox::handle_done_event(int x0, int y0, int x1, int y1)
+{
+ MWindow *mwindow = tile_mixers->mixer_items->mwindow;
+ if( x0 >= x1 || y0 >= y1 ) x0 = x1 = y0 = y1 = 0;
+ mwindow->session->tile_mixers_x = x0;
+ mwindow->session->tile_mixers_y = y0;
+ mwindow->session->tile_mixers_w = x1 - x0;
+ mwindow->session->tile_mixers_h = y1 - y0;
+ mwindow->tile_mixers(x0, y0, x1, y1);
+ tile_mixers = 0;
return 1;
}
: BC_Window(_(PROGRAM_NAME ": Layout"), x, y, xS(300),yS(140), xS(300),yS(140), 0)
{
this->layout_dialog = layout_dialog;
+// *** CONTEXT_HELP ***
+ context_help_set_keyword("Window Layouts");
}
LoadLayoutConfirm::~LoadLayoutConfirm()