summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2013-03-05 02:20:21 +0300
committerAndrei Karas <akaras@inbox.ru>2013-03-05 02:20:21 +0300
commitaff4b3cf27d823696ffb0d34ed469a4a0adcd2a4 (patch)
tree73e88418ca5f6fd4eae6bde715e52b96cd8ce502
parent46106e962bee32271ee644224c5ac525eb32f888 (diff)
downloadmanaplus-aff4b3cf27d823696ffb0d34ed469a4a0adcd2a4.tar.gz
manaplus-aff4b3cf27d823696ffb0d34ed469a4a0adcd2a4.tar.bz2
manaplus-aff4b3cf27d823696ffb0d34ed469a4a0adcd2a4.tar.xz
manaplus-aff4b3cf27d823696ffb0d34ed469a4a0adcd2a4.zip
Add chat command to clean fonts cache.
New chat command: /cleanfonts
-rw-r--r--src/commands.cpp10
-rw-r--r--src/commands.h2
-rw-r--r--src/gui/chatwindow.cpp1
-rw-r--r--src/gui/gui.cpp16
-rw-r--r--src/gui/gui.h2
5 files changed, 30 insertions, 1 deletions
diff --git a/src/commands.cpp b/src/commands.cpp
index 0850ba909..dce8c57e0 100644
--- a/src/commands.cpp
+++ b/src/commands.cpp
@@ -351,7 +351,15 @@ impHandler0(cleanGraphics)
while(resman->cleanOrphans(true));
if (debugChatTab)
- debugChatTab->chatLog("cache cleaned");
+ debugChatTab->chatLog(_("Cache cleaned"));
+}
+
+impHandler0(cleanFonts)
+{
+ if (gui)
+ gui->clearFonts();
+ if (debugChatTab)
+ debugChatTab->chatLog(_("Cache cleaned"));
}
impHandler(join)
diff --git a/src/commands.h b/src/commands.h
index fbd2929ec..b0e3b6951 100644
--- a/src/commands.h
+++ b/src/commands.h
@@ -56,6 +56,7 @@ namespace Commands
decHandler(listChannels);
decHandler(clear);
decHandler(cleanGraphics);
+ decHandler(cleanFonts);
decHandler(createParty);
decHandler(createGuild);
decHandler(party);
@@ -142,6 +143,7 @@ static const CommandInfo commands[] =
{"list", &Commands::listChannels},
{"clear", &Commands::clear},
{"cleangraphics", &Commands::cleanGraphics},
+ {"cleanfonts", &Commands::cleanFonts},
{"createparty", &Commands::createParty},
{"createguild", &Commands::createGuild},
{"party", &Commands::party},
diff --git a/src/gui/chatwindow.cpp b/src/gui/chatwindow.cpp
index c900da9e8..59da87d37 100644
--- a/src/gui/chatwindow.cpp
+++ b/src/gui/chatwindow.cpp
@@ -290,6 +290,7 @@ void ChatWindow::fillCommands()
mCommands.push_back("/closeall");
mCommands.push_back("/clear");
mCommands.push_back("/cleangraphics");
+ mCommands.push_back("/cleanfonts");
mCommands.push_back("/create ");
mCommands.push_back("/close");
mCommands.push_back("/cacheinfo");
diff --git a/src/gui/gui.cpp b/src/gui/gui.cpp
index 205bdff5a..a6e222183 100644
--- a/src/gui/gui.cpp
+++ b/src/gui/gui.cpp
@@ -310,6 +310,22 @@ void Gui::slowLogic()
BLOCK_END("Gui::slowLogic")
}
+void Gui::clearFonts()
+{
+ if (mGuiFont)
+ mGuiFont->clear();
+ if (mInfoParticleFont)
+ mInfoParticleFont->clear();
+ if (mHelpFont)
+ mHelpFont->clear();
+ if (mSecureFont)
+ mSecureFont->clear();
+ if (boldFont)
+ boldFont->clear();
+ if (mNpcFont)
+ mNpcFont->clear();
+}
+
bool Gui::handleInput()
{
BLOCK_START("Gui::handleInput")
diff --git a/src/gui/gui.h b/src/gui/gui.h
index 983b34dc0..84142f3e1 100644
--- a/src/gui/gui.h
+++ b/src/gui/gui.h
@@ -75,6 +75,8 @@ class Gui final : public gcn::Gui
void slowLogic();
+ void clearFonts();
+
/**
* Draws the whole Gui by calling draw functions down in the
* Gui hierarchy. It also draws the mouse pointer.