Widget::Widget(Glib::ustring plugname): plug_name(plugname), pir(GX_LV2_STYLE_DIR"/univibe.png") { // create controllers for port name make_controller_box(&m_vbox2, "WIDTH", 0, 1, 0.01 , WIDTH); make_controller_box(&m_vbox3, "DEPTH", 0, 1, 0.01, DEPTH); make_controller_box(&m_vbox4, "DRY/WET", 0, 1, 0.01, WETDRY); make_controller_box(&m_vbox5, "TEMPO", 0.1, 1e+01, 0.1, TEMPO); make_controller_box(&m_vbox9, "FEEDBACK", 0.1, 1e+01, 0.1, FB); if (strcmp("_vibe_stereo", plug_name.c_str()) == 0) { make_controller_box(&m_vbox6, "St.df", -0.5, 0.5, 0.01, DF); make_controller_box(&m_vbox7, "PAN", -1,1,0.01, PAN); make_controller_box(&m_vbox8, "L/R.Cr", -1,1,0.01 , CROSS); } // set propertys for the main paintbox holding the skin m_paintbox.set_border_width(10); m_paintbox.set_spacing(6); m_paintbox.set_homogeneous(false); m_paintbox.set_name(plug_name); m_paintbox.property_paint_func() = "rack_unit_expose"; add(m_paintbox); // box for the controllers m_hbox_.set_spacing(14); m_hbox_.set_border_width(24); m_hbox_.set_homogeneous(false); // set a vertical box in the paintbox m_vbox.set_border_width(14); m_vbox1.set_border_width(14); m_paintbox.pack_start(m_vbox_); // and controller box on top m_vbox_.pack_start(m_hbox1_, Gtk::PACK_SHRINK); m_hbox1_.pack_start(m_vbox1_, Gtk::PACK_EXPAND_PADDING); m_hbox1_.pack_end(pir, Gtk::PACK_SHRINK); m_vbox_.pack_start(m_hbox_, Gtk::PACK_SHRINK); // put boxed controllers into controller box m_hbox_.pack_start(m_vbox1, Gtk::PACK_EXPAND_PADDING); m_hbox_.pack_start(m_vbox3); m_hbox_.pack_start(m_vbox2); m_hbox_.pack_start(m_vbox4); m_hbox_.pack_start(m_vbox5); m_hbox_.pack_start(m_vbox9); if (strcmp("_vibe_stereo", plug_name.c_str()) == 0) { m_hbox_.pack_start(m_vbox6); m_hbox_.pack_start(m_vbox7); m_hbox_.pack_start(m_vbox8); } m_hbox_.pack_start(m_vbox, Gtk::PACK_EXPAND_PADDING); // connect expose handler as resize handler m_paintbox.signal_expose_event().connect( sigc::mem_fun(this, &Widget::_expose_event), true); set_app_paintable(true); show_all(); }
GxSplashBox::GxSplashBox() : Gtk::Window(Gtk::WINDOW_POPUP) { set_redraw_on_allocate(true); set_app_paintable(); signal_expose_event().connect( sigc::group(&gx_cairo::splash_expose, GTK_WIDGET(gobj()), sigc::_1, (void*)0), false); set_decorated(false); set_type_hint(Gdk::WINDOW_TYPE_HINT_SPLASHSCREEN); set_position(Gtk::WIN_POS_CENTER ); set_default_size(280,80); show_all(); }
Widget::Widget(Glib::ustring plugname): plug_name(plugname) { // create controllers for port name make_controller_box(&m_vbox2, "INPUT", -24.0, 1e+01, 0.1, INPUT); make_controller_box(&m_vbox3, "DRIVE", -3.0, 100.0, 1.0, DRIVE); make_controller_box(&m_vbox4, "TONE", 0.0, 1.0, 0.01, TONE); make_controller_box(&m_vbox5, "OUTPUT",5e+01, 1e+02, 1.0 , OUTPUT); fastmeter.set_hold_count(12); fastmeter.set_property("dimen",5); fastmeter.set_tooltip_text("Output"); m_paintbox[1].property_paint_func() = "RackBox_expose"; m_paintbox[1].set_name(plug_name); m_paintbox[1].set_border_width(5); m_paintbox[1].set_spacing(2); m_paintbox[1].pack_start(fastmeter); // set propertys for the main paintbox holding the skin m_paintbox[0].set_border_width(10); m_paintbox[0].set_spacing(6); m_paintbox[0].set_homogeneous(false); m_paintbox[0].set_name(plug_name); m_paintbox[0].property_paint_func() = "compressor_expose"; add(m_paintbox[0]); // box for the controllers m_hbox_.set_spacing(14); m_hbox_.set_border_width(24); m_hbox_.set_homogeneous(false); // set a vertical box in the paintbox m_vbox.set_border_width(14); m_vbox1.set_border_width(14); m_paintbox[0].pack_start(m_vbox_); // and controller box on top m_vbox_.pack_start(m_hbox_, Gtk::PACK_SHRINK); // put boxed controllers into controller box m_hbox_.pack_start(m_vbox1, Gtk::PACK_EXPAND_PADDING); m_hbox_.pack_start(m_vbox2); m_hbox_.pack_start(m_vbox3); m_hbox_.pack_start(m_vbox4); m_hbox_.pack_start(m_vbox5); m_hbox_.pack_start(m_paintbox[1],Gtk::PACK_SHRINK); m_hbox_.pack_start(m_vbox, Gtk::PACK_EXPAND_PADDING); // connect expose handler as resize handler // m_paintbox[0].signal_expose_event().connect( // sigc::mem_fun(this, &Widget::_expose_event), true); set_app_paintable(true); show_all(); }
Widget::Widget(Glib::ustring plugname): plug_name(plugname) { // create controllers for port name Glib::ustring modes[] = {"linear","ping pong"}; static const size_t _size = sizeof(modes) / sizeof(modes[0]); make_selector("Delay Mode", modes, _size, 0, 1.0, INVERT); make_controller_box(&m_vbox2, "Time (R)", 1, 5000, 10, R_DELAY); make_controller_box(&m_vbox3, "Time (L)", 1, 5000, 10, L_DELAY); make_controller_box(&m_vbox4, "LFO", 0.2, 5, 0.01, LFOFREQ); m_vbox4.pack_start(m_selector, Gtk::PACK_SHRINK); make_controller_box(&m_vbox5, "Level (R)", -20, 20, 0.1, R_GAIN); make_controller_box(&m_vbox6, "Level (L)", -20, 20, 0.1, L_GAIN); make_switch_box(&m_vbox7, "Link (L+R)", LINK); // set propertys for the main paintbox holding the skin m_paintbox.set_border_width(10); m_paintbox.set_spacing(6); m_paintbox.set_homogeneous(false); m_paintbox.set_name(plug_name); m_paintbox.property_paint_func() = "gxhead_expose"; add(m_paintbox); // box for the controllers m_hbox_.set_spacing(14); m_hbox_.set_border_width(24); m_hbox_.set_homogeneous(false); // set a vertical box in the paintbox m_vbox.set_border_width(14); m_vbox1.set_border_width(14); m_paintbox.pack_start(m_vbox_); // and controller box on top m_vbox_.pack_start(m_hbox_, Gtk::PACK_SHRINK); // put boxed controllers into controller box m_hbox_.pack_start(m_vbox1, Gtk::PACK_EXPAND_PADDING); m_hbox_.pack_start(m_vbox3); m_hbox_.pack_start(m_vbox6); m_hbox_.pack_start(m_vbox4); m_hbox_.pack_start(m_vbox5); m_hbox_.pack_start(m_vbox2); m_hbox_.pack_start(m_vbox7); m_hbox_.pack_start(m_vbox, Gtk::PACK_EXPAND_PADDING); // connect expose handler as resize handler m_paintbox.signal_expose_event().connect( sigc::mem_fun(this, &Widget::_expose_event), true); set_app_paintable(true); show_all(); }
/* * http://web.mit.edu/ghudson/dev/nokrb/third/libwnck/libwnck/test-wnck.c * constructor * set the window transparence */ AppWindow::AppWindow() { add_events(Gdk::BUTTON_PRESS_MASK); set_app_paintable(true); GdkScreen *screen; GdkVisual *visual; gtk_widget_set_app_paintable(GTK_WIDGET(gobj()), TRUE); screen = gdk_screen_get_default(); visual = gdk_screen_get_rgba_visual(screen); if (visual != NULL && gdk_screen_is_composited(screen)) { gtk_widget_set_visual(GTK_WIDGET(gobj()), visual); } }
Widget::Widget(Glib::ustring plugname): plug_name(plugname), pir(GX_LV2_STYLE_DIR"/fuzzfacejfuller.png") { // create controllers for port name make_controller_box(&m_vbox3, "FUZZ", 0, 0.99, 0.01, FUZZ); make_controller_box(&m_vbox2, "LEVEL", 0, 1, 0.01, LEVEL); make_controller_box(&m_vbox4, "DRIVE", 0, 1, 0.01, DRIVE); make_controller_box(&m_vbox5, "INPUT", 0, 1, 0.01, INPUT); // set propertys for the main paintbox holding the skin m_paintbox.set_border_width(10); m_paintbox.set_spacing(6); m_paintbox.set_homogeneous(false); m_paintbox.set_name(plug_name); m_paintbox.property_paint_func() = "rack_unit_expose"; add(m_paintbox); // box for the controllers m_hbox_.set_spacing(25); m_hbox_.set_border_width(24); m_hbox_.set_homogeneous(false); // set a vertical box in the paintbox m_vbox.set_border_width(14); m_vbox1.set_border_width(14); m_paintbox.pack_start(m_vbox_); // and controller box on top m_vbox_.pack_start(m_hbox1_, Gtk::PACK_SHRINK); m_hbox1_.pack_start(m_vbox1_, Gtk::PACK_EXPAND_PADDING); m_hbox1_.pack_end(pir, Gtk::PACK_SHRINK); m_vbox_.pack_start(m_hbox_, Gtk::PACK_SHRINK); // put boxed controllers into controller box m_hbox_.pack_start(m_vbox1, Gtk::PACK_EXPAND_PADDING); m_hbox_.pack_start(m_vbox5); m_hbox_.pack_start(m_vbox4); m_hbox_.pack_start(m_vbox2); m_hbox_.pack_start(m_vbox3); m_hbox_.pack_start(m_vbox, Gtk::PACK_EXPAND_PADDING); // connect expose handler as resize handler m_paintbox.signal_expose_event().connect( sigc::mem_fun(this, &Widget::_expose_event), true); set_app_paintable(true); show_all(); }
Widget::Widget(Glib::ustring plugname): plug_name(plugname) { // create controllers for port name make_controller_box(&m_vbox2, "level", 0, 1, 0.01, LEVEL); make_controller_box(&m_vbox3, "delay", 0, 0.2, 0.01, DELAY); make_controller_box(&m_vbox4, "depth", 0, 1, 0.01, DEPTH); make_controller_box(&m_vbox5, "freq", 0.1, 10, 0.01, FREQ); // set propertys for the main paintbox holding the skin m_paintbox.set_border_width(10); m_paintbox.set_spacing(6); m_paintbox.set_homogeneous(false); m_paintbox.set_name(plug_name); m_paintbox.property_paint_func() = "gxhead_expose"; add(m_paintbox); // box for the controllers m_hbox_.set_spacing(64); m_hbox_.set_border_width(5); m_hbox_.set_homogeneous(false); // set a vertical box in the paintbox m_vbox.set_border_width(2); m_vbox1.set_border_width(2); m_paintbox.pack_start(m_vbox_); // and controller box on top m_vbox_.pack_start(m_hbox_, Gtk::PACK_SHRINK); // put boxed controllers into controller box m_hbox_.pack_start(m_vbox,Gtk::PACK_EXPAND_PADDING); m_hbox_.pack_start(m_vbox3); m_hbox_.pack_start(m_vbox4); m_hbox_.pack_start(m_vbox2); m_hbox_.pack_start(m_vbox5); m_hbox_.pack_start(m_vbox1,Gtk::PACK_EXPAND_PADDING); // connect expose handler as resize handler m_paintbox.signal_expose_event().connect( sigc::mem_fun(this, &Widget::_expose_event), true); set_app_paintable(true); show_all(); }
Widget::Widget(Glib::ustring plugname): plug_name(plugname) { // create controllers for port name make_controller_box(&m_vbox3, "INTENSITY", 0, 1, 0.01, INTENSITY); make_controller_box(&m_vbox2, "VOLUME", 0, 1, 0.01, VOLUME); // set propertys for the main paintbox holding the skin m_paintbox.set_border_width(10); m_paintbox.set_spacing(6); m_paintbox.set_homogeneous(false); m_paintbox.set_name(plug_name); m_paintbox.property_paint_func() = "rack_unit_expose"; add(m_paintbox); // box for the controllers m_hbox_.set_spacing(25); m_hbox_.set_border_width(24); m_hbox_.set_homogeneous(false); // set a vertical box in the paintbox m_vbox.set_border_width(14); m_vbox1.set_border_width(14); m_paintbox.pack_start(m_vbox_); // and controller box on top m_vbox_.pack_start(m_hbox_, Gtk::PACK_SHRINK); // put boxed controllers into controller box m_hbox_.pack_start(m_vbox1, Gtk::PACK_EXPAND_PADDING); m_hbox_.pack_start(m_vbox2); m_hbox_.pack_start(m_vbox3); m_hbox_.pack_start(m_vbox, Gtk::PACK_EXPAND_PADDING); // connect expose handler as resize handler m_paintbox.signal_expose_event().connect( sigc::mem_fun(this, &Widget::_expose_event), true); set_app_paintable(true); show_all(); }
Widget::Widget(Glib::ustring plugname): plug_name(plugname) { m_fr[0].set_label("BAND 1"); m_fr[0].add(m_lbox[0]); m_fr[1].set_label("BAND 2"); m_fr[1].add(m_lbox[1]); m_fr[2].set_label("BAND 3"); m_fr[2].add(m_lbox[2]); m_fr[3].set_label("BAND 4"); m_fr[3].add(m_lbox[3]); m_fr[4].set_label("BAND 5"); m_fr[4].add(m_lbox[4]); m_fr[5].set_label("BAND PASS"); // create controllers for port name make_controller_box(&m_vbox[1], "RATIO ", "Compression ratio", 1.0, 1e+02, 0.1, RATIO1, false); make_controller_box(&m_vbox[2], "RATIO ", "Compression ratio", 1.0, 1e+02, 0.1, RATIO2, false); make_controller_box(&m_vbox[3], "RATIO ", "Compression ratio", 1.0, 1e+02, 0.1, RATIO3, false); make_controller_box(&m_vbox[4], "RATIO ", "Compression ratio", 1.0, 1e+02, 0.1, RATIO4, false); make_controller_box(&m_vbox[5], "RATIO ", "Compression ratio", 1.0, 1e+02, 0.1, RATIO5, false); make_controller_box(&m_vbox[1], "ATTACK ", "Time before the compressor starts to kick in", 0.001, 1.0, 0.001, ATTACK1, false); make_controller_box(&m_vbox[2], "ATTACK ", "Time before the compressor starts to kick in", 0.001, 1.0, 0.001, ATTACK2, false); make_controller_box(&m_vbox[3], "ATTACK ", "Time before the compressor starts to kick in", 0.001, 1.0, 0.001, ATTACK3, false); make_controller_box(&m_vbox[4], "ATTACK ", "Time before the compressor starts to kick in", 0.001, 1.0, 0.001, ATTACK4, false); make_controller_box(&m_vbox[5], "ATTACK ", "Time before the compressor starts to kick in", 0.001, 1.0, 0.001, ATTACK5, false); make_controller_box(&m_vbox[1], "RELEASE ", "Time before the compressor releases the sound", 0.01, 1e+01, 0.01, RELEASE1, false); make_controller_box(&m_vbox[2], "RELEASE ", "Time before the compressor releases the sound", 0.01, 1e+01, 0.01, RELEASE2, false); make_controller_box(&m_vbox[3], "RELEASE ", "Time before the compressor releases the sound", 0.01, 1e+01, 0.01, RELEASE3, false); make_controller_box(&m_vbox[4], "RELEASE ", "Time before the compressor releases the sound", 0.01, 1e+01, 0.01, RELEASE4, false); make_controller_box(&m_vbox[5], "RELEASE ", "Time before the compressor releases the sound", 0.01, 1e+01, 0.01, RELEASE5, false); make_controller_box(&m_vbox[1], "MAKEUP", "Post amplification and threshold", -5e+01, 5e+01, 0.1, MAKEUP1, false); make_controller_box(&m_vbox[2], "MAKEUP", "Post amplification and threshold", -5e+01, 5e+01, 0.1, MAKEUP2, false); make_controller_box(&m_vbox[3], "MAKEUP", "Post amplification and threshold", -5e+01, 5e+01, 0.1, MAKEUP3, false); make_controller_box(&m_vbox[4], "MAKEUP", "Post amplification and threshold", -5e+01, 5e+01, 0.1, MAKEUP4, false); make_controller_box(&m_vbox[5], "MAKEUP", "Post amplification and threshold", -5e+01, 5e+01, 0.1, MAKEUP5, false); make_controller_box(&m_vbox[1], "THRESHOLD ", "Threshold correction, an anticlip measure", 0.0, 1e+01, 0.1, MAKEUPTHRESHOLD1, false); make_controller_box(&m_vbox[2], "THRESHOLD ", "Threshold correction, an anticlip measure", 0.0, 1e+01, 0.1, MAKEUPTHRESHOLD2, false); make_controller_box(&m_vbox[3], "THRESHOLD ", "Threshold correction, an anticlip measure", 0.0, 1e+01, 0.1, MAKEUPTHRESHOLD3, false); make_controller_box(&m_vbox[4], "THRESHOLD ", "Threshold correction, an anticlip measure", 0.0, 1e+01, 0.1, MAKEUPTHRESHOLD4, false); make_controller_box(&m_vbox[5], "THRESHOLD ", "Threshold correction, an anticlip measure", 0.0, 1e+01, 0.1, MAKEUPTHRESHOLD5, false); Glib::ustring modes[] = {"Compress","Bypass","Mute"}; static const size_t _size = sizeof(modes) / sizeof(modes[0]); make_selector(&m_vbox[1],"Compress or Mute the selected band, or Bypass The Compressor", modes, _size, 1.0, 1.0, MODE1); make_selector(&m_vbox[2],"Compress or Mute the selected band, or Bypass The Compressor", modes, _size, 1.0, 1.0, MODE2); make_selector(&m_vbox[3],"Compress or Mute the selected band, or Bypass The Compressor", modes, _size, 1.0, 1.0, MODE3); make_selector(&m_vbox[4],"Compress or Mute the selected band, or Bypass The Compressor", modes, _size, 1.0, 1.0, MODE4); make_selector(&m_vbox[5],"Compress or Mute the selected band, or Bypass The Compressor", modes, _size, 1.0, 1.0, MODE5); make_controller_box(&m_vbox[7], "LOW PASS \n B1><B2", "Crossfrequency between Band1 and Band2", 2e+01, 2e+04, 1.08 , CROSSOVER_B1_B2, true); make_controller_box(&m_vbox[8], "CROSSOVER \n B2><B3", "Crossfrequency between Band2 and Band3", 2e+01, 2e+04, 1.08 , CROSSOVER_B2_B3, true); make_controller_box(&m_vbox[9], "CROSSOVER \n B3><B4 ", "Crossfrequency between Band3 and Band4", 2e+01, 2e+04, 1.08 , CROSSOVER_B3_B4, true); make_controller_box(&m_vbox[10], "HIGH PASS \n B4><B5", "Crossfrequency between Band4 and Band5", 2e+01, 2e+04, 1.08 , CROSSOVER_B4_B5, true); // set propertys for the main paintbox holding the skin m_paintbox[0].set_border_width(10); m_paintbox[0].set_spacing(6); m_paintbox[0].set_homogeneous(false); m_paintbox[0].set_name(plug_name); m_paintbox[0].property_paint_func() = "gxhead_expose"; add(m_paintbox[0]); // set propertys and stack fastmeters for (uint32_t i = 0;i<5;i++) { fastmeter[i].set_hold_count(12); fastmeter[i].set_property("dimen",5); fastmeter[i].set_tooltip_text("Output"); fastmeter[i+5].set_hold_count(12); fastmeter[i+5].set_property("dimen",5); fastmeter[i+5].set_tooltip_text("Input"); m_paintbox[i+1].property_paint_func() = "RackBox_expose"; m_paintbox[i+1].set_name(plug_name); m_paintbox[i+1].set_border_width(5); m_paintbox[i+1].set_spacing(2); m_paintbox[i+1].pack_start(fastmeter[i+5]); m_paintbox[i+1].pack_start(fastmeter[i]); } // set a vertical box in the paintbox m_vbox[11].set_border_width(14); m_vbox[12].set_border_width(14); m_hbox[2].set_border_width(4); m_paintbox[0].pack_start(m_vbox[0]); // box for the controllers m_hbox[0].set_spacing(4); m_hbox[0].set_border_width(4); m_hbox[0].set_homogeneous(false); m_vbox[0].pack_start(m_hbox[0]); m_fr[5].add(m_hbox[1]); m_vbox[0].pack_start(m_fr[5]); m_vbox[0].pack_start(m_hbox[2]); // put boxed controllers into controller box m_hbox[0].pack_start(m_vbox[11], Gtk::PACK_EXPAND_PADDING); m_hbox[0].pack_start(m_fr[0]); m_lbox[0].pack_start(m_vbox[1]); m_lbox[0].pack_start(m_paintbox[1],Gtk::PACK_SHRINK); m_hbox[0].pack_start(m_fr[1]); m_lbox[1].pack_start(m_vbox[2]); m_lbox[1].pack_start(m_paintbox[2],Gtk::PACK_SHRINK); m_hbox[0].pack_start(m_fr[2]); m_lbox[2].pack_start(m_vbox[3]); m_lbox[2].pack_start(m_paintbox[3],Gtk::PACK_SHRINK); m_hbox[0].pack_start(m_fr[3]); m_lbox[3].pack_start(m_vbox[4]); m_lbox[3].pack_start(m_paintbox[4],Gtk::PACK_SHRINK); m_hbox[0].pack_start(m_fr[4]); m_lbox[4].pack_start(m_vbox[5]); m_lbox[4].pack_start(m_paintbox[5],Gtk::PACK_SHRINK); m_hbox[0].pack_start(m_vbox[12], Gtk::PACK_EXPAND_PADDING); // put boxed controllers into controller box m_hbox[1].pack_start(m_vbox[13], Gtk::PACK_EXPAND_PADDING); m_hbox[1].pack_start(m_vbox[7]); m_hbox[1].pack_start(m_vbox[8]); m_hbox[1].pack_start(m_vbox[9]); m_hbox[1].pack_start(m_vbox[10]); m_hbox[1].pack_start(m_vbox[15]); m_hbox[1].pack_start(m_vbox[14], Gtk::PACK_EXPAND_PADDING); // default disable tooltips gtk_settings_set_long_property( gtk_settings_get_default(), "gtk-enable-tooltips", false, "gx_mbcompressor"); make_switch_box(&m_vbox[15], "Tooltips"); m_switch.signal_toggled().connect(sigc::mem_fun( *this, &Widget::set_tooltips)); set_app_paintable(true); show_all(); }
Widget::Widget(Glib::ustring plugname): plug_name(plugname) { // create controllers for port name Glib::ustring modes[] = {"(Chromatic)","Standard", "Standard/Es", "Open E", "Drop D","Half Step Down","Full Step Down","1 and 1/2 Steps Down","Double Drop D","Drop C", "Drop C#","Drop B","Drop A#","Drop A","Open D","Open D Minor", "Open G","Open G Minor", "Open C","Open C#","Open C Minor","Open E7","Open E Minor7","Open G Major7","Open A Minor", "Open A Minor7","Open A","C Tuning","C# Tuning","Bb Tuning","A to A (Baritone)","Open Dsus2", "Open Gsus2","G6","Modal G","Overtone","Pentatonic","Minor Third","Major Third","All Fourths", "Augmented Fourths","Slow Motion","Admiral","Buzzard","Face","Four and Twenty","Ostrich","Capo 200", "Balalaika","Cittern One","Cittern Two","Dobro","Lefty","Mandoguitar","Rusty Cage","Hardcore"}; static const size_t _size = sizeof(modes) / sizeof(modes[0]); make_selector("Tunning Modes", modes, _size, 0, 1.0, TUNEMODE); m_vbox8.pack_start(tuner_tuning); Glib::ustring temperament_modes[] = {"12-TET","19-TET","24-TET", "31-TET"}; static const size_t _size2 = sizeof(temperament_modes) / sizeof(modes[0]); make_selector("Tunning Scale", temperament_modes, _size2, 0, 1.0, TEMPERAMENT); m_vbox8.pack_start(tuner_temperament); m_vbox8.set_spacing(2); make_switch_box(&m_hbox_, "", "FAST DETECTION", FASTNOTE); m_vbox8.pack_start(m_vbox4); m_vbox8.pack_start(m_hbox_); Glib::ustring channel[] = {"0","1","2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16"}; static const size_t _size1 = sizeof(channel) / sizeof(channel[0]); make_selector("Set Midi Channel", channel, _size1, 0, 1.0, CHANNEL); m_fr1.set_label("MIDI OUT"); m_fr1.add(m_vbox5); m_fr1.set_name("amplabel"); m_vbox5.pack_start(select1); make_controller_box(&m_vbox1, "BPM", 0, 360, 1, BPM); make_controller_box(&m_vbox9, "VELOCITY", 0, 127, 1, VELOCITY); make_switch_box(&m_hbox5_, "", "SEND MIDI", ONMIDI); make_switch_box(&m_hbox6_, "", "PITCH WHEEL", PITCHBEND); make_switch_box(&m_hbox7_, "", "SINGLE NOTE", SINGLENOTE); m_vbox5.pack_start(m_vbox1); m_vbox5.pack_start(m_vbox9); m_vbox5.pack_start(m_hbox5_); m_vbox5.pack_start(m_hbox6_); m_vbox5.pack_start(m_hbox7_); m_vbox5.set_spacing(2); make_controller_box(&m_vbox4, "Threshold (db)", -60, 4, 1, THRESHOLD); //m_bigknob1.set_value_position(Gtk::POS_RIGHT); make_controller_box(&m_vbox4, "Reference Pitch (Hz)", 427.0, 453.0, 0.1, REFFREQ); //m_bigknob.set_value_position(Gtk::POS_RIGHT); make_controller_box(&m_vbox4, "Verify Level", 1, 12, 1, VERIFY); // set propertys for the tuner widget m_tuner.set_size_request( 440, 65 ) ; m_tuner.set_streaming(true); m_tuner.set_display_flat(false); m_tuner.set_reference_pitch(440.0); m_tuner.set_property("scale",1.5); m_hbox1_.pack_start(m_tuner); m_hbox1_.set_border_width(5); m_fr2.set_label("TUNER"); m_fr2.add(m_vbox8); m_fr2.set_name("amplabel"); m_hbox2_.pack_start(m_fr2); m_hbox2_.pack_start(m_fr1); m_hbox2_.set_spacing(2); m_vbox2.pack_start(m_hbox1_); m_vbox2.pack_start(m_hbox2_,Gtk::PACK_SHRINK); m_vbox2.set_border_width(1); m_vbox2.set_homogeneous(false); m_paintbox1.property_paint_func() = "RackBox_expose"; m_paintbox1.set_name(plug_name); m_paintbox1.set_border_width(5); m_paintbox1.pack_start(m_vbox2); m_hbox2_.pack_start(m_vbox3,Gtk::PACK_SHRINK); // set propertys for the main paintbox holding the skin m_paintbox.set_border_width(10); m_paintbox.set_spacing(0); m_paintbox.set_homogeneous(false); m_paintbox.set_name(plug_name); m_paintbox.property_paint_func() = "gxhead_expose"; m_paintbox.pack_start(m_hbox4_,Gtk::PACK_SHRINK); m_paintbox.pack_start(m_paintbox1); m_paintbox.pack_start(m_hbox3_,Gtk::PACK_SHRINK); m_hbox3_.set_border_width(8); m_hbox4_.set_border_width(8); m_paintbox2.property_paint_func() = "level_meter_expose"; //m_paintbox2.set_spacing(20); m_paintbox2.set_border_width(2); //m_paintbox2.set_size_request(22, -1 ); //m_paintbox2.pack_start(m_vbox3,Gtk::PACK_SHRINK); m_vbox3.pack_start(m_vbox7, Gtk::PACK_EXPAND_PADDING); m_vbox3.pack_start(m_paintbox2,Gtk::PACK_SHRINK); m_vbox3.pack_start(m_vbox6, Gtk::PACK_EXPAND_PADDING); m_paintbox2.pack_start(fastmeter,Gtk::PACK_SHRINK); make_controller_box(static_cast<Gtk::Box*>(&m_paintbox2), "", -60, 4, 1, LEVEL); levelslider.set_tooltip_text("Set Note ON level"); //m_paintbox2.pack_start(levelslider,Gtk::PACK_SHRINK); levelslider.set_show_value(false); levelslider.set_name(plug_name); fastmeter.set_hold_count(8); fastmeter.set_property("dimen",5); //m_paintbox.set_size_request( 425, 160 ) ; // connect expose handler as resize handler m_paintbox.signal_expose_event().connect( sigc::mem_fun(this, &Widget::_expose_event), true); add(m_paintbox); set_app_paintable(true); show_all(); reset = 1; }
/** * The “DockLight” preview allows more control over the opened windows you can * navigate to a specific window much easier. Select the window or close the desired * application, the real time preview make that very easy. */ Preview::Preview() : Gtk::Window(Gtk::WindowType::WINDOW_POPUP), m_initialItemMax(0) { m_mouseIn = false; m_canLeave = true; m_currentIndex = -1; m_thisInstance = (Gtk::Window*)this; m_dockItemIndex = -1; m_dockItemsCount = 0; m_previewWidth = DEF_PREVIEW_WIDTH; m_previewHeight = DEF_PREVIEW_HEIGHT; m_isActive = false; // Set up the top-level window. set_title("DockPreview"); set_decorated(false); set_app_paintable(true); // Set masks for mouse events add_events(Gdk::BUTTON_PRESS_MASK | Gdk::BUTTON_RELEASE_MASK | Gdk::BUTTON_PRESS_MASK | Gdk::SCROLL_MASK | Gdk::SMOOTH_SCROLL_MASK | Gdk::POINTER_MOTION_HINT_MASK | Gdk::FOCUS_CHANGE_MASK | Gdk::ENTER_NOTIFY_MASK | Gdk::LEAVE_NOTIFY_MASK | Gdk::POINTER_MOTION_MASK); GdkScreen *screen; GdkVisual *visual; gtk_widget_set_app_paintable(GTK_WIDGET(gobj()), TRUE); screen = gdk_screen_get_default(); visual = gdk_screen_get_rgba_visual(screen); if (visual != NULL && gdk_screen_is_composited(screen)) { gtk_widget_set_visual(GTK_WIDGET(gobj()), visual); } font.set_family("System"); font.set_size(8 * PANGO_SCALE); font.set_weight(Pango::WEIGHT_NORMAL); Glib::signal_timeout(). connect(sigc::mem_fun(*this, &Preview::on_timeoutDraw), DEF_FRAMERATE); WnckScreen *wnckscreen = wnck_screen_get_default(); g_signal_connect(G_OBJECT(wnckscreen), "window-opened", G_CALLBACK(Preview::on_window_opened), NULL); g_signal_connect(wnckscreen, "window_closed", G_CALLBACK(Preview::on_window_closed), NULL); m_timer.start(); }
TransparentSlider::TransparentSlider() : _redInit(0.5), _greenInit(1), _blueInit(0.5), _alphaInit(0.5), _buttonLabel("Close"), _box(Gtk::ORIENTATION_VERTICAL), _inner_box(Gtk::ORIENTATION_HORIZONTAL), _alignment(Gtk::ALIGN_END, Gtk::ALIGN_END, 0.0, 0.0), _button(_buttonLabel), _adjustmentRed(Gtk::Adjustment::create(_redInit, 0, 1.0, 0.1, 0.1, 0)), _adjustmentGreen(Gtk::Adjustment::create(_greenInit, 0, 1.0, 0.1, 0.1, 0)), _adjustmentBlue(Gtk::Adjustment::create(_blueInit, 0, 1.0, 0.1, 0.1, 0)), _adjustmentAlpha(Gtk::Adjustment::create(_alphaInit, 0, 1.0, 0.1, 0.1, 0)), _scaleRed(_adjustmentRed, Gtk::ORIENTATION_VERTICAL), _scaleGreen(_adjustmentGreen, Gtk::ORIENTATION_VERTICAL), _scaleBlue(_adjustmentBlue, Gtk::ORIENTATION_VERTICAL), _scaleAlpha(_adjustmentAlpha, Gtk::ORIENTATION_VERTICAL) { // Set up the top-level window. set_border_width(10); set_title("Color Slider Test"); set_default_size(400,400); set_decorated(false); add_events(Gdk::BUTTON_PRESS_MASK); set_position(Gtk::WIN_POS_CENTER); set_app_paintable(true); // Signal handlers signal_draw().connect(sigc::mem_fun(*this, &TransparentSlider::on_draw)); signal_screen_changed().connect(sigc::mem_fun(*this, &TransparentSlider::on_screen_changed)); signal_button_press_event().connect(sigc::mem_fun(*this, &TransparentSlider::on_window_clicked)); _button.signal_clicked().connect(sigc::mem_fun(*this, &TransparentSlider::on_button_clicked)); // Widgets // Add the box and pack it. add(_box); _box.pack_start(_inner_box); _box.pack_start(_alignment); // Pack the inner box _inner_box.set_homogeneous(); _inner_box.pack_start(_scaleRed); _inner_box.pack_start(_scaleGreen); _inner_box.pack_start(_scaleBlue); _inner_box.pack_start(_scaleAlpha); // Set up the scales: _scaleRed.set_digits(3); _scaleRed.set_inverted(); _scaleGreen.set_digits(3); _scaleGreen.set_inverted(); _scaleBlue.set_digits(3); _scaleBlue.set_inverted(); _scaleAlpha.set_digits(3); _scaleAlpha.set_inverted(); // Set up the close button _alignment.add(_button); _button.set_size_request(100, 10); // Initialize the process of drawing the colored part. on_screen_changed(get_screen()); // Show the window and all its children. show_all_children(); }
Widget::Widget(Glib::ustring plugname): plug_name(plugname) { // create controllers for port name make_controller_box(&m_vbox4, "tone", 0.0, 1.0, 0.01, TONE); make_controller_box(&m_vbox2, "drive", 0.0, 1.0, 0.01, DRIVE); make_controller_box(&m_vbox3, "volume", -2e+01, 2e+01, 0.1 , PREGAIN); make_controller_box(&m_vbox5, "gain", -2e+01, 2e+01, 0.1 , GAIN1); // set propertys for the main paintbox holding the skin m_paintbox.set_border_width(20); m_paintbox.set_spacing(0); m_paintbox.set_homogeneous(false); m_paintbox.set_name(plug_name); m_paintbox.property_paint_func() = "amp_skin_expose"; //m_paintbox.set_size_request( 425, 260 ) ; add(m_paintbox); // One vertical box to wrap all in m_vbox_.set_spacing(0); m_vbox_.set_border_width(10); m_vbox_.set_homogeneous(false); m_paintbox.pack_start(m_vbox_ , Gtk::PACK_EXPAND_PADDING, 0); // This is the central controller strip m_hbox1_.set_spacing(45); m_hbox1_.set_border_width(0); m_hbox1_.set_homogeneous(true); // put boxed controllers into controller box m_vbox2.set_spacing(6); m_vbox2.set_border_width(10); m_vbox3.set_spacing(6); m_vbox3.set_border_width(10); m_vbox4.set_spacing(6); m_vbox4.set_border_width(10); m_vbox5.set_spacing(6); m_vbox5.set_border_width(10); //m_hbox1_.pack_start(m_vbox1, Gtk::PACK_EXPAND_PADDING); m_hbox1_.pack_start(m_vbox2); m_hbox1_.pack_start(m_vbox3); m_hbox1_.pack_start(m_vbox4); m_hbox1_.pack_start(m_vbox5); //m_hbox1_.pack_start(m_vbox, Gtk::PACK_EXPAND_PADDING); // Npow put all layers in main vbox m_vbox_.pack_start(m_hbox1_, Gtk::PACK_EXPAND_PADDING, 0); // connect expose handler as resize handler m_paintbox.signal_expose_event().connect( sigc::mem_fun(this, &Widget::_expose_event), true); set_app_paintable(true); show_all(); }
Widget::Widget(Glib::ustring plugname): plug_name(plugname), logo(plugname) { // create controllers for port name make_controller_box(&m_vboxc[0], "DIRECT", 0.0, 1.0, 0.05, DIRECT); make_controller_box(&m_vboxc[1], "OCTAVE1", 0.0, 1.0, 0.05, OCTAVE1); make_controller_box(&m_vboxc[2], "OCTAVE2", 0.0, 1.0, 0.05, OCTAVE2); // set propertys for the main paintbox holding the skin m_paintbox.set_border_width(10); m_paintbox.set_spacing(6); m_paintbox.set_homogeneous(false); m_paintbox.set_name(plug_name); m_paintbox.property_paint_func() = "rack_unit_expose"; add(m_paintbox); // box for the controllers m_hbox_.set_spacing(25); m_hbox_.set_border_width(24); m_hbox_.set_homogeneous(false); // set a vertical box in the paintbox m_vbox.set_border_width(14); m_vbox1.set_border_width(14); m_paintbox.pack_start(m_vbox_); // modify logo layout Pango::FontDescription font_desc = logo.get_style()->get_font(); font_desc.set_size(int(14*Pango::SCALE)); font_desc.set_weight(Pango::WEIGHT_BOLD); logo.modify_font(font_desc); // and controller box on top //m_hbox1_.set_border_width(24); m_hbox1_.set_spacing(64); logo.set_name("amplabel"); m_vbox_.pack_start(m_hbox1_, Gtk::PACK_SHRINK); m_hbox1_.pack_start(m_vbox1_, Gtk::PACK_EXPAND_PADDING); m_hbox1_.pack_end(m_vbox2_, Gtk::PACK_SHRINK); m_hbox1_.pack_end(logo, Gtk::PACK_SHRINK); m_vbox_.pack_start(m_hbox_, Gtk::PACK_SHRINK); m_vbox_.set_homogeneous(false); // put boxed controllers into controller box m_hbox_.pack_start(m_vbox1, Gtk::PACK_EXPAND_PADDING); for (int i = 0; i<0;i++) { m_vboxs_.pack_start(m_vboxs[i]); } m_vboxs_.set_spacing(5); m_hbox_.pack_start(m_vboxs_, Gtk::PACK_EXPAND_PADDING); for (int i = 0; i<3;i++) { m_hbox_.pack_start(m_vboxc[i]); } m_hbox_.pack_start(m_vbox, Gtk::PACK_EXPAND_PADDING); // connect expose handler as resize handler m_paintbox.signal_expose_event().connect( sigc::mem_fun(this, &Widget::_expose_event), true); set_app_paintable(true); show_all(); }
Widget::Widget(Glib::ustring plugname): plug_name(plugname) { // create controllers for port name make_controller_box(&m_vbox[1], "DETUNE", -0.25, 0.25, 0.01, DETUNE); make_controller_box(&m_vbox[2], "WET", 0.0, 100.0, 1, WET); make_controller_box(&m_vbox[3], "DRY", 0.0, 100.0, 1, DRY); make_controller_box(&m_vbox[4], "LOW", 0.0, 2.0, 0.01, LOW); make_controller_box(&m_vbox[5], "MIDDLELOW", 0.0, 2.0, 0.01, MIDDLELOW); make_controller_box(&m_vbox[6], "MIDDLETREBLE", 0.0, 2.0, 0.01, MIDDLETREBLE); make_controller_box(&m_vbox[7], "TREBLE", 0.0, 2.0, 0.01, TREBLE); Glib::ustring octaves[] = {"no shift","octave up","octave down"}; static const size_t _size1 = sizeof(octaves) / sizeof(octaves[0]); make_selector("OCTAVE", octaves, _size1, 0, 1.0, OCTAVE); Glib::ustring compensate[] = {"delay ","compensate"}; static const size_t _size2 = sizeof(compensate) / sizeof(compensate[0]); make_selector("COMPENSATE", compensate, _size2, 0, 1.0, COMPENSATE); Glib::ustring latency[] = {"high quality ","low quality ","realtime "}; static const size_t _size3 = sizeof(latency) / sizeof(latency[0]); make_selector("LATENCY", latency, _size3, 0, 1.0, LATENCY); m_vbox[0].pack_start(m_selector[0]); m_vbox[0].pack_start(m_selector[1]); m_vbox[0].pack_start(m_selector[2]); m_latencyreport.set_name("lalabel"); m_vbox[0].pack_start(m_latencyreport); // set propertys for the main paintbox holding the skin m_paintbox.set_border_width(10); m_paintbox.set_spacing(6); m_paintbox.set_homogeneous(false); m_paintbox.set_name(plug_name); m_paintbox.property_paint_func() = "compressor_expose"; add(m_paintbox); // box for the controllers m_hbox.set_spacing(14); m_hbox.set_border_width(24); m_hbox.set_homogeneous(false); // set a vertical box in the paintbox m_vbox[8].set_border_width(14); m_vbox[10].set_border_width(14); m_paintbox.pack_start(m_vbox[9]); // and controller box on top m_vbox[9].pack_start(m_hbox, Gtk::PACK_SHRINK); // put boxed controllers into controller box m_hbox.pack_start(m_vbox[10], Gtk::PACK_EXPAND_PADDING); m_hbox.pack_start(m_vbox[0]); m_hbox.pack_start(m_vbox[1]); m_hbox.pack_start(m_vbox[2]); m_hbox.pack_start(m_vbox[3]); m_hbox.pack_start(m_vbox[4]); m_hbox.pack_start(m_vbox[5]); m_hbox.pack_start(m_vbox[6]); m_hbox.pack_start(m_vbox[7]); m_hbox.pack_start(m_vbox[8], Gtk::PACK_EXPAND_PADDING); // connect expose handler as resize handler // m_paintbox.signal_expose_event().connect( // sigc::mem_fun(this, &Widget::_expose_event), true); set_app_paintable(true); show_all(); }
Widget::Widget(Glib::ustring plugname): plug_name(plugname), logo(plugname) { Glib::ustring enumMODEL[] = {"Colorsound Wah","Dallas Wah","Foxx Wah","Jen Wah","Maestro Wah","Selmer Wah","Vox Wah V847"}; static const size_t enumMODEL_size = sizeof(enumMODEL) / sizeof(enumMODEL[0]); make_selector_box(&m_vboxs[0],"MODEL", enumMODEL, enumMODEL_size, 0,1.0, MODEL); Glib::ustring enumMODE[] = {"manual","auto","alien"}; static const size_t enumMODE_size = sizeof(enumMODE) / sizeof(enumMODE[0]); make_selector_box(&m_vboxs[1],"MODE", enumMODE, enumMODE_size, 0,1.0, MODE); // create controllers for port name make_controller_box(&m_vboxc[0], "WAH", 0.0, 1.0, 0.01, WAH); make_controller_box(&m_vboxc[1], "ALIEN FREQ", 24.0, 3.6e+02, 1.0, FREQ); make_controller_box(&m_vboxc[2], "WET_DRY", 0.0, 1e+02, 1.0, WET_DRY); // set propertys for the main paintbox holding the skin m_paintbox.set_border_width(10); m_paintbox.set_spacing(6); m_paintbox.set_homogeneous(false); m_paintbox.set_name(plug_name); m_paintbox.property_paint_func() = "rack_unit_expose"; add(m_paintbox); // box for the controllers m_hbox_.set_spacing(25); m_hbox_.set_border_width(24); m_hbox_.set_homogeneous(false); // set a vertical box in the paintbox m_vbox.set_border_width(14); m_vbox1.set_border_width(14); m_paintbox.pack_start(m_vbox_); // modify logo layout Pango::FontDescription font_desc = logo.get_style()->get_font(); font_desc.set_size(int(14*Pango::SCALE)); font_desc.set_weight(Pango::WEIGHT_BOLD); logo.modify_font(font_desc); // and controller box on top //m_hbox1_.set_border_width(24); m_hbox1_.set_spacing(64); logo.set_name("amplabel"); m_vbox_.pack_start(m_hbox1_, Gtk::PACK_SHRINK); m_hbox1_.pack_start(m_vbox1_, Gtk::PACK_EXPAND_PADDING); m_hbox1_.pack_end(m_vbox2_, Gtk::PACK_SHRINK); m_hbox1_.pack_end(logo, Gtk::PACK_SHRINK); m_vbox_.pack_start(m_hbox_, Gtk::PACK_SHRINK); m_vbox_.set_homogeneous(false); // put boxed controllers into controller box m_hbox_.pack_start(m_vbox1, Gtk::PACK_EXPAND_PADDING); for (int i = 0; i<2;i++) { m_vboxs_.pack_start(m_vboxs[i]); } m_vboxs_.set_spacing(5); m_hbox_.pack_start(m_vboxs_, Gtk::PACK_EXPAND_PADDING); for (int i = 0; i<3;i++) { m_hbox_.pack_start(m_vboxc[i]); } m_hbox_.pack_start(m_vbox, Gtk::PACK_EXPAND_PADDING); // connect expose handler as resize handler m_paintbox.signal_expose_event().connect( sigc::mem_fun(this, &Widget::_expose_event), true); set_app_paintable(true); show_all(); }
Widget::Widget(Glib::ustring plugname): plug_name(plugname) { m_fr[0].set_label("BAND 1"); m_fr[0].add(m_lbox[0]); m_fr[1].set_label("BAND 2"); m_fr[1].add(m_lbox[1]); m_fr[2].set_label("BAND 3"); m_fr[2].add(m_lbox[2]); m_fr[3].set_label("BAND 4"); m_fr[3].add(m_lbox[3]); m_fr[4].set_label("BAND 5"); m_fr[4].add(m_lbox[4]); // m_fr[5].set_label("OUT"); m_fr[6].set_label("BAND PASS"); // create controllers for port name make_controller_box(&m_vbox[1], "ROOMSIZE", 0.0, 1.0, 0.025 , ROOMSIZE1, false); make_controller_box(&m_vbox[2], "ROOMSIZE", 0.0, 1.0, 0.025 , ROOMSIZE2, false); make_controller_box(&m_vbox[3], "ROOMSIZE", 0.0, 1.0, 0.025 , ROOMSIZE3, false); make_controller_box(&m_vbox[4], "ROOMSIZE", 0.0, 1.0, 0.025 , ROOMSIZE4, false); make_controller_box(&m_vbox[5], "ROOMSIZE", 0.0, 1.0, 0.025 , ROOMSIZE5, false); make_controller_box(&m_vbox[1], "DAMP", 0.0, 1.0, 0.025 , DAMP1, false); make_controller_box(&m_vbox[2], "DAMP", 0.0, 1.0, 0.025 , DAMP2, false); make_controller_box(&m_vbox[3], "DAMP", 0.0, 1.0, 0.025 , DAMP3, false); make_controller_box(&m_vbox[4], "DAMP", 0.0, 1.0, 0.025 , DAMP4, false); make_controller_box(&m_vbox[5], "DAMP", 0.0, 1.0, 0.025 , DAMP5, false); make_controller_box(&m_vbox[1], "DRY/WET", 0.0, 1e+02, 1.0 , WET_DRY1, false); make_controller_box(&m_vbox[2], "DRY/WET", 0.0, 1e+02, 1.0 , WET_DRY2, false); make_controller_box(&m_vbox[3], "DRY/WET", 0.0, 1e+02, 1.0 , WET_DRY3, false); make_controller_box(&m_vbox[4], "DRY/WET", 0.0, 1e+02, 1.0 , WET_DRY4, false); make_controller_box(&m_vbox[5], "DRY/WET", 0.0, 1e+02, 1.0 , WET_DRY5, false); make_log_controller_box(&m_vbox[7], "LOW PASS \n B1><B2", 2e+01, 2e+04, 1.08 , CROSSOVER_B1_B2, true); make_log_controller_box(&m_vbox[8], "CROSSOVER \n B2><B3", 2e+01, 2e+04, 1.08 , CROSSOVER_B2_B3, true); make_log_controller_box(&m_vbox[9], "CROSSOVER \n B3><B4 ", 2e+01, 2e+04, 1.08 , CROSSOVER_B3_B4, true); make_log_controller_box(&m_vbox[10], "HIGH PASS \n B4><B5", 2e+01, 2e+04, 1.08 , CROSSOVER_B4_B5, true); // set propertys for the main paintbox holding the skin m_paintbox[0].set_border_width(10); m_paintbox[0].set_spacing(6); m_paintbox[0].set_homogeneous(false); m_paintbox[0].set_name(plug_name); m_paintbox[0].property_paint_func() = "gxhead_expose"; add(m_paintbox[0]); for (uint32_t i = 0;i<5;i++) { fastmeter[i].set_hold_count(12); fastmeter[i].set_property("dimen",5); m_paintbox[i+1].property_paint_func() = "RackBox_expose"; m_paintbox[i+1].set_name(plug_name); m_paintbox[i+1].set_border_width(5); m_paintbox[i+1].pack_start(fastmeter[i]); } // set a vertical box in the paintbox m_vbox[11].set_border_width(14); m_vbox[12].set_border_width(14); m_hbox[2].set_border_width(4); m_paintbox[0].pack_start(m_vbox[0]); // box for the controllers m_hbox[0].set_spacing(4); m_hbox[0].set_border_width(4); m_hbox[0].set_homogeneous(false); m_vbox[0].pack_start(m_hbox[0]); m_fr[6].add(m_hbox[1]); m_vbox[0].pack_start(m_fr[6]); m_vbox[0].pack_start(m_hbox[2]); // put boxed controllers into controller box m_hbox[0].pack_start(m_vbox[11], Gtk::PACK_EXPAND_PADDING); m_hbox[0].pack_start(m_fr[0]); m_lbox[0].pack_start(m_vbox[1]); m_lbox[0].pack_start(m_paintbox[1],Gtk::PACK_SHRINK); m_hbox[0].pack_start(m_fr[1]); m_lbox[1].pack_start(m_vbox[2]); m_lbox[1].pack_start(m_paintbox[2],Gtk::PACK_SHRINK); m_hbox[0].pack_start(m_fr[2]); m_lbox[2].pack_start(m_vbox[3]); m_lbox[2].pack_start(m_paintbox[3],Gtk::PACK_SHRINK); m_hbox[0].pack_start(m_fr[3]); m_lbox[3].pack_start(m_vbox[4]); m_lbox[3].pack_start(m_paintbox[4],Gtk::PACK_SHRINK); m_hbox[0].pack_start(m_fr[4]); m_lbox[4].pack_start(m_vbox[5]); m_lbox[4].pack_start(m_paintbox[5],Gtk::PACK_SHRINK); // m_hbox[0].pack_start(m_fr[5]); // m_fr[5].add(m_vbox[6]); m_hbox[0].pack_start(m_vbox[12], Gtk::PACK_EXPAND_PADDING); // put boxed controllers into controller box m_hbox[1].pack_start(m_vbox[13], Gtk::PACK_EXPAND_PADDING); m_hbox[1].pack_start(m_vbox[7]); m_hbox[1].pack_start(m_vbox[8]); m_hbox[1].pack_start(m_vbox[9]); m_hbox[1].pack_start(m_vbox[10]); m_hbox[1].pack_start(m_vbox[14], Gtk::PACK_EXPAND_PADDING); set_app_paintable(true); show_all(); }