1 /* -*- Mode: C++; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
6 * Moonlight List (moonlight-list@lists.ximian.com)
8 * Copyright 2007-2008 Novell, Inc. (http://www.novell.com)
10 * See the LICENSE file included with the distribution for details.
14 #ifndef __MULTISCALESUBIMAGE_H__
15 #define __MULTISCALESUBIMAGE_H__
17 #include "dependencyobject.h"
19 /* @Version=2,Namespace=System.Windows.Controls */
20 class MultiScaleSubImage
: public DependencyObject
{
21 friend class MultiScaleImage
;
22 friend void multi_scale_image_handle_parsed (void *userdata
);
24 MultiScaleTileSource
*source
;
28 double GetViewportHeight ();
31 virtual ~MultiScaleSubImage () {}
34 /* @PropertyType=double,DefaultValue=1.0,Version=2.0,ReadOnly,GenerateGetter */
35 const static int AspectRatioProperty
;
36 /* @PropertyType=double,DefaultValue=1.0,Version=2.0,GenerateAccessors */
37 const static int OpacityProperty
;
38 /* @PropertyType=Point,DefaultValue=Point(0\,0),Version=2.0,GenerateAccessors */
39 const static int ViewportOriginProperty
;
40 /* @PropertyType=double,DefaultValue=1.0,Version=2.0,GenerateAccessors */
41 const static int ViewportWidthProperty
;
42 /* @PropertyType=gint32,DefaultValue=0,Version=2.0,GenerateAccessors */
43 const static int ZIndexProperty
;
46 /* @GenerateCBinding,GeneratePInvoke */
47 MultiScaleSubImage ();
48 MultiScaleSubImage (const Uri
* parent_uri
, MultiScaleTileSource
*source
, int id
, int n
);
50 double GetAspectRatio ();
51 void SetAspectRatio (double ratio
);
54 void SetOpacity (double ratio
);
56 Point
* GetViewportOrigin ();
57 void SetViewportOrigin (Point
* point
);
59 double GetViewportWidth ();
60 void SetViewportWidth (double width
);
62 /* @GenerateCBinding */
64 void SetZIndex (gint32 zindex
);
66 int GetId () {return id
;};
69 #endif /* __MULTISCALESUBIMAGE_H__ */