Added copyright lines for files I've edited this year.
[synfig.git] / synfig-studio / trunk / src / gtkmm / duckmatic.h
index b8d8247..d197549 100644 (file)
@@ -6,7 +6,7 @@
 **
 **     \legal
 **     Copyright (c) 2002-2005 Robert B. Quattlebaum Jr., Adrian Bentley
-**     Copyright (c) 2007 Chris Moore
+**     Copyright (c) 2007, 2008 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
 
 #ifdef HASH_MAP_H
 #include HASH_MAP_H
+#include FUNCTIONAL_H
+
 #ifndef __STRING_HASH__
 #define __STRING_HASH__
 class StringHash
 {
+# ifdef FUNCTIONAL_HASH_ON_STRING
+       HASH_MAP_NAMESPACE::hash<synfig::String> hasher_;
+# else  // FUNCTIONAL_HASH_ON_STRING
        HASH_MAP_NAMESPACE::hash<const char*> hasher_;
+# endif  // FUNCTIONAL_HASH_ON_STRING
 public:
        size_t operator()(const synfig::String& x)const
        {
+# ifdef FUNCTIONAL_HASH_ON_STRING
+               return hasher_(x);
+# else  // FUNCTIONAL_HASH_ON_STRING
                return hasher_(x.c_str());
+# endif  // FUNCTIONAL_HASH_ON_STRING
        }
 };
 #endif
@@ -183,6 +193,9 @@ private:
 
        mutable synfig::String sketch_filename_;
 
+       //! whether the display is flipped vertically or horizontally
+       bool flip_x_, flip_y_;
+
        /*
  -- ** -- P R O T E C T E D   D A T A -----------------------------------------
        */
@@ -229,6 +242,9 @@ public:
        Duckmatic();
        virtual ~Duckmatic();
 
+       void set_flip_x(bool flip_x);
+       void set_flip_y(bool flip_y);
+
        sigc::signal<void>& signal_duck_selection_changed() { return signal_duck_selection_changed_; }
        sigc::signal<void>& signal_strokes_changed() { return signal_strokes_changed_; }
        sigc::signal<void>& signal_grid_changed() { return signal_grid_changed_; }