public override bool RemoveCapability(ICapability capability)
        {
            bool ret = base.RemoveCapability(capability);

            if(ret)
            {
                // Remove the ObjectReceived event handler.
                // This form is going away, but the Capability may be replayed in which case we'd receive this event into a disposed form!
                presentationCapability.ObjectReceived -= new CapabilityObjectReceivedEventHandler(ObjectReceived);
                presentationCapability = null;
            }

            return ret;
        }
        public override void AddCapability(ICapability capability)
        {
            base.AddCapability (capability);

            if(presentationCapability == null)
            {
                presentationCapability = (PresentationCapability)capability;
                presentationCapability.ObjectReceived += new CapabilityObjectReceivedEventHandler(ObjectReceived);

                // Init StatusBar
                statusBar.SetBusyStatusMessage(Strings.Loading);

                // Init ThumbnailsListView
                this.thumbnailsView.ImageSelected += new System.EventHandler(this.thumbnailsView_SelectedImageChanged);
                this.thumbnailsView.ImageMouseEnter += new EventHandler(thumbnailsView_ImageMouseEnter);
                this.thumbnailsView.ImageMouseLeave +=new EventHandler(thumbnailsView_ImageMouseLeave);
                Size pbSize = new Size(thumbnailsView.ClientRectangle.Width - 55, 0);
                pbSize.Height = (int)( ((float)pbSize.Width)*(3F/4F) );

                // Create blank RTDocument
                this.rtDocument = new RTDocument();
                rtDocument.Identifier = new Guid(constWhiteboardGuid);
                rtDocument.Metadata.Title = Strings.WhiteboardSession;
                rtDocument.Metadata.Creator = Conference.LocalParticipant.Name;
            
                // Add a blank page
                Page pg = new Page();
                pg.Identifier = new Guid(constWhiteboardGuid);
                TOCNode tn = new TOCNode();
                tn.Title = Strings.Whiteboard1;
                tn.Resource = pg;
                tn.ResourceIdentifier = pg.Identifier;
                tn.Identifier = new Guid(constWhiteboardGuid);
                rtDocument.Organization.TableOfContents.Add(tn);
                rtDocument.Resources.Pages.Add(pg.Identifier, pg);

                // Wrap the RTD with a helper & init vars
                rtDocumentHelper = new RTDocumentHelper( presentationCapability, rtDocument );
                rtDocumentHelper.CurrentOrganizationNodeIdentifier = tn.Identifier;
                statusBar.SetMaxPage( 1, rtDocument.Organization.TableOfContents.Count );
                thumbnailsView.InsertThumbnail(null, tn.Title, 0, tn.Identifier);
                thumbnailsView.SelectedIndex = 0;
                this.pageShowing = pg.Identifier;
            }
        }