Main Page | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members | File Members

TimeBar Class Reference

#include <timebar.h>

Inheritance diagram for TimeBar:

CTimeBar MTimeBar VTimeBar List of all members.

Public Member Functions

 TimeBar (MWindow *mwindow, BC_WindowBase *gui, int x, int y, int w, int h)
virtual ~TimeBar ()
int create_objects ()
int update_defaults ()
int button_press_event ()
int button_release_event ()
int cursor_motion_event ()
int repeat_event (int64_t duration)
void update (int do_range=1, int do_others=1)
virtual void draw_time ()
virtual void draw_range ()
virtual void select_label (double position)
virtual void stop_playback ()
virtual EDLget_edl ()
virtual int test_preview (int buttonpress)
virtual void update_preview ()
virtual int64_t position_to_pixel (double position)
int move_preview (int &redraw)
void update_labels ()
void update_points ()
void update_presentations ()
void update_highlights ()
void update_cursor ()
int save (FileXML *xml)
int load (FileXML *xml, int undo_type)
int delete_project ()
int draw ()
int samplemovement ()
int refresh_labels ()
int select_region (double position)
void get_edl_length ()
int flip_vertical (int w, int h)
int delete_arrows ()

Public Attributes

MWindowmwindow
BC_WindowBase * gui
int current_operation

Private Member Functions

int get_preview_pixels (int &x1, int &x2)
int draw_bevel ()

Private Attributes

ArrayList< LabelGUI * > labels
InPointGUIin_point
OutPointGUIout_point
ArrayList< PresentationGUI * > presentations
double start_position
double starting_start_position
double starting_end_position
double time_per_pixel
double edl_length
int start_cursor_x

Detailed Description

Definition at line 93 of file timebar.h.


Constructor & Destructor Documentation

TimeBar::TimeBar MWindow mwindow,
BC_WindowBase *  gui,
int  x,
int  y,
int  w,
int  h
 

Definition at line 151 of file timebar.C.

TimeBar::~TimeBar  )  [virtual]
 

Definition at line 164 of file timebar.C.

References in_point, labels, out_point, and presentations.


Member Function Documentation

int TimeBar::button_press_event  ) 
 

Definition at line 688 of file timebar.C.

References TrackCanvas::activate(), MWindowGUI::canvas, MWindow::edl, MWindow::gui, EDL::local_session, mwindow, MWindow::next_time_format(), MWindow::prev_time_format(), EDLSession::sample_rate, select_region(), EDL::session, stop_playback(), test_preview(), update_cursor(), LocalSession::view_start, and LocalSession::zoom_sample.

int TimeBar::button_release_event  ) 
 

Definition at line 821 of file timebar.C.

References _, MWindowGUI::canvas, current_operation, MWindow::gui, mwindow, TrackCanvas::stop_dragscroll(), TIMEBAR_DRAG, TIMEBAR_NONE, MWindow::undo, and MainUndo::update_undo().

int TimeBar::create_objects  ) 
 

Definition at line 172 of file timebar.C.

References current_operation, in_point, out_point, TIMEBAR_NONE, and update().

Referenced by VWindowGUI::create_objects(), MWindowGUI::create_objects(), and CWindowGUI::create_objects().

int TimeBar::cursor_motion_event  ) 
 

Definition at line 771 of file timebar.C.

References MWindowGUI::canvas, current_operation, MWindow::gui, move_preview(), mwindow, TrackCanvas::start_dragscroll(), TrackCanvas::stop_dragscroll(), test_preview(), TIMEBAR_DRAG, TIMEBAR_DRAG_CENTER, TIMEBAR_DRAG_LEFT, TIMEBAR_DRAG_RIGHT, update(), and update_cursor().

int TimeBar::delete_arrows  ) 
 

Definition at line 920 of file timebar.C.

int TimeBar::delete_project  ) 
 

Definition at line 397 of file timebar.C.

int TimeBar::draw  ) 
 

Definition at line 460 of file timebar.C.

int TimeBar::draw_bevel  )  [private]
 

void TimeBar::draw_range  )  [virtual]
 

Reimplemented in MTimeBar.

Definition at line 423 of file timebar.C.

References get_edl(), get_preview_pixels(), LocalSession::get_selectionstart(), EDL::local_session, mwindow, position_to_pixel(), MWindow::theme, and Theme::timebar_view_data.

Referenced by VTimeBar::draw_time(), CTimeBar::draw_time(), VTracking::update_tracker(), and CTracking::update_tracker().

void TimeBar::draw_time  )  [virtual]
 

Reimplemented in CTimeBar, MTimeBar, and VTimeBar.

Definition at line 412 of file timebar.C.

Referenced by update().

int TimeBar::flip_vertical int  w,
int  h
 

EDL * TimeBar::get_edl  )  [virtual]
 

Reimplemented in CTimeBar, and VTimeBar.

Definition at line 416 of file timebar.C.

References MWindow::edl, and mwindow.

Referenced by draw_range(), get_edl_length(), get_preview_pixels(), move_preview(), test_preview(), update_labels(), and update_points().

void TimeBar::get_edl_length  ) 
 

Definition at line 465 of file timebar.C.

References edl_length, get_edl(), time_per_pixel, Tracks::total_playable_length(), and EDL::tracks.

Referenced by CTimeBar::draw_time(), get_preview_pixels(), and position_to_pixel().

int TimeBar::get_preview_pixels int &  x1,
int &  x2
[private]
 

Definition at line 489 of file timebar.C.

References edl_length, get_edl(), get_edl_length(), EDL::local_session, LocalSession::preview_end, LocalSession::preview_start, and time_per_pixel.

Referenced by draw_range(), and test_preview().

int TimeBar::load FileXML xml,
int  undo_type
 

int TimeBar::move_preview int &  redraw  ) 
 

Definition at line 616 of file timebar.C.

References CLAMP, current_operation, edl_length, get_edl(), EDL::local_session, LocalSession::preview_end, LocalSession::preview_start, start_cursor_x, start_position, starting_end_position, starting_start_position, time_per_pixel, TIMEBAR_DRAG_CENTER, TIMEBAR_DRAG_LEFT, TIMEBAR_DRAG_RIGHT, and update_preview().

Referenced by cursor_motion_event().

int64_t TimeBar::position_to_pixel double  position  )  [virtual]
 

Reimplemented in MTimeBar.

Definition at line 182 of file timebar.C.

References get_edl_length(), and time_per_pixel.

Referenced by draw_range(), update_labels(), and update_points().

int TimeBar::refresh_labels  ) 
 

int TimeBar::repeat_event int64_t  duration  ) 
 

Definition at line 736 of file timebar.C.

References MWindowGUI::canvas, current_operation, TrackCanvas::drag_scroll, MWindow::edl, MWindow::gui, EDL::local_session, mwindow, MWindow::samplemovement(), TIMEBAR_DRAG, update_cursor(), and LocalSession::view_start.

int TimeBar::samplemovement  ) 
 

Definition at line 679 of file timebar.C.

int TimeBar::save FileXML xml  ) 
 

Definition at line 403 of file timebar.C.

void TimeBar::select_label double  position  )  [virtual]
 

Reimplemented in CTimeBar, MTimeBar, and VTimeBar.

Definition at line 454 of file timebar.C.

Referenced by LabelGUI::handle_event().

int TimeBar::select_region double  position  ) 
 

Definition at line 864 of file timebar.C.

References _, TrackCanvas::activate(), MWindowGUI::canvas, MWindowGUI::cursor, MWindow::cwindow, MainCursor::draw(), MWindow::edl, MWindow::gui, MainCursor::hide(), EDL::labels, EDL::local_session, mwindow, Label::position, LocalSession::set_selectionend(), LocalSession::set_selectionstart(), Tracks::total_length(), EDL::tracks, MWindow::undo, ZoomBar::update(), CWindow::update(), update_highlights(), MainUndo::update_undo(), and MWindowGUI::zoombar.

Referenced by button_press_event().

void TimeBar::stop_playback  )  [virtual]
 

Reimplemented in MTimeBar.

Definition at line 684 of file timebar.C.

Referenced by button_press_event().

int TimeBar::test_preview int  buttonpress  )  [virtual]
 

Reimplemented in MTimeBar.

Definition at line 524 of file timebar.C.

References current_operation, get_edl(), get_preview_pixels(), EDL::local_session, LocalSession::preview_end, LocalSession::preview_start, start_cursor_x, start_position, starting_end_position, starting_start_position, TIMEBAR_DRAG_CENTER, TIMEBAR_DRAG_LEFT, and TIMEBAR_DRAG_RIGHT.

Referenced by button_press_event(), and cursor_motion_event().

void TimeBar::update int  do_range = 1,
int  do_others = 1
 

Definition at line 379 of file timebar.C.

References draw_time(), update_labels(), update_points(), and update_presentations().

Referenced by VWindowGUI::change_source(), VWindow::clear_inpoint(), MWindow::clear_labels(), VWindow::clear_outpoint(), create_objects(), cursor_motion_event(), VWindowSlider::handle_event(), SampleScroll::handle_event(), VWindowEditing::next_label(), MWindow::next_label(), VWindowEditing::prev_label(), MWindow::prev_label(), MWindowGUI::redraw_time_dependancies(), VTimeBar::resize_event(), MTimeBar::resize_event(), CTimeBar::resize_event(), MWindow::samplemovement(), VTimeBar::select_label(), VWindow::set_inpoint(), MWindow::set_inpoint(), VWindow::set_outpoint(), MWindow::set_outpoint(), BRender::set_video_map(), VWindowEditing::toggle_label(), MWindow::toggle_label(), VWindow::update(), CWindow::update(), and MWindow::update_project().

void TimeBar::update_cursor  ) 
 

Definition at line 846 of file timebar.C.

References EDL::align_to_frame(), current_operation, MWindow::edl, EDL::local_session, mwindow, EDLSession::sample_rate, MWindow::select_point(), EDL::session, TIMEBAR_DRAG, update_highlights(), LocalSession::view_start, and LocalSession::zoom_sample.

Referenced by button_press_event(), cursor_motion_event(), and repeat_event().

int TimeBar::update_defaults  ) 
 

void TimeBar::update_highlights  ) 
 

Definition at line 253 of file timebar.C.

References MWindow::edl, EDL::equivalent(), LocalSession::get_inpoint(), LocalSession::get_outpoint(), LocalSession::get_selectionend(), LocalSession::get_selectionstart(), in_point, labels, EDL::local_session, mwindow, out_point, and LabelGUI::position.

Referenced by TrackCanvas::button_press_event(), TrackCanvas::do_edit_handles(), TrackCanvas::do_plugin_handles(), MTimeBar::select_label(), select_region(), ZoomBar::set_selection(), and update_cursor().

void TimeBar::update_labels  ) 
 

Definition at line 189 of file timebar.C.

References get_edl(), LocalSession::get_selectionend(), LocalSession::get_selectionstart(), LabelGUI::get_y(), gui, labels, EDL::labels, EDL::local_session, mwindow, LabelGUI::pixel, Label::position, position_to_pixel(), and LabelGUI::reposition().

Referenced by update().

void TimeBar::update_points  ) 
 

Definition at line 290 of file timebar.C.

References get_edl(), LocalSession::get_inpoint(), LocalSession::get_outpoint(), in_point, LocalSession::inpoint_valid(), EDL::local_session, mwindow, out_point, LocalSession::outpoint_valid(), LabelGUI::pixel, LabelGUI::position, position_to_pixel(), and LabelGUI::reposition().

Referenced by update().

void TimeBar::update_presentations  ) 
 

Definition at line 374 of file timebar.C.

Referenced by update().

void TimeBar::update_preview  )  [virtual]
 

Reimplemented in CTimeBar, and VTimeBar.

Definition at line 675 of file timebar.C.

Referenced by move_preview().


Member Data Documentation

int TimeBar::current_operation
 

Definition at line 155 of file timebar.h.

Referenced by button_release_event(), create_objects(), cursor_motion_event(), move_preview(), repeat_event(), test_preview(), and update_cursor().

double TimeBar::edl_length [private]
 

Definition at line 172 of file timebar.h.

Referenced by get_edl_length(), get_preview_pixels(), and move_preview().

BC_WindowBase* TimeBar::gui
 

Reimplemented in CTimeBar, MTimeBar, and VTimeBar.

Definition at line 150 of file timebar.h.

Referenced by update_labels().

InPointGUI* TimeBar::in_point [private]
 

Definition at line 162 of file timebar.h.

Referenced by create_objects(), update_highlights(), update_points(), and ~TimeBar().

ArrayList<LabelGUI*> TimeBar::labels [private]
 

Definition at line 161 of file timebar.h.

Referenced by update_highlights(), update_labels(), and ~TimeBar().

MWindow* TimeBar::mwindow
 

Definition at line 149 of file timebar.h.

Referenced by button_press_event(), button_release_event(), cursor_motion_event(), draw_range(), MTimeBar::draw_range(), MTimeBar::draw_time(), get_edl(), CTimeBar::get_edl(), MTimeBar::position_to_pixel(), repeat_event(), VTimeBar::resize_event(), MTimeBar::resize_event(), CTimeBar::resize_event(), VTimeBar::select_label(), MTimeBar::select_label(), CTimeBar::select_label(), select_region(), update_cursor(), update_highlights(), update_labels(), and update_points().

OutPointGUI* TimeBar::out_point [private]
 

Definition at line 163 of file timebar.h.

Referenced by create_objects(), update_highlights(), update_points(), and ~TimeBar().

ArrayList<PresentationGUI*> TimeBar::presentations [private]
 

Definition at line 164 of file timebar.h.

Referenced by ~TimeBar().

int TimeBar::start_cursor_x [private]
 

Definition at line 173 of file timebar.h.

Referenced by move_preview(), and test_preview().

double TimeBar::start_position [private]
 

Definition at line 168 of file timebar.h.

Referenced by move_preview(), and test_preview().

double TimeBar::starting_end_position [private]
 

Definition at line 170 of file timebar.h.

Referenced by move_preview(), and test_preview().

double TimeBar::starting_start_position [private]
 

Definition at line 169 of file timebar.h.

Referenced by move_preview(), and test_preview().

double TimeBar::time_per_pixel [private]
 

Definition at line 171 of file timebar.h.

Referenced by MTimeBar::draw_range(), get_edl_length(), get_preview_pixels(), move_preview(), and position_to_pixel().


The documentation for this class was generated from the following files:
Generated on Sun Jan 8 13:39:26 2006 for Cinelerra-svn by  doxygen 1.4.4