Difference between revisions of "Dev:Source Outline"

From Synfig Studio :: Documentation
Jump to: navigation, search
(despam)
(Briefly described ETL, synfig-core, and synfig-studio.)
 
(11 intermediate revisions by 8 users not shown)
Line 1: Line 1:
*template
+
{{Category|Code}}
*gtkmm
+
 
**about
+
{{Stub}}
**adjust_window
+
 
**app
+
A good reference to the ETL/synfig/synfigstudio source code is the [http://download.tuxfamily.org/synfig/api/index.html synfig doxygen documentation]. Please note that currently the API and ABI is subject to change and breakage. We do our best to keep the file format from breaking though.
**asyncrenderer
+
 
**audiocontainer
+
NOTE: the code tree that used to be listed here became out of date after a restructuring of the source code. Please [https://github.com/synfig/synfig browse the tree using github] instead.
**autorecover
+
 
**canvasoptions
+
Synfig Studio has three parts with their own directories:
**canvasproperties
+
'''ETL''', '''synfig-core''', and '''synfig-studio'''.
**canvastreestore
+
 
**canvasview
+
'''ETL''' is a template library that implements reference counting,
**cellrenderer_gradient
+
portable threading, gaussian blur, and plenty of other goodies.  Every
**cellrenderer_time
+
part of the Synfig project uses ETL in some way.  It is like the C++
**cellrenderer_timetrack
+
STL.
**cellrenderer_value
+
 
**childrentree
+
'''synfig-core''' is Synfig's backend.  It renders scenes and knows how
**childrentreestore
+
to read and write Synfig XML files.  This directory contains the Synfig
**compview
+
library and the Synfig command-line tool.
**devicetracker
+
 
**dialog_color
+
'''synfig-studio''' is the graphical editor.  It uses the GTK+ widget
**dialog_gradient
+
library.  If you want to hack on the interface, this is what you should
**dialog_keyframe
+
look at.
**dialog_preview
+
**dialogsettings
+
**dialog_setup
+
**dialog_soundselect
+
**dialog_tooloptions
+
**dialog_waypoint
+
**dockable
+
**dockbook
+
**dock_canvases
+
**dock_canvasspecific
+
**dock_children
+
**dock_curves
+
**dockdialog
+
**dock_history
+
**dock_info
+
**dock_keyframes
+
**dock_layergroups
+
**dock_layers
+
**dockmanager
+
**dock_metadata
+
**dock_navigator
+
**dock_params
+
**dock_timetrack
+
**duck
+
**duckmatic
+
**ducktransform_rotate
+
**ducktransform_scale
+
**ducktransform_translate
+
**eventkey
+
**event_layerclick
+
**event_mouse
+
**groupactionmanager
+
**historytreestore
+
**iconcontroler
+
**instance
+
**ipc
+
**keyframeactionmanager
+
**keyframetree
+
**keyframetreestore
+
**keymapsettings
+
**layeractionmanager
+
**layergrouptree
+
**layergrouptreestore
+
**layerparamtreestore
+
**layertree
+
**layertreestore
+
**metadatatreestore
+
**mod_mirror
+
***mod_mirror
+
***state_mirror
+
**mod_palette
+
***dock_palbrowse
+
***dock_paledit
+
***mod_palette
+
**module
+
**onemoment
+
**preview
+
**renddesc
+
**renderer_bbox
+
**renderer_canvas
+
**renderer_dragbox
+
**renderer_ducks
+
**renderer_grid
+
**renderer_guides
+
**renderer_timecode
+
**render
+
**smach
+
**state_bline
+
**state_circle
+
**state_draw
+
**state_eyedrop
+
**state_fill
+
**state_gradient
+
**statemanager
+
**state_normal
+
**state_polygon
+
**state_rectangle
+
**state_redraw
+
**state_rotate
+
**state_scale
+
**state_sketch
+
**state_smoothmove
+
**[[state_stroke]] - handles feedback and input for the drawing tools.
+
**state_width
+
**state_zoom
+
**toolbox
+
**valuelink
+
**widget_canvaschooser
+
**widget_coloredit
+
**widget_color
+
**widget_compselect
+
**widget_curves
+
**widget_defaults
+
**widget_distance
+
**widget_enum
+
**widget_filename
+
**widget_gradient
+
**widget_sound
+
**widget_time
+
**widget_timeslider
+
**widget_value
+
**widget_vector
+
**widget_waypoint
+
**widget_waypointmodel
+
**workarea
+
**workarearenderer
+
**zoomdial
+
*synfigapp
+
**action
+
**action_param
+
**action_system
+
**actions
+
***activepointadd
+
***activepointremove
+
***activepointset
+
***activepointsetoff
+
***activepointseton
+
***activepointsetsmart
+
***activepointsimpleadd
+
***blinepointtangentmerge
+
***blinepointtangentsplit
+
***canvasadd
+
***canvasremove
+
***canvasrenddescset
+
***colorset
+
***editmodeset
+
***gradientset
+
***groupaddlayers
+
***groupremove
+
***groupremovelayers
+
***grouprename
+
***keyframeadd
+
***keyframeduplicate
+
***keyframeremove
+
***keyframesetdelta
+
***keyframeset
+
***keyframewaypointset
+
***layeractivate
+
***layeradd
+
***layerduplicate
+
***layerencapsulate
+
***layerlower
+
***layermove
+
***layerparamconnect
+
***layerparamdisconnect
+
***layerparamset
+
***layerraise
+
***layerremove
+
***layersetdesc
+
***timepointscopy
+
***timepointsdelete
+
***timepointsmove
+
***valuedescconnect
+
***valuedescconvert
+
***valuedescdisconnect
+
***valuedescexport
+
***valuedesclink
+
***valuedescset
+
***valuenodeadd
+
***valuenodeconstset
+
***valuenodedynamiclistinsert
+
***valuenodedynamiclistinsertsmart
+
***valuenodedynamiclistloop
+
***valuenodedynamiclistremove
+
***valuenodedynamiclistremovesmart
+
***valuenodedynamiclistrotateorder
+
***valuenodedynamiclistunloop
+
***valuenodelinkconnect
+
***valuenodelinkdisconnect
+
***valuenoderemove
+
***valuenoderename
+
***valuenodereplace
+
***waypointadd
+
***waypointremove
+
***waypointset
+
***waypointsetsmart
+
***waypointsimpleadd
+
**blineconvert
+
**canvasinterface
+
**cvs
+
**editmode
+
**inputdevice
+
**instance
+
**main
+
**selectionmanager
+
**settings
+
**timegather
+
**uimanager
+
**value_desc
+

Latest revision as of 08:24, 8 January 2014


This article is a stub and needs to be finished. Plunge forward and help it grow!

A good reference to the ETL/synfig/synfigstudio source code is the synfig doxygen documentation. Please note that currently the API and ABI is subject to change and breakage. We do our best to keep the file format from breaking though.

NOTE: the code tree that used to be listed here became out of date after a restructuring of the source code. Please browse the tree using github instead.

Synfig Studio has three parts with their own directories: ETL, synfig-core, and synfig-studio.

ETL is a template library that implements reference counting, portable threading, gaussian blur, and plenty of other goodies. Every part of the Synfig project uses ETL in some way. It is like the C++ STL.

synfig-core is Synfig's backend. It renders scenes and knows how to read and write Synfig XML files. This directory contains the Synfig library and the Synfig command-line tool.

synfig-studio is the graphical editor. It uses the GTK+ widget library. If you want to hack on the interface, this is what you should look at.