projects
/
synfig.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Remove .gitignore do nothing is ignored.
[synfig.git]
/
synfig-studio
/
trunk
/
src
/
gtkmm
/
widget_gradient.cpp
diff --git
a/synfig-studio/trunk/src/gtkmm/widget_gradient.cpp
b/synfig-studio/trunk/src/gtkmm/widget_gradient.cpp
index
945e791
..
c964599
100644
(file)
--- a/
synfig-studio/trunk/src/gtkmm/widget_gradient.cpp
+++ b/
synfig-studio/trunk/src/gtkmm/widget_gradient.cpp
@@
-6,6
+6,7
@@
**
** \legal
** Copyright (c) 2002-2005 Robert B. Quattlebaum Jr., Adrian Bentley
**
** \legal
** Copyright (c) 2002-2005 Robert B. Quattlebaum Jr., Adrian Bentley
+** Copyright (c) 2007 Chris Moore
**
** This package is free software; you can redistribute it and/or
** modify it under the terms of the GNU General Public License as
**
** This package is free software; you can redistribute it and/or
** modify it under the terms of the GNU General Public License as
@@
-35,6
+36,8
@@
#include <synfig/exception.h>
#include <ETL/misc>
#include <synfig/exception.h>
#include <ETL/misc>
+#include "general.h"
+
#endif
/* === U S I N G =========================================================== */
#endif
/* === U S I N G =========================================================== */
@@
-119,7
+122,7
@@
Widget_Gradient::~Widget_Gradient()
#define CONTROL_HEIGHT 16
bool
#define CONTROL_HEIGHT 16
bool
-Widget_Gradient::redraw(GdkEventExpose
*bleh
)
+Widget_Gradient::redraw(GdkEventExpose
*/*bleh*/
)
{
const int h(get_height());
const int w(get_width());
{
const int h(get_height());
const int w(get_width());
@@
-203,6
+206,7
@@
void
Widget_Gradient::remove_cpoint(float x)
{
gradient_.erase(gradient_.proximity(x));
Widget_Gradient::remove_cpoint(float x)
{
gradient_.erase(gradient_.proximity(x));
+ signal_value_changed_();
queue_draw();
}
queue_draw();
}
@@
-210,6
+214,7
@@
void
Widget_Gradient::popup_menu(float x)
{
Gtk::Menu* menu(manage(new Gtk::Menu()));
Widget_Gradient::popup_menu(float x)
{
Gtk::Menu* menu(manage(new Gtk::Menu()));
+ menu->signal_hide().connect(sigc::bind(sigc::ptr_fun(&delete_widget), menu));
menu->items().clear();
menu->items().clear();
@@
-290,8
+295,9
@@
Widget_Gradient::on_event(GdkEvent *event)
case GDK_MOTION_NOTIFY:
if(editable_ && y>get_height()-CONTROL_HEIGHT)
{
case GDK_MOTION_NOTIFY:
if(editable_ && y>get_height()-CONTROL_HEIGHT)
{
+ if(!gradient_.size()) return true;
Gradient::iterator iter(gradient_.find(selected_cpoint));
Gradient::iterator iter(gradient_.find(selected_cpoint));
-
+ //! Use SHIFT to stack two CPoints together.
if(event->button.state&GDK_SHIFT_MASK)
{
float begin(-100000000),end(100000000);
if(event->button.state&GDK_SHIFT_MASK)
{
float begin(-100000000),end(100000000);