HaikuDepot: Extracted MessagePackageListener...
... from PackageInfoView into its own files.
This commit is contained in:
parent
7d0ce97b27
commit
73a3f44915
@ -39,11 +39,13 @@ Application HaikuDepot :
|
|||||||
BitmapButton.cpp
|
BitmapButton.cpp
|
||||||
BitmapView.cpp
|
BitmapView.cpp
|
||||||
DecisionProvider.cpp
|
DecisionProvider.cpp
|
||||||
|
FeaturedPackageView.cpp
|
||||||
FilterView.cpp
|
FilterView.cpp
|
||||||
JobStateListener.cpp
|
JobStateListener.cpp
|
||||||
LinkView.cpp
|
LinkView.cpp
|
||||||
main.cpp
|
main.cpp
|
||||||
MainWindow.cpp
|
MainWindow.cpp
|
||||||
|
MessagePackageListener.cpp
|
||||||
Model.cpp
|
Model.cpp
|
||||||
PackageAction.cpp
|
PackageAction.cpp
|
||||||
PackageActionHandler.cpp
|
PackageActionHandler.cpp
|
||||||
|
64
src/apps/haikudepot/ui/MessagePackageListener.cpp
Normal file
64
src/apps/haikudepot/ui/MessagePackageListener.cpp
Normal file
@ -0,0 +1,64 @@
|
|||||||
|
/*
|
||||||
|
* Copyright 2013-214, Stephan Aßmus <superstippi@gmx.de>.
|
||||||
|
* All rights reserved. Distributed under the terms of the MIT License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
#include "MessagePackageListener.h"
|
||||||
|
|
||||||
|
#include <Messenger.h>
|
||||||
|
#include <View.h>
|
||||||
|
|
||||||
|
#include "PackageInfo.h"
|
||||||
|
|
||||||
|
|
||||||
|
MessagePackageListener::MessagePackageListener(BView* view)
|
||||||
|
:
|
||||||
|
fView(view)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
MessagePackageListener::~MessagePackageListener()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void
|
||||||
|
MessagePackageListener::PackageChanged(const PackageInfoEvent& event)
|
||||||
|
{
|
||||||
|
BMessenger messenger(fView);
|
||||||
|
if (!messenger.IsValid())
|
||||||
|
return;
|
||||||
|
|
||||||
|
BMessage message(MSG_UPDATE_PACKAGE);
|
||||||
|
message.AddString("title", event.Package()->Title());
|
||||||
|
message.AddUInt32("changes", event.Changes());
|
||||||
|
|
||||||
|
messenger.SendMessage(&message);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void
|
||||||
|
MessagePackageListener::SetPackage(const PackageInfoRef& package)
|
||||||
|
{
|
||||||
|
if (fPackage == package)
|
||||||
|
return;
|
||||||
|
|
||||||
|
PackageInfoListenerRef listener(this);
|
||||||
|
|
||||||
|
if (fPackage.Get() != NULL)
|
||||||
|
fPackage->RemoveListener(listener);
|
||||||
|
|
||||||
|
fPackage = package;
|
||||||
|
|
||||||
|
if (fPackage.Get() != NULL)
|
||||||
|
fPackage->AddListener(listener);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
const PackageInfoRef&
|
||||||
|
MessagePackageListener::Package() const
|
||||||
|
{
|
||||||
|
return fPackage;
|
||||||
|
}
|
35
src/apps/haikudepot/ui/MessagePackageListener.h
Normal file
35
src/apps/haikudepot/ui/MessagePackageListener.h
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
/*
|
||||||
|
* Copyright 2013-214, Stephan Aßmus <superstippi@gmx.de>.
|
||||||
|
* All rights reserved. Distributed under the terms of the MIT License.
|
||||||
|
*/
|
||||||
|
#ifndef MESSAGE_PACKAGE_LISTENER_H
|
||||||
|
#define MESSAGE_PACKAGE_LISTENER_H
|
||||||
|
|
||||||
|
|
||||||
|
#include "PackageInfoListener.h"
|
||||||
|
|
||||||
|
|
||||||
|
enum {
|
||||||
|
MSG_UPDATE_PACKAGE = 'updp'
|
||||||
|
};
|
||||||
|
|
||||||
|
class BView;
|
||||||
|
|
||||||
|
|
||||||
|
class MessagePackageListener : public PackageInfoListener {
|
||||||
|
public:
|
||||||
|
MessagePackageListener(BView* view);
|
||||||
|
virtual ~MessagePackageListener();
|
||||||
|
|
||||||
|
virtual void PackageChanged(const PackageInfoEvent& event);
|
||||||
|
|
||||||
|
void SetPackage(const PackageInfoRef& package);
|
||||||
|
const PackageInfoRef& Package() const;
|
||||||
|
|
||||||
|
private:
|
||||||
|
BView* fView;
|
||||||
|
PackageInfoRef fPackage;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
#endif // MESSAGE_PACKAGE_LISTENER_H
|
@ -31,6 +31,7 @@
|
|||||||
#include "BitmapView.h"
|
#include "BitmapView.h"
|
||||||
#include "LinkView.h"
|
#include "LinkView.h"
|
||||||
#include "MarkupParser.h"
|
#include "MarkupParser.h"
|
||||||
|
#include "MessagePackageListener.h"
|
||||||
#include "PackageActionHandler.h"
|
#include "PackageActionHandler.h"
|
||||||
#include "PackageManager.h"
|
#include "PackageManager.h"
|
||||||
#include "RatingView.h"
|
#include "RatingView.h"
|
||||||
@ -1318,68 +1319,6 @@ private:
|
|||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
// #pragma mark - PackageInfoViewListener
|
|
||||||
|
|
||||||
|
|
||||||
enum {
|
|
||||||
MSG_UPDATE_PACKAGE = 'updp'
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
class PackageInfoView::Listener : public PackageInfoListener {
|
|
||||||
public:
|
|
||||||
Listener(PackageInfoView* view)
|
|
||||||
:
|
|
||||||
fView(view)
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
virtual ~Listener()
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
virtual void PackageChanged(const PackageInfoEvent& event)
|
|
||||||
{
|
|
||||||
BMessenger messenger(fView);
|
|
||||||
if (!messenger.IsValid())
|
|
||||||
return;
|
|
||||||
|
|
||||||
const PackageInfo& package = *event.Package().Get();
|
|
||||||
|
|
||||||
BMessage message(MSG_UPDATE_PACKAGE);
|
|
||||||
message.AddString("title", package.Title());
|
|
||||||
message.AddUInt32("changes", event.Changes());
|
|
||||||
|
|
||||||
messenger.SendMessage(&message);
|
|
||||||
}
|
|
||||||
|
|
||||||
void SetPackage(const PackageInfoRef& package)
|
|
||||||
{
|
|
||||||
if (fPackage == package)
|
|
||||||
return;
|
|
||||||
|
|
||||||
PackageInfoListenerRef listener(this);
|
|
||||||
|
|
||||||
if (fPackage.Get() != NULL)
|
|
||||||
fPackage->RemoveListener(listener);
|
|
||||||
|
|
||||||
fPackage = package;
|
|
||||||
|
|
||||||
if (fPackage.Get() != NULL)
|
|
||||||
fPackage->AddListener(listener);
|
|
||||||
}
|
|
||||||
|
|
||||||
const PackageInfoRef& Package() const
|
|
||||||
{
|
|
||||||
return fPackage;
|
|
||||||
}
|
|
||||||
|
|
||||||
private:
|
|
||||||
PackageInfoView* fView;
|
|
||||||
PackageInfoRef fPackage;
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
// #pragma mark - PackageInfoView
|
// #pragma mark - PackageInfoView
|
||||||
|
|
||||||
|
|
||||||
@ -1388,7 +1327,7 @@ PackageInfoView::PackageInfoView(BLocker* modelLock,
|
|||||||
:
|
:
|
||||||
BView("package info view", 0),
|
BView("package info view", 0),
|
||||||
fModelLock(modelLock),
|
fModelLock(modelLock),
|
||||||
fPackageListener(new(std::nothrow) Listener(this))
|
fPackageListener(new(std::nothrow) MessagePackageListener(this))
|
||||||
{
|
{
|
||||||
fCardLayout = new BCardLayout();
|
fCardLayout = new BCardLayout();
|
||||||
SetLayout(fCardLayout);
|
SetLayout(fCardLayout);
|
||||||
|
@ -13,6 +13,7 @@
|
|||||||
|
|
||||||
class BCardLayout;
|
class BCardLayout;
|
||||||
class BLocker;
|
class BLocker;
|
||||||
|
class MessagePackageListener;
|
||||||
class TitleView;
|
class TitleView;
|
||||||
class PackageActionHandler;
|
class PackageActionHandler;
|
||||||
class PackageActionView;
|
class PackageActionView;
|
||||||
@ -39,9 +40,6 @@ public:
|
|||||||
{ return fPackage; }
|
{ return fPackage; }
|
||||||
void Clear();
|
void Clear();
|
||||||
|
|
||||||
private:
|
|
||||||
class Listener;
|
|
||||||
|
|
||||||
private:
|
private:
|
||||||
BLocker* fModelLock;
|
BLocker* fModelLock;
|
||||||
|
|
||||||
@ -51,7 +49,7 @@ private:
|
|||||||
PagesView* fPagesView;
|
PagesView* fPagesView;
|
||||||
|
|
||||||
PackageInfoRef fPackage;
|
PackageInfoRef fPackage;
|
||||||
Listener* fPackageListener;
|
MessagePackageListener* fPackageListener;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // PACKAGE_INFO_VIEW_H
|
#endif // PACKAGE_INFO_VIEW_H
|
||||||
|
Loading…
x
Reference in New Issue
Block a user