KWMySqlCursor.h
1/* This file is part of the KDE project
2 Copyright (C) 2001 Joseph Wenninger <jowenn@kde.org>
3
4 This library is free software; you can redistribute it and/or
5 modify it under the terms of the GNU Library General Public
6 License as published by the Free Software Foundation; either
7 version 2 of the License, or (at your option) any later version.
8
9 This library is distributed in the hope that it will be useful,
10 but WITHOUT ANY WARRANTY; without even the implied warranty of
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 Library General Public License for more details.
13
14 You should have received a copy of the GNU Library General Public License
15 along with this library; see the file COPYING.LIB. If not, write to
16 the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
17 * Boston, MA 02110-1301, USA.
18*/
19
20#ifndef _SERIALLETTER_QtSql_SQLCURSOR_H_
21#define _SERIALLETTER_QtSql_SQLCURSOR_H_
22
23/* FOR THE DIRTY HACK */
24#include <tqsqlcursor.h>
25#include <tqsqldriver.h>
26/* END FOR THE DIRTY HACK */
27
28/******************************************************************
29 *
30 * DIRTY HACK FOR SOME INFLEXIBILITY IN QT3's SQL stuff
31 *
32 * This class is from some Trolltech guy on QT-interest
33 ******************************************************************/
34
35
36
37class KWMySqlCursor: public TQSqlCursor
38{
39public:
40 KWMySqlCursor( const TQString & query = TQString(), bool autopopulate =
41true, TQSqlDatabase* db = 0 ): TQSqlCursor( TQString(), autopopulate, db )
42 {
43 exec( query );
44 if ( autopopulate )
45 *(TQSqlRecord*)this = ((TQSqlQuery*)this)->driver()->record(
46*(TQSqlQuery*)this );
47 setMode( TQSqlCursor::ReadOnly );
48 }
49 KWMySqlCursor( const KWMySqlCursor & other ): TQSqlCursor( other ) {}
50 KWMySqlCursor( const TQSqlQuery & query, bool autopopulate = true ):
51TQSqlCursor( TQString(), autopopulate )
52 {
53 *(TQSqlQuery*)this = query;
54 if ( autopopulate )
55 *(TQSqlRecord*)this = query.driver()->record( query );
56 setMode( TQSqlCursor::ReadOnly );
57 }
58 bool select( const TQString & /*filter*/, const TQSqlIndex & /*sort*/ =
59TQSqlIndex() ) { return exec( lastQuery() ); }
60 TQSqlIndex primaryIndex( bool /*prime*/ = true ) const { return
61TQSqlIndex(); }
62 int insert( bool /*invalidate*/ = true ) { return false; }
63 int update( bool /*invalidate*/ = true ) { return false; }
64 int del( bool /*invalidate*/ = true ) { return false; }
65 void setName( const TQString& /*name*/, bool /*autopopulate*/ = true ) {}
66};
67
68
69#endif