blob: 6ca8b315e4120477b4a3087f043372dea561f213 [file] [log] [blame]
// Copyright 2014 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef ATHENA_ACTIVITY_PUBLIC_ACTIVITY_VIEW_MANAGER_H_
#define ATHENA_ACTIVITY_PUBLIC_ACTIVITY_VIEW_MANAGER_H_
#include "athena/athena_export.h"
namespace athena {
class Activity;
// Manages the views for the activities.
class ATHENA_EXPORT ActivityViewManager {
public:
static ActivityViewManager* Create();
static ActivityViewManager* Get();
static void Shutdown();
virtual ~ActivityViewManager() {}
// Adds/Removes a task.
virtual void AddActivity(Activity* task) = 0;
virtual void RemoveActivity(Activity* task) = 0;
// Updates the UI when the task color/title changes.
virtual void UpdateActivity(Activity* task) = 0;
};
} // namespace athena
#endif // ATHENA_ACTIVITY_PUBLIC_ACTIVITY_VIEW_MANAGER_H_