From 4ed8d784e29102ed1659f4ccf71fcc6fb0dad5c8 Mon Sep 17 00:00:00 2001 From: Timothy Pearson Date: Fri, 1 Feb 2013 17:32:44 -0600 Subject: Fix prior commit --- .../advanced/kcm_sambaconf/qmultichecklistitem.cpp | 159 +++++++++++++++++++++ .../advanced/kcm_sambaconf/qmultichecklistitem.h | 65 +++++++++ .../kcm_sambaconf/qmultichectdelistitem.cpp | 159 --------------------- .../advanced/kcm_sambaconf/qmultichectdelistitem.h | 65 --------- 4 files changed, 224 insertions(+), 224 deletions(-) create mode 100644 filesharing/advanced/kcm_sambaconf/qmultichecklistitem.cpp create mode 100644 filesharing/advanced/kcm_sambaconf/qmultichecklistitem.h delete mode 100644 filesharing/advanced/kcm_sambaconf/qmultichectdelistitem.cpp delete mode 100644 filesharing/advanced/kcm_sambaconf/qmultichectdelistitem.h diff --git a/filesharing/advanced/kcm_sambaconf/qmultichecklistitem.cpp b/filesharing/advanced/kcm_sambaconf/qmultichecklistitem.cpp new file mode 100644 index 00000000..187289b6 --- /dev/null +++ b/filesharing/advanced/kcm_sambaconf/qmultichecklistitem.cpp @@ -0,0 +1,159 @@ +/*************************************************************************** + qmultichecklistitem.cpp - description + ------------------- + begin : Sun Jan 26 2003 + copyright : (C) 2003 by Jan Sch�fer + email : janschaefer@users.sourceforge.net + ***************************************************************************/ + +/****************************************************************************** + * * + * This file is part of KSambaPlugin. * + * * + * KSambaPlugin is free software; you can redistribute it and/or modify * + * it under the terms of the GNU General Public License as published by * + * the Free Software Foundation; either version 2 of the License, or * + * (at your option) any later version. * + * * + * KSambaPlugin is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * + * GNU General Public License for more details. * + * * + * You should have received a copy of the GNU General Public License * + * along with KSambaPlugin; if not, write to the Free Software * + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA * + * * + ******************************************************************************/ + +#include +#include +#include +#include + +#include +#include + +#include "qmultichecklistitem.moc" +#include "qmultichecklistitem.h" + +static const int BoxSize = 16; + + +QMultiCheckListItem::QMultiCheckListItem( TQListView *parent=0) : + TQListViewItem(parent) { +} + +void QMultiCheckListItem::setOn(int column, bool b) { + if (column >= (int) checkBoxColumns.size()) { + checkBoxColumns.resize(column*2); + checkStates.resize(column*2); + } + + checkStates.setBit(column,b); + checkBoxColumns.setBit(column); + kdDebug(5009) << "setOn : " << column << endl; + repaint(); +} + +bool QMultiCheckListItem::isOn(int column) { + return checkStates.testBit(column); +} + +bool QMultiCheckListItem::isDisabled(int column) { + return disableStates.testBit(column); +} + +void QMultiCheckListItem::toggle(int column) { + if (column >= (int) checkBoxColumns.size()) { + checkBoxColumns.resize(column*2); + checkStates.resize(column*2); + } + + checkBoxColumns.setBit(column); + checkStates.toggleBit(column); + emit stateChanged(column,checkStates.testBit(column)); + + repaint(); +} + +void QMultiCheckListItem::setDisabled(int column, bool b) { + if (column >= (int) disableStates.size()) { + disableStates.resize(column*2); + } + + disableStates.setBit(column,b); +// KMessageBox::information(0L,TQString("setDisabled"),TQString("disable %1 ").arg(column)); + repaint(); +} + +void QMultiCheckListItem::paintCell(TQPainter *p,const TQColorGroup & cg, int col, int width, int align) +{ + + if ( !p ) + return; + + TQListView *lv = listView(); + if ( !lv ) + return; + + TQListViewItem::paintCell(p,cg,col,width,align ); + + int marg = lv->itemMargin(); +// int width = BoxSize + marg*2; + // use a provate color group and set the text/highlighted text colors + TQColorGroup mcg = cg; + + if (checkBoxColumns.testBit(col)) { + // Bold/Italic/use default checkboxes + // code allmost identical to TQCheckListItem + Q_ASSERT( lv ); //### + // I use the text color of defaultStyles[0], normalcol in parent listview +// mcg.setColor( TQColorGroup::Text, ((StyleListView*)lv)->normalcol ); + int x = 0; + if ( align == AlignCenter ) { + TQFontMetrics fm( lv->font() ); + x = (width - BoxSize - fm.width(text(0)))/2; + } + int y = (height() - BoxSize) / 2; + + if ( !isEnabled() || disableStates.testBit(col)) + p->setPen( TQPen( lv->palette().color( TQPalette::Disabled, TQColorGroup::Text ), 2 ) ); + else + p->setPen( TQPen( mcg.text(), 2 ) ); + + if ( isSelected() && lv->header()->mapToSection( 0 ) != 0 ) { + p->fillRect( 0, 0, x + marg + BoxSize + 4, height(), + mcg.brush( TQColorGroup::Highlight ) ); + if ( isEnabled() ) + p->setPen( TQPen( mcg.highlightedText(), 2 ) ); // FIXME! - use defaultstyles[0].selecol. luckily not used :) + } + p->drawRect( x+marg, y+2, BoxSize-4, BoxSize-4 ); + x++; + y++; + if ( checkStates.testBit(col) ) { + TQPointArray a( 7*2 ); + int i, xx, yy; + xx = x+1+marg; + yy = y+5; + for ( i=0; i<3; i++ ) { + a.setPoint( 2*i, xx, yy ); + a.setPoint( 2*i+1, xx, yy+2 ); + xx++; yy++; + } + yy -= 2; + for ( i=3; i<7; i++ ) { + a.setPoint( 2*i, xx, yy ); + a.setPoint( 2*i+1, xx, yy+2 ); + xx++; yy--; + } + p->drawLineSegments( a ); + } + + } + + +} + + + diff --git a/filesharing/advanced/kcm_sambaconf/qmultichecklistitem.h b/filesharing/advanced/kcm_sambaconf/qmultichecklistitem.h new file mode 100644 index 00000000..b378e228 --- /dev/null +++ b/filesharing/advanced/kcm_sambaconf/qmultichecklistitem.h @@ -0,0 +1,65 @@ +/*************************************************************************** + qextendedchecklistitem.h - description + ------------------- + begin : Sun Jan 26 2003 + copyright : (C) 2003 by Jan Sch�fer + email : janschaefer@users.sourceforge.net + ***************************************************************************/ + +/****************************************************************************** + * * + * This file is part of KSambaPlugin. * + * * + * KSambaPlugin is free software; you can redistribute it and/or modify * + * it under the terms of the GNU General Public License as published by * + * the Free Software Foundation; either version 2 of the License, or * + * (at your option) any later version. * + * * + * KSambaPlugin is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * + * GNU General Public License for more details. * + * * + * You should have received a copy of the GNU General Public License * + * along with KSambaPlugin; if not, write to the Free Software * + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA * + * * + ******************************************************************************/ + +#ifndef _TQMULTICHECKLISTITEM_H_ +#define _TQMULTICHECKLISTITEM_H_ + +#include + +#include + +class QMultiCheckListItem : public TQObject, public TQListViewItem { +Q_OBJECT + + + public: + QMultiCheckListItem( TQListView *parent); + ~QMultiCheckListItem() {}; + + virtual bool isOn(int column); + virtual bool isDisabled(int column); + + + protected: + /* reimp */ + virtual void paintCell(TQPainter *, const TQColorGroup &, int, int, int); + + public slots: + virtual void setOn(int, bool); + virtual void toggle(int); + virtual void setDisabled(int, bool); + + signals: + void stateChanged(int, bool); + private: + TQBitArray checkStates; + TQBitArray checkBoxColumns; + TQBitArray disableStates; +}; + +#endif diff --git a/filesharing/advanced/kcm_sambaconf/qmultichectdelistitem.cpp b/filesharing/advanced/kcm_sambaconf/qmultichectdelistitem.cpp deleted file mode 100644 index 187289b6..00000000 --- a/filesharing/advanced/kcm_sambaconf/qmultichectdelistitem.cpp +++ /dev/null @@ -1,159 +0,0 @@ -/*************************************************************************** - qmultichecklistitem.cpp - description - ------------------- - begin : Sun Jan 26 2003 - copyright : (C) 2003 by Jan Sch�fer - email : janschaefer@users.sourceforge.net - ***************************************************************************/ - -/****************************************************************************** - * * - * This file is part of KSambaPlugin. * - * * - * KSambaPlugin is free software; you can redistribute it and/or modify * - * it under the terms of the GNU General Public License as published by * - * the Free Software Foundation; either version 2 of the License, or * - * (at your option) any later version. * - * * - * KSambaPlugin is distributed in the hope that it will be useful, * - * but WITHOUT ANY WARRANTY; without even the implied warranty of * - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * - * GNU General Public License for more details. * - * * - * You should have received a copy of the GNU General Public License * - * along with KSambaPlugin; if not, write to the Free Software * - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA * - * * - ******************************************************************************/ - -#include -#include -#include -#include - -#include -#include - -#include "qmultichecklistitem.moc" -#include "qmultichecklistitem.h" - -static const int BoxSize = 16; - - -QMultiCheckListItem::QMultiCheckListItem( TQListView *parent=0) : - TQListViewItem(parent) { -} - -void QMultiCheckListItem::setOn(int column, bool b) { - if (column >= (int) checkBoxColumns.size()) { - checkBoxColumns.resize(column*2); - checkStates.resize(column*2); - } - - checkStates.setBit(column,b); - checkBoxColumns.setBit(column); - kdDebug(5009) << "setOn : " << column << endl; - repaint(); -} - -bool QMultiCheckListItem::isOn(int column) { - return checkStates.testBit(column); -} - -bool QMultiCheckListItem::isDisabled(int column) { - return disableStates.testBit(column); -} - -void QMultiCheckListItem::toggle(int column) { - if (column >= (int) checkBoxColumns.size()) { - checkBoxColumns.resize(column*2); - checkStates.resize(column*2); - } - - checkBoxColumns.setBit(column); - checkStates.toggleBit(column); - emit stateChanged(column,checkStates.testBit(column)); - - repaint(); -} - -void QMultiCheckListItem::setDisabled(int column, bool b) { - if (column >= (int) disableStates.size()) { - disableStates.resize(column*2); - } - - disableStates.setBit(column,b); -// KMessageBox::information(0L,TQString("setDisabled"),TQString("disable %1 ").arg(column)); - repaint(); -} - -void QMultiCheckListItem::paintCell(TQPainter *p,const TQColorGroup & cg, int col, int width, int align) -{ - - if ( !p ) - return; - - TQListView *lv = listView(); - if ( !lv ) - return; - - TQListViewItem::paintCell(p,cg,col,width,align ); - - int marg = lv->itemMargin(); -// int width = BoxSize + marg*2; - // use a provate color group and set the text/highlighted text colors - TQColorGroup mcg = cg; - - if (checkBoxColumns.testBit(col)) { - // Bold/Italic/use default checkboxes - // code allmost identical to TQCheckListItem - Q_ASSERT( lv ); //### - // I use the text color of defaultStyles[0], normalcol in parent listview -// mcg.setColor( TQColorGroup::Text, ((StyleListView*)lv)->normalcol ); - int x = 0; - if ( align == AlignCenter ) { - TQFontMetrics fm( lv->font() ); - x = (width - BoxSize - fm.width(text(0)))/2; - } - int y = (height() - BoxSize) / 2; - - if ( !isEnabled() || disableStates.testBit(col)) - p->setPen( TQPen( lv->palette().color( TQPalette::Disabled, TQColorGroup::Text ), 2 ) ); - else - p->setPen( TQPen( mcg.text(), 2 ) ); - - if ( isSelected() && lv->header()->mapToSection( 0 ) != 0 ) { - p->fillRect( 0, 0, x + marg + BoxSize + 4, height(), - mcg.brush( TQColorGroup::Highlight ) ); - if ( isEnabled() ) - p->setPen( TQPen( mcg.highlightedText(), 2 ) ); // FIXME! - use defaultstyles[0].selecol. luckily not used :) - } - p->drawRect( x+marg, y+2, BoxSize-4, BoxSize-4 ); - x++; - y++; - if ( checkStates.testBit(col) ) { - TQPointArray a( 7*2 ); - int i, xx, yy; - xx = x+1+marg; - yy = y+5; - for ( i=0; i<3; i++ ) { - a.setPoint( 2*i, xx, yy ); - a.setPoint( 2*i+1, xx, yy+2 ); - xx++; yy++; - } - yy -= 2; - for ( i=3; i<7; i++ ) { - a.setPoint( 2*i, xx, yy ); - a.setPoint( 2*i+1, xx, yy+2 ); - xx++; yy--; - } - p->drawLineSegments( a ); - } - - } - - -} - - - diff --git a/filesharing/advanced/kcm_sambaconf/qmultichectdelistitem.h b/filesharing/advanced/kcm_sambaconf/qmultichectdelistitem.h deleted file mode 100644 index b378e228..00000000 --- a/filesharing/advanced/kcm_sambaconf/qmultichectdelistitem.h +++ /dev/null @@ -1,65 +0,0 @@ -/*************************************************************************** - qextendedchecklistitem.h - description - ------------------- - begin : Sun Jan 26 2003 - copyright : (C) 2003 by Jan Sch�fer - email : janschaefer@users.sourceforge.net - ***************************************************************************/ - -/****************************************************************************** - * * - * This file is part of KSambaPlugin. * - * * - * KSambaPlugin is free software; you can redistribute it and/or modify * - * it under the terms of the GNU General Public License as published by * - * the Free Software Foundation; either version 2 of the License, or * - * (at your option) any later version. * - * * - * KSambaPlugin is distributed in the hope that it will be useful, * - * but WITHOUT ANY WARRANTY; without even the implied warranty of * - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * - * GNU General Public License for more details. * - * * - * You should have received a copy of the GNU General Public License * - * along with KSambaPlugin; if not, write to the Free Software * - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA * - * * - ******************************************************************************/ - -#ifndef _TQMULTICHECKLISTITEM_H_ -#define _TQMULTICHECKLISTITEM_H_ - -#include - -#include - -class QMultiCheckListItem : public TQObject, public TQListViewItem { -Q_OBJECT - - - public: - QMultiCheckListItem( TQListView *parent); - ~QMultiCheckListItem() {}; - - virtual bool isOn(int column); - virtual bool isDisabled(int column); - - - protected: - /* reimp */ - virtual void paintCell(TQPainter *, const TQColorGroup &, int, int, int); - - public slots: - virtual void setOn(int, bool); - virtual void toggle(int); - virtual void setDisabled(int, bool); - - signals: - void stateChanged(int, bool); - private: - TQBitArray checkStates; - TQBitArray checkBoxColumns; - TQBitArray disableStates; -}; - -#endif -- cgit v1.2.1