b52c5a
#pragma once
b52c5a
b52c5a
#ifndef REPLICATOR_INCLUDED
b52c5a
#define REPLICATOR_INCLUDED
b52c5a
b52c5a
// TnzTools includes
b52c5a
#include <tools assistant.h=""></tools>
b52c5a
#include <tools inputmanager.h=""></tools>
b52c5a
b52c5a
#undef DVAPI
b52c5a
#undef DVVAR
b52c5a
#ifdef TNZTOOLS_EXPORTS
b52c5a
#define DVAPI DV_EXPORT_API
b52c5a
#define DVVAR DV_EXPORT_VAR
b52c5a
#else
b52c5a
#define DVAPI DV_IMPORT_API
b52c5a
#define DVVAR DV_IMPORT_VAR
b52c5a
#endif
b52c5a
b52c5a
b52c5a
//*****************************************************************************************
b52c5a
//    TReplicator definition
b52c5a
//*****************************************************************************************
b52c5a
b52c5a
class DVAPI TReplicator : public TAssistantBase {
b52c5a
  Q_DECLARE_TR_FUNCTIONS(TReplicator)
b52c5a
public:
b52c5a
  static const int multiplierSoftLimit;
b52c5a
  static const int multiplierLimit;
b52c5a
  
b52c5a
  TReplicator(TMetaObject &object);
b52c5a
b52c5a
  virtual int getMultipler() const;
b52c5a
  virtual void getModifiers(const TAffine &toTool, TInputModifier::List &outModifiers) const;
b52c5a
  
b52c5a
  //! return summary multiplier, or 0 is no replicators found
b52c5a
  static int scanReplicators(
b52c5a
    TTool *tool,
b52c5a
    TInputModifier::List *outModifiers,
b52c5a
    bool draw,
b52c5a
    bool enabledOnly,
b52c5a
    bool markEnabled,
b52c5a
    TImage *skipImage );
12df32
  
12df32
protected:
12df32
  TIntProperty* createCountProperty(const TStringId &id, int def = 1, int min = 1, int max = 0);
b52c5a
};
b52c5a
b52c5a
b52c5a
#endif