Enhanced curve editor :
- graphical celan up (surrounding frame deleted, histogram realigned) - a feedback tell what point is going to move - on Button press, the point doesn't move to the cursor anymore. Instead, the cursor is hidden during the drag and reappear in the same place it disappeared - by default, a 0.5 factor is used to move the point during the drag (i.e. you have to move the move of 2 pixel to move the point of one pixel) - keyboard can be used to fine tune the point position (subpixel placement) : - CTRL : factor = 0.1 - SHIFT : factor = 0.02 - CTRL+SHIFT : factor = 0.005 In the mean time, i had to create a new "Empty" cursor to hide it. A new method has been created to easily modify the cursor of the main window.
This commit is contained in:
@@ -21,7 +21,7 @@
|
||||
|
||||
#include <gtkmm.h>
|
||||
|
||||
enum CursorShape {CSArrow, CSOpenHand, CSClosedHand, CSMove, CSResizeWidth, CSResizeHeight, CSResizeDiagonal, CSSpotWB, CSCropSelect, CSStraighten};
|
||||
enum CursorShape {CSArrow, CSOpenHand, CSClosedHand, CSMove, CSResizeWidth, CSResizeHeight, CSResizeDiagonal, CSSpotWB, CSCropSelect, CSStraighten, CSPlus, CSEmpty};
|
||||
|
||||
class CursorManager {
|
||||
|
||||
@@ -33,14 +33,17 @@ class CursorManager {
|
||||
Gdk::Cursor* cCropMoving;
|
||||
Gdk::Cursor* cNormal;
|
||||
Gdk::Cursor* cCropSelection;
|
||||
Gdk::Cursor* cAdd;
|
||||
Gdk::Cursor* cHand;
|
||||
Gdk::Cursor* cClosedHand;
|
||||
Gdk::Cursor* cWB;
|
||||
Gdk::Cursor* cHidden;
|
||||
Glib::RefPtr<Gdk::Window> mainWindow;
|
||||
|
||||
public:
|
||||
void init (Glib::RefPtr<Gdk::Window> mainWin);
|
||||
void setCursor (Glib::RefPtr<Gdk::Window> window, CursorShape shape);
|
||||
void setCursor (CursorShape shape);
|
||||
};
|
||||
|
||||
extern CursorManager cursorManager;
|
||||
|
Reference in New Issue
Block a user