# studio::WorkArea Class Reference

`#include <workarea.h>`

Inheritance diagram for studio::WorkArea:

List of all members.

## Public Types

enum | DragMode { DRAG_NONE = 0, DRAG_WINDOW, DRAG_DUCK, DRAG_GUIDE, DRAG_BOX }

## Public Member Functions

void | insert_renderer (const etl::handle< WorkAreaRenderer > &x)
void | insert_renderer (const etl::handle< WorkAreaRenderer > &x, int priority)
void | erase_renderer (const etl::handle< WorkAreaRenderer > &x)
void | resort_render_set ()
const etl::loose_handle < synfig::ValueNode > & | get_selected_value_node ()
const synfig::Point & | get_drag_point () const
std::vector< std::pair < Glib::RefPtr< Gdk::Pixbuf > , int > > & | get_tile_book ()
int | get_refreshes () const
bool | get_canceled () const
bool | get_queued () const
bool | get_rendering () const
bool | get_full_frame () const
int | get_tile_w () const
int | get_tile_h () const
bool | get_allow_layer_clicks ()
void | set_allow_layer_clicks (bool value)
bool | get_allow_duck_clicks ()
void | set_allow_duck_clicks (bool value)
sigc::signal< void > & | signal_onion_skin_changed ()
sigc::signal< void > & | signal_rendering ()
sigc::signal< void > & | signal_cursor_moved ()
sigc::signal< void > & | signal_view_window_changed ()
void | view_window_changed ()
sigc::signal< void, GdkDevice * > & | signal_input_device_changed ()
sigc::signal< void > & | signal_popup_menu ()
sigc::signal< void, synfig::Point > & | signal_user_click (int button=0)
| One signal per button (5 buttons).
sigc::signal< void, etl::handle< synfig::Layer > > & | signal_layer_selected ()
void | set_onion_skin (bool x)
bool | get_onion_skin () const
void | toggle_onion_skin ()
void | set_onion_skins (int *onions)
void | set_selected_value_node (etl::loose_handle< synfig::ValueNode > x)
bool | is_dragging ()
DragMode | get_dragging_mode ()
| WorkArea (etl::loose_handle< synfigapp::CanvasInterface > canvas_interface)
virtual | ~WorkArea ()
void | set_cursor (const Gdk::Cursor &x)
void | set_cursor (Gdk::CursorType x)
const synfig::Point & | get_cursor_pos () const
Gtk::Adjustment * | get_scrollx_adjustment ()
Gtk::Adjustment * | get_scrolly_adjustment ()
const Gtk::Adjustment * | get_scrollx_adjustment () const
const Gtk::Adjustment * | get_scrolly_adjustment () const
void | set_instance (etl::loose_handle< studio::Instance > x)
void | set_canvas (etl::handle< synfig::Canvas > x)
void | set_canvas_view (etl::loose_handle< studio::CanvasView > x)
etl::handle< synfig::Canvas > | get_canvas () const
etl::handle< studio::Instance > | get_instance () const
etl::loose_handle < studio::CanvasView > | get_canvas_view () const
void | refresh_dimension_info ()
void | enable_grid ()
| Enables showing of the grid.
void | disable_grid ()
| Disables showing of the grid.
void | toggle_grid ()
| Toggles the showing of the grid.
bool | grid_status () const
| Returns the state of the show_grid flag.
void | toggle_grid_snap ()
bool | get_show_guides () const
void | set_show_guides (bool x)
void | toggle_show_guides ()
bool | get_low_resolution_flag () const
void | set_low_resolution_flag (bool x)
void | toggle_low_resolution_flag ()
void | queue_scroll ()
| ???
void | set_grid_size (const synfig::Vector &s)
| Sets the size of the grid.
void | popup_menu ()
| ??
int | get_quality () const
int | get_low_res_pixel_size () const
void | set_quality (int x)
void | set_low_res_pixel_size (int x)
int | get_w () const
int | get_h () const
int | get_bpp () const
const synfig::RendDesc & | get_rend_desc () const
| ??
void | set_rend_desc (const synfig::RendDesc &x)
| ??
synfig::Point | screen_to_comp_coords (synfig::Point pos) const
| Converts screen coords (ie: pixels) to composition coordinates.
synfig::Point | comp_to_screen_coords (synfig::Point pos) const
| Converts composition coordinates to screen coords (ie: pixels).
float | get_pw () const
float | get_ph () const
const synfig::Point & | get_window_tl () const
const synfig::Point & | get_window_br () const
bool | async_update_preview ()
void | async_update_finished ()
void | async_render_preview (synfig::Time time)
void | async_render_preview ()
bool | sync_update_preview ()
bool | sync_render_preview (synfig::Time time)
bool | sync_render_preview ()
void | sync_render_preview_hook ()
void | queue_render_preview ()
void | queue_draw_preview ()
void | zoom_in ()
void | zoom_out ()
void | zoom_fit ()
void | zoom_norm ()
float | get_zoom () const
void | set_zoom (float z)
void | set_progress_callback (synfig::ProgressCallback *x)
synfig::ProgressCallback * | get_progress_callback ()
void | set_focus_point (const synfig::Point &x)
synfig::Point | get_focus_point () const
void | done_rendering ()
bool | refresh (GdkEventExpose *bleh=NULL)
void | reset_cursor ()
void | refresh_cursor ()
void | save_meta_data ()
void | load_meta_data ()

## Public Attributes

bool | solid_lines
GuideList::iterator | curr_guide
int | timecode_width
int | timecode_height

## Friends

class | WorkAreaTarget
class | WorkAreaTarget_Full
class | DirtyTrap
class | WorkAreaRenderer
class | WorkAreaProgress

## Member Enumeration Documentation

enum studio::WorkArea::DragMode

Enumerator:

  DRAG_NONE |
  DRAG_WINDOW |
  DRAG_DUCK |
  DRAG_GUIDE |
  DRAG_BOX |

## Constructor & Destructor Documentation

WorkArea::WorkArea | ( | etl::loose_handle< synfigapp::CanvasInterface > | canvas_interface | ) |

References get_canvas(), get_scrollx_adjustment(), get_scrolly_adjustment(), insert_renderer(), load_meta_data(), studio::Duckmatic::load_sketch(), popup_menu(), queue_scroll(), refresh(), refresh_dimension_info(), RULER_FIX, save_meta_data(), set_focus_point(), studio::Duckmatic::signal_duck_selection_changed(), studio::Duckmatic::signal_grid_changed(), studio::Duckmatic::signal_sketch_saved(), studio::Duckmatic::signal_strokes_changed(), studio::ZoomDial::signal_zoom_fit(), studio::ZoomDial::signal_zoom_in(), studio::ZoomDial::signal_zoom_norm(), studio::ZoomDial::signal_zoom_out(), solid_lines, zoom_fit(), zoom_in(), zoom_norm(), and zoom_out().

WorkArea::~WorkArea | ( |  | ) | `[virtual]`

## Member Function Documentation

void WorkArea::insert_renderer | ( | const etl::handle< WorkAreaRenderer > & | x | ) |

Referenced by insert_renderer(), and WorkArea().

void WorkArea::insert_renderer | ( | const etl::handle< WorkAreaRenderer > & | x,
|  | int | priority |
| ) |  |  |

References insert_renderer().

void WorkArea::erase_renderer | ( | const etl::handle< WorkAreaRenderer > & | x | ) |

void WorkArea::resort_render_set | ( |  | ) |

const etl::loose_handle<synfig::ValueNode>& studio::WorkArea::get_selected_value_node | ( |  | ) | `[inline]`

Referenced by studio::Renderer_Ducks::render_vfunc().

const synfig::Point& studio::WorkArea::get_drag_point | ( |  | ) | const`[inline]`

Referenced by studio::Renderer_Dragbox::get_drag_point().

std::vector< std::pair<Glib::RefPtr<Gdk::Pixbuf>,int> >& studio::WorkArea::get_tile_book | ( |  | ) | `[inline]`

Referenced by studio::Renderer_Canvas::get_tile_book().

int studio::WorkArea::get_refreshes | ( |  | ) | const`[inline]`

Referenced by studio::Renderer_Canvas::get_refreshes().

bool studio::WorkArea::get_canceled | ( |  | ) | const`[inline]`

Referenced by studio::Renderer_Canvas::get_canceled().

bool studio::WorkArea::get_queued | ( |  | ) | const`[inline]`

Referenced by studio::Renderer_Canvas::get_queued().

bool studio::WorkArea::get_rendering | ( |  | ) | const`[inline]`

Referenced by studio::Renderer_Canvas::get_rendering().

bool studio::WorkArea::get_full_frame | ( |  | ) | const`[inline]`

Referenced by studio::Renderer_Canvas::get_full_frame().

int studio::WorkArea::get_tile_w | ( |  | ) | const`[inline]`

int studio::WorkArea::get_tile_h | ( |  | ) | const`[inline]`

bool studio::WorkArea::get_allow_layer_clicks | ( |  | ) | `[inline]`

void studio::WorkArea::set_allow_layer_clicks | ( | bool | value | ) | `[inline]`

bool studio::WorkArea::get_allow_duck_clicks | ( |  | ) | `[inline]`

void studio::WorkArea::set_allow_duck_clicks | ( | bool | value | ) | `[inline]`

sigc::signal<void>& studio::WorkArea::signal_onion_skin_changed | ( |  | ) | `[inline]`

Referenced by set_onion_skin().

sigc::signal<void>& studio::WorkArea::signal_rendering | ( |  | ) | `[inline]`

Referenced by async_render_preview(), and sync_update_preview().

sigc::signal<void>& studio::WorkArea::signal_cursor_moved | ( |  | ) | `[inline]`

sigc::signal<void>& studio::WorkArea::signal_view_window_changed | ( |  | ) | `[inline]`

Referenced by view_window_changed().

void studio::WorkArea::view_window_changed | ( |  | ) | `[inline]`

References signal_view_window_changed().

Referenced by refresh_dimension_info().

sigc::signal<void,GdkDevice* >& studio::WorkArea::signal_input_device_changed | ( |  | ) | `[inline]`

sigc::signal<void>& studio::WorkArea::signal_popup_menu | ( |  | ) | `[inline]`

Referenced by popup_menu().

sigc::signal<void,synfig::Point>& studio::WorkArea::signal_user_click | ( | int | button = `0` | ) | `[inline]`

One signal per button (5 buttons).

sigc::signal<void, etl::handle<synfig::Layer> >& studio::WorkArea::signal_layer_selected | ( |  | ) | `[inline]`

void WorkArea::set_onion_skin | ( | bool | x | ) |

References queue_render_preview(), save_meta_data(), and signal_onion_skin_changed().

Referenced by load_meta_data(), and toggle_onion_skin().

bool WorkArea::get_onion_skin | ( |  | ) | const

Referenced by async_update_preview(), and toggle_onion_skin().

void studio::WorkArea::toggle_onion_skin | ( |  | ) | `[inline]`

References get_onion_skin(), and set_onion_skin().

void WorkArea::set_onion_skins | ( | int * | onions | ) |

References queue_render_preview().

void WorkArea::set_selected_value_node | ( | etl::loose_handle< synfig::ValueNode > | x | ) |

bool studio::WorkArea::is_dragging | ( |  | ) | `[inline]`

References DRAG_NONE.

DragMode studio::WorkArea::get_dragging_mode | ( |  | ) | `[inline]`

Referenced by studio::Renderer_Dragbox::get_enabled_vfunc().

void studio::WorkArea::set_cursor | ( | const Gdk::Cursor & | x | ) |

void studio::WorkArea::set_cursor | ( | Gdk::CursorType | x | ) |

const synfig::Point& studio::WorkArea::get_cursor_pos | ( |  | ) | const`[inline]`

Referenced by studio::Renderer_Dragbox::get_curr_point().

Gtk::Adjustment* studio::WorkArea::get_scrollx_adjustment | ( |  | ) | `[inline]`

Referenced by get_focus_point(), set_focus_point(), and WorkArea().

Gtk::Adjustment* studio::WorkArea::get_scrolly_adjustment | ( |  | ) | `[inline]`

Referenced by get_focus_point(), set_focus_point(), and WorkArea().

const Gtk::Adjustment* studio::WorkArea::get_scrollx_adjustment | ( |  | ) | const`[inline]`

const Gtk::Adjustment* studio::WorkArea::get_scrolly_adjustment | ( |  | ) | const`[inline]`

void studio::WorkArea::set_instance | ( | etl::loose_handle< studio::Instance > | x | ) | `[inline]`

void studio::WorkArea::set_canvas | ( | etl::handle< synfig::Canvas > | x | ) | `[inline]`

void studio::WorkArea::set_canvas_view | ( | etl::loose_handle< studio::CanvasView > | x | ) | `[inline]`

etl::handle<synfig::Canvas> studio::WorkArea::get_canvas | ( |  | ) | const`[inline]`

Referenced by async_render_preview(), async_update_preview(), get_focus_point(), refresh(), refresh_dimension_info(), screen_to_comp_coords(), set_focus_point(), sync_update_preview(), and WorkArea().

etl::handle<studio::Instance> studio::WorkArea::get_instance | ( |  | ) | const`[inline]`

etl::loose_handle<studio::CanvasView> studio::WorkArea::get_canvas_view | ( |  | ) | const`[inline]`

Referenced by async_render_preview(), async_update_finished(), async_update_preview(), studio::Renderer_BBox::get_bbox(), sync_render_preview(), sync_render_preview_hook(), and sync_update_preview().

void WorkArea::refresh_dimension_info | ( |  | ) |

References studio::App::distance_system, get_canvas(), get_focus_point(), studio::Duckmatic::get_grid_size(), and view_window_changed().

Referenced by set_zoom(), and WorkArea().

void WorkArea::enable_grid | ( |  | ) |

Enables showing of the grid.

References save_meta_data().

void WorkArea::disable_grid | ( |  | ) |

Disables showing of the grid.

References save_meta_data().

void WorkArea::toggle_grid | ( |  | ) |

Toggles the showing of the grid.

References save_meta_data().

bool studio::WorkArea::grid_status | ( |  | ) | const`[inline]`

Returns the state of the show_grid flag.

Referenced by studio::Renderer_Grid::get_enabled_vfunc().

void studio::WorkArea::toggle_grid_snap | ( |  | ) | `[inline]`

Reimplemented from studio::Duckmatic.

References studio::Duckmatic::toggle_grid_snap().

bool studio::WorkArea::get_show_guides | ( |  | ) | const`[inline]`

Referenced by studio::Renderer_Guides::get_enabled_vfunc(), save_meta_data(), and toggle_show_guides().

void WorkArea::set_show_guides | ( | bool | x | ) |

References save_meta_data().

Referenced by toggle_show_guides().

void studio::WorkArea::toggle_show_guides | ( |  | ) | `[inline]`

References get_show_guides(), and set_show_guides().

bool studio::WorkArea::get_low_resolution_flag | ( |  | ) | const`[inline]`

Referenced by toggle_low_resolution_flag().

void WorkArea::set_low_resolution_flag | ( | bool | x | ) |

References queue_render_preview().

Referenced by toggle_low_resolution_flag().

void WorkArea::toggle_low_resolution_flag | ( |  | ) |

References get_low_resolution_flag(), and set_low_resolution_flag().

void WorkArea::queue_scroll | ( |  | ) |

???

References get_focus_point(), synfigapp::MODE_ANIMATE, timecode_height, and timecode_width.

Referenced by WorkArea().

void WorkArea::set_grid_size | ( | const synfig::Vector & | s | ) |

Sets the size of the grid.

Reimplemented from studio::Duckmatic.

References save_meta_data(), and studio::Duckmatic::set_grid_size().

Referenced by load_meta_data().

void WorkArea::popup_menu | ( |  | ) |

??

References signal_popup_menu().

Referenced by WorkArea().

int studio::WorkArea::get_quality | ( |  | ) | const`[inline]`

int studio::WorkArea::get_low_res_pixel_size | ( |  | ) | const`[inline]`

Referenced by studio::Renderer_Canvas::render_vfunc().

void WorkArea::set_quality | ( | int | x | ) |

References queue_render_preview().

void WorkArea::set_low_res_pixel_size | ( | int | x | ) |

References queue_render_preview().

int studio::WorkArea::get_w | ( |  | ) | const`[inline]`

Referenced by studio::WorkAreaRenderer::get_w().

int studio::WorkArea::get_h | ( |  | ) | const`[inline]`

Referenced by studio::WorkAreaRenderer::get_h().

int studio::WorkArea::get_bpp | ( |  | ) | const`[inline]`

const synfig::RendDesc& studio::WorkArea::get_rend_desc | ( |  | ) | const`[inline]`

??

void studio::WorkArea::set_rend_desc | ( | const synfig::RendDesc & | x | ) | `[inline]`

??

Referenced by async_update_preview(), and sync_update_preview().

synfig::Point WorkArea::screen_to_comp_coords | ( | synfig::Point | pos | ) | const

Converts screen coords (ie: pixels) to composition coordinates.

References get_canvas(), and get_focus_point().

Referenced by studio::WorkAreaRenderer::screen_to_comp_coords().

synfig::Point WorkArea::comp_to_screen_coords | ( | synfig::Point | pos | ) | const

Converts composition coordinates to screen coords (ie: pixels).

Referenced by studio::WorkAreaRenderer::comp_to_screen_coords().

float studio::WorkArea::get_pw | ( |  | ) | const`[inline]`

Referenced by studio::WorkAreaRenderer::get_pw().

float studio::WorkArea::get_ph | ( |  | ) | const`[inline]`

Referenced by studio::WorkAreaRenderer::get_ph().

const synfig::Point& studio::WorkArea::get_window_tl | ( |  | ) | const`[inline]`

const synfig::Point& studio::WorkArea::get_window_br | ( |  | ) | const`[inline]`

bool studio::WorkArea::async_update_preview | ( |  | ) |

References _, async_update_finished(), studio::Duckmatic::cur_time, get_canvas(), get_canvas_view(), get_onion_skin(), queue_render_preview(), set_rend_desc(), WorkAreaTarget, and WorkAreaTarget_Full.

Referenced by async_render_preview(), studio::Renderer_Canvas::render_vfunc(), and set_zoom().

void studio::WorkArea::async_update_finished | ( |  | ) |

References _, done_rendering(), and get_canvas_view().

Referenced by async_update_preview().

void studio::WorkArea::async_render_preview | ( | synfig::Time | time | ) |

References async_update_preview(), studio::Duckmatic::cur_time, studio::EVENT_REFRESH_DUCKS, get_canvas(), get_canvas_view(), studio::Duckmatic::get_time(), and signal_rendering().

void WorkArea::async_render_preview | ( |  | ) |

References get_canvas_view(), and studio::Duckmatic::get_time().

bool studio::WorkArea::sync_update_preview | ( |  | ) |

References _, studio::Duckmatic::cur_time, done_rendering(), studio::EVENT_REFRESH_DUCKS, get_canvas(), get_canvas_view(), studio::Duckmatic::get_time(), set_rend_desc(), signal_rendering(), WorkAreaProgress, and WorkAreaTarget.

Referenced by sync_render_preview().

bool studio::WorkArea::sync_render_preview | ( | synfig::Time | time | ) |

References studio::Duckmatic::cur_time, and sync_update_preview().

bool WorkArea::sync_render_preview | ( |  | ) |

References get_canvas_view(), and studio::Duckmatic::get_time().

Referenced by sync_render_preview_hook().

void WorkArea::sync_render_preview_hook | ( |  | ) |

References get_canvas_view(), studio::Duckmatic::get_time(), and sync_render_preview().

void studio::WorkArea::queue_render_preview | ( |  | ) |

Referenced by async_update_preview(), set_low_res_pixel_size(), set_low_resolution_flag(), set_onion_skin(), set_onion_skins(), set_quality(), and studio::DirtyTrap::~DirtyTrap().

void studio::WorkArea::queue_draw_preview | ( |  | ) |

void studio::WorkArea::zoom_in | ( |  | ) |

References set_zoom().

Referenced by WorkArea().

void studio::WorkArea::zoom_out | ( |  | ) |

References set_zoom().

Referenced by WorkArea().

void studio::WorkArea::zoom_fit | ( |  | ) |

References get_focus_point(), set_focus_point(), and set_zoom().

Referenced by WorkArea().

void studio::WorkArea::zoom_norm | ( |  | ) |

References set_zoom().

Referenced by WorkArea().

float studio::WorkArea::get_zoom | ( |  | ) | const`[inline]`

void studio::WorkArea::set_zoom | ( | float | z | ) |

References async_update_preview(), and refresh_dimension_info().

Referenced by zoom_fit(), zoom_in(), zoom_norm(), and zoom_out().

void studio::WorkArea::set_progress_callback | ( | synfig::ProgressCallback * | x | ) | `[inline]`

synfig::ProgressCallback* studio::WorkArea::get_progress_callback | ( |  | ) | `[inline]`

void WorkArea::set_focus_point | ( | const synfig::Point & | x | ) |

References get_canvas(), get_scrollx_adjustment(), and get_scrolly_adjustment().

Referenced by WorkArea(), and zoom_fit().

synfig::Point WorkArea::get_focus_point | ( |  | ) | const

References get_canvas(), get_scrollx_adjustment(), and get_scrolly_adjustment().

Referenced by queue_scroll(), refresh(), refresh_dimension_info(), screen_to_comp_coords(), and zoom_fit().

void WorkArea::done_rendering | ( |  | ) |

Referenced by async_update_finished(), and sync_update_preview().

bool WorkArea::refresh | ( | GdkEventExpose * | bleh = `NULL` | ) |

References synfigapp::Action::create(), get_canvas(), get_focus_point(), and synfigapp::MODE_ANIMATE.

Referenced by WorkArea().

void studio::WorkArea::reset_cursor | ( |  | ) |

void studio::WorkArea::refresh_cursor | ( |  | ) |

void WorkArea::save_meta_data | ( |  | ) |

References studio::Duckmatic::get_grid_size(), studio::Duckmatic::get_grid_snap(), studio::Duckmatic::get_guide_list_x(), studio::Duckmatic::get_guide_list_y(), studio::Duckmatic::get_guide_snap(), get_show_guides(), and studio::Duckmatic::get_sketch_filename().

Referenced by disable_grid(), enable_grid(), set_grid_size(), set_onion_skin(), set_show_guides(), toggle_grid(), and WorkArea().

void WorkArea::load_meta_data | ( |  | ) |

References studio::Duckmatic::get_grid_size(), studio::Duckmatic::get_guide_list_x(), studio::Duckmatic::get_guide_list_y(), set_grid_size(), studio::Duckmatic::set_grid_snap(), studio::Duckmatic::set_guide_snap(), set_onion_skin(), solid_lines, and stratof.

Referenced by WorkArea().

## Friends And Related Function Documentation

friend class WorkAreaTarget`[friend]`

Referenced by async_update_preview(), and sync_update_preview().

friend class WorkAreaTarget_Full`[friend]`

Referenced by async_update_preview().

friend class DirtyTrap `[friend]`

friend class WorkAreaRenderer `[friend]`

friend class WorkAreaProgress`[friend]`

Referenced by sync_update_preview().

## Member Data Documentation

bool studio::WorkArea::solid_lines

Referenced by load_meta_data(), and WorkArea().

GuideList::iterator studio::WorkArea::curr_guide

int studio::WorkArea::timecode_width

Referenced by queue_scroll(), and studio::Renderer_Timecode::render_vfunc().

int studio::WorkArea::timecode_height

Referenced by queue_scroll(), and studio::Renderer_Timecode::render_vfunc().

The documentation for this class was generated from the following files:

- workarea.h
- workarea.cpp