kita_LDADD = kita.la
# which sources should be compiled for kita
-kita_la_SOURCES = main.cpp kita.cpp pref.cpp kitaiface.skel kitasubjectview.h kitasubjectview.cpp kitaboardview.h kitaboardview.cpp threadlistviewbase.ui kitaboardviewbase.ui kitafontprefbase.ui favoritelistview.h favoritelistview.cpp kitathreadtabwidget.h kitathreadtabwidget.cpp kitasubjecttabwidget.h kitasubjecttabwidget.cpp kitacolorprefbase.ui threadlistview.cpp asciiartprefbase.ui debugprefbase.ui uiprefbase.ui aboneprefbase.ui aboneprefpage.cpp aboneprefpage.h loginprefbase.ui loginprefpage.h loginprefpage.cpp kitatabwidgetbase.cpp kitatabwidgetbase.h kitaimgtabwidget.cpp kitimgtabwidget.h kitawritetabwidget.cpp kitawritetabwidget.h
+kita_la_SOURCES = main.cpp kita.cpp pref.cpp kitaiface.skel kitasubjectview.h kitasubjectview.cpp kitaboardview.h kitaboardview.cpp threadlistviewbase.ui kitaboardviewbase.ui kitafontprefbase.ui favoritelistview.h favoritelistview.cpp kitathreadtabwidget.h kitathreadtabwidget.cpp kitasubjecttabwidget.h kitasubjecttabwidget.cpp kitacolorprefbase.ui threadlistview.cpp asciiartprefbase.ui debugprefbase.ui uiprefbase.ui aboneprefbase.ui aboneprefpage.cpp aboneprefpage.h loginprefbase.ui loginprefpage.h loginprefpage.cpp kitatabwidgetbase.cpp kitatabwidgetbase.h kitaimgtabwidget.cpp kitimgtabwidget.h kitawritetabwidget.cpp kitawritetabwidget.h kitaboardtabwidget.cpp kitaboardtabwidget.h
kita_SOURCES = dummy.cpp
#include "kitaboardview.h"
#include "libkita/threadinfo.h"
#include "libkita/favoriteboards.h"
+#include "kitaboardtabwidget.h"
#include "kitathreadtabwidget.h"
#include "kitasubjecttabwidget.h"
#include "kitaimgtabwidget.h"
connect( signalCollection, SIGNAL( switchSubjectView() ),
SLOT( slotSwitchSubjectView() ));
-
+
+ connect( signalCollection, SIGNAL( switchToSubject() ),
+ SLOT( slotSwitchSubjectView() ));
+
connect( signalCollection, SIGNAL( bookmarked( const QString&, bool ) ),
SLOT( bookmark( const QString&, bool ) ) );
connect( settingsPopup, SIGNAL( aboutToShow() ),
SLOT( settingsMenuAboutToShow() ) );
- m_boardView->loadBoardList();
- m_boardView->setFocus();
-
// dummy code to activate toggle actions
- m_boardListAction->activate();
m_subjectListAction->activate();
+
+ // load boad list & show board dock
+ m_boardTab->loadBoardList();
+ m_boardDock->slotShowDock();
}
KitaMainWindow::~KitaMainWindow()
{
- makeDockVisible( m_boardDock );
makeDockVisible( m_subjectDock );
- m_threadDock->slotShowDock();
- m_naviDock->slotShowDock();
- m_imgDock->slotShowDock();
- m_writeDock->slotShowDock();
+ m_boardDock->showDock( FALSE );
+ m_threadDock->showDock( FALSE );
+ m_naviDock->showDock( FALSE );
+ m_imgDock->showDock( FALSE );
+ m_writeDock->showDock( FALSE );
saveAboneIDList();
saveAboneNameList();
KConfig dockConfig( dockConfigPath );
writeDockConfig( &dockConfig );
+ delete m_boardDock;
delete m_threadDock;
delete m_naviDock;
delete m_imgDock;
- delete m_writeDock;
+ delete m_writeDock;
}
void KitaMainWindow::load( const KURL& url )
m_boardListAction = new KToggleAction( i18n( "Show board list" ),
0,
- this,
- SLOT( windowShowBoardlist() ),
+ m_boardDock,
+ SLOT( slotToggleShowHide() ),
actionCollection(),
"window_show_board_list" );
actionCollection(),
"window_show_subject_list" );
- m_showImgViewAction = new KToggleAction( i18n( "Show Imgage Viewer" ),
+ m_showImgViewAction = new KToggleAction( i18n( "Show Image Viewer" ),
0,
m_imgDock,
SLOT( slotToggleShowHide() ),
actionCollection(),
"window_show_kitanavi" );
+ m_showWriteDockAction = new KToggleAction( i18n( "Show Write Dock" ),
+ 0,
+ m_writeDock,
+ SLOT( slotToggleShowHide() ),
+ actionCollection(),
+ "window_show_writedock" );
+
+
m_urlLine = new KLineEdit( "", 0 );
new KWidgetAction( m_urlLine,
i18n( "URL Line" ),
new KAction( i18n( "Load BoardList" ),
0,
- m_boardView,
+ m_boardTab,
SLOT( loadBoardList() ),
actionCollection(),
"load_board_list" );
setXMLFile( "kitaui.rc" );
KMainWindow::createGUI();
+ factory()->addClient( m_boardTab );
factory()->addClient( m_threadTab );
factory()->addClient( m_imgTab );
- factory()->addClient( m_naviTab );
-}
+ factory()->addClient( m_naviTab );
+ factory()->addClient( m_writeTab );
+ }
void KitaMainWindow::slotURLLine()
{
applyMainWindowSettings( KGlobal::config(), "MainWindow" );
}
-void KitaMainWindow::windowShowBoardlist()
-{
- if ( m_boardListAction->isChecked() )
- {
- makeDockVisible( m_boardDock );
- }
- else
- {
- makeDockInvisible( m_boardDock );
- }
-}
-
void KitaMainWindow::windowShowSubjectlist()
{
if ( m_subjectListAction->isChecked() )
if( m_subjectListAction ) m_subjectListAction->setChecked( TRUE );
if( m_showImgViewAction ) m_showImgViewAction->setChecked( TRUE );
if( m_showNaviAction ) m_showNaviAction->setChecked( TRUE );
+ if( m_showWriteDockAction ) m_showWriteDockAction->setChecked( TRUE );
}
connect( m_subjectDock, SIGNAL( iMBeingClosed() ), SLOT( closeSubjectView() ) );
/* Board View */
- m_boardDock = createDockWidget( "board", 0L, 0L, i18n( "board" ), i18n( "board" ) );
- m_boardView = new KitaBoardView( m_boardDock );
- m_boardDock->setWidget( m_boardView );
- m_boardDock->setDockSite( KDockWidget::DockNone );
- connect( m_boardDock, SIGNAL( headerCloseButtonClicked() ), SLOT( closeBoardView() ) );
- connect( m_boardDock, SIGNAL( iMBeingClosed() ), SLOT( closeBoardView() ) );
+ m_boardDock = new KitaBoardDock( manager(), "board", 0L, 0L, i18n( "board" ), i18n( "board" ) );
+ m_boardTab = m_boardDock->setup();
+ connect( m_boardDock, SIGNAL( checkToggleAction( bool ) ), SLOT( slotCheckBoardToggleAction( bool ) ) );
/* Thread View */
m_threadDock = new KitaThreadDock( manager(), "Thread", 0L, 0L, i18n( "Thread" ), i18n( "Thread" ) );
/* write dock */
m_writeDock = new KitaWriteDock( manager(), "Write", 0L, 0L, i18n( "Write" ), i18n( "Write" ) );
- m_writeDock->setup();
+ m_writeTab = m_writeDock->setup();
+ connect( m_writeDock, SIGNAL( checkToggleAction( bool ) ), SLOT( slotCheckWriteToggleAction( bool ) ) );
/* reset dock status */
m_boardListAction = NULL;
m_subjectListAction = NULL;
m_showImgViewAction = NULL;
m_showNaviAction = NULL;
+ m_showWriteDockAction = NULL;
resetWindows();
}
m_subjectListAction->setChecked( FALSE );
}
-void KitaMainWindow::closeBoardView()
+void KitaMainWindow::slotCheckBoardToggleAction( bool check )
{
- m_boardListAction->setChecked( FALSE );
+ if( m_boardListAction ) m_boardListAction->setChecked( check );
}
void KitaMainWindow::slotCheckNaviToggleAction( bool check )
if( m_showImgViewAction ) m_showImgViewAction->setChecked( check );
}
+
+void KitaMainWindow::slotCheckWriteToggleAction( bool check )
+{
+ if( m_showWriteDockAction ) m_showWriteDockAction->setChecked( check );
+}
+
+
void KitaMainWindow::slotOpenURLRequest( const KURL& url, const KParts::URLArgs& args )
{
kdDebug() << QString( "Requested OpenURL: \"%1\"" ).arg( url.url() ) << endl;
void KitaMainWindow::setFont( const QFont& font )
{
m_subjectTab->setFont( font );
- m_boardView->setFont( font );
+ m_boardTab->setFont( font );
}
class KPrinter;
class KToggleAction;
class KURL;
-class KitaThreadTabWidget;
-class KitaBoardView;
-class KitaSubjectTabWidget;
class KLineEdit;
+
+class KitaBoardDock;
+class KitaBoardTabWidget;
+class KitaSubjectTabWidget;
class KitaThreadDock;
+class KitaThreadTabWidget;
class KitaImgDock;
class KitaImgTabWidget;
-class KitaNavi;
class KitaWriteDock;
+class KitaWriteTabWidget;
namespace KParts
{
void optionsConfigureToolbars();
void optionsPreferences();
void newToolbarConfig();
- void windowShowBoardlist();
void windowShowSubjectlist();
void windowToggleView();
void settingsMenuAboutToShow();
void slotEditCopy();
void resetWindows();
void closeSubjectView();
- void closeBoardView();
+ void slotCheckBoardToggleAction( bool check );
void slotCheckNaviToggleAction( bool check );
void slotCheckImgToggleAction( bool check );
+ void slotCheckWriteToggleAction( bool check );
void login();
void slotSetMainStatusbar( const QString& statusStr );
KToggleAction* m_subjectListAction;
KToggleAction* m_showImgViewAction;
KToggleAction* m_showNaviAction;
+ KToggleAction* m_showWriteDockAction;
KAction* m_toggleViewAction;
KDockWidget* m_dummyDock; /* dummy MainDockWidget */
- KDockWidget* m_boardDock;
+ KitaBoardDock* m_boardDock;
KDockWidget* m_subjectDock;
KitaThreadDock* m_threadDock;
KitaThreadDock* m_naviDock;
KitaWriteDock* m_writeDock;
KitaThreadTabWidget* m_threadTab;
- KitaBoardView* m_boardView;
+ KitaBoardTabWidget* m_boardTab;
KitaSubjectTabWidget* m_subjectTab;
KitaImgTabWidget* m_imgTab;
KitaThreadTabWidget* m_naviTab;
+ KitaWriteTabWidget* m_writeTab;
void setupAccel();
void setupActions();
--- /dev/null
+/***************************************************************************
+* Copyright (C) 2004 by Hideki Ikemoto , (c) 2004 by 421 *
+* 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 "kitaboardtabwidget.h"
+#include "kitaboardview.h"
+#include "libkita/signalcollection.h"
+
+#include <klocale.h>
+
+/*--------------------------------------------------------------*/
+
+
+KitaBoardTabWidget::KitaBoardTabWidget( QWidget* parent, const char* name, WFlags fl )
+ :KitaTabWidgetBase( parent, name, fl )
+{
+ KitaBoardView* view = new KitaBoardView( this );
+ addTab( view, i18n( "board name" ) );
+}
+
+
+KitaBoardTabWidget::~KitaBoardTabWidget(){}
+
+
+/* public slot */
+void KitaBoardTabWidget::loadBoardList()
+{
+ static_cast < KitaBoardView* > ( page( 0 ) )->loadBoardList();
+}
+
+/* public slot */
+void KitaBoardTabWidget::setFont( const QFont& font )
+{
+ static_cast < KitaBoardView* > ( page( 0 ) )->setFont( font );
+}
+
+
+/* protected */ /* virtual */
+void KitaBoardTabWidget::deleteWidget( QWidget* w ){}
+
+
+/*--------------------------------------------------------------*/
+
+
+KitaBoardDock::KitaBoardDock( KDockManager* dockManager,
+ const char* name,
+ const QPixmap &pixmap,
+ QWidget* parent,
+ const QString& strCaption,
+ const QString& strTabPageLabel,
+ WFlags f )
+ :KitaDockWidgetBase( dockManager, name, pixmap, parent, strCaption, strTabPageLabel, f ){}
+
+
+KitaBoardDock::~KitaBoardDock()
+{
+ if( m_boardTab ) delete m_boardTab;
+}
+
+
+/* setup & create KitaBoardDock */ /* public */
+KitaBoardTabWidget* KitaBoardDock::setup()
+{
+ /* create KitaNaviTabWidget */
+ m_boardTab = new KitaBoardTabWidget( this, "Board" );
+ setWidget( m_boardTab );
+
+ Kita::SignalCollection* signalCollection = Kita::SignalCollection::getInstance();
+ connect( signalCollection, SIGNAL( switchToBoard() ),
+ SLOT( slotShowDock() ) );
+
+ return m_boardTab;
+}
--- /dev/null
+/***************************************************************************
+* Copyright (C) 2004 by Hideki Ikemoto , (c) 2004 by 421 *
+* 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 KITABOARDTABWIDGET_H
+#define KITABOARDTABWIDGET_H
+
+#include "kitatabwidgetbase.h"
+
+class KitaBoardView;
+class QFont;
+
+/*------------------------------------------------*/
+
+
+class KitaBoardTabWidget : public KitaTabWidgetBase
+{
+ Q_OBJECT
+
+public:
+ KitaBoardTabWidget( QWidget* parent, const char* name = 0, WFlags fl = 0 );
+ ~KitaBoardTabWidget();
+
+public slots:
+ void loadBoardList();
+ void setFont( const QFont& font );
+
+protected:
+ virtual void deleteWidget( QWidget* w );
+};
+
+
+/*--------------------------------------------------*/
+
+
+class KitaBoardDock : public KitaDockWidgetBase{
+
+ Q_OBJECT
+ KitaBoardTabWidget* m_boardTab;
+public:
+ KitaBoardDock( KDockManager* dockManager,
+ const char* name,
+ const QPixmap &pixmap,
+ QWidget* parent = 0L,
+ const QString& strCaption = QString::null,
+ const QString& strTabPageLabel = QString::fromLatin1( " " ),
+ WFlags f = 0);
+ ~KitaBoardDock();
+
+ KitaBoardTabWidget* setup();
+};
+
+
+
+#endif
m_boardList->setFont( font );
}
+/* public slot :*/ /* virtual */
+void KitaBoardView::setFocus()
+{
+ m_boardList->setFocus();
+}
+
+
void KitaBoardView::slotContextMenuRequested( QListViewItem* item, const QPoint& point, int )
{
if ( item == 0 ) {
public slots:
void loadBoardList();
void setFont( const QFont& font );
+ virtual void setFocus();
signals:
void openBoardRequested( const QString& boardURL, bool withNewTab );
/* Kita Image Viewer */
#include "kitaimgtabwidget.h"
+#include "libkita/signalcollection.h"
#include <klibloader.h>
#include <kapplication.h>
m_imgTab = new KitaImgTabWidget( this, "Image Viewer" );
setWidget( m_imgTab );
+ Kita::SignalCollection* signalCollection = Kita::SignalCollection::getInstance();
+ connect( signalCollection, SIGNAL( switchToImgview() ),
+ SLOT( slotShowDock() ) );
+
return m_imgTab;
}
m_threadTab = new KitaThreadTabWidget( TABMODE_THREADVIEW, this, "Thread View" );
setWidget( m_threadTab );
+ Kita::SignalCollection* signalCollection = Kita::SignalCollection::getInstance();
+ connect( signalCollection, SIGNAL( switchToThread() ),
+ SLOT( slotShowDock() ) );
+
return m_threadTab;
}
m_threadTab = new KitaThreadTabWidget( TABMODE_KITANAVI, this, "Kita Navi");
setWidget( m_threadTab );
+ Kita::SignalCollection* signalCollection = Kita::SignalCollection::getInstance();
+ connect( signalCollection, SIGNAL( switchToKitanavi() ),
+ SLOT( slotShowDock() ) );
+
return m_threadTab;
}
<Action name="window_show_threadview" />
<Action name="window_show_kitanavi" />
<Action name="window_show_imgviewer" />
+ <Action name="window_show_writedock" />
<Separator/>
<Action name="reset_win" />
</Menu>
void setMainURLLine( const KURL& url );
void setMainCaption( const QString& captionStr );
void setMainStatusbar( const QString& statusStr );
+ void switchToBoard();
+ void switchToSubject();
/* from: KitaDockWidgetBase */
/* to : KitaHTMLPart */
void showKitaNaviByName( const KURL& , QString);
void showKitaNaviResTree( const KURL&, int );
void showKitaNaviRevResTree( const KURL&, int );
+ void switchToThread();
+ void switchToKitanavi();
+ /* to: KitaImgDock */
+ void switchToImgview();
+
/* to : KitaWriteDock */
void showWriteView( const KURL& , const QString&,const QString& );
+ void switchToWritedock();
};
}
/* protected */
void KitaHTMLPart::khtmlMousePressEvent( khtml::MousePressEvent* e )
{
+ emit mousePressed(); /* to KitaThreadView to focus this view. */
+
KURL kurl;
if( e->url().string() != QString::null )
kurl = KURL( Kita::DatManager::boardURL( m_datURL ), e->url().string() );
void openWriteDialog( QString );
void openURLRequest( const KURL& url, const KParts::URLArgs &args = KParts::URLArgs() );
void redrawHTMLPart( const KURL& url, bool force );
+ void mousePressed(); /* to KitaThreadView */
/* cache */
void receiveData();
SLOT( slotUpdateInfo() ) );
connect( m_threadPart, SIGNAL( nodeActivated( const DOM::Node& ) ),
SLOT( slotDOMNodeActivated( const DOM::Node& ) ) );
+ connect( m_threadPart, SIGNAL( mousePressed() ),
+ SLOT( setFocus() ) );
+
connect( BookmarkButton, SIGNAL( toggled( bool ) ),
SLOT( slotBookmarkButtonClicked( bool ) ) );
connect( SearchButton, SIGNAL( clicked() ),
void KitaThreadView::slotDOMNodeActivated( const DOM::Node& node )
{
- setFocus();
-
{ //process Anchor tags. Anchor tags not proccessed here cause 'emit KParts::BrowserExtention::openURLRequest()'
DOM::HTMLAnchorElement anchor = node;