ALBA
albaGUIMaterialButton.h
Go to the documentation of this file.
1/*=========================================================================
2
3 Program: ALBA (Agile Library for Biomedical Applications)
4 Module: albaGUIMaterialButton
5 Authors: Paolo Quadrani
6
7 Copyright (c) BIC
8 All rights reserved. See Copyright.txt or
9
10
11 This software is distributed WITHOUT ANY WARRANTY; without even
12 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
13 PURPOSE. See the above copyright notice for more information.
14
15=========================================================================*/
16
17#ifndef __albaGUIMaterialButton_H__
18#define __albaGUIMaterialButton_H__
19
20//----------------------------------------------------------------------------
21// Include:
22//----------------------------------------------------------------------------
23#include "albaObserver.h"
24#include "albaEvent.h"
25#include "albaServiceClient.h"
26#include "albaAbsLogicManager.h"
27
28//----------------------------------------------------------------------------
29// forward declarations :
30//----------------------------------------------------------------------------
31class albaVME;
33class mmaMaterial;
34class albaGUI;
35
36//----------------------------------------------------------------------------
37// albaGUIMaterialButton :
38//----------------------------------------------------------------------------
42class ALBA_EXPORT albaGUIMaterialButton : public albaObserver, public albaServiceClient
43{
44public:
47 void OnEvent(albaEventBase *alba_event);
48 void SetListener(albaObserver *listener) {m_Listener = listener;};
49
51 albaGUI *GetGui() {return m_Gui;};
52
55
57 void Enable(bool enable);
58
59 mmaMaterial *GetMaterial() {return m_Material;};
60
61 void SetVME(albaVME *vme);
62
63protected:
65 void CreateGui();
66
67 albaGUIPicButton *m_MaterialButton; // material pic button
68 wxStaticText *m_MaterialLabel; // material name label
70
74};
75#endif
Implementation of the message object for the Subject/Observer design pattern.
Definition: albaEventBase.h:49
This component allow to manage surface materials.
void CreateGui()
Create the GUI for the materials.
albaGUI * GetGui()
Return albaGUIMaterialButton User Interface.
void Enable(bool enable)
Enable-Disable material button.
void SetListener(albaObserver *listener)
albaGUIPicButton * m_MaterialButton
void UpdateMaterialIcon()
update material icon.
void SetVME(albaVME *vme)
void OnEvent(albaEventBase *alba_event)
process the events sent by subjects
albaGUIMaterialButton(albaVME *vme, albaObserver *listener=NULL)
albaGUIPicButton inherit from wxBitmapButton.
albaGUI is a panel with function to easily create GUI.
Definition: albaGUI.h:110
Interface implementing the Observer of the Subject/Observer design pattern.
Definition: albaObserver.h:36
albaVME -
Definition: albaVME.h:150