xlang v4.0 Release
程序设计语言基础库文档
载入中...
搜索中...
未找到
ReportEngine.xcsm
浏览该文件的文档.
1//xlang Source, Name:ReportEngine.xcsm
2//Date: Tue Sep 00:53:24 2019
3
4package Qt{
5 @SuppressWarnings public class ReportEngine : QObject{
6 enum DataType{IsEmpty, HasNext, ColumnHeaderData, ColumnData, ColumnCount, RowCount};
7 enum ChangePosType{Invalid = -1,First, Next};
8 enum PreviewHint{ShowAllPreviewBars = 0,
9 HidePreviewToolBar = 1,
10 HidePreviewMenuBar = 2,
11 HidePreviewStatusBar = 4,
12 HideAllPreviewBar = 7,
13 PreviewBarsUserSetting = 8};
14
15 static class ICallbackDatasource : QCore {
16 Object getCallbackData(DataType dataType,int index, String columnName);
17 bool changePos(ChangePosType type);
18 };
19
20 interface RenderListener{
21 void renderStarted(ReportEngine engine);
22 void renderPageFinished(ReportEngine engine, int renderedPageCount);
23 void renderFinished(ReportEngine engine);
24 };
25
26 RenderListener listener = nilptr;
27
28 ReportEngine() {//构造
29 //TODO:
30 }
31
32 ReportEngine(long handle) {//构造
33 super(handle);
34 }
35
36 bool registryDataSource(String name,@NotNilptr ICallbackDatasource dataSource){
37 dataSource.nativehandle = QtXnl.long_object_string(nativehandle, Constant.REGDATASOURCE, dataSource, name);
38 if (dataSource.nativehandle == 0){
39 return false;
40 }
41 return true;
42 }
43
44 bool create(){
45 nativehandle = QtXnl.createQObject(QType.qtReportEngine, this, 0);
46 if (nativehandle == 0){
47 return false;
48 }
49 return true;
50 }
51
52 bool create(@NotNilptr QWidget parent){
53 nativehandle = QtXnl.createQObject(QType.qtReportEngine, this, parent.nativehandle);
54 if (nativehandle == 0){
55 return false;
56 }
57 return true;
58 }
59
61 if (listener != nilptr){
62 listener.renderStarted(this);
63 }
64 }
65
66 void renderPageFinished(int renderedPageCount){
67 if (listener != nilptr){
68 listener.renderPageFinished(this, renderedPageCount);
69 }
70 }
71
73 if (listener != nilptr){
74 listener.renderFinished(this);
75 }
76 }
77
78 bool loadFromFile(String reportTemplate){
79 return QtXnl.widget_set_intstring_value(nativehandle, Constant.LOADREPORTFROMFILE, 0, reportTemplate) != 0;
80 }
81
82 bool loadFromString(String reportTemplateText){
83 return QtXnl.widget_set_intstring_value(nativehandle, Constant.LOADREPORTFROMTEXT, 0, reportTemplateText) != 0;
84 }
85
86 void previewReport(PreviewHint hint){
87 QtXnl.widget_set_vint_value(nativehandle, Constant.SHOWREPORT, hint);
88 }
89 };
90};
Object getCallbackData(DataType dataType,int index, String columnName)
bool changePos(ChangePosType type)
bool create(@NotNilptr QWidget parent)
void previewReport(PreviewHint hint)
bool loadFromFile(String reportTemplate)
ReportEngine(long handle)
bool registryDataSource(String name,@NotNilptr ICallbackDatasource dataSource)
bool loadFromString(String reportTemplateText)
void renderPageFinished(int renderedPageCount)
字符串类
void renderPageFinished(ReportEngine engine, int renderedPageCount)
void renderFinished(ReportEngine engine)
void renderStarted(ReportEngine engine)