mirror of
https://github.com/glest/glest-source.git
synced 2025-02-25 20:22:31 +01:00
"PleaseWait"-message while calculating all CRCs in mod menu.
This commit is contained in:
parent
fe59fe8703
commit
f612707849
@ -84,6 +84,8 @@ MenuStateMods::MenuStateMods(Program *program, MainMenu *mainMenu) :
|
||||
keyButtonsToRender = listBoxLength / keyButtonsLineHeight;
|
||||
labelWidth = 5;
|
||||
keyButtonsXBase = 0;
|
||||
modMenuState = mmst_None;
|
||||
oldMenuState = mmst_None;
|
||||
|
||||
int installButtonYPos = scrollListsYPos-listBoxLength-20;
|
||||
|
||||
@ -121,6 +123,7 @@ MenuStateMods::MenuStateMods(Program *program, MainMenu *mainMenu) :
|
||||
keyTilesetScrollBarTitle1.setFont(CoreData::getInstance().getMenuFontBig());
|
||||
keyTilesetScrollBarTitle1.setFont3D(CoreData::getInstance().getMenuFontBig3D());
|
||||
|
||||
|
||||
scenarioInfoXPos = 760;
|
||||
keyScenarioScrollBarTitle1.registerGraphicComponent(containerName,"keyScenarioScrollBarTitle1");
|
||||
keyScenarioScrollBarTitle1.init(scenarioInfoXPos,scrollListsYPos + 25,labelWidth,20);
|
||||
@ -143,6 +146,12 @@ MenuStateMods::MenuStateMods(Program *program, MainMenu *mainMenu) :
|
||||
modDescrLabel.setWordWrap(true);
|
||||
modDescrLabel.setText("description is empty");
|
||||
|
||||
pleaseWaitLabel.registerGraphicComponent(containerName,"pleaseWaitLabel");
|
||||
pleaseWaitLabel.init(50,installButtonYPos-120,450,20);
|
||||
pleaseWaitLabel.setText("");
|
||||
pleaseWaitLabel.setFont(CoreData::getInstance().getMenuFontBig());
|
||||
pleaseWaitLabel.setFont3D(CoreData::getInstance().getMenuFontBig3D());
|
||||
|
||||
buttonReturn.registerGraphicComponent(containerName,"buttonReturn");
|
||||
buttonReturn.init(800, returnLineY - 30, 125);
|
||||
buttonReturn.setText(lang.get("Return"));
|
||||
@ -325,6 +334,10 @@ void MenuStateMods::reloadUI() {
|
||||
keyTilesetScrollBarTitle1.setFont(CoreData::getInstance().getMenuFontBig());
|
||||
keyTilesetScrollBarTitle1.setFont3D(CoreData::getInstance().getMenuFontBig3D());
|
||||
|
||||
pleaseWaitLabel.setText("");
|
||||
pleaseWaitLabel.setFont(CoreData::getInstance().getMenuFontBig());
|
||||
pleaseWaitLabel.setFont3D(CoreData::getInstance().getMenuFontBig3D());
|
||||
|
||||
keyScenarioScrollBarTitle1.setText(lang.get("ScenarioTitle1"));
|
||||
keyScenarioScrollBarTitle1.setFont(CoreData::getInstance().getMenuFontBig());
|
||||
keyScenarioScrollBarTitle1.setFont3D(CoreData::getInstance().getMenuFontBig3D());
|
||||
@ -387,6 +400,8 @@ void MenuStateMods::simpleTask(BaseThread *callingThread) {
|
||||
std::string mapsMetaData = "";
|
||||
std::string scenariosMetaData = "";
|
||||
|
||||
modMenuState=mmst_Loading;
|
||||
|
||||
if(SystemFlags::VERBOSE_MODE_ENABLED) printf("In [%s::%s Line %d]\n",__FILE__,__FUNCTION__,__LINE__);
|
||||
|
||||
if(config.getString("Masterserver","") != "") {
|
||||
@ -472,6 +487,8 @@ void MenuStateMods::simpleTask(BaseThread *callingThread) {
|
||||
tilesetListRemote.clear();
|
||||
Tokenize(tilesetsMetaData,tilesetListRemote,"\n");
|
||||
|
||||
modMenuState=mmst_CalculatingCRC;
|
||||
|
||||
getTilesetsLocalList();
|
||||
for(unsigned int i=0; i < tilesetListRemote.size(); i++) {
|
||||
|
||||
@ -766,6 +783,8 @@ void MenuStateMods::simpleTask(BaseThread *callingThread) {
|
||||
keyScenarioScrollBar.setVisibleSize(keyButtonsToRender);
|
||||
keyScenarioScrollBar.setVisibleStart(0);
|
||||
|
||||
modMenuState=mmst_None;
|
||||
|
||||
if(SystemFlags::VERBOSE_MODE_ENABLED) printf("In [%s::%s Line %d]\n",__FILE__,__FUNCTION__,__LINE__);
|
||||
|
||||
if(modHttpServerThread != NULL) {
|
||||
@ -2272,6 +2291,26 @@ void MenuStateMods::render() {
|
||||
if(mainMessageBox.getEnabled()) {
|
||||
renderer.renderMessageBox(&mainMessageBox);
|
||||
}
|
||||
|
||||
if(modMenuState!=mmst_None) {
|
||||
if(oldMenuState!=modMenuState)
|
||||
{
|
||||
Lang &lang= Lang::getInstance();
|
||||
if(modMenuState== mmst_Loading){
|
||||
pleaseWaitLabel.setText(lang.get("GettingModlistFromMasterserver"));
|
||||
}
|
||||
else if(modMenuState== mmst_CalculatingCRC){
|
||||
pleaseWaitLabel.setText(lang.get("PleaseWaitCalculatingCRC"));
|
||||
}
|
||||
oldMenuState=modMenuState;
|
||||
}
|
||||
float anim= GraphicComponent::getAnim();
|
||||
if(anim < 0.5f) {
|
||||
anim = 1.f - anim;
|
||||
}
|
||||
Vec4f colorWithAlpha = Vec4f(ORANGE.x,ORANGE.y,ORANGE.z,anim);
|
||||
renderer.renderLabel(&pleaseWaitLabel,&colorWithAlpha);
|
||||
}
|
||||
}
|
||||
catch(const std::exception &ex) {
|
||||
char szBuf[1024]="";
|
||||
|
@ -45,6 +45,12 @@ enum ModType {
|
||||
mt_Scenario
|
||||
};
|
||||
|
||||
enum ModMenuState {
|
||||
mmst_None,
|
||||
mmst_Loading,
|
||||
mmst_CalculatingCRC
|
||||
};
|
||||
|
||||
typedef vector<GraphicButton*> UserButtons;
|
||||
typedef vector<GraphicLabel*> GraphicLabels;
|
||||
|
||||
@ -128,6 +134,10 @@ private:
|
||||
GraphicButton buttonConflict;
|
||||
GraphicButton buttonOnlyLocal;
|
||||
|
||||
GraphicLabel pleaseWaitLabel;
|
||||
ModMenuState modMenuState;
|
||||
ModMenuState oldMenuState;
|
||||
|
||||
int keyButtonsToRender;
|
||||
int keyButtonsYBase;
|
||||
int keyButtonsXBase;
|
||||
|
Loading…
x
Reference in New Issue
Block a user