InDesign SDK  20.5
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
IArt.h
1 //========================================================================================
2 //
3 // Copyright 2021 Adobe
4 // All Rights Reserved.
5 //
6 // NOTICE: Adobe permits you to use, modify, and distribute this file in
7 // accordance with the terms of the Adobe license agreement accompanying
8 // it.
9 //
10 //========================================================================================
11 
12 #ifndef __IART_H__
13 #define __IART_H__
14 
15 #include "BravoForwardDecl.h"
16 #include "IDFile.h"
17 
18 class IGraphicsPort;
19 
20 #ifdef PUBLIC_BUILD
21 #endif
22 
23 class IArt
24 {
25  public :
26 
37  virtual bool SetRsrc (const PluginID & pid, const RsrcID & rid, const bool isRollOver, const bool isDark = false, const float scaleFactor = 1.0, const float iconScale = 2.0) = 0;
38  virtual bool SetRsrc (const RsrcSpec& spec, const float scaleFactor = 1.0, const float iconScale = 2.0) = 0; // all decisions (light/dark/rollover/hiRes/etc.) resolved by caller
39 
46  virtual bool SetFile (const IDFile& idFile, const float scaleFactor = 1.0, const float iconScale = 2.0) = 0;
47 
54  virtual void Draw (IGraphicsPort * gPort, const PMMatrix &imMatrix, int32 agmflags) = 0;
55 
58  virtual void DrawDisabled (IGraphicsPort * gPort, const PMMatrix &imMatrix, int32 agmflags) = 0;
59 
63  virtual bool HasAlpha () = 0;
64 
68  virtual bool IsLoaded () = 0;
69 
72  virtual void Delete () = 0;
73 
76  virtual int GetHeight () const = 0;
77 
80  virtual int GetWidth () const = 0;
81 
84  virtual AGMImageRecord* GetBitmap () const = 0;
85 
86  virtual ~IArt() {}
87 
88 };
89 
90 #ifdef PUBLIC_BUILD
91 #endif
92 
93 #endif
94