using Inet.Viewer.Data;
using System;
using System.Collections.Generic;
using System.Drawing;
using System.Linq;
using System.Text;
namespace Inet.Viewer
{
///
/// An implementation if this interface receives parsed information of a page during loading the report data.
///
public interface IPageReceiver
{
/// Sets the report info object, containing various report-wide information such as whether or not
/// the group tree is to be enabled, the list of possible export formats, the report title, etc.
/// the calling loader
/// true if rendering should be continued
bool WriteReportInfo(ReportInfo info, PageLoader loader);
/// Sets the page info object, containing various page-specific information such as page width, page height, etc.
/// for this page, and causes the page to be renewed to the new settings.
/// the calling loader
/// true if rendering should be continued
bool WritePageInfo(PageInfo info, PageLoader loader);
///
/// Retrieves the font specified by its ID and revision - thereby fetching it from the server if necessary
/// ID of the font
/// Revision number, that is, number of characters in the font
/// Embedded font
Font GetEmbeddedFont(int fontID, int fontRevision);
///
/// Called when the loading of the page fails.
///
/// exception with information about the failure
void PageLoadFailure(Exception exception);
}
}