]> git.saurik.com Git - apt.git/blobdiff - apt-pkg/contrib/progress.cc
* added APT::NeverAutoRemove (a list of regexp for package names that should never...
[apt.git] / apt-pkg / contrib / progress.cc
index dfa978485861322d131528b38a3cc481c6a5cb16..8eb36fc20d680a43f86aec1e23e02e9846f08d1b 100644 (file)
@@ -1,6 +1,6 @@
 // -*- mode: cpp; mode: fold -*-
 // Description                                                         /*{{{*/
-// $Id: progress.cc,v 1.9 2000/06/05 04:22:25 jgg Exp $
+// $Id: progress.cc,v 1.12 2003/01/11 07:17:04 jgg Exp $
 /* ######################################################################
    
    OpProgress - Operation Progress
 #include <apt-pkg/progress.h>
 #include <apt-pkg/error.h>
 #include <apt-pkg/configuration.h>
+
+#include <apti18n.h>
+
+#include <iostream>
 #include <stdio.h>
                                                                        /*}}}*/
 
+using namespace std;
+
 // OpProgress::OpProgress - Constructor                                        /*{{{*/
 // ---------------------------------------------------------------------
 /* */
@@ -110,6 +116,9 @@ bool OpProgress::CheckChange(float Interval)
    if ((int)LastPercent == (int)Percent)
       return false;
    
+   if (Interval == 0)
+      return false;
+   
    // Check time delta
    struct timeval Now;
    gettimeofday(&Now,0);
@@ -142,9 +151,9 @@ void OpTextProgress::Done()
    {
       char S[300];
       if (_error->PendingError() == true)
-        snprintf(S,sizeof(S),"\r%s... Error!",OldOp.c_str());
+        snprintf(S,sizeof(S),_("%c%s... Error!"),'\r',OldOp.c_str());
       else
-        snprintf(S,sizeof(S),"\r%s... Done",OldOp.c_str());
+        snprintf(S,sizeof(S),_("%c%s... Done"),'\r',OldOp.c_str());
       Write(S);
       cout << endl;
       OldOp = string();
@@ -162,7 +171,7 @@ void OpTextProgress::Done()
 /* */
 void OpTextProgress::Update()
 {
-   if (CheckChange() == false)
+   if (CheckChange((NoUpdate == true?0:0.7)) == false)
       return;
    
    // No percent spinner