Remove redundant '*' in many doxygen style comments
This commit is contained in:
parent
62a05d003c
commit
944406f4a3
38 changed files with 356 additions and 356 deletions
|
|
@ -32,12 +32,12 @@ namespace dialogs {
|
|||
|
||||
/**
|
||||
* The space in pixels to pad the border of Lumiera dialog boxes.
|
||||
**/
|
||||
*/
|
||||
static const int BorderPadding = 8;
|
||||
|
||||
/**
|
||||
* The spacing for VBoxes and HBoxes in Lumiera dialogs.
|
||||
**/
|
||||
*/
|
||||
static const int BoxSpacing = 6;
|
||||
|
||||
} // namespace dialogs
|
||||
|
|
|
|||
|
|
@ -45,7 +45,7 @@ public:
|
|||
* @param title The string for the title of this dialog.
|
||||
* @param default_name The name that will be shown by default in the
|
||||
* edit box of the dialog.
|
||||
**/
|
||||
*/
|
||||
NameChooser(Gtk::Window &parent, const Glib::ustring title,
|
||||
const Glib::ustring default_name);
|
||||
|
||||
|
|
@ -53,7 +53,7 @@ public:
|
|||
* Gets the current name of the chosen in the dialog.
|
||||
* @return Returns the name currently typed into the edit box of the
|
||||
* dialog.
|
||||
**/
|
||||
*/
|
||||
const Glib::ustring get_name() const;
|
||||
|
||||
private:
|
||||
|
|
|
|||
|
|
@ -82,33 +82,33 @@ public:
|
|||
|
||||
/**
|
||||
* Returns the name of the application
|
||||
**/
|
||||
*/
|
||||
static const Glib::ustring get_app_title();
|
||||
|
||||
/**
|
||||
* Returns the version number of the application
|
||||
**/
|
||||
*/
|
||||
static const Glib::ustring get_app_version();
|
||||
|
||||
/**
|
||||
* Returns the copyright of the application
|
||||
**/
|
||||
*/
|
||||
static const Glib::ustring get_app_copyright();
|
||||
|
||||
/**
|
||||
* Returns the website of the application
|
||||
**/
|
||||
*/
|
||||
static const Glib::ustring get_app_website();
|
||||
|
||||
/**
|
||||
* Returns tn alphabetical list of the application's authors
|
||||
**/
|
||||
*/
|
||||
static const std::vector<Glib::ustring> get_app_authors();
|
||||
|
||||
protected:
|
||||
/**
|
||||
* The application window manager object
|
||||
**/
|
||||
*/
|
||||
WindowManager windowManager;
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -41,18 +41,18 @@ namespace model {
|
|||
public:
|
||||
/**
|
||||
* Constructor
|
||||
**/
|
||||
*/
|
||||
ClipTrack();
|
||||
|
||||
/**
|
||||
* Gets a string representation of the track that is suitable for debugging
|
||||
**/
|
||||
*/
|
||||
std::string
|
||||
print_track();
|
||||
|
||||
/**
|
||||
* Gets the list of clips associated with this track.
|
||||
**/
|
||||
*/
|
||||
lumiera::observable_list< boost::shared_ptr<Clip> >&
|
||||
getClipList(void);
|
||||
|
||||
|
|
|
|||
|
|
@ -48,58 +48,58 @@ namespace model {
|
|||
public:
|
||||
/**
|
||||
* Constructor
|
||||
**/
|
||||
*/
|
||||
Clip();
|
||||
|
||||
/**
|
||||
* Gets the begin time of this clip.
|
||||
**/
|
||||
*/
|
||||
gavl_time_t
|
||||
getBegin() const;
|
||||
|
||||
/**
|
||||
* Gets the end time of this clip.
|
||||
**/
|
||||
*/
|
||||
gavl_time_t
|
||||
getEnd() const;
|
||||
|
||||
/**
|
||||
* Gets the name of this clip.
|
||||
**/
|
||||
*/
|
||||
const std::string
|
||||
getName() const;
|
||||
|
||||
/**
|
||||
* Check whether or not the clip will be playing during the given time.
|
||||
**/
|
||||
*/
|
||||
bool
|
||||
isPlayingAt(lumiera::Time position) const;
|
||||
|
||||
/**
|
||||
* Sets the begin time of this clip.
|
||||
* @param[in] begin The new begin time to set this clip to.
|
||||
**/
|
||||
*/
|
||||
void
|
||||
setBegin(gavl_time_t begin);
|
||||
|
||||
/**
|
||||
* Sets the end time of this clip.
|
||||
* @param[in] end The new end time to set this clip to.
|
||||
**/
|
||||
*/
|
||||
void
|
||||
setEnd(gavl_time_t end);
|
||||
|
||||
/**
|
||||
* Sets the name of this clip.
|
||||
* @param[in] name The new name to set this clip to.
|
||||
**/
|
||||
*/
|
||||
void
|
||||
setName(const std::string &name);
|
||||
|
||||
/**
|
||||
* A signal which fires when the name changes.
|
||||
* @return Returns the signal. The signal sends the new name for the clip.
|
||||
**/
|
||||
*/
|
||||
sigc::signal<void, std::string>
|
||||
signalNameChanged() const;
|
||||
|
||||
|
|
@ -107,12 +107,12 @@ namespace model {
|
|||
|
||||
/**
|
||||
* The name of this clip.
|
||||
**/
|
||||
*/
|
||||
std::string name;
|
||||
|
||||
/**
|
||||
* A signal which fires when the name changes.
|
||||
**/
|
||||
*/
|
||||
sigc::signal<void, std::string> nameChangedSignal;
|
||||
|
||||
// TODO: Use a good measure of duration, probably TimeSpan.
|
||||
|
|
|
|||
|
|
@ -33,20 +33,20 @@ namespace model {
|
|||
|
||||
/**
|
||||
* A class representation of a grouping of tracks.
|
||||
**/
|
||||
*/
|
||||
class GroupTrack : public ParentTrack
|
||||
{
|
||||
public:
|
||||
/**
|
||||
* Constructor
|
||||
**/
|
||||
*/
|
||||
GroupTrack();
|
||||
|
||||
/**
|
||||
* Produces a human readable debug string representation of this
|
||||
* track.
|
||||
* @return Returns the human readable string.
|
||||
**/
|
||||
*/
|
||||
std::string print_track();
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -37,7 +37,7 @@ namespace model {
|
|||
/**
|
||||
* ParentTrack is the abstract base class of all tracks that can parent
|
||||
* children.
|
||||
**/
|
||||
*/
|
||||
class ParentTrack :
|
||||
public Track,
|
||||
public boost::enable_shared_from_this<ParentTrack>
|
||||
|
|
@ -45,20 +45,20 @@ class ParentTrack :
|
|||
protected:
|
||||
/**
|
||||
* Constructor
|
||||
**/
|
||||
*/
|
||||
ParentTrack();
|
||||
|
||||
public:
|
||||
|
||||
/**
|
||||
* Gets a read-only reference to the the list of child tracks.
|
||||
**/
|
||||
*/
|
||||
const std::list< boost::shared_ptr<Track> >&
|
||||
get_child_tracks() const;
|
||||
|
||||
/**
|
||||
* Gets read-write access to the list of child tracks.
|
||||
**/
|
||||
*/
|
||||
lumiera::observable_list< boost::shared_ptr<Track> >&
|
||||
get_child_track_list();
|
||||
|
||||
|
|
@ -66,7 +66,7 @@ public:
|
|||
* Returns true if this track can own any child tracks.
|
||||
* @return Returns true because all classed derrived from ParentTrack
|
||||
* can.
|
||||
**/
|
||||
*/
|
||||
bool can_host_children() const;
|
||||
|
||||
/**
|
||||
|
|
@ -74,7 +74,7 @@ public:
|
|||
* track.
|
||||
* @param The model track to try and remove.
|
||||
* @return Returns true if the track was successfully removed.
|
||||
**/
|
||||
*/
|
||||
bool remove_descendant_track(const boost::shared_ptr<Track> track);
|
||||
|
||||
/**
|
||||
|
|
@ -83,14 +83,14 @@ public:
|
|||
* @param child The child track to find the parent of.
|
||||
* @return Returns the parent track if one was found, or an empty
|
||||
* shared_ptr if none was found.
|
||||
**/
|
||||
*/
|
||||
boost::shared_ptr<ParentTrack>
|
||||
find_descendant_track_parent(boost::shared_ptr<Track> child);
|
||||
|
||||
protected:
|
||||
/**
|
||||
* The internal list of child tracks of this parent.
|
||||
**/
|
||||
*/
|
||||
lumiera::observable_list< boost::shared_ptr<Track> > tracks;
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -37,20 +37,20 @@ class Track;
|
|||
/**
|
||||
* A class representation of a sequence.
|
||||
* @remarks Sequence objects are also the roots of track trees.
|
||||
**/
|
||||
*/
|
||||
class Sequence : public ParentTrack
|
||||
{
|
||||
public:
|
||||
/**
|
||||
* Constructor
|
||||
**/
|
||||
*/
|
||||
Sequence();
|
||||
|
||||
/**
|
||||
* Produces a human readable debug string representation of this
|
||||
* track.
|
||||
* @return Returns the human readable string.
|
||||
**/
|
||||
*/
|
||||
std::string print_track();
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -37,65 +37,65 @@ class ParentTrack;
|
|||
/**
|
||||
* The model representation of a track. This is the abstract base class
|
||||
* for all types of track that are implemented.
|
||||
**/
|
||||
*/
|
||||
class Track
|
||||
{
|
||||
protected:
|
||||
/**
|
||||
* Constructor
|
||||
**/
|
||||
*/
|
||||
Track();
|
||||
|
||||
public:
|
||||
|
||||
/**
|
||||
* Returns true if this track can own any child tracks.
|
||||
**/
|
||||
*/
|
||||
virtual bool
|
||||
can_host_children () const;
|
||||
|
||||
/**
|
||||
* Gets the list of child tracks.
|
||||
**/
|
||||
*/
|
||||
virtual const std::list< boost::shared_ptr<Track> >&
|
||||
get_child_tracks () const;
|
||||
|
||||
/**
|
||||
* Gets the enabled status of this track, i.e. if the track is to be rendered.
|
||||
**/
|
||||
*/
|
||||
bool
|
||||
getEnabled () const;
|
||||
|
||||
/**
|
||||
* Gets the locked status of this track, i.e. if the track can be edited.
|
||||
**/
|
||||
*/
|
||||
bool
|
||||
getLocked () const;
|
||||
|
||||
/**
|
||||
* Gets the name of this track.
|
||||
**/
|
||||
*/
|
||||
const std::string
|
||||
get_name () const;
|
||||
|
||||
/**
|
||||
* Sets the enabled status of this track, i.e. if the track is to be rendered.
|
||||
* @param[in] name The new enabled status.
|
||||
**/
|
||||
*/
|
||||
void
|
||||
setEnabled (bool enabled);
|
||||
|
||||
/**
|
||||
* Gets the locked status of this track, i.e. if the track can be edited.
|
||||
* @param[in] name The new locked status.
|
||||
**/
|
||||
*/
|
||||
void
|
||||
setLocked (bool locked);
|
||||
|
||||
/**
|
||||
* Sets the name of this track.
|
||||
* @param[in] name The new name to set this track to.
|
||||
**/
|
||||
*/
|
||||
void
|
||||
set_name (const std::string &name);
|
||||
|
||||
|
|
@ -105,7 +105,7 @@ public:
|
|||
* @param child The child track to find the parent of.
|
||||
* @return Returns the parent track if one was found, or an empty
|
||||
* shared_ptr if none was found.
|
||||
**/
|
||||
*/
|
||||
virtual boost::shared_ptr<ParentTrack>
|
||||
find_descendant_track_parent (boost::shared_ptr<Track> child);
|
||||
|
||||
|
|
@ -113,7 +113,7 @@ public:
|
|||
* A signal which fires when the enabled status changes.
|
||||
* @return Returns the signal. The signal sends the new name for the
|
||||
* track.
|
||||
**/
|
||||
*/
|
||||
sigc::signal<void, bool>
|
||||
signalEnabledChanged () const;
|
||||
|
||||
|
|
@ -121,7 +121,7 @@ public:
|
|||
* A signal which fires when the locked status changes changes.
|
||||
* @return Returns the signal. The signal sends the new name for the
|
||||
* track.
|
||||
**/
|
||||
*/
|
||||
sigc::signal<void, bool>
|
||||
signalLockedChanged () const;
|
||||
|
||||
|
|
@ -129,7 +129,7 @@ public:
|
|||
* A signal which fires when the name changes.
|
||||
* @return Returns the signal. The signal sends the new name for the
|
||||
* track.
|
||||
**/
|
||||
*/
|
||||
sigc::signal<void, std::string>
|
||||
signalNameChanged () const;
|
||||
|
||||
|
|
@ -137,7 +137,7 @@ public:
|
|||
* A debugging helper function that prints this track, and all it's
|
||||
* child tracks in a human-readable form.
|
||||
* @return Returns the human readable string.
|
||||
**/
|
||||
*/
|
||||
std::string
|
||||
print_branch ();
|
||||
|
||||
|
|
@ -145,7 +145,7 @@ public:
|
|||
* A pure-virtual function which is the base of functions that print
|
||||
* this track in human readable form.
|
||||
* @return Returns the human readable string.
|
||||
**/
|
||||
*/
|
||||
virtual std::string
|
||||
print_track () = 0;
|
||||
|
||||
|
|
@ -153,7 +153,7 @@ protected:
|
|||
/**
|
||||
* An object used internally as a return value for when there's no
|
||||
* children.
|
||||
**/
|
||||
*/
|
||||
static const std::list< boost::shared_ptr<Track> > NoChildren;
|
||||
|
||||
/**
|
||||
|
|
@ -161,14 +161,14 @@ protected:
|
|||
* @param indentation The level of recursion into the tree. This value
|
||||
* is used to specify the width of indentation to print with.
|
||||
* @return Returns the human readable string.
|
||||
**/
|
||||
*/
|
||||
std::string
|
||||
print_branch_recursive (const unsigned int indentation);
|
||||
|
||||
private:
|
||||
/**
|
||||
* The name of this track.
|
||||
**/
|
||||
*/
|
||||
std::string name;
|
||||
|
||||
/**
|
||||
|
|
@ -183,17 +183,17 @@ private:
|
|||
|
||||
/**
|
||||
* A signal which fires when the enabled status changes.
|
||||
**/
|
||||
*/
|
||||
sigc::signal<void, bool> enabledChangedSignal;
|
||||
|
||||
/**
|
||||
* A signal which fires when the locked status changes.
|
||||
**/
|
||||
*/
|
||||
sigc::signal<void, bool> lockedChangedSignal;
|
||||
|
||||
/**
|
||||
* A signal which fires when the name changes.
|
||||
**/
|
||||
*/
|
||||
sigc::signal<void, std::string> nameChangedSignal;
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -35,7 +35,7 @@ namespace output {
|
|||
|
||||
/**
|
||||
* Supported Displayer formats
|
||||
**/
|
||||
*/
|
||||
typedef enum {
|
||||
DISPLAY_NONE,
|
||||
DISPLAY_YUV,
|
||||
|
|
|
|||
|
|
@ -43,7 +43,7 @@ namespace output {
|
|||
/**
|
||||
* GdkDisplayer is a class which is responsible for rendering a video
|
||||
* image via GDK.
|
||||
**/
|
||||
*/
|
||||
class GdkDisplayer : public Displayer
|
||||
{
|
||||
public:
|
||||
|
|
@ -56,7 +56,7 @@ public:
|
|||
* must be greater than zero.
|
||||
* @param[in] height The height of the video image in pixels. This
|
||||
* value must be greater than zero.
|
||||
**/
|
||||
*/
|
||||
GdkDisplayer( Gtk::Widget *drawing_area, int width, int height );
|
||||
|
||||
/**
|
||||
|
|
@ -79,7 +79,7 @@ private:
|
|||
/**
|
||||
* The widget that video will be drawn into.
|
||||
* @remarks This value must be a valid pointer.
|
||||
**/
|
||||
*/
|
||||
Gtk::Widget *drawingArea;
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -49,7 +49,7 @@ namespace output {
|
|||
/**
|
||||
* XvDisplayer is a class which is responsible for rendering a video
|
||||
* image via XVideo.
|
||||
**/
|
||||
*/
|
||||
class XvDisplayer : public Displayer
|
||||
{
|
||||
public:
|
||||
|
|
@ -61,12 +61,12 @@ public:
|
|||
* must be greater than zero.
|
||||
* @param height The height of the video image in pixels. This value
|
||||
* must be greater than zero.
|
||||
**/
|
||||
*/
|
||||
XvDisplayer( Gtk::Widget *drawing_area, int width, int height );
|
||||
|
||||
/**
|
||||
* Destructor
|
||||
**/
|
||||
*/
|
||||
~XvDisplayer();
|
||||
|
||||
/**
|
||||
|
|
@ -89,45 +89,45 @@ private:
|
|||
* port.
|
||||
* @remarks This value is false until the constructor has finished
|
||||
* successfully.
|
||||
**/
|
||||
*/
|
||||
bool gotPort;
|
||||
|
||||
/**
|
||||
* The current port being used.
|
||||
* @remarks This value is meaninless unless gotPort is true.
|
||||
**/
|
||||
*/
|
||||
unsigned int grabbedPort;
|
||||
|
||||
/**
|
||||
* The widget that video will be drawn into.
|
||||
* @remarks This value must be a valid pointer.
|
||||
**/
|
||||
*/
|
||||
Gtk::Widget *drawingArea;
|
||||
|
||||
/**
|
||||
* The display that video will be drawn into.
|
||||
**/
|
||||
*/
|
||||
Display *display;
|
||||
|
||||
/**
|
||||
* The X11 window that video will be drawn into.
|
||||
**/
|
||||
*/
|
||||
Window window;
|
||||
|
||||
/**
|
||||
* The graphics context which will be used when rednering video.
|
||||
**/
|
||||
*/
|
||||
GC gc;
|
||||
|
||||
/**
|
||||
* The shared memory image object which video will be written into.
|
||||
**/
|
||||
*/
|
||||
XvImage *xvImage;
|
||||
|
||||
/**
|
||||
* Info about the shared memory segment.
|
||||
* @remarks shmInfo.shmaddr is set to NULL, when the SHM is detached.
|
||||
**/
|
||||
*/
|
||||
XShmSegmentInfo shmInfo;
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -38,20 +38,20 @@ public:
|
|||
* Contructor.
|
||||
* @param panel_manager The owner panel manager widget.
|
||||
* @param dock_item The GdlDockItem that will host this panel.
|
||||
**/
|
||||
*/
|
||||
AssetsPanel(workspace::PanelManager &panel_manager,
|
||||
GdlDockItem *dock_item);
|
||||
|
||||
/**
|
||||
* Get the title of the panel.
|
||||
* @return Returns a pointer to the string title of the panel.
|
||||
**/
|
||||
*/
|
||||
static const char* get_title();
|
||||
|
||||
/**
|
||||
* Get the stock id for this type panel.
|
||||
* @return Returns a pointer to the string stock id of the panel.
|
||||
**/
|
||||
*/
|
||||
static const gchar* get_stock_id();
|
||||
|
||||
protected:
|
||||
|
|
|
|||
|
|
@ -53,7 +53,7 @@ protected:
|
|||
* @param dock_item The GdlDockItem that will host this panel.
|
||||
* @param long_name This title of the panel
|
||||
* @param stock_id The stock_id of this panel.
|
||||
**/
|
||||
*/
|
||||
Panel(workspace::PanelManager &panel_manager,
|
||||
GdlDockItem *dock_item, const gchar* long_name,
|
||||
const gchar *stock_id);
|
||||
|
|
@ -61,7 +61,7 @@ protected:
|
|||
public:
|
||||
/**
|
||||
* Destructor
|
||||
**/
|
||||
*/
|
||||
~Panel();
|
||||
|
||||
/**
|
||||
|
|
@ -73,7 +73,7 @@ public:
|
|||
* Shows or hides the panel.
|
||||
* @param show A value of true will show the panel, false will hide
|
||||
* it.
|
||||
**/
|
||||
*/
|
||||
void show(bool show = true);
|
||||
|
||||
/**
|
||||
|
|
@ -83,53 +83,53 @@ public:
|
|||
|
||||
/**
|
||||
* Iconifys the panel.
|
||||
**/
|
||||
*/
|
||||
void iconify();
|
||||
|
||||
/**
|
||||
* Returns true if the panel is currently iconified.
|
||||
**/
|
||||
*/
|
||||
bool is_iconified() const;
|
||||
|
||||
/**
|
||||
* Locks or unlocks the panel.
|
||||
* @param show A value of true will lock the panel, false will unlock
|
||||
* it.
|
||||
**/
|
||||
*/
|
||||
void lock(bool show = true);
|
||||
|
||||
/**
|
||||
* Returns true if the panel is currently locked.
|
||||
**/
|
||||
*/
|
||||
bool is_locked() const;
|
||||
|
||||
/**
|
||||
* Returns a reference to the owner panel manager object.
|
||||
**/
|
||||
*/
|
||||
workspace::PanelManager& get_panel_manager();
|
||||
|
||||
public:
|
||||
|
||||
/**
|
||||
* A signal that fires when the dock item is hidden.
|
||||
**/
|
||||
*/
|
||||
sigc::signal<void>& signal_hide_panel();
|
||||
|
||||
protected:
|
||||
|
||||
/**
|
||||
* Returns a reference to the owner workspace window object.
|
||||
**/
|
||||
*/
|
||||
workspace::WorkspaceWindow& get_workspace_window();
|
||||
|
||||
/**
|
||||
* Returns a reference to the project
|
||||
**/
|
||||
*/
|
||||
model::Project& get_project();
|
||||
|
||||
/**
|
||||
* Returns a reference to the controller
|
||||
**/
|
||||
*/
|
||||
controller::Controller& get_controller();
|
||||
|
||||
private:
|
||||
|
|
@ -137,35 +137,35 @@ private:
|
|||
/**
|
||||
* An event handler for when dockItem is hidden.
|
||||
* @param func_data A pointer to the panel that owns dock_item
|
||||
**/
|
||||
*/
|
||||
static void on_item_hidden(GdlDockItem*, Panel *panel);
|
||||
|
||||
protected:
|
||||
|
||||
/**
|
||||
* The owner panel manager object.
|
||||
**/
|
||||
*/
|
||||
workspace::PanelManager &panelManager;
|
||||
|
||||
/**
|
||||
* The owner dock item widget that will host the widgets in this
|
||||
* panel.
|
||||
**/
|
||||
*/
|
||||
GdlDockItem* dockItem;
|
||||
|
||||
/**
|
||||
* A signal that fires when the dock item is hidden.
|
||||
**/
|
||||
*/
|
||||
sigc::signal<void> hidePanelSignal;
|
||||
|
||||
/**
|
||||
* The id of the hide panel handler.
|
||||
**/
|
||||
*/
|
||||
gulong hide_panel_handler_id;
|
||||
|
||||
/**
|
||||
* The panel bar to attach to the panel grip.
|
||||
**/
|
||||
*/
|
||||
widgets::PanelBar panelBar;
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -51,25 +51,25 @@ public:
|
|||
* Constructor.
|
||||
* @param panel_manager The owner panel manager widget.
|
||||
* @param dock_item The GdlDockItem that will host this panel.
|
||||
**/
|
||||
*/
|
||||
TimelinePanel(workspace::PanelManager &panel_manager,
|
||||
GdlDockItem *dock_item);
|
||||
|
||||
/**
|
||||
* Destructor
|
||||
**/
|
||||
*/
|
||||
~TimelinePanel();
|
||||
|
||||
/**
|
||||
* Get the title of the panel.
|
||||
* @return Returns a pointer to the string title of the panel.
|
||||
**/
|
||||
*/
|
||||
static const char* get_title();
|
||||
|
||||
/**
|
||||
* Get the stock id for this type panel.
|
||||
* @return Returns a pointer to the string stock id of the panel.
|
||||
**/
|
||||
*/
|
||||
static const gchar* get_stock_id();
|
||||
|
||||
private:
|
||||
|
|
@ -91,13 +91,13 @@ private:
|
|||
|
||||
/**
|
||||
* An event handler for when the list of sequences changes.
|
||||
**/
|
||||
*/
|
||||
void on_sequence_list_changed();
|
||||
|
||||
/**
|
||||
* An event handler for when a new sequence is chosen in the
|
||||
* sequenceChooser.
|
||||
**/
|
||||
*/
|
||||
void on_sequence_chosen();
|
||||
|
||||
private:
|
||||
|
|
@ -125,26 +125,26 @@ private:
|
|||
|
||||
/**
|
||||
* The definition of the sequence chooser combo box columns
|
||||
**/
|
||||
*/
|
||||
class SequenceChooserColumns : public Gtk::TreeModel::ColumnRecord
|
||||
{
|
||||
public:
|
||||
/**
|
||||
* Constructor
|
||||
**/
|
||||
*/
|
||||
SequenceChooserColumns()
|
||||
{ add(nameColumn); add(sequenceColumn); }
|
||||
|
||||
/**
|
||||
* An invisible column which will be used to identify the sequence
|
||||
* of a row.
|
||||
**/
|
||||
*/
|
||||
Gtk::TreeModelColumn< boost::weak_ptr<model::Sequence> >
|
||||
sequenceColumn;
|
||||
|
||||
/**
|
||||
* The column to use as the label for the combo box widget items.
|
||||
**/
|
||||
*/
|
||||
Gtk::TreeModelColumn< Glib::ustring > nameColumn;
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -36,7 +36,7 @@ namespace panels {
|
|||
|
||||
/**
|
||||
* A panel to display the video output.
|
||||
**/
|
||||
*/
|
||||
class ViewerPanel : public Panel
|
||||
{
|
||||
public:
|
||||
|
|
@ -44,20 +44,20 @@ public:
|
|||
* Contructor.
|
||||
* @param panel_manager The owner panel manager widget.
|
||||
* @param dock_item The GdlDockItem that will host this panel.
|
||||
**/
|
||||
*/
|
||||
ViewerPanel(workspace::PanelManager &panel_manager,
|
||||
GdlDockItem *dock_item);
|
||||
|
||||
/**
|
||||
* Get the title of the panel.
|
||||
* @return Returns a pointer to the string title of the panel.
|
||||
**/
|
||||
*/
|
||||
static const char* get_title();
|
||||
|
||||
/**
|
||||
* Get the stock id for this type panel.
|
||||
* @return Returns a pointer to the string stock id of the panel.
|
||||
**/
|
||||
*/
|
||||
static const gchar* get_stock_id();
|
||||
|
||||
protected:
|
||||
|
|
@ -68,7 +68,7 @@ protected:
|
|||
|
||||
/**
|
||||
* The video display widget, which will display the video.
|
||||
**/
|
||||
*/
|
||||
widgets::VideoDisplayWidget display;
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -38,14 +38,14 @@ namespace util {
|
|||
* @param rect The rect to test.
|
||||
* @return Returns true if the point is within the rectangle, false if
|
||||
* not.
|
||||
**/
|
||||
*/
|
||||
bool pt_in_rect(const Gdk::Point &point, const Gdk::Rectangle &rect);
|
||||
|
||||
/**
|
||||
* Tests whether two rectangles overlap.
|
||||
* @param a The first rectangle.
|
||||
* @param b The second rectangle.
|
||||
**/
|
||||
*/
|
||||
bool rects_overlap(const Gdk::Rectangle &a, const Gdk::Rectangle &b);
|
||||
|
||||
} // util
|
||||
|
|
|
|||
|
|
@ -33,26 +33,26 @@ namespace widgets {
|
|||
|
||||
/**
|
||||
* A modified toolbar widget for use in dialogs.
|
||||
**/
|
||||
*/
|
||||
class ButtonBar : public Gtk::Box
|
||||
{
|
||||
public:
|
||||
/**
|
||||
* Constructor
|
||||
**/
|
||||
*/
|
||||
ButtonBar();
|
||||
|
||||
/**
|
||||
* Append a widget to the button bar.
|
||||
* @param widget The button to append.
|
||||
**/
|
||||
*/
|
||||
void append(Widget &widget);
|
||||
|
||||
/**
|
||||
* Append a button to the button bar, and connect a click event.
|
||||
* @param button The button to append.
|
||||
* @param clicked_slot The slot to connect.
|
||||
**/
|
||||
*/
|
||||
template<class T> void append(MiniWrapper<T>& button,
|
||||
const sigc::slot<void>& clicked_slot)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -33,7 +33,7 @@ namespace widgets {
|
|||
|
||||
/**
|
||||
* A button that display a menu when clicked on.
|
||||
**/
|
||||
*/
|
||||
class MenuButton : public Gtk::ToggleButton
|
||||
{
|
||||
public:
|
||||
|
|
@ -44,7 +44,7 @@ public:
|
|||
* such as a Gtk::Pixmap or Gtk::Box. If you just wish to add a
|
||||
* Gtk::Label, you may want to use the
|
||||
* Gtk::MenuButton(const Glib::ustring& label) ctor directly instead.
|
||||
**/
|
||||
*/
|
||||
MenuButton();
|
||||
|
||||
/**
|
||||
|
|
@ -52,7 +52,7 @@ public:
|
|||
* item.
|
||||
* @remarks Stock ids have identifiers like Gtk::Stock::OK and
|
||||
* Gtk::Stock::APPLY.
|
||||
**/
|
||||
*/
|
||||
MenuButton(const Gtk::StockID& stock_id);
|
||||
|
||||
/**
|
||||
|
|
@ -60,7 +60,7 @@ public:
|
|||
* @remarks Create a button with the given label inside. You won't be
|
||||
* able to add a widget in this button since it already has a
|
||||
* Gtk::Label in it
|
||||
**/
|
||||
*/
|
||||
MenuButton(const Glib::ustring& label, bool mnemonic=false);
|
||||
|
||||
/**
|
||||
|
|
@ -68,29 +68,29 @@ public:
|
|||
* on.
|
||||
* @return Returns a reference to the menu that will be clicked on.
|
||||
* This reference can be used to populate the menu with items.
|
||||
**/
|
||||
*/
|
||||
Gtk::Menu& get_menu();
|
||||
|
||||
/**
|
||||
* Pops up the menu.
|
||||
**/
|
||||
*/
|
||||
void popup();
|
||||
|
||||
protected:
|
||||
|
||||
/**
|
||||
* An internal method which sets up the button at creat time.
|
||||
**/
|
||||
*/
|
||||
void setup_button();
|
||||
|
||||
/**
|
||||
* An event handler for when the button is pressed.
|
||||
**/
|
||||
*/
|
||||
void on_pressed();
|
||||
|
||||
/**
|
||||
* An event handler for when the menu is closed.
|
||||
**/
|
||||
*/
|
||||
void on_menu_deactivated();
|
||||
|
||||
private:
|
||||
|
|
@ -104,35 +104,35 @@ private:
|
|||
* coordinates.
|
||||
* @param push_in This value is set to true if the menu should be
|
||||
* pushed in if it collides with the edge of the screen.
|
||||
**/
|
||||
*/
|
||||
void on_menu_position(int& x, int& y, bool& push_in);
|
||||
|
||||
private:
|
||||
|
||||
/**
|
||||
* The hBox for the layout of image, caption and arrow.
|
||||
**/
|
||||
*/
|
||||
Gtk::HBox hBox;
|
||||
|
||||
/**
|
||||
* The image that will optionally display an icon.
|
||||
**/
|
||||
*/
|
||||
Gtk::Image image;
|
||||
|
||||
/**
|
||||
* The caption text label to show on the button.
|
||||
**/
|
||||
*/
|
||||
Gtk::Label caption;
|
||||
|
||||
/**
|
||||
* The arrow widget that will be displayed to hint the user that this
|
||||
* button is a drop-down.
|
||||
**/
|
||||
*/
|
||||
Gtk::Arrow arrow;
|
||||
|
||||
/**
|
||||
* The internal menu object which is the popup menu of this widget.
|
||||
**/
|
||||
*/
|
||||
Gtk::Menu menu;
|
||||
|
||||
};
|
||||
|
|
|
|||
|
|
@ -33,7 +33,7 @@ namespace widgets {
|
|||
|
||||
/**
|
||||
* A wrapper for ToolButton-like Button widgets
|
||||
**/
|
||||
*/
|
||||
template<class T>
|
||||
class MiniWrapper : public T
|
||||
{
|
||||
|
|
@ -46,7 +46,7 @@ public:
|
|||
* @param icon_size The size of the image to show.
|
||||
* @remarks Stock ids have identifiers like Gtk::Stock::OK and
|
||||
* Gtk::Stock::APPLY.
|
||||
**/
|
||||
*/
|
||||
MiniWrapper(const Gtk::StockID& stock_id,
|
||||
const Gtk::IconSize icon_size = Gtk::ICON_SIZE_LARGE_TOOLBAR) :
|
||||
image(stock_id, icon_size)
|
||||
|
|
@ -60,7 +60,7 @@ public:
|
|||
* Sets a new image from a stock-id for this button.
|
||||
* @param stock_id The stock_id of the image.
|
||||
* @param icon_size The size of the image to show.
|
||||
**/
|
||||
*/
|
||||
void set_stock_id(const Gtk::StockID& stock_id,
|
||||
const Gtk::IconSize icon_size = Gtk::ICON_SIZE_LARGE_TOOLBAR)
|
||||
{
|
||||
|
|
@ -71,18 +71,18 @@ private:
|
|||
|
||||
/**
|
||||
* The image widget for the button.
|
||||
**/
|
||||
*/
|
||||
Gtk::Image image;
|
||||
};
|
||||
|
||||
/**
|
||||
* A ToolButton-like widget
|
||||
**/
|
||||
*/
|
||||
typedef MiniWrapper<Gtk::Button> MiniButton;
|
||||
|
||||
/**
|
||||
* A ToggleToolButton-like widget
|
||||
**/
|
||||
*/
|
||||
typedef MiniWrapper<Gtk::ToggleButton> MiniToggleButton;
|
||||
|
||||
} // gui
|
||||
|
|
|
|||
|
|
@ -39,7 +39,7 @@ namespace widgets {
|
|||
|
||||
/**
|
||||
* A container widget for widgets to be displayed on GDL panels grips.
|
||||
**/
|
||||
*/
|
||||
class PanelBar : public Gtk::Box
|
||||
{
|
||||
public:
|
||||
|
|
@ -49,21 +49,21 @@ public:
|
|||
* @param owner_panel The panel that is the parent of this panel bar.
|
||||
* @param stock_id The stock id with a name and an icon for this
|
||||
* panel.
|
||||
**/
|
||||
*/
|
||||
PanelBar(panels::Panel &owner_panel, const gchar *stock_id);
|
||||
|
||||
private:
|
||||
|
||||
/**
|
||||
* Sets up panelButton, populating it with menu items.
|
||||
**/
|
||||
*/
|
||||
void setup_panel_button();
|
||||
|
||||
private:
|
||||
|
||||
/**
|
||||
* An override to intercept realize events.
|
||||
**/
|
||||
*/
|
||||
void on_realize();
|
||||
|
||||
/**
|
||||
|
|
@ -75,7 +75,7 @@ private:
|
|||
|
||||
/**
|
||||
* An override to intercept size allocate events.
|
||||
**/
|
||||
*/
|
||||
void on_size_allocate(Gtk::Allocation& allocation);
|
||||
|
||||
private:
|
||||
|
|
@ -84,50 +84,50 @@ private:
|
|||
* An event handler for when a panel type is chosen.
|
||||
* @param type_index The index of the panel description that will be
|
||||
* instantiated.
|
||||
**/
|
||||
*/
|
||||
void on_panel_type(int type_index);
|
||||
|
||||
/**
|
||||
* An event handler for when the "Hide" menu item is clicked
|
||||
**/
|
||||
*/
|
||||
void on_hide();
|
||||
|
||||
/**
|
||||
* Event handler for when the "Lock" menu item is clicked
|
||||
**/
|
||||
*/
|
||||
void on_lock();
|
||||
|
||||
/**
|
||||
* Event handler for when the split panel menu item is clicked
|
||||
* @param split_direction The direction to split in.
|
||||
**/
|
||||
*/
|
||||
void on_split_panel(Gtk::Orientation split_direction);
|
||||
|
||||
private:
|
||||
|
||||
/**
|
||||
* A reference to the owner panel object.
|
||||
**/
|
||||
*/
|
||||
panels::Panel &panel;
|
||||
|
||||
/**
|
||||
* The panel menu drop-down button widget, that will be displayed in
|
||||
* the corner of the bar.
|
||||
**/
|
||||
*/
|
||||
MenuButton panelButton;
|
||||
|
||||
/**
|
||||
* A pointer to the lock menu item.
|
||||
* @remarks This value will remain NULL until after setup_panel_button
|
||||
* has been called.
|
||||
**/
|
||||
*/
|
||||
Gtk::CheckMenuItem *lockItem;
|
||||
|
||||
/**
|
||||
* The bar window.
|
||||
* @remarks This window is used only to set the cursor as an arrow for
|
||||
* any child widgets.
|
||||
**/
|
||||
*/
|
||||
Glib::RefPtr<Gdk::Window> window;
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -75,13 +75,13 @@ public:
|
|||
* Gets a pointer to the current state object.
|
||||
* @return The state object that the timeline widget is currently
|
||||
* working with.
|
||||
**/
|
||||
*/
|
||||
boost::shared_ptr<timeline::TimelineState> get_state();
|
||||
|
||||
/**
|
||||
* Replaces the current TimelineState object with another.
|
||||
* @param new_state The new state to swap in.
|
||||
**/
|
||||
*/
|
||||
void set_state(boost::shared_ptr<timeline::TimelineState> new_state);
|
||||
|
||||
/**
|
||||
|
|
@ -89,7 +89,7 @@ public:
|
|||
* given point on the timeline still.
|
||||
* @param zoom_size The number of steps to zoom by. The scale factor
|
||||
* is 1.25^(-zoom_size).
|
||||
**/
|
||||
*/
|
||||
void zoom_view(int zoom_size);
|
||||
|
||||
/**
|
||||
|
|
@ -140,7 +140,7 @@ private:
|
|||
|
||||
/**
|
||||
* Updates the timeline widget to match the state of the track tree.
|
||||
**/
|
||||
*/
|
||||
void update_tracks();
|
||||
|
||||
void freeze_update_tracks();
|
||||
|
|
@ -150,7 +150,7 @@ private:
|
|||
/**
|
||||
* Ensures timeline UI tracks have been created for every model track
|
||||
* present in sequence.
|
||||
**/
|
||||
*/
|
||||
void create_timeline_tracks();
|
||||
|
||||
/**
|
||||
|
|
@ -158,7 +158,7 @@ private:
|
|||
* creating UI timeline tracks for each model track if they don't
|
||||
* already exist in trackMap.
|
||||
* @param list The parent track of the branch.
|
||||
**/
|
||||
*/
|
||||
void create_timeline_tracks_from_branch(
|
||||
boost::shared_ptr<model::Track> modelTrack);
|
||||
|
||||
|
|
@ -167,7 +167,7 @@ private:
|
|||
* @param modelTrack The model track to create a timeline track from.
|
||||
* @return The timeline track created, or an empty shared_ptr if
|
||||
* modelTrack has an unreckognised type (this is an error condition).
|
||||
**/
|
||||
*/
|
||||
boost::shared_ptr<timeline::Track>
|
||||
create_timeline_track_from_modelTrack(
|
||||
boost::shared_ptr<model::Track> modelTrack);
|
||||
|
|
@ -175,7 +175,7 @@ private:
|
|||
/**
|
||||
* Removes any UI tracks which no longer have corresponding model
|
||||
* tracks present in the sequence.
|
||||
**/
|
||||
*/
|
||||
void remove_orphaned_tracks();
|
||||
|
||||
void search_orphaned_tracks_in_branch(
|
||||
|
|
@ -190,7 +190,7 @@ private:
|
|||
* @returns The timeline UI track found, or an empty shared_ptr if
|
||||
* modelTrack has no corresponding timeline UI track (this is an
|
||||
* error condition).
|
||||
**/
|
||||
*/
|
||||
boost::shared_ptr<timeline::Track> lookup_timeline_track(
|
||||
boost::shared_ptr<model::Track> modelTrack) const;
|
||||
|
||||
|
|
@ -209,7 +209,7 @@ private:
|
|||
/**
|
||||
* An event handler that receives notifications for when the
|
||||
* sequence's track tree has been changed.
|
||||
**/
|
||||
*/
|
||||
void on_track_list_changed();
|
||||
|
||||
void on_playback_period_drag_released();
|
||||
|
|
@ -221,7 +221,7 @@ private:
|
|||
/**
|
||||
* Helper to get the sequence object from the state.
|
||||
* @return Returns a shared pointer to the sequence.
|
||||
**/
|
||||
*/
|
||||
boost::shared_ptr<model::Sequence> sequence() const;
|
||||
|
||||
// ----- Other Functions ----- //
|
||||
|
|
@ -234,7 +234,7 @@ protected:
|
|||
/**
|
||||
* The state that will be used as the data source for this timeline
|
||||
* widget.
|
||||
**/
|
||||
*/
|
||||
boost::shared_ptr<timeline::TimelineState> state;
|
||||
|
||||
// Model Data
|
||||
|
|
@ -245,7 +245,7 @@ protected:
|
|||
* @remarks The tree structure is maintained by the model, and as the
|
||||
* widget is updated with update_tracks, timeline tracks are added and
|
||||
* removed from the map in correspondence with the tree.
|
||||
**/
|
||||
*/
|
||||
std::map<boost::shared_ptr<model::Track>,
|
||||
boost::shared_ptr<timeline::Track> >
|
||||
trackMap;
|
||||
|
|
|
|||
|
|
@ -119,7 +119,7 @@ protected:
|
|||
/**
|
||||
* The event handler for when the TimelineWidget's state object is
|
||||
* replaced.
|
||||
**/
|
||||
*/
|
||||
void on_state_changed();
|
||||
|
||||
/* ===== Internals ===== */
|
||||
|
|
@ -157,7 +157,7 @@ private:
|
|||
* A helper function to get the view window
|
||||
* @remarks This function must not be called unless the TimlineWidget
|
||||
* has a valid state.
|
||||
**/
|
||||
*/
|
||||
TimelineViewWindow& view_window() const;
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -45,13 +45,13 @@ namespace timeline {
|
|||
public:
|
||||
/**
|
||||
* Constructor.
|
||||
**/
|
||||
*/
|
||||
ClipTrack(TimelineWidget &timelineWidget,
|
||||
boost::shared_ptr<model::ClipTrack> track);
|
||||
|
||||
/**
|
||||
* Draw the track in the timeline.
|
||||
**/
|
||||
*/
|
||||
void
|
||||
draw_track(Cairo::RefPtr<Cairo::Context> cairo,
|
||||
TimelineViewWindow* const window) const;
|
||||
|
|
@ -60,7 +60,7 @@ namespace timeline {
|
|||
* Gets the clip that is occupying the given time. If there is no track, return a NULL
|
||||
* pointer.
|
||||
* @param the given time
|
||||
**/
|
||||
*/
|
||||
boost::shared_ptr<timeline::Clip>
|
||||
getClipAt(lumiera::Time position) const;
|
||||
|
||||
|
|
@ -68,40 +68,40 @@ namespace timeline {
|
|||
|
||||
/**
|
||||
* Ensures timeline UI clips have been created for every model clip in track.
|
||||
**/
|
||||
*/
|
||||
void
|
||||
createTimelineClips();
|
||||
|
||||
/**
|
||||
* Gets the modelTrack as a ClipTrack.
|
||||
**/
|
||||
*/
|
||||
boost::shared_ptr<model::ClipTrack>
|
||||
getModelTrack ();
|
||||
|
||||
/**
|
||||
* An event handler that receives notifications for when the models clip list has been
|
||||
* changed.
|
||||
**/
|
||||
*/
|
||||
void
|
||||
onClipListChanged();
|
||||
|
||||
/**
|
||||
* Removes any UI clips which no longer have corresponding model clips present in the
|
||||
* sequence.
|
||||
**/
|
||||
*/
|
||||
void
|
||||
removeOrphanedClips();
|
||||
|
||||
/**
|
||||
* Update the attached timeline clips.
|
||||
**/
|
||||
*/
|
||||
void
|
||||
updateClips();
|
||||
|
||||
/**
|
||||
* The clipMap maps model clips to timeline widget clips which are responsible for the
|
||||
* UI representation of a clip.
|
||||
**/
|
||||
*/
|
||||
std::map<boost::shared_ptr<model::Clip>,
|
||||
boost::shared_ptr<timeline::Clip> >
|
||||
clipMap;
|
||||
|
|
|
|||
|
|
@ -48,7 +48,7 @@ namespace timeline {
|
|||
|
||||
/**
|
||||
* Sets the selected status of the clip.
|
||||
**/
|
||||
*/
|
||||
void
|
||||
setSelected (bool state);
|
||||
|
||||
|
|
|
|||
|
|
@ -119,14 +119,14 @@ private:
|
|||
|
||||
/**
|
||||
* Applies a given function to all the widgets in the container.
|
||||
**/
|
||||
*/
|
||||
void forall_vfunc(gboolean include_internals, GtkCallback callback,
|
||||
gpointer callback_data);
|
||||
|
||||
/**
|
||||
* An event handler that is called when a widget is removed from the
|
||||
* container.
|
||||
**/
|
||||
*/
|
||||
void on_remove(Widget* widget);
|
||||
|
||||
/* ===== Events ===== */
|
||||
|
|
@ -167,7 +167,7 @@ private:
|
|||
* @param depth The depth within the tree of this track. This is used
|
||||
* to control the amount of indention.
|
||||
* @param offset The vertical offset of the headers in pixels.
|
||||
**/
|
||||
*/
|
||||
void draw_header_decoration(
|
||||
boost::shared_ptr<model::Track> modelTrack,
|
||||
const Gdk::Rectangle &clip_rect);
|
||||
|
|
@ -181,7 +181,7 @@ private:
|
|||
* track was found.
|
||||
* @remarks If the return value is going to be NULL, an ENSURE will
|
||||
* fail.
|
||||
**/
|
||||
*/
|
||||
boost::shared_ptr<timeline::Track> lookup_timeline_track(
|
||||
boost::shared_ptr<model::Track> modelTrack);
|
||||
|
||||
|
|
@ -194,7 +194,7 @@ private:
|
|||
* top of the Z-order.
|
||||
* @param node The window of node's track header will be raised, as
|
||||
* well as all it's descendant nodes.
|
||||
**/
|
||||
*/
|
||||
void raise_recursive(
|
||||
TimelineLayoutHelper::TrackTree::iterator_base node);
|
||||
|
||||
|
|
@ -230,7 +230,7 @@ private:
|
|||
* the user right clicks on the header container.
|
||||
* @remarks The context menu will be displayed when the user's right
|
||||
* click is not processed by track headers.
|
||||
**/
|
||||
*/
|
||||
Gtk::Menu contextMenu;
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -38,7 +38,7 @@ class Track;
|
|||
/**
|
||||
* TimelineHeaderWidget is the base implementation of all header widgets
|
||||
* and acts as a containers for the header controls.
|
||||
**/
|
||||
*/
|
||||
class TimelineHeaderWidget : public Gtk::Container
|
||||
{
|
||||
public:
|
||||
|
|
@ -46,7 +46,7 @@ public:
|
|||
* Constructor
|
||||
* @param timeline_track The timeline track that owns this header
|
||||
* widget
|
||||
**/
|
||||
*/
|
||||
TimelineHeaderWidget(timeline::Track &timeline_track);
|
||||
|
||||
void set_child_widget(Widget& child);
|
||||
|
|
@ -103,24 +103,24 @@ private:
|
|||
|
||||
/**
|
||||
* Applies a given function to all the widgets in the container.
|
||||
**/
|
||||
*/
|
||||
void forall_vfunc(gboolean include_internals, GtkCallback callback,
|
||||
gpointer callback_data);
|
||||
|
||||
/**
|
||||
* A notification of when a widget is added to this container.
|
||||
**/
|
||||
*/
|
||||
void on_add(Gtk::Widget* child);
|
||||
|
||||
/**
|
||||
* A notification of when a widget is removed to this container.
|
||||
**/
|
||||
*/
|
||||
void on_remove(Gtk::Widget* child);
|
||||
|
||||
/**
|
||||
* An implementation of the a container function that specifies the
|
||||
* types of child widget that this widget will accept.
|
||||
**/
|
||||
*/
|
||||
GtkType child_type_vfunc() const;
|
||||
|
||||
/**
|
||||
|
|
@ -137,19 +137,19 @@ private:
|
|||
|
||||
/**
|
||||
* A reference to the timeline track that owns this widget.
|
||||
**/
|
||||
*/
|
||||
timeline::Track &track;
|
||||
|
||||
/**
|
||||
* The widget placed inside this container.
|
||||
* @remarks This value is set to NULL if the container is empty
|
||||
**/
|
||||
*/
|
||||
Gtk::Widget* widget;
|
||||
|
||||
/**
|
||||
* This value is true if the mouse hovering over the expander.
|
||||
* @remarks This value is updated by on_motion_notify_event
|
||||
**/
|
||||
*/
|
||||
bool hoveringExpander;
|
||||
|
||||
/**
|
||||
|
|
@ -157,12 +157,12 @@ private:
|
|||
* expander.
|
||||
* @remarks This value is updated by on_button_press_event and
|
||||
* on_button_release_event
|
||||
**/
|
||||
*/
|
||||
bool clickedExpander;
|
||||
|
||||
/**
|
||||
* The widget's window object.
|
||||
**/
|
||||
*/
|
||||
Glib::RefPtr<Gdk::Window> gdkWindow;
|
||||
|
||||
//----- Style Values -----//
|
||||
|
|
@ -170,13 +170,13 @@ private:
|
|||
/**
|
||||
* The style value which indicates the amount of padding around each
|
||||
* header pixels.
|
||||
**/
|
||||
*/
|
||||
int margin;
|
||||
|
||||
/**
|
||||
* The style value which indicates the size to draw the expand button
|
||||
* in pixels.
|
||||
**/
|
||||
*/
|
||||
int expand_button_size;
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -56,7 +56,7 @@ class TimelineLayoutHelper : public boost::noncopyable
|
|||
public:
|
||||
/**
|
||||
* Definition of the layout track tree type.
|
||||
**/
|
||||
*/
|
||||
typedef lumiera::tree< boost::shared_ptr<model::Track> > TrackTree;
|
||||
|
||||
public:
|
||||
|
|
@ -64,7 +64,7 @@ public:
|
|||
* Constructor.
|
||||
* @param owner The timeline widget which is the owner of this helper
|
||||
* class.
|
||||
**/
|
||||
*/
|
||||
TimelineLayoutHelper(TimelineWidget &owner);
|
||||
|
||||
/**
|
||||
|
|
@ -73,19 +73,19 @@ public:
|
|||
* @remarks The current layout tree will be deleted and replaced with
|
||||
* the clone.
|
||||
* @see add_branch
|
||||
**/
|
||||
*/
|
||||
void clone_tree_from_sequence();
|
||||
|
||||
/**
|
||||
* Gets a reference to the helper's layout tree.
|
||||
* @return Returns a reference to the helper's layout tree.
|
||||
**/
|
||||
*/
|
||||
TrackTree& get_layout_tree();
|
||||
|
||||
/**
|
||||
* Recalculates the track layout from layoutTree.
|
||||
* @see layout_headers_recursive
|
||||
**/
|
||||
*/
|
||||
void update_layout();
|
||||
|
||||
/**
|
||||
|
|
@ -97,7 +97,7 @@ public:
|
|||
* @remarks This function is only usable after update_layout() has
|
||||
* been called on a valid tree of tracks.
|
||||
* @see update_layout()
|
||||
**/
|
||||
*/
|
||||
boost::optional<Gdk::Rectangle> get_track_header_rect(
|
||||
boost::weak_ptr<timeline::Track> track);
|
||||
|
||||
|
|
@ -111,7 +111,7 @@ public:
|
|||
* usable after update_layout() has been called on a valid tree of
|
||||
* tracks.
|
||||
* @see update_layout()
|
||||
**/
|
||||
*/
|
||||
boost::shared_ptr<timeline::Track> header_from_point(
|
||||
Gdk::Point point);
|
||||
|
||||
|
|
@ -125,31 +125,31 @@ public:
|
|||
* usable after update_layout() has been called on a valid tree of
|
||||
* tracks.
|
||||
* @see update_layout()
|
||||
**/
|
||||
*/
|
||||
boost::shared_ptr<timeline::Track> track_from_y(int y);
|
||||
|
||||
/**
|
||||
* Begins to drag the track under mouse_point, if there is one.
|
||||
* @param mouse_point The mouse point to begin dragging from, measured
|
||||
* in pixels from the top left of the header container widget.
|
||||
**/
|
||||
*/
|
||||
boost::shared_ptr<timeline::Track>
|
||||
begin_dragging_track(const Gdk::Point &mouse_point);
|
||||
|
||||
/**
|
||||
* Drops the dragging track.
|
||||
* @param apply true if the model tree should be modified.
|
||||
**/
|
||||
*/
|
||||
void end_dragging_track(bool apply);
|
||||
|
||||
/**
|
||||
* Returns true if a track is being dragged.
|
||||
**/
|
||||
*/
|
||||
bool is_dragging_track() const;
|
||||
|
||||
/**
|
||||
* Gets the iterator of the layout tree node that is being dragged.
|
||||
**/
|
||||
*/
|
||||
TrackTree::pre_order_iterator get_dragging_track_iter() const;
|
||||
|
||||
/**
|
||||
|
|
@ -160,7 +160,7 @@ public:
|
|||
* @remarks drag_to_point may only be called after
|
||||
* begin_dragging_track and before end_dragging_point have been
|
||||
* called.
|
||||
**/
|
||||
*/
|
||||
void drag_to_point(const Gdk::Point &mouse_point);
|
||||
|
||||
/**
|
||||
|
|
@ -168,12 +168,12 @@ public:
|
|||
* @remarks This function is only on returns a valid value fter
|
||||
* update_layout() has been called on a valid tree of tracks.
|
||||
* @see update_layout()
|
||||
**/
|
||||
*/
|
||||
int get_total_height() const;
|
||||
|
||||
/**
|
||||
* Returns true if the layout is currently animating.
|
||||
**/
|
||||
*/
|
||||
bool is_animating() const;
|
||||
|
||||
/**
|
||||
|
|
@ -182,7 +182,7 @@ public:
|
|||
* @param modelTrack The model track to look for.
|
||||
* @return Returns the model iterator of layoutTree.end() if no
|
||||
* iterator was found.
|
||||
**/
|
||||
*/
|
||||
TrackTree::pre_order_iterator iterator_from_track(
|
||||
boost::shared_ptr<model::Track> modelTrack);
|
||||
|
||||
|
|
@ -192,7 +192,7 @@ public:
|
|||
* @param parent_iterator The parent of the branch to measure. This
|
||||
* node and all the child nodes will be included in the measurement.
|
||||
* @return Returns the height of the branch in pixels.
|
||||
**/
|
||||
*/
|
||||
int measure_branch_height(TrackTree::iterator_base parent_iterator);
|
||||
|
||||
protected:
|
||||
|
|
@ -200,50 +200,50 @@ protected:
|
|||
/**
|
||||
* An enum to specify the relationship between a tree node, and
|
||||
* another node which is going to be inserted adjacent.
|
||||
**/
|
||||
*/
|
||||
enum TreeRelation
|
||||
{
|
||||
/**
|
||||
* No relation
|
||||
**/
|
||||
*/
|
||||
None,
|
||||
|
||||
/**
|
||||
* The node will be inserted immediately before this one.
|
||||
**/
|
||||
*/
|
||||
Before,
|
||||
|
||||
/**
|
||||
* The node will be inserted immediately after this one.
|
||||
**/
|
||||
*/
|
||||
After,
|
||||
|
||||
/**
|
||||
* The node will be inserted as the first child of this one.
|
||||
**/
|
||||
*/
|
||||
FirstChild,
|
||||
|
||||
/**
|
||||
* The node will be inserted as the last child of this one.
|
||||
**/
|
||||
*/
|
||||
LastChild
|
||||
};
|
||||
|
||||
/**
|
||||
* A structure used to specify where a track will be dropped when
|
||||
* dragging ends.
|
||||
**/
|
||||
*/
|
||||
struct DropPoint
|
||||
{
|
||||
/**
|
||||
* Specifies the target node onto which the dragging track will be
|
||||
* dropped.
|
||||
**/
|
||||
*/
|
||||
TrackTree::pre_order_iterator target;
|
||||
|
||||
/**
|
||||
* The where to drop the dragging track in relation to target.
|
||||
**/
|
||||
*/
|
||||
TreeRelation relation;
|
||||
};
|
||||
|
||||
|
|
@ -258,7 +258,7 @@ protected:
|
|||
* @param[in] parent A pointer to the model track whose children
|
||||
* will be added to the layout tree branch.
|
||||
* @see clone_tree_from_sequence()
|
||||
**/
|
||||
*/
|
||||
void add_branch(TrackTree::iterator_base parent_iterator,
|
||||
boost::shared_ptr<model::Track> parent);
|
||||
|
||||
|
|
@ -280,7 +280,7 @@ protected:
|
|||
* false if any of them are collapsed.
|
||||
* @return Returns the height of the branch in pixels.
|
||||
* @see update_layout()
|
||||
**/
|
||||
*/
|
||||
int layout_headers_recursive(
|
||||
TrackTree::iterator_base parent_iterator, const int branch_offset,
|
||||
const int header_width, const int indent_width, const int depth,
|
||||
|
|
@ -295,18 +295,18 @@ protected:
|
|||
* track was found.
|
||||
* @remarks If the return value is going to be NULL, an ENSURE will
|
||||
* fail.
|
||||
**/
|
||||
*/
|
||||
boost::shared_ptr<timeline::Track> lookup_timeline_track(
|
||||
boost::shared_ptr<model::Track> modelTrack);
|
||||
|
||||
/**
|
||||
* A helper function which kicks off the animation timer.
|
||||
**/
|
||||
*/
|
||||
void begin_animation();
|
||||
|
||||
/**
|
||||
* The animation timer tick callback.
|
||||
**/
|
||||
*/
|
||||
bool on_animation_tick();
|
||||
|
||||
/**
|
||||
|
|
@ -318,7 +318,7 @@ protected:
|
|||
* point is hovering over it, and if it is, it works out what part of
|
||||
* the header, and therefore what drop location the user us gesturally
|
||||
* pointing to.
|
||||
**/
|
||||
*/
|
||||
TimelineLayoutHelper::DropPoint
|
||||
attempt_drop(TrackTree::pre_order_iterator target,
|
||||
const Gdk::Point &point);
|
||||
|
|
@ -327,31 +327,31 @@ protected:
|
|||
* Drops the dragging track to a new location in the layout tree as
|
||||
* specified by drop.
|
||||
* @param[in] drop The point in the tree to drop onto.
|
||||
**/
|
||||
*/
|
||||
void apply_drop_to_layout_tree(const DropPoint &drop);
|
||||
|
||||
/**
|
||||
* Drops the dragging track to a new location in the model tree as
|
||||
* specified by drop.
|
||||
* @param[in] drop The point in the tree to drop onto.
|
||||
**/
|
||||
*/
|
||||
void apply_drop_to_modelTree(const DropPoint &drop);
|
||||
|
||||
/**
|
||||
* Helper to get the sequence object from the state.
|
||||
* @return Returns a shared pointer to the sequence.
|
||||
**/
|
||||
*/
|
||||
boost::shared_ptr<model::Sequence> get_sequence() const;
|
||||
|
||||
protected:
|
||||
/**
|
||||
* The owner timeline widget as provided to the constructor.
|
||||
**/
|
||||
*/
|
||||
TimelineWidget &timelineWidget;
|
||||
|
||||
/**
|
||||
* The layout tree.
|
||||
**/
|
||||
*/
|
||||
TrackTree layoutTree;
|
||||
|
||||
/**
|
||||
|
|
@ -360,7 +360,7 @@ protected:
|
|||
* need to be perpetually recalculated. This cache is regenerated by
|
||||
* the update_layout method.
|
||||
* @see update_layout()
|
||||
**/
|
||||
*/
|
||||
std::map<boost::weak_ptr<timeline::Track>, Gdk::Rectangle>
|
||||
headerBoxes;
|
||||
|
||||
|
|
@ -368,7 +368,7 @@ protected:
|
|||
* The total height of the track tree layout in pixels. This value
|
||||
* is only valid after layout_headers has been called.
|
||||
* @see update_layout()
|
||||
**/
|
||||
*/
|
||||
int totalHeight;
|
||||
|
||||
/**
|
||||
|
|
@ -376,13 +376,13 @@ protected:
|
|||
* dragged.
|
||||
* @remarks draggingTrackIter.node is set to NULL when no drag is
|
||||
* taking place.
|
||||
**/
|
||||
*/
|
||||
TrackTree::pre_order_iterator draggingTrackIter;
|
||||
|
||||
/**
|
||||
* The offset of the mouse relative to the top-left corner of the
|
||||
* dragging track.
|
||||
**/
|
||||
*/
|
||||
Gdk::Point dragStartOffset;
|
||||
|
||||
/**
|
||||
|
|
@ -390,26 +390,26 @@ protected:
|
|||
* top left of the whole layout.
|
||||
* @remarks This value is changed by begin_dragging_track and
|
||||
* drag_to_point
|
||||
**/
|
||||
*/
|
||||
Gdk::Point dragPoint;
|
||||
|
||||
/**
|
||||
* The total height of the dragging branch in pixels.
|
||||
* @remarks This value is updated by begin_dragging_track
|
||||
**/
|
||||
*/
|
||||
int dragBranchHeight;
|
||||
|
||||
/**
|
||||
* The tree point the the user is currently hovering on.
|
||||
* @remarks This value is updated by drag_to_point.
|
||||
**/
|
||||
*/
|
||||
DropPoint dropPoint;
|
||||
|
||||
/**
|
||||
* The connection to the animation timer.
|
||||
* @see begin_animation()
|
||||
* @see on_animation_tick()
|
||||
**/
|
||||
*/
|
||||
sigc::connection animationTimer;
|
||||
|
||||
/**
|
||||
|
|
@ -417,7 +417,7 @@ protected:
|
|||
* @remarks This value is recalculated by update_layout()
|
||||
* @see update_layout()
|
||||
* @see on_animation_tick()
|
||||
**/
|
||||
*/
|
||||
bool animating;
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -109,7 +109,7 @@ private:
|
|||
/**
|
||||
* The event handler for when the TimelineWidget's state object is
|
||||
* replaced.
|
||||
**/
|
||||
*/
|
||||
void on_state_changed();
|
||||
|
||||
private:
|
||||
|
|
@ -170,7 +170,7 @@ private:
|
|||
|
||||
/**
|
||||
* A helper function to get the view window
|
||||
**/
|
||||
*/
|
||||
TimelineViewWindow& view_window() const;
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -41,7 +41,7 @@ namespace timeline {
|
|||
* TimelineState is a container for the state data for TimelineWidget.
|
||||
* @remarks TimelineState s can be swapped out so that TimelineWidget
|
||||
* can flip between different views.
|
||||
**/
|
||||
*/
|
||||
class TimelineState
|
||||
{
|
||||
public:
|
||||
|
|
@ -50,7 +50,7 @@ public:
|
|||
* Constructor
|
||||
* @param source_sequence The sequence on which the TimelineWidget
|
||||
* will operate when this TimelineState is attached.
|
||||
**/
|
||||
*/
|
||||
TimelineState(boost::shared_ptr<model::Sequence> source_sequence);
|
||||
|
||||
public:
|
||||
|
|
@ -58,13 +58,13 @@ public:
|
|||
/**
|
||||
* Gets the sequence that is attached to this timeline state object.
|
||||
* @return Returns a shared_ptr to the sequence object.
|
||||
**/
|
||||
*/
|
||||
boost::shared_ptr<model::Sequence> get_sequence() const;
|
||||
|
||||
/**
|
||||
* Gets a reference to the timeline view window object.
|
||||
* @return Returns the timeline view window object.
|
||||
**/
|
||||
*/
|
||||
timeline::TimelineViewWindow& get_view_window();
|
||||
|
||||
/**
|
||||
|
|
@ -120,13 +120,13 @@ public:
|
|||
|
||||
/**
|
||||
* A signal to notify when the selected period has changed.
|
||||
**/
|
||||
*/
|
||||
sigc::signal<void> selection_changed_signal() const;
|
||||
|
||||
/**
|
||||
* A signal to notify when the playback point or playback periods have
|
||||
* changed.
|
||||
**/
|
||||
*/
|
||||
sigc::signal<void> playback_changed_signal() const;
|
||||
|
||||
private:
|
||||
|
|
@ -136,53 +136,53 @@ private:
|
|||
* represent.
|
||||
* @remarks This pointer is set by the constructor and is constant, so
|
||||
* will not change in value during the lifetime of the class.
|
||||
**/
|
||||
*/
|
||||
boost::shared_ptr<model::Sequence> sequence;
|
||||
|
||||
// View State
|
||||
/**
|
||||
* The ViewWindow for the TimelineWidget display with.
|
||||
**/
|
||||
*/
|
||||
timeline::TimelineViewWindow viewWindow;
|
||||
|
||||
// Selection State
|
||||
|
||||
/**
|
||||
* The start time of the selection period.
|
||||
**/
|
||||
*/
|
||||
lumiera::Time selectionStart;
|
||||
|
||||
/**
|
||||
* The end time of the selection period.
|
||||
**/
|
||||
*/
|
||||
lumiera::Time selectionEnd;
|
||||
|
||||
/**
|
||||
* The start time of the playback period.
|
||||
**/
|
||||
*/
|
||||
lumiera::Time playbackPeriodStart;
|
||||
|
||||
/**
|
||||
* The end time of the playback period.
|
||||
**/
|
||||
*/
|
||||
lumiera::Time playbackPeriodEnd;
|
||||
|
||||
/**
|
||||
* The time of the playback point.
|
||||
**/
|
||||
*/
|
||||
lumiera::Time playbackPoint;
|
||||
|
||||
// Signals
|
||||
|
||||
/**
|
||||
* A signal to notify when the selected period has changed.
|
||||
**/
|
||||
*/
|
||||
sigc::signal<void> selectionChangedSignal;
|
||||
|
||||
/**
|
||||
* A signal to notify when the playback point or playback periods have
|
||||
* changed.
|
||||
**/
|
||||
*/
|
||||
sigc::signal<void> playbackChangedSignal;
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -132,12 +132,12 @@ protected:
|
|||
|
||||
/**
|
||||
* A helper function to get the state
|
||||
**/
|
||||
*/
|
||||
boost::shared_ptr<TimelineState> get_state() const;
|
||||
|
||||
/**
|
||||
* A helper function to get the view window
|
||||
**/
|
||||
*/
|
||||
TimelineViewWindow& view_window() const;
|
||||
|
||||
protected:
|
||||
|
|
|
|||
|
|
@ -45,7 +45,7 @@ class TimelineViewWindow;
|
|||
* Timeline tracks are created by the timeline widget to correspond to
|
||||
* model tracks. Timeline tracks are used to store UI specific state
|
||||
* data.
|
||||
**/
|
||||
*/
|
||||
class Track : public sigc::trackable
|
||||
{
|
||||
public:
|
||||
|
|
@ -54,7 +54,7 @@ public:
|
|||
* An enum used by the branch expand/collapse animation.
|
||||
* ExpandDirection represents whether the branch us being expanded or
|
||||
* collapsed, or neither.
|
||||
**/
|
||||
*/
|
||||
enum ExpandDirection
|
||||
{
|
||||
None,
|
||||
|
|
@ -70,7 +70,7 @@ public:
|
|||
|
||||
/**
|
||||
* Destructor
|
||||
**/
|
||||
*/
|
||||
~Track();
|
||||
|
||||
Gtk::Widget& get_header_widget();
|
||||
|
|
@ -89,14 +89,14 @@ public:
|
|||
* @return Returns true if the branch is expanded, false if it's
|
||||
* collapsed.
|
||||
* @see expand_collapse
|
||||
**/
|
||||
*/
|
||||
bool get_expanded() const;
|
||||
|
||||
/**
|
||||
* Expands or collapses this branch.
|
||||
* @param direction Specifies whether this branch should be expanded
|
||||
* or collapse. direction must not equal None
|
||||
**/
|
||||
*/
|
||||
void expand_collapse(ExpandDirection direction);
|
||||
|
||||
/**
|
||||
|
|
@ -108,34 +108,34 @@ public:
|
|||
* (and animating). When the branch is not animating this value has
|
||||
* an indeterminate value.
|
||||
* @see tick_expand_animation
|
||||
**/
|
||||
*/
|
||||
float get_expand_animation_state() const;
|
||||
|
||||
/**
|
||||
* Gets whether the branch is animation.
|
||||
* @return Returns true if the branch is animating, false if not.
|
||||
**/
|
||||
*/
|
||||
bool is_expand_animating() const;
|
||||
|
||||
/**
|
||||
* When this track is being animated, tick_expand_animation must be
|
||||
* called repeatedly to cause the animation to progress.
|
||||
**/
|
||||
*/
|
||||
void tick_expand_animation();
|
||||
|
||||
/**
|
||||
* Calculates the expander style, given the animation state.
|
||||
**/
|
||||
*/
|
||||
Gtk::ExpanderStyle get_expander_style() const;
|
||||
|
||||
/**
|
||||
*
|
||||
**/
|
||||
*/
|
||||
void show_header_context_menu(guint button, guint32 time);
|
||||
|
||||
/**
|
||||
* Draw the track
|
||||
**/
|
||||
*/
|
||||
virtual void draw_track(Cairo::RefPtr<Cairo::Context> cairo,
|
||||
TimelineViewWindow* const window)
|
||||
const = 0;
|
||||
|
|
@ -144,7 +144,7 @@ public:
|
|||
* Gets the clip that is occupying the given time.
|
||||
* The default implementation simply returns an empty pointer.
|
||||
* @param the given time
|
||||
**/
|
||||
*/
|
||||
virtual boost::shared_ptr<timeline::Clip>
|
||||
getClipAt(lumiera::Time position) const;
|
||||
|
||||
|
|
@ -152,32 +152,32 @@ private:
|
|||
|
||||
/**
|
||||
* Specifies the period of the expand animation in seconds.
|
||||
**/
|
||||
*/
|
||||
static const float ExpandAnimationPeriod;
|
||||
|
||||
/**
|
||||
* Event handler for when the enabled status changes.
|
||||
**/
|
||||
*/
|
||||
void onEnabledChanged(bool);
|
||||
|
||||
/**
|
||||
* Event handler for when the track name changes.
|
||||
**/
|
||||
*/
|
||||
void onNameChanged(std::string);
|
||||
|
||||
/**
|
||||
* Event handler for when the user requested to remove the track.
|
||||
**/
|
||||
*/
|
||||
void on_remove_track();
|
||||
|
||||
/**
|
||||
* Event handler for when the locked status changes.
|
||||
**/
|
||||
*/
|
||||
void onLockedChanged(bool);
|
||||
|
||||
/**
|
||||
* Event handler for when the user requested a name change.
|
||||
**/
|
||||
*/
|
||||
void on_set_name();
|
||||
|
||||
/**
|
||||
|
|
@ -205,7 +205,7 @@ private:
|
|||
/**
|
||||
* This bool is true if this branch is expanded. false if it is
|
||||
* collapsed.
|
||||
**/
|
||||
*/
|
||||
bool expanded;
|
||||
|
||||
/**
|
||||
|
|
@ -213,7 +213,7 @@ private:
|
|||
* is moving - if any.
|
||||
* @remarks If no animation is occuring, expandDirection is set to
|
||||
* None.
|
||||
**/
|
||||
*/
|
||||
ExpandDirection expandDirection;
|
||||
|
||||
/**
|
||||
|
|
@ -224,12 +224,12 @@ private:
|
|||
* 0.0 when the branch is fully collapsed (and animating). When the
|
||||
* branch is not animating this value has an indeterminate value.
|
||||
* @see tick_expand_animation
|
||||
**/
|
||||
*/
|
||||
double expandAnimationState;
|
||||
|
||||
/**
|
||||
* An internal timer used for the expand/collapse animation.
|
||||
**/
|
||||
*/
|
||||
boost::scoped_ptr<Glib::Timer> expand_timer;
|
||||
|
||||
//----- Header Widgets ------//
|
||||
|
|
|
|||
|
|
@ -40,7 +40,7 @@ namespace timeline {
|
|||
* TimelineViewWindow is a helper class for TimelineWidget which manages
|
||||
* the view window of the timeline: the zoom and shift. The class also
|
||||
* provides utility functions for handling time in the timeline.
|
||||
**/
|
||||
*/
|
||||
class TimelineViewWindow
|
||||
{
|
||||
public:
|
||||
|
|
@ -49,7 +49,7 @@ public:
|
|||
* Constructor
|
||||
* @param offset The initial view offset.
|
||||
* @param scale The initial scale.
|
||||
**/
|
||||
*/
|
||||
TimelineViewWindow(lumiera::Time offset, int64_t scale);
|
||||
|
||||
/**
|
||||
|
|
@ -84,14 +84,14 @@ public:
|
|||
* given point on the timeline still.
|
||||
* @param zoom_size The number of steps to zoom by. The scale factor
|
||||
* is 1.25^(-zoom_size).
|
||||
**/
|
||||
*/
|
||||
void zoom_view(int point, int zoom_size);
|
||||
|
||||
/**
|
||||
* Scrolls the view horizontally as a proportion of the view area.
|
||||
* @param shift_size The size of the shift in 1/256ths of the view
|
||||
* width.
|
||||
**/
|
||||
*/
|
||||
void shift_view(int view_width, int shift_size);
|
||||
|
||||
/**
|
||||
|
|
@ -99,7 +99,7 @@ public:
|
|||
* @param time The time value to convert.
|
||||
* @return Returns the x-value as pixels from the left hand edge of
|
||||
* the timeline body.
|
||||
**/
|
||||
*/
|
||||
int time_to_x(int64_t time) const;
|
||||
|
||||
/**
|
||||
|
|
@ -107,12 +107,12 @@ public:
|
|||
* @param x The x coordinte (as pixels from the left hand edge of
|
||||
* the timeline body) to convert.
|
||||
* @return Returns the time at the coordinate.
|
||||
**/
|
||||
*/
|
||||
lumiera::Time x_to_time(int x) const;
|
||||
|
||||
/**
|
||||
* A signal to indicate that the scale or offset have been changed.
|
||||
**/
|
||||
*/
|
||||
sigc::signal<void> changed_signal() const;
|
||||
|
||||
private:
|
||||
|
|
|
|||
|
|
@ -49,13 +49,13 @@ namespace workspace {
|
|||
|
||||
/**
|
||||
* The centralised manager of all lumiera-gui's windows.
|
||||
**/
|
||||
*/
|
||||
class WindowManager : private boost::noncopyable
|
||||
{
|
||||
public:
|
||||
/**
|
||||
* Initializes the window manager object
|
||||
**/
|
||||
*/
|
||||
void init();
|
||||
|
||||
/**
|
||||
|
|
@ -63,7 +63,7 @@ public:
|
|||
* controller
|
||||
* @param source_project The project to connect the window to.
|
||||
* @param source_controller The controller to connect the window to.
|
||||
**/
|
||||
*/
|
||||
void new_window(gui::model::Project &source_project,
|
||||
gui::controller::Controller &source_controller);
|
||||
|
||||
|
|
@ -71,7 +71,7 @@ public:
|
|||
* Sets the theme of the lumiera-gui's.
|
||||
* @param path This string must specify a path where a GTK stylesheet
|
||||
* will be found.
|
||||
**/
|
||||
*/
|
||||
bool set_theme(Glib::ustring path);
|
||||
|
||||
/**
|
||||
|
|
@ -82,7 +82,7 @@ public:
|
|||
* @param green The fallback green intensity.
|
||||
* @param blue The fallback blue intensity.
|
||||
* @return The loaded colour.
|
||||
**/
|
||||
*/
|
||||
static Cairo::RefPtr<Cairo::SolidPattern>
|
||||
read_style_colour_property (Gtk::Widget &widget, const gchar *property_name,
|
||||
guint16 red, guint16 green, guint16 blue);
|
||||
|
|
@ -91,7 +91,7 @@ private:
|
|||
|
||||
/**
|
||||
* An event handler for when a window has been closed.
|
||||
**/
|
||||
*/
|
||||
bool on_window_closed(GdkEventAny* event);
|
||||
|
||||
private:
|
||||
|
|
@ -102,18 +102,18 @@ private:
|
|||
*
|
||||
* It should be enabled when there is more than one window and disabled
|
||||
* otherwise.
|
||||
**/
|
||||
*/
|
||||
void update_close_window_in_menus();
|
||||
|
||||
/**
|
||||
* Registers the custom icon sizes.
|
||||
**/
|
||||
*/
|
||||
static void register_app_icon_sizes();
|
||||
|
||||
/**
|
||||
* Registers application stock items: icons and
|
||||
* labels associated with IDs
|
||||
**/
|
||||
*/
|
||||
static void register_stock_items();
|
||||
|
||||
/**
|
||||
|
|
@ -124,7 +124,7 @@ private:
|
|||
* @param label The user readable icon name for this icon.
|
||||
* @return Returns true if the icon was successfully loaded, returns
|
||||
* false otherwise.
|
||||
**/
|
||||
*/
|
||||
static bool add_stock_icon_set(
|
||||
const Glib::RefPtr<Gtk::IconFactory>& factory,
|
||||
const Glib::ustring& icon_name,
|
||||
|
|
@ -140,7 +140,7 @@ private:
|
|||
* @param wildcard This value is set to true if this icon is
|
||||
* wildcarded.
|
||||
* @return Returns true if the icon was loaded successfully.
|
||||
**/
|
||||
*/
|
||||
static bool add_stock_icon(Gtk::IconSet &icon_set,
|
||||
const Glib::ustring& icon_name, Gtk::IconSize size, bool wildcard);
|
||||
|
||||
|
|
@ -152,7 +152,7 @@ private:
|
|||
* @param wildcard This value is set to true if this icon is
|
||||
* wildcarded.
|
||||
* @return Returns true if the icon was loaded successfully.
|
||||
**/
|
||||
*/
|
||||
static bool add_theme_icon_source(Gtk::IconSet &icon_set,
|
||||
const Glib::ustring& icon_name, Gtk::IconSize size, bool wildcard);
|
||||
|
||||
|
|
@ -165,7 +165,7 @@ private:
|
|||
* @param wildcard This value is set to true if this icon is
|
||||
* wildcarded.
|
||||
* @return Returns true if the icon was loaded successfully.
|
||||
**/
|
||||
*/
|
||||
static bool add_non_theme_icon_source(Gtk::IconSet &icon_set,
|
||||
const Glib::ustring& base_dir, const Glib::ustring& icon_name,
|
||||
Gtk::IconSize size, bool wildcard);
|
||||
|
|
@ -178,7 +178,7 @@ private:
|
|||
* @param wildcard This value is set to true if this icon is
|
||||
* wildcarded.
|
||||
* @return Returns true if the icon was loaded successfully.
|
||||
**/
|
||||
*/
|
||||
static bool add_stock_icon_from_path(Glib::ustring path,
|
||||
Gtk::IconSet &icon_set, Gtk::IconSize size, bool wildcard);
|
||||
|
||||
|
|
@ -192,14 +192,14 @@ public:
|
|||
* The registered icon size for giant 48x48 px icons.
|
||||
* @remarks This value is set to BuiltinIconSize::ICON_SIZE_INVALID
|
||||
* until register_giant_icon_size is called.
|
||||
**/
|
||||
*/
|
||||
static Gtk::IconSize GiantIconSize;
|
||||
|
||||
/**
|
||||
* The registered icon size for giant 16x16 px icons.
|
||||
* @remarks This value is set to BuiltinIconSize::ICON_SIZE_INVALID
|
||||
* until register_app_icon_sizes is called.
|
||||
**/
|
||||
*/
|
||||
static Gtk::IconSize MenuIconSize;
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -46,13 +46,13 @@ public:
|
|||
/**
|
||||
* Constructor
|
||||
* @param workspace_window The owner workspace window.
|
||||
**/
|
||||
*/
|
||||
Actions(WorkspaceWindow &workspace_window);
|
||||
|
||||
/**
|
||||
* Populates a uiManager with the main set of actions.
|
||||
* @param uiManager A pointer to the uiManager to populate.
|
||||
**/
|
||||
*/
|
||||
void populate_main_actions(Glib::RefPtr<Gtk::UIManager> uiManager);
|
||||
|
||||
/* ===== Internals ===== */
|
||||
|
|
@ -61,7 +61,7 @@ private:
|
|||
/**
|
||||
* Populates a uiManager with actions for the Show Panel menu.
|
||||
* @param uiManager A pointer to the uiManager to populate.
|
||||
**/
|
||||
*/
|
||||
void populate_show_panel_actions(
|
||||
Glib::RefPtr<Gtk::UIManager> uiManager);
|
||||
|
||||
|
|
|
|||
|
|
@ -40,7 +40,7 @@ namespace workspace {
|
|||
|
||||
/**
|
||||
* A class to managers DockItem objects for WorkspaceWindow.
|
||||
**/
|
||||
*/
|
||||
class PanelManager
|
||||
{
|
||||
public:
|
||||
|
|
@ -49,12 +49,12 @@ public:
|
|||
* Constructor
|
||||
* @param workspace_window A reference to the owner WorkspaceWindow
|
||||
* object.
|
||||
**/
|
||||
*/
|
||||
PanelManager(WorkspaceWindow &workspace_window);
|
||||
|
||||
/**
|
||||
* Destructor.
|
||||
**/
|
||||
*/
|
||||
~PanelManager();
|
||||
|
||||
/**
|
||||
|
|
@ -62,30 +62,30 @@ public:
|
|||
* widgets.
|
||||
* @remarks This function must be called only once as the first call
|
||||
* after construction.
|
||||
**/
|
||||
*/
|
||||
void setup_dock();
|
||||
|
||||
/**
|
||||
* Gets a pointer to the dock object.
|
||||
* @remarks Note that this must not be called before setup_dock.
|
||||
**/
|
||||
*/
|
||||
GdlDock* get_dock() const;
|
||||
|
||||
/**
|
||||
* Gets a pointer to the dock bar.
|
||||
* @remarks Note that this must not be called before setup_dock.
|
||||
**/
|
||||
*/
|
||||
GdlDockBar* get_dock_bar() const;
|
||||
|
||||
/**
|
||||
* Returns a reference to the owner workspace window.
|
||||
**/
|
||||
*/
|
||||
WorkspaceWindow& get_workspace_window();
|
||||
|
||||
/**
|
||||
* Shows a panel given a description index.
|
||||
* @param description_index The index of the panel type to show.
|
||||
**/
|
||||
*/
|
||||
void show_panel(const int description_index);
|
||||
|
||||
/**
|
||||
|
|
@ -94,7 +94,7 @@ public:
|
|||
* @param old_panel The panel which will be transofrmed to a new type.
|
||||
* @param description_index The index of the panel description that
|
||||
* will be instantiated.
|
||||
**/
|
||||
*/
|
||||
void switch_panel(panels::Panel &old_panel,
|
||||
const int description_index);
|
||||
|
||||
|
|
@ -102,7 +102,7 @@ public:
|
|||
* Splits a panel into two panels of the same type.
|
||||
* @param panel The panel to split.
|
||||
* @param split_direction The direction to split the panel in.
|
||||
**/
|
||||
*/
|
||||
void split_panel(panels::Panel &panel,
|
||||
Gtk::Orientation split_direction);
|
||||
|
||||
|
|
@ -110,28 +110,28 @@ public:
|
|||
|
||||
/**
|
||||
* Gets the number of panel descriptions.
|
||||
**/
|
||||
*/
|
||||
static int get_panel_description_count();
|
||||
|
||||
/**
|
||||
* Gets a panel description's stock id.
|
||||
* @param index The index of the panel to retrieve.
|
||||
* @return Returns the stock id of a panel at this index.
|
||||
**/
|
||||
*/
|
||||
static const gchar* get_panel_stock_id(const int index);
|
||||
|
||||
/**
|
||||
* Gets a panel description's title.
|
||||
* @param index The index of the panel to retrieve.
|
||||
* @return Returns the title of a panel at this index.
|
||||
**/
|
||||
*/
|
||||
static const char* get_panel_title(int index);
|
||||
|
||||
private:
|
||||
|
||||
/**
|
||||
* Creates the standard panel layout.
|
||||
**/
|
||||
*/
|
||||
void create_panels();
|
||||
|
||||
/**
|
||||
|
|
@ -139,14 +139,14 @@ private:
|
|||
* @param class_name The name of the object class to search for.
|
||||
* @return Returns the index of the panel description found, or -1
|
||||
* if no description was found for this type.
|
||||
**/
|
||||
*/
|
||||
int find_panel_description(const char* class_name) const;
|
||||
|
||||
/**
|
||||
* Creates a panel by description index.
|
||||
* @param index The index of the description to instantiate.
|
||||
* @return Returns a pointer to the new instantiated panel object.
|
||||
**/
|
||||
*/
|
||||
panels::Panel* create_panel_by_index(const int index);
|
||||
|
||||
/**
|
||||
|
|
@ -154,7 +154,7 @@ private:
|
|||
* @param index The index of the description to instantiate.
|
||||
* @param dock_item The GdlDockItem to attach this panel to
|
||||
* @return Returns a pointer to the new instantiated panel object.
|
||||
**/
|
||||
*/
|
||||
panels::Panel* create_panel_by_index(
|
||||
const int index, GdlDockItem *dock_item);
|
||||
|
||||
|
|
@ -162,7 +162,7 @@ private:
|
|||
* Creates a panel by class name.
|
||||
* @param class_name The name of the object class to create.
|
||||
* @return Returns a pointer to the new instantiated panel object.
|
||||
**/
|
||||
*/
|
||||
panels::Panel* create_panel_by_name(const char* class_name);
|
||||
|
||||
/**
|
||||
|
|
@ -170,18 +170,18 @@ private:
|
|||
* @param panel The Panel to get the type of
|
||||
* @return Returns the index of the panel description found, or -1
|
||||
* if no description was found for this type.
|
||||
**/
|
||||
*/
|
||||
int get_panel_type(panels::Panel* const panel) const;
|
||||
|
||||
/**
|
||||
* Removes a panel from the panel list and deletes it.
|
||||
* @param panel The panel to remove and delete.
|
||||
**/
|
||||
*/
|
||||
void remove_panel(panels::Panel* const panel);
|
||||
|
||||
/**
|
||||
* Removes all panels from the panel list and deletes them.
|
||||
**/
|
||||
*/
|
||||
void clear_panels();
|
||||
|
||||
private:
|
||||
|
|
@ -189,55 +189,55 @@ private:
|
|||
/**
|
||||
* An event handler for when the panel is shown or hidden.
|
||||
* @param panel A pointer to the panel that was hidden.
|
||||
**/
|
||||
*/
|
||||
void on_panel_shown(panels::Panel *panel);
|
||||
|
||||
private:
|
||||
|
||||
/**
|
||||
* A reference to the owner workspace window object.
|
||||
**/
|
||||
*/
|
||||
WorkspaceWindow &workspaceWindow;
|
||||
|
||||
/**
|
||||
* The pointer to GDL dock widget.
|
||||
* @remarks This value is NULL until setup_dock has been called.
|
||||
**/
|
||||
*/
|
||||
GdlDock *dock;
|
||||
|
||||
/**
|
||||
* The pointer to GDL dock bar widget.
|
||||
* @remarks This value is NULL until setup_dock has been called.
|
||||
**/
|
||||
*/
|
||||
GdlDockBar *dockBar;
|
||||
|
||||
/**
|
||||
* The pointer to GDL dock layout object.
|
||||
* @remarks This value is NULL until setup_dock has been called.
|
||||
**/
|
||||
*/
|
||||
GdlDockLayout *dockLayout;
|
||||
|
||||
/**
|
||||
* Pointers to the 4 root place holders.
|
||||
* @remarks All 4 entries are NULL until setup_dock has been called.
|
||||
**/
|
||||
*/
|
||||
GdlDockPlaceholder *dockPlaceholders[4];
|
||||
|
||||
/**
|
||||
* The list of created panels.
|
||||
**/
|
||||
*/
|
||||
std::list< panels::Panel* > panels;
|
||||
|
||||
/**
|
||||
* An accumulator for the panel id.
|
||||
**/
|
||||
*/
|
||||
static unsigned short panelID;
|
||||
|
||||
private:
|
||||
|
||||
/**
|
||||
* A class to describe and instantiate Panel types.
|
||||
**/
|
||||
*/
|
||||
class PanelDescription
|
||||
{
|
||||
protected:
|
||||
|
|
@ -254,7 +254,7 @@ private:
|
|||
* @param stock_id The Stock ID for this type of panel.
|
||||
* @param create_panel_proc A pointer to a function that will
|
||||
* instantiate the panel object.
|
||||
**/
|
||||
*/
|
||||
PanelDescription(const std::type_info &class_info,
|
||||
const char *title, const gchar *stock_id,
|
||||
CreatePanelProc create_panel_proc) :
|
||||
|
|
@ -269,7 +269,7 @@ private:
|
|||
public:
|
||||
/**
|
||||
* Returns a reference to the typeid of the class.
|
||||
**/
|
||||
*/
|
||||
const std::type_info& get_class_info() const
|
||||
{
|
||||
return classInfo;
|
||||
|
|
@ -277,7 +277,7 @@ private:
|
|||
|
||||
/**
|
||||
* Returns a pointer to the string name of the class.
|
||||
**/
|
||||
*/
|
||||
const char* get_class_name() const
|
||||
{
|
||||
return classInfo.name();
|
||||
|
|
@ -285,7 +285,7 @@ private:
|
|||
|
||||
/**
|
||||
* Returns the localized title that will be shown on the panel.
|
||||
**/
|
||||
*/
|
||||
const char* get_title() const
|
||||
{
|
||||
ENSURE(titleName);
|
||||
|
|
@ -294,7 +294,7 @@ private:
|
|||
|
||||
/**
|
||||
* Returns the Stock ID for this type of panel.
|
||||
**/
|
||||
*/
|
||||
const gchar* get_stock_id() const
|
||||
{
|
||||
ENSURE(stockID);
|
||||
|
|
@ -306,7 +306,7 @@ private:
|
|||
* @param panel_manager The owner panel manager.
|
||||
* @param dock_item The GdlDockItem that will host this panel.
|
||||
* @return Returns a pointer to the panel object.
|
||||
**/
|
||||
*/
|
||||
panels::Panel* create(
|
||||
PanelManager &panel_manager, GdlDockItem* dock_item) const
|
||||
{
|
||||
|
|
@ -317,22 +317,22 @@ private:
|
|||
private:
|
||||
/**
|
||||
* A reference to the typeid of this class
|
||||
**/
|
||||
*/
|
||||
const std::type_info &classInfo;
|
||||
|
||||
/**
|
||||
* The localized title that will be shown on the panel.
|
||||
**/
|
||||
*/
|
||||
const char* const titleName;
|
||||
|
||||
/**
|
||||
* The Stock ID for this type of panel.
|
||||
**/
|
||||
*/
|
||||
const gchar* const stockID;
|
||||
|
||||
/**
|
||||
* A pointer to a function that will instantiate the panel object.
|
||||
**/
|
||||
*/
|
||||
CreatePanelProc createPanelProc;
|
||||
};
|
||||
|
||||
|
|
@ -340,13 +340,13 @@ private:
|
|||
* A helper class that will create PanelDescription objects.
|
||||
* @param P The type of panels::Panel that the PanelDescription will
|
||||
* describe.
|
||||
**/
|
||||
*/
|
||||
template<class P> class Panel : public PanelDescription
|
||||
{
|
||||
public:
|
||||
/**
|
||||
* Constructor
|
||||
**/
|
||||
*/
|
||||
Panel() :
|
||||
PanelDescription(typeid(P), P::get_title(),
|
||||
P::get_stock_id(), Panel::create_panel)
|
||||
|
|
@ -358,7 +358,7 @@ private:
|
|||
* @param panel_manager The owner panel manager.
|
||||
* @param dock_item The GdlDockItem that will host this panel.
|
||||
* @return Returns a pointer to the panel object.
|
||||
**/
|
||||
*/
|
||||
static panels::Panel* create_panel(
|
||||
PanelManager &panel_manager, GdlDockItem* dock_item)
|
||||
{
|
||||
|
|
@ -368,7 +368,7 @@ private:
|
|||
|
||||
/**
|
||||
* The list of panel descriptions.
|
||||
**/
|
||||
*/
|
||||
static const PanelDescription panelDescriptionList[];
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -35,7 +35,7 @@ namespace lumiera
|
|||
/**
|
||||
* An observable_list is an STL list with an inbuilt sigc++ signal that
|
||||
* allows observers to be notified when changes are made to the list.
|
||||
**/
|
||||
*/
|
||||
template<class T, class Allocator = std::allocator<T> >
|
||||
class observable_list
|
||||
{
|
||||
|
|
@ -268,7 +268,7 @@ public:
|
|||
|
||||
/**
|
||||
* Returns a read only reference to the list.
|
||||
**/
|
||||
*/
|
||||
const std::list<T, Allocator>& get_list() const
|
||||
{
|
||||
return list;
|
||||
|
|
@ -281,7 +281,7 @@ public:
|
|||
* Access to the signal which will be emit every time the list is
|
||||
* changed in some way.
|
||||
* @return Returns the signal object which will emit notifications.
|
||||
**/
|
||||
*/
|
||||
sigc::signal<void>& signal_changed()
|
||||
{
|
||||
return changed;
|
||||
|
|
|
|||
|
|
@ -93,7 +93,7 @@ class tree_node_ { // size: 5*4=20 bytes (on 32 bit arch), can be reduced by 8.
|
|||
* pre-order, and others). Where possible the access methods are
|
||||
* compatible with the STL or alternative algorithms are
|
||||
* available.
|
||||
**/
|
||||
*/
|
||||
template <class T, class tree_node_allocator = std::allocator<tree_node_<T> > >
|
||||
class tree {
|
||||
protected:
|
||||
|
|
|
|||
Loading…
Reference in a new issue