Planeshift
pawscontainerdescwindow.h
Go to the documentation of this file.
1 /*
2  * pawscontainerdesciptionwindow.h - Author: Thomas Towey
3  *
4  * Copyright (C) 2003 Atomic Blue (info@planeshift.it, http://www.atomicblue.org)
5  *
6  *
7  * This program is free software; you can redistribute it and/or
8  * modify it under the terms of the GNU General Public License
9  * as published by the Free Software Foundation (version 2 of the License)
10  * This program is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13  * GNU General Public License for more details.
14  * You should have received a copy of the GNU General Public License
15  * along with this program; if not, write to the Free Software
16  * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
17  *
18  */
19 
20 #ifndef PAWS_CONTAINER_DESCRIPTION_WINDOW_HEADER
21 #define PAWS_CONTAINER_DESCRIPTION_WINDOW_HEADER
22 
23 #include "paws/pawsmanager.h"
24 #include "paws/pawswidget.h"
25 #include "util/psconst.h"
26 #include "gui/inventorywindow.h"
27 
28 class pawsTextBox;
29 class pawsMessageTextBox;
30 class pawsSlot;
31 
35 {
36 public:
38  virtual ~pawsContainerDescWindow();
39 
40  //from pawsWidget:
41  bool PostSetup();
42  bool OnButtonPressed( int mouseButton, int keyModifier, pawsWidget* widget );
43 
44  //from iNetSubscriber:
45  void HandleMessage( MsgEntry* message );
46 
50  ContainerID GetContainerID() { return containerID; }
51 
52 private:
53  void HandleUpdateItem( MsgEntry* me );
54  void HandleViewContainer( MsgEntry* me );
55 
56  pawsEditTextBox* editName;
57  pawsTextBox* name;
58  pawsMultiLineTextBox* description;
59  pawsWidget* pic;
60  ContainerID containerID;
61  pawsListBox* contents;
62 
63  int containerSlots;
64 };
65 
67 
68 
69 #endif
70 
71 
The main base widget that all other widgets should inherit from.
Definition: pawswidget.h:116
A slot which may contain one item, with icon, and stack count.
Definition: pawsslot.h:22
The structure of 1 queue entry (pointer to a message)
Definition: message.h:143
An edit box widget/.
Definition: pawstextbox.h:409
int32_t ContainerID
Container IDs are either EIDs (if > 100) or inventory slot IDs.
Definition: psconst.h:180
virtual ~pawsContainerDescWindow()
A simple list box widget.
Definition: pawslistbox.h:202
bool PostSetup()
This is called after the widget and all of it's children have been created.
CREATE_PAWS_FACTORY(pawsContainerDescWindow)
This is a special type of text box that is used for messages.
Definition: pawstextbox.h:285
ContainerID GetContainerID()
Return the container ID of the current displayed container.
A window which shows content of a container (like furnace), with slots, item images, allows drag.
void HandleMessage(MsgEntry *message)
bool OnButtonPressed(int mouseButton, int keyModifier, pawsWidget *widget)
Called whenever a button is pressed.
A basic text box widget.
Definition: pawstextbox.h:42