86 lines
1.7 KiB
C++
86 lines
1.7 KiB
C++
#pragma once
|
|
|
|
#ifndef CONTEXTSTATUS_H
|
|
#define CONTEXTSTATUS_H
|
|
|
|
/**
|
|
* @author Fabrizio Morciano <fabrizio.morciano@gmail.com>
|
|
*/
|
|
|
|
#include "tcommon.h"
|
|
//#include "tvectorimage.h"
|
|
|
|
#include "tstroke.h"
|
|
|
|
#include "ext/Types.h"
|
|
|
|
#undef DVAPI
|
|
#undef DVVAR
|
|
#ifdef TNZEXT_EXPORTS
|
|
#define DVAPI DV_EXPORT_API
|
|
#define DVVAR DV_EXPORT_VAR
|
|
#else
|
|
#define DVAPI DV_IMPORT_API
|
|
#define DVVAR DV_IMPORT_VAR
|
|
#endif
|
|
|
|
namespace ToonzExt {
|
|
class StrokeParametricDeformer;
|
|
//---------------------------------------------------------------------------
|
|
|
|
/**
|
|
* @brief This class maintains data required from manipulator.
|
|
*/
|
|
struct DVAPI ContextStatus {
|
|
// useful for special key status
|
|
enum { CTRL = 0x0001, ALT = 0x0002, SHIFT = 0x0004, NONE = 0x0000 };
|
|
|
|
// cached information
|
|
TStroke *stroke2change_;
|
|
|
|
// parameter of selected stroke
|
|
double w_;
|
|
|
|
// how much curve to move
|
|
double lengthOfAction_;
|
|
|
|
// how much curve to move
|
|
double deformerSensitivity_;
|
|
|
|
// pixel size
|
|
double pixelSize_;
|
|
|
|
// degree of an angle to be a corner
|
|
int cornerSize_;
|
|
|
|
int key_event_;
|
|
|
|
StrokeParametricDeformer *deformer_;
|
|
|
|
/*
|
|
ToonzExt::Intervals*
|
|
spireCorners_;
|
|
|
|
ToonzExt::Intervals*
|
|
straightCorners_;
|
|
*/
|
|
// select between manual or automatic mode
|
|
bool isManual_;
|
|
|
|
ContextStatus();
|
|
~ContextStatus();
|
|
|
|
// not a deep copy is performed!!!
|
|
ContextStatus(const ContextStatus &);
|
|
|
|
// not a deep copy is performed!!!
|
|
ContextStatus &operator=(const ContextStatus &);
|
|
|
|
void init();
|
|
};
|
|
//---------------------------------------------------------------------------
|
|
}
|
|
#endif /* CONTEXTSTATUS_H */
|
|
//-----------------------------------------------------------------------------
|
|
// End Of File
|
|
//-----------------------------------------------------------------------------
|