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 _CTCOMBOS_H_
00031 #define _CTCOMBOS_H_
00032
00033
00034
00035
00036 #include <vector>
00037
00038
00039 #include <osbid.h>
00040 #include <osbtype.h>
00041 #include <taxkey.h>
00042 #include <osbconst.h>
00043
00044
00045 #include "osbcombos.h"
00046
00047
00048
00049 namespace OSB_LIB {
00050 class Account;
00051 class Currency;
00052 class RoundRule;
00053 class TaxKey;
00054 }
00055
00056
00057
00058 namespace OSB_GUI {
00059
00060
00061
00062
00063
00064
00065
00066
00067
00068
00070 typedef ValueCombo<std::string> CmbCurrencyBase;
00074 class CmbCurrency : public CmbCurrencyBase {
00075 Q_OBJECT
00076 public:
00078 CmbCurrency(
00079 QWidget* parent,
00080 const char* name = "cmbCurrency_"
00081 );
00082 public:
00089 void populate();
00090 public slots:
00097 void activated();
00098 signals:
00110 void activated(const OSB_LIB::Currency& c);
00111 };
00112
00116 class CmbTaxKey
00117 : public ValueCombo< OSB_LIB::Id<OSB_LIB::TaxKey> >
00118 {
00119 public:
00121 typedef OSB_LIB::TaxKeyType Tkt;
00122 public:
00124 CmbTaxKey(
00125 QWidget* parent,
00126 const char* name = "cmbTaxKey_"
00127 );
00129 CmbTaxKey(
00130 const Tkt& tkt,
00131 QWidget* parent,
00132 const char* name = "cmbTaxKey_"
00133 );
00135 void setTaxKeyType(const Tkt& tkt);
00142 void populate();
00143 private:
00145 Tkt tkt_;
00146 };
00147
00151 class CmbRoundRule
00152 : public ValueCombo< OSB_LIB::Id<OSB_LIB::RoundRule> >
00153 {
00154 public:
00156 CmbRoundRule(
00157 QWidget* parent,
00158 const char* name = "cmbRoundRule_"
00159 );
00166 void populate();
00167 };
00168
00174 class CmbGlAccount
00175 : public ValueCombo< OSB_LIB::Id<OSB_LIB::Account> >
00176 {
00177 public:
00179 CmbGlAccount(
00180 QWidget* parent,
00181 const char* name = "cmdGlAccount_"
00182 );
00183 public:
00190 void populate();
00191 };
00192
00196 class CmbChargeType
00197 : public ValueCombo<OSB_LIB::ChargeType>
00198 {
00199 public:
00201 CmbChargeType(
00202 QWidget* parent,
00203 const char* name = "cmbChargeType_"
00204 );
00205 public:
00211 void populate();
00212 };
00213 }
00214 #endif // #ifndef _CTCOMBOS_H_