kita_LDADD = kita.la
# which sources should be compiled for kita
-kita_la_SOURCES = main.cpp kita.cpp kitaiface.skel kitasubjectview.cpp kitaboardview.cpp threadlistview.cpp favoritelistview.cpp kitaboardtabwidget.cpp kitawritetabwidget.cpp kitaimgtabwidget.cpp kitathreadtabwidget.cpp kitasubjecttabwidget.cpp kitatabwidgetbase.cpp threadlistviewbase.ui kitaboardviewbase.ui threadproperty.ui favoriteswindowbase.ui
+kita_la_SOURCES = main.cpp kita.cpp kitaiface.skel kitasubjectview.cpp kitaboardview.cpp threadlistview.cpp favoritelistview.cpp kitaboardtabwidget.cpp kitawritetabwidget.cpp kitaimgtabwidget.cpp kitathreadtabwidget.cpp kitasubjecttabwidget.cpp kitatabwidgetbase.cpp threadlistviewbase.ui kitaboardviewbase.ui threadproperty.ui favoriteswindowbase.ui listviewitem.cpp
kita_SOURCES = dummy.cpp
# these are the headers for your project
-noinst_HEADERS = kita.h kitasubjectview.h kitaboardview.h threadlistview.h favoritelistview.h kitaboardtabwidget.h kitawritetabwidget.h kitaimgtabwidget.h kitathreadtabwidget.h kitasubjecttabwidget.h kitatabwidgetbase.h
+noinst_HEADERS = kita.h kitasubjectview.h kitaboardview.h threadlistview.h favoritelistview.h kitaboardtabwidget.h kitawritetabwidget.h kitaimgtabwidget.h kitathreadtabwidget.h kitasubjecttabwidget.h kitatabwidgetbase.h listviewitem.h
# client stuff
kita_client_LDFLAGS = $(KDE_RPATH) $(all_libraries)
/***************************************************************************
-* Copyright (C) 2003 by Hideki Ikemoto *
+* Copyright (C) 2004 by Kita Developers *
* ikemo@users.sourceforge.jp *
* *
* This program is free software; you can redistribute it and/or modify *
#include "kitaboardview.h"
#include "kita.h"
+#include "listviewitem.h"
#include "libkita/qcp932codec.h"
#include "libkita/favoriteboards.h"
-#include "libkita/board.h"
#include "libkita/category.h"
#include "libkita/kitaconfig.h"
#include "libkita/signalcollection.h"
m_boardList->addColumn( i18n( "board name" ) );
m_boardList->header() ->setClickEnabled( FALSE );
+ /* default colors */
+ QColorGroup colors = m_boardList->viewport()->colorGroup();
+ m_textColor = colors.text();
+ m_baseColor = colors.base();
+ m_backColor = m_boardList->viewport()->paletteBackgroundColor();
+ m_altColor = m_boardList->alternateBackground();
+
Kita::SignalCollection* signalCollection = Kita::SignalCollection::getInstance();
connect( m_boardList, SIGNAL( mouseButtonClicked( int, QListViewItem*, const QPoint&, int ) ),
SLOT( slotMouseButtonClicked( int, QListViewItem* ) ) );
if ( regexp.search( line ) != -1 ) {
QString board_url = regexp.cap( 1 );
QString board_title = regexp.cap( 2 );
- Kita::Board::setName( board_url, board_title );
return board_url;
} else {
return QString::null;
for ( it2 = board_url_list.begin(); it2 != board_url_list.end(); ++it2 ) {
QString key = QString( "item%1").arg( count );
QString boardURL = *it2;
- QString boardName = Kita::Board::getName( *it2 );
+ QString boardName = Kita::BoardManager::boardName( *it2 );
QStringList tmpList;
tmpList << boardURL;
tmpList << boardName;
void KitaBoardView::showBoardList()
{
+ /* color setting */
+/*
+ m_textColor = QColor( "white" );
+ m_baseColor = QColor( "red" );
+ m_backColor = QColor( "yellow" );
+ m_altColor = QColor( "blue" );
+*/
+ /*-------------------------------------------------*/
+
+ /* set background color */
+ m_boardList->viewport()->setPaletteBackgroundColor( m_backColor );
+ m_boardList->setAlternateBackground( m_altColor );
+
// clear list
m_boardList->clear();
m_favorites = NULL;
QStringList category_list = config.readListEntry( "Categories" );
Kita::BoardManager::clearBoardData();
- KListViewItem* previous = 0;
+ Kita::ListViewItem* previous = 0;
QStringList::iterator it;
for ( it = category_list.begin(); it != category_list.end(); ++it ) {
QString category = ( *it );
config.setGroup( category );
- KListViewItem* categoryItem = new KListViewItem( m_boardList, previous, category );
- KListViewItem* previousBoard = 0;
+ Kita::ListViewItem* categoryItem = new Kita::ListViewItem( m_boardList, previous, category );
+ categoryItem->setColor( m_textColor, m_baseColor );
+ Kita::ListViewItem* previousBoard = 0;
for ( int count = 0; ; count++ ) {
QString key = QString( "item%1" ).arg( count );
QString boardURL = value[0];
QString boardName = value[1];
Kita::BoardManager::enrollBoard( boardURL, boardName );
- previousBoard = new KListViewItem( categoryItem, previousBoard, boardName, boardURL );
+ previousBoard = new Kita::ListViewItem( categoryItem, previousBoard, boardName, boardURL );
+ previousBoard->setColor( m_textColor, m_baseColor );
}
previous = categoryItem;
}
QStringList list;
QString str;
- KListViewItem* categoryItem = new KListViewItem( m_boardList, "extboard" );
+ Kita::ListViewItem* categoryItem = new Kita::ListViewItem( m_boardList, "extboard" );
+ categoryItem->setColor( m_textColor, m_baseColor );
while ( ( str = stream.readLine() ) != QString::null ) {
if ( ! str.isEmpty() ) {
QString board_title = list[ 0 ];
QString board_url = list[ 1 ];
- new KListViewItem( categoryItem, board_title, board_url );
+ Kita::ListViewItem* tmpitem = new Kita::ListViewItem( categoryItem, board_title, board_url );
+ tmpitem->setColor( m_textColor, m_baseColor );
Kita::BoardManager::enrollBoard( board_url, board_title );
}
}
void KitaBoardView::refreshFavoriteBoards()
{
if ( ! m_favorites ) {
- m_favorites = new KListViewItem( m_boardList, 0, i18n( "Favorites" ) );
+ m_favorites = new Kita::ListViewItem( m_boardList, 0, i18n( "Favorites" ) );
}
+ m_favorites->setColor( m_textColor, m_baseColor );
do {
QListViewItem* child = m_favorites->firstChild();
for ( it = boards.begin(); it != boards.end(); ++it ) {
QString boardURL = ( *it ).url();
- QString boardName = Kita::Board::getName( boardURL );
- new KListViewItem( m_favorites, 0, boardName, boardURL );
+ QString boardName = Kita::BoardManager::boardName( boardURL );
+ Kita::ListViewItem* tmpitem = new Kita::ListViewItem( m_favorites, 0, boardName, boardURL );
+ tmpitem->setColor( m_textColor, m_baseColor );
}
}
/***************************************************************************
-* Copyright (C) 2003 by Hideki Ikemoto *
+* Copyright (C) 2004 by Kita Developers *
* ikemo@users.sourceforge.jp *
* *
* This program is free software; you can redistribute it and/or modify *
#include "kitaboardviewbase.h"
class KURL;
-class KListViewItem;
class QCp932Codec;
namespace Kita
{
class Board;
class Category;
+ class ListViewItem;
}
/**
class KitaBoardView : public KitaBoardViewBase
{
Q_OBJECT
- KListViewItem* m_favorites;
+ Kita::ListViewItem* m_favorites;
static QCp932Codec* m_cp932Codec;
+ /* list color */
+ QColor m_textColor;
+ QColor m_baseColor;
+ QColor m_backColor;
+ QColor m_altColor;
+
QString getCategory( const QString& line ) const;
QString getBoardURL( const QString& line ) const;
bool isBoardURL( const QString& url ) const;
--- /dev/null
+/***************************************************************************
+* Copyright (C) 2004 by Kita Developers *
+* ikemo@users.sourceforge.jp *
+* *
+* This program 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. *
+***************************************************************************/
+
+#include "listviewitem.h"
+
+
+namespace Kita
+{
+ ListViewItem::ListViewItem( QListView *parent, QListViewItem *after,
+ QString label1, QString label2, QString label3, QString label4,
+ QString label5, QString label6, QString label7, QString label8)
+ : KListViewItem(parent, after, label1, label2, label3, label4, label5, label6, label7, label8)
+ {
+ init();
+ }
+
+ ListViewItem::ListViewItem( QListViewItem *parent, QListViewItem *after,
+ QString label1, QString label2, QString label3, QString label4,
+ QString label5, QString label6, QString label7, QString label8)
+ : KListViewItem(parent, after, label1, label2, label3, label4, label5, label6, label7, label8)
+ {
+ init();
+ }
+
+ ListViewItem::ListViewItem( QListView* parent, QString label1, QString label2 )
+ : KListViewItem( parent, label1, label2 )
+ {
+ init();
+ }
+
+ ListViewItem::ListViewItem( QListViewItem* parent, QString label1, QString label2 )
+ : KListViewItem( parent, label1, label2 )
+ {
+ init();
+ }
+
+ ListViewItem::~ListViewItem()
+ {}
+
+ /* private */
+ void ListViewItem::init()
+ {
+ QColorGroup colors = listView()->viewport()->colorGroup();
+ m_textColor = colors.text();
+ m_baseColor = colors.base();
+ }
+
+ /* public */
+ void ListViewItem::setColor( QColor textColor, QColor baseColor )
+ {
+ m_textColor = textColor;
+ m_baseColor = baseColor;
+ }
+
+ /* public */ /* virtual */
+ void ListViewItem::paintCell( QPainter *p, const QColorGroup &cg,
+ int column, int width, int align )
+ {
+ QColorGroup color( cg.foreground(), cg.background(), cg.light(), cg.dark(),
+ cg.mid(), m_textColor, m_baseColor );
+
+ KListViewItem::paintCell( p, color, column, width, align );
+ }
+
+
+ /*----------------------------------------*/
+
+
+ SubjectListViewItem::SubjectListViewItem( QListView* parent )
+ : Kita::ListViewItem( parent )
+ {}
+
+ SubjectListViewItem::~SubjectListViewItem()
+ {}
+
+ /* public */ /* virtual */
+ int SubjectListViewItem::compare( QListViewItem* i, int col, bool ascending ) const
+ {
+ switch ( col ) {
+ case Col_ResNum:
+ case Col_Read:
+ case Col_Unread:
+ return i->key( col, ascending ).toInt() - key( col, ascending ).toInt();
+ case Col_ID:
+ return key( Col_IDOrder, ascending ).toInt() - i->key( Col_IDOrder, ascending ).toInt();
+ case Col_Mark:
+ return QString::localeAwareCompare( i->key( Col_MarkOrder, ascending ), key( Col_MarkOrder, ascending ) );
+ case Col_Since:
+ return QString::localeAwareCompare( i->key( col, ascending ), key( col, ascending ) );
+ case Col_Speed:
+ return static_cast<int>( i->key( col, ascending ).toDouble() * 1000 - key( col, ascending ).toDouble() * 1000 );
+ default:
+ return QString::localeAwareCompare( key( col, ascending ), i->key( col, ascending ) );
+ }
+ }
+}
--- /dev/null
+/***************************************************************************
+* Copyright (C) 2004 by Kita Developers *
+* ikemo@users.sourceforge.jp *
+* *
+* This program 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. *
+***************************************************************************/
+
+#ifndef _KITALISTVIEWITEM_H_
+#define _KITALISTVIEWITEM_H_
+
+#include <klistview.h>
+
+enum SubjectRows {
+ Col_Mark,
+ Col_ID,
+ Col_Icon,
+ Col_Subject,
+ Col_ResNum,
+ Col_Read,
+ Col_Unread,
+ Col_Since,
+ Col_Speed,
+ Col_Board,
+ Col_DatURL,
+ Col_MarkOrder,
+ Col_IDOrder
+};
+
+
+namespace Kita
+{
+ class ListViewItem : public KListViewItem
+ {
+ QColor m_textColor; /* text color */
+ QColor m_baseColor; /* background color */
+
+ public:
+
+ ListViewItem( QListView *parent, QListViewItem *after,
+ QString, QString = QString::null,
+ QString = QString::null, QString = QString::null,
+ QString = QString::null, QString = QString::null,
+ QString = QString::null, QString = QString::null);
+
+ ListViewItem( QListViewItem *parent, QListViewItem *after,
+ QString, QString = QString::null,
+ QString = QString::null, QString = QString::null,
+ QString = QString::null, QString = QString::null,
+ QString = QString::null, QString = QString::null);
+
+ ListViewItem( QListView* parent, QString = QString::null, QString = QString::null );
+
+ ListViewItem( QListViewItem* parent, QString = QString::null, QString = QString::null );
+
+ ~ListViewItem();
+
+ void setColor( QColor textColor, QColor baseColor );
+ virtual void paintCell( QPainter *p, const QColorGroup &cg, int column, int width, int align );
+
+ private:
+ void init();
+ };
+
+ /*----------------------------------------*/
+
+ /* for KitaSubjectView */
+ class SubjectListViewItem : public Kita::ListViewItem
+ {
+ SubjectListViewItem( QListView* parent );
+ ~SubjectListViewItem();
+
+ public:
+ virtual int compare( QListViewItem* i, int col, bool ascending ) const;
+ };
+
+}
+
+
+
+
+#endif