Pencil2D Animation
Download
Community
News
Docs
Contribute
Overview
Articles
Code
Class List
Class Index
Class Hierarchy
Class Members
File List
Loading...
Searching...
No Matches
core_lib
src
structure
layerbitmap.h
1
/*
2
3
Pencil2D - Traditional Animation Software
4
Copyright (C) 2005-2007 Patrick Corrieri & Pascal Naidon
5
Copyright (C) 2012-2020 Matthew Chiawen Chang
6
7
This program is free software; you can redistribute it and/or
8
modify it under the terms of the GNU General Public License
9
as published by the Free Software Foundation; version 2 of the License.
10
11
This program is distributed in the hope that it will be useful,
12
but WITHOUT ANY WARRANTY; without even the implied warranty of
13
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
GNU General Public License for more details.
15
16
*/
17
#ifndef LAYERBITMAP_H
18
#define LAYERBITMAP_H
19
20
#include "layer.h"
21
22
class
BitmapImage
;
23
class
QDir
;
24
25
class
LayerBitmap
:
public
Layer
26
{
27
Q_DECLARE_TR_FUNCTIONS(
LayerBitmap
)
28
29
public
:
30
explicit
LayerBitmap
(
int
id
);
31
~LayerBitmap
()
override
;
32
33
QDomElement
createDomElement(
QDomDocument
& doc)
const override
;
34
void
loadDomElement(
const
QDomElement
& element,
QString
dataDirPath, ProgressCallback progressStep)
override
;
35
Status
presave(
const
QString
& sDataFolder)
override
;
36
37
BitmapImage
* getBitmapImageAtFrame(
int
frameNumber);
38
BitmapImage
* getLastBitmapImageAtFrame(
int
frameNumber,
int
increment = 0);
39
void
replaceKeyFrame(
const
KeyFrame
*)
override
;
40
41
void
repositionFrame(
QPoint
point,
int
frame);
42
QRect
getFrameBounds(
int
frame);
43
44
protected
:
45
Status
saveKeyFrameFile(
KeyFrame
*,
QString
strPath)
override
;
46
KeyFrame
* createKeyFrame(
int
position)
override
;
47
48
private
:
49
void
loadImageAtFrame(
QString
strFilePath,
QPoint
topLeft,
int
frameNumber, qreal opacity);
50
QString
filePath(
KeyFrame
* key,
const
QDir
& dataFolder)
const
;
51
QString
fileName(
KeyFrame
* key)
const
;
52
bool
needSaveFrame(
KeyFrame
* key,
const
QString
& strSavePath);
53
};
54
55
#endif
BitmapImage
Definition:
bitmapimage.h:29
KeyFrame
Definition:
keyframe.h:30
LayerBitmap
Definition:
layerbitmap.h:26
Layer
Definition:
layer.h:33
Status
Definition:
pencilerror.h:40
QDir
QDomDocument
QDomElement
QPoint
QRect
QString