# canvasview.cpp File Reference

Template File. More...

`#include <sigc++/adaptors/hide.h>`
`#include <ETL/clock>`
`#include <sstream>`
`#include <gtkmm/paned.h>`
`#include <gtkmm/scale.h>`
`#include <gtkmm/dialog.h>`
`#include <gtkmm/messagedialog.h>`
`#include <gtkmm/treemodelsort.h>`
`#include <gtkmm/buttonbox.h>`
`#include <gtkmm/separator.h>`
`#include <gtk/gtktreestore.h>`
`#include <gtk/gtkversion.h>`
`#include <synfig/valuenode_reference.h>`
`#include <synfig/valuenode_subtract.h>`
`#include <synfig/valuenode_linear.h>`
`#include <synfig/valuenode_timedswap.h>`
`#include <synfig/valuenode_scale.h>`
`#include <synfig/valuenode_dynamiclist.h>`
`#include <synfig/valuenode_twotone.h>`
`#include <synfig/valuenode_stripes.h>`
`#include <synfig/valuenode_blinecalctangent.h>`
`#include <synfig/valuenode_blinecalcvertex.h>`
`#include <synfig/valuenode_blinecalcwidth.h>`
`#include <synfig/valuenode_bline.h>`
`#include <synfig/layer.h>`
`#include <synfigapp/uimanager.h>`
`#include <synfigapp/canvasinterface.h>`
`#include <synfigapp/selectionmanager.h>`
`#include <sigc++/retype_return.h>`
`#include <sigc++/retype.h>`
`#include "canvasview.h"`
`#include "instance.h"`
`#include "app.h"`
`#include "cellrenderer_value.h"`
`#include "cellrenderer_timetrack.h"`
`#include "workarea.h"`
`#include "dialog_color.h"`
`#include "eventkey.h"`
`#include "state_polygon.h"`
`#include "state_bline.h"`
`#include "state_normal.h"`
`#include "state_eyedrop.h"`
`#include "state_draw.h"`
`#include "ducktransform_scale.h"`
`#include "ducktransform_translate.h"`
`#include "ducktransform_rotate.h"`
`#include "event_mouse.h"`
`#include "event_layerclick.h"`
`#include "toolbox.h"`
`#include "dialog_preview.h"`
`#include "dialog_soundselect.h"`
`#include "preview.h"`
`#include "audiocontainer.h"`
`#include "widget_timeslider.h"`
`#include "keyframedial.h"`
`#include <synfigapp/main.h>`
`#include <synfigapp/inputdevice.h>`
`#include "general.h"`

## Defines

#define | GRAB_HINT_DATA(y)
#define | DEFAULT_TIME_WINDOW_SIZE (10.0)
#define | SMALL_BUTTON(button, stockid, tooltip)
#define | NORMAL_BUTTON(button, stockid, tooltip)
#define | NEW_SMALL_BUTTON(x, y, z) Gtk::Button *SMALL_BUTTON(x,y,z)
#define | NOT_IMPLEMENTED_SLOT sigc::mem_fun(*reinterpret_cast<studio::CanvasViewUIInterface*>(get_ui_interface().get()),&studio::CanvasViewUIInterface::not_implemented)
#define | SLOT_EVENT(x) sigc::hide_return(sigc::bind(sigc::mem_fun(*this,&studio::CanvasView::process_event_key),x))
#define | DUCK_MASK(lower, upper, string)
#define | QUEUE_REBUILD_DUCKS sigc::mem_fun(*this,&CanvasView::queue_rebuild_ducks)

## Functions

static bool | _close_instance (etl::handle< Instance > instance)
static void | set_waypoint_model (std::set< synfig::Waypoint, std::less< UniqueID > > waypoints, Waypoint::Model model, etl::loose_handle< synfigapp::CanvasInterface > canvas_interface)
static void | duplicate_waypoints (std::set< synfig::Waypoint, std::less< UniqueID > > waypoints, etl::loose_handle< synfigapp::CanvasInterface > canvas_interface)
static void | remove_waypoints (std::set< synfig::Waypoint, std::less< UniqueID > > waypoints, etl::loose_handle< synfigapp::CanvasInterface > canvas_interface)

## Detailed Description

Template File.

$Id$

## Define Documentation

#define GRAB_HINT_DATA | ( | y |  | ) |

Value:

    { \
            String x; \
            if(synfigapp::Main::settings().get_value(String("pref.")+y+"_hints",x)) \
            { \
                set_type_hint((Gdk::WindowTypeHint)atoi(x.c_str()));    \
            } \
        }

Referenced by studio::DockDialog::DockDialog(), and studio::Toolbox::Toolbox().

#define DEFAULT_TIME_WINDOW_SIZE (10.0)

#define SMALL_BUTTON | ( | button,
|  | stockid,
|  | tooltip |  | ) |

Value:

    button = manage(new class Gtk::Button());   \
        icon=manage(new Gtk::Image(Gtk::StockID(stockid),iconsize));    \
        button->add(*icon); \
        tooltips.set_tip(*button,tooltip);  \
        icon->set_padding(0,0);\
        icon->show();   \
        button->set_relief(Gtk::RELIEF_NONE); \
        button->show()

Referenced by studio::LayerTree::LayerTree().

#define NORMAL_BUTTON | ( | button,
|  | stockid,
|  | tooltip |  | ) |

Value:

    button = manage(new class Gtk::Button());   \
        icon=manage(new Gtk::Image(Gtk::StockID(stockid),Gtk::ICON_SIZE_BUTTON));   \
        button->add(*icon); \
        tooltips.set_tip(*button,tooltip);  \
        icon->set_padding(0,0);\
        icon->show();   \
        /*button->set_relief(Gtk::RELIEF_NONE);*/ \
        button->show()

#define NEW_SMALL_BUTTON | ( | x,
|  | y,
|  | z |  | ) | Gtk::Button *SMALL_BUTTON(x,y,z)

#define NOT_IMPLEMENTED_SLOT sigc::mem_fun(*reinterpret_cast<studio::CanvasViewUIInterface*>(get_ui_interface().get()),&studio::CanvasViewUIInterface::not_implemented)

#define SLOT_EVENT | ( | x |  | ) | sigc::hide_return(sigc::bind(sigc::mem_fun(*this,&studio::CanvasView::process_event_key),x))

Referenced by studio::CanvasView::set_ext_widget().

#define DUCK_MASK | ( | lower,
|  | upper,
|  | string |  | ) |

Value:

    action=Gtk::ToggleAction::create("mask-" #lower "-ducks", string);          \
            action->set_active((bool)(work_area->get_type_mask()&Duck::TYPE_##upper));  \
            action_group->add(action,                                                   \
                sigc::bind(                                                             \
                    sigc::mem_fun(*this, &studio::CanvasView::toggle_duck_mask),        \
                    Duck::TYPE_##upper))

#define QUEUE_REBUILD_DUCKS sigc::mem_fun(*this,&CanvasView::queue_rebuild_ducks)

## Function Documentation

static bool _close_instance | ( | etl::handle< Instance > | instance | ) | `[static]`

Referenced by studio::CanvasView::close_instance().

static void set_waypoint_model | ( | std::set< synfig::Waypoint, std::less< UniqueID > > | waypoints,
|  | Waypoint::Model | model,
|  | etl::loose_handle< synfigapp::CanvasInterface > | canvas_interface |
| ) |  |  | `[static]`

References _, and synfigapp::Action::create().

static void duplicate_waypoints | ( | std::set< synfig::Waypoint, std::less< UniqueID > > | waypoints,
|  | etl::loose_handle< synfigapp::CanvasInterface > | canvas_interface |
| ) |  |  | `[static]`

References _.

static void remove_waypoints | ( | std::set< synfig::Waypoint, std::less< UniqueID > > | waypoints,
|  | etl::loose_handle< synfigapp::CanvasInterface > | canvas_interface |
| ) |  |  | `[static]`

References _.