author | ar <ar> | 2004-05-31 15:26:50 (UTC) |
---|---|---|
committer | ar <ar> | 2004-05-31 15:26:50 (UTC) |
commit | 27dfc34d411dee76f09f5e516c60b0a64eb35948 (patch) (unidiff) | |
tree | b7f7259497630390e352a1257cac5dc59f5399a6 /noncore/apps | |
parent | 27b09fe4f930b96e82cea9fb0eb1a9b87f7ec062 (diff) | |
download | opie-27dfc34d411dee76f09f5e516c60b0a64eb35948.zip opie-27dfc34d411dee76f09f5e516c60b0a64eb35948.tar.gz opie-27dfc34d411dee76f09f5e516c60b0a64eb35948.tar.bz2 |
- convert qWarning to owarn
-rw-r--r-- | noncore/apps/opie-write/qrichtext_p.h | 157 | ||||
-rw-r--r-- | noncore/apps/tableviewer/browsekeyentry.cpp | 53 | ||||
-rw-r--r-- | noncore/apps/tableviewer/db/common.cpp | 165 | ||||
-rw-r--r-- | noncore/apps/tableviewer/db/datacache.cpp | 68 | ||||
-rw-r--r-- | noncore/apps/tableviewer/db/datacache.h | 24 | ||||
-rw-r--r-- | noncore/apps/tableviewer/ui/browsekeyentry.cpp | 49 | ||||
-rw-r--r-- | noncore/apps/tableviewer/ui/filterkeyentry.cpp | 42 | ||||
-rw-r--r-- | noncore/apps/tableviewer/ui/tvfilterview.cpp | 55 | ||||
-rw-r--r-- | noncore/apps/tinykate/libkate/kateconfig.cpp | 4 | ||||
-rw-r--r-- | noncore/apps/zsafe/main.cpp | 25 | ||||
-rw-r--r-- | noncore/apps/zsafe/zlistview.cpp | 11 | ||||
-rw-r--r-- | noncore/apps/zsafe/zsafe.cpp | 51 |
12 files changed, 361 insertions, 343 deletions
diff --git a/noncore/apps/opie-write/qrichtext_p.h b/noncore/apps/opie-write/qrichtext_p.h index e368edb..3778feb 100644 --- a/noncore/apps/opie-write/qrichtext_p.h +++ b/noncore/apps/opie-write/qrichtext_p.h | |||
@@ -47,12 +47,15 @@ | |||
47 | // version to version without notice, or even be removed. | 47 | // version to version without notice, or even be removed. |
48 | // | 48 | // |
49 | // We mean it. | 49 | // We mean it. |
50 | // | 50 | // |
51 | // | 51 | // |
52 | 52 | ||
53 | #include <opie2/odebug.h> | ||
54 | using namespace Opie::Core; | ||
55 | |||
53 | #ifndef QT_H | 56 | #ifndef QT_H |
54 | #include "qstring.h" | 57 | #include "qstring.h" |
55 | #include "qlist.h" | 58 | #include "qlist.h" |
56 | #include "qrect.h" | 59 | #include "qrect.h" |
57 | #include "qfontmetrics.h" | 60 | #include "qfontmetrics.h" |
58 | #include "qintdict.h" | 61 | #include "qintdict.h" |
@@ -121,34 +124,34 @@ public: | |||
121 | QTextFormat *format() const; | 124 | QTextFormat *format() const; |
122 | QTextCustomItem *customItem() const; | 125 | QTextCustomItem *customItem() const; |
123 | void setFormat( QTextFormat *f ); | 126 | void setFormat( QTextFormat *f ); |
124 | void setCustomItem( QTextCustomItem *i ); | 127 | void setCustomItem( QTextCustomItem *i ); |
125 | struct CustomData | 128 | struct CustomData |
126 | { | 129 | { |
127 | QTextFormat *format; | 130 | QTextFormat *format; |
128 | QTextCustomItem *custom; | 131 | QTextCustomItem *custom; |
129 | QString anchorName; | 132 | QString anchorName; |
130 | QString anchorHref; | 133 | QString anchorHref; |
131 | }; | 134 | }; |
132 | 135 | ||
133 | void loseCustomItem(); | 136 | void loseCustomItem(); |
134 | 137 | ||
135 | union { | 138 | union { |
136 | QTextFormat* format; | 139 | QTextFormat* format; |
137 | CustomData* custom; | 140 | CustomData* custom; |
138 | } d; | 141 | } d; |
139 | 142 | ||
140 | bool isAnchor() const { return ( type & Anchor) != 0; } | 143 | bool isAnchor() const { return ( type & Anchor) != 0; } |
141 | QString anchorName() const; | 144 | QString anchorName() const; |
142 | QString anchorHref() const; | 145 | QString anchorHref() const; |
143 | void setAnchor( const QString& name, const QString& href ); | 146 | void setAnchor( const QString& name, const QString& href ); |
144 | 147 | ||
145 | private: | 148 | private: |
146 | QTextStringChar &operator=( const QTextStringChar & ) { | 149 | QTextStringChar &operator=( const QTextStringChar & ) { |
147 | //abort(); | 150 | //abort(); |
148 | return *this; | 151 | return *this; |
149 | } | 152 | } |
150 | friend class QComplexText; | 153 | friend class QComplexText; |
151 | friend class QTextParagraph; | 154 | friend class QTextParagraph; |
152 | }; | 155 | }; |
153 | 156 | ||
154 | #if defined(Q_TEMPLATEDLL) | 157 | #if defined(Q_TEMPLATEDLL) |
@@ -205,20 +208,20 @@ private: | |||
205 | uint dir : 5; | 208 | uint dir : 5; |
206 | }; | 209 | }; |
207 | 210 | ||
208 | inline bool QTextString::isBidi() const | 211 | inline bool QTextString::isBidi() const |
209 | { | 212 | { |
210 | if ( bidiDirty ) | 213 | if ( bidiDirty ) |
211 | checkBidi(); | 214 | checkBidi(); |
212 | return bidi; | 215 | return bidi; |
213 | } | 216 | } |
214 | 217 | ||
215 | inline bool QTextString::isRightToLeft() const | 218 | inline bool QTextString::isRightToLeft() const |
216 | { | 219 | { |
217 | if ( bidiDirty ) | 220 | if ( bidiDirty ) |
218 | checkBidi(); | 221 | checkBidi(); |
219 | return rightToLeft; | 222 | return rightToLeft; |
220 | } | 223 | } |
221 | 224 | ||
222 | inline QChar::Direction QTextString::direction() const | 225 | inline QChar::Direction QTextString::direction() const |
223 | { | 226 | { |
224 | return (QChar::Direction) dir; | 227 | return (QChar::Direction) dir; |
@@ -381,13 +384,13 @@ inline QTextCommandHistory::~QTextCommandHistory() | |||
381 | // +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ | 384 | // +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
382 | 385 | ||
383 | class Q_EXPORT QTextCustomItem | 386 | class Q_EXPORT QTextCustomItem |
384 | { | 387 | { |
385 | public: | 388 | public: |
386 | QTextCustomItem( QTextDocument *p ) | 389 | QTextCustomItem( QTextDocument *p ) |
387 | : xpos(0), ypos(-1), width(-1), height(0), parent( p ) | 390 | : xpos(0), ypos(-1), width(-1), height(0), parent( p ) |
388 | {} | 391 | {} |
389 | virtual ~QTextCustomItem(); | 392 | virtual ~QTextCustomItem(); |
390 | virtual void draw(QPainter* p, int x, int y, int cx, int cy, int cw, int ch, const QColorGroup& cg, bool selected ) = 0; | 393 | virtual void draw(QPainter* p, int x, int y, int cx, int cy, int cw, int ch, const QColorGroup& cg, bool selected ) = 0; |
391 | 394 | ||
392 | virtual void adjustToPainter( QPainter* ); | 395 | virtual void adjustToPainter( QPainter* ); |
393 | 396 | ||
@@ -435,13 +438,13 @@ Q_TEMPLATE_EXTERN template class Q_EXPORT QMap<QString, QString>; | |||
435 | #endif | 438 | #endif |
436 | 439 | ||
437 | class Q_EXPORT QTextImage : public QTextCustomItem | 440 | class Q_EXPORT QTextImage : public QTextCustomItem |
438 | { | 441 | { |
439 | public: | 442 | public: |
440 | QTextImage( QTextDocument *p, const QMap<QString, QString> &attr, const QString& context, | 443 | QTextImage( QTextDocument *p, const QMap<QString, QString> &attr, const QString& context, |
441 | QMimeSourceFactory &factory ); | 444 | QMimeSourceFactory &factory ); |
442 | virtual ~QTextImage(); | 445 | virtual ~QTextImage(); |
443 | 446 | ||
444 | Placement placement() const { return place; } | 447 | Placement placement() const { return place; } |
445 | void adjustToPainter( QPainter* ); | 448 | void adjustToPainter( QPainter* ); |
446 | int minimumWidth() const { return width; } | 449 | int minimumWidth() const { return width; } |
447 | 450 | ||
@@ -460,13 +463,13 @@ private: | |||
460 | }; | 463 | }; |
461 | 464 | ||
462 | class Q_EXPORT QTextHorizontalLine : public QTextCustomItem | 465 | class Q_EXPORT QTextHorizontalLine : public QTextCustomItem |
463 | { | 466 | { |
464 | public: | 467 | public: |
465 | QTextHorizontalLine( QTextDocument *p, const QMap<QString, QString> &attr, const QString& context, | 468 | QTextHorizontalLine( QTextDocument *p, const QMap<QString, QString> &attr, const QString& context, |
466 | QMimeSourceFactory &factory ); | 469 | QMimeSourceFactory &factory ); |
467 | virtual ~QTextHorizontalLine(); | 470 | virtual ~QTextHorizontalLine(); |
468 | 471 | ||
469 | void adjustToPainter( QPainter* ); | 472 | void adjustToPainter( QPainter* ); |
470 | void draw(QPainter* p, int x, int y, int cx, int cy, int cw, int ch, const QColorGroup& cg, bool selected ); | 473 | void draw(QPainter* p, int x, int y, int cx, int cy, int cw, int ch, const QColorGroup& cg, bool selected ); |
471 | QString richText() const; | 474 | QString richText() const; |
472 | 475 | ||
@@ -529,17 +532,17 @@ class QTextTable; | |||
529 | class Q_EXPORT QTextTableCell : public QLayoutItem | 532 | class Q_EXPORT QTextTableCell : public QLayoutItem |
530 | { | 533 | { |
531 | friend class QTextTable; | 534 | friend class QTextTable; |
532 | 535 | ||
533 | public: | 536 | public: |
534 | QTextTableCell( QTextTable* table, | 537 | QTextTableCell( QTextTable* table, |
535 | int row, int column, | 538 | int row, int column, |
536 | const QMap<QString, QString> &attr, | 539 | const QMap<QString, QString> &attr, |
537 | const QStyleSheetItem* style, | 540 | const QStyleSheetItem* style, |
538 | const QTextFormat& fmt, const QString& context, | 541 | const QTextFormat& fmt, const QString& context, |
539 | QMimeSourceFactory &factory, QStyleSheet *sheet, const QString& doc ); | 542 | QMimeSourceFactory &factory, QStyleSheet *sheet, const QString& doc ); |
540 | virtual ~QTextTableCell(); | 543 | virtual ~QTextTableCell(); |
541 | 544 | ||
542 | QSize sizeHint() const ; | 545 | QSize sizeHint() const ; |
543 | QSize minimumSize() const ; | 546 | QSize minimumSize() const ; |
544 | QSize maximumSize() const ; | 547 | QSize maximumSize() const ; |
545 | QSizePolicy::ExpandData expanding() const; | 548 | QSizePolicy::ExpandData expanding() const; |
@@ -603,13 +606,13 @@ public: | |||
603 | QTextTable( QTextDocument *p, const QMap<QString, QString> &attr ); | 606 | QTextTable( QTextDocument *p, const QMap<QString, QString> &attr ); |
604 | virtual ~QTextTable(); | 607 | virtual ~QTextTable(); |
605 | 608 | ||
606 | void adjustToPainter( QPainter *p ); | 609 | void adjustToPainter( QPainter *p ); |
607 | void pageBreak( int y, QTextFlow* flow ); | 610 | void pageBreak( int y, QTextFlow* flow ); |
608 | void draw( QPainter* p, int x, int y, int cx, int cy, int cw, int ch, | 611 | void draw( QPainter* p, int x, int y, int cx, int cy, int cw, int ch, |
609 | const QColorGroup& cg, bool selected ); | 612 | const QColorGroup& cg, bool selected ); |
610 | 613 | ||
611 | bool noErase() const { return TRUE; } | 614 | bool noErase() const { return TRUE; } |
612 | bool ownLine() const { return TRUE; } | 615 | bool ownLine() const { return TRUE; } |
613 | Placement placement() const { return place; } | 616 | Placement placement() const { return place; } |
614 | bool isNested() const { return TRUE; } | 617 | bool isNested() const { return TRUE; } |
615 | void resize( int nwidth ); | 618 | void resize( int nwidth ); |
@@ -681,15 +684,15 @@ class Q_EXPORT QTextDocument : public QObject | |||
681 | friend class QTextCursor; | 684 | friend class QTextCursor; |
682 | friend class QTextEdit; | 685 | friend class QTextEdit; |
683 | friend class QTextParagraph; | 686 | friend class QTextParagraph; |
684 | 687 | ||
685 | public: | 688 | public: |
686 | enum SelectionIds { | 689 | enum SelectionIds { |
687 | Standard = 0, | 690 | Standard = 0, |
688 | Temp = 32000 // This selection must not be drawn, it's used e.g. by undo/redo to | 691 | Temp = 32000 // This selection must not be drawn, it's used e.g. by undo/redo to |
689 | // remove multiple lines with removeSelectedText() | 692 | // remove multiple lines with removeSelectedText() |
690 | }; | 693 | }; |
691 | 694 | ||
692 | QTextDocument( QTextDocument *p ); | 695 | QTextDocument( QTextDocument *p ); |
693 | QTextDocument( QTextDocument *d, QTextFormatCollection *f ); | 696 | QTextDocument( QTextDocument *d, QTextFormatCollection *f ); |
694 | virtual ~QTextDocument(); | 697 | virtual ~QTextDocument(); |
695 | 698 | ||
@@ -788,17 +791,17 @@ public: | |||
788 | void setPaper( QBrush *brush ) { if ( backBrush ) delete backBrush; backBrush = brush; } | 791 | void setPaper( QBrush *brush ) { if ( backBrush ) delete backBrush; backBrush = brush; } |
789 | QBrush *paper() const { return backBrush; } | 792 | QBrush *paper() const { return backBrush; } |
790 | 793 | ||
791 | void doLayout( QPainter *p, int w ); | 794 | void doLayout( QPainter *p, int w ); |
792 | void draw( QPainter *p, const QRect& rect, const QColorGroup &cg, const QBrush *paper = 0 ); | 795 | void draw( QPainter *p, const QRect& rect, const QColorGroup &cg, const QBrush *paper = 0 ); |
793 | void drawParagraph( QPainter *p, QTextParagraph *parag, int cx, int cy, int cw, int ch, | 796 | void drawParagraph( QPainter *p, QTextParagraph *parag, int cx, int cy, int cw, int ch, |
794 | QPixmap *&doubleBuffer, const QColorGroup &cg, | 797 | QPixmap *&doubleBuffer, const QColorGroup &cg, |
795 | bool drawCursor, QTextCursor *cursor, bool resetChanged = TRUE ); | 798 | bool drawCursor, QTextCursor *cursor, bool resetChanged = TRUE ); |
796 | QTextParagraph *draw( QPainter *p, int cx, int cy, int cw, int ch, const QColorGroup &cg, | 799 | QTextParagraph *draw( QPainter *p, int cx, int cy, int cw, int ch, const QColorGroup &cg, |
797 | bool onlyChanged = FALSE, bool drawCursor = FALSE, QTextCursor *cursor = 0, | 800 | bool onlyChanged = FALSE, bool drawCursor = FALSE, QTextCursor *cursor = 0, |
798 | bool resetChanged = TRUE ); | 801 | bool resetChanged = TRUE ); |
799 | 802 | ||
800 | void registerCustomItem( QTextCustomItem *i, QTextParagraph *p ); | 803 | void registerCustomItem( QTextCustomItem *i, QTextParagraph *p ); |
801 | void unregisterCustomItem( QTextCustomItem *i, QTextParagraph *p ); | 804 | void unregisterCustomItem( QTextCustomItem *i, QTextParagraph *p ); |
802 | 805 | ||
803 | void setFlow( QTextFlow *f ); | 806 | void setFlow( QTextFlow *f ); |
804 | void takeFlow(); | 807 | void takeFlow(); |
@@ -855,28 +858,28 @@ private: | |||
855 | void init(); | 858 | void init(); |
856 | QPixmap *bufferPixmap( const QSize &s ); | 859 | QPixmap *bufferPixmap( const QSize &s ); |
857 | // HTML parser | 860 | // HTML parser |
858 | bool hasPrefix(const QChar* doc, int length, int pos, QChar c); | 861 | bool hasPrefix(const QChar* doc, int length, int pos, QChar c); |
859 | bool hasPrefix(const QChar* doc, int length, int pos, const QString& s); | 862 | bool hasPrefix(const QChar* doc, int length, int pos, const QString& s); |
860 | QTextCustomItem* parseTable( const QMap<QString, QString> &attr, const QTextFormat &fmt, | 863 | QTextCustomItem* parseTable( const QMap<QString, QString> &attr, const QTextFormat &fmt, |
861 | const QChar* doc, int length, int& pos, QTextParagraph *curpar ); | 864 | const QChar* doc, int length, int& pos, QTextParagraph *curpar ); |
862 | bool eatSpace(const QChar* doc, int length, int& pos, bool includeNbsp = FALSE ); | 865 | bool eatSpace(const QChar* doc, int length, int& pos, bool includeNbsp = FALSE ); |
863 | bool eat(const QChar* doc, int length, int& pos, QChar c); | 866 | bool eat(const QChar* doc, int length, int& pos, QChar c); |
864 | QString parseOpenTag(const QChar* doc, int length, int& pos, QMap<QString, QString> &attr, bool& emptyTag); | 867 | QString parseOpenTag(const QChar* doc, int length, int& pos, QMap<QString, QString> &attr, bool& emptyTag); |
865 | QString parseCloseTag( const QChar* doc, int length, int& pos ); | 868 | QString parseCloseTag( const QChar* doc, int length, int& pos ); |
866 | QChar parseHTMLSpecialChar(const QChar* doc, int length, int& pos); | 869 | QChar parseHTMLSpecialChar(const QChar* doc, int length, int& pos); |
867 | QString parseWord(const QChar* doc, int length, int& pos, bool lower = TRUE); | 870 | QString parseWord(const QChar* doc, int length, int& pos, bool lower = TRUE); |
868 | QChar parseChar(const QChar* doc, int length, int& pos, QStyleSheetItem::WhiteSpaceMode wsm ); | 871 | QChar parseChar(const QChar* doc, int length, int& pos, QStyleSheetItem::WhiteSpaceMode wsm ); |
869 | void setRichTextInternal( const QString &text, QTextCursor* cursor = 0 ); | 872 | void setRichTextInternal( const QString &text, QTextCursor* cursor = 0 ); |
870 | void setRichTextMarginsInternal( QPtrList< QPtrVector<QStyleSheetItem> >& styles, QTextParagraph* stylesPar ); | 873 | void setRichTextMarginsInternal( QPtrList< QPtrVector<QStyleSheetItem> >& styles, QTextParagraph* stylesPar ); |
871 | 874 | ||
872 | private: | 875 | private: |
873 | struct Q_EXPORT Focus { | 876 | struct Q_EXPORT Focus { |
874 | QTextParagraph *parag; | 877 | QTextParagraph *parag; |
875 | int start, len; | 878 | int start, len; |
876 | QString href; | 879 | QString href; |
877 | }; | 880 | }; |
878 | 881 | ||
879 | int cx, cy, cw, vw; | 882 | int cx, cy, cw, vw; |
880 | QTextParagraph *fParag, *lParag; | 883 | QTextParagraph *fParag, *lParag; |
881 | QTextPreProcessor *pProcessor; | 884 | QTextPreProcessor *pProcessor; |
882 | QMap<int, QColor> selectionColors; | 885 | QMap<int, QColor> selectionColors; |
@@ -928,13 +931,13 @@ private: | |||
928 | 931 | ||
929 | 932 | ||
930 | class Q_EXPORT QTextDeleteCommand : public QTextCommand | 933 | class Q_EXPORT QTextDeleteCommand : public QTextCommand |
931 | { | 934 | { |
932 | public: | 935 | public: |
933 | QTextDeleteCommand( QTextDocument *d, int i, int idx, const QMemArray<QTextStringChar> &str, | 936 | QTextDeleteCommand( QTextDocument *d, int i, int idx, const QMemArray<QTextStringChar> &str, |
934 | const QByteArray& oldStyle ); | 937 | const QByteArray& oldStyle ); |
935 | QTextDeleteCommand( QTextParagraph *p, int idx, const QMemArray<QTextStringChar> &str ); | 938 | QTextDeleteCommand( QTextParagraph *p, int idx, const QMemArray<QTextStringChar> &str ); |
936 | virtual ~QTextDeleteCommand(); | 939 | virtual ~QTextDeleteCommand(); |
937 | 940 | ||
938 | Commands type() const { return Delete; } | 941 | Commands type() const { return Delete; } |
939 | QTextCursor *execute( QTextCursor *c ); | 942 | QTextCursor *execute( QTextCursor *c ); |
940 | QTextCursor *unexecute( QTextCursor *c ); | 943 | QTextCursor *unexecute( QTextCursor *c ); |
@@ -948,16 +951,16 @@ protected: | |||
948 | }; | 951 | }; |
949 | 952 | ||
950 | class Q_EXPORT QTextInsertCommand : public QTextDeleteCommand | 953 | class Q_EXPORT QTextInsertCommand : public QTextDeleteCommand |
951 | { | 954 | { |
952 | public: | 955 | public: |
953 | QTextInsertCommand( QTextDocument *d, int i, int idx, const QMemArray<QTextStringChar> &str, | 956 | QTextInsertCommand( QTextDocument *d, int i, int idx, const QMemArray<QTextStringChar> &str, |
954 | const QByteArray& oldStyleInfo ) | 957 | const QByteArray& oldStyleInfo ) |
955 | : QTextDeleteCommand( d, i, idx, str, oldStyleInfo ) {} | 958 | : QTextDeleteCommand( d, i, idx, str, oldStyleInfo ) {} |
956 | QTextInsertCommand( QTextParagraph *p, int idx, const QMemArray<QTextStringChar> &str ) | 959 | QTextInsertCommand( QTextParagraph *p, int idx, const QMemArray<QTextStringChar> &str ) |
957 | : QTextDeleteCommand( p, idx, str ) {} | 960 | : QTextDeleteCommand( p, idx, str ) {} |
958 | virtual ~QTextInsertCommand() {} | 961 | virtual ~QTextInsertCommand() {} |
959 | 962 | ||
960 | Commands type() const { return Insert; } | 963 | Commands type() const { return Insert; } |
961 | QTextCursor *execute( QTextCursor *c ) { return QTextDeleteCommand::unexecute( c ); } | 964 | QTextCursor *execute( QTextCursor *c ) { return QTextDeleteCommand::unexecute( c ); } |
962 | QTextCursor *unexecute( QTextCursor *c ) { return QTextDeleteCommand::execute( c ); } | 965 | QTextCursor *unexecute( QTextCursor *c ) { return QTextDeleteCommand::execute( c ); } |
963 | 966 | ||
@@ -1008,43 +1011,43 @@ struct Q_EXPORT QTextParagraphSelection | |||
1008 | }; | 1011 | }; |
1009 | 1012 | ||
1010 | struct Q_EXPORT QTextLineStart | 1013 | struct Q_EXPORT QTextLineStart |
1011 | { | 1014 | { |
1012 | QTextLineStart() : y( 0 ), baseLine( 0 ), h( 0 ) | 1015 | QTextLineStart() : y( 0 ), baseLine( 0 ), h( 0 ) |
1013 | #ifndef QT_NO_COMPLEXTEXT | 1016 | #ifndef QT_NO_COMPLEXTEXT |
1014 | , bidicontext( 0 ) | 1017 | , bidicontext( 0 ) |
1015 | #endif | 1018 | #endif |
1016 | { } | 1019 | { } |
1017 | QTextLineStart( ushort y_, ushort bl, ushort h_ ) : y( y_ ), baseLine( bl ), h( h_ ), | 1020 | QTextLineStart( ushort y_, ushort bl, ushort h_ ) : y( y_ ), baseLine( bl ), h( h_ ), |
1018 | w( 0 ) | 1021 | w( 0 ) |
1019 | #ifndef QT_NO_COMPLEXTEXT | 1022 | #ifndef QT_NO_COMPLEXTEXT |
1020 | , bidicontext( 0 ) | 1023 | , bidicontext( 0 ) |
1021 | #endif | 1024 | #endif |
1022 | { } | 1025 | { } |
1023 | #ifndef QT_NO_COMPLEXTEXT | 1026 | #ifndef QT_NO_COMPLEXTEXT |
1024 | QTextLineStart( QBidiContext *c, QBidiStatus s ) : y(0), baseLine(0), h(0), | 1027 | QTextLineStart( QBidiContext *c, QBidiStatus s ) : y(0), baseLine(0), h(0), |
1025 | status( s ), bidicontext( c ) { if ( bidicontext ) bidicontext->ref(); } | 1028 | status( s ), bidicontext( c ) { if ( bidicontext ) bidicontext->ref(); } |
1026 | #endif | 1029 | #endif |
1027 | 1030 | ||
1028 | virtual ~QTextLineStart() | 1031 | virtual ~QTextLineStart() |
1029 | { | 1032 | { |
1030 | #ifndef QT_NO_COMPLEXTEXT | 1033 | #ifndef QT_NO_COMPLEXTEXT |
1031 | if ( bidicontext && bidicontext->deref() ) | 1034 | if ( bidicontext && bidicontext->deref() ) |
1032 | delete bidicontext; | 1035 | delete bidicontext; |
1033 | #endif | 1036 | #endif |
1034 | } | 1037 | } |
1035 | 1038 | ||
1036 | #ifndef QT_NO_COMPLEXTEXT | 1039 | #ifndef QT_NO_COMPLEXTEXT |
1037 | void setContext( QBidiContext *c ) { | 1040 | void setContext( QBidiContext *c ) { |
1038 | if ( c == bidicontext ) | 1041 | if ( c == bidicontext ) |
1039 | return; | 1042 | return; |
1040 | if ( bidicontext && bidicontext->deref() ) | 1043 | if ( bidicontext && bidicontext->deref() ) |
1041 | delete bidicontext; | 1044 | delete bidicontext; |
1042 | bidicontext = c; | 1045 | bidicontext = c; |
1043 | if ( bidicontext ) | 1046 | if ( bidicontext ) |
1044 | bidicontext->ref(); | 1047 | bidicontext->ref(); |
1045 | } | 1048 | } |
1046 | QBidiContext *context() const { return bidicontext; } | 1049 | QBidiContext *context() const { return bidicontext; } |
1047 | #endif | 1050 | #endif |
1048 | 1051 | ||
1049 | public: | 1052 | public: |
1050 | ushort y, baseLine, h; | 1053 | ushort y, baseLine, h; |
@@ -1180,13 +1183,13 @@ public: | |||
1180 | void setFormat( int index, int len, QTextFormat *f, bool useCollection = TRUE, int flags = -1 ); | 1183 | void setFormat( int index, int len, QTextFormat *f, bool useCollection = TRUE, int flags = -1 ); |
1181 | 1184 | ||
1182 | void setAlignment( int a ); | 1185 | void setAlignment( int a ); |
1183 | int alignment() const; | 1186 | int alignment() const; |
1184 | 1187 | ||
1185 | virtual void paint( QPainter &painter, const QColorGroup &cg, QTextCursor *cursor = 0, bool drawSelections = FALSE, | 1188 | virtual void paint( QPainter &painter, const QColorGroup &cg, QTextCursor *cursor = 0, bool drawSelections = FALSE, |
1186 | int clipx = -1, int clipy = -1, int clipw = -1, int cliph = -1 ); | 1189 | int clipx = -1, int clipy = -1, int clipw = -1, int cliph = -1 ); |
1187 | 1190 | ||
1188 | virtual int topMargin() const; | 1191 | virtual int topMargin() const; |
1189 | virtual int bottomMargin() const; | 1192 | virtual int bottomMargin() const; |
1190 | virtual int leftMargin() const; | 1193 | virtual int leftMargin() const; |
1191 | virtual int firstLineMargin() const; | 1194 | virtual int firstLineMargin() const; |
1192 | virtual int rightMargin() const; | 1195 | virtual int rightMargin() const; |
@@ -1243,15 +1246,15 @@ public: | |||
1243 | void readStyleInformation( QDataStream& stream ); | 1246 | void readStyleInformation( QDataStream& stream ); |
1244 | void writeStyleInformation( QDataStream& stream ) const; | 1247 | void writeStyleInformation( QDataStream& stream ) const; |
1245 | 1248 | ||
1246 | protected: | 1249 | protected: |
1247 | virtual void drawLabel( QPainter* p, int x, int y, int w, int h, int base, const QColorGroup& cg ); | 1250 | virtual void drawLabel( QPainter* p, int x, int y, int w, int h, int base, const QColorGroup& cg ); |
1248 | virtual void drawString( QPainter &painter, const QString &str, int start, int len, int xstart, | 1251 | virtual void drawString( QPainter &painter, const QString &str, int start, int len, int xstart, |
1249 | int y, int baseLine, int w, int h, int selection, | 1252 | int y, int baseLine, int w, int h, int selection, |
1250 | QTextStringChar *formatChar, const QColorGroup& cg, | 1253 | QTextStringChar *formatChar, const QColorGroup& cg, |
1251 | bool rightToLeft ); | 1254 | bool rightToLeft ); |
1252 | 1255 | ||
1253 | private: | 1256 | private: |
1254 | QMap<int, QTextParagraphSelection> &selections() const; | 1257 | QMap<int, QTextParagraphSelection> &selections() const; |
1255 | QPtrList<QTextCustomItem> &floatingItems() const; | 1258 | QPtrList<QTextCustomItem> &floatingItems() const; |
1256 | QBrush backgroundBrush( const QColorGroup&cg ) { if ( bgcol ) return *bgcol; return cg.brush( QColorGroup::Base ); } | 1259 | QBrush backgroundBrush( const QColorGroup&cg ) { if ( bgcol ) return *bgcol; return cg.brush( QColorGroup::Base ); } |
1257 | void invalidateStyleCache(); | 1260 | void invalidateStyleCache(); |
@@ -1312,16 +1315,16 @@ public: | |||
1312 | int widthUsed() const { return thiswused; } | 1315 | int widthUsed() const { return thiswused; } |
1313 | 1316 | ||
1314 | static bool isBreakable( QTextString *string, int pos ); | 1317 | static bool isBreakable( QTextString *string, int pos ); |
1315 | 1318 | ||
1316 | protected: | 1319 | protected: |
1317 | virtual QTextLineStart *formatLine( QTextParagraph *parag, QTextString *string, QTextLineStart *line, QTextStringChar *start, | 1320 | virtual QTextLineStart *formatLine( QTextParagraph *parag, QTextString *string, QTextLineStart *line, QTextStringChar *start, |
1318 | QTextStringChar *last, int align = Qt3::AlignAuto, int space = 0 ); | 1321 | QTextStringChar *last, int align = Qt3::AlignAuto, int space = 0 ); |
1319 | #ifndef QT_NO_COMPLEXTEXT | 1322 | #ifndef QT_NO_COMPLEXTEXT |
1320 | virtual QTextLineStart *bidiReorderLine( QTextParagraph *parag, QTextString *string, QTextLineStart *line, QTextStringChar *start, | 1323 | virtual QTextLineStart *bidiReorderLine( QTextParagraph *parag, QTextString *string, QTextLineStart *line, QTextStringChar *start, |
1321 | QTextStringChar *last, int align, int space ); | 1324 | QTextStringChar *last, int align, int space ); |
1322 | #endif | 1325 | #endif |
1323 | void insertLineStart( QTextParagraph *parag, int index, QTextLineStart *ls ); | 1326 | void insertLineStart( QTextParagraph *parag, int index, QTextLineStart *ls ); |
1324 | 1327 | ||
1325 | int thisminw; | 1328 | int thisminw; |
1326 | int thiswused; | 1329 | int thiswused; |
1327 | 1330 | ||
@@ -1376,13 +1379,13 @@ public: | |||
1376 | // ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ | 1379 | // ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
1377 | 1380 | ||
1378 | class Q_EXPORT QTextPreProcessor | 1381 | class Q_EXPORT QTextPreProcessor |
1379 | { | 1382 | { |
1380 | public: | 1383 | public: |
1381 | enum Ids { | 1384 | enum Ids { |
1382 | Standard = 0 | 1385 | Standard = 0 |
1383 | }; | 1386 | }; |
1384 | 1387 | ||
1385 | QTextPreProcessor(); | 1388 | QTextPreProcessor(); |
1386 | virtual ~QTextPreProcessor() {} | 1389 | virtual ~QTextPreProcessor() {} |
1387 | 1390 | ||
1388 | virtual void process( QTextDocument *doc, QTextParagraph *, int, bool = TRUE ) = 0; | 1391 | virtual void process( QTextDocument *doc, QTextParagraph *, int, bool = TRUE ) = 0; |
@@ -1396,24 +1399,24 @@ class Q_EXPORT QTextFormat | |||
1396 | { | 1399 | { |
1397 | friend class QTextFormatCollection; | 1400 | friend class QTextFormatCollection; |
1398 | friend class QTextDocument; | 1401 | friend class QTextDocument; |
1399 | 1402 | ||
1400 | public: | 1403 | public: |
1401 | enum Flags { | 1404 | enum Flags { |
1402 | NoFlags, | 1405 | NoFlags, |
1403 | Bold = 1, | 1406 | Bold = 1, |
1404 | Italic = 2, | 1407 | Italic = 2, |
1405 | Underline = 4, | 1408 | Underline = 4, |
1406 | Family = 8, | 1409 | Family = 8, |
1407 | Size = 16, | 1410 | Size = 16, |
1408 | Color = 32, | 1411 | Color = 32, |
1409 | Misspelled = 64, | 1412 | Misspelled = 64, |
1410 | VAlign = 128, | 1413 | VAlign = 128, |
1411 | StrikeOut= 256, | 1414 | StrikeOut= 256, |
1412 | Font = Bold | Italic | Underline | Family | Size | StrikeOut, | 1415 | Font = Bold | Italic | Underline | Family | Size | StrikeOut, |
1413 | Format = Font | Color | Misspelled | VAlign | 1416 | Format = Font | Color | Misspelled | VAlign |
1414 | }; | 1417 | }; |
1415 | 1418 | ||
1416 | enum VerticalAlignment { AlignNormal, AlignSuperScript, AlignSubScript }; | 1419 | enum VerticalAlignment { AlignNormal, AlignSuperScript, AlignSubScript }; |
1417 | 1420 | ||
1418 | QTextFormat(); | 1421 | QTextFormat(); |
1419 | virtual ~QTextFormat(); | 1422 | virtual ~QTextFormat(); |
@@ -1726,20 +1729,20 @@ inline void QTextDocument::setTabStops( int tw ) | |||
1726 | tStopWidth = tw; | 1729 | tStopWidth = tw; |
1727 | } | 1730 | } |
1728 | 1731 | ||
1729 | inline QString QTextDocument::originalText() const | 1732 | inline QString QTextDocument::originalText() const |
1730 | { | 1733 | { |
1731 | if ( oTextValid ) | 1734 | if ( oTextValid ) |
1732 | return oText; | 1735 | return oText; |
1733 | return text(); | 1736 | return text(); |
1734 | } | 1737 | } |
1735 | 1738 | ||
1736 | inline void QTextDocument::setFlow( QTextFlow *f ) | 1739 | inline void QTextDocument::setFlow( QTextFlow *f ) |
1737 | { | 1740 | { |
1738 | if ( flow_ ) | 1741 | if ( flow_ ) |
1739 | delete flow_; | 1742 | delete flow_; |
1740 | flow_ = f; | 1743 | flow_ = f; |
1741 | } | 1744 | } |
1742 | 1745 | ||
1743 | inline void QTextDocument::takeFlow() | 1746 | inline void QTextDocument::takeFlow() |
1744 | { | 1747 | { |
1745 | flow_ = 0; | 1748 | flow_ = 0; |
@@ -1783,17 +1786,17 @@ inline void QTextFormat::addRef() | |||
1783 | } | 1786 | } |
1784 | 1787 | ||
1785 | inline void QTextFormat::removeRef() | 1788 | inline void QTextFormat::removeRef() |
1786 | { | 1789 | { |
1787 | ref--; | 1790 | ref--; |
1788 | if ( !collection ) | 1791 | if ( !collection ) |
1789 | return; | 1792 | return; |
1790 | if ( this == collection->defFormat ) | 1793 | if ( this == collection->defFormat ) |
1791 | return; | 1794 | return; |
1792 | if ( ref == 0 ) | 1795 | if ( ref == 0 ) |
1793 | collection->remove( this ); | 1796 | collection->remove( this ); |
1794 | } | 1797 | } |
1795 | 1798 | ||
1796 | inline QString QTextFormat::key() const | 1799 | inline QString QTextFormat::key() const |
1797 | { | 1800 | { |
1798 | return k; | 1801 | return k; |
1799 | } | 1802 | } |
@@ -1840,15 +1843,15 @@ inline void QTextParagraph::clearBackgroundColor() | |||
1840 | delete bgcol; bgcol = 0; setChanged( TRUE ); | 1843 | delete bgcol; bgcol = 0; setChanged( TRUE ); |
1841 | } | 1844 | } |
1842 | 1845 | ||
1843 | inline void QTextParagraph::append( const QString &s, bool reallyAtEnd ) | 1846 | inline void QTextParagraph::append( const QString &s, bool reallyAtEnd ) |
1844 | { | 1847 | { |
1845 | if ( reallyAtEnd ) | 1848 | if ( reallyAtEnd ) |
1846 | insert( str->length(), s ); | 1849 | insert( str->length(), s ); |
1847 | else | 1850 | else |
1848 | insert( QMAX( str->length() - 1, 0 ), s ); | 1851 | insert( QMAX( str->length() - 1, 0 ), s ); |
1849 | } | 1852 | } |
1850 | 1853 | ||
1851 | inline QTextParagraph *QTextParagraph::prev() const | 1854 | inline QTextParagraph *QTextParagraph::prev() const |
1852 | { | 1855 | { |
1853 | return p; | 1856 | return p; |
1854 | } | 1857 | } |
@@ -1863,13 +1866,13 @@ inline bool QTextParagraph::hasAnySelection() const | |||
1863 | return mSelections ? !selections().isEmpty() : FALSE; | 1866 | return mSelections ? !selections().isEmpty() : FALSE; |
1864 | } | 1867 | } |
1865 | 1868 | ||
1866 | inline void QTextParagraph::setEndState( int s ) | 1869 | inline void QTextParagraph::setEndState( int s ) |
1867 | { | 1870 | { |
1868 | if ( s == state ) | 1871 | if ( s == state ) |
1869 | return; | 1872 | return; |
1870 | state = s; | 1873 | state = s; |
1871 | } | 1874 | } |
1872 | 1875 | ||
1873 | inline int QTextParagraph::endState() const | 1876 | inline int QTextParagraph::endState() const |
1874 | { | 1877 | { |
1875 | return state; | 1878 | return state; |
@@ -1880,13 +1883,13 @@ inline void QTextParagraph::setParagId( int i ) | |||
1880 | id = i; | 1883 | id = i; |
1881 | } | 1884 | } |
1882 | 1885 | ||
1883 | inline int QTextParagraph::paragId() const | 1886 | inline int QTextParagraph::paragId() const |
1884 | { | 1887 | { |
1885 | if ( id == -1 ) | 1888 | if ( id == -1 ) |
1886 | qWarning( "invalid parag id!!!!!!!! (%p)", (void*)this ); | 1889 | owarn << "invalid parag id!!!!!!!! (" << (void*)this << ")" << oendl; |
1887 | return id; | 1890 | return id; |
1888 | } | 1891 | } |
1889 | 1892 | ||
1890 | inline bool QTextParagraph::firstPreProcess() const | 1893 | inline bool QTextParagraph::firstPreProcess() const |
1891 | { | 1894 | { |
1892 | return firstPProcess; | 1895 | return firstPProcess; |
@@ -1907,20 +1910,20 @@ inline QTextString *QTextParagraph::string() const | |||
1907 | return str; | 1910 | return str; |
1908 | } | 1911 | } |
1909 | 1912 | ||
1910 | inline QTextDocument *QTextParagraph::document() const | 1913 | inline QTextDocument *QTextParagraph::document() const |
1911 | { | 1914 | { |
1912 | if ( hasdoc ) | 1915 | if ( hasdoc ) |
1913 | return (QTextDocument*) docOrPseudo; | 1916 | return (QTextDocument*) docOrPseudo; |
1914 | return 0; | 1917 | return 0; |
1915 | } | 1918 | } |
1916 | 1919 | ||
1917 | inline QTextParagraphPseudoDocument *QTextParagraph::pseudoDocument() const | 1920 | inline QTextParagraphPseudoDocument *QTextParagraph::pseudoDocument() const |
1918 | { | 1921 | { |
1919 | if ( hasdoc ) | 1922 | if ( hasdoc ) |
1920 | return 0; | 1923 | return 0; |
1921 | return (QTextParagraphPseudoDocument*) docOrPseudo; | 1924 | return (QTextParagraphPseudoDocument*) docOrPseudo; |
1922 | } | 1925 | } |
1923 | 1926 | ||
1924 | 1927 | ||
1925 | inline QTextTableCell *QTextParagraph::tableCell() const | 1928 | inline QTextTableCell *QTextParagraph::tableCell() const |
1926 | { | 1929 | { |
diff --git a/noncore/apps/tableviewer/browsekeyentry.cpp b/noncore/apps/tableviewer/browsekeyentry.cpp index 04e7902..bab9af6 100644 --- a/noncore/apps/tableviewer/browsekeyentry.cpp +++ b/noncore/apps/tableviewer/browsekeyentry.cpp | |||
@@ -13,39 +13,41 @@ | |||
13 | ** | 13 | ** |
14 | ** See http://www.trolltech.com/gpl/ for GPL licensing information. | 14 | ** See http://www.trolltech.com/gpl/ for GPL licensing information. |
15 | ** | 15 | ** |
16 | ** Contact info@trolltech.com if any conditions of this licensing are | 16 | ** Contact info@trolltech.com if any conditions of this licensing are |
17 | ** not clear to you. | 17 | ** not clear to you. |
18 | ** | 18 | ** |
19 | **********************************************************************/ | 19 | **********************************************************************/ |
20 | #include "browsekeyentry.h" | 20 | #include "browsekeyentry.h" |
21 | 21 | ||
22 | /* OPIE */ | ||
23 | #include <opie2/odebug.h> | ||
24 | using namespace Opie::Core; | ||
25 | |||
26 | /* QT */ | ||
22 | #include <qtoolbutton.h> | 27 | #include <qtoolbutton.h> |
23 | #include <qwidgetstack.h> | 28 | #include <qwidgetstack.h> |
24 | #include <qlayout.h> | 29 | #include <qlayout.h> |
25 | #include <qlineedit.h> | 30 | #include <qlineedit.h> |
26 | #include <qpushbutton.h> | 31 | #include <qpushbutton.h> |
27 | #include <qpopupmenu.h> | 32 | #include <qpopupmenu.h> |
28 | #include <qhbox.h> | 33 | #include <qhbox.h> |
29 | #include <qdatetime.h> | 34 | #include <qdatetime.h> |
30 | 35 | ||
31 | //#include <iostream.h> | ||
32 | #include <qheader.h> | ||
33 | // For qWarning(const char *) | ||
34 | 36 | ||
35 | /*! | 37 | /*! |
36 | \class TVBrowseKeyEntry | 38 | \class TVBrowseKeyEntry |
37 | \brief a Widget used enter keys into the TVBrowseViewWidget | 39 | \brief a Widget used enter keys into the TVBrowseViewWidget |
38 | 40 | ||
39 | The TVBrowseKeyEntry Widget provides the facility to enter | 41 | The TVBrowseKeyEntry Widget provides the facility to enter |
40 | various key types to be search on in the table. The key can be changed | 42 | various key types to be search on in the table. The key can be changed |
41 | and the entry field will update to the correct sort of widget appropriately | 43 | and the entry field will update to the correct sort of widget appropriately |
42 | */ | 44 | */ |
43 | 45 | ||
44 | /*! | 46 | /*! |
45 | Constructs the widget | 47 | Constructs the widget |
46 | */ | 48 | */ |
47 | TVBrowseKeyEntry::TVBrowseKeyEntry(QWidget *parent, const char *name, WFlags f) | 49 | TVBrowseKeyEntry::TVBrowseKeyEntry(QWidget *parent, const char *name, WFlags f) |
48 | : QWidget(parent, name, f) | 50 | : QWidget(parent, name, f) |
49 | { | 51 | { |
50 | int stack_elem = 0; | 52 | int stack_elem = 0; |
51 | QHBoxLayout *h_layout = new QHBoxLayout(this); | 53 | QHBoxLayout *h_layout = new QHBoxLayout(this); |
@@ -77,43 +79,43 @@ TVBrowseKeyEntry::TVBrowseKeyEntry(QWidget *parent, const char *name, WFlags f) | |||
77 | ws = new QWidgetStack(this, 0); | 79 | ws = new QWidgetStack(this, 0); |
78 | ws->addWidget(textKey, stack_elem++); | 80 | ws->addWidget(textKey, stack_elem++); |
79 | ws->addWidget(timeKey, stack_elem++); | 81 | ws->addWidget(timeKey, stack_elem++); |
80 | ws->addWidget(dateKey, stack_elem++); | 82 | ws->addWidget(dateKey, stack_elem++); |
81 | 83 | ||
82 | ws->raiseWidget(0); | 84 | ws->raiseWidget(0); |
83 | 85 | ||
84 | // TODO connect slots and signals.... | 86 | // TODO connect slots and signals.... |
85 | connect(changeKeyButton, SIGNAL(clicked()), | 87 | connect(changeKeyButton, SIGNAL(clicked()), |
86 | this, SLOT(changeKeyMenuSlot())); | 88 | this, SLOT(changeKeyMenuSlot())); |
87 | connect(resetButton, SIGNAL(clicked()), | 89 | connect(resetButton, SIGNAL(clicked()), |
88 | this, SLOT(resetKeySlot())); | 90 | this, SLOT(resetKeySlot())); |
89 | 91 | ||
90 | connect(textKey, SIGNAL(textChanged(const QString&)), | 92 | connect(textKey, SIGNAL(textChanged(const QString&)), |
91 | this, SLOT(searchOnText())); | 93 | this, SLOT(searchOnText())); |
92 | 94 | ||
93 | connect(dayKey, SIGNAL(textChanged(const QString&)), | 95 | connect(dayKey, SIGNAL(textChanged(const QString&)), |
94 | this, SLOT(searchOnText())); | 96 | this, SLOT(searchOnText())); |
95 | connect(monthKey, SIGNAL(textChanged(const QString&)), | 97 | connect(monthKey, SIGNAL(textChanged(const QString&)), |
96 | this, SLOT(searchOnText())); | 98 | this, SLOT(searchOnText())); |
97 | connect(yearKey, SIGNAL(textChanged(const QString&)), | 99 | connect(yearKey, SIGNAL(textChanged(const QString&)), |
98 | this, SLOT(searchOnText())); | 100 | this, SLOT(searchOnText())); |
99 | 101 | ||
100 | connect(secondKey, SIGNAL(textChanged(const QString&)), | 102 | connect(secondKey, SIGNAL(textChanged(const QString&)), |
101 | this, SLOT(searchOnText())); | 103 | this, SLOT(searchOnText())); |
102 | connect(minuteKey, SIGNAL(textChanged(const QString&)), | 104 | connect(minuteKey, SIGNAL(textChanged(const QString&)), |
103 | this, SLOT(searchOnText())); | 105 | this, SLOT(searchOnText())); |
104 | connect(hourKey, SIGNAL(textChanged(const QString&)), | 106 | connect(hourKey, SIGNAL(textChanged(const QString&)), |
105 | this, SLOT(searchOnText())); | 107 | this, SLOT(searchOnText())); |
106 | 108 | ||
107 | h_layout->addWidget(ws); | 109 | h_layout->addWidget(ws); |
108 | h_layout->addWidget(resetButton); | 110 | h_layout->addWidget(resetButton); |
109 | h_layout->addWidget(changeKeyButton); | 111 | h_layout->addWidget(changeKeyButton); |
110 | } | 112 | } |
111 | 113 | ||
112 | /*! | 114 | /*! |
113 | Destructs the widget | 115 | Destructs the widget |
114 | */ | 116 | */ |
115 | TVBrowseKeyEntry::~TVBrowseKeyEntry() | 117 | TVBrowseKeyEntry::~TVBrowseKeyEntry() |
116 | { | 118 | { |
117 | } | 119 | } |
118 | 120 | ||
119 | /*! | 121 | /*! |
@@ -133,23 +135,23 @@ void TVBrowseKeyEntry::changeKeySlot(int id_param) | |||
133 | case kt_time: | 135 | case kt_time: |
134 | ws->raiseWidget(1); | 136 | ws->raiseWidget(1); |
135 | break; | 137 | break; |
136 | case kt_date: | 138 | case kt_date: |
137 | ws->raiseWidget(2); | 139 | ws->raiseWidget(2); |
138 | break; | 140 | break; |
139 | default: | 141 | default: |
140 | return; | 142 | return; |
141 | } | 143 | } |
142 | } | 144 | } |
143 | 145 | ||
144 | /*! | 146 | /*! |
145 | Opens the change key menu | 147 | Opens the change key menu |
146 | */ | 148 | */ |
147 | void TVBrowseKeyEntry::changeKeyMenuSlot() | 149 | void TVBrowseKeyEntry::changeKeyMenuSlot() |
148 | { | 150 | { |
149 | if(ts) | 151 | if(ts) |
150 | keyMenu->exec(changeKeyButton->mapToGlobal(QPoint(0,0))); | 152 | keyMenu->exec(changeKeyButton->mapToGlobal(QPoint(0,0))); |
151 | } | 153 | } |
152 | /*! | 154 | /*! |
153 | Blanks the key entry widget | 155 | Blanks the key entry widget |
154 | \TODO the actual implmentation | 156 | \TODO the actual implmentation |
155 | */ | 157 | */ |
@@ -162,21 +164,21 @@ void TVBrowseKeyEntry::setTableState(TableState *t) { | |||
162 | ts = t; | 164 | ts = t; |
163 | 165 | ||
164 | /* clear the old */ | 166 | /* clear the old */ |
165 | keyMenu->clear(); | 167 | keyMenu->clear(); |
166 | 168 | ||
167 | for (i = 0; i < t->kRep->getNumFields(); i++) { | 169 | for (i = 0; i < t->kRep->getNumFields(); i++) { |
168 | keyMenu->insertItem(ts->kRep->getKeyName(i), this, | 170 | keyMenu->insertItem(ts->kRep->getKeyName(i), this, |
169 | SLOT(changeKeySlot(int)), 0, i); | 171 | SLOT(changeKeySlot(int)), 0, i); |
170 | keyMenu->setItemParameter(i, i); | 172 | keyMenu->setItemParameter(i, i); |
171 | } | 173 | } |
172 | } | 174 | } |
173 | 175 | ||
174 | /*! | 176 | /*! |
175 | Searches on the current value of the key entry provided that the | 177 | Searches on the current value of the key entry provided that the |
176 | current key is of type text WARNING, TODO fix memory leaks | 178 | current key is of type text WARNING, TODO fix memory leaks |
177 | */ | 179 | */ |
178 | void TVBrowseKeyEntry::searchOnText() | 180 | void TVBrowseKeyEntry::searchOnText() |
179 | { | 181 | { |
180 | void *sendkey; | 182 | void *sendkey; |
181 | int tmp; | 183 | int tmp; |
182 | 184 | ||
@@ -225,18 +227,17 @@ void TVBrowseKeyEntry::searchOnText() | |||
225 | if(!QDate::isValid(y, m, d)) | 227 | if(!QDate::isValid(y, m, d)) |
226 | return; | 228 | return; |
227 | sendkey = (void *) new QDate(y, m, d); | 229 | sendkey = (void *) new QDate(y, m, d); |
228 | break; | 230 | break; |
229 | } | 231 | } |
230 | default: | 232 | default: |
231 | qWarning("TVBrowseKeyEntry::searchOnText() " | 233 | owarn << "TVBrowseKeyEntry::searchOnText() cannot work out data type" << oendl; |
232 | "cannot work out data type"); | ||
233 | return; | 234 | return; |
234 | } | 235 | } |
235 | emit searchOnKey(ts->current_column, sendkey); | 236 | emit searchOnKey(ts->current_column, sendkey); |
236 | } | 237 | } |
237 | 238 | ||
238 | /*! \fn void TVBrowseKeyEntry::searchOnKey(int currentKeyId, void *v) | 239 | /*! \fn void TVBrowseKeyEntry::searchOnKey(int currentKeyId, void *v) |
239 | 240 | ||
240 | This signal indicates that a search on key index currentKeyId should be | 241 | This signal indicates that a search on key index currentKeyId should be |
241 | done searching for the value v. | 242 | done searching for the value v. |
242 | */ | 243 | */ |
diff --git a/noncore/apps/tableviewer/db/common.cpp b/noncore/apps/tableviewer/db/common.cpp index b58af85..c35dbea 100644 --- a/noncore/apps/tableviewer/db/common.cpp +++ b/noncore/apps/tableviewer/db/common.cpp | |||
@@ -13,14 +13,14 @@ | |||
13 | ** | 13 | ** |
14 | ** See http://www.trolltech.com/gpl/ for GPL licensing information. | 14 | ** See http://www.trolltech.com/gpl/ for GPL licensing information. |
15 | ** | 15 | ** |
16 | ** Contact info@trolltech.com if any conditions of this licensing are | 16 | ** Contact info@trolltech.com if any conditions of this licensing are |
17 | ** not clear to you. | 17 | ** not clear to you. |
18 | ** | 18 | ** |
19 | **********************************************************************/ | 19 | **********************************************************************/ |
20 | #include "common.h" | 20 | #include "common.h" |
21 | #include "datacache.h" | 21 | #include "datacache.h" |
22 | 22 | ||
23 | /* OPIE */ | 23 | /* OPIE */ |
24 | #include <opie2/odebug.h> | 24 | #include <opie2/odebug.h> |
25 | #include <qpe/timestring.h> | 25 | #include <qpe/timestring.h> |
26 | using namespace Opie::Core; | 26 | using namespace Opie::Core; |
@@ -85,19 +85,19 @@ int parseNextNumber(QString *q) { | |||
85 | </UL> | 85 | </UL> |
86 | */ | 86 | */ |
87 | int QStringVector::compareItems(Item a, Item b) | 87 | int QStringVector::compareItems(Item a, Item b) |
88 | { | 88 | { |
89 | QString *qa = (QString *)a; | 89 | QString *qa = (QString *)a; |
90 | QString *qb = (QString *)b; | 90 | QString *qb = (QString *)b; |
91 | 91 | ||
92 | return QString::compare(*qa, *qb); | 92 | return QString::compare(*qa, *qb); |
93 | } | 93 | } |
94 | 94 | ||
95 | /*! | 95 | /*! |
96 | \class TVVariant | 96 | \class TVVariant |
97 | A way of abstracting void * and keeping information on | 97 | A way of abstracting void * and keeping information on |
98 | the keytypes and behaviours in one place | 98 | the keytypes and behaviours in one place |
99 | */ | 99 | */ |
100 | 100 | ||
101 | TVVariantPrivate::TVVariantPrivate() | 101 | TVVariantPrivate::TVVariantPrivate() |
102 | { | 102 | { |
103 | typ = TVVariant::Invalid; | 103 | typ = TVVariant::Invalid; |
@@ -317,13 +317,13 @@ void TVVariant::load(QDataStream &s ) | |||
317 | int x; | 317 | int x; |
318 | s >> x; | 318 | s >> x; |
319 | d->value.i = x; | 319 | d->value.i = x; |
320 | } | 320 | } |
321 | break; | 321 | break; |
322 | default: | 322 | default: |
323 | ofatal << "Unrecognized data type" << oendl; | 323 | ofatal << "Unrecognized data type" << oendl; |
324 | } | 324 | } |
325 | } | 325 | } |
326 | 326 | ||
327 | void TVVariant::save( QDataStream &s ) const | 327 | void TVVariant::save( QDataStream &s ) const |
328 | { | 328 | { |
329 | s << type(); | 329 | s << type(); |
@@ -379,13 +379,13 @@ const QString TVVariant::toString() const | |||
379 | case String: | 379 | case String: |
380 | return *((QString*)d->value.ptr); | 380 | return *((QString*)d->value.ptr); |
381 | case Date: | 381 | case Date: |
382 | return ((QDate*)d->value.ptr)->toString(); | 382 | return ((QDate*)d->value.ptr)->toString(); |
383 | case Time: | 383 | case Time: |
384 | return ((QTime*)d->value.ptr)->toString(); | 384 | return ((QTime*)d->value.ptr)->toString(); |
385 | case Int: | 385 | case Int: |
386 | return QString::number(d->value.i); | 386 | return QString::number(d->value.i); |
387 | case Invalid: | 387 | case Invalid: |
388 | default: | 388 | default: |
389 | return QString::null; | 389 | return QString::null; |
390 | } | 390 | } |
391 | return QString::null; | 391 | return QString::null; |
@@ -421,22 +421,22 @@ const QDate TVVariant::toDate() const | |||
421 | int month = parseNextNumber(&q); | 421 | int month = parseNextNumber(&q); |
422 | int year = parseNextNumber(&q); | 422 | int year = parseNextNumber(&q); |
423 | if (!QDate::isValid(year, month, day)) | 423 | if (!QDate::isValid(year, month, day)) |
424 | return QDate(); | 424 | return QDate(); |
425 | return QDate(year, month, day); | 425 | return QDate(year, month, day); |
426 | } | 426 | } |
427 | 427 | ||
428 | 428 | ||
429 | return QDate(); | 429 | return QDate(); |
430 | } | 430 | } |
431 | 431 | ||
432 | const QTime TVVariant::toTime() const | 432 | const QTime TVVariant::toTime() const |
433 | { | 433 | { |
434 | if(d->typ == Time) | 434 | if(d->typ == Time) |
435 | return *((QTime *)d->value.ptr); | 435 | return *((QTime *)d->value.ptr); |
436 | 436 | ||
437 | if(d->typ == String) { | 437 | if(d->typ == String) { |
438 | QString q = toString(); | 438 | QString q = toString(); |
439 | int hour = parseNextNumber(&q); | 439 | int hour = parseNextNumber(&q); |
440 | int minute = parseNextNumber(&q); | 440 | int minute = parseNextNumber(&q); |
441 | int second = parseNextNumber(&q); | 441 | int second = parseNextNumber(&q); |
442 | int msecond = parseNextNumber(&q); | 442 | int msecond = parseNextNumber(&q); |
@@ -451,13 +451,13 @@ const QTime TVVariant::toTime() const | |||
451 | #define TV_VARIANT_AS( f ) Q##f& TVVariant::as##f() { \ | 451 | #define TV_VARIANT_AS( f ) Q##f& TVVariant::as##f() { \ |
452 | if ( d->typ != f ) \ | 452 | if ( d->typ != f ) \ |
453 | *this = TVVariant( to##f() ); \ | 453 | *this = TVVariant( to##f() ); \ |
454 | else \ | 454 | else \ |
455 | detach(); \ | 455 | detach(); \ |
456 | return *((Q##f*)d->value.ptr); } | 456 | return *((Q##f*)d->value.ptr); } |
457 | 457 | ||
458 | TV_VARIANT_AS(String) | 458 | TV_VARIANT_AS(String) |
459 | TV_VARIANT_AS(Date) | 459 | TV_VARIANT_AS(Date) |
460 | TV_VARIANT_AS(Time) | 460 | TV_VARIANT_AS(Time) |
461 | 461 | ||
462 | #undef TV_VARIANT_AS | 462 | #undef TV_VARIANT_AS |
463 | 463 | ||
@@ -557,66 +557,66 @@ bool TVVariant::operator>( const TVVariant &v ) const | |||
557 | 557 | ||
558 | /*! True if n is closer to this than o */ | 558 | /*! True if n is closer to this than o */ |
559 | bool TVVariant::closer(TVVariant n, TVVariant o) | 559 | bool TVVariant::closer(TVVariant n, TVVariant o) |
560 | { | 560 | { |
561 | /* Nothing is close to an invalid, so nothing can be closer */ | 561 | /* Nothing is close to an invalid, so nothing can be closer */ |
562 | if(d->typ == Invalid) | 562 | if(d->typ == Invalid) |
563 | return FALSE; | 563 | return FALSE; |
564 | 564 | ||
565 | /* can't be closer if of different type */ | 565 | /* can't be closer if of different type */ |
566 | if(n.type() != type()) | 566 | if(n.type() != type()) |
567 | return FALSE; | 567 | return FALSE; |
568 | 568 | ||
569 | /* if new shares type, and old doesn't, then new is closer */ | 569 | /* if new shares type, and old doesn't, then new is closer */ |
570 | if(o.type() != type()) | 570 | if(o.type() != type()) |
571 | return TRUE; | 571 | return TRUE; |
572 | 572 | ||
573 | switch(type()){ | 573 | switch(type()){ |
574 | case String: { | 574 | case String: { |
575 | /* case for strings is close is a substring.. closer is | 575 | /* case for strings is close is a substring.. closer is |
576 | * earlier alphabetically */ | 576 | * earlier alphabetically */ |
577 | QString qs1 = n.toString().lower(); | 577 | QString qs1 = n.toString().lower(); |
578 | QString qs2 = o.toString().lower(); | 578 | QString qs2 = o.toString().lower(); |
579 | QString qsv = toString().lower(); | 579 | QString qsv = toString().lower(); |
580 | 580 | ||
581 | if (!qs1.startsWith(qsv)) | 581 | if (!qs1.startsWith(qsv)) |
582 | return FALSE; | 582 | return FALSE; |
583 | 583 | ||
584 | /* contains sub-str, if later than is not closer */ | 584 | /* contains sub-str, if later than is not closer */ |
585 | if(QString::compare(qs1, qs2) > 0) | 585 | if(QString::compare(qs1, qs2) > 0) |
586 | return FALSE; | 586 | return FALSE; |
587 | return TRUE; | 587 | return TRUE; |
588 | } | 588 | } |
589 | case Int: { | 589 | case Int: { |
590 | /* case for int is smallest absolute difference */ | 590 | /* case for int is smallest absolute difference */ |
591 | int i1 = n.toInt(); | 591 | int i1 = n.toInt(); |
592 | int i2 = o.toInt(); | 592 | int i2 = o.toInt(); |
593 | int iv = toInt(); | 593 | int iv = toInt(); |
594 | 594 | ||
595 | int diff1 = (i1 - iv); | 595 | int diff1 = (i1 - iv); |
596 | if (diff1 < 0) | 596 | if (diff1 < 0) |
597 | diff1 = -diff1; | 597 | diff1 = -diff1; |
598 | int diff2 = (i2 - iv); | 598 | int diff2 = (i2 - iv); |
599 | if (diff2 < 0) | 599 | if (diff2 < 0) |
600 | diff2 = -diff2; | 600 | diff2 = -diff2; |
601 | 601 | ||
602 | if (diff1 < diff2) | 602 | if (diff1 < diff2) |
603 | return TRUE; | 603 | return TRUE; |
604 | return FALSE; | 604 | return FALSE; |
605 | } | 605 | } |
606 | case Date: { | 606 | case Date: { |
607 | QDate i1 = n.toDate(); | 607 | QDate i1 = n.toDate(); |
608 | QDate i2 = o.toDate(); | 608 | QDate i2 = o.toDate(); |
609 | QDate iv = toDate(); | 609 | QDate iv = toDate(); |
610 | 610 | ||
611 | /* definition of closer is the least difference in days */ | 611 | /* definition of closer is the least difference in days */ |
612 | int diff1 = i1.daysTo(iv); | 612 | int diff1 = i1.daysTo(iv); |
613 | if (diff1 < 0) | 613 | if (diff1 < 0) |
614 | diff1 = -diff1; | 614 | diff1 = -diff1; |
615 | int diff2 = i2.daysTo(iv); | 615 | int diff2 = i2.daysTo(iv); |
616 | if (diff2 < 0) | 616 | if (diff2 < 0) |
617 | diff2 = -diff2; | 617 | diff2 = -diff2; |
618 | 618 | ||
619 | if (diff1 < diff2) | 619 | if (diff1 < diff2) |
620 | return TRUE; | 620 | return TRUE; |
621 | return FALSE; | 621 | return FALSE; |
622 | } | 622 | } |
@@ -624,16 +624,16 @@ bool TVVariant::closer(TVVariant n, TVVariant o) | |||
624 | QTime i1 = n.toTime(); | 624 | QTime i1 = n.toTime(); |
625 | QTime i2 = o.toTime(); | 625 | QTime i2 = o.toTime(); |
626 | QTime iv = toTime(); | 626 | QTime iv = toTime(); |
627 | 627 | ||
628 | /* definition of closer is the least difference in days */ | 628 | /* definition of closer is the least difference in days */ |
629 | int diff1 = i1.msecsTo(iv); | 629 | int diff1 = i1.msecsTo(iv); |
630 | if (diff1 < 0) | 630 | if (diff1 < 0) |
631 | diff1 = -diff1; | 631 | diff1 = -diff1; |
632 | int diff2 = i2.msecsTo(iv); | 632 | int diff2 = i2.msecsTo(iv); |
633 | if (diff2 < 0) | 633 | if (diff2 < 0) |
634 | diff2 = -diff2; | 634 | diff2 = -diff2; |
635 | if (diff1 < diff2) | 635 | if (diff1 < diff2) |
636 | return TRUE; | 636 | return TRUE; |
637 | return FALSE; | 637 | return FALSE; |
638 | } | 638 | } |
639 | default: | 639 | default: |
@@ -646,30 +646,30 @@ bool TVVariant::closer(TVVariant n, TVVariant o) | |||
646 | 646 | ||
647 | /*! True if n is close to this */ | 647 | /*! True if n is close to this */ |
648 | bool TVVariant::close(TVVariant n) | 648 | bool TVVariant::close(TVVariant n) |
649 | { | 649 | { |
650 | /* Nothing is close to an invalid, so nothing can be closer */ | 650 | /* Nothing is close to an invalid, so nothing can be closer */ |
651 | if(type() == Invalid) | 651 | if(type() == Invalid) |
652 | return FALSE; | 652 | return FALSE; |
653 | 653 | ||
654 | /* can't be close if of different type */ | 654 | /* can't be close if of different type */ |
655 | if(n.type() != type()) | 655 | if(n.type() != type()) |
656 | return FALSE; | 656 | return FALSE; |
657 | 657 | ||
658 | switch(type()){ | 658 | switch(type()){ |
659 | case String: { | 659 | case String: { |
660 | /* case for strings is close is a substring.. closer is | 660 | /* case for strings is close is a substring.. closer is |
661 | * earlier alphabetically */ | 661 | * earlier alphabetically */ |
662 | QString qs1 = n.toString().lower(); | 662 | QString qs1 = n.toString().lower(); |
663 | QString qsv = toString().lower(); | 663 | QString qsv = toString().lower(); |
664 | 664 | ||
665 | if (!qs1.startsWith(qsv)) | 665 | if (!qs1.startsWith(qsv)) |
666 | return FALSE; | 666 | return FALSE; |
667 | return TRUE; | 667 | return TRUE; |
668 | } | 668 | } |
669 | case Int: | 669 | case Int: |
670 | case Date: | 670 | case Date: |
671 | case Time: | 671 | case Time: |
672 | return TRUE; | 672 | return TRUE; |
673 | default: | 673 | default: |
674 | /* don't know how to do 'closer' on this type, hence never closer | 674 | /* don't know how to do 'closer' on this type, hence never closer |
675 | * or even close */ | 675 | * or even close */ |
@@ -678,29 +678,29 @@ bool TVVariant::close(TVVariant n) | |||
678 | return FALSE; | 678 | return FALSE; |
679 | } | 679 | } |
680 | 680 | ||
681 | /*! | 681 | /*! |
682 | \class Key | 682 | \class Key |
683 | \brief document me! | 683 | \brief document me! |
684 | 684 | ||
685 | document me! | 685 | document me! |
686 | */ | 686 | */ |
687 | 687 | ||
688 | Key::Key() : kname(), kexample(), kflags(0) { } | 688 | Key::Key() : kname(), kexample(), kflags(0) { } |
689 | 689 | ||
690 | Key::Key(QString name, TVVariant example, int flags) : | 690 | Key::Key(QString name, TVVariant example, int flags) : |
691 | kname(name), kexample(example), kflags(flags) { } | 691 | kname(name), kexample(example), kflags(flags) { } |
692 | 692 | ||
693 | Key::Key(const Key &other) | 693 | Key::Key(const Key &other) |
694 | { | 694 | { |
695 | kname = other.kname; | 695 | kname = other.kname; |
696 | kexample = other.kexample; | 696 | kexample = other.kexample; |
697 | kflags = other.kflags; | 697 | kflags = other.kflags; |
698 | } | 698 | } |
699 | 699 | ||
700 | Key& Key::operator=(const Key& key) | 700 | Key& Key::operator=(const Key& key) |
701 | { | 701 | { |
702 | kname = key.kname; | 702 | kname = key.kname; |
703 | kexample = key.kexample; | 703 | kexample = key.kexample; |
704 | kflags = key.kflags; | 704 | kflags = key.kflags; |
705 | return *this; | 705 | return *this; |
706 | } | 706 | } |
@@ -774,19 +774,19 @@ void Key::setNewFlag(bool v) | |||
774 | headings by DBStore. It stores the names and types of the keys | 774 | headings by DBStore. It stores the names and types of the keys |
775 | */ | 775 | */ |
776 | 776 | ||
777 | /*! | 777 | /*! |
778 | Constructs a KeyList | 778 | Constructs a KeyList |
779 | */ | 779 | */ |
780 | KeyList::KeyList() : QIntDict<Key>(20) | 780 | KeyList::KeyList() : QIntDict<Key>(20) |
781 | { | 781 | { |
782 | setAutoDelete(TRUE); | 782 | setAutoDelete(TRUE); |
783 | } | 783 | } |
784 | 784 | ||
785 | /* Should be deep copy, but isn't */ | 785 | /* Should be deep copy, but isn't */ |
786 | KeyList::KeyList(const KeyList &k) : QIntDict<Key>(k) | 786 | KeyList::KeyList(const KeyList &k) : QIntDict<Key>(k) |
787 | { | 787 | { |
788 | KeyListIterator it(k); | 788 | KeyListIterator it(k); |
789 | while(it.current()) { | 789 | while(it.current()) { |
790 | replace(it.currentKey(), new Key(*it.current())); | 790 | replace(it.currentKey(), new Key(*it.current())); |
791 | ++it; | 791 | ++it; |
792 | } | 792 | } |
@@ -819,13 +819,13 @@ bool KeyList::operator!=(const KeyList &other) | |||
819 | return FALSE; | 819 | return FALSE; |
820 | } | 820 | } |
821 | 821 | ||
822 | /*! | 822 | /*! |
823 | Returns the number of keys stored in the KeyList | 823 | Returns the number of keys stored in the KeyList |
824 | */ | 824 | */ |
825 | int KeyList::getNumFields() const | 825 | int KeyList::getNumFields() const |
826 | { | 826 | { |
827 | return count(); | 827 | return count(); |
828 | } | 828 | } |
829 | 829 | ||
830 | /*! | 830 | /*! |
831 | Adds a new key to the KeyList | 831 | Adds a new key to the KeyList |
@@ -844,67 +844,66 @@ int KeyList::addKey(QString name, TVVariant example) | |||
844 | 844 | ||
845 | int KeyList::addKey(QString name, TVVariant::KeyType type) | 845 | int KeyList::addKey(QString name, TVVariant::KeyType type) |
846 | { | 846 | { |
847 | /* generate a valid type for the example? */ | 847 | /* generate a valid type for the example? */ |
848 | TVVariant e = TVVariant("0"); | 848 | TVVariant e = TVVariant("0"); |
849 | switch(type) { | 849 | switch(type) { |
850 | case TVVariant::String: | 850 | case TVVariant::String: |
851 | return addKey(name, TVVariant("<undefined>").asString()); | 851 | return addKey(name, TVVariant("<undefined>").asString()); |
852 | break; | 852 | break; |
853 | case TVVariant::Date: | 853 | case TVVariant::Date: |
854 | return addKey(name, TVVariant(QDate::currentDate()).asDate()); | 854 | return addKey(name, TVVariant(QDate::currentDate()).asDate()); |
855 | break; | 855 | break; |
856 | case TVVariant::Time: | 856 | case TVVariant::Time: |
857 | return addKey(name, TVVariant(QTime(0,0,0)).toTime()); | 857 | return addKey(name, TVVariant(QTime(0,0,0)).toTime()); |
858 | break; | 858 | break; |
859 | case TVVariant::Int: | 859 | case TVVariant::Int: |
860 | return addKey(name, TVVariant(0).toInt()); | 860 | return addKey(name, TVVariant(0).toInt()); |
861 | break; | 861 | break; |
862 | default: | 862 | default: |
863 | qWarning(QObject::tr("KeyList::addKey() Cannot make default " | 863 | owarn << "KeyList::addKey() Cannot make default value for type " << type << ", Key not added." << oendl; |
864 | "value for type %1, Key not added.").arg(type)); | ||
865 | break; | 864 | break; |
866 | } | 865 | } |
867 | return -1; | 866 | return -1; |
868 | } | 867 | } |
869 | 868 | ||
870 | void KeyList::setKeyFlags(int i, int flag) | 869 | void KeyList::setKeyFlags(int i, int flag) |
871 | { | 870 | { |
872 | if(find(i)) | 871 | if(find(i)) |
873 | find(i)->setFlags(flag); | 872 | find(i)->setFlags(flag); |
874 | } | 873 | } |
875 | 874 | ||
876 | int KeyList::getKeyFlags(int i) const | 875 | int KeyList::getKeyFlags(int i) const |
877 | { | 876 | { |
878 | if(find(i)) | 877 | if(find(i)) |
879 | return find(i)->flags(); | 878 | return find(i)->flags(); |
880 | return 0; | 879 | return 0; |
881 | } | 880 | } |
882 | 881 | ||
883 | bool KeyList::checkNewFlag(int i) const | 882 | bool KeyList::checkNewFlag(int i) const |
884 | { | 883 | { |
885 | if (find(i)) | 884 | if (find(i)) |
886 | return find(i)->newFlag(); | 885 | return find(i)->newFlag(); |
887 | return false; | 886 | return false; |
888 | } | 887 | } |
889 | 888 | ||
890 | void KeyList::setNewFlag(int i, bool f) | 889 | void KeyList::setNewFlag(int i, bool f) |
891 | { | 890 | { |
892 | if(!find(i)) | 891 | if(!find(i)) |
893 | return; | 892 | return; |
894 | find(i)->setNewFlag(f); | 893 | find(i)->setNewFlag(f); |
895 | } | 894 | } |
896 | 895 | ||
897 | bool KeyList::checkDeleteFlag(int i) const | 896 | bool KeyList::checkDeleteFlag(int i) const |
898 | { | 897 | { |
899 | if (find(i)) | 898 | if (find(i)) |
900 | return find(i)->delFlag(); | 899 | return find(i)->delFlag(); |
901 | return false; | 900 | return false; |
902 | } | 901 | } |
903 | 902 | ||
904 | void KeyList::setDeleteFlag(int i, bool f) | 903 | void KeyList::setDeleteFlag(int i, bool f) |
905 | { | 904 | { |
906 | if(!find(i)) | 905 | if(!find(i)) |
907 | return; | 906 | return; |
908 | find(i)->setDelFlag(f); | 907 | find(i)->setDelFlag(f); |
909 | } | 908 | } |
910 | 909 | ||
@@ -915,13 +914,13 @@ QString KeyList::getKeyName(int i) const | |||
915 | { | 914 | { |
916 | if (find (i)) | 915 | if (find (i)) |
917 | return find(i)->name(); | 916 | return find(i)->name(); |
918 | return QString(); | 917 | return QString(); |
919 | } | 918 | } |
920 | 919 | ||
921 | void KeyList::setKeyName(int i, const QString &n) | 920 | void KeyList::setKeyName(int i, const QString &n) |
922 | { | 921 | { |
923 | if(find(i)) | 922 | if(find(i)) |
924 | find(i)->setName(n); | 923 | find(i)->setName(n); |
925 | } | 924 | } |
926 | 925 | ||
927 | /*! | 926 | /*! |
@@ -931,13 +930,13 @@ TVVariant::KeyType KeyList::getKeyType(int i) const | |||
931 | { | 930 | { |
932 | if(find(i)) | 931 | if(find(i)) |
933 | return find(i)->type(); | 932 | return find(i)->type(); |
934 | return TVVariant::Invalid; | 933 | return TVVariant::Invalid; |
935 | } | 934 | } |
936 | 935 | ||
937 | void KeyList::setKeyType(int i, TVVariant::KeyType t) | 936 | void KeyList::setKeyType(int i, TVVariant::KeyType t) |
938 | { | 937 | { |
939 | if(!find(i)) | 938 | if(!find(i)) |
940 | return; | 939 | return; |
941 | switch(t) { | 940 | switch(t) { |
942 | case TVVariant::String: | 941 | case TVVariant::String: |
943 | find(i)->setExample(TVVariant(QString("default"))); | 942 | find(i)->setExample(TVVariant(QString("default"))); |
@@ -1037,15 +1036,15 @@ QDataStream &operator>>( QDataStream &s, KeyList &k) | |||
1037 | 1036 | ||
1038 | This class holds the data of a row in a table. | 1037 | This class holds the data of a row in a table. |
1039 | */ | 1038 | */ |
1040 | 1039 | ||
1041 | 1040 | ||
1042 | /*! | 1041 | /*! |
1043 | Constructs a DataElem. This function needs a container because the | 1042 | Constructs a DataElem. This function needs a container because the |
1044 | size, types of keys and primary key are all defined by the containing | 1043 | size, types of keys and primary key are all defined by the containing |
1045 | database | 1044 | database |
1046 | */ | 1045 | */ |
1047 | DataElem::DataElem(DBStore *c) : values(20) | 1046 | DataElem::DataElem(DBStore *c) : values(20) |
1048 | { | 1047 | { |
1049 | int size; | 1048 | int size; |
1050 | contained = c; | 1049 | contained = c; |
1051 | size = c->getNumFields(); | 1050 | size = c->getNumFields(); |
@@ -1083,13 +1082,13 @@ QDataStream &operator>>( QDataStream &s, DataElem &d) | |||
1083 | int size; | 1082 | int size; |
1084 | TVVariant t; | 1083 | TVVariant t; |
1085 | Q_UINT16 index = 0; | 1084 | Q_UINT16 index = 0; |
1086 | 1085 | ||
1087 | s >> size; /* redundent data but makes streaming easier */ | 1086 | s >> size; /* redundent data but makes streaming easier */ |
1088 | if (size != d.getNumFields()) { | 1087 | if (size != d.getNumFields()) { |
1089 | owarn << "DataSize mis-match" << oendl; | 1088 | owarn << "DataSize mis-match" << oendl; |
1090 | return s; /* sanity check failed.. don't load */ | 1089 | return s; /* sanity check failed.. don't load */ |
1091 | } | 1090 | } |
1092 | 1091 | ||
1093 | for(i = 0; i < size; i++) { | 1092 | for(i = 0; i < size; i++) { |
1094 | s >> index; | 1093 | s >> index; |
1095 | s >> t; | 1094 | s >> t; |
@@ -1106,68 +1105,68 @@ int DataElem::getNumFields() const | |||
1106 | 1105 | ||
1107 | KeyList DataElem::getKeys() const | 1106 | KeyList DataElem::getKeys() const |
1108 | { | 1107 | { |
1109 | return *(contained->getKeys()); | 1108 | return *(contained->getKeys()); |
1110 | } | 1109 | } |
1111 | 1110 | ||
1112 | /*! | 1111 | /*! |
1113 | This function determines whether field index i of the element has been | 1112 | This function determines whether field index i of the element has been |
1114 | set yet. | 1113 | set yet. |
1115 | 1114 | ||
1116 | \return A boolean value that is TRUE if the specfied field of this | 1115 | \return A boolean value that is TRUE if the specfied field of this |
1117 | element has been set and FALSE if the field has not yet been set | 1116 | element has been set and FALSE if the field has not yet been set |
1118 | */ | 1117 | */ |
1119 | bool DataElem::hasValidValue(int i) const | 1118 | bool DataElem::hasValidValue(int i) const |
1120 | { | 1119 | { |
1121 | if(!values.find(i)) | 1120 | if(!values.find(i)) |
1122 | return FALSE; | 1121 | return FALSE; |
1123 | if(!contained->getKeys()->validIndex(i)) | 1122 | if(!contained->getKeys()->validIndex(i)) |
1124 | return FALSE; | 1123 | return FALSE; |
1125 | return values.find(i)->isValid(); | 1124 | return values.find(i)->isValid(); |
1126 | } | 1125 | } |
1127 | 1126 | ||
1128 | /*! | 1127 | /*! |
1129 | This function determines whether field name qs of the element has been | 1128 | This function determines whether field name qs of the element has been |
1130 | set yet. | 1129 | set yet. |
1131 | 1130 | ||
1132 | \return A boolean value that is TRUE if the specfied field of this | 1131 | \return A boolean value that is TRUE if the specfied field of this |
1133 | element has been set and FALSE if the field has not yet been set | 1132 | element has been set and FALSE if the field has not yet been set |
1134 | */ | 1133 | */ |
1135 | bool DataElem::hasValidValue(QString qs) const | 1134 | bool DataElem::hasValidValue(QString qs) const |
1136 | { | 1135 | { |
1137 | int i = contained->getKeyIndex(qs); | 1136 | int i = contained->getKeyIndex(qs); |
1138 | return hasValidValue(i); | 1137 | return hasValidValue(i); |
1139 | } | 1138 | } |
1140 | 1139 | ||
1141 | /*! returns the type of the field specified by index i */ | 1140 | /*! returns the type of the field specified by index i */ |
1142 | TVVariant::KeyType DataElem::getFieldType(int i) const | 1141 | TVVariant::KeyType DataElem::getFieldType(int i) const |
1143 | { | 1142 | { |
1144 | return contained->getKeyType(i); | 1143 | return contained->getKeyType(i); |
1145 | } | 1144 | } |
1146 | 1145 | ||
1147 | /*! returns the type of the field specified by name qs */ | 1146 | /*! returns the type of the field specified by name qs */ |
1148 | TVVariant::KeyType DataElem::getFieldType(QString qs) const | 1147 | TVVariant::KeyType DataElem::getFieldType(QString qs) const |
1149 | { | 1148 | { |
1150 | int i = contained->getKeyIndex(qs); | 1149 | int i = contained->getKeyIndex(qs); |
1151 | return contained->getKeyType(i); | 1150 | return contained->getKeyType(i); |
1152 | } | 1151 | } |
1153 | 1152 | ||
1154 | /*! | 1153 | /*! |
1155 | returns a pointer to the data stored in field index i for this | 1154 | returns a pointer to the data stored in field index i for this |
1156 | data element, (value may not be valid) | 1155 | data element, (value may not be valid) |
1157 | */ | 1156 | */ |
1158 | TVVariant DataElem::getField(int i) const | 1157 | TVVariant DataElem::getField(int i) const |
1159 | { | 1158 | { |
1160 | if(hasValidValue(i)) | 1159 | if(hasValidValue(i)) |
1161 | return TVVariant(*values.find(i)); | 1160 | return TVVariant(*values.find(i)); |
1162 | return TVVariant(); | 1161 | return TVVariant(); |
1163 | } | 1162 | } |
1164 | 1163 | ||
1165 | /*! | 1164 | /*! |
1166 | returns a pointer to the data stored in field name qs for this | 1165 | returns a pointer to the data stored in field name qs for this |
1167 | data element, (value may not be valid) | 1166 | data element, (value may not be valid) |
1168 | */ | 1167 | */ |
1169 | TVVariant DataElem::getField(QString qs) const | 1168 | TVVariant DataElem::getField(QString qs) const |
1170 | { | 1169 | { |
1171 | int i = contained->getKeyIndex(qs); | 1170 | int i = contained->getKeyIndex(qs); |
1172 | return getField(i); | 1171 | return getField(i); |
1173 | } | 1172 | } |
@@ -1176,13 +1175,13 @@ TVVariant DataElem::getField(QString qs) const | |||
1176 | Sets the value of the elements field index i to the value represented in | 1175 | Sets the value of the elements field index i to the value represented in |
1177 | the QString q. | 1176 | the QString q. |
1178 | 1177 | ||
1179 | \param i index of the field to set | 1178 | \param i index of the field to set |
1180 | \param q a string that can be parsed to get the value to be set | 1179 | \param q a string that can be parsed to get the value to be set |
1181 | */ | 1180 | */ |
1182 | void DataElem::setField(int i, QString q) | 1181 | void DataElem::setField(int i, QString q) |
1183 | { | 1182 | { |
1184 | /* from the type of the field, parse q and store */ | 1183 | /* from the type of the field, parse q and store */ |
1185 | TVVariant::KeyType kt = contained->getKeyType(i); | 1184 | TVVariant::KeyType kt = contained->getKeyType(i); |
1186 | 1185 | ||
1187 | TVVariant t = TVVariant(q); | 1186 | TVVariant t = TVVariant(q); |
1188 | 1187 | ||
@@ -1205,26 +1204,24 @@ void DataElem::setField(int i, QString q) | |||
1205 | case TVVariant::Time: { | 1204 | case TVVariant::Time: { |
1206 | t.asTime(); | 1205 | t.asTime(); |
1207 | setField(i, t); | 1206 | setField(i, t); |
1208 | return; | 1207 | return; |
1209 | } | 1208 | } |
1210 | default: | 1209 | default: |
1211 | qWarning( | 1210 | owarn << "DataElem::setField(" << i << ", " << q << ") No valid type found" << oendl; |
1212 | QObject::tr("DataElem::setField(%1, %2) No valid type found").arg(i).arg(q) | ||
1213 | ); | ||
1214 | } | 1211 | } |
1215 | } | 1212 | } |
1216 | 1213 | ||
1217 | /*! | 1214 | /*! |
1218 | Sets the value of the elements field index i to the value at the pointer | 1215 | Sets the value of the elements field index i to the value at the pointer |
1219 | value. | 1216 | value. |
1220 | 1217 | ||
1221 | \param i index of the field to set | 1218 | \param i index of the field to set |
1222 | \param value a pointer to the (already allocated) value to set | 1219 | \param value a pointer to the (already allocated) value to set |
1223 | */ | 1220 | */ |
1224 | void DataElem::setField(int i, TVVariant value) | 1221 | void DataElem::setField(int i, TVVariant value) |
1225 | { | 1222 | { |
1226 | if (value.isValid()) { | 1223 | if (value.isValid()) { |
1227 | values.remove(i); | 1224 | values.remove(i); |
1228 | values.replace(i, new TVVariant(value)); | 1225 | values.replace(i, new TVVariant(value)); |
1229 | } | 1226 | } |
1230 | } | 1227 | } |
@@ -1233,25 +1230,25 @@ void DataElem::setField(int i, TVVariant value) | |||
1233 | Sets the value of the elements field name qs to the value represented in | 1230 | Sets the value of the elements field name qs to the value represented in |
1234 | the QString q. | 1231 | the QString q. |
1235 | 1232 | ||
1236 | \param qs name of the field to set | 1233 | \param qs name of the field to set |
1237 | \param q a string that can be parsed to get the value to be set | 1234 | \param q a string that can be parsed to get the value to be set |
1238 | */ | 1235 | */ |
1239 | void DataElem::setField(QString qs, QString q) | 1236 | void DataElem::setField(QString qs, QString q) |
1240 | { | 1237 | { |
1241 | /* from the type of the field, parse q and store */ | 1238 | /* from the type of the field, parse q and store */ |
1242 | int i = contained->getKeyIndex(qs); | 1239 | int i = contained->getKeyIndex(qs); |
1243 | setField(i, qs); | 1240 | setField(i, qs); |
1244 | } | 1241 | } |
1245 | 1242 | ||
1246 | /*! | 1243 | /*! |
1247 | Sets the value of the elements field name qs to the value at the pointer | 1244 | Sets the value of the elements field name qs to the value at the pointer |
1248 | value. | 1245 | value. |
1249 | 1246 | ||
1250 | \param qs name of the field to set | 1247 | \param qs name of the field to set |
1251 | \param value a pointer to the (already allocated) value to set | 1248 | \param value a pointer to the (already allocated) value to set |
1252 | */ | 1249 | */ |
1253 | void DataElem::setField(QString qs, TVVariant value) | 1250 | void DataElem::setField(QString qs, TVVariant value) |
1254 | { | 1251 | { |
1255 | int i = contained->getKeyIndex(qs); | 1252 | int i = contained->getKeyIndex(qs); |
1256 | setField(i, value); | 1253 | setField(i, value); |
1257 | } | 1254 | } |
@@ -1264,13 +1261,13 @@ void DataElem::unsetField(QString qs) | |||
1264 | { | 1261 | { |
1265 | int i = contained->getKeyIndex(qs); | 1262 | int i = contained->getKeyIndex(qs); |
1266 | unsetField(i); | 1263 | unsetField(i); |
1267 | } | 1264 | } |
1268 | 1265 | ||
1269 | /*! | 1266 | /*! |
1270 | Converts the data element to a Rich Text QString | 1267 | Converts the data element to a Rich Text QString |
1271 | */ | 1268 | */ |
1272 | QString DataElem::toQString() const | 1269 | QString DataElem::toQString() const |
1273 | { | 1270 | { |
1274 | /* lets make an attempt at this function */ | 1271 | /* lets make an attempt at this function */ |
1275 | int i; | 1272 | int i; |
1276 | QString scratch = ""; | 1273 | QString scratch = ""; |
@@ -1287,21 +1284,21 @@ QString DataElem::toQString() const | |||
1287 | ++it; | 1284 | ++it; |
1288 | } | 1285 | } |
1289 | return scratch; | 1286 | return scratch; |
1290 | } | 1287 | } |
1291 | 1288 | ||
1292 | /*! formats individual fields to strings so can be displayed */ | 1289 | /*! formats individual fields to strings so can be displayed */ |
1293 | QString DataElem::toQString(int i) const | 1290 | QString DataElem::toQString(int i) const |
1294 | { | 1291 | { |
1295 | if(hasValidValue(i)) { | 1292 | if(hasValidValue(i)) { |
1296 | return getField(i).toString(); | 1293 | return getField(i).toString(); |
1297 | } | 1294 | } |
1298 | return ""; | 1295 | return ""; |
1299 | } | 1296 | } |
1300 | /*! formats individual fields to strings so can be sorted by QListView */ | 1297 | /*! formats individual fields to strings so can be sorted by QListView */ |
1301 | QString DataElem::toSortableQString(int i) const | 1298 | QString DataElem::toSortableQString(int i) const |
1302 | { | 1299 | { |
1303 | QString scratch = ""; | 1300 | QString scratch = ""; |
1304 | if(hasValidValue(i)) { | 1301 | if(hasValidValue(i)) { |
1305 | switch (contained->getKeyType(i)) { | 1302 | switch (contained->getKeyType(i)) { |
1306 | case TVVariant::String: { | 1303 | case TVVariant::String: { |
1307 | scratch += getField(i).toString(); | 1304 | scratch += getField(i).toString(); |
@@ -1310,19 +1307,19 @@ QString DataElem::toSortableQString(int i) const | |||
1310 | case TVVariant::Int: { | 1307 | case TVVariant::Int: { |
1311 | scratch.sprintf("%08d", getField(i).toInt()); | 1308 | scratch.sprintf("%08d", getField(i).toInt()); |
1312 | break; | 1309 | break; |
1313 | } | 1310 | } |
1314 | case TVVariant::Date: { | 1311 | case TVVariant::Date: { |
1315 | static QDate epochD(1800, 1, 1); | 1312 | static QDate epochD(1800, 1, 1); |
1316 | scratch.sprintf("%08d", | 1313 | scratch.sprintf("%08d", |
1317 | epochD.daysTo(getField(i).toDate())); | 1314 | epochD.daysTo(getField(i).toDate())); |
1318 | break; | 1315 | break; |
1319 | } | 1316 | } |
1320 | case TVVariant::Time: { | 1317 | case TVVariant::Time: { |
1321 | static QTime epochT(0, 0, 0); | 1318 | static QTime epochT(0, 0, 0); |
1322 | scratch.sprintf("%08d", | 1319 | scratch.sprintf("%08d", |
1323 | epochT.msecsTo(getField(i).toTime())); | 1320 | epochT.msecsTo(getField(i).toTime())); |
1324 | break; | 1321 | break; |
1325 | } | 1322 | } |
1326 | default: | 1323 | default: |
1327 | scratch += "Unknown type"; | 1324 | scratch += "Unknown type"; |
1328 | break; | 1325 | break; |
@@ -1377,18 +1374,18 @@ bool DataElem::contains(int i, TVVariant v) const | |||
1377 | if (qs1.contains(qs2) > 0) return TRUE; | 1374 | if (qs1.contains(qs2) > 0) return TRUE; |
1378 | break; | 1375 | break; |
1379 | } | 1376 | } |
1380 | /* meaningless for ints */ | 1377 | /* meaningless for ints */ |
1381 | /* meaningless for time */ | 1378 | /* meaningless for time */ |
1382 | /* meaningless for dates */ | 1379 | /* meaningless for dates */ |
1383 | case TVVariant::Int: | 1380 | case TVVariant::Int: |
1384 | case TVVariant::Time: | 1381 | case TVVariant::Time: |
1385 | case TVVariant::Date: | 1382 | case TVVariant::Date: |
1386 | break; | 1383 | break; |
1387 | default: | 1384 | default: |
1388 | owarn << "Tried to compare unknown data type" << oendl; | 1385 | owarn << "Tried to compare unknown data type" << oendl; |
1389 | } | 1386 | } |
1390 | return FALSE; | 1387 | return FALSE; |
1391 | } | 1388 | } |
1392 | 1389 | ||
1393 | bool DataElem::startsWith(int i, TVVariant v) const | 1390 | bool DataElem::startsWith(int i, TVVariant v) const |
1394 | { | 1391 | { |
@@ -1403,18 +1400,18 @@ bool DataElem::startsWith(int i, TVVariant v) const | |||
1403 | QString qs2 = v.toString().lower(); | 1400 | QString qs2 = v.toString().lower(); |
1404 | return qs1.startsWith(qs2); | 1401 | return qs1.startsWith(qs2); |
1405 | } | 1402 | } |
1406 | /* meaningless for ints */ | 1403 | /* meaningless for ints */ |
1407 | /* meaningless for time */ | 1404 | /* meaningless for time */ |
1408 | /* meaningless for dates */ | 1405 | /* meaningless for dates */ |
1409 | case TVVariant::Int: | 1406 | case TVVariant::Int: |
1410 | case TVVariant::Time: | 1407 | case TVVariant::Time: |
1411 | case TVVariant::Date: | 1408 | case TVVariant::Date: |
1412 | return FALSE; | 1409 | return FALSE; |
1413 | default: | 1410 | default: |
1414 | owarn << "Tried to compare unknown data type" << oendl; | 1411 | owarn << "Tried to compare unknown data type" << oendl; |
1415 | } | 1412 | } |
1416 | return FALSE; | 1413 | return FALSE; |
1417 | } | 1414 | } |
1418 | 1415 | ||
1419 | bool DataElem::endsWith(int i, TVVariant v) const | 1416 | bool DataElem::endsWith(int i, TVVariant v) const |
1420 | { | 1417 | { |
@@ -1429,50 +1426,50 @@ bool DataElem::endsWith(int i, TVVariant v) const | |||
1429 | QString qs2 = v.toString().lower(); | 1426 | QString qs2 = v.toString().lower(); |
1430 | return qs1.startsWith(qs2); | 1427 | return qs1.startsWith(qs2); |
1431 | } | 1428 | } |
1432 | /* meaningless for ints */ | 1429 | /* meaningless for ints */ |
1433 | /* meaningless for time */ | 1430 | /* meaningless for time */ |
1434 | /* meaningless for dates */ | 1431 | /* meaningless for dates */ |
1435 | case TVVariant::Int: | 1432 | case TVVariant::Int: |
1436 | case TVVariant::Time: | 1433 | case TVVariant::Time: |
1437 | case TVVariant::Date: | 1434 | case TVVariant::Date: |
1438 | return FALSE; | 1435 | return FALSE; |
1439 | default: | 1436 | default: |
1440 | owarn << "Tried to compare unknown data type" << oendl; | 1437 | owarn << "Tried to compare unknown data type" << oendl; |
1441 | } | 1438 | } |
1442 | return FALSE; | 1439 | return FALSE; |
1443 | } | 1440 | } |
1444 | 1441 | ||
1445 | /*! | 1442 | /*! |
1446 | Determins which of the first to parameters are closer to the third, target | 1443 | Determins which of the first to parameters are closer to the third, target |
1447 | parameter. | 1444 | parameter. |
1448 | 1445 | ||
1449 | \return | 1446 | \return |
1450 | <UL> | 1447 | <UL> |
1451 | <LI>TRUE if the first element is a closer match to the target than the | 1448 | <LI>TRUE if the first element is a closer match to the target than the |
1452 | second element</LI> | 1449 | second element</LI> |
1453 | <LI>FALSE if the first element is not a closer match to the target than | 1450 | <LI>FALSE if the first element is not a closer match to the target than |
1454 | the second element</LI> | 1451 | the second element</LI> |
1455 | </UL> | 1452 | </UL> |
1456 | */ | 1453 | */ |
1457 | bool DataElem::closer(DataElem*d1, DataElem *d2, TVVariant target, int column) | 1454 | bool DataElem::closer(DataElem*d1, DataElem *d2, TVVariant target, int column) |
1458 | { | 1455 | { |
1459 | int type; | 1456 | int type; |
1460 | 1457 | ||
1461 | if(!d1) return FALSE; | 1458 | if(!d1) return FALSE; |
1462 | 1459 | ||
1463 | if (!d1->hasValidValue(column)) return FALSE; | 1460 | if (!d1->hasValidValue(column)) return FALSE; |
1464 | 1461 | ||
1465 | if(!target.isValid()) return FALSE; | 1462 | if(!target.isValid()) return FALSE; |
1466 | 1463 | ||
1467 | type = d1->getField(column).type(); | 1464 | type = d1->getField(column).type(); |
1468 | 1465 | ||
1469 | if(d2) { | 1466 | if(d2) { |
1470 | if (type != d2->getField(column).type()) { | 1467 | if (type != d2->getField(column).type()) { |
1471 | /* can't do compare */ | 1468 | /* can't do compare */ |
1472 | owarn << "Tried to compare two incompatable types" << oendl; | 1469 | owarn << "Tried to compare two incompatable types" << oendl; |
1473 | return FALSE; | 1470 | return FALSE; |
1474 | } | 1471 | } |
1475 | return target.closer(d1->getField(column), d2->getField(column)); | 1472 | return target.closer(d1->getField(column), d2->getField(column)); |
1476 | } | 1473 | } |
1477 | return target.close(d1->getField(column)); | 1474 | return target.close(d1->getField(column)); |
1478 | } | 1475 | } |
diff --git a/noncore/apps/tableviewer/db/datacache.cpp b/noncore/apps/tableviewer/db/datacache.cpp index 6380e1b..de57961 100644 --- a/noncore/apps/tableviewer/db/datacache.cpp +++ b/noncore/apps/tableviewer/db/datacache.cpp | |||
@@ -13,13 +13,13 @@ | |||
13 | ** | 13 | ** |
14 | ** See http://www.trolltech.com/gpl/ for GPL licensing information. | 14 | ** See http://www.trolltech.com/gpl/ for GPL licensing information. |
15 | ** | 15 | ** |
16 | ** Contact info@trolltech.com if any conditions of this licensing are | 16 | ** Contact info@trolltech.com if any conditions of this licensing are |
17 | ** not clear to you. | 17 | ** not clear to you. |
18 | ** | 18 | ** |
19 | **********************************************************************/ | 19 | **********************************************************************/ |
20 | /* | 20 | /* |
21 | * This file is used to load the xml files that represent the database. | 21 | * This file is used to load the xml files that represent the database. |
22 | * The main requirment for said file is each data entry must contain a key, | 22 | * The main requirment for said file is each data entry must contain a key, |
23 | * otherwise any other data headings are allowed. | 23 | * otherwise any other data headings are allowed. |
24 | */ | 24 | */ |
25 | 25 | ||
@@ -60,16 +60,16 @@ DBStore::DBStore() | |||
60 | table_size = INIT_TABLE_SIZE; | 60 | table_size = INIT_TABLE_SIZE; |
61 | 61 | ||
62 | current_elem = 0; | 62 | current_elem = 0; |
63 | archive = 0; | 63 | archive = 0; |
64 | } | 64 | } |
65 | 65 | ||
66 | //TODO | 66 | //TODO |
67 | /*! | 67 | /*! |
68 | Reinitializes the table to empty (include a resize of the master table, | 68 | Reinitializes the table to empty (include a resize of the master table, |
69 | which should free some memory) | 69 | which should free some memory) |
70 | */ | 70 | */ |
71 | void DBStore::freeTable() | 71 | void DBStore::freeTable() |
72 | { | 72 | { |
73 | name = ""; | 73 | name = ""; |
74 | if(archive) { | 74 | if(archive) { |
75 | delete archive; | 75 | delete archive; |
@@ -90,62 +90,62 @@ void DBStore::freeTable() | |||
90 | DBStore::~DBStore() | 90 | DBStore::~DBStore() |
91 | { | 91 | { |
92 | freeTable(); | 92 | freeTable(); |
93 | } | 93 | } |
94 | 94 | ||
95 | /*! | 95 | /*! |
96 | This function opens the given xml file, loads it and sets up the | 96 | This function opens the given xml file, loads it and sets up the |
97 | appropriate data structures. | 97 | appropriate data structures. |
98 | 98 | ||
99 | \param file_name A string representing the name of the file to be opened | 99 | \param file_name A string representing the name of the file to be opened |
100 | \return true if successful, false otherwise. | 100 | \return true if successful, false otherwise. |
101 | */ | 101 | */ |
102 | bool DBStore::openSource(QIODevice *inDev, const QString &source) { | 102 | bool DBStore::openSource(QIODevice *inDev, const QString &source) { |
103 | 103 | ||
104 | /* first check if db is already open, if contains data.. then clear */ | 104 | /* first check if db is already open, if contains data.. then clear */ |
105 | if(number_elems > 0) { | 105 | if(number_elems > 0) { |
106 | freeTable(); | 106 | freeTable(); |
107 | } | 107 | } |
108 | 108 | ||
109 | if (source == "text/x-xml-tableviewer") { | 109 | if (source == "text/x-xml-tableviewer") { |
110 | archive = new DBXml(this); | 110 | archive = new DBXml(this); |
111 | } else if (source == "text/csv") { | 111 | } else if (source == "text/csv") { |
112 | archive = new DBCsv(this); | 112 | archive = new DBCsv(this); |
113 | } else | 113 | } else |
114 | return false; | 114 | return false; |
115 | 115 | ||
116 | return (archive->openSource(inDev)); | 116 | return (archive->openSource(inDev)); |
117 | } | 117 | } |
118 | 118 | ||
119 | bool DBStore::saveSource(QIODevice *outDev, const QString &source) | 119 | bool DBStore::saveSource(QIODevice *outDev, const QString &source) |
120 | { | 120 | { |
121 | /* saving a new file */ | 121 | /* saving a new file */ |
122 | if(!archive) { | 122 | if(!archive) { |
123 | if (source == "text/x-xml-tableviewer") { | 123 | if (source == "text/x-xml-tableviewer") { |
124 | archive = new DBXml(this); | 124 | archive = new DBXml(this); |
125 | } else if (source == "text/x-xml-tableviewer") { | 125 | } else if (source == "text/x-xml-tableviewer") { |
126 | archive = new DBCsv(this); | 126 | archive = new DBCsv(this); |
127 | } else | 127 | } else |
128 | return false; | 128 | return false; |
129 | } | 129 | } |
130 | 130 | ||
131 | /* changing file type */ | 131 | /* changing file type */ |
132 | if(archive->type() != source) { | 132 | if(archive->type() != source) { |
133 | delete archive; | 133 | delete archive; |
134 | if (source == "text/x-xml-tableviewer") { | 134 | if (source == "text/x-xml-tableviewer") { |
135 | archive = new DBXml(this); | 135 | archive = new DBXml(this); |
136 | } else if (source == "text/x-xml-tableviewer") { | 136 | } else if (source == "text/x-xml-tableviewer") { |
137 | archive = new DBCsv(this); | 137 | archive = new DBCsv(this); |
138 | } else | 138 | } else |
139 | return false; | 139 | return false; |
140 | } | 140 | } |
141 | 141 | ||
142 | return (archive->saveSource(outDev)); | 142 | return (archive->saveSource(outDev)); |
143 | } | 143 | } |
144 | 144 | ||
145 | /*! | 145 | /*! |
146 | This function is used to add new elements to the database. If the database | 146 | This function is used to add new elements to the database. If the database |
147 | has already reached the maximum allowable size this function does not alter | 147 | has already reached the maximum allowable size this function does not alter |
148 | the database. | 148 | the database. |
149 | 149 | ||
150 | \param delm An already allocated and initialized data element to be added | 150 | \param delm An already allocated and initialized data element to be added |
151 | */ | 151 | */ |
@@ -153,15 +153,15 @@ void DBStore::addItem(DataElem *delem) | |||
153 | { | 153 | { |
154 | addItemInternal(delem); | 154 | addItemInternal(delem); |
155 | } | 155 | } |
156 | 156 | ||
157 | void DBStore::addItemInternal(DataElem *delem) | 157 | void DBStore::addItemInternal(DataElem *delem) |
158 | { | 158 | { |
159 | /* if already full, don't over fill, do a qWarning though */ | 159 | /* if already full, don't over fill, do a owarn though */ |
160 | if (full) { | 160 | if (full) { |
161 | owarn << "Attempted to add items to already full table" << oendl; | 161 | owarn << "Attempted to add items to already full table" << oendl; |
162 | return; | 162 | return; |
163 | } | 163 | } |
164 | 164 | ||
165 | master_table.insert(number_elems, delem); | 165 | master_table.insert(number_elems, delem); |
166 | 166 | ||
167 | current_elem = number_elems; | 167 | current_elem = number_elems; |
@@ -182,43 +182,43 @@ void DBStore::addItemInternal(DataElem *delem) | |||
182 | } | 182 | } |
183 | } | 183 | } |
184 | 184 | ||
185 | void DBStore::removeItem(DataElem *r) | 185 | void DBStore::removeItem(DataElem *r) |
186 | { | 186 | { |
187 | int position = master_table.findRef(r); | 187 | int position = master_table.findRef(r); |
188 | if(position != -1) { | 188 | if(position != -1) { |
189 | /* there is at least one item, this is it */ | 189 | /* there is at least one item, this is it */ |
190 | /* replace this with the last element, decrease the element count */ | 190 | /* replace this with the last element, decrease the element count */ |
191 | master_table.insert(position, master_table.at(--number_elems)); | 191 | master_table.insert(position, master_table.at(--number_elems)); |
192 | master_table.remove(number_elems); | 192 | master_table.remove(number_elems); |
193 | delete r; | 193 | delete r; |
194 | } | 194 | } |
195 | } | 195 | } |
196 | 196 | ||
197 | /*! | 197 | /*! |
198 | Sets the name of the database | 198 | Sets the name of the database |
199 | 199 | ||
200 | \param n A string representing the new name of the database. | 200 | \param n A string representing the new name of the database. |
201 | */ | 201 | */ |
202 | void DBStore::setName(const QString &n) | 202 | void DBStore::setName(const QString &n) |
203 | { | 203 | { |
204 | name = n; | 204 | name = n; |
205 | } | 205 | } |
206 | 206 | ||
207 | /*! | 207 | /*! |
208 | Gets the name of the database | 208 | Gets the name of the database |
209 | 209 | ||
210 | \return A string representing the name of the database. | 210 | \return A string representing the name of the database. |
211 | */ | 211 | */ |
212 | QString DBStore::getName() | 212 | QString DBStore::getName() |
213 | { | 213 | { |
214 | return name; | 214 | return name; |
215 | } | 215 | } |
216 | 216 | ||
217 | /*! | 217 | /*! |
218 | Retrieves a pointer to the key representation of the database for | 218 | Retrieves a pointer to the key representation of the database for |
219 | other classes to use as reference. | 219 | other classes to use as reference. |
220 | 220 | ||
221 | \return a pointer to the databases key representaion | 221 | \return a pointer to the databases key representaion |
222 | */ | 222 | */ |
223 | KeyList *DBStore::getKeys() | 223 | KeyList *DBStore::getKeys() |
224 | { | 224 | { |
@@ -232,21 +232,21 @@ KeyList *DBStore::getKeys() | |||
232 | void DBStore::setKeys(KeyList *k) | 232 | void DBStore::setKeys(KeyList *k) |
233 | { | 233 | { |
234 | kRep = k; | 234 | kRep = k; |
235 | } | 235 | } |
236 | 236 | ||
237 | /*! | 237 | /*! |
238 | Sets the current element to the first element of the database | 238 | Sets the current element to the first element of the database |
239 | */ | 239 | */ |
240 | void DBStore::first() | 240 | void DBStore::first() |
241 | { | 241 | { |
242 | current_elem = 0; | 242 | current_elem = 0; |
243 | } | 243 | } |
244 | 244 | ||
245 | /*! | 245 | /*! |
246 | Sets the current element to the last element of the database | 246 | Sets the current element to the last element of the database |
247 | */ | 247 | */ |
248 | void DBStore::last() | 248 | void DBStore::last() |
249 | { | 249 | { |
250 | current_elem = number_elems - 1; | 250 | current_elem = number_elems - 1; |
251 | } | 251 | } |
252 | 252 | ||
@@ -254,13 +254,13 @@ void DBStore::last() | |||
254 | Sets the current element to the next element of the database if | 254 | Sets the current element to the next element of the database if |
255 | there exists an element after the current one. | 255 | there exists an element after the current one. |
256 | */ | 256 | */ |
257 | bool DBStore::next() | 257 | bool DBStore::next() |
258 | { | 258 | { |
259 | unsigned int new_current_elem = current_elem + 1; | 259 | unsigned int new_current_elem = current_elem + 1; |
260 | if (current_elem < number_elems) | 260 | if (current_elem < number_elems) |
261 | /* was valid before inc (it is possible but unlikely that inc current | 261 | /* was valid before inc (it is possible but unlikely that inc current |
262 | elem will change it from invalid to valid) */ | 262 | elem will change it from invalid to valid) */ |
263 | if (new_current_elem < number_elems) { | 263 | if (new_current_elem < number_elems) { |
264 | /* is valid after inc */ | 264 | /* is valid after inc */ |
265 | current_elem = new_current_elem; | 265 | current_elem = new_current_elem; |
266 | return true; | 266 | return true; |
@@ -275,27 +275,27 @@ bool DBStore::next() | |||
275 | bool DBStore::previous() | 275 | bool DBStore::previous() |
276 | { | 276 | { |
277 | unsigned int new_current_elem = current_elem -1; | 277 | unsigned int new_current_elem = current_elem -1; |
278 | if (current_elem < number_elems) | 278 | if (current_elem < number_elems) |
279 | /* was valid */ | 279 | /* was valid */ |
280 | if (new_current_elem < number_elems) { | 280 | if (new_current_elem < number_elems) { |
281 | /* still is (if was 0, then now -1, but as is unsigned will wrap | 281 | /* still is (if was 0, then now -1, but as is unsigned will wrap |
282 | and hence be invalid */ | 282 | and hence be invalid */ |
283 | current_elem = new_current_elem; | 283 | current_elem = new_current_elem; |
284 | return true; | 284 | return true; |
285 | } | 285 | } |
286 | return false; | 286 | return false; |
287 | } | 287 | } |
288 | 288 | ||
289 | /*! | 289 | /*! |
290 | Returns the current data element in the database. Which element is current | 290 | Returns the current data element in the database. Which element is current |
291 | is affected by newly added items, findItem, next, previous, first and | 291 | is affected by newly added items, findItem, next, previous, first and |
292 | last functions | 292 | last functions |
293 | 293 | ||
294 | \return a pointer to the current data element | 294 | \return a pointer to the current data element |
295 | */ | 295 | */ |
296 | DataElem *DBStore::getCurrentData() | 296 | DataElem *DBStore::getCurrentData() |
297 | { | 297 | { |
298 | if (current_elem >= number_elems) | 298 | if (current_elem >= number_elems) |
299 | return NULL; | 299 | return NULL; |
300 | return master_table[current_elem]; | 300 | return master_table[current_elem]; |
301 | } | 301 | } |
diff --git a/noncore/apps/tableviewer/db/datacache.h b/noncore/apps/tableviewer/db/datacache.h index c5dc637..e38050c 100644 --- a/noncore/apps/tableviewer/db/datacache.h +++ b/noncore/apps/tableviewer/db/datacache.h | |||
@@ -24,15 +24,21 @@ | |||
24 | * otherwise any other data headings are allowed. | 24 | * otherwise any other data headings are allowed. |
25 | */ | 25 | */ |
26 | 26 | ||
27 | #ifndef __DATACACHE_H__ | 27 | #ifndef __DATACACHE_H__ |
28 | #define __DATACACHE_H__ | 28 | #define __DATACACHE_H__ |
29 | 29 | ||
30 | #include "common.h" | ||
31 | |||
32 | /* OPIE */ | ||
33 | #include <opie2/odebug.h> | ||
34 | using namespace Opie::Core; | ||
35 | |||
36 | /* QT */ | ||
30 | #include <qstring.h> | 37 | #include <qstring.h> |
31 | #include <qvector.h> | 38 | #include <qvector.h> |
32 | #include "common.h" | ||
33 | 39 | ||
34 | class DBStore; | 40 | class DBStore; |
35 | 41 | ||
36 | /*! Abstract class that defines how database stuff can be accessed */ | 42 | /*! Abstract class that defines how database stuff can be accessed */ |
37 | class DBAccess { | 43 | class DBAccess { |
38 | public: | 44 | public: |
@@ -42,18 +48,18 @@ public: | |||
42 | 48 | ||
43 | virtual QString type() { | 49 | virtual QString type() { |
44 | return QString(); | 50 | return QString(); |
45 | } | 51 | } |
46 | 52 | ||
47 | virtual bool openSource(QIODevice *) { | 53 | virtual bool openSource(QIODevice *) { |
48 | qWarning("DBAccess::openSource not yet implemented"); | 54 | owarn << "DBAccess::openSource not yet implemented" << oendl; |
49 | return false; | 55 | return false; |
50 | } | 56 | } |
51 | 57 | ||
52 | virtual bool saveSource(QIODevice *) { | 58 | virtual bool saveSource(QIODevice *) { |
53 | qWarning("DBAccess::saveSource(QString) not yet implemented"); | 59 | owarn << "DBAccess::saveSource(QString) not yet implemented" << oendl; |
54 | return false; | 60 | return false; |
55 | } | 61 | } |
56 | 62 | ||
57 | protected: | 63 | protected: |
58 | DBStore *dstore; | 64 | DBStore *dstore; |
59 | QString source_name; | 65 | QString source_name; |
@@ -67,13 +73,13 @@ public: | |||
67 | bool openSource(QIODevice *, const QString &source); | 73 | bool openSource(QIODevice *, const QString &source); |
68 | bool saveSource(QIODevice *, const QString &source); | 74 | bool saveSource(QIODevice *, const QString &source); |
69 | 75 | ||
70 | // Add an item | 76 | // Add an item |
71 | void addItem(DataElem *); | 77 | void addItem(DataElem *); |
72 | void addItemInternal(DataElem *); | 78 | void addItemInternal(DataElem *); |
73 | void removeItem(DataElem *); | 79 | void removeItem(DataElem *); |
74 | 80 | ||
75 | // Set the name of the database | 81 | // Set the name of the database |
76 | void setName(const QString &name); | 82 | void setName(const QString &name); |
77 | 83 | ||
78 | // Get the name of the database | 84 | // Get the name of the database |
79 | QString getName(); | 85 | QString getName(); |
@@ -103,28 +109,28 @@ public: | |||
103 | 109 | ||
104 | // Access functions.. iterator type stuff | 110 | // Access functions.. iterator type stuff |
105 | 111 | ||
106 | void first(); | 112 | void first(); |
107 | void last(); | 113 | void last(); |
108 | 114 | ||
109 | bool next(); | 115 | bool next(); |
110 | bool previous(); | 116 | bool previous(); |
111 | 117 | ||
112 | DataElem* getCurrentData(); | 118 | DataElem* getCurrentData(); |
113 | 119 | ||
114 | private: | 120 | private: |
115 | /* does the work of freeing used memory */ | 121 | /* does the work of freeing used memory */ |
116 | void freeTable(); | 122 | void freeTable(); |
117 | QString name; | 123 | QString name; |
118 | 124 | ||
119 | QVector<DataElem> master_table; | 125 | QVector<DataElem> master_table; |
120 | DBAccess *archive; | 126 | DBAccess *archive; |
121 | 127 | ||
122 | KeyList *kRep; | 128 | KeyList *kRep; |
123 | 129 | ||
124 | unsigned int number_elems; | 130 | unsigned int number_elems; |
125 | unsigned int table_size; /* should always be a power of 2 */ | 131 | unsigned int table_size; /* should always be a power of 2 */ |
126 | bool full; /* since because we are using an int for indexing there is | 132 | bool full; /* since because we are using an int for indexing there is |
127 | an upper limit on the number of items we can store. */ | 133 | an upper limit on the number of items we can store. */ |
128 | unsigned int current_elem; | 134 | unsigned int current_elem; |
129 | }; | 135 | }; |
130 | #endif | 136 | #endif |
diff --git a/noncore/apps/tableviewer/ui/browsekeyentry.cpp b/noncore/apps/tableviewer/ui/browsekeyentry.cpp index 42e24dd..6b78437 100644 --- a/noncore/apps/tableviewer/ui/browsekeyentry.cpp +++ b/noncore/apps/tableviewer/ui/browsekeyentry.cpp | |||
@@ -13,39 +13,39 @@ | |||
13 | ** | 13 | ** |
14 | ** See http://www.trolltech.com/gpl/ for GPL licensing information. | 14 | ** See http://www.trolltech.com/gpl/ for GPL licensing information. |
15 | ** | 15 | ** |
16 | ** Contact info@trolltech.com if any conditions of this licensing are | 16 | ** Contact info@trolltech.com if any conditions of this licensing are |
17 | ** not clear to you. | 17 | ** not clear to you. |
18 | ** | 18 | ** |
19 | **********************************************************************/ | 19 | **********************************************************************/ |
20 | #include "browsekeyentry.h" | 20 | #include "browsekeyentry.h" |
21 | #include "commonwidgets.h" | 21 | #include "commonwidgets.h" |
22 | 22 | ||
23 | #include <opie2/odebug.h> | ||
24 | using namespace Opie::Core; | ||
25 | |||
23 | #include <qtoolbutton.h> | 26 | #include <qtoolbutton.h> |
24 | #include <qwidgetstack.h> | 27 | #include <qwidgetstack.h> |
25 | #include <qlayout.h> | 28 | #include <qlayout.h> |
26 | #include <qlineedit.h> | 29 | #include <qlineedit.h> |
27 | #include <qpushbutton.h> | 30 | #include <qpushbutton.h> |
28 | #include <qpopupmenu.h> | 31 | #include <qpopupmenu.h> |
29 | #include <qhbox.h> | 32 | #include <qhbox.h> |
30 | #include <qdatetime.h> | 33 | #include <qdatetime.h> |
31 | 34 | ||
32 | #include <qheader.h> | ||
33 | // For qWarning(const char *) | ||
34 | |||
35 | /*! | 35 | /*! |
36 | \class TVBrowseKeyEntry | 36 | \class TVBrowseKeyEntry |
37 | \brief a Widget used enter keys into the TVBrowseViewWidget | 37 | \brief a Widget used enter keys into the TVBrowseViewWidget |
38 | 38 | ||
39 | The TVBrowseKeyEntry Widget provides the facility to enter | 39 | The TVBrowseKeyEntry Widget provides the facility to enter |
40 | various key types to be search on in the table. The key can be changed | 40 | various key types to be search on in the table. The key can be changed |
41 | and the entry field will update to the correct sort of widget appropriately | 41 | and the entry field will update to the correct sort of widget appropriately |
42 | */ | 42 | */ |
43 | 43 | ||
44 | /*! | 44 | /*! |
45 | Constructs the widget | 45 | Constructs the widget |
46 | */ | 46 | */ |
47 | TVBrowseKeyEntry::TVBrowseKeyEntry(QWidget *parent, const char *name, WFlags f) | 47 | TVBrowseKeyEntry::TVBrowseKeyEntry(QWidget *parent, const char *name, WFlags f) |
48 | : QWidget(parent, name, f) | 48 | : QWidget(parent, name, f) |
49 | { | 49 | { |
50 | QHBoxLayout *h_layout = new QHBoxLayout(this); | 50 | QHBoxLayout *h_layout = new QHBoxLayout(this); |
51 | 51 | ||
@@ -70,42 +70,42 @@ TVBrowseKeyEntry::TVBrowseKeyEntry(QWidget *parent, const char *name, WFlags f) | |||
70 | ws->addWidget(textKey, TVVariant::String); | 70 | ws->addWidget(textKey, TVVariant::String); |
71 | ws->addWidget(intKey, TVVariant::Int); | 71 | ws->addWidget(intKey, TVVariant::Int); |
72 | ws->addWidget(timeKey, TVVariant::Time); | 72 | ws->addWidget(timeKey, TVVariant::Time); |
73 | ws->addWidget(dateKey, TVVariant::Date); | 73 | ws->addWidget(dateKey, TVVariant::Date); |
74 | 74 | ||
75 | ws->raiseWidget(TVVariant::String); | 75 | ws->raiseWidget(TVVariant::String); |
76 | 76 | ||
77 | // TODO connect slots and signals.... | 77 | // TODO connect slots and signals.... |
78 | connect(changeKeyButton, SIGNAL(clicked()), | 78 | connect(changeKeyButton, SIGNAL(clicked()), |
79 | this, SLOT(changeKeyMenuSlot())); | 79 | this, SLOT(changeKeyMenuSlot())); |
80 | 80 | ||
81 | connect(resetButton, SIGNAL(clicked()), | 81 | connect(resetButton, SIGNAL(clicked()), |
82 | textKey, SLOT(clear())); | 82 | textKey, SLOT(clear())); |
83 | connect(resetButton, SIGNAL(clicked()), | 83 | connect(resetButton, SIGNAL(clicked()), |
84 | intKey, SLOT(clear())); | 84 | intKey, SLOT(clear())); |
85 | connect(resetButton, SIGNAL(clicked()), | 85 | connect(resetButton, SIGNAL(clicked()), |
86 | dateKey, SLOT(clear())); | 86 | dateKey, SLOT(clear())); |
87 | connect(resetButton, SIGNAL(clicked()), | 87 | connect(resetButton, SIGNAL(clicked()), |
88 | timeKey, SLOT(clear())); | 88 | timeKey, SLOT(clear())); |
89 | 89 | ||
90 | h_layout->addWidget(ws); | 90 | h_layout->addWidget(ws); |
91 | h_layout->addWidget(resetButton); | 91 | h_layout->addWidget(resetButton); |
92 | h_layout->addWidget(changeKeyButton); | 92 | h_layout->addWidget(changeKeyButton); |
93 | 93 | ||
94 | connect(textKey, SIGNAL(textChanged(const QString&)), | 94 | connect(textKey, SIGNAL(textChanged(const QString&)), |
95 | this, SLOT(searchOnText())); | 95 | this, SLOT(searchOnText())); |
96 | connect(intKey, SIGNAL(valueChanged(int)), | 96 | connect(intKey, SIGNAL(valueChanged(int)), |
97 | this, SLOT(searchOnText())); | 97 | this, SLOT(searchOnText())); |
98 | connect(dateKey, SIGNAL(valueChanged(const QDate&)), | 98 | connect(dateKey, SIGNAL(valueChanged(const QDate&)), |
99 | this, SLOT(searchOnText())); | 99 | this, SLOT(searchOnText())); |
100 | connect(timeKey, SIGNAL(valueChanged(const QTime&)), | 100 | connect(timeKey, SIGNAL(valueChanged(const QTime&)), |
101 | this, SLOT(searchOnText())); | 101 | this, SLOT(searchOnText())); |
102 | } | 102 | } |
103 | 103 | ||
104 | /*! | 104 | /*! |
105 | Destructs the widget | 105 | Destructs the widget |
106 | */ | 106 | */ |
107 | TVBrowseKeyEntry::~TVBrowseKeyEntry() | 107 | TVBrowseKeyEntry::~TVBrowseKeyEntry() |
108 | { | 108 | { |
109 | } | 109 | } |
110 | 110 | ||
111 | /*! | 111 | /*! |
@@ -123,13 +123,13 @@ void TVBrowseKeyEntry::changeKeySlot(int id_param) | |||
123 | 123 | ||
124 | /*! | 124 | /*! |
125 | Opens the change key menu | 125 | Opens the change key menu |
126 | */ | 126 | */ |
127 | void TVBrowseKeyEntry::changeKeyMenuSlot() | 127 | void TVBrowseKeyEntry::changeKeyMenuSlot() |
128 | { | 128 | { |
129 | if(ts) | 129 | if(ts) |
130 | keyMenu->exec(changeKeyButton->mapToGlobal(QPoint(0,0))); | 130 | keyMenu->exec(changeKeyButton->mapToGlobal(QPoint(0,0))); |
131 | } | 131 | } |
132 | 132 | ||
133 | 133 | ||
134 | void TVBrowseKeyEntry::setTableState(TableState *t) { | 134 | void TVBrowseKeyEntry::setTableState(TableState *t) { |
135 | ts = t; | 135 | ts = t; |
@@ -143,13 +143,13 @@ void TVBrowseKeyEntry::rebuildKeys() { | |||
143 | /* clear the old */ | 143 | /* clear the old */ |
144 | keyMenu->clear(); | 144 | keyMenu->clear(); |
145 | 145 | ||
146 | KeyListIterator it(*ts->kRep); | 146 | KeyListIterator it(*ts->kRep); |
147 | 147 | ||
148 | for (i = 0; i < ts->kRep->getNumFields(); i++) { | 148 | for (i = 0; i < ts->kRep->getNumFields(); i++) { |
149 | keyMenu->insertItem(it.current()->name(), this, | 149 | keyMenu->insertItem(it.current()->name(), this, |
150 | SLOT(changeKeySlot(int)), 0, i); | 150 | SLOT(changeKeySlot(int)), 0, i); |
151 | keyMenu->setItemParameter(i, it.currentKey()); | 151 | keyMenu->setItemParameter(i, it.currentKey()); |
152 | ++it; | 152 | ++it; |
153 | } | 153 | } |
154 | } | 154 | } |
155 | 155 | ||
@@ -160,14 +160,14 @@ void TVBrowseKeyEntry::reset() | |||
160 | dateKey->clear(); | 160 | dateKey->clear(); |
161 | timeKey->clear(); | 161 | timeKey->clear(); |
162 | 162 | ||
163 | keyMenu->clear(); | 163 | keyMenu->clear(); |
164 | } | 164 | } |
165 | /*! | 165 | /*! |
166 | Searches on the current value of the key entry provided that the | 166 | Searches on the current value of the key entry provided that the |
167 | current key is of type text WARNING, TODO fix memory leaks | 167 | current key is of type text WARNING, TODO fix memory leaks |
168 | */ | 168 | */ |
169 | void TVBrowseKeyEntry::searchOnText() | 169 | void TVBrowseKeyEntry::searchOnText() |
170 | { | 170 | { |
171 | TVVariant sendkey; | 171 | TVVariant sendkey; |
172 | 172 | ||
173 | if (!ts) | 173 | if (!ts) |
@@ -186,21 +186,20 @@ void TVBrowseKeyEntry::searchOnText() | |||
186 | break; | 186 | break; |
187 | } | 187 | } |
188 | case TVVariant::Date: { | 188 | case TVVariant::Date: { |
189 | sendkey = TVVariant(QDate(dateKey->date())); | 189 | sendkey = TVVariant(QDate(dateKey->date())); |
190 | break; | 190 | break; |
191 | } | 191 | } |
192 | case TVVariant::Invalid: | 192 | case TVVariant::Invalid: |
193 | break; | 193 | break; |
194 | default: | 194 | default: |
195 | qWarning("TVBrowseKeyEntry::searchOnText() " | 195 | owarn << "TVBrowseKeyEntry::searchOnText() cannot work out data type" << oendl; |
196 | "cannot work out data type"); | ||
197 | return; | 196 | return; |
198 | } | 197 | } |
199 | emit searchOnKey(ts->current_column, sendkey); | 198 | emit searchOnKey(ts->current_column, sendkey); |
200 | } | 199 | } |
201 | 200 | ||
202 | /*! \fn void TVBrowseKeyEntry::searchOnKey(int currentKeyId, TVVariant) | 201 | /*! \fn void TVBrowseKeyEntry::searchOnKey(int currentKeyId, TVVariant) |
203 | 202 | ||
204 | This signal indicates that a search on key index currentKeyId should be | 203 | This signal indicates that a search on key index currentKeyId should be |
205 | done searching for the value v. | 204 | done searching for the value v. |
206 | */ | 205 | */ |
diff --git a/noncore/apps/tableviewer/ui/filterkeyentry.cpp b/noncore/apps/tableviewer/ui/filterkeyentry.cpp index d108fbd..4d74d6b 100644 --- a/noncore/apps/tableviewer/ui/filterkeyentry.cpp +++ b/noncore/apps/tableviewer/ui/filterkeyentry.cpp | |||
@@ -13,16 +13,21 @@ | |||
13 | ** | 13 | ** |
14 | ** See http://www.trolltech.com/gpl/ for GPL licensing information. | 14 | ** See http://www.trolltech.com/gpl/ for GPL licensing information. |
15 | ** | 15 | ** |
16 | ** Contact info@trolltech.com if any conditions of this licensing are | 16 | ** Contact info@trolltech.com if any conditions of this licensing are |
17 | ** not clear to you. | 17 | ** not clear to you. |
18 | ** | 18 | ** |
19 | **********************************************************************/ | 19 | **********************************************************************/ |
20 | #include "filterkeyentry.h" | 20 | #include "filterkeyentry.h" |
21 | #include "commonwidgets.h" | 21 | #include "commonwidgets.h" |
22 | 22 | ||
23 | /* OPIE */ | ||
24 | #include <opie2/odebug.h> | ||
25 | using namespace Opie::Core; | ||
26 | |||
27 | /* QT */ | ||
23 | #include <qwidgetstack.h> | 28 | #include <qwidgetstack.h> |
24 | #include <qcombobox.h> | 29 | #include <qcombobox.h> |
25 | #include <qlayout.h> | 30 | #include <qlayout.h> |
26 | #include <qlineedit.h> | 31 | #include <qlineedit.h> |
27 | #include <qsizepolicy.h> | 32 | #include <qsizepolicy.h> |
28 | #include <qdatetime.h> | 33 | #include <qdatetime.h> |
@@ -95,19 +100,19 @@ TVFilterKeyEntry::TVFilterKeyEntry(QWidget *parent, const char *name, WFlags f) | |||
95 | ws->addWidget(textEntry, TVVariant::String); | 100 | ws->addWidget(textEntry, TVVariant::String); |
96 | ws->addWidget(intEntry, TVVariant::Int); | 101 | ws->addWidget(intEntry, TVVariant::Int); |
97 | ws->addWidget(timeEntry, TVVariant::Time); | 102 | ws->addWidget(timeEntry, TVVariant::Time); |
98 | ws->addWidget(dateEntry, TVVariant::Date); | 103 | ws->addWidget(dateEntry, TVVariant::Date); |
99 | 104 | ||
100 | /* connect the signals down */ | 105 | /* connect the signals down */ |
101 | connect(textKey, SIGNAL(textChanged(const QString&)), | 106 | connect(textKey, SIGNAL(textChanged(const QString&)), |
102 | this, SIGNAL(valueChanged())); | 107 | this, SIGNAL(valueChanged())); |
103 | connect(intKey, SIGNAL(valueChanged(int)), | 108 | connect(intKey, SIGNAL(valueChanged(int)), |
104 | this, SIGNAL(valueChanged())); | 109 | this, SIGNAL(valueChanged())); |
105 | connect(dateKey, SIGNAL(valueChanged(const QDate&)), | 110 | connect(dateKey, SIGNAL(valueChanged(const QDate&)), |
106 | this, SIGNAL(valueChanged())); | 111 | this, SIGNAL(valueChanged())); |
107 | connect(timeKey, SIGNAL(valueChanged(const QTime&)), | 112 | connect(timeKey, SIGNAL(valueChanged(const QTime&)), |
108 | this, SIGNAL(valueChanged())); | 113 | this, SIGNAL(valueChanged())); |
109 | 114 | ||
110 | connect(intCombo, SIGNAL(activated(int)), this, SIGNAL(valueChanged())); | 115 | connect(intCombo, SIGNAL(activated(int)), this, SIGNAL(valueChanged())); |
111 | connect(textCombo, SIGNAL(activated(int)), this, SIGNAL(valueChanged())); | 116 | connect(textCombo, SIGNAL(activated(int)), this, SIGNAL(valueChanged())); |
112 | connect(timeCombo, SIGNAL(activated(int)), this, SIGNAL(valueChanged())); | 117 | connect(timeCombo, SIGNAL(activated(int)), this, SIGNAL(valueChanged())); |
113 | connect(dateCombo, SIGNAL(activated(int)), this, SIGNAL(valueChanged())); | 118 | connect(dateCombo, SIGNAL(activated(int)), this, SIGNAL(valueChanged())); |
@@ -116,19 +121,19 @@ TVFilterKeyEntry::TVFilterKeyEntry(QWidget *parent, const char *name, WFlags f) | |||
116 | layout->addWidget(ws); | 121 | layout->addWidget(ws); |
117 | 122 | ||
118 | current_type = TVVariant::String; | 123 | current_type = TVVariant::String; |
119 | } | 124 | } |
120 | 125 | ||
121 | /*! | 126 | /*! |
122 | Destructs the widget | 127 | Destructs the widget |
123 | */ | 128 | */ |
124 | TVFilterKeyEntry::~TVFilterKeyEntry() | 129 | TVFilterKeyEntry::~TVFilterKeyEntry() |
125 | { | 130 | { |
126 | } | 131 | } |
127 | 132 | ||
128 | void TVFilterKeyEntry::setKey(int i) | 133 | void TVFilterKeyEntry::setKey(int i) |
129 | { | 134 | { |
130 | 135 | ||
131 | if (!ts) return; | 136 | if (!ts) return; |
132 | if (!ts->kRep) return; | 137 | if (!ts->kRep) return; |
133 | 138 | ||
134 | /* set up to raise appropriate widget set */ | 139 | /* set up to raise appropriate widget set */ |
@@ -180,29 +185,28 @@ CmpType TVFilterKeyEntry::getCompareType() | |||
180 | TVVariant TVFilterKeyEntry::getCompareValue() | 185 | TVVariant TVFilterKeyEntry::getCompareValue() |
181 | { | 186 | { |
182 | TVVariant sendkey; | 187 | TVVariant sendkey; |
183 | int tmp; | 188 | int tmp; |
184 | 189 | ||
185 | switch(current_type) { | 190 | switch(current_type) { |
186 | case TVVariant::String: | 191 | case TVVariant::String: |
187 | sendkey = TVVariant(QString(textKey->text())); | 192 | sendkey = TVVariant(QString(textKey->text())); |
188 | break; | 193 | break; |
189 | case TVVariant::Int: { | 194 | case TVVariant::Int: { |
190 | sendkey = TVVariant(intKey->value()); | 195 | sendkey = TVVariant(intKey->value()); |
191 | break; | 196 | break; |
192 | } | 197 | } |
193 | case TVVariant::Time: { | 198 | case TVVariant::Time: { |
194 | sendkey = TVVariant(QTime(timeKey->time())); | 199 | sendkey = TVVariant(QTime(timeKey->time())); |
195 | break; | 200 | break; |
196 | } | 201 | } |
197 | case TVVariant::Date: { | 202 | case TVVariant::Date: { |
198 | sendkey = TVVariant(QDate(dateKey->date())); | 203 | sendkey = TVVariant(QDate(dateKey->date())); |
199 | break; | 204 | break; |
200 | } | 205 | } |
201 | default: { | 206 | default: { |
202 | sendkey = TVVariant(0); | 207 | sendkey = TVVariant(0); |
203 | qWarning("TVFilterKeyEntry::getCompareValue() " | 208 | owarn << "TVFilterKeyEntry::getCompareValue() cannot work out data type" << oendl; |
204 | "cannot work out data type"); | ||
205 | } | 209 | } |
206 | } | 210 | } |
207 | return sendkey; | 211 | return sendkey; |
208 | } | 212 | } |
diff --git a/noncore/apps/tableviewer/ui/tvfilterview.cpp b/noncore/apps/tableviewer/ui/tvfilterview.cpp index 22f1fb7..198c8b5 100644 --- a/noncore/apps/tableviewer/ui/tvfilterview.cpp +++ b/noncore/apps/tableviewer/ui/tvfilterview.cpp | |||
@@ -15,27 +15,33 @@ | |||
15 | ** | 15 | ** |
16 | ** Contact info@trolltech.com if any conditions of this licensing are | 16 | ** Contact info@trolltech.com if any conditions of this licensing are |
17 | ** not clear to you. | 17 | ** not clear to you. |
18 | ** | 18 | ** |
19 | **********************************************************************/ | 19 | **********************************************************************/ |
20 | #include "tvfilterview.h" | 20 | #include "tvfilterview.h" |
21 | |||
22 | /* OPIE */ | ||
23 | #include <opie2/odebug.h> | ||
24 | #include <qpe/qpeapplication.h> | ||
25 | using namespace Opie::Core; | ||
26 | |||
27 | /* QT */ | ||
21 | #include <qtoolbutton.h> | 28 | #include <qtoolbutton.h> |
22 | #include <qcombobox.h> | 29 | #include <qcombobox.h> |
23 | #include <qlistview.h> | 30 | #include <qlistview.h> |
24 | #include <qlayout.h> | 31 | #include <qlayout.h> |
25 | #include <qheader.h> | 32 | #include <qheader.h> |
26 | #include <qpushbutton.h> | 33 | #include <qpushbutton.h> |
27 | #include <qlabel.h> | 34 | #include <qlabel.h> |
28 | 35 | ||
29 | #include <qpe/qpeapplication.h> | ||
30 | 36 | ||
31 | TVFilterView::TVFilterView(TableState *t, QWidget* parent, | 37 | TVFilterView::TVFilterView(TableState *t, QWidget* parent, |
32 | const char *name, WFlags fl ) : QDialog(parent, name, TRUE, fl) | 38 | const char *name, WFlags fl ) : QDialog(parent, name, TRUE, fl) |
33 | { | 39 | { |
34 | if ( !name ) | 40 | if ( !name ) |
35 | setName( "Filter View" ); | 41 | setName( "Filter View" ); |
36 | 42 | ||
37 | QVBoxLayout *vlayout = new QVBoxLayout(this); | 43 | QVBoxLayout *vlayout = new QVBoxLayout(this); |
38 | 44 | ||
39 | display = new QListView(this, "display"); | 45 | display = new QListView(this, "display"); |
40 | display->addColumn("Key"); | 46 | display->addColumn("Key"); |
41 | display->addColumn("Constraint"); | 47 | display->addColumn("Constraint"); |
@@ -85,27 +91,27 @@ TVFilterView::TVFilterView(TableState *t, QWidget* parent, | |||
85 | connect(deleteFilterButton, SIGNAL( clicked() ), this, SLOT( deleteTerm())); | 91 | connect(deleteFilterButton, SIGNAL( clicked() ), this, SLOT( deleteTerm())); |
86 | connect(clearFilterButton, SIGNAL( clicked() ), this, SLOT( clearTerms())); | 92 | connect(clearFilterButton, SIGNAL( clicked() ), this, SLOT( clearTerms())); |
87 | 93 | ||
88 | connect(keyEntry, SIGNAL(valueChanged()), this, SLOT( updateTerm() )); | 94 | connect(keyEntry, SIGNAL(valueChanged()), this, SLOT( updateTerm() )); |
89 | connect(keyNameCombo, SIGNAL(activated(int)), this, SLOT( updateTerm() )); | 95 | connect(keyNameCombo, SIGNAL(activated(int)), this, SLOT( updateTerm() )); |
90 | 96 | ||
91 | connect(display, SIGNAL(selectionChanged(QListViewItem*)), this, | 97 | connect(display, SIGNAL(selectionChanged(QListViewItem*)), this, |
92 | SLOT(setTerm(QListViewItem*))); | 98 | SLOT(setTerm(QListViewItem*))); |
93 | 99 | ||
94 | ts = t; | 100 | ts = t; |
95 | current = 0; | 101 | current = 0; |
96 | terms.setAutoDelete(true); | 102 | terms.setAutoDelete(true); |
97 | do_filter = false; | 103 | do_filter = false; |
98 | 104 | ||
99 | #ifdef Q_WS_QWS | 105 | #ifdef Q_WS_QWS |
100 | QPEApplication::showDialog( this ); | 106 | QPEApplication::showDialog( this ); |
101 | #endif | 107 | #endif |
102 | } | 108 | } |
103 | 109 | ||
104 | /*! | 110 | /*! |
105 | Destroys the TVFilterView widget | 111 | Destroys the TVFilterView widget |
106 | */ | 112 | */ |
107 | TVFilterView::~TVFilterView() | 113 | TVFilterView::~TVFilterView() |
108 | { | 114 | { |
109 | } | 115 | } |
110 | 116 | ||
111 | void TVFilterView::rebuildData() | 117 | void TVFilterView::rebuildData() |
@@ -115,41 +121,41 @@ void TVFilterView::rebuildData() | |||
115 | void TVFilterView::reset() | 121 | void TVFilterView::reset() |
116 | { | 122 | { |
117 | keyNameCombo->clear(); | 123 | keyNameCombo->clear(); |
118 | keyIds.clear(); | 124 | keyIds.clear(); |
119 | } | 125 | } |
120 | 126 | ||
121 | void TVFilterView::rebuildKeys() | 127 | void TVFilterView::rebuildKeys() |
122 | { | 128 | { |
123 | int i; | 129 | int i; |
124 | 130 | ||
125 | if (!ts) return; | 131 | if (!ts) return; |
126 | if(!ts->kRep) return; | 132 | if(!ts->kRep) return; |
127 | keyEntry->setTableState(ts); | 133 | keyEntry->setTableState(ts); |
128 | 134 | ||
129 | /* set up the list of keys that can be compared on */ | 135 | /* set up the list of keys that can be compared on */ |
130 | keyNameCombo->clear(); | 136 | keyNameCombo->clear(); |
131 | KeyListIterator it(*ts->kRep); | 137 | KeyListIterator it(*ts->kRep); |
132 | 138 | ||
133 | i = 0; | 139 | i = 0; |
134 | while(it.current()) { | 140 | while(it.current()) { |
135 | if(ts->kRep->validIndex(it.currentKey())) { | 141 | if(ts->kRep->validIndex(it.currentKey())) { |
136 | keyNameCombo->insertItem(it.current()->name()); | 142 | keyNameCombo->insertItem(it.current()->name()); |
137 | keyIds.insert(i, it.currentKey()); | 143 | keyIds.insert(i, it.currentKey()); |
138 | ++i; | 144 | ++i; |
139 | } | 145 | } |
140 | ++it; | 146 | ++it; |
141 | } | 147 | } |
142 | } | 148 | } |
143 | 149 | ||
144 | bool TVFilterView::passesFilter(DataElem *d) { | 150 | bool TVFilterView::passesFilter(DataElem *d) { |
145 | if (!filterActive()) return true; | 151 | if (!filterActive()) return true; |
146 | 152 | ||
147 | 153 | ||
148 | FilterTerm *t; | 154 | FilterTerm *t; |
149 | 155 | ||
150 | for (t = terms.first(); t != 0; t = terms.next() ) { | 156 | for (t = terms.first(); t != 0; t = terms.next() ) { |
151 | /* check against filter */ | 157 | /* check against filter */ |
152 | switch(t->ct) { | 158 | switch(t->ct) { |
153 | case ct_less: | 159 | case ct_less: |
154 | if (!d->lessThan(t->keyIndex, t->value)) | 160 | if (!d->lessThan(t->keyIndex, t->value)) |
155 | return false; | 161 | return false; |
@@ -172,14 +178,13 @@ bool TVFilterView::passesFilter(DataElem *d) { | |||
172 | break; | 178 | break; |
173 | case ct_endswith: | 179 | case ct_endswith: |
174 | if (!d->endsWith(t->keyIndex, t->value)) | 180 | if (!d->endsWith(t->keyIndex, t->value)) |
175 | return false; | 181 | return false; |
176 | break; | 182 | break; |
177 | default: | 183 | default: |
178 | qWarning("TVFilterView::passesFilter() " | 184 | owarn << "TVFilterView::passesFilter() unrecognized filter type" << oendl; |
179 | "unrecognized filter type"); | ||
180 | return false; | 185 | return false; |
181 | } | 186 | } |
182 | } | 187 | } |
183 | return true; | 188 | return true; |
184 | } | 189 | } |
185 | 190 | ||
@@ -191,13 +196,13 @@ bool TVFilterView::filterActive() const | |||
191 | if (terms.isEmpty()) | 196 | if (terms.isEmpty()) |
192 | return false; | 197 | return false; |
193 | return true; | 198 | return true; |
194 | } | 199 | } |
195 | 200 | ||
196 | /* SLOTS */ | 201 | /* SLOTS */ |
197 | void TVFilterView::newTerm() | 202 | void TVFilterView::newTerm() |
198 | { | 203 | { |
199 | if (!ts) return; | 204 | if (!ts) return; |
200 | 205 | ||
201 | FilterTerm *term = new FilterTerm; | 206 | FilterTerm *term = new FilterTerm; |
202 | current = term; | 207 | current = term; |
203 | 208 | ||
@@ -209,13 +214,13 @@ void TVFilterView::newTerm() | |||
209 | terms.append(term); | 214 | terms.append(term); |
210 | 215 | ||
211 | keyEntry->setEnabled(true); | 216 | keyEntry->setEnabled(true); |
212 | keyNameCombo->setEnabled(true); | 217 | keyNameCombo->setEnabled(true); |
213 | } | 218 | } |
214 | 219 | ||
215 | void TVFilterView::updateTerm() | 220 | void TVFilterView::updateTerm() |
216 | { | 221 | { |
217 | FilterTerm *term; | 222 | FilterTerm *term; |
218 | /* Read the widget values (keyname, compare type, value) | 223 | /* Read the widget values (keyname, compare type, value) |
219 | * and build the lists */ | 224 | * and build the lists */ |
220 | if (!ts) return; | 225 | if (!ts) return; |
221 | if (!current) return; | 226 | if (!current) return; |
@@ -228,13 +233,13 @@ void TVFilterView::updateTerm() | |||
228 | 233 | ||
229 | /* create new list item, set initial values, enable widgets */ | 234 | /* create new list item, set initial values, enable widgets */ |
230 | term->keyIndex = keyIds[keyNameCombo->currentItem()]; | 235 | term->keyIndex = keyIds[keyNameCombo->currentItem()]; |
231 | keyEntry->setKey(term->keyIndex); /* so the next two items make sense */ | 236 | keyEntry->setKey(term->keyIndex); /* so the next two items make sense */ |
232 | term->ct = keyEntry->getCompareType(), | 237 | term->ct = keyEntry->getCompareType(), |
233 | term->value = keyEntry->getCompareValue(); | 238 | term->value = keyEntry->getCompareValue(); |
234 | 239 | ||
235 | keyString = keyNameCombo->currentText(); | 240 | keyString = keyNameCombo->currentText(); |
236 | 241 | ||
237 | switch(term->ct) { | 242 | switch(term->ct) { |
238 | case ct_less: | 243 | case ct_less: |
239 | cmpString = " less than "; | 244 | cmpString = " less than "; |
240 | break; | 245 | break; |
@@ -257,20 +262,20 @@ void TVFilterView::updateTerm() | |||
257 | cmpString = " ERROR "; | 262 | cmpString = " ERROR "; |
258 | } | 263 | } |
259 | 264 | ||
260 | vString = term->value.toString(); | 265 | vString = term->value.toString(); |
261 | 266 | ||
262 | /* remove old view */ | 267 | /* remove old view */ |
263 | if (term->view) | 268 | if (term->view) |
264 | delete(term->view); | 269 | delete(term->view); |
265 | term->view = new QListViewItem(display, 0, keyString, cmpString, vString); | 270 | term->view = new QListViewItem(display, 0, keyString, cmpString, vString); |
266 | display->setSelected(term->view, true); | 271 | display->setSelected(term->view, true); |
267 | } | 272 | } |
268 | 273 | ||
269 | /* deletes current term */ | 274 | /* deletes current term */ |
270 | void TVFilterView::deleteTerm() | 275 | void TVFilterView::deleteTerm() |
271 | { | 276 | { |
272 | if(!current) return; | 277 | if(!current) return; |
273 | if (current->view) | 278 | if (current->view) |
274 | delete(current->view); | 279 | delete(current->view); |
275 | 280 | ||
276 | terms.removeRef(current); | 281 | terms.removeRef(current); |
@@ -281,26 +286,26 @@ void TVFilterView::deleteTerm() | |||
281 | keyEntry->setEnabled(false); | 286 | keyEntry->setEnabled(false); |
282 | keyNameCombo->setEnabled(false); | 287 | keyNameCombo->setEnabled(false); |
283 | } | 288 | } |
284 | } | 289 | } |
285 | 290 | ||
286 | /* clears all terminations */ | 291 | /* clears all terminations */ |
287 | void TVFilterView::clearTerms() | 292 | void TVFilterView::clearTerms() |
288 | { | 293 | { |
289 | while(current) | 294 | while(current) |
290 | deleteTerm(); | 295 | deleteTerm(); |
291 | } | 296 | } |
292 | 297 | ||
293 | void TVFilterView::setTerm(QListViewItem *target) | 298 | void TVFilterView::setTerm(QListViewItem *target) |
294 | { | 299 | { |
295 | /* Iterate through the list to find item with view=target.. | 300 | /* Iterate through the list to find item with view=target.. |
296 | * set as current, delete */ | 301 | * set as current, delete */ |
297 | FilterTerm *term = current; | 302 | FilterTerm *term = current; |
298 | 303 | ||
299 | for (current = terms.first(); current != 0; current = terms.next() ) | 304 | for (current = terms.first(); current != 0; current = terms.next() ) |
300 | if (current->view == target) | 305 | if (current->view == target) |
301 | break; | 306 | break; |
302 | 307 | ||
303 | if (!current) { | 308 | if (!current) { |
304 | current = term; | 309 | current = term; |
305 | } | 310 | } |
306 | } | 311 | } |
diff --git a/noncore/apps/tinykate/libkate/kateconfig.cpp b/noncore/apps/tinykate/libkate/kateconfig.cpp index 782b629..4b8ce78 100644 --- a/noncore/apps/tinykate/libkate/kateconfig.cpp +++ b/noncore/apps/tinykate/libkate/kateconfig.cpp | |||
@@ -21,12 +21,13 @@ | |||
21 | #define QTOPIA_INTERNAL_LANGLIST | 21 | #define QTOPIA_INTERNAL_LANGLIST |
22 | #include "kateconfig.h" | 22 | #include "kateconfig.h" |
23 | 23 | ||
24 | /* OPIE */ | 24 | /* OPIE */ |
25 | #include <opie2/odebug.h> | 25 | #include <opie2/odebug.h> |
26 | #include <qpe/global.h> | 26 | #include <qpe/global.h> |
27 | using namespace Opie::Core; | ||
27 | 28 | ||
28 | /* QT */ | 29 | /* QT */ |
29 | #include <qdir.h> | 30 | #include <qdir.h> |
30 | #include <qmessagebox.h> | 31 | #include <qmessagebox.h> |
31 | #if QT_VERSION <= 230 && defined(QT_NO_CODECS) | 32 | #if QT_VERSION <= 230 && defined(QT_NO_CODECS) |
32 | #include <qtextcodec.h> | 33 | #include <qtextcodec.h> |
@@ -553,14 +554,13 @@ void KateConfig::write( const QString &fn ) | |||
553 | return; | 554 | return; |
554 | } | 555 | } |
555 | 556 | ||
556 | f.close(); | 557 | f.close(); |
557 | // now rename the file... | 558 | // now rename the file... |
558 | if ( rename( strNewFile, filename ) < 0 ) { | 559 | if ( rename( strNewFile, filename ) < 0 ) { |
559 | qWarning( "problem renaming the file %s to %s", strNewFile.latin1(), | 560 | owarn << "problem renaming the file " << strNewFile.latin1() << " to " << filename.latin1() << oendl; |
560 | filename.latin1() ); | ||
561 | QFile::remove( strNewFile ); | 561 | QFile::remove( strNewFile ); |
562 | } | 562 | } |
563 | } | 563 | } |
564 | 564 | ||
565 | /*! | 565 | /*! |
566 | Returns whether the KateConfig is in a valid state. | 566 | Returns whether the KateConfig is in a valid state. |
diff --git a/noncore/apps/zsafe/main.cpp b/noncore/apps/zsafe/main.cpp index 4fe319b..5f48f77 100644 --- a/noncore/apps/zsafe/main.cpp +++ b/noncore/apps/zsafe/main.cpp | |||
@@ -5,17 +5,25 @@ | |||
5 | ** | 5 | ** |
6 | ** Homepage: http://home.t-online.de/home/CarstenSchneider/zsafe/index.html | 6 | ** Homepage: http://home.t-online.de/home/CarstenSchneider/zsafe/index.html |
7 | */ | 7 | */ |
8 | 8 | ||
9 | 9 | ||
10 | #include "zsafe.h" | 10 | #include "zsafe.h" |
11 | |||
12 | /* OPIE */ | ||
13 | #include <opie2/odebug.h> | ||
14 | using namespace Opie::Core; | ||
15 | |||
16 | /* QT */ | ||
11 | #ifdef DESKTOP | 17 | #ifdef DESKTOP |
12 | #include <qapplication.h> | 18 | #include <qapplication.h> |
13 | #else | 19 | #else |
14 | #include <qpe/qpeapplication.h> | 20 | #include <qpe/qpeapplication.h> |
15 | #endif | 21 | #endif |
22 | |||
23 | /* STD */ | ||
16 | #include <stdio.h> | 24 | #include <stdio.h> |
17 | #include <signal.h> | 25 | #include <signal.h> |
18 | 26 | ||
19 | ZSafe *zs; | 27 | ZSafe *zs; |
20 | #ifdef DESKTOP | 28 | #ifdef DESKTOP |
21 | QApplication *appl; | 29 | QApplication *appl; |
@@ -55,41 +63,38 @@ int main( int argc, char ** argv ) | |||
55 | if (argc >= 3) | 63 | if (argc >= 3) |
56 | { | 64 | { |
57 | #ifndef WIN32 | 65 | #ifndef WIN32 |
58 | DeskW = atoi(argv[1]); | 66 | DeskW = atoi(argv[1]); |
59 | DeskH = atoi(argv[2]); | 67 | DeskH = atoi(argv[2]); |
60 | #else | 68 | #else |
61 | int w, h; | 69 | int w, h; |
62 | sscanf (argv[1], "%d", &w); | 70 | sscanf (argv[1], "%d", &w); |
63 | sscanf (argv[2], "%d", &h); | 71 | sscanf (argv[2], "%d", &h); |
64 | DeskW = w; | 72 | DeskW = w; |
65 | DeskH = h; | 73 | DeskH = h; |
66 | #endif | 74 | #endif |
67 | } | 75 | } |
68 | else | 76 | else |
69 | { | 77 | { |
70 | DeskW = 600; | 78 | DeskW = 600; |
71 | DeskH = 400; | 79 | DeskH = 400; |
72 | } | 80 | } |
73 | #else | 81 | #else |
74 | DeskW = a.desktop()->width(); | 82 | DeskW = a.desktop()->width(); |
75 | DeskH = a.desktop()->height(); | 83 | DeskH = a.desktop()->height(); |
76 | 84 | ||
77 | char buf[128]; | 85 | owarn << "Width: " << DeskW << " Height: " << DeskH << oendl; |
78 | sprintf (buf, "Width: %d Height: %d\n", DeskW, DeskH); | ||
79 | qWarning (buf); | ||
80 | 86 | ||
81 | #ifdef JPATCH_HDE | 87 | #ifdef JPATCH_HDE |
82 | // nothings | 88 | // nothings |
83 | #else | 89 | #else |
84 | if (DeskW > 240) | 90 | if (DeskW > 240) |
85 | { | 91 | { |
86 | DeskW -= 20; | 92 | DeskW -= 20; |
87 | DeskH += 25; | 93 | DeskH += 25; |
88 | sprintf (buf, "Changed width: %d Height: %d\n", DeskW, DeskH); | 94 | owarn << "Changed width: " << DeskW << " Height: " << DeskH << oendl; |
89 | qWarning (buf); | ||
90 | } | 95 | } |
91 | #endif | 96 | #endif |
92 | 97 | ||
93 | #endif | 98 | #endif |
94 | 99 | ||
95 | ZSafe mw; | 100 | ZSafe mw; |
diff --git a/noncore/apps/zsafe/zlistview.cpp b/noncore/apps/zsafe/zlistview.cpp index ba02a15..7d0b8c2 100644 --- a/noncore/apps/zsafe/zlistview.cpp +++ b/noncore/apps/zsafe/zlistview.cpp | |||
@@ -1,29 +1,32 @@ | |||
1 | /* | 1 | /* |
2 | ** $Id$ | 2 | ** $Id$ |
3 | */ | 3 | */ |
4 | 4 | ||
5 | #include "zlistview.h" | 5 | #include "zlistview.h" |
6 | #include <stdio.h> | ||
7 | #include "zsafe.h" | 6 | #include "zsafe.h" |
8 | 7 | ||
8 | /* OPIE */ | ||
9 | //#include <opie2/odebug.h> | ||
10 | |||
11 | /* STD */ | ||
12 | #include <stdio.h> | ||
13 | |||
9 | ZListView::ZListView (ZSafe *zsafe, const char *id) : QListView(zsafe, id) | 14 | ZListView::ZListView (ZSafe *zsafe, const char *id) : QListView(zsafe, id) |
10 | { | 15 | { |
11 | zs = zsafe; | 16 | zs = zsafe; |
12 | } | 17 | } |
13 | 18 | ||
14 | ZListView::~ZListView() | 19 | ZListView::~ZListView() |
15 | { | 20 | { |
16 | } | 21 | } |
17 | 22 | ||
18 | void ZListView::keyPressEvent ( QKeyEvent *e ) | 23 | void ZListView::keyPressEvent ( QKeyEvent *e ) |
19 | { | 24 | { |
20 | /* | 25 | /* |
21 | char buf[64]; | 26 | owarn << "key: " << e->key() << oendl; |
22 | sprintf (buf, "key: %d\n", e->key()); | ||
23 | qWarning (buf); | ||
24 | */ | 27 | */ |
25 | 28 | ||
26 | switch (e->key()) | 29 | switch (e->key()) |
27 | { | 30 | { |
28 | case 32: // middle cursor key pressed | 31 | case 32: // middle cursor key pressed |
29 | zs->showInfo (zs->selectedItem); | 32 | zs->showInfo (zs->selectedItem); |
diff --git a/noncore/apps/zsafe/zsafe.cpp b/noncore/apps/zsafe/zsafe.cpp index 6ff05ac..ca3ff52 100644 --- a/noncore/apps/zsafe/zsafe.cpp +++ b/noncore/apps/zsafe/zsafe.cpp | |||
@@ -878,13 +878,13 @@ void ZSafe::findPwd() | |||
878 | QString comment; | 878 | QString comment; |
879 | if (result == Accepted) | 879 | if (result == Accepted) |
880 | { | 880 | { |
881 | name = dialog->NameField->text(); | 881 | name = dialog->NameField->text(); |
882 | username = dialog->UsernameField->text(); | 882 | username = dialog->UsernameField->text(); |
883 | comment = dialog->CommentField->text(); | 883 | comment = dialog->CommentField->text(); |
884 | qWarning (name); | 884 | owarn << name << oendl; |
885 | } | 885 | } |
886 | else | 886 | else |
887 | { | 887 | { |
888 | delete dialog; | 888 | delete dialog; |
889 | return; | 889 | return; |
890 | } | 890 | } |
@@ -924,13 +924,13 @@ void ZSafe::findPwd() | |||
924 | else | 924 | else |
925 | i = ListView->firstChild(); | 925 | i = ListView->firstChild(); |
926 | for (; | 926 | for (; |
927 | i != NULL; | 927 | i != NULL; |
928 | i = i->nextSibling()) | 928 | i = i->nextSibling()) |
929 | { | 929 | { |
930 | qWarning (i->text(0)); | 930 | owarn << i->text(0) << oendl; |
931 | i->setSelected(FALSE); | 931 | i->setSelected(FALSE); |
932 | 932 | ||
933 | // step through all subitems | 933 | // step through all subitems |
934 | QListViewItem *si; | 934 | QListViewItem *si; |
935 | if (lastSearchedItem) | 935 | if (lastSearchedItem) |
936 | si = lastSearchedItem; | 936 | si = lastSearchedItem; |
@@ -938,13 +938,13 @@ void ZSafe::findPwd() | |||
938 | si = i->firstChild(); | 938 | si = i->firstChild(); |
939 | // for (si = i->firstChild(); | 939 | // for (si = i->firstChild(); |
940 | for (; | 940 | for (; |
941 | si != NULL; | 941 | si != NULL; |
942 | si = si->nextSibling()) | 942 | si = si->nextSibling()) |
943 | { | 943 | { |
944 | qWarning (si->text(0)); | 944 | owarn << si->text(0) << oendl; |
945 | if (si->isSelected()) | 945 | if (si->isSelected()) |
946 | si->setSelected(FALSE); | 946 | si->setSelected(FALSE); |
947 | // ListView->repaintItem(si); | 947 | // ListView->repaintItem(si); |
948 | 948 | ||
949 | bool n=TRUE; | 949 | bool n=TRUE; |
950 | bool u=TRUE; | 950 | bool u=TRUE; |
@@ -955,13 +955,13 @@ void ZSafe::findPwd() | |||
955 | u = (si->text(1)).contains (username, FALSE); | 955 | u = (si->text(1)).contains (username, FALSE); |
956 | if (!comment.isEmpty()) | 956 | if (!comment.isEmpty()) |
957 | c = (si->text(3)).contains (comment, FALSE); | 957 | c = (si->text(3)).contains (comment, FALSE); |
958 | 958 | ||
959 | if ((n && u && c ) && !found) | 959 | if ((n && u && c ) && !found) |
960 | { | 960 | { |
961 | qWarning ("Found"); | 961 | owarn << "Found" << oendl; |
962 | selectedItem = si; | 962 | selectedItem = si; |
963 | si->setSelected(TRUE); | 963 | si->setSelected(TRUE); |
964 | ListView->setCurrentItem(si); | 964 | ListView->setCurrentItem(si); |
965 | ListView->ensureItemVisible(si); | 965 | ListView->ensureItemVisible(si); |
966 | ListView->triggerUpdate(); | 966 | ListView->triggerUpdate(); |
967 | 967 | ||
@@ -1225,14 +1225,13 @@ void ZSafe::removeAsciiFile() | |||
1225 | 1225 | ||
1226 | if (fn && fn.length() > 0 ) | 1226 | if (fn && fn.length() > 0 ) |
1227 | { | 1227 | { |
1228 | QFile f( fn ); | 1228 | QFile f( fn ); |
1229 | if ( !f.remove() ) | 1229 | if ( !f.remove() ) |
1230 | { | 1230 | { |
1231 | qWarning( QString("Could not remove file %1").arg(fn), | 1231 | owarn << "Could not remove file " << fn << oendl; |
1232 | 2000 ); | ||
1233 | QMessageBox::critical( 0, tr("ZSafe"), | 1232 | QMessageBox::critical( 0, tr("ZSafe"), |
1234 | tr("Could not remove text file.") ); | 1233 | tr("Could not remove text file.") ); |
1235 | return; | 1234 | return; |
1236 | } | 1235 | } |
1237 | } | 1236 | } |
1238 | } | 1237 | } |
@@ -1275,14 +1274,13 @@ void ZSafe::writeAllEntries() | |||
1275 | 1274 | ||
1276 | // open the new document | 1275 | // open the new document |
1277 | if (fn && fn.length() > 0 ) | 1276 | if (fn && fn.length() > 0 ) |
1278 | { | 1277 | { |
1279 | QFile f( fn ); | 1278 | QFile f( fn ); |
1280 | if ( !f.open( IO_WriteOnly ) ) { | 1279 | if ( !f.open( IO_WriteOnly ) ) { |
1281 | qWarning( QString("Could not write to file %1").arg(fn), | 1280 | owarn << "Could not write to file " << fn << oendl; |
1282 | 2000 ); | ||
1283 | QMessageBox::critical( 0, "ZSafe", | 1281 | QMessageBox::critical( 0, "ZSafe", |
1284 | QString("Could not export to text file.") ); | 1282 | QString("Could not export to text file.") ); |
1285 | return; | 1283 | return; |
1286 | } | 1284 | } |
1287 | QTextStream t( &f ); | 1285 | QTextStream t( &f ); |
1288 | 1286 | ||
@@ -1319,16 +1317,16 @@ void ZSafe::writeAllEntries() | |||
1319 | oneEntry += "\""; | 1317 | oneEntry += "\""; |
1320 | oneEntry += si->text(4); | 1318 | oneEntry += si->text(4); |
1321 | oneEntry += "\";"; | 1319 | oneEntry += "\";"; |
1322 | oneEntry += "\""; | 1320 | oneEntry += "\""; |
1323 | oneEntry += si->text(5); | 1321 | oneEntry += si->text(5); |
1324 | oneEntry += "\""; | 1322 | oneEntry += "\""; |
1325 | // qWarning (oneEntry); | 1323 | // owarn << oneEntry << oendl; |
1326 | t << oneEntry << endl; | 1324 | t << oneEntry << endl; |
1327 | 1325 | ||
1328 | // qWarning (si->text(0)); | 1326 | // owarn << si->text(0) << oendl; |
1329 | } | 1327 | } |
1330 | } | 1328 | } |
1331 | f.close(); | 1329 | f.close(); |
1332 | } | 1330 | } |
1333 | } | 1331 | } |
1334 | 1332 | ||
@@ -1370,14 +1368,13 @@ void ZSafe::readAllEntries() | |||
1370 | 1368 | ||
1371 | if (fn && fn.length() > 0 ) | 1369 | if (fn && fn.length() > 0 ) |
1372 | { | 1370 | { |
1373 | QFile f( fn ); | 1371 | QFile f( fn ); |
1374 | if ( !f.open( IO_ReadOnly ) ) | 1372 | if ( !f.open( IO_ReadOnly ) ) |
1375 | { | 1373 | { |
1376 | qWarning( QString("Could not read file %1").arg(fn), | 1374 | owarn << "Could not read file " << fn << oendl; |
1377 | 2000 ); | ||
1378 | QMessageBox::critical( 0, "ZSafe", | 1375 | QMessageBox::critical( 0, "ZSafe", |
1379 | QString("Could not import text file.") ); | 1376 | QString("Could not import text file.") ); |
1380 | return; | 1377 | return; |
1381 | } | 1378 | } |
1382 | 1379 | ||
1383 | modified = true; | 1380 | modified = true; |
@@ -1400,13 +1397,13 @@ void ZSafe::readAllEntries() | |||
1400 | si = si->nextSibling(); | 1397 | si = si->nextSibling(); |
1401 | i->takeItem(_si); // remove from view list | 1398 | i->takeItem(_si); // remove from view list |
1402 | if (_si) delete _si; | 1399 | if (_si) delete _si; |
1403 | } | 1400 | } |
1404 | } | 1401 | } |
1405 | 1402 | ||
1406 | qWarning ("ReadAllEntries(): "); | 1403 | owarn << "ReadAllEntries(): " << oendl; |
1407 | 1404 | ||
1408 | QTextStream t(&f); | 1405 | QTextStream t(&f); |
1409 | while ( !t.eof() ) | 1406 | while ( !t.eof() ) |
1410 | { | 1407 | { |
1411 | QString s = t.readLine(); | 1408 | QString s = t.readLine(); |
1412 | s.replace (QRegExp("\";\""), "\"|\""); | 1409 | s.replace (QRegExp("\";\""), "\"|\""); |
@@ -1551,14 +1548,13 @@ void ZSafe::readAllEntries() | |||
1551 | void ZSafe::writeAllEntries() | 1548 | void ZSafe::writeAllEntries() |
1552 | { | 1549 | { |
1553 | // open the file for writing | 1550 | // open the file for writing |
1554 | QString fn = filename + ".txt"; | 1551 | QString fn = filename + ".txt"; |
1555 | QFile f( fn ); | 1552 | QFile f( fn ); |
1556 | if ( !f.open( IO_WriteOnly ) ) { | 1553 | if ( !f.open( IO_WriteOnly ) ) { |
1557 | qWarning( QString("Could not write to file %1").arg(fn), | 1554 | owarn << "Could not write to file " << fn << oendl; |
1558 | 2000 ); | ||
1559 | QMessageBox::critical( 0, tr("ZSafe"), | 1555 | QMessageBox::critical( 0, tr("ZSafe"), |
1560 | tr("Could not export to text file.") ); | 1556 | tr("Could not export to text file.") ); |
1561 | return; | 1557 | return; |
1562 | } | 1558 | } |
1563 | QTextStream t( &f ); | 1559 | QTextStream t( &f ); |
1564 | 1560 | ||
@@ -1590,29 +1586,28 @@ void ZSafe::writeAllEntries() | |||
1590 | oneEntry += "\""; | 1586 | oneEntry += "\""; |
1591 | // oneEntry += si->text(3); | 1587 | // oneEntry += si->text(3); |
1592 | QString comment = si->text(3); | 1588 | QString comment = si->text(3); |
1593 | comment.replace (QRegExp("\n"), "<br>"); | 1589 | comment.replace (QRegExp("\n"), "<br>"); |
1594 | oneEntry += comment; | 1590 | oneEntry += comment; |
1595 | oneEntry += "\""; | 1591 | oneEntry += "\""; |
1596 | // qWarning (oneEntry); | 1592 | // owarn << oneEntry << oendl; |
1597 | t << oneEntry << endl; | 1593 | t << oneEntry << endl; |
1598 | 1594 | ||
1599 | // qWarning (si->text(0)); | 1595 | // owarn << si->text(0) << oendl; |
1600 | } | 1596 | } |
1601 | } | 1597 | } |
1602 | f.close(); | 1598 | f.close(); |
1603 | } | 1599 | } |
1604 | 1600 | ||
1605 | void ZSafe::readAllEntries() | 1601 | void ZSafe::readAllEntries() |
1606 | { | 1602 | { |
1607 | QString fn = filename + ".txt"; | 1603 | QString fn = filename + ".txt"; |
1608 | QFile f( fn ); | 1604 | QFile f( fn ); |
1609 | if ( !f.open( IO_ReadOnly ) ) | 1605 | if ( !f.open( IO_ReadOnly ) ) |
1610 | { | 1606 | { |
1611 | qWarning( QString("Could not read file %1").arg(fn), | 1607 | owarn << "Could not read file " << fn << oendl; |
1612 | 2000 ); | ||
1613 | QMessageBox::critical( 0, tr("ZSafe"), | 1608 | QMessageBox::critical( 0, tr("ZSafe"), |
1614 | tr("Could not import text file.") ); | 1609 | tr("Could not import text file.") ); |
1615 | return; | 1610 | return; |
1616 | } | 1611 | } |
1617 | 1612 | ||
1618 | modified = true; | 1613 | modified = true; |
@@ -1635,13 +1630,13 @@ void ZSafe::readAllEntries() | |||
1635 | si = si->nextSibling(); | 1630 | si = si->nextSibling(); |
1636 | i->takeItem(_si); // remove from view list | 1631 | i->takeItem(_si); // remove from view list |
1637 | if (_si) delete _si; | 1632 | if (_si) delete _si; |
1638 | } | 1633 | } |
1639 | } | 1634 | } |
1640 | 1635 | ||
1641 | qWarning ("ReadAllEntries(): "); | 1636 | owarn << "ReadAllEntries(): " << oendl; |
1642 | 1637 | ||
1643 | QTextStream t(&f); | 1638 | QTextStream t(&f); |
1644 | while ( !t.eof() ) | 1639 | while ( !t.eof() ) |
1645 | { | 1640 | { |
1646 | QString s = t.readLine(); | 1641 | QString s = t.readLine(); |
1647 | s.replace (QRegExp("\";\""), "\"|\""); | 1642 | s.replace (QRegExp("\";\""), "\"|\""); |
@@ -1759,13 +1754,13 @@ void ZSafe::readAllEntries() | |||
1759 | 1754 | ||
1760 | } | 1755 | } |
1761 | #endif // UNUSED | 1756 | #endif // UNUSED |
1762 | 1757 | ||
1763 | void ZSafe::resume(int) | 1758 | void ZSafe::resume(int) |
1764 | { | 1759 | { |
1765 | qWarning ("Resume"); | 1760 | owarn << "Resume" << oendl; |
1766 | // hide the main window | 1761 | // hide the main window |
1767 | 1762 | ||
1768 | infoForm->hide(); | 1763 | infoForm->hide(); |
1769 | // open zsafe again | 1764 | // open zsafe again |
1770 | m_password = ""; | 1765 | m_password = ""; |
1771 | selectedItem = NULL; | 1766 | selectedItem = NULL; |
@@ -1815,22 +1810,22 @@ bool ZSafe::openDocument(const char* _filename, const char* ) | |||
1815 | { | 1810 | { |
1816 | // ask with a dialog for the password | 1811 | // ask with a dialog for the password |
1817 | if (m_password.isEmpty()) | 1812 | if (m_password.isEmpty()) |
1818 | getDocPassword(tr("Enter Password")); | 1813 | getDocPassword(tr("Enter Password")); |
1819 | if (m_password.isEmpty() && validationFlag == 0) | 1814 | if (m_password.isEmpty() && validationFlag == 0) |
1820 | { | 1815 | { |
1821 | qWarning ("Wrong password"); | 1816 | owarn << "Wrong password" << oendl; |
1822 | QMessageBox::critical( 0, tr("ZSafe"), | 1817 | QMessageBox::critical( 0, tr("ZSafe"), |
1823 | tr("Wrong password.\n\nZSafe will now exit.") ); | 1818 | tr("Wrong password.\n\nZSafe will now exit.") ); |
1824 | exitZs (1); | 1819 | exitZs (1); |
1825 | } | 1820 | } |
1826 | 1821 | ||
1827 | retval = loadInit(_filename, m_password); | 1822 | retval = loadInit(_filename, m_password); |
1828 | if (retval != PWERR_GOOD) | 1823 | if (retval != PWERR_GOOD) |
1829 | { | 1824 | { |
1830 | qWarning ("Error loading Document"); | 1825 | owarn << "Error loading Document" << oendl; |
1831 | return false; | 1826 | return false; |
1832 | } | 1827 | } |
1833 | } | 1828 | } |
1834 | else | 1829 | else |
1835 | { | 1830 | { |
1836 | #ifdef WIN32 | 1831 | #ifdef WIN32 |
@@ -2298,13 +2293,13 @@ void ZSafe::setPasswordDialogDone() | |||
2298 | newPwdDialogResult = true; | 2293 | newPwdDialogResult = true; |
2299 | newPwdDialog->close(); | 2294 | newPwdDialog->close(); |
2300 | } | 2295 | } |
2301 | 2296 | ||
2302 | void ZSafe::getDocPassword(QString title) | 2297 | void ZSafe::getDocPassword(QString title) |
2303 | { | 2298 | { |
2304 | qWarning ("getDocPassword"); | 2299 | owarn << "getDocPassword" << oendl; |
2305 | // open the 'Password' dialog | 2300 | // open the 'Password' dialog |
2306 | PasswordForm *dialog = new PasswordForm(this, title, TRUE); | 2301 | PasswordForm *dialog = new PasswordForm(this, title, TRUE); |
2307 | newPwdDialog = dialog; | 2302 | newPwdDialog = dialog; |
2308 | newPwdDialogResult = false; | 2303 | newPwdDialogResult = false; |
2309 | 2304 | ||
2310 | connect( dialog->PasswordField, SIGNAL( returnPressed() ), | 2305 | connect( dialog->PasswordField, SIGNAL( returnPressed() ), |
@@ -2477,13 +2472,13 @@ int ZSafe::saveFinalize(void) | |||
2477 | free(buffer); | 2472 | free(buffer); |
2478 | return retval; | 2473 | return retval; |
2479 | } | 2474 | } |
2480 | 2475 | ||
2481 | void ZSafe::quitMe () | 2476 | void ZSafe::quitMe () |
2482 | { | 2477 | { |
2483 | qWarning ("QUIT..."); | 2478 | owarn << "QUIT..." << oendl; |
2484 | 2479 | ||
2485 | if (modified) | 2480 | if (modified) |
2486 | { | 2481 | { |
2487 | switch( QMessageBox::information( this, tr("ZSafe"), | 2482 | switch( QMessageBox::information( this, tr("ZSafe"), |
2488 | tr("Do you want to save\nbefore exiting?"), | 2483 | tr("Do you want to save\nbefore exiting?"), |
2489 | tr("&Save"), | 2484 | tr("&Save"), |
@@ -2681,13 +2676,13 @@ void ZSafe::addCategory() | |||
2681 | if (result == Accepted) | 2676 | if (result == Accepted) |
2682 | { | 2677 | { |
2683 | modified = true; | 2678 | modified = true; |
2684 | category = dialog->CategoryField->currentText(); | 2679 | category = dialog->CategoryField->currentText(); |
2685 | icon = dialog->IconField->currentText()+".png"; | 2680 | icon = dialog->IconField->currentText()+".png"; |
2686 | 2681 | ||
2687 | qWarning (category); | 2682 | owarn << category << oendl; |
2688 | 2683 | ||
2689 | QListViewItem *li = new ShadedListItem( 1, ListView ); | 2684 | QListViewItem *li = new ShadedListItem( 1, ListView ); |
2690 | Category *c1 = new Category(); | 2685 | Category *c1 = new Category(); |
2691 | c1->setCategoryName(category); | 2686 | c1->setCategoryName(category); |
2692 | 2687 | ||
2693 | // if (!icon.isEmpty() && !icon.isNull()) | 2688 | // if (!icon.isEmpty() && !icon.isNull()) |
@@ -3189,13 +3184,13 @@ void ZSafe::editCategory() | |||
3189 | } | 3184 | } |
3190 | 3185 | ||
3191 | // change the category name of the selected category | 3186 | // change the category name of the selected category |
3192 | QListViewItem *catItem = cat->getListItem(); | 3187 | QListViewItem *catItem = cat->getListItem(); |
3193 | if (catItem) | 3188 | if (catItem) |
3194 | { | 3189 | { |
3195 | qWarning (category); | 3190 | owarn << category << oendl; |
3196 | catItem->setText( 0, tr( category ) ); | 3191 | catItem->setText( 0, tr( category ) ); |
3197 | cat->setCategoryName (tr(category)); | 3192 | cat->setCategoryName (tr(category)); |
3198 | 3193 | ||
3199 | cat->initListItem(); | 3194 | cat->initListItem(); |
3200 | categories.insert (category, cat); | 3195 | categories.insert (category, cat); |
3201 | } | 3196 | } |
@@ -3590,13 +3585,13 @@ void ZSafe::paintEvent( QPaintEvent * ) | |||
3590 | infoForm->raise(); | 3585 | infoForm->raise(); |
3591 | } | 3586 | } |
3592 | } | 3587 | } |
3593 | 3588 | ||
3594 | void ZSafe::resizeEvent ( QResizeEvent * ) | 3589 | void ZSafe::resizeEvent ( QResizeEvent * ) |
3595 | { | 3590 | { |
3596 | // qWarning ("resizeEvent"); | 3591 | // owarn << "resizeEvent" << oendl; |
3597 | #ifndef DESKTOP | 3592 | #ifndef DESKTOP |
3598 | DeskW = appl->desktop()->width(); | 3593 | DeskW = appl->desktop()->width(); |
3599 | DeskH = appl->desktop()->height(); | 3594 | DeskH = appl->desktop()->height(); |
3600 | #else | 3595 | #else |
3601 | DeskW = this->width(); | 3596 | DeskW = this->width(); |
3602 | DeskH = this->height(); | 3597 | DeskH = this->height(); |