|
#region Using directives
using System;
using System.Collections.Generic;
using System.Text;
using SmartInstitute.ObjectModel;
using System.ComponentModel;
using System.Windows.Forms;
using SmartInstitute.Client.Automation.Views;
#endregion
namespace SmartInstitute.Client.Automation.Documents
{
/// <summary>
/// A base class which represents a view for a model
/// </summary>
public abstract class DocumentBase : ItemBase
{
private string _Name;
public string Name
{
get { return _Name; }
set { _Name = value; }
}
private string _Title;
public string Title
{
get { return _Title; }
set { _Title = value; }
}
private DocumentUIBase _UI;
public DocumentUIBase UI
{
get { return _UI; }
set { _UI = value; }
}
/// <summary>
/// When an object is dragged over a document, this method is called to ask the document
/// whether the document will accept the data or not.
/// </summary>
/// <param name="data">The object which is dragged over</param>
/// <returns>True if the document can accept the data</returns>
public abstract bool CanAccept( object data );
/// <summary>
/// When an object is dragged and dropped on a document, this method is called so that
/// the document can process the object and then act accordingly.
/// </summary>
/// <param name="data">The object that is received from drag-drop</param>
/// <returns>True if the accept was a success</returns>
public abstract bool Accept( object data );
/// <summary>
/// Ask a document if a particular feature is supported. For example, ask a document
/// whether it supports drag drop.
/// </summary>
/// <param name="feature">Feature</param>
/// <returns>True if the feature is supported</returns>
public abstract bool IsFeatureSupported(object feature);
public DocumentBase( string name, string title, DocumentUIBase ui, object parent ) : base( parent )
{
this._Name = name;
this._Title = title;
// Pass the reference of the document to the Document UI
this._UI = ui;
this._UI.Document = this;
}
}
}
|
By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.
If a file you wish to view isn't highlighted, and is a text file (not binary), please
let us know and we'll add colourisation support for it.
This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.
A list of licenses authors might use can be found here