Mailinglist Archive: opensuse-commit (1157 mails)

< Previous Next >
commit libqdialogsolver1
  • From: root@xxxxxxxxxxxxxxx (h_root)
  • Date: Wed, 03 Oct 2007 01:04:52 +0200
  • Message-id: <20071002230453.02194678331@xxxxxxxxxxxxxxx>

Hello community,

here is the log from the commit of package libqdialogsolver1
checked in at Wed Oct 3 01:04:52 CEST 2007.

--------
--- libqdialogsolver1/libqdialogsolver1.changes 2007-07-26 14:29:49.000000000 +0200
+++ /mounts/work_src_done/STABLE/libqdialogsolver1/libqdialogsolver1.changes    2007-10-01 12:25:04.722142000 +0200
@@ -1,0 +2,11 @@
+Mon Oct  1 12:22:35 CEST 2007 - schubi@xxxxxxx
+
+- can through the tree via double click 
+
+-------------------------------------------------------------------
+Thu Sep 27 13:12:13 CEST 2007 - schubi@xxxxxxx
+[B
+- added search function
+- improved layout 
+
+-------------------------------------------------------------------

Old:
----
  libqdialogsolver1-1.0.0.tar.bz2

New:
----
  libqdialogsolver1-1.0.2.tar.bz2

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ libqdialogsolver1.spec ++++++
--- /var/tmp/diff_new_pack.LO4088/_old  2007-10-03 01:04:32.000000000 +0200
+++ /var/tmp/diff_new_pack.LO4088/_new  2007-10-03 01:04:32.000000000 +0200
@@ -1,5 +1,5 @@
 #
-# spec file for package libqdialogsolver1 (Version 1.0.0)
+# spec file for package libqdialogsolver1 (Version 1.0.2)
 #
 # Copyright (c) 2007 SUSE LINUX Products GmbH, Nuernberg, Germany.
 # This file and all modifications and additions to the pristine
@@ -11,13 +11,13 @@
 # norootforbuild
 
 Name:           libqdialogsolver1
-Version:        1.0.0
+Version:        1.0.2
 Release:        1
-License:        GPL
+License:        GPL v2 or later
 Group:          System/Packages
 Summary:        QDialog class for showing solver results.
-Requires:       libzypp >= %( echo `rpm -q --queryformat '%{VERSION}-%{RELEASE}' libzypp`)
-Autoreqprov:    on
+Requires:       libzypp >= %( echo `rpm -q --queryformat '%{VERSION}-%{RELEASE}' libzypp`) graphviz
+AutoReqProv:    on
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
 BuildRequires:  gcc-c++ qt3-devel
 # API Changes in zypp 2.1
@@ -90,7 +90,12 @@
 %dir %{_libdir}/libqdialogsolver.la
 %dir %{prefix}/include/zypp
 %{prefix}/include/zypp/*
-
 %changelog
+* Mon Oct 01 2007 - schubi@xxxxxxx
+- can through the tree via double click
+* Thu Sep 27 2007 - schubi@xxxxxxx
+  [B
+- added search function
+- improved layout
 * Wed Jul 25 2007 - schubi@xxxxxxx
 - inital

++++++ libqdialogsolver1-1.0.0.tar.bz2 -> libqdialogsolver1-1.0.2.tar.bz2 ++++++
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/libqdialogsolver1-1.0.0/configure new/libqdialogsolver1-1.0.2/configure
--- old/libqdialogsolver1-1.0.0/configure       2007-07-26 13:34:18.000000000 +0200
+++ new/libqdialogsolver1-1.0.2/configure       2007-10-01 12:23:23.000000000 +0200
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.60 for libqdialogsolver1 1.0.0.
+# Generated by GNU Autoconf 2.60 for libqdialogsolver1 1.0.2.
 #
 # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
 # 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
@@ -711,8 +711,8 @@
 # Identity of this package.
 PACKAGE_NAME='libqdialogsolver1'
 PACKAGE_TARNAME='libqdialogsolver1'
-PACKAGE_VERSION='1.0.0'
-PACKAGE_STRING='libqdialogsolver1 1.0.0'
+PACKAGE_VERSION='1.0.2'
+PACKAGE_STRING='libqdialogsolver1 1.0.2'
 PACKAGE_BUGREPORT=''
 
 ac_unique_file="src/Makefile.am"
@@ -1424,7 +1424,7 @@
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures libqdialogsolver1 1.0.0 to adapt to many kinds of systems.
+\`configure' configures libqdialogsolver1 1.0.2 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1495,7 +1495,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of libqdialogsolver1 1.0.0:";;
+     short | recursive ) echo "Configuration of libqdialogsolver1 1.0.2:";;
    esac
   cat <<\_ACEOF
 
@@ -1612,7 +1612,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-libqdialogsolver1 configure 1.0.0
+libqdialogsolver1 configure 1.0.2
 generated by GNU Autoconf 2.60
 
 Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
@@ -1626,7 +1626,7 @@
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by libqdialogsolver1 $as_me 1.0.0, which was
+It was created by libqdialogsolver1 $as_me 1.0.2, which was
 generated by GNU Autoconf 2.60.  Invocation command line was
 
   $ $0 $@
@@ -2426,7 +2426,7 @@
 
 # Define the identity of the package.
  PACKAGE='libqdialogsolver1'
- VERSION='1.0.0'
+ VERSION='1.0.2'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -30872,7 +30872,7 @@
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by libqdialogsolver1 $as_me 1.0.0, which was
+This file was extended by libqdialogsolver1 $as_me 1.0.2, which was
 generated by GNU Autoconf 2.60.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -30925,7 +30925,7 @@
 _ACEOF
 cat >>$CONFIG_STATUS <<_ACEOF
 ac_cs_version="\\
-libqdialogsolver1 config.status 1.0.0
+libqdialogsolver1 config.status 1.0.2
 configured by $0, generated by GNU Autoconf 2.60,
   with options \\"`echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\"
 
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/libqdialogsolver1-1.0.0/libqdialogsolver1.spec.in new/libqdialogsolver1-1.0.2/libqdialogsolver1.spec.in
--- old/libqdialogsolver1-1.0.0/libqdialogsolver1.spec.in       2007-07-26 13:33:51.000000000 +0200
+++ new/libqdialogsolver1-1.0.2/libqdialogsolver1.spec.in       2007-08-02 15:45:18.000000000 +0200
@@ -16,7 +16,7 @@
 License:        GPL
 Group:          System/Management
 Summary:        QDialog class for showing solver results
-Requires:       libzypp >= %( echo `rpm -q --queryformat '%{VERSION}-%{RELEASE}' libzypp`)
+Requires:       libzypp >= %( echo `rpm -q --queryformat '%{VERSION}-%{RELEASE}' libzypp`) graphviz
 Autoreqprov:    on
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
 BuildRequires:  gcc-c++ qt3-devel
@@ -25,7 +25,7 @@
 # API Changes in zypp 2.1
 BuildRequires: libzypp-devel >= 2.8.7
 BuildRequires: libzypp >= 2.8.7
-Requires: libzypp >= 2.8.7
+Requires: libzypp >= 2.8.7 
 
 Source:        libqdialogsolver1-%{version}.tar.bz2
 Prefix:         /usr
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/libqdialogsolver1-1.0.0/src/QZyppSolverDialog.cpp new/libqdialogsolver1-1.0.2/src/QZyppSolverDialog.cpp
--- old/libqdialogsolver1-1.0.0/src/QZyppSolverDialog.cpp       2007-07-26 12:20:57.000000000 +0200
+++ new/libqdialogsolver1-1.0.2/src/QZyppSolverDialog.cpp       2007-09-27 11:59:35.000000000 +0200
@@ -2,11 +2,14 @@
 #include <qdialog.h>
 #include <qinputdialog.h>
 #include <qlayout.h>
+#include <qmessagebox.h>
 #include <stdio.h>
 
 #include "QZyppSolverDialog.h"
 #include "solvertree.h"
 
+#define i18n(MSG) QString(MSG)
+
 QZyppSolverDialog::QZyppSolverDialog(zypp::solver::detail::Resolver_Ptr r)
       : QDialog(0,"Solvertree",true)
       , resolver (r)
@@ -15,6 +18,13 @@
     QHBoxLayout* layout = new QHBoxLayout (this);
     solvertree = new SolverTree(this, resolver);
     layout->addWidget( solvertree->getView());
+
+    if (resolver == NULL
+       || (resolver->problems()).size() > 0 ) {
+       QMessageBox::critical( 0,
+                              i18n("Critical Error") ,
+                              i18n("No valid solver result"));
+    }
 }
 
 
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/libqdialogsolver1-1.0.0/src/resgraphview.cpp new/libqdialogsolver1-1.0.2/src/resgraphview.cpp
--- old/libqdialogsolver1-1.0.0/src/resgraphview.cpp    2007-07-26 12:20:57.000000000 +0200
+++ new/libqdialogsolver1-1.0.2/src/resgraphview.cpp    2007-10-01 12:16:52.000000000 +0200
@@ -17,6 +17,7 @@
  *   Free Software Foundation, Inc.,                                       *
  *   51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.         *
  ***************************************************************************/
+#include "QZyppSolverDialog.h"
 #include "resgraphview.h"
 #include "graphtreelabel.h"
 #include "pannerview.h"
@@ -30,17 +31,22 @@
 #include <qmessagebox.h>
 #include <qfiledialog.h>
 #include <qcstring.h>
+#include <qcursor.h>
 
 #include <math.h>
 
 #include <zypp/Pathname.h>
 #include <zypp/TmpPath.h>
-
+#include "zypp/ZYppFactory.h"
+#include "zypp/ResFilters.h"
+#include "zypp/base/Algorithm.h"
 
 #define LABEL_WIDTH 160
 #define LABEL_HEIGHT 90
 #define i18n(MSG) QString(MSG)
 
+using namespace zypp;
+
 static int globalDirection = 0;
 
 class GraphViewTipSolver:public QToolTip
@@ -713,6 +719,22 @@
     m_CompleteView->updateCurrentRect();
 }
 
+
+struct UndoTransact : public resfilter::PoolItemFilterFunctor
+{
+    ResStatus::TransactByValue resStatus;
+    UndoTransact ( const ResStatus::TransactByValue &status)
+       :resStatus(status)
+    { }
+
+    bool operator()( PoolItem_Ref item )               // only transacts() items go here
+    {
+       item.status().resetTransact( resStatus );// clear any solver/establish transactions
+       return true;
+    }
+};
+
+
 void ResGraphView::contentsMouseDoubleClickEvent ( QMouseEvent * e )
 {
     setFocus();
@@ -721,17 +743,36 @@
         if (l.count()>0) {
             QCanvasItem* i = l.first();
             if (i->rtti()==GRAPHTREE_LABEL) {
-                makeSelected( (GraphTreeLabel*)i);
-               
                trevTree::ConstIterator it;
                it = m_Tree.find(((GraphTreeLabel*)i)->nodename());
                if (it!=m_Tree.end()) {
-                   emit dispDetails(toolTip(((GraphTreeLabel*)i)->nodename(),true),
-                                    it.data().item);
+                   zypp::ResPool pool( zypp::getZYpp()->pool() );
+                   const QCursor oldCursor = cursor ();
+                   setCursor (Qt::WaitCursor);                     
+                   // resetting all selections
+                   UndoTransact resetting (ResStatus::USER);
+                   invokeOnEach ( pool.begin(), pool.end(),
+                                  resfilter::ByTransact( ),                    // Resetting all transcations
+                                  functor::functorRef<bool,PoolItem>(resetting) );
+
+                   // set the selected item for installation only
+                   it.data().item.status().setToBeInstalled( ResStatus::USER);
+                   // and resolve                  
+                   zypp::solver::detail::Resolver_Ptr resolver = new zypp::solver::detail::Resolver( pool );
+                   resolver->resolvePool();
+                   // show the results
+                   QZyppSolverDialog *dialog = new QZyppSolverDialog(resolver);
+                   dialog->setCaption(getLabelstring(((GraphTreeLabel*)i)->nodename()));
+                   dialog->setMinimumSize ( 600, 600 );
+                   setCursor (oldCursor);
+                   dialog->exec();              
                }
             }
         }
-    }
+    }    
+
+    
+
 }
 
 void ResGraphView::contentsMousePressEvent ( QMouseEvent * e )
@@ -741,10 +782,26 @@
     _lastPos = e->globalPos();
 }
 
-void ResGraphView::contentsMouseReleaseEvent ( QMouseEvent * )
+void ResGraphView::contentsMouseReleaseEvent ( QMouseEvent * e)
 {
     _isMoving = false;
     updateZoomerPos();
+    if (e->button() == Qt::LeftButton) {
+        QCanvasItemList l = canvas()->collisions(e->pos());
+        if (l.count()>0) {
+            QCanvasItem* i = l.first();
+            if (i->rtti()==GRAPHTREE_LABEL) {
+                makeSelected( (GraphTreeLabel*)i);
+               
+               trevTree::ConstIterator it;
+               it = m_Tree.find(((GraphTreeLabel*)i)->nodename());
+               if (it!=m_Tree.end()) {
+                   emit dispDetails(toolTip(((GraphTreeLabel*)i)->nodename(),true),
+                                    it.data().item);
+               }
+            }
+        }
+    }    
 }
 
 void ResGraphView::contentsMouseMoveEvent ( QMouseEvent * e )
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/libqdialogsolver1-1.0.0/src/resgraphview.h new/libqdialogsolver1-1.0.2/src/resgraphview.h
--- old/libqdialogsolver1-1.0.0/src/resgraphview.h      2007-07-25 15:20:38.000000000 +0200
+++ new/libqdialogsolver1-1.0.2/src/resgraphview.h      2007-10-01 10:53:10.000000000 +0200
@@ -51,7 +51,8 @@
     enum ZoomPosition { TopLeft, TopRight, BottomLeft, BottomRight, Auto };
     /* avoid large copy operations */
     friend class RevisionTree;
-    friend class SolverTree;    
+    friend class SolverTree;
+    friend class ResTreeWidget;
 
     ResGraphView(QWidget * parent = 0, const char * name = 0, WFlags f = 0);
     virtual ~ResGraphView();
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/libqdialogsolver1-1.0.0/src/restreewidget.cpp new/libqdialogsolver1-1.0.2/src/restreewidget.cpp
--- old/libqdialogsolver1-1.0.0/src/restreewidget.cpp   2007-07-26 12:20:57.000000000 +0200
+++ new/libqdialogsolver1-1.0.2/src/restreewidget.cpp   2007-10-01 10:53:10.000000000 +0200
@@ -25,6 +25,11 @@
 #include <qlayout.h>
 #include <qtooltip.h>
 #include <qwhatsthis.h>
+#include <qhbox.h>
+#include <qvbox.h>
+#include <qcombobox.h>
+#include <qlabel.h>
+#include <qstringlist.h>
 #include "resgraphview.h"
 #include "zypp/Resolver.h"
 
@@ -49,13 +54,21 @@
     m_RevGraphView->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)5, (QSizePolicy::SizeType)5, 0, 2, m_RevGraphView->sizePolicy().hasHeightForWidth() ) );
     connect(m_RevGraphView,SIGNAL(dispDetails(const QString&, const zypp::PoolItem_Ref)),this,SLOT(setDetailText(const QString&, const zypp::PoolItem_Ref)));
 
-    tabWidget = new QTabWidget( m_Splitter, "tabwidget" );
-    tabWidget->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)7, 0, 0, tabWidget->sizePolicy().hasHeightForWidth() ) );    
+    descriptionBox = new QVBox( m_Splitter, "descriptionBox");
+    descriptionBox->setSpacing (5);
+    tabWidget = new QTabWidget( descriptionBox, "tabWidget");
+    tabWidget->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)7, 0, 0, tabWidget->sizePolicy().hasHeightForWidth() ) );
+
+    searchBox = new QHBox( descriptionBox, "searchBox");
+    searchBox->setSpacing (5);
+    searchLabel = new QLabel (i18n("Search: "), searchBox);
+    searchLabel->setMaximumSize( searchLabel->minimumSizeHint () );
+    resolvableList = new QComboBox( true, searchBox);
+    resolvableList->setAutoCompletion(true);
 
     m_Detailstext = new QTextBrowser( tabWidget, "m_Detailstext" );
     m_Detailstext->setResizePolicy( QTextBrowser::Manual );
-    tabWidget->addTab( m_Detailstext, "Description" );
-    
+    tabWidget->addTab( m_Detailstext, i18n("Description") );
 
     installListView = new QListView( tabWidget, "installListView" );
     installListView->addColumn( i18n("Name") );
@@ -73,8 +86,9 @@
     installedListView->setAllColumnsShowFocus( TRUE );
     tabWidget->addTab( installedListView, i18n("Needed by") );
 
-    connect( installedListView, SIGNAL( doubleClicked( QListViewItem* ) ), this, SLOT( itemSelected( QListViewItem* ) ) );
-    connect( installListView, SIGNAL( doubleClicked( QListViewItem* ) ), this, SLOT( itemSelected( QListViewItem* ) ) );        
+    connect( installedListView, SIGNAL( clicked( QListViewItem* ) ), this, SLOT( itemSelected( QListViewItem* ) ) );
+    connect( installListView, SIGNAL( clicked( QListViewItem* ) ), this, SLOT( itemSelected( QListViewItem* ) ) );
+    connect( resolvableList, SIGNAL( activated( const QString & ) ), this, SLOT( slotComboActivated( const QString & ) ) );    
     
     ResTreeWidgetLayout->addWidget(m_Splitter);
     clearWState( WState_Polished );
@@ -90,6 +104,23 @@
 void ResTreeWidget::dumpRevtree()
 {
     m_RevGraphView->dumpRevtree();
+    if (m_RevGraphView
+       && resolvableList) {
+       // creating entries in the combobox
+       ResGraphView::trevTree::ConstIterator it;
+       QStringList stringList;
+       for (it=m_RevGraphView->m_Tree.begin();
+            it!=m_RevGraphView->m_Tree.end();++it) {
+           zypp::PoolItem_Ref item = it.data().item;
+           QString itemString = item->name() + "-" + item->edition().asString()
+               + "."
+               + item->arch().asString();
+           if (stringList.find(itemString) == stringList.end())
+               stringList.append (itemString);
+       }
+       stringList.sort();
+       resolvableList->insertStringList (stringList);
+    }
 }
 
 void ResTreeWidget::setDetailText(const QString& _s, const zypp::PoolItem_Ref item)
@@ -130,6 +161,10 @@
     }
 }
 
+void ResTreeWidget::slotComboActivated( const QString &s ) {
+    selectItem(s);
+}
+
 void ResTreeWidget::selectItem(const QString & itemString) {
     m_RevGraphView->selectItem (itemString );
 }
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/libqdialogsolver1-1.0.0/src/restreewidget.h new/libqdialogsolver1-1.0.2/src/restreewidget.h
--- old/libqdialogsolver1-1.0.0/src/restreewidget.h     2007-07-25 15:20:38.000000000 +0200
+++ new/libqdialogsolver1-1.0.2/src/restreewidget.h     2007-09-27 10:39:57.000000000 +0200
@@ -38,6 +38,10 @@
 class ResGraphView;
 class QSplitter;
 class QTextBrowser;
+class QVBox;
+class QHBox;
+class QComboBox;
+class QLabel;
 
 namespace svn {
     class LogEntry;
@@ -61,18 +65,22 @@
 
 protected:
     QVBoxLayout* ResTreeWidgetLayout;
-    
+    QVBox *descriptionBox;
+    QHBox *searchBox;
+    QLabel *searchLabel;
     QTabWidget *tabWidget;
     QListView *installListView;
     QListView *installedListView;    
     QTextBrowser* m_Detailstext;
+    QComboBox *resolvableList;
     void selectItem(const QString & itemString);        
 
 
 protected slots:
     virtual void setDetailText(const QString&, const zypp::PoolItem_Ref);
     void itemSelected( QListViewItem* item);    
-
+    void slotComboActivated( const QString &s );
+    
 private:
     QPixmap image0;
 
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/libqdialogsolver1-1.0.0/VERSION new/libqdialogsolver1-1.0.2/VERSION
--- old/libqdialogsolver1-1.0.0/VERSION 2007-07-25 17:42:01.000000000 +0200
+++ new/libqdialogsolver1-1.0.2/VERSION 2007-10-01 12:22:59.000000000 +0200
@@ -1 +1 @@
-m4_define([QDIALOGSOLVER_VERSION], [1.0.0])
+m4_define([QDIALOGSOLVER_VERSION], [1.0.2])


++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++



Remember to have fun...

---------------------------------------------------------------------
To unsubscribe, e-mail: opensuse-commit+unsubscribe@xxxxxxxxxxxx
For additional commands, e-mail: opensuse-commit+help@xxxxxxxxxxxx

< Previous Next >
This Thread
  • No further messages