00001
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030 #ifndef _DLGSTREAMINFO_H_
00031 #define _DLGSTREAMINFO_H_
00032
00033
00034
00035
00036 #include <set>
00037
00038
00039 #include <osbid.h>
00040
00041
00042 #include "streaminfogui.h"
00043
00044
00045 namespace OSB_LIB {
00046 class RecordStreamInfo;
00047 class CaStreamResult;
00048 }
00049
00050 class QFrame;
00051 class QGridLayout;
00052 class QLabel;
00053 class QSpacerItem;
00054
00055
00056
00057 namespace OSB_GUI {
00058
00059
00060
00061 class StreamCaWidget;
00062
00063
00064
00065
00066
00067
00071 class DlgStreamInfo : public StreamInfoGui {
00072 Q_OBJECT
00073 public:
00075 explicit DlgStreamInfo(
00076 QWidget* parent = 0,
00077 const char* name = 0,
00078 bool modal = false,
00079 WFlags flags = 0
00080 );
00081 public:
00083 void languageChange();
00084
00092 int exec(
00093 const OSB_LIB::RecordStreamInfo& rsInfo,
00094 const OSB_LIB::CaStreamResult& caRes
00095 );
00096
00103 void show(
00104 const OSB_LIB::RecordStreamInfo& rsInfo,
00105 const OSB_LIB::CaStreamResult& caRes
00106 );
00107
00114 bool showCaPage();
00115
00121 void done(int r);
00122
00128 const OSB_LIB::Id<OSB_LIB::RecordStreamInfo> rsId() const
00129 {
00130 return rsId_;
00131 }
00132
00133 signals:
00139 void sigDone(const DlgStreamInfo* dlg);
00140 private:
00142 void setup(
00143 const OSB_LIB::RecordStreamInfo& rsInfo,
00144 const OSB_LIB::CaStreamResult& caRes
00145 );
00146 private:
00148 OSB_LIB::Id<OSB_LIB::RecordStreamInfo> rsId_;
00150 StreamCaWidget* caResult_;
00151 };
00152
00156 class StreamCaWidget : public QWidget {
00157 public:
00159 explicit StreamCaWidget(
00160 QWidget* parent,
00161 const char* name = "streamCa_",
00162 WFlags flags = 0
00163 );
00164
00165 public:
00167 void languageChange();
00169 void populate(
00170 const OSB_LIB::CaStreamResult& caRes
00171 );
00172
00173 private:
00175 void build(
00176 const OSB_LIB::CaStreamResult& caRes
00177 );
00179 void addLabel(
00180 const std::string& text,
00181 int row,
00182 int col
00183 );
00184
00185 private:
00187 QGridLayout* lo_;
00189 QLabel* tlPct_;
00191 QLabel* tlRecs_;
00193 QFrame* lineHead_;
00195 QLabel* tlOriginal_;
00197 QLabel* tlNumRecs_;
00198
00200 std::set<QLabel*> labels_;
00201
00203 QSpacerItem* spBottom_;
00204 };
00205 }
00206
00207
00208
00209 namespace OSB_GUI {
00210 }
00211 #endif // #ifndef _DLGSTREAMINFO_H_