public override NSView GetViewForItem(iCarousel carousel, nint index, NSView view) { NSTextField label = null; NSImageView imageView = null; if (view == null) { // create new view if no view is available for recycling imageView = new NSImageView(new CGRect(0, 0, 200.0f, 200.0f)); imageView.Image = NSImage.ImageNamed("page"); imageView.ImageAlignment = NSImageAlignment.Center; label = new NSTextField(imageView.Bounds); label.BackgroundColor = NSColor.Clear; label.Alignment = NSTextAlignment.Center; label.Font = NSFont.LabelFontOfSize(50); label.Bordered = false; label.Editable = false; label.Tag = 1; imageView.AddSubview(label); } else { // get a reference to the label in the recycled view imageView = (NSImageView)view; label = (NSTextField)view.ViewWithTag(1); } // set the values of the view label.StringValue = items[index].ToString(); return(imageView); }
public override Id InitWithFrame(NSRect aFrameRect) { this.NativePointer = this.SendMessageSuper <IntPtr>(ThisClass, "initWithFrame:", aFrameRect); // create the sub views and attach if (iImage == null) { iImage = new NSImageView(); iImageOver = new NSImageView(); this.AddSubview(iImage); iImage.AddSubview(iImageOver); } // initialise the subviews NSRect frame = new NSRect(0, 0, aFrameRect.Width, aFrameRect.Height); iImage.InitWithFrame(frame); iImage.ImageAlignment = NSImageAlignment.NSImageAlignCenter; iImage.ImageFrameStyle = NSImageFrameStyle.NSImageFrameNone; iImage.ImageScaling = NSImageScaling.NSImageScaleNone; iImageOver.InitWithFrame(frame); iImageOver.ImageAlignment = NSImageAlignment.NSImageAlignCenter; iImageOver.ImageFrameStyle = NSImageFrameStyle.NSImageFrameNone; iImageOver.ImageScaling = NSImageScaling.NSImageScaleNone; iImageOver.AlphaValue = 0.0f; return(this); }
public void Initialise(NSView aParent) { // create background iBkgd = new NSImageView(); iBkgd.InitWithFrame(aParent.Bounds); iBkgd.ImageAlignment = NSImageAlignment.NSImageAlignCenter; iBkgd.ImageFrameStyle = NSImageFrameStyle.NSImageFrameNone; iBkgd.ImageScaling = NSImageScaling.NSImageScaleNone; aParent.AddSubview(iBkgd); // create button iButton = new NSButton(); iButton.InitWithFrame(aParent.Bounds); iButton.SetButtonType(NSButtonType.NSMomentaryChangeButton); iButton.IsBordered = false; iButton.Title = NSString.Empty; iButton.AlternateTitle = NSString.Empty; iButton.ImagePosition = NSCellImagePosition.NSImageOnly; iButton.AlphaValue = 0.0f; iBkgd.AddSubview(iButton); SetOn(false); }
public override Id InitWithFrame(NSRect aFrameRect) { this.NativePointer = this.SendMessageSuper <IntPtr>(ThisClass, "initWithFrame:", aFrameRect); NSRect wheelRect = new NSRect(0, 0, aFrameRect.Width, aFrameRect.Height); if (iViewBar == null) { // create subviews iViewBar = new ViewRotaryBar(); iViewBkgd = new NSImageView(); iViewLeft = new NSImageView(); iViewRight = new NSImageView(); iViewMute = new NSImageView(); // create subview hierarchy this.AddSubview(iViewBkgd); iViewBkgd.AddSubview(iViewBar); iViewBar.AddSubview(iViewLeft); iViewBar.AddSubview(iViewRight); iViewBar.AddSubview(iViewMute); } // initialise the views iViewBar.InitWithFrame(wheelRect); iViewBkgd.InitWithFrame(wheelRect); iViewBkgd.Image = Properties.Resources.ImageRocker; iViewBkgd.ImageAlignment = NSImageAlignment.NSImageAlignCenter; iViewBkgd.ImageFrameStyle = NSImageFrameStyle.NSImageFrameNone; iViewBkgd.ImageScaling = NSImageScaling.NSImageScaleNone; iViewLeft.InitWithFrame(wheelRect); iViewLeft.Image = Properties.Resources.ImageRockerLeftOver; iViewLeft.ImageAlignment = NSImageAlignment.NSImageAlignCenter; iViewLeft.ImageFrameStyle = NSImageFrameStyle.NSImageFrameNone; iViewLeft.ImageScaling = NSImageScaling.NSImageScaleNone; iViewRight.InitWithFrame(wheelRect); iViewRight.Image = Properties.Resources.ImageRockerRightOver; iViewRight.ImageAlignment = NSImageAlignment.NSImageAlignCenter; iViewRight.ImageFrameStyle = NSImageFrameStyle.NSImageFrameNone; iViewRight.ImageScaling = NSImageScaling.NSImageScaleNone; iViewMute.InitWithFrame(wheelRect); iViewMute.Image = Properties.Resources.ImageWheelMute; iViewMute.ImageAlignment = NSImageAlignment.NSImageAlignCenter; iViewMute.ImageFrameStyle = NSImageFrameStyle.NSImageFrameNone; iViewMute.ImageScaling = NSImageScaling.NSImageScaleNone; // initialise state of the widget iEnabled = false; iDimmed = false; iMouseDown = EMouse.eNot; iMouseOver = EMouse.eNot; UpdateState(); // create tracking area iTrackingArea = TrackerHelper.Create(this, wheelRect, true); return(this); }