subform3.h

Go to the documentation of this file.
00001 /***************************************************************************
00002  *   Copyright (C) 2005 by Tomeu Borras Riera                              *
00003  *   tborras@conetxia.com                                                  *
00004  *   http://www.iglues.org                                                 *
00005  *                                                                         *
00006  *   This program is free software; you can redistribute it and/or modify  *
00007  *   it under the terms of the GNU General Public License as published by  *
00008  *   the Free Software Foundation; either version 2 of the License, or     *
00009  *   (at your option) any later version.                                   *
00010  *                                                                         *
00011  *   This program is distributed in the hope that it will be useful,       *
00012  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
00013  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
00014  *   GNU General Public License for more details.                          *
00015  *                                                                         *
00016  *   You should have received a copy of the GNU General Public License     *
00017  *   along with this program; if not, write to the                         *
00018  *   Free Software Foundation, Inc.,                                       *
00019  *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
00020  ***************************************************************************/
00021 
00022 #ifndef SUBFORM3_H
00023 #define SUBFORM3_H
00024 
00025 #include <Qt>
00026 #include <QWidget>
00027 #include <QHeaderView>
00028 #include <QPalette>
00029 
00030 #include "ui_subform3base.h"
00031 #include "postgresiface2.h"
00032 #include "funcaux.h"
00033 #include "qtable2.h"
00034 #include "subform.h"
00035 #include "fixed.h"
00036 #include "blwidget.h"
00037 #include "plugins.h"
00038 #include "porcentajecarga.h"
00039 
00040 
00042 
00046 class SubForm3: public BLWidget, public Ui_SubForm3Base {
00047     Q_OBJECT
00048 
00049 private:
00050     virtual void cargar(cursor2 *cur);
00051 
00052 private:
00053     QString m_query;
00054 
00055 protected:
00057     QString m_tablename;
00059     QList<SHeader *> m_lcabecera;
00061     QList<SDBRecord *> m_lista;
00063     QList<SDBRecord *> m_listaborrar;
00065     QString m_fileconfig;
00067     QString m_campoid;
00069     bool m_insercion;
00071     bool m_primero;
00073     bool m_delete;
00075     bool m_sorting;
00077     bool m_orden;
00079     bool m_ordenporquery;
00081     bool m_procesacambios;
00083     QString m_textoceldaParaRowSpan;
00085     QString m_columnaParaRowSpan;
00088     int m_filaInicialRowSpan;
00089     QColor m_colorfondo1;
00090     QColor m_colorfondo2;
00091     void ponItemColorFondo(QTableWidget *twidget, int filainicial, int totalfilas, QColor colorfondo);
00092 
00093 public:
00095     int m_prevRow;
00097     int m_prevCol;
00098 
00099 protected:
00102     void guardaconfig();
00105     void cargaconfig();
00109     void cargaSpecs();
00112     virtual void pintaCabeceras();
00113 
00114 public:
00117     QList<SDBRecord *> *lista();
00119     QList<SHeader *> *cabecera();
00120 
00121 public:
00122     SubForm3(QWidget *parent);
00123     virtual ~SubForm3();
00124     virtual void setEmpresaBase(EmpresaBase *);
00125     void setProcesarCambios(bool);
00126     bool procesaCambios();
00128     void setListadoPijama(bool pijama);
00129     bool listadoPijama();
00131     void setHorizontalScrollMode(QAbstractItemView::ScrollMode mode);
00136     void setColorFondo1(QString color);
00137     void setColorFondo2(QString color);
00139     void setSortingEnabled(bool);
00141     bool sortingEnabled();
00145     void setOrdenEnabled(bool);
00146     void setOrdenPorQuery(bool);
00149     bool ordenEnabled();
00154     bool campoCompleto(int row);
00157     void setDelete(bool f);
00160     SDBCampo *item(int row, int col);
00162     void setCurrentItem(int row, int col);
00164     int columnCount();
00166     void showColumn(int i);
00168     int columnWidth(int i);
00170     void setColumnWidth(int i, int j);
00172     void hideColumn(int i);
00174     int currentRow();
00176     int rowCount();
00178     int currentColumn();
00180     void setResizeMode(QHeaderView::ResizeMode modo);
00183     void resizeColumnsToContents();
00186     void resizeRowsToContents();
00188     void resizeColumnToContents(int i);
00190     void resizeRowToContents(int i);
00192     void hideConfig();
00194     void showConfig();
00196     QString imprimir();
00197     void sortItems(int col, Qt::SortOrder orden);
00198     void setinsercion(bool b);
00201     void setColumnToRowSpan(QString campo);
00202     void setDBTableName(QString nom);
00203     QString tableName();
00204     void setFileConfig(QString nom);
00205     void setDBCampoId(QString nom);
00206     void clear();
00207     void setRowCount(int i);
00208     void setColumnCount(int i);
00209     void situarse(unsigned int, unsigned int);
00210     void situarse1(unsigned int, unsigned int);
00211     int addSHeader(QString nom, DBCampo::dbtype typ, int res, int opt, QString nomp);
00212     SDBRecord *newSDBRecord();
00213     virtual void setColumnValue(QString, QString);
00214     QString DBvalue(const QString &campo, int row = -1);
00215     void setDBvalue(const QString &campo, int row, const QString &valor);
00216     SDBRecord *lineaact();
00217     SDBRecord *lineaat(int row);
00218     virtual void imprimirPDF(const QString &);
00219     virtual void nuevoRegistro();
00220     virtual int borrar();
00221     virtual int borrar(int);
00222     virtual int guardar();
00223     virtual void cargar(QString query);
00224     virtual int inicializar();
00225     virtual void pintar();
00226     virtual void creaMenu(QMenu *);
00227     virtual void procesaMenu(QAction *);
00228     virtual Fixed sumarCampo(QString);
00229     bool existsHeader(const QString &);
00230     virtual int cerrarEditor();
00231     virtual void confquery();
00232     QString columnDBfieldName(int columna);
00233 
00234 public slots:
00235     virtual void on_mui_list_cellRePosition(int, int);
00236     virtual void on_mui_list_cellChanged(int, int);
00237     virtual void contextMenuEvent(QContextMenuEvent *);
00238     virtual void on_mui_confcol_clicked();
00239     virtual void on_mui_confquery_clicked();
00240     virtual void on_mui_list_pressedSlash(int row, int col);
00241     virtual void on_mui_list_pressedAsterisk(int row, int col);
00242     virtual void on_mui_list_pressedPlus(int row, int col);
00243     virtual void on_mui_list_pressedMinus(int row, int col);
00244     virtual void on_mui_list_ctrlSubir(int row, int col);
00245     virtual void on_mui_list_ctrlBajar(int row, int col);
00246     virtual void on_mui_pagsiguiente_clicked();
00247     virtual void on_mui_paganterior_clicked();
00248     virtual void on_mui_list_itemDoubleClicked(QTableWidgetItem *item);
00249     virtual void on_mui_list_itemClicked(QTableWidgetItem *item);
00250     virtual void on_mui_list_cellDoubleClicked(int row, int col);
00251     virtual void toogleConfig();
00252     virtual void on_mui_botonCerrar_clicked();
00253     virtual void on_mui_list_itemChanged(QTableWidgetItem *it);
00254 
00255 signals:
00256     void toogledConfig(bool);
00257     void editFinish(int, int);
00258     void itemDoubleClicked(QTableWidgetItem *);
00259     void itemClicked(QTableWidgetItem *);
00260     void cellDoubleClicked(int row, int col);
00261     void pintaMenu(QMenu *);
00262     void trataMenu(QAction *);
00263 };
00264 
00265 #endif
00266 

Generated on Sat Dec 15 00:01:23 2007 for BulmaGes by  doxygen 1.5.1