2 #ifndef WORLDSIM_MENU_SETTLEMENTS_HPP 3 #define WORLDSIM_MENU_SETTLEMENTS_HPP 13 #include <Graphics/GUI/GUI_Table.hpp> 14 #include <Container/Table/Table.hpp> 53 guiManager.setFont(_font);
54 menuSettlementDetails.
setFont(_font);
64 cNormal.set(220,220,220);
65 cSelected.set(180,180,180);
66 cDropPanel.set(170,170,170);
67 cHighlight.set(255,160,160);
70 buttonClose.setColours(cNormal,cHighlight,0);
71 buttonClose.active=
true;
73 buttonSettlementDetails.text=
"Details";
74 buttonSettlementDetails.setColours(cNormal,cHighlight,0);
75 buttonSettlementDetails.active=
true;
76 buttonSettlementDetails.clicked=
false;
78 guiTableSettlements.clear();
80 guiTableSettlements.alpha=0;
81 guiTableSettlements.active=
true;
82 guiTableSettlements.addColumn(
"Name",
"name",240);
83 guiTableSettlements.addColumn(
"Race",
"race",120);
84 guiTableSettlements.addColumn(
"Population",
"population",120);
85 guiTableSettlements.addColumn(
"Civilization",
"civilization",120);
94 for (
int j=0;j<
world.
vCiv(i)->vSettlement.size();++j)
96 tSettlements.addRow(
world.
vCiv(i)->vSettlement(j));
101 guiManager.add(&buttonClose);
102 guiManager.add(&buttonSettlementDetails);
103 guiManager.add(&guiTableSettlements);
105 menuSettlementDetails.
init();
106 menuSettlementDetails.active=
false;
114 int nSettlements = 0;
118 for (
int j=0;j<
world.
vCiv(i)->vSettlement.size();++j)
132 if ( menuSettlementDetails.active )
134 menuSettlementDetails.
render();
138 Renderer::placeColour4a(150,150,150,200,panelX1,panelY1,panelX2,panelY2);
139 font8x8.drawText(
"SETTLEMENT LIST MENU",panelX1,panelY2-20,panelX2,panelY2-5,
true,
true);
146 if ( menuSettlementDetails.active )
152 return guiManager.keyboardEvent(_keyboard);
161 if ( menuSettlementDetails.active )
168 if(guiManager.mouseEvent(_mouse)==
true)
173 if (buttonClose.clicked==
true)
176 buttonClose.unclick();
179 if (buttonSettlementDetails.clicked==
true)
181 if ( selectedSettlement != 0 )
183 std::cout<<
"Settlement details\n";
186 menuSettlementDetails.
init(selectedSettlement);
187 menuSettlementDetails.active=
true;
188 guiTableSettlements.active=
false;
192 std::cout<<
"Select a civ first.\n";
195 buttonSettlementDetails.unclick();
200 if (guiTableSettlements.lastClickedIndex != -1)
202 lastRowClicked = guiTableSettlements.lastClickedIndex;
207 for (
int i = 0; i <
world.
vCiv.size() && !found; ++i)
209 for (
int j = 0; j <
world.
vCiv(i)->vSettlement.size() && !found; ++j)
211 if (index == lastRowClicked)
213 selectedSettlement =
world.
vCiv(i)->vSettlement(j);
222 guiTableSettlements.lastClickedIndex = -1;
234 guiTableSettlements.setPanel(panelX1,panelY1,panelX2,panelY2-30);
235 buttonClose.setPanel(panelX2-40, panelY2-40, panelX2-20, panelY2-20);
236 buttonSettlementDetails.setPanel(panelX2-100, panelY1+40, panelX2-20, panelY1+20);
237 menuSettlementDetails.setPanel(panelX1,panelY1,panelX2,panelY2);
WorldViewer worldViewer
Definition: Driver.cpp:35
Vector< Civ * > vCiv
Definition: World.hpp:136
World world
Definition: Driver.cpp:45
void setCenterTile(const double _centerTileX, const double _centerTileY, const int _subTileX=LOCAL_MAP_SIZE/2, const int _subTileY=LOCAL_MAP_SIZE/2)
Definition: World_Viewer.hpp:334
Wildcat::Font font8x8
Definition: Driver_GlobalObjects.hpp:55
int worldY
Definition: WorldObjectGlobal.hpp:22
int worldX
Definition: WorldObjectGlobal.hpp:22
Definition: Settlement.hpp:15