[Kita-svn] [2430] fix bugs in contextMenuEvent()

Back to archive index

svnno****@sourc***** svnno****@sourc*****
2009年 7月 18日 (土) 20:02:05 JST


Revision: 2430
          http://sourceforge.jp/projects/kita/svn/view?view=rev&revision=2430
Author:   nogu
Date:     2009-07-18 20:02:05 +0900 (Sat, 18 Jul 2009)

Log Message:
-----------
fix bugs in contextMenuEvent()

Modified Paths:
--------------
    kita/branches/KITA-KDE4/kita/src/bbsview.cpp
    kita/branches/KITA-KDE4/kita/src/bbsview.h
    kita/branches/KITA-KDE4/kita/src/threadlistview.cpp

Modified: kita/branches/KITA-KDE4/kita/src/bbsview.cpp
===================================================================
--- kita/branches/KITA-KDE4/kita/src/bbsview.cpp	2009-07-18 10:14:54 UTC (rev 2429)
+++ kita/branches/KITA-KDE4/kita/src/bbsview.cpp	2009-07-18 11:02:05 UTC (rev 2430)
@@ -82,7 +82,6 @@
 
     m_boardList->setHeaderLabel(i18n("board name"));
     m_boardList->header()->setClickable(false);
-    m_boardList->setContextMenuPolicy(Qt::CustomContextMenu);
 
     /* default colors */
     QPalette palette = m_boardList->viewport() ->palette();
@@ -92,9 +91,6 @@
 
     connect(m_boardList, SIGNAL(itemActivated(QTreeWidgetItem*, int)),
             SLOT(loadBoard(QTreeWidgetItem*)));
-    connect(m_boardList,
-            SIGNAL(customContextMenuRequested(const QPoint&)),
-            SLOT(slotContextMenuRequested(const QPoint&)));
     connect(FavoriteBoards::getInstance(), SIGNAL(changed()),
             SLOT(refreshFavoriteBoards()));
     connect(SearchCombo, SIGNAL(textChanged(const QString&)),
@@ -497,9 +493,11 @@
     KRun::runUrl(boardURL, "text/html", 0);
 }
 
-void BBSView::slotContextMenuRequested(const QPoint& point)
+void BBSView::contextMenuEvent(QContextMenuEvent* e)
 {
-    QTreeWidgetItem* item = m_boardList->itemAt(point);
+    QPoint point = e->globalPos();
+    QTreeWidgetItem* item
+        = m_boardList->itemAt(m_boardList->viewport()->mapFromGlobal(point));
     if (item == 0) {
         return;
     }

Modified: kita/branches/KITA-KDE4/kita/src/bbsview.h
===================================================================
--- kita/branches/KITA-KDE4/kita/src/bbsview.h	2009-07-18 10:14:54 UTC (rev 2429)
+++ kita/branches/KITA-KDE4/kita/src/bbsview.h	2009-07-18 11:02:05 UTC (rev 2430)
@@ -47,6 +47,7 @@
         void saveOpened();
         KComboBox* SearchCombo;
         QTreeWidget* m_boardList;
+        void contextMenuEvent(QContextMenuEvent* e);
 
     protected:
         QVBoxLayout* BBSViewBaseLayout;
@@ -55,7 +56,6 @@
 
     private slots:
         void loadBoard(QTreeWidgetItem* item);
-        void slotContextMenuRequested(const QPoint&);
         void refreshFavoriteBoards();
         void filter(const QString& str);
         void slotMenuOpenWithBrowser();

Modified: kita/branches/KITA-KDE4/kita/src/threadlistview.cpp
===================================================================
--- kita/branches/KITA-KDE4/kita/src/threadlistview.cpp	2009-07-18 10:14:54 UTC (rev 2429)
+++ kita/branches/KITA-KDE4/kita/src/threadlistview.cpp	2009-07-18 11:02:05 UTC (rev 2430)
@@ -189,7 +189,9 @@
 
 void ThreadListView::contextMenuEvent(QContextMenuEvent *event)
 {
-    QTableWidgetItem* item = subjectList->itemAt(event->pos());
+    QTableWidgetItem* item
+        = subjectList->itemAt(subjectList->viewport()
+                ->mapFromGlobal(event->globalPos()));
     if (item == 0) {
         return;
     }




Kita-svn メーリングリストの案内
Back to archive index