22#define M_PI 3.14159265358979323846
25#define STRINGIFY(x) #x
26#define TOSTRING(x) STRINGIFY(x)
27#define S__GIT_TIMESTAMP TOSTRING(GIT_TIMESTAMP)
28#define S__GIT_COMMIT_HASH TOSTRING(GIT_CURRENT_SHA1)
68 BUCKETFILLLAYERREFERENCEMODE,
72enum class DotColorType {
85enum StabilizationLevel
100enum class LayerVisibility
108inline LayerVisibility& operator++(LayerVisibility& vis)
110 return vis = (vis == LayerVisibility::ALL) ? LayerVisibility::CURRENTONLY :
static_cast<LayerVisibility
>(
static_cast<int>(vis)+1);
113inline LayerVisibility& operator--(LayerVisibility& vis)
115 return vis = (vis == LayerVisibility::CURRENTONLY) ? LayerVisibility::ALL :
static_cast<LayerVisibility
>(
static_cast<int>(vis)-1);
119const static int MaxFramesBound = 9999;
122#define CMD_NEW_FILE "CmdNewFile"
123#define CMD_OPEN_FILE "CmdOpenFile"
124#define CMD_SAVE_FILE "CmdSaveFile"
125#define CMD_SAVE_AS "CmdSaveAs"
126#define CMD_IMPORT_IMAGE "CmdImportImage"
127#define CMD_IMPORT_IMAGE_SEQ "CmdImportImageSequence"
128#define CMD_IMPORT_IMAGE_PREDEFINED_SET "CmdImportImagePredefinedSet"
129#define CMD_IMPORT_MOVIE_VIDEO "CmdImportMovieVideo"
130#define CMD_IMPORT_ANIMATED_IMAGE "CmdImportAnimatedImage"
131#define CMD_IMPORT_LAYERS "CmdImportLayers"
132#define CMD_IMPORT_SOUND "CmdImportSound"
133#define CMD_IMPORT_MOVIE_AUDIO "CmdImportMovieAudio"
134#define CMD_IMPORT_PALETTE "CmdImportPalette"
135#define CMD_IMPORT_PALETTE_REPLACE "CmdImportPaletteReplace"
136#define CMD_EXPORT_IMAGE_SEQ "CmdExportImageSequence"
137#define CMD_EXPORT_IMAGE "CmdExportImage"
138#define CMD_EXPORT_MOVIE "CmdExportMovie"
139#define CMD_EXPORT_GIF "CmdExportGIF"
140#define CMD_EXPORT_PALETTE "CmdExportPalette"
141#define CMD_UNDO "CmdUndo"
142#define CMD_REDO "CmdRedo"
143#define CMD_CUT "CmdCut"
144#define CMD_COPY "CmdCopy"
145#define CMD_PASTE "CmdPaste"
146#define CMD_PASTE_FROM_PREVIOUS "CmdPasteFromPrevious"
147#define CMD_SELECT_ALL "CmdSelectAll"
148#define CMD_DESELECT_ALL "CmdDeselectAll"
149#define CMD_CLEAR_FRAME "CmdClearFrame"
150#define CMD_PEGBAR_ALIGNMENT "CmdPegBarAlignment"
151#define CMD_PREFERENCE "CmdPreferences"
152#define CMD_RESET_WINDOWS "CmdResetWindows"
153#define CMD_LOCK_WINDOWS "CmdLockWindows"
154#define CMD_ZOOM_IN "CmdZoomIn"
155#define CMD_ZOOM_OUT "CmdZoomOut"
156#define CMD_ROTATE_CLOCK "CmdRotateClockwise"
157#define CMD_ROTATE_ANTI_CLOCK "CmdRotateAntiClockwise"
158#define CMD_RESET_ROTATION "CmdResetRotation"
159#define CMD_RESET_ZOOM_ROTATE "CmdResetZoomRotate"
160#define CMD_CENTER_VIEW "CmdCenterView"
161#define CMD_ZOOM_400 "CmdZoom400"
162#define CMD_ZOOM_300 "CmdZoom300"
163#define CMD_ZOOM_200 "CmdZoom200"
164#define CMD_ZOOM_100 "CmdZoom100"
165#define CMD_ZOOM_50 "CmdZoom50"
166#define CMD_ZOOM_33 "CmdZoom33"
167#define CMD_ZOOM_25 "CmdZoom25"
168#define CMD_FLIP_HORIZONTAL "CmdFlipHorizontal"
169#define CMD_FLIP_VERTICAL "CmdFlipVertical"
170#define CMD_GRID "CmdGrid"
171#define CMD_OVERLAY_CENTER "CmdOverlayCenter"
172#define CMD_OVERLAY_THIRDS "CmdOverlayThirds"
173#define CMD_OVERLAY_GOLDEN_RATIO "CmdOverlayGoldenRatio"
174#define CMD_OVERLAY_SAFE_AREAS "CmdOverlaySafeAreas"
175#define CMD_OVERLAY_ONE_POINT_PERSPECTIVE "CmdOverlayOnePointPerspective"
176#define CMD_OVERLAY_TWO_POINT_PERSPECTIVE "CmdOverlayTwoPointPerspective"
177#define CMD_OVERLAY_THREE_POINT_PERSPECTIVE "CmdOverlayThreePointPerspective"
178#define CMD_ONIONSKIN_PREV "CmdOnionSkinPrevious"
179#define CMD_ONIONSKIN_NEXT "CmdOnionSkinNext"
180#define CMD_TOGGLE_STATUS_BAR "CmdToggleStatusBar"
181#define CMD_PLAY "CmdPlay"
182#define CMD_LOOP "CmdLoop"
183#define CMD_LOOP_CONTROL "CmdLoopControl"
184#define CMD_FLIP_INBETWEEN "CmdFlipInBetween"
185#define CMD_FLIP_ROLLING "CmdFlipRolling"
186#define CMD_GOTO_NEXT_FRAME "CmdGotoNextFrame"
187#define CMD_GOTO_PREV_FRAME "CmdGotoPreviousFrame"
188#define CMD_GOTO_NEXT_KEY_FRAME "CmdGotoNextKeyFrame"
189#define CMD_GOTO_PREV_KEY_FRAME "CmdGotoPreviousKeyFrame"
190#define CMD_ADD_FRAME "CmdAddFrame"
191#define CMD_DUPLICATE_FRAME "CmdDuplicateFrame"
192#define CMD_REMOVE_FRAME "CmdRemoveFrame"
193#define CMD_REVERSE_SELECTED_FRAMES "CmdReverseSelectedFrames"
194#define CMD_REMOVE_SELECTED_FRAMES "CmdRemoveSelectedFrames"
195#define CMD_SELECTION_REPOSITION_FRAMES "CmdSelectionRepositionFrames"
196#define CMD_SELECTION_ADD_FRAME_EXPOSURE "CmdSelectionAddFrameExposure"
197#define CMD_SELECTION_SUBTRACT_FRAME_EXPOSURE "CmdSelectionSubtractFrameExposure"
198#define CMD_SELECTION_FLIP_HORIZONTAL "CmdSelectionFlipHorizontal"
199#define CMD_SELECTION_FLIP_VERTICAL "CmdSelectionFlipVertical"
200#define CMD_MOVE_FRAME_BACKWARD "CmdMoveFrameBackward"
201#define CMD_MOVE_FRAME_FORWARD "CmdMoveFrameForward"
202#define CMD_TOOL_MOVE "CmdToolMove"
203#define CMD_TOOL_SELECT "CmdToolSelect"
204#define CMD_TOOL_BRUSH "CmdToolBrush"
205#define CMD_TOOL_POLYLINE "CmdToolPolyline"
206#define CMD_TOOL_SMUDGE "CmdToolSmudge"
207#define CMD_TOOL_PEN "CmdToolPen"
208#define CMD_TOOL_HAND "CmdToolHand"
209#define CMD_TOOL_PENCIL "CmdToolPencil"
210#define CMD_TOOL_BUCKET "CmdToolBucket"
211#define CMD_TOOL_EYEDROPPER "CmdToolEyedropper"
212#define CMD_TOOL_ERASER "CmdToolEraser"
213#define CMD_RESET_ALL_TOOLS "CmdResetAllTools"
214#define CMD_NEW_BITMAP_LAYER "CmdNewBitmapLayer"
215#define CMD_NEW_VECTOR_LAYER "CmdNewVectorLayer"
216#define CMD_NEW_SOUND_LAYER "CmdNewSoundLayer"
217#define CMD_NEW_CAMERA_LAYER "CmdNewCameraLayer"
218#define CMD_DELETE_CUR_LAYER "CmdDeleteCurrentLayer"
219#define CMD_CHANGE_LINE_COLOR_KEYFRAME "CmdChangeLineColorKeyframe"
220#define CMD_CHANGE_LINE_COLOR_LAYER "CmdChangeLineColorLayer"
221#define CMD_CHANGE_LAYER_OPACITY "CmdChangeLayerOpacity"
222#define CMD_CURRENT_LAYER_VISIBILITY "CmdLayerVisibilityCurrentOnly"
223#define CMD_RELATIVE_LAYER_VISIBILITY "CmdLayerVisibilityRelative"
224#define CMD_ALL_LAYER_VISIBILITY "CmdLayerVisibilityAll"
225#define CMD_HELP "CmdHelp"
226#define CMD_TOGGLE_TOOLBOX "CmdToggleToolBox"
227#define CMD_TOGGLE_TOOL_OPTIONS "CmdToggleToolOptions"
228#define CMD_TOGGLE_COLOR_WHEEL "CmdToggleColorWheel"
229#define CMD_TOGGLE_COLOR_INSPECTOR "CmdToggleColorInspector"
230#define CMD_TOGGLE_COLOR_LIBRARY "CmdToggleColorLibrary"
231#define CMD_TOGGLE_ONION_SKIN "CmdToggleOnionSkin"
232#define CMD_TOGGLE_TIMELINE "CmdToggleTimeline"
233#define CMD_INCREASE_SIZE "CmdIncreaseSize"
234#define CMD_DECREASE_SIZE "CmdDecreaseSize"
235#define CMD_EXIT "CmdExit"
238#define LAST_PCLX_PATH "LastFilePath"
241#define IMPORT_REPOSITION_TYPE "ImportRepositionType"
244#define PENCIL2D "Pencil"
245#define SHORTCUTS_GROUP "Shortcuts"
246#define SETTING_AUTO_SAVE "AutoSave"
247#define SETTING_AUTO_SAVE_NUMBER "AutosaveNumber"
248#define SETTING_TOOL_CURSOR "ToolCursors"
249#define SETTING_CANVAS_CURSOR "DottedCursors"
250#define SETTING_HIGH_RESOLUTION "HighResPosition"
251#define SETTING_BACKGROUND_STYLE "Background"
252#define SETTING_WINDOW_OPACITY "WindowOpacity"
253#define SETTING_WINDOW_GEOMETRY "WindowGeometry"
254#define SETTING_WINDOW_STATE "WindowState"
255#define SETTING_SHOW_STATUS_BAR "ShowStatusBar"
256#define SETTING_CURVE_SMOOTHING "CurveSmoothing"
257#define SETTING_DISPLAY_EFFECT "RenderEffect"
258#define SETTING_SHORT_SCRUB "ShortScrub"
259#define SETTING_FPS "Fps"
260#define SETTING_FIELD_W "FieldW"
261#define SETTING_FIELD_H "FieldH"
262#define SETTING_FRAME_SIZE "FrameSize"
263#define SETTING_TIMELINE_SIZE "TimelineSize"
264#define SETTING_LABEL_FONT_SIZE "LabelFontSize"
265#define SETTING_DRAW_LABEL "DrawLabel"
266#define SETTING_QUICK_SIZING "QuickSizing"
267#define SETTING_LAYOUT_LOCK "LayoutLock"
268#define SETTING_ROTATION_INCREMENT "RotationIncrement"
269#define SETTING_SHOW_SELECTION_INFO "ShowSelectionInfo"
270#define SETTING_ASK_FOR_PRESET "AskForPreset"
271#define SETTING_LOAD_MOST_RECENT "LoadMostRecent"
272#define SETTING_LOAD_DEFAULT_PRESET "LoadDefaultPreset"
273#define SETTING_DEFAULT_PRESET "DefaultPreset"
275#define SETTING_INVERT_DRAG_ZOOM_DIRECTION "InvertDragZoomDirection"
276#define SETTING_INVERT_SCROLL_ZOOM_DIRECTION "InvertScrollZoomDirection"
278#define SETTING_ANTIALIAS "Antialiasing"
279#define SETTING_SHOW_GRID "ShowGrid"
280#define SETTING_COUNT "Count"
281#define SETTING_SHADOW "Shadow"
282#define SETTING_PREV_ONION "PrevOnion"
283#define SETTING_NEXT_ONION "NextOnion"
284#define SETTING_MULTILAYER_ONION "MultilayerOnion"
285#define SETTING_AXIS "Axis"
286#define SETTING_CAMERABORDER "CameraBorder"
287#define SETTING_INVISIBLE_LINES "InvisibleLines"
288#define SETTING_OUTLINES "Outlines"
289#define SETTING_ONION_BLUE "OnionBlue"
290#define SETTING_ONION_RED "OnionRed"
292#define SETTING_FRAME_POOL_SIZE "FramePoolSizeInMB"
293#define SETTING_GRID_SIZE_W "GridSizeW"
294#define SETTING_GRID_SIZE_H "GridSizeH"
295#define SETTING_OVERLAY_CENTER "OverlayCenter"
296#define SETTING_OVERLAY_THIRDS "OverlayThirds"
297#define SETTING_OVERLAY_GOLDEN "OverlayGolden"
298#define SETTING_OVERLAY_SAFE "OverlaySafe"
299#define SETTING_OVERLAY_PERSPECTIVE1 "OverlayPerspective1"
300#define SETTING_OVERLAY_PERSPECTIVE2 "OverlayPerspective2"
301#define SETTING_OVERLAY_PERSPECTIVE3 "OverlayPerspective3"
302#define SETTING_OVERLAY_ANGLE "OverlayAngle"
303#define SETTING_TITLE_SAFE_ON "TitleSafeOn"
304#define SETTING_TITLE_SAFE "TitleSafe"
305#define SETTING_ACTION_SAFE_ON "ActionSafeOn"
306#define SETTING_ACTION_SAFE "ActionSafe"
307#define SETTING_OVERLAY_SAFE_HELPER_TEXT_ON "OverlaySafeHelperTextOn"
308#define SETTING_TIMECODE_TEXT "TimecodeText"
310#define SETTING_ONION_MAX_OPACITY "OnionMaxOpacity"
311#define SETTING_ONION_MIN_OPACITY "OnionMinOpacity"
312#define SETTING_ONION_PREV_FRAMES_NUM "OnionPrevFramesNum"
313#define SETTING_ONION_NEXT_FRAMES_NUM "OnionNextFramesNum"
314#define SETTING_ONION_WHILE_PLAYBACK "OnionWhilePlayback"
315#define SETTING_ONION_TYPE "OnionType"
316#define SETTING_FLIP_ROLL_MSEC "FlipRoll"
317#define SETTING_FLIP_ROLL_DRAWINGS "FlipRollDrawings"
318#define SETTING_FLIP_INBETWEEN_MSEC "FlipInbetween"
319#define SETTING_SOUND_SCRUB_ACTIVE "SoundScrubActive"
320#define SETTING_SOUND_SCRUB_MSEC "SoundScrubMsec"
321#define SETTING_NEW_UNDO_REDO_ON "NewUndoRedoOn"
322#define SETTING_UNDO_REDO_MAX_STEPS "UndoRedoMaxSteps"
324#define SETTING_BUCKET_TOLERANCE "Tolerance"
325#define SETTING_BUCKET_TOLERANCE_ON "BucketToleranceEnabled"
326#define SETTING_BUCKET_FILL_EXPAND "BucketFillExpand"
327#define SETTING_BUCKET_FILL_EXPAND_ON "BucketFillExpandEnabled"
328#define SETTING_BUCKET_FILL_REFERENCE_MODE "BucketFillReferenceMode"
330#define SETTING_FILL_MODE "FillMode"
332#define SETTING_LAYER_VISIBILITY "LayerVisibility"
333#define SETTING_LAYER_VISIBILITY_THRESHOLD "LayerVisibilityThreshold"
335#define SETTING_DRAW_ON_EMPTY_FRAME_ACTION "DrawOnEmptyFrameAction"
337#define SETTING_LANGUAGE "Language"