summaryrefslogtreecommitdiff
path: root/apt-pkg/install-progress.h
diff options
context:
space:
mode:
authorMichael Vogt <mvo@debian.org>2014-01-04 11:15:28 +0100
committerMichael Vogt <mvo@debian.org>2014-01-04 11:15:28 +0100
commitc93d14fc05b50a8ee8bb7804579c2912f34c676b (patch)
tree1f45c51bd8d3ab33de2610f1663b3ec8e5f49c02 /apt-pkg/install-progress.h
parente2fa0aa64d2249129543f82a213043d96469be1c (diff)
parent23bd09778261c945b460b46d855b1a6ef998cfd8 (diff)
Merge branch 'debian/sid' into feature/source-deb822
Diffstat (limited to 'apt-pkg/install-progress.h')
-rw-r--r--apt-pkg/install-progress.h17
1 files changed, 12 insertions, 5 deletions
diff --git a/apt-pkg/install-progress.h b/apt-pkg/install-progress.h
index 4b7590983..8a5b68a8f 100644
--- a/apt-pkg/install-progress.h
+++ b/apt-pkg/install-progress.h
@@ -4,6 +4,7 @@
#include <string>
#include <unistd.h>
#include <signal.h>
+#include <vector>
namespace APT {
namespace Progress {
@@ -28,7 +29,7 @@ namespace Progress {
virtual ~PackageManager() {};
/* Global Start/Stop */
- virtual void Start() {};
+ virtual void Start(int child_pty=-1) {};
virtual void Stop() {};
/* When dpkg is invoked (may happen multiple times for each
@@ -116,16 +117,22 @@ namespace Progress {
class PackageManagerFancy : public PackageManager
{
+ private:
+ static void staticSIGWINCH(int);
+ static std::vector<PackageManagerFancy*> instances;
+
protected:
- static void SetupTerminalScrollArea(int nr_rows);
- static int GetNumberTerminalRows();
- static void HandleSIGWINCH(int);
+ void SetupTerminalScrollArea(int nr_rows);
+ void HandleSIGWINCH(int);
+
+ int GetNumberTerminalRows();
sighandler_t old_SIGWINCH;
+ int child_pty;
public:
PackageManagerFancy();
~PackageManagerFancy();
- virtual void Start();
+ virtual void Start(int child_pty=-1);
virtual void Stop();
virtual bool StatusChanged(std::string PackageName,
unsigned int StepsDone,