From d1caf1a80e9e426b90bb94a7e3b761f8625e0741 Mon Sep 17 00:00:00 2001 From: ikemo Date: Sat, 31 Jul 2004 14:33:26 +0000 Subject: [PATCH] >>41 git-svn-id: svn+ssh://svn.sourceforge.jp/svnroot/kita/kita/trunk@1267 56b19765-1e22-0410-a548-a0f45d66c51a --- kita/src/kita.cpp | 4 --- kita/src/libkita/signalcollection.h | 21 ++++++++++------ kita/src/part/kitahtmlpart.cpp | 33 ++++++++++++++++-------- kita/src/part/kitahtmlpart.h | 8 ++++++ kita/src/part/kitathreadpart.cpp | 5 ++-- kita/src/part/kitathreadpart.h | 2 +- kita/src/part/kitathreadview.cpp | 50 +++++++++++++++++++++++++------------ kita/src/part/kitathreadview.h | 8 +++++- 8 files changed, 89 insertions(+), 42 deletions(-) diff --git a/kita/src/kita.cpp b/kita/src/kita.cpp index a6a7744..1de58b9 100644 --- a/kita/src/kita.cpp +++ b/kita/src/kita.cpp @@ -17,7 +17,6 @@ #include "libkita/favoriteboards.h" #include "kitathreadtabwidget.h" #include "kitasubjecttabwidget.h" -#include "kitanavi.h" #include "libkita/favoritethreads.h" #include "libkita/kita_misc.h" @@ -524,9 +523,6 @@ void KitaMainWindow::setupView() m_boardDock->manualDock( m_mainDock, KDockWidget::DockLeft, 20 ); m_subjectDock->manualDock( m_mainDock, KDockWidget::DockTop, 30 ); - - /* setup kitanavi */ - KitaNavi::createKitaNavi(this,m_threadTab); } void KitaMainWindow::closeSubjectView() diff --git a/kita/src/libkita/signalcollection.h b/kita/src/libkita/signalcollection.h index fa16f15..4ffbf06 100644 --- a/kita/src/libkita/signalcollection.h +++ b/kita/src/libkita/signalcollection.h @@ -31,7 +31,6 @@ namespace Kita static SignalCollection* getInstance(); signals: - void openURLRequest( const KURL& url, const KParts::URLArgs& args = KParts::URLArgs() ); void writeSucceeded(); void bookmarked( const QString& datURL, bool on ); void favoritesUpdated(); @@ -48,27 +47,35 @@ namespace Kita /* to : KitaThreadTabWidget */ void updateThreadTab( const KURL& url ); void closeThreadTab( const KURL& url ); - void closeCurrentThreadTab(); /* to : KitaMainWindow */ + void openURLRequest( const KURL& url, const KParts::URLArgs& args = KParts::URLArgs() ); void setMainURLLine( const KURL& url ); void setMainCaption( const QString& captionStr ); void setMainStatusbar( const QString& statusStr ); - /* from: KitaMainWindow, KitaNavi, KitaWriteDialog */ - /* to : KitaHTMLPart */ + /* from: KitaDockWidgetBase, KitaWriteDialog */ + /* to : KitaHTMLPart */ void windowDeactivated(); void kitaIsActive(); - /* from: KitaHTMLPart */ - /* to : KitaMainWindow, KitaNavi, KitaWriteDialog */ - /* see also KitaHTMLPart::slotOnURL */ + /* from: KitaHTMLPart */ + /* to : KitaDockWidgetBase, KitaWriteDialog */ + /* see also KitaHTMLPart::slotOnURL */ void isKitaActive(); /* to : KitaHTMLPart */ void redrawHTMLPart( const KURL& url, bool force ); void redrawAllHTMLPart( bool force ); void setFontOfHTMLPart(); + + /* to : KitaThreadDock */ + void showKitaNavi( const KURL& , int , int ); + void showKitaNaviByID( const KURL& , QString ); + void showKitaNaviByWord( const KURL& , QString); + void showKitaNaviByName( const KURL& , QString); + void showKitaNaviResTree( const KURL&, int ); + void showKitaNaviRevResTree( const KURL&, int ); }; } diff --git a/kita/src/part/kitahtmlpart.cpp b/kita/src/part/kitahtmlpart.cpp index 38d7ca3..b741731 100644 --- a/kita/src/part/kitahtmlpart.cpp +++ b/kita/src/part/kitahtmlpart.cpp @@ -25,7 +25,6 @@ #include "kitahtmlpart.h" #include "kitahtmlview.h" #include "kitadomtree.h" -#include "kitanavi.h" #include "libkita/kitaconfig.h" #include "libkita/datmanager.h" @@ -149,6 +148,20 @@ void KitaHTMLPart::connectSignals() /* goto anchor */ connect( view(), SIGNAL( pushDown() ), SLOT( slotClickTugi100() )); + + /* kitanavi */ + connect( this, SIGNAL( showKitaNavi( const KURL& , int , int )), + signalCollection, SIGNAL( showKitaNavi( const KURL& , int , int ))); + connect( this, SIGNAL( showKitaNaviByID( const KURL& , QString )), + signalCollection, SIGNAL( showKitaNaviByID( const KURL& , QString ))); + connect( this, SIGNAL( showKitaNaviByWord( const KURL& , QString)), + signalCollection, SIGNAL( showKitaNaviByWord( const KURL& , QString))); + connect( this, SIGNAL( showKitaNaviByName( const KURL& , QString)), + signalCollection, SIGNAL( showKitaNaviByName( const KURL& , QString))); + connect( this, SIGNAL( showKitaNaviResTree( const KURL&, int )), + signalCollection, SIGNAL( showKitaNaviResTree( const KURL&, int ))); + connect( this, SIGNAL( showKitaNaviRevResTree( const KURL&, int )), + signalCollection, SIGNAL( showKitaNaviRevResTree( const KURL&, int ))); } @@ -1096,7 +1109,7 @@ void KitaHTMLPart::showPopupMenu( const KURL& kurl ) break; case ID_Extract: - KitaNavi::showKitaNaviByWord( m_datURL, selectedText() ); + emit showKitaNaviByWord( m_datURL, selectedText() ); break; case ID_Search_Google: @@ -1276,7 +1289,7 @@ void KitaHTMLPart::clickAnchor( const KURL& urlin ) if ( !refNum ) return ; - if( m_pushctrl || m_pushmidbt ) KitaNavi::showKitaNavi( m_datURL, refNum, refNum2 ); + if( m_pushctrl || m_pushmidbt ) emit showKitaNavi( m_datURL, refNum, refNum2 ); else if( ( m_mode == HTMLPART_MODE_KHTML || m_mode == HTMLPART_MODE_POPUP ) || ( m_mode == HTMLPART_MODE_NAVI && !m_domtree->isResShown( refNum ) ) ) { @@ -1330,7 +1343,7 @@ void KitaHTMLPart::showWritePopupMenu( const QString& refstr) /* open kitanavi */ else if( m_pushctrl | m_pushmidbt ) { - KitaNavi::showKitaNaviResTree(m_datURL,resNum); + emit showKitaNaviResTree(m_datURL,resNum); return; } @@ -1453,20 +1466,20 @@ void KitaHTMLPart::showWritePopupMenu( const QString& refstr) case WRITEMENU_SHOWNAVI: - KitaNavi::showKitaNavi( m_datURL, resNum, resNum); + emit showKitaNavi( m_datURL, resNum, resNum); break; case WRITEMENU_RESTREE: - KitaNavi::showKitaNaviResTree( m_datURL, resNum); + emit showKitaNaviResTree( m_datURL, resNum); break; case WRITEMENU_REVERSERESTREE: - KitaNavi::showKitaNaviRevResTree( m_datURL, resNum ); + emit showKitaNaviRevResTree( m_datURL, resNum ); break; case WRITEMENU_EXTRACTNAME: - KitaNavi::showKitaNaviByName( m_datURL, namestr ); + emit showKitaNaviByName( m_datURL, namestr ); break; case WRITEMENU_ABONENAME: @@ -1512,7 +1525,7 @@ void KitaHTMLPart::showIDPopup( const QString& refstr ) } /* open kitanavi when user pushed Ctrl+Left or Mid button. */ - else if( m_pushctrl | m_pushmidbt ) KitaNavi::showKitaNaviByID( m_datURL, strid ); + else if( m_pushctrl | m_pushmidbt ) emit showKitaNaviByID( m_datURL, strid ); else { @@ -1533,7 +1546,7 @@ void KitaHTMLPart::showIDPopup( const QString& refstr ) { case IDMENU_EXTRACT: - KitaNavi::showKitaNaviByID( m_datURL, strid ); + emit showKitaNaviByID( m_datURL, strid ); break; case IDMENU_ABONE: diff --git a/kita/src/part/kitahtmlpart.h b/kita/src/part/kitahtmlpart.h index 2020f8c..4fa37d8 100644 --- a/kita/src/part/kitahtmlpart.h +++ b/kita/src/part/kitahtmlpart.h @@ -196,6 +196,14 @@ signals: /* res popup */ void hideChildPopup(); void isKitaActive(); + + /* kita navi */ + void showKitaNavi( const KURL& , int , int ); + void showKitaNaviByID( const KURL& , QString ); + void showKitaNaviByWord( const KURL& , QString); + void showKitaNaviByName( const KURL& , QString); + void showKitaNaviResTree( const KURL&, int ); + void showKitaNaviRevResTree( const KURL&, int ); }; diff --git a/kita/src/part/kitathreadpart.cpp b/kita/src/part/kitathreadpart.cpp index e74dbc0..42b53a7 100644 --- a/kita/src/part/kitathreadpart.cpp +++ b/kita/src/part/kitathreadpart.cpp @@ -163,12 +163,11 @@ void KitaThreadPart::slotOpenURLResult() emit completed(); } -void KitaThreadPart::guiActivateEvent ( KParts::GUIActivateEvent* event ) +void KitaThreadPart::partActivateEvent ( KParts::PartActivateEvent* event ) { - //KParts::ReadOnlyPart::guiActivateEvent( event ); if ( event->activated() ) { - m_threadview->showStatusBar( QString::null ); + m_threadview->setFocus(); } } diff --git a/kita/src/part/kitathreadpart.h b/kita/src/part/kitathreadpart.h index 4b421f1..190de26 100644 --- a/kita/src/part/kitathreadpart.h +++ b/kita/src/part/kitathreadpart.h @@ -32,7 +32,7 @@ public slots: protected: virtual bool openFile() { return false; }; - virtual void guiActivateEvent ( KParts::GUIActivateEvent *event ); + virtual void partActivateEvent ( KParts::PartActivateEvent *event ); protected slots: void slotOpenURLResult(); diff --git a/kita/src/part/kitathreadview.cpp b/kita/src/part/kitathreadview.cpp index e61e829..d20f570 100644 --- a/kita/src/part/kitathreadview.cpp +++ b/kita/src/part/kitathreadview.cpp @@ -45,7 +45,6 @@ #include "kitahtmlpart.h" #include "kitawritedialog.h" #include "kita2ch.h" -#include "kitanavi.h" #include "libkita/kitaconfig.h" #include "libkita/kita-utf8.h" @@ -146,10 +145,15 @@ KitaThreadView::KitaThreadView( QWidget* parent, const char* name ) connect( this, SIGNAL( closeThreadTab( const KURL& ) ), signalCollection, SIGNAL( closeThreadTab( const KURL& ) )); - m_viewmode = VIEWMODE_PARENT; + /* Kita Navi */ + connect( this, SIGNAL( showKitaNaviByWord( const KURL& , QString)), + signalCollection, SIGNAL( showKitaNaviByWord( const KURL& , QString))); + + m_viewmode = VIEWMODE_MAINVIEW; m_rescode = 200; m_serverTime = 0; m_datURL = QString::null; + } KitaThreadView::~KitaThreadView() @@ -172,6 +176,11 @@ const KURL KitaThreadView::threadURL() const return Kita::DatManager::threadURL( m_datURL ); } +const KURL KitaThreadView::datURL() const +{ + return m_datURL; +} + void KitaThreadView::slotDOMNodeActivated( const DOM::Node& node ) { { //process Anchor tags. Anchor tags not proccessed here cause 'emit KParts::BrowserExtention::openURLRequest()' @@ -382,10 +391,17 @@ void KitaThreadView::focusSearchCombo() if ( ! SearchCombo->hasFocus() ) { SearchCombo->setFocus(); } else { - m_threadPart->view()->setFocus(); + setFocus(); } } +/* public slot */ /* virtual */ +void KitaThreadView::setFocus() +{ + showStatusBar( QString::null ); + m_threadPart->view()->setFocus(); +} + namespace Kita { @@ -550,14 +566,14 @@ void KitaThreadView::setup( const KURL& datURL, int mode ) void KitaThreadView::showThread( const KURL& datURL, int num ) { /* If this widget is not parent, then do nothing. */ - if ( m_viewmode != VIEWMODE_PARENT ) return ; - + if ( m_viewmode != VIEWMODE_MAINVIEW ) return ; + if ( topLevelWidget() ->isMinimized() ) topLevelWidget() ->showNormal(); topLevelWidget() ->raise(); setActiveWindow(); /* setup */ - setup( datURL, VIEWMODE_PARENT ); + setup( datURL, VIEWMODE_MAINVIEW ); /* get log from cahce */ m_rescode = 200; @@ -600,6 +616,7 @@ void KitaThreadView::showStatusBar( QString info ) { int totalNum = 0, datSize = 0;; bool broken = FALSE; + QString captionStr = QString::null; QString infostr = QString::null; QString errstr = QString::null; int kokoyonNum = Kita::DatManager::getKokoyonNum(m_datURL); @@ -607,8 +624,9 @@ void KitaThreadView::showStatusBar( QString info ) switch( m_viewmode ) { - case VIEWMODE_PARENT: + case VIEWMODE_MAINVIEW: + if ( !m_datURL.isEmpty() ){ totalNum = Kita::DatManager::getReadNum(m_datURL); broken = Kita::DatManager::isBroken(m_datURL); datSize = Kita::DatManager::getDatSize(m_datURL); @@ -618,11 +636,16 @@ void KitaThreadView::showStatusBar( QString info ) errstr = QString( "Error %1" ).arg( m_rescode ); if ( broken ) info += " This thread is broken."; - /* show status bar */ + /* show status bar,caption, url */ infostr = Kita::DatManager::threadName( m_datURL ) + QString( " [Total: %1 New: %2] %3 k" ).arg( totalNum ).arg( totalNum - kokoyonNum ).arg( datSize / 1024 ) + info + " " + errstr; + captionStr = Kita::DatManager::thread_name( m_datURL ) + + QString( " (%1)" ).arg( Kita::DatManager::getReadNum( m_datURL ) ); + } + + emit setMainCaption( captionStr ); emit setMainStatusbar( infostr ); emit setMainURLLine( Kita::DatManager::threadURL( m_datURL ) ); @@ -651,7 +674,6 @@ void KitaThreadView::slotUpdateInfo() + QString( " (%1)" ) .arg( Kita::DatManager::getReadNum(m_datURL) ), Kita::DatManager::thread_boardURL( m_datURL ) ); - emit setMainURLLine( Kita::DatManager::thread_url(m_datURL) ); updateButton(); gotoCombo->clear(); @@ -667,9 +689,6 @@ void KitaThreadView::slotUpdateInfo() emit updateSubjectTab( m_datURL ); emit updateThreadTab( m_datURL ); - QString captionStr = Kita::DatManager::thread_name( m_datURL ) - + QString( " (%1)" ).arg( Kita::DatManager::getReadNum( m_datURL ) ); - emit setMainCaption( captionStr ); showStatusBar( "" ); emit showThreadCompleted(); /* to KitaThreadPart */ @@ -699,12 +718,12 @@ void KitaThreadView::slotSearchButton() else if(str.at(0) == '?') { QString query = str.mid(1); - KitaNavi::showKitaNaviByWord(m_datURL,query); + emit showKitaNaviByWord( m_datURL, query ); return; } /* if this is parent, then show all responses, and search */ - if ( m_viewmode == VIEWMODE_PARENT ) m_threadPart->showAll(); + if ( m_viewmode == VIEWMODE_MAINVIEW ) m_threadPart->showAll(); slotSearchPrivate( FALSE ); } @@ -726,7 +745,7 @@ void KitaThreadView::slotSearchPrivate( bool rev ) if( str.at(0) == '?' ) return; /* if this is parent, then show all responses, and search */ - if ( m_viewmode == VIEWMODE_PARENT ) m_threadPart->showAll(); + if ( m_viewmode == VIEWMODE_MAINVIEW ) m_threadPart->showAll(); insertSearchCombo(); QStringList list = parseSearchQuery( SearchCombo->currentText() ); @@ -766,7 +785,6 @@ void KitaThreadView::slotDeleteButtonClicked() if( m_datURL.isEmpty() ) return; int rescode = Kita::DatManager::getResponseCode( m_datURL ); - int readNum = Kita::DatManager::getReadNum( m_datURL ); if( ( rescode != 200 && rescode != 206) || FavoriteThreads::getInstance()->contains( m_datURL.prettyURL() ) ) { if( QMessageBox::warning( this, diff --git a/kita/src/part/kitathreadview.h b/kita/src/part/kitathreadview.h index e27cad5..a94cf13 100644 --- a/kita/src/part/kitathreadview.h +++ b/kita/src/part/kitathreadview.h @@ -34,7 +34,7 @@ namespace Kita /* mode , m_viewmode uses them. */ enum{ - VIEWMODE_PARENT, + VIEWMODE_MAINVIEW, VIEWMODE_KITANAVI }; @@ -57,6 +57,7 @@ public: ~KitaThreadView(); const QString threadName() const; const KURL threadURL() const; + const KURL datURL() const; void setup( const KURL& datURL, int mode ); void showStatusBar( QString info ); @@ -71,6 +72,8 @@ public: void domApplyChange( QString lbstr, QString hstr, QString fstr, QString anchor, QString cmbstr ); public slots: + virtual void setFocus(); + void subjectlinkClicked(const QString& URL ); void subjectlinkMClicked( const QString &URL ); void showThread( const KURL& datURL, int num ); @@ -141,6 +144,9 @@ signals: void openBoardRequested( const QString& URL, bool useTab ); void showThreadCompleted(); /* to KitaThreadPart */ void closeThreadTab( const KURL& url ); + + /* kita navi */ + void showKitaNaviByWord( const KURL& , QString); }; namespace Kita -- 2.11.0