Beispiel #1
0
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();
}
Beispiel #2
0
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();
}
Beispiel #3
0
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();
}
Beispiel #4
0
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();
}
Beispiel #5
0
/*
 * 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);
    }

}
Beispiel #6
0
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();
}
Beispiel #7
0
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();
}
Beispiel #8
0
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();
}
Beispiel #9
0
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();
}
Beispiel #10
0
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;
}
Beispiel #11
0
/**
 * 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();
}
Beispiel #13
0
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();
}
Beispiel #14
0
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();
}
Beispiel #15
0
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();
}
Beispiel #16
0
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();
}
Beispiel #17
0
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();
}