75
75
add_events(Gdk::BUTTON_PRESS_MASK | Gdk::BUTTON_RELEASE_MASK);
76
76
add_events(Gdk::BUTTON1_MOTION_MASK);
78
synfigapp::Main::signal_foreground_color_changed().connect(sigc::mem_fun(*this,&studio::Widget_Brush::queue_draw));
79
synfigapp::Main::signal_background_color_changed().connect(sigc::mem_fun(*this,&studio::Widget_Brush::queue_draw));
78
synfigapp::Main::signal_outline_color_changed().connect(sigc::mem_fun(*this,&studio::Widget_Brush::queue_draw));
79
synfigapp::Main::signal_fill_color_changed().connect(sigc::mem_fun(*this,&studio::Widget_Brush::queue_draw));
80
80
synfigapp::Main::signal_bline_width_changed().connect(sigc::mem_fun(*this,&studio::Widget_Brush::queue_draw));
81
81
studio::App::signal_instance_selected().connect(sigc::hide(sigc::mem_fun(*this,&studio::Widget_Brush::queue_draw)));
100
100
RendDesc rend_desc;
101
101
pixelsize=synfigapp::Main::get_bline_width().get(Distance::SYSTEM_PIXELS,rend_desc);
103
// Fill in the background color
104
render_color_to_window(get_window(),Gdk::Rectangle(0,0,w,h),synfigapp::Main::get_background_color());
103
// Fill in the fill color
104
render_color_to_window(get_window(),Gdk::Rectangle(0,0,w,h),synfigapp::Main::get_fill_color());
107
gc->set_rgb_fg_color(colorconv_synfig2gdk(synfigapp::Main::get_background_color()));
107
gc->set_rgb_fg_color(colorconv_synfig2gdk(synfigapp::Main::get_fill_color()));
108
108
gc->set_line_attributes(1,Gdk::LINE_SOLID,Gdk::CAP_BUTT,Gdk::JOIN_MITER);
109
109
get_window()->draw_rectangle(
117
117
// Draw in the circle
118
gc->set_rgb_fg_color(colorconv_synfig2gdk(synfigapp::Main::get_foreground_color()));
118
gc->set_rgb_fg_color(colorconv_synfig2gdk(synfigapp::Main::get_outline_color()));
119
119
gc->set_function(Gdk::COPY);
120
120
gc->set_line_attributes(1,Gdk::LINE_SOLID,Gdk::CAP_BUTT,Gdk::JOIN_MITER);
121
121
get_window()->draw_arc(
207
207
Gtk::Table* subtable(manage(new Gtk::Table()));
210
widget_fg_color=manage(new Widget_Color());
211
widget_fg_color->show();
212
widget_fg_color->set_size_request(16,16);
213
widget_fg_color->signal_clicked().connect(sigc::mem_fun(*this,&Widget_Defaults::on_fg_color_clicked));
214
subtable->attach(*widget_fg_color, 0, 4, 0, 4, Gtk::EXPAND|Gtk::FILL, Gtk::EXPAND|Gtk::FILL, 0, 0);
215
tooltips_.set_tip(*widget_fg_color,_("Foreground Color"));
210
widget_otln_color=manage(new Widget_Color());
211
widget_otln_color->show();
212
widget_otln_color->set_size_request(16,16);
213
widget_otln_color->signal_clicked().connect(sigc::mem_fun(*this,&Widget_Defaults::on_otln_color_clicked));
214
subtable->attach(*widget_otln_color, 0, 4, 0, 4, Gtk::EXPAND|Gtk::FILL, Gtk::EXPAND|Gtk::FILL, 0, 0);
215
tooltips_.set_tip(*widget_otln_color,_("Outline Color"));
218
widget_bg_color=manage(new Widget_Color());
219
widget_bg_color->show();
220
widget_bg_color->set_size_request(16,16);
221
widget_bg_color->signal_clicked().connect(sigc::mem_fun(*this,&Widget_Defaults::on_bg_color_clicked));
222
subtable->attach(*widget_bg_color, 3, 7, 3, 7, Gtk::EXPAND|Gtk::FILL, Gtk::EXPAND|Gtk::FILL, 0, 0);
223
tooltips_.set_tip(*widget_bg_color,_("Background Color"));
218
widget_fill_color=manage(new Widget_Color());
219
widget_fill_color->show();
220
widget_fill_color->set_size_request(16,16);
221
widget_fill_color->signal_clicked().connect(sigc::mem_fun(*this,&Widget_Defaults::on_fill_color_clicked));
222
subtable->attach(*widget_fill_color, 3, 7, 3, 7, Gtk::EXPAND|Gtk::FILL, Gtk::EXPAND|Gtk::FILL, 0, 0);
223
tooltips_.set_tip(*widget_fill_color,_("Fill Color"));
225
225
Gtk::Image* icon;
237
237
dynamic_cast<Gtk::Misc*>(button_swap->get_child())->set_padding(0,0);
238
238
button_swap->signal_clicked().connect(sigc::mem_fun(*this,&Widget_Defaults::on_swap_color_clicked));
239
239
subtable->attach(*button_swap, 4, 7, 0, 3, Gtk::SHRINK|Gtk::FILL, Gtk::SHRINK|Gtk::FILL, 0, 0);
240
tooltips_.set_tip(*button_swap,_("Swap Background and\nForeground Colors"));
240
tooltips_.set_tip(*button_swap,_("Swap Fill and\nOutline Colors"));
243
243
Gtk::Button* button_reset(manage(new Gtk::Button()));
317
317
synfigapp::Main::signal_opacity_changed().connect(sigc::mem_fun(*this,&studio::Widget_Defaults::opacity_refresh));
318
318
synfigapp::Main::signal_bline_width_changed().connect(sigc::mem_fun(*this,&studio::Widget_Defaults::bline_width_refresh));
319
synfigapp::Main::signal_foreground_color_changed().connect(sigc::mem_fun(*this,&studio::Widget_Defaults::fg_color_refresh));
320
synfigapp::Main::signal_background_color_changed().connect(sigc::mem_fun(*this,&studio::Widget_Defaults::bg_color_refresh));
319
synfigapp::Main::signal_outline_color_changed().connect(sigc::mem_fun(*this,&studio::Widget_Defaults::otln_color_refresh));
320
synfigapp::Main::signal_fill_color_changed().connect(sigc::mem_fun(*this,&studio::Widget_Defaults::fill_color_refresh));
321
321
synfigapp::Main::signal_gradient_changed().connect(sigc::mem_fun(*this,&studio::Widget_Defaults::gradient_refresh));
322
322
synfigapp::Main::signal_blend_method_changed().connect(sigc::mem_fun(*this,&studio::Widget_Defaults::blend_method_refresh));
323
323
synfigapp::Main::signal_interpolation_changed().connect(sigc::mem_fun(*this,&studio::Widget_Defaults::interpolation_refresh));
325
otln_color_refresh();
326
fill_color_refresh();
327
327
gradient_refresh();
328
328
blend_method_refresh();
329
329
opacity_refresh();
334
334
add_events(Gdk::BUTTON_PRESS_MASK | Gdk::BUTTON_RELEASE_MASK);
335
335
add_events(Gdk::BUTTON1_MOTION_MASK);
337
synfigapp::Main::signal_foreground_color_changed().connect(sigc::mem_fun(*this,&studio::Widget_Defaults::queue_draw));
338
synfigapp::Main::signal_background_color_changed().connect(sigc::mem_fun(*this,&studio::Widget_Defaults::queue_draw));
337
synfigapp::Main::signal_outline_color_changed().connect(sigc::mem_fun(*this,&studio::Widget_Defaults::queue_draw));
338
synfigapp::Main::signal_fill_color_changed().connect(sigc::mem_fun(*this,&studio::Widget_Defaults::queue_draw));
339
339
synfigapp::Main::signal_gradient_changed().connect(sigc::mem_fun(*this,&studio::Widget_Defaults::queue_draw));
340
340
synfigapp::Main::signal_bline_width_changed().connect(sigc::mem_fun(*this,&studio::Widget_Defaults::queue_draw));
349
349
if(App::dialog_color)
351
App::dialog_color->set_color(synfigapp::Main::get_foreground_color());
351
App::dialog_color->set_color(synfigapp::Main::get_outline_color());
352
352
App::dialog_color->reset();
353
App::dialog_color->signal_edited().connect(sigc::mem_fun(synfigapp::Main::set_foreground_color));
353
App::dialog_color->signal_edited().connect(sigc::mem_fun(synfigapp::Main::set_outline_color));
363
Widget_Defaults::fg_color_refresh()
363
Widget_Defaults::otln_color_refresh()
365
widget_fg_color->set_value(synfigapp::Main::get_foreground_color());
365
widget_otln_color->set_value(synfigapp::Main::get_outline_color());
369
Widget_Defaults::bg_color_refresh()
369
Widget_Defaults::fill_color_refresh()
371
widget_bg_color->set_value(synfigapp::Main::get_background_color());
371
widget_fill_color->set_value(synfigapp::Main::get_fill_color());
429
Widget_Defaults::on_fg_color_clicked()
429
Widget_Defaults::on_otln_color_clicked()
431
// Left click on foreground
432
App::dialog_color->set_color(synfigapp::Main::get_foreground_color());
431
// Left click on outline color
432
App::dialog_color->set_color(synfigapp::Main::get_outline_color());
433
433
App::dialog_color->reset();
434
App::dialog_color->signal_edited().connect(sigc::ptr_fun(synfigapp::Main::set_foreground_color));
434
App::dialog_color->signal_edited().connect(sigc::ptr_fun(synfigapp::Main::set_outline_color));
435
435
App::dialog_color->present();
439
Widget_Defaults::on_bg_color_clicked()
439
Widget_Defaults::on_fill_color_clicked()
441
// Left click on background
442
App::dialog_color->set_color(synfigapp::Main::get_background_color());
441
// Left click on fill color
442
App::dialog_color->set_color(synfigapp::Main::get_fill_color());
443
443
App::dialog_color->reset();
444
App::dialog_color->signal_edited().connect(sigc::ptr_fun(synfigapp::Main::set_background_color));
444
App::dialog_color->signal_edited().connect(sigc::ptr_fun(synfigapp::Main::set_fill_color));
445
445
App::dialog_color->present();
477
478
const int w(get_width());
478
479
const int size=std::min(h-GRADIENT_HEIGHT,w);
480
render_color_to_window(get_window(),Gdk::Rectangle(size/4,size/4,size/4*3-1,size/4*3-1),synfigapp::Main::get_background_color());
481
render_color_to_window(get_window(),Gdk::Rectangle(0,0,size/4*3-1,size/4*3-1),synfigapp::Main::get_foreground_color());
481
render_color_to_window(get_window(),Gdk::Rectangle(size/4,size/4,size/4*3-1,size/4*3-1),synfigapp::Main::get_fill_color());
482
render_color_to_window(get_window(),Gdk::Rectangle(0,0,size/4*3-1,size/4*3-1),synfigapp::Main::get_outline_color());
482
483
render_gradient_to_window(get_window(),Gdk::Rectangle(0,h-GRADIENT_HEIGHT,w,GRADIENT_HEIGHT-1),synfigapp::Main::get_gradient());
530
531
if(x<size*3/4 && y<size*3/4)
532
// Left click on foreground
533
App::dialog_color->set_color(synfigapp::Main::get_foreground_color());
533
// Left click on outline coloe
534
App::dialog_color->set_color(synfigapp::Main::get_outline_color());
534
535
App::dialog_color->reset();
535
App::dialog_color->signal_edited().connect(sigc::mem_fun(synfigapp::Main::set_foreground_color));
536
App::dialog_color->signal_edited().connect(sigc::mem_fun(synfigapp::Main::set_outline_color));
536
537
App::dialog_color->present();
539
540
if(x>size*3/4 && y>size/4)
541
// Left click on background
542
App::dialog_color->set_color(synfigapp::Main::get_background_color());
542
// Left click on fill color
543
App::dialog_color->set_color(synfigapp::Main::get_fill_color());
543
544
App::dialog_color->reset();
544
App::dialog_color->signal_edited().connect(sigc::mem_fun(synfigapp::Main::set_background_color));
545
App::dialog_color->signal_edited().connect(sigc::mem_fun(synfigapp::Main::set_fill_color));
545
546
App::dialog_color->present();